:root{--bg:#f8f7f3;--panel:#fff;--ink:#243346;--muted:#88909b;--line:#edf0f2;--blue:#2e67d5;--blue-hover:#2358be;--light-blue:#eef4ff;--radius:16px;--shadow:0 5px 24px rgba(29,44,68,.025);font-family:"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",Arial,sans-serif;color:var(--ink);font-synthesis:none;-webkit-font-smoothing:antialiased}
*{box-sizing:border-box}body{margin:0;background:var(--bg);font-size:14px;line-height:1.6}button,input,select{font:inherit}button,a,input,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}button{cursor:pointer}a{color:inherit;text-decoration:none}button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,.drop-zone:focus-within{outline:3px solid #a9c4fa;outline-offset:3px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:650}svg{display:block}select{cursor:pointer}.sprite{position:absolute;width:0;height:0;overflow:hidden}.icon{width:20px;height:20px;stroke:currentColor;stroke-width:1.7;fill:none;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.icon.small{width:16px;height:16px}[hidden]{display:none!important}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{height:83px;border-bottom:1px solid #eaeae5;background:rgba(255,255,255,.7)}.header-inner,.container,.footer-inner{max-width:1180px;margin:0 auto;padding-left:32px;padding-right:32px}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:11px}.brand-mark{display:grid;place-items:center;width:37px;height:37px;border-radius:11px;background:var(--blue);color:white;box-shadow:0 4px 10px #2e67d51c}.brand-mark svg{width:26px;height:26px}.brand-name{display:flex;align-items:center;font-size:20px;font-weight:750;letter-spacing:1px;white-space:nowrap}.brand-divider{height:18px;width:1px;background:#dfe3e8;margin:0 15px}.brand-detail{font-size:13px;font-weight:400;letter-spacing:1px;color:#798391}.header-actions{display:flex;align-items:center;gap:24px}.admin-link{display:flex;align-items:center;gap:9px;border:1px solid #e2e5e9;border-radius:8px;background:white;padding:8px 13px;font-size:12px;color:#566270;transition:border-color .2s,background .2s}.admin-link:hover{border-color:#b7cafa;background:#f6f9ff}.nav-link{display:flex;align-items:center;gap:6px;color:#677382;background:none;border:0;padding:5px;font-size:13px}.nav-link:hover{color:var(--blue)}#publicLink .icon{transform:rotate(180deg)}
.page-intro{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:49px 0 32px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:650;color:#7d8998;display:flex;align-items:center;gap:8px}.eyebrow>span{height:5px;width:5px;background:#6b88b5;border-radius:50%}h1{font-size:33px;letter-spacing:1px;line-height:1.45;margin:10px 0 9px;color:#253449}.title-dot{color:var(--blue);margin-left:4px}.page-intro p{font-size:13px;color:#87909b;letter-spacing:.25px}.data-status{display:flex;align-items:flex-start;gap:9px;margin-top:21px;padding:10px 0 10px 24px;border-left:1px solid #e2e5e6;min-width:169px}.status-dot{width:6px;height:6px;display:inline-block;background:#4a9e84;border-radius:50%;flex-shrink:0;box-shadow:0 0 0 4px #4a9e840c;margin-top:7px}.data-status strong{font-size:12px;font-weight:500;color:#5d6c75;display:block}.data-status small{font-size:10px;color:#98a0a8;display:block;margin-top:3px;font-variant-numeric:tabular-nums}.panel{background:var(--panel);border:1px solid #e8ebec;border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:24px;overflow:hidden}.panel-header{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:26px 29px;border-bottom:1px solid var(--line)}.section-heading{display:flex;align-items:center;gap:13px}.section-icon{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;flex-shrink:0}.section-icon.warm{background:#fff5e9;color:#d39543}.section-icon.blue{background:#edf3ff;color:#4678d7}.section-icon.neutral{background:#f2f5f8;color:#718095}.section-icon .icon{width:22px;height:22px}h2{font-size:17px;letter-spacing:.4px}.section-heading p{font-size:11px;color:#9299a3;margin-top:3px;letter-spacing:.15px}.subtle-tag{display:inline-block;vertical-align:middle;font-size:9px;font-weight:400;background:#fcf5e9;color:#b79866;border-radius:4px;margin-left:10px;padding:2px 7px;letter-spacing:.3px}.inline-filters{display:flex;align-items:center;gap:9px}.inline-filters input,.inline-filters select{font-size:11px;height:35px;color:#697584;border-color:#e8ebef;background:#fdfefe}.inline-filters select{width:121px}.inline-filters input{width:143px}.recommendations{min-height:150px;padding:22px 29px}.recommend-empty{display:flex;justify-content:center;align-items:center;gap:17px;min-height:104px}.recommend-empty .empty-icon{width:51px;height:60px;border-radius:10px;color:#bfcbdb;background:#f4f7fb;border:1px solid #e6ecf4;display:grid;place-items:center;transform:rotate(-6deg)}.recommend-empty .empty-icon .icon{width:25px;height:25px}.recommend-empty h3{font-size:12px;font-weight:500;color:#7c8997}.recommend-empty p{color:#a4acb5;font-size:11px;margin-top:5px}.recommendation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.drama-card{padding:17px;border:1px solid #eef0f3;border-radius:11px;display:flex;gap:13px;align-items:flex-start;min-width:0}.drama-cover{width:46px;height:61px;border-radius:7px;display:grid;place-items:center;background:linear-gradient(145deg,#eee9df,#f8f5ee);color:#ac956e;flex-shrink:0;font-family:serif;font-size:20px}.drama-card:nth-child(3n+2) .drama-cover{background:linear-gradient(145deg,#e6ebf2,#f4f7fb);color:#7b91ad}.drama-card:nth-child(3n+3) .drama-cover{background:linear-gradient(145deg,#e9ece4,#f4f7f1);color:#889575}.drama-content{min-width:0}.drama-content h3{font-size:13px;line-height:1.5;overflow-wrap:anywhere}.drama-content p{font-size:11px;color:#929ba7;margin-top:4px;overflow-wrap:anywhere}.drama-meta{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:8px;font-size:9px;color:#99a2ae}.tag{background:#f2f5f9;color:#8090a4;padding:2px 6px;border-radius:4px;display:inline-block;font-size:10px;font-weight:400}.tag.warm{background:#fff4e5;color:#b2894e}.tag.green{background:#edf7f2;color:#54896e}.tag.muted{background:#f0f2f4;color:#9199a3}
.query-panel-header{padding-bottom:24px}.period-tabs{display:flex;gap:4px;padding:4px;background:#f3f5f8;border:1px solid #edf0f4;border-radius:8px}.period-tabs button{padding:7px 18px;border:0;border-radius:5px;background:transparent;color:#8993a1;font-size:11px;transition:.2s}.period-tabs button.active{color:var(--blue);background:white;box-shadow:0 2px 5px #253d6120}.query-form{padding:25px 29px 26px;display:grid;grid-template-columns:minmax(210px,1.45fr) minmax(150px,1fr) minmax(130px,.9fr) auto;gap:16px;align-items:end;border-bottom:1px solid var(--line)}.field{display:flex;flex-direction:column;gap:8px;min-width:0}.field label{font-size:11px;color:#5a6777;font-weight:500}.required{color:#7b9bd4;margin-left:3px}.optional{font-size:10px;color:#a1aab4;font-weight:400;margin-left:5px}input,select{width:100%;height:42px;background:#fff;border:1px solid #e0e5eb;border-radius:7px;color:#415269;padding:0 12px;min-width:0;transition:border-color .2s,box-shadow .2s}input::placeholder{color:#a4adba;font-size:11px}input:hover,select:hover{border-color:#c7d2e1}input:focus,select:focus{border-color:#83a8e8;outline:none;box-shadow:0 0 0 3px #2e67d50a}input[type=date],input[type=month]{color-scheme:light;font-size:12px;font-variant-numeric:tabular-nums}input::-webkit-calendar-picker-indicator{opacity:.45;cursor:pointer}select{font-size:12px;padding-right:26px;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' fill='none' stroke='%23909aa8' stroke-width='1.5' viewBox='0 0 24 24'%3E%3Cpath d='m7 9 5 5 5-5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}.input-icon{position:relative}.input-icon .icon{position:absolute;width:15px;height:15px;left:12px;top:14px;color:#9facbd}.input-icon input{padding-left:36px}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:0 18px;height:42px;border-radius:7px;border:1px solid transparent;white-space:nowrap;font-size:12px;font-weight:500;transition:background .2s,border-color .2s,transform .15s}.button:active:not(:disabled){transform:translateY(1px)}.button .icon{width:16px;height:16px}.primary{background:var(--blue);color:white;box-shadow:0 3px 5px #2e67d50b}.primary:hover:not(:disabled){background:var(--blue-hover)}.secondary{background:white;border-color:#e2e7ed;color:#7a8594}.secondary:hover:not(:disabled){background:#f7f9fc;border-color:#b6c7df}.danger{background:#b94c47;color:white}.danger:hover{background:#a1413c}.query-buttons{display:flex;gap:9px}.query-buttons .secondary{padding:0 14px}.query-results{min-height:257px}.empty-state{text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:28px 20px 34px;min-height:250px}.empty-state h3{font-size:13px;color:#7a899a;font-weight:500;margin-top:12px}.empty-state p{font-size:11px;color:#a4adba;margin-top:6px}.empty-hint{display:block;color:#b6bec7;font-size:10px;margin-top:18px}.empty-illustration{position:relative;width:90px;height:80px;margin:0 0 1px}.illustration-back{width:47px;height:59px;position:absolute;top:4px;left:14px;border-radius:7px;transform:rotate(-13deg);background:#edf2f9;border:1px solid #e6edf7}.illustration-sheet{width:46px;height:58px;position:absolute;top:4px;left:31px;border-radius:6px;border:1px solid #dde6f4;background:linear-gradient(145deg,#fff,#f6f9fd);padding:13px 8px;box-shadow:0 4px 9px #bac8df13;transform:rotate(7deg)}.illustration-sheet i{display:block;height:2px;width:14px;margin-bottom:6px;background:#dce6f5;border-radius:2px}.illustration-sheet i:nth-child(2){width:22px}.illustration-sheet i:nth-child(3){width:18px}.illustration-sheet span{position:absolute;top:5px;right:6px;color:#b6c8e5;font-size:13px}.illustration-search{position:absolute;bottom:0;left:54px;border:3px solid white;border-radius:50%;padding:6px;background:#edf3fc;color:#99b4df;box-shadow:0 2px 6px #acbdd729}.illustration-search .icon{width:19px;height:19px}.panel-note{display:flex;align-items:center;gap:8px;background:#fafbfd;border-top:1px solid #f0f2f6;color:#98a3b2;font-size:10px;padding:13px 29px;letter-spacing:.15px}.panel-note .icon{width:13px;height:13px;color:#9cabc1}.bottom-guide{display:flex;justify-content:space-between;gap:16px;padding:0 1px;color:#a0a7ad;font-size:10px;letter-spacing:.3px;margin:0 0 52px}.bottom-guide span:first-child{display:flex;align-items:center;gap:7px}.bottom-guide .icon{width:12px;height:12px}.site-footer{border-top:1px solid #e8e9e5;margin-top:25px}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:80px;font-size:10px;color:#a1a8ad;letter-spacing:.4px}.footer-brand{color:#84909a;font-size:11px}.footer-brand>span{margin:0 6px;color:#b5bdc3}.loading-message{display:flex;align-items:center;justify-content:center;gap:9px;color:#94a0af;font-size:12px;min-height:100px}.spinner{height:15px;width:15px;display:inline-block;border:2px solid #aec5ed;border-top-color:var(--blue);border-radius:50%;animation:spin .7s linear infinite}.button .spinner{width:14px;height:14px;border-color:#ffffff66;border-top-color:white}.secondary .spinner{border-color:#afc6ee;border-top-color:var(--blue)}@keyframes spin{to{transform:rotate(360deg)}}
.result-heading{padding:22px 29px;display:flex;align-items:center;justify-content:space-between;gap:20px}.result-heading h3{font-size:13px;color:#516275}.result-heading p{font-size:10px;color:#a0a9b5;margin-top:4px}.result-total{text-align:right;display:flex;align-items:center;gap:20px}.result-total small{font-size:10px;color:#9aa4b1;display:block}.result-total strong{font-size:25px;font-weight:650;color:var(--blue);font-variant-numeric:tabular-nums;letter-spacing:-.7px}.result-total strong span{font-size:14px;margin-right:5px;font-weight:400}.export-link{display:flex;align-items:center;gap:5px;font-size:11px;color:#5b7dac;border-left:1px solid #e8edf4;padding-left:20px}.export-link .icon{width:15px;height:15px}.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap;font-size:12px}th{font-size:10px;letter-spacing:.2px;color:#95a0ae;background:#f9fafc;font-weight:500;padding:12px 24px}td{padding:15px 24px;color:#647489;border-top:1px solid #f1f3f6;font-size:11px;font-variant-numeric:tabular-nums}td:first-child,th:first-child{padding-left:29px}td:last-child,th:last-child{padding-right:29px}td.money{font-weight:600;color:#355b92;font-size:13px}.numeric{text-align:right}tbody tr:hover{background:#fcfdff}.result-caption{font-size:10px;color:#9da9b7;padding:11px 29px 17px}.result-empty .empty-illustration{transform:scale(.88);height:70px}.alert{border:1px solid;border-radius:8px;padding:12px 15px;font-size:12px;line-height:1.8;overflow-wrap:anywhere}.alert.error{background:#fff6f3;border-color:#f5ded6;color:#a96350}.alert.success{background:#eff8f3;border-color:#d8ece1;color:#48785e}.alert.warning{background:#fff9ed;border-color:#f0e4c6;color:#9a7b38}.query-panel>.alert{margin:18px 29px}.inline-error{color:#b17560;text-align:center;padding:24px;font-size:12px}
.identity{display:flex;gap:8px;align-items:center;border:1px solid #e2e9e4;color:#678171;background:#f2f7f2;padding:7px 12px;border-radius:20px;font-size:12px}.identity .status-dot{margin:0}.admin-intro{margin-bottom:30px}.login-panel{max-width:435px;margin:50px auto 80px;padding:35px 40px;text-align:center}.login-symbol{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:#edf3ff;color:#6389cc;margin:0 auto 18px}.login-symbol .icon{width:25px;height:25px}.login-panel h2{font-size:22px}.login-panel>p{color:#9aa4b2;font-size:12px;margin-top:8px}.login-panel form{display:flex;flex-direction:column;gap:20px;text-align:left;margin-top:29px}.login-panel input{height:44px}.login-panel .button{height:44px;margin-top:4px}.full-width{width:100%}.login-back{display:inline-block;color:#93a0b1;font-size:11px;margin-top:25px}.login-back:hover{color:var(--blue)}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:24px}.stat-card{background:white;border:1px solid #e8ebec;border-radius:13px;padding:21px;display:flex;align-items:flex-start;justify-content:space-between;gap:6px;min-width:0}.stat-card>div{min-width:0}.stat-card span{font-size:11px;color:#8d98a7}.stat-card strong{display:block;font-size:26px;line-height:1.4;font-weight:600;letter-spacing:-.6px;margin:9px 0 3px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.stat-card small{font-size:9px;color:#a5adba}.stat-card .stat-icon{color:#6b8fcb;background:#f1f5fd;display:grid;place-items:center;border-radius:9px;width:32px;height:32px;flex-shrink:0}.stat-icon .icon{width:17px;height:17px}.stat-card .stat-icon.green{color:#78a792;background:#eff8f3}.stat-card .stat-icon.amber{color:#c2a269;background:#fcf7ed}.stat-card .stat-icon.lilac{color:#9d8cbf;background:#f6f3fb}#adminError{margin-bottom:20px}.step-indicator{font-size:10px;color:#a0aabb;letter-spacing:.3px}.import-body{padding:26px 29px}.import-options{display:grid;grid-template-columns:200px 240px 1fr;gap:20px;align-items:end;margin-bottom:22px}.import-option-note{font-size:10px;color:#9ea8b5;display:flex;gap:7px;align-items:flex-start;padding:0 0 8px;line-height:1.8}.import-option-note .icon{width:14px;height:14px;margin-top:3px}.drop-zone{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;padding:26px 15px;background:#fbfcff;border:1.5px dashed #d4dfef;border-radius:11px;cursor:pointer;transition:background .2s,border .2s}.drop-zone:hover,.drop-zone.dragging{background:#f1f6ff;border-color:#7da4e6}.drop-zone.selected{border-color:#8faedd;background:#f8fbff}.drop-zone.busy{pointer-events:none;opacity:.6}.upload-orb{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:#ecf2fc;color:#6d91cc;margin-bottom:12px}.upload-orb .icon{width:22px;height:22px}.drop-zone strong{font-size:12px;font-weight:400;color:#7d8b9d;overflow-wrap:anywhere;max-width:100%}.drop-zone strong span{color:var(--blue);margin-left:4px}.drop-zone p{font-size:10px;color:#a8b1bd;margin-top:5px}.file-format{font-size:8px;letter-spacing:1px;color:#a0afc4;margin-top:12px;border:1px solid #e3e9f3;border-radius:4px;padding:2px 7px;background:#fff}.import-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-top:17px}.import-actions p{font-size:10px;color:#a1aabb}.import-body>.alert{margin-top:16px}.preview-heading{display:flex;align-items:center;justify-content:space-between;margin:28px 0 17px;padding-top:24px;border-top:1px solid var(--line)}.preview-heading .eyebrow{font-size:8px;color:#9dacbf}.preview-heading h3{font-size:15px;margin-top:5px}.text-button{color:#6d8ebf;font-size:11px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border:0;background:transparent;padding:6px;white-space:nowrap}.text-button:hover{color:var(--blue)}.text-button.danger-text{color:#b98c83}.text-button.danger-text:hover{color:#a34c43}.text-button .icon{width:13px;height:13px}.preview-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;background:#f8fafc;padding:18px;border:1px solid #eaf0f6;border-radius:9px;margin-bottom:17px}.preview-summary small{display:block;color:#98a6b7;font-size:10px}.preview-summary strong{display:block;font-size:18px;font-weight:500;color:#46628a;margin-top:5px;font-variant-numeric:tabular-nums}.preview-summary .date-range strong{font-size:13px;margin-top:9px}.preview-bottom{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:18px}.preview-bottom p{font-size:10px;color:#9ca8b7}#previewWarnings{margin-bottom:15px}#importPreview .table-wrap{border:1px solid #edf1f5;border-radius:9px}#importPreview th:first-child,#importPreview td:first-child{padding-left:17px}#importPreview th:last-child,#importPreview td:last-child{padding-right:17px}.history-body{min-height:110px}.compact-empty{padding:35px 20px;text-align:center;color:#a3afbd;font-size:12px}.filename{font-size:11px;display:block;color:#5e7390;max-width:250px;overflow:hidden;text-overflow:ellipsis}.cell-secondary{display:block;font-size:9px;color:#a3adbb;margin-top:4px}.history-body table th,.history-body table td{padding-left:18px;padding-right:18px}.history-body table th:first-child,.history-body table td:first-child{padding-left:29px}.history-body table td:last-child{padding-right:23px}.recommend-admin-body{padding:25px 29px}.recommend-form{display:grid;grid-template-columns:1.3fr 1fr 1fr .8fr;gap:17px;align-items:end}.recommend-form .note-field{grid-column:span 3}.recommend-form>.button{align-self:end}#recommendError{margin-top:17px}#adminRecommendations{margin-top:23px;border-top:1px solid var(--line)}.admin-drama-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 0;border-bottom:1px solid var(--line)}.admin-drama-row:last-child{border-bottom:0;padding-bottom:0}.admin-drama-row h3{font-size:12px;color:#5f728b;font-weight:500;overflow-wrap:anywhere}.admin-drama-row p{font-size:10px;color:#9da9b9;margin-top:6px;overflow-wrap:anywhere}.admin-drama-row .row-meta{display:flex;gap:9px;align-items:center;flex-wrap:wrap;font-size:10px;color:#9da9b9;margin-top:5px}.toast{position:fixed;bottom:27px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;max-width:calc(100vw - 32px);background:#273a52;color:#fff;box-shadow:0 8px 32px #172a3f25;border-radius:10px;padding:13px 16px;z-index:50;font-size:12px}.toast>.icon{color:#a9d4bd;width:17px;height:17px}.toast span{overflow-wrap:anywhere}.toast button{background:none;border:0;color:#a9c9ff;font-size:12px;padding:2px 4px;white-space:nowrap}.toast #toastClose{color:#a9b4c2;padding:3px}.toast #toastClose .icon{width:14px;height:14px}.toast.error-toast>.icon{color:#f4b49a}dialog{border:1px solid #e8edf3;border-radius:17px;padding:28px;width:430px;max-width:calc(100vw - 32px);box-shadow:0 30px 100px #1d2d4930;color:var(--ink)}dialog::backdrop{background:#1e2c4055;backdrop-filter:blur(3px)}.dialog-icon{display:grid;place-items:center;width:42px;height:42px;background:#fff2e7;color:#c89a61;border-radius:12px;margin-bottom:17px}dialog h2{font-size:18px}dialog p{font-size:12px;color:#8d9aaa;line-height:1.9;margin-top:10px;overflow-wrap:anywhere}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}
@media(min-width:1400px){.page-intro{margin-top:56px}.recommendations{min-height:166px}.query-results{min-height:282px}.query-empty{min-height:280px}}
@media(max-width:1000px){.query-form{grid-template-columns:1.4fr 1fr 1fr}.query-buttons{grid-column:1/-1;justify-content:flex-end}.stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.import-options{grid-template-columns:1fr 1fr}.import-option-note{grid-column:1/-1;padding:0}.recommendation-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.brand-detail{letter-spacing:0}.recommend-form{grid-template-columns:1fr 1fr}.recommend-form .note-field{grid-column:1/-1}.recommend-form>.button{grid-column:2}.step-indicator{display:none}}
@media(max-width:700px){.header-inner,.container,.footer-inner{padding-left:20px;padding-right:20px}.site-header{height:70px}.brand-divider{margin:0 10px}.brand-name{font-size:18px}.brand-detail{font-size:10px}.brand-mark{width:33px;height:33px}.admin-link{font-size:10px;padding:7px 9px;gap:6px}.admin-link>.icon:first-child{width:14px;height:14px}.admin-link .small{display:none}.header-actions{gap:8px}.nav-link{font-size:10px}.nav-link .icon{width:14px;height:14px}.page-intro{margin:31px 0 24px;align-items:flex-start;flex-direction:column;gap:13px}h1{font-size:27px;letter-spacing:.5px;margin-top:9px}.page-intro p{font-size:11px}.eyebrow{font-size:8px}.data-status{border:0;padding:0;align-items:center;margin-top:0;gap:7px}.data-status>div{display:flex;gap:10px;align-items:center}.data-status strong{font-size:10px}.data-status small{margin:0;font-size:9px}.data-status .status-dot{margin:0;width:5px;height:5px}.panel{border-radius:13px;margin-bottom:19px}.panel-header{padding:20px;gap:16px;flex-wrap:wrap}.section-icon{width:37px;height:37px;border-radius:10px}.section-icon .icon{width:20px;height:20px}.section-heading{gap:10px}h2{font-size:15px}.section-heading p{font-size:10px}.inline-filters{margin-left:47px;flex:1;min-width:200px}.inline-filters select{flex:1}.inline-filters input{flex:1}.recommendations{padding:16px 20px;min-height:145px}.recommend-empty{min-height:110px;gap:14px}.recommend-empty h3{font-size:11px}.recommend-empty p{font-size:10px}.recommendation-grid{grid-template-columns:1fr}.query-panel-header{gap:20px}.period-tabs{margin-left:47px;flex:1}.period-tabs button{flex:1;padding:6px 14px;font-size:10px}.query-form{padding:21px 20px;grid-template-columns:1fr 1fr;gap:17px 12px}.video-field{grid-column:1/-1}.query-buttons{grid-column:1/-1;margin-top:2px}.query-buttons .primary{flex:1}.query-buttons .secondary{width:70px}.field label{font-size:10px}.button{font-size:11px}.query-results{min-height:235px}.empty-state{min-height:235px;padding:24px 16px}.empty-state h3{font-size:12px}.empty-state p{font-size:10px}.empty-hint{font-size:9px}.panel-note{padding:12px 20px;font-size:9px;align-items:flex-start;line-height:1.8}.panel-note .icon{margin-top:2px}.bottom-guide{font-size:9px;margin-bottom:31px;justify-content:center}.bottom-guide>span:last-child{display:none}.footer-inner{min-height:75px;font-size:9px;flex-direction:column;justify-content:center;gap:3px}.footer-brand{font-size:10px}.result-heading{padding:18px 20px;align-items:flex-start;gap:12px}.result-total{gap:9px;flex-direction:column;align-items:flex-end}.result-total strong{font-size:22px}.export-link{border:0;padding:0;font-size:10px}td,th{padding:13px 18px}td:first-child,th:first-child{padding-left:20px}td:last-child,th:last-child{padding-right:20px}.result-caption{padding-left:20px;padding-right:20px}.query-panel>.alert{margin:15px 20px}.login-panel{margin:30px auto 60px;padding:30px 25px}.login-panel h2{font-size:20px}.stats-grid{gap:10px;margin-bottom:19px}.stat-card{padding:16px;position:relative}.stat-card strong{font-size:22px;margin-top:12px}.stat-card span{font-size:9px}.stat-card small{font-size:8px}.stat-card .stat-icon{position:absolute;right:12px;top:13px;width:24px;height:24px;border-radius:7px}.stat-icon .icon{width:14px;height:14px}.stat-card>div>span{padding-right:24px;display:block;max-width:140px}.import-body{padding:20px}.import-options{gap:14px}.import-option-note{font-size:9px;line-height:1.7}.drop-zone{padding:25px 12px}.drop-zone strong{font-size:11px}.drop-zone p{font-size:9px}.import-actions{align-items:flex-start}.import-actions p{font-size:9px;max-width:120px;padding-top:5px}.import-actions .button{height:37px;padding:0 12px}.preview-summary{padding:14px;gap:12px;grid-template-columns:1fr 1fr}.preview-summary .date-range{grid-column:1/-1}.preview-summary strong{font-size:17px}.preview-summary .date-range strong{margin-top:3px}.preview-bottom{align-items:flex-start}.preview-bottom p{max-width:150px;font-size:9px}.preview-bottom .button{height:37px;padding:0 12px}.recommend-admin-body{padding:20px}.recommend-form{gap:14px 12px}.recommend-form>.field:first-child{grid-column:1/-1}.recommend-form>.field:nth-child(4){grid-column:1/-1}.recommend-form>.button{grid-column:1/-1}.admin-drama-row{gap:10px}.admin-drama-row .text-button{font-size:10px}.identity{font-size:10px}.toast{bottom:18px;padding:11px 12px;font-size:11px;width:max-content}.history-body table th:first-child,.history-body table td:first-child{padding-left:20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition:none!important;scroll-behavior:auto!important}}

.theater-admin-body{padding:25px 29px}.theater-form{display:flex;align-items:flex-end;gap:17px;max-width:650px}.theater-form .field{flex:1}.theater-form>.button{height:42px;flex-shrink:0}.theater-list{margin-top:20px;padding-top:17px;border-top:1px solid var(--line)}.theater-chip-list{display:flex;gap:9px;flex-wrap:wrap}.theater-chip{display:inline-flex;align-items:center;min-height:31px;padding:0 12px;border:1px solid #e5ebf1;border-radius:7px;background:#f8fafc;color:#64758b;font-size:11px}
@media(max-width:700px){.theater-admin-body{padding:20px}.theater-form{display:grid;grid-template-columns:1fr;gap:14px}.theater-form>.button{width:100%}}

/* Public query enhancements inspired by the reference dashboard. */
.announcement-bar{display:flex;align-items:flex-start;gap:9px;margin:-10px 0 24px;padding:12px 16px;border:1px solid #dce8fb;border-radius:10px;background:linear-gradient(90deg,#eff5ff,#fff);color:#587397;font-size:11px;line-height:1.8}.announcement-bar .icon{width:15px;height:15px;color:#5d8bda;margin-top:2px}.hot-ranking-header{padding-bottom:20px}.ranking-filter{display:flex;align-items:center;gap:7px;width:160px;height:35px;padding:0 10px;border:1px solid #e6ebf1;border-radius:7px;color:#91a0b3;background:#fff}.ranking-filter .icon{width:14px;height:14px}.ranking-filter select{height:31px;padding:0 20px 0 0;border:0;background-position:right 0 center;font-size:11px}.hot-ranking{padding:20px 29px;min-height:128px}.hot-ranking-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 14px;margin:0;padding:0;list-style:none}.hot-ranking-item{display:flex;align-items:center;gap:12px;min-width:0;padding:11px 13px;border:1px solid #eef0f3;border-radius:9px;background:#fbfcfd}.hot-ranking-rank{display:grid;place-items:center;width:27px;height:27px;border-radius:7px;background:#f0f3f7;color:#748398;font-size:11px;font-weight:700;flex-shrink:0}.hot-ranking-item:nth-child(1) .hot-ranking-rank{background:#fff1d8;color:#b27b27}.hot-ranking-item:nth-child(2) .hot-ranking-rank{background:#edf1f6;color:#67758a}.hot-ranking-item:nth-child(3) .hot-ranking-rank{background:#f8e9df;color:#ae7552}.hot-ranking-details{min-width:0}.hot-ranking-details strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600}.hot-ranking-details span{display:block;margin-top:3px;color:#98a3b1;font-size:10px}.hot-ranking-details small{display:block;margin-top:3px;color:#b08a53;font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.date-range-input{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:5px;height:42px}.date-range-input input{min-width:0;padding:0 8px;font-size:11px}.date-range-input span{color:#9ba5b2;font-size:11px}.query-form{grid-template-columns:minmax(190px,1.2fr) minmax(150px,1fr) minmax(140px,.9fr) minmax(265px,1.5fr) auto}.result-total{gap:17px}.result-cumulative{padding-left:17px;border-left:1px solid #e8edf4}.result-cumulative strong{color:#6382b1;font-size:20px}.result-cumulative small{white-space:nowrap}
@media(max-width:1100px){.query-form{grid-template-columns:repeat(2,minmax(0,1fr))}.query-buttons{grid-column:1/-1;justify-content:flex-end}.date-range-field{grid-column:1/-1}.hot-ranking-list{grid-template-columns:1fr}}
@media(max-width:700px){.announcement-bar{margin:-4px 0 18px;padding:10px 12px;font-size:10px}.hot-ranking-header{align-items:flex-start}.ranking-filter{margin-left:47px;width:calc(100% - 47px)}.hot-ranking{padding:16px 20px}.hot-ranking-list{grid-template-columns:1fr;gap:9px}.query-form{grid-template-columns:1fr;padding:21px 20px}.drama-field,.date-range-field{grid-column:auto}.date-range-input{height:40px}.result-total{align-items:flex-end;gap:8px}.result-cumulative{padding-left:0;border-left:0}.result-cumulative strong{font-size:19px}.result-total{flex-wrap:wrap;justify-content:flex-end}.result-total .export-link{width:100%;justify-content:flex-end}.result-heading{flex-wrap:wrap}}

/* Announcements */
.announcement-bar{width:100%;font:inherit;text-align:left;cursor:pointer;position:relative}.announcement-bar:disabled{cursor:default}.announcement-bar-arrow{margin-left:auto;display:inline-flex;align-items:center;gap:4px;white-space:nowrap;color:#6d8ebf;font-size:10px}.announcement-bar-arrow .icon{width:12px;height:12px;margin:0}.announcement-dialog{width:min(780px,calc(100vw - 32px));padding:0;overflow:hidden;border:1px solid #e6eaf1;border-radius:22px;background:#fff}.announcement-dialog::backdrop{background:#1722368a;backdrop-filter:blur(4px)}.announcement-dialog-head{display:flex;align-items:center;justify-content:space-between;padding:24px 30px 8px;background:linear-gradient(125deg,#f5f8ff,#f8f4ff)}.announcement-dialog-head .dialog-icon{margin:0;width:42px;height:42px;background:#e9efff;color:#4f77ea}.dialog-close{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:14px;background:#ffffffaa;color:#7f8ba0;cursor:pointer}.dialog-close:hover{background:#fff;color:#4466c4}.dialog-close .icon{width:19px;height:19px}.announcement-dialog-meta{display:flex;align-items:center;gap:14px;padding:8px 30px 0;color:#8591a2;font-size:11px;background:linear-gradient(125deg,#f5f8ff,#f8f4ff)}.announcement-dialog-meta>span:first-child{padding:4px 9px;border-radius:6px;background:#e6edff;color:#5177de}.announcement-read-state{display:inline-flex;align-items:center;gap:5px}.announcement-read-state .icon{width:13px;height:13px}.announcement-dialog h2{padding:13px 30px 24px;margin:0;font-size:25px;line-height:1.35;color:#192338;background:linear-gradient(125deg,#f5f8ff,#f8f4ff)}.announcement-dialog-body{padding:28px 30px;min-height:110px;color:#4e5b6d;font-size:14px;line-height:2;white-space:pre-wrap;overflow-wrap:anywhere}.announcement-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 30px 21px;border-top:1px solid #edf0f4;background:#fcfcfd;color:#8994a4;font-size:11px}.announcement-dialog-footer>span{display:inline-flex;align-items:center;gap:6px}.announcement-dialog-footer .icon{width:14px;height:14px}.announcement-dialog-footer .button{min-width:70px;height:38px}.announcement-admin-body{padding:25px 29px}.announcement-form{display:grid;grid-template-columns:1.5fr .8fr;gap:16px 18px;align-items:end}.announcement-body-field{grid-column:1/-1}.announcement-body-field textarea{width:100%;resize:vertical;min-height:110px;line-height:1.7}.check-field{display:inline-flex;align-items:center;gap:8px;color:#6c7b90;font-size:11px;min-height:36px}.check-field input{accent-color:var(--blue);width:15px;height:15px}.announcement-form-actions{display:flex;justify-content:flex-end;gap:10px;grid-column:1/-1}.announcement-form-actions .button{min-width:110px}.announcement-form-actions .button.secondary{min-width:82px}.admin-announcement-row{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 0;border-top:1px solid var(--line)}.admin-announcement-content{min-width:0}.admin-announcement-content h3{font-size:13px;font-weight:600;color:#5f728b;overflow-wrap:anywhere}.admin-announcement-content p{max-width:740px;margin-top:7px;font-size:11px;line-height:1.7;color:#9da9b9;white-space:pre-wrap;overflow-wrap:anywhere}.admin-announcement-content .row-meta{margin-top:7px}.admin-announcement-actions{display:flex;align-items:center;gap:7px;flex-shrink:0}.admin-announcement-actions .text-button{font-size:11px}.admin-announcement-actions .danger-text{color:#b98c83}
@media(max-width:700px){.announcement-bar{align-items:flex-start;flex-wrap:wrap;gap:7px}.announcement-bar-arrow{width:100%;margin-left:24px}.announcement-dialog{border-radius:17px}.announcement-dialog-head{padding:18px 20px 5px}.announcement-dialog-meta{padding:7px 20px 0;font-size:10px;gap:9px}.announcement-dialog h2{padding:11px 20px 19px;font-size:20px}.announcement-dialog-body{padding:21px 20px;font-size:12px;line-height:1.9}.announcement-dialog-footer{padding:14px 20px 17px;font-size:10px}.announcement-admin-body{padding:20px}.announcement-form{grid-template-columns:1fr;gap:13px}.announcement-body-field{grid-column:auto}.announcement-form-actions{justify-content:stretch}.announcement-form-actions .button{flex:1}.admin-announcement-row{display:block;padding:16px 0}.admin-announcement-actions{margin-top:11px;justify-content:flex-end}.admin-announcement-content p{font-size:10px}}

/* Whitelist applications */
.whitelist-link{color:#6280b1}
.back-inline{display:inline-flex;align-items:center;gap:7px;color:#6d8ebf;font-size:11px;padding:9px 0;white-space:nowrap}
.back-inline .icon{width:14px;height:14px;transform:rotate(180deg)}
.whitelist-hero-panel,.whitelist-status-panel,.whitelist-management-panel{border:0;border-radius:0;box-shadow:none;background:transparent;overflow:visible}
#applyView h1{font-size:26px;letter-spacing:0}
#applyView .eyebrow,.whitelist-management-panel h2{letter-spacing:0}
#applyView .panel-header,.whitelist-management-panel .panel-header{padding:20px 0;border-color:#dde3e9}
.whitelist-hero-panel h2,.whitelist-status-panel h2{font-size:16px;letter-spacing:0}
.whitelist-apply-body,.whitelist-status-body,.whitelist-admin-body{padding:25px 29px}
.whitelist-apply-body,.whitelist-status-body,.whitelist-management-panel .whitelist-admin-body{padding:22px 0}
.whitelist-admin-summary{display:flex;align-items:center;gap:10px;margin-bottom:16px}
.whitelist-summary-item{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:6px;background:#f4f7fb;color:#7b899a;font-size:11px}
.whitelist-summary-item strong{font-size:14px;color:#4f6f9f;font-weight:650}
.whitelist-summary-item.pending{background:#fff8ea;color:#9b7a43}.whitelist-summary-item.pending strong{color:#b07d2c}
.whitelist-summary-item.processed{background:#f2f5f8}
.whitelist-form{display:grid;grid-template-columns:1fr 1.2fr;gap:17px 24px;align-items:start}
.whitelist-form .whitelist-note-field{grid-column:1/-1}
.whitelist-form textarea,.admin-whitelist-field textarea{width:100%;resize:vertical;line-height:1.7}
.whitelist-theater-field{min-width:0}
.whitelist-theater-select{width:100%;height:42px}
.whitelist-theater-label{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.whitelist-refresh{border:0;background:transparent;color:#4265a2;font:inherit;font-size:12px;padding:0 0 7px;cursor:pointer;white-space:nowrap}
.whitelist-refresh:disabled{opacity:.6;cursor:wait}
.whitelist-availability-note{margin:10px 0 0;padding:10px 12px;border:1px solid #f0dfba;border-radius:8px;background:#fff8eb;color:#805619;font-size:13px;line-height:1.7;overflow-wrap:anywhere}
.theater-management-hint{margin:17px 0 0;color:#687789;font-size:12px;line-height:1.7}
.theater-management-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 0;border-bottom:1px solid var(--line)}
.theater-management-row:first-child{padding-top:0}.theater-management-row:last-child{border-bottom:0;padding-bottom:0}
.theater-management-info{display:flex;align-items:center;flex-wrap:wrap;gap:10px 16px;min-width:0}
.theater-management-info strong{font-size:14px;color:#293d55;overflow-wrap:anywhere}
.theater-availability{border-radius:6px;padding:5px 9px;font-size:12px;white-space:nowrap}
.theater-availability.open{background:#edf7f0;color:#32714a}.theater-availability.full{background:#fff3df;color:#946117}
.theater-management-row>.button{flex-shrink:0;white-space:nowrap}
@media(max-width:600px){.theater-management-info{align-items:flex-start;flex-direction:column;gap:7px}.theater-management-row>.button{padding:0 12px;font-size:12px}}
.whitelist-form-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:16px;padding-top:4px}
.whitelist-form .alert{grid-column:1/-1;margin:0}
.whitelist-status-form{display:flex;align-items:flex-end;gap:14px;max-width:620px}
.whitelist-status-form .field{flex:1}
.whitelist-status-form .button{height:42px;flex-shrink:0}
.whitelist-applications{margin-top:22px;border-top:1px solid var(--line)}
.whitelist-application-row{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:17px 0;border-bottom:1px solid var(--line)}
.whitelist-application-row:last-child{border-bottom:0;padding-bottom:0}
.whitelist-application-main{min-width:0}
.whitelist-application-title,.admin-whitelist-heading{display:flex;align-items:center;gap:9px;flex-wrap:wrap}
.whitelist-application-title strong,.admin-whitelist-heading strong{font-size:13px;font-weight:600;color:#5f728b;overflow-wrap:anywhere}
.whitelist-application-meta{display:flex;gap:15px;flex-wrap:wrap;margin-top:7px;color:#687789;font-size:12px;overflow-wrap:anywhere}
.application-note,.application-feedback{margin-top:7px;color:#657489;font-size:12px;line-height:1.7;overflow-wrap:anywhere;white-space:pre-wrap}
.application-feedback{color:#387a54}
.application-status{display:inline-flex;align-items:center;border-radius:4px;padding:3px 8px;font-size:11px;font-weight:500;white-space:nowrap}
.application-status.pending{color:#a27b3c;background:#fcf5e8}.application-status.success{color:#4f8d68;background:#eaf7ef}.application-status.failed{color:#ad6a61;background:#fbeeed}
.admin-whitelist-applications{border-top:1px solid var(--line)}
.admin-whitelist-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,1.15fr);align-items:start;gap:26px;padding:20px 0;border-bottom:1px solid var(--line)}
.admin-whitelist-row:last-child{border-bottom:0;padding-bottom:0}
.admin-whitelist-info{min-width:0}.admin-whitelist-info>p{margin-top:7px;color:#657489;font-size:12px;line-height:1.7;overflow-wrap:anywhere}.admin-whitelist-info .admin-whitelist-date{color:#687789}
.admin-whitelist-editor{display:grid;grid-template-columns:110px minmax(0,1fr);align-items:start;gap:10px}
.admin-whitelist-field{display:block;min-width:0}.admin-whitelist-field>span{display:block;margin-bottom:6px;color:#687789;font-size:12px}.admin-whitelist-field select{width:100%;height:42px}.admin-whitelist-field textarea{min-height:78px;padding:9px 10px;font-size:12px}.admin-whitelist-save{grid-column:2;justify-self:end;height:39px;white-space:nowrap;padding:0 12px;font-size:12px}.admin-whitelist-save .icon{width:14px;height:14px}
.whitelist-filter-form{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr) auto;align-items:end;gap:14px;margin-bottom:20px}
.whitelist-pagination{display:flex;align-items:center;justify-content:flex-end;gap:8px;margin-top:20px;font-size:12px;color:#687789}
.whitelist-pagination>span{margin-right:auto}.whitelist-page-button{width:36px;height:36px;padding:0}.previous-icon{transform:rotate(180deg)}
.whitelist-admin-hint{margin:-8px 0 18px;color:#98a3b2;font-size:11px;line-height:1.7}
#applyView .field label,.whitelist-filter-form .field label{font-size:12px}
@media(max-width:900px){.admin-whitelist-row{grid-template-columns:1fr}.admin-whitelist-editor{grid-template-columns:140px minmax(0,1fr)}}
@media(max-width:700px){.whitelist-apply-body,.whitelist-status-body,.whitelist-management-panel .whitelist-admin-body{padding:20px 0}#applyView .page-intro{align-items:flex-start;gap:10px}#applyView .back-inline{font-size:11px}#applyView h1{font-size:22px}.whitelist-form{grid-template-columns:1fr;gap:16px}.whitelist-form .whitelist-note-field{grid-column:auto}.whitelist-form-actions{grid-column:auto;display:block}.whitelist-form-actions .button{width:100%}.whitelist-status-form{display:grid;grid-template-columns:1fr;gap:12px}.whitelist-status-form .button{width:100%}.whitelist-application-row{display:block;padding:16px 0}.admin-whitelist-row{padding:17px 0}.admin-whitelist-editor{grid-template-columns:1fr;gap:11px;margin-top:0}.admin-whitelist-save{grid-column:1;width:100%}.whitelist-filter-form{grid-template-columns:repeat(2,minmax(0,1fr))}.whitelist-filter-form .field:first-child{grid-column:1/-1}.whitelist-filter-form .button{grid-column:1/-1}.whitelist-pagination{flex-wrap:wrap}.whitelist-application-meta{gap:5px 15px}.whitelist-admin-summary{margin-bottom:14px}}

/* Public announcement center */
.announcement-center-button{position:relative;display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;border:0;border-radius:8px;background:transparent;color:#687789}
.announcement-center-button:hover{background:#edf3ff;color:#446ed0}
.announcement-center-button .icon{width:19px;height:19px}
.announcement-unread-badge{position:absolute;top:0;right:0;display:grid;place-items:center;min-width:15px;height:15px;padding:0 3px;border:2px solid #fff;border-radius:8px;background:#e76b61;color:#fff;font-size:9px;line-height:1}
.announcement-dialog[open]{display:flex;flex-direction:column;width:min(620px,calc(100vw - 32px));height:min(640px,calc(100dvh - 32px));max-height:calc(100dvh - 32px);padding:0;border-radius:8px}
.announcement-dialog .announcement-dialog-head{flex:0 0 auto;min-height:76px;padding:18px 24px;border-bottom:1px solid #e9edf2;background:#f7f9fc}
.announcement-head-title{display:flex;align-items:center;gap:12px;min-width:0}
.announcement-dialog .announcement-head-title .dialog-icon{width:34px;height:34px;border-radius:8px;background:#e9efff;color:#4f77ea}
.announcement-dialog .announcement-head-title .icon{width:18px;height:18px}
.announcement-dialog .announcement-head-title h2{padding:0;background:none;font-size:22px;line-height:1.3;color:#17212f}
.announcement-dialog .dialog-close{width:34px;height:34px;border-radius:8px;background:#fff}
.announcement-list-view,.announcement-detail-view{flex:1;min-height:0}
.announcement-list-view{overflow-y:auto;overscroll-behavior:contain}
.announcement-list{padding:0 24px}
.announcement-list-item{display:flex;align-items:center;width:100%;min-height:74px;gap:15px;padding:12px 0;border:0;border-bottom:1px solid #eef0f3;background:#fff;text-align:left;color:#17212f}
.announcement-list-item:hover{background:#f9fbff}
.announcement-list-mark{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:8px;background:#f0f3f7;color:#8a99ae}
.announcement-list-mark .icon{width:17px;height:17px}
.announcement-list-summary{display:flex;flex-direction:column;gap:4px;min-width:0;flex:1}
.announcement-list-title{display:flex;align-items:center;gap:7px;min-width:0;font-size:17px;font-weight:600;line-height:1.4;overflow-wrap:anywhere}
.announcement-list-pin{flex:0 0 auto;padding:1px 5px;border-radius:3px;background:#edf3ff;color:#5278c6;font-size:10px}
.announcement-list-date{color:#94a0ae;font-size:12px}
.announcement-list-arrow{width:16px;height:16px;flex:0 0 16px;color:#95a1af}
.announcement-list-empty{padding:64px 16px;text-align:center;color:#8f9bad;font-size:13px}
.announcement-detail-view{display:flex;flex-direction:column;overflow:hidden}
.announcement-detail-heading{flex:0 0 auto;padding:14px 24px 17px;border-bottom:1px solid #edf0f4;background:#f9fbfd}
.announcement-back{display:inline-flex;align-items:center;gap:7px;padding:4px 0;border:0;background:transparent;color:#6480ac;font-size:13px}
.announcement-back:hover{color:#345faf}
.announcement-back .icon{width:14px;height:14px;transform:rotate(180deg)}
.announcement-dialog .announcement-dialog-meta{padding:8px 0 0;background:none;font-size:12px}
.announcement-dialog .announcement-detail-heading h3{margin:10px 0 0;color:#111827;font-size:28px;line-height:1.4;overflow-wrap:anywhere}
.announcement-dialog .announcement-dialog-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:22px 24px;color:#1c2430;font-size:18px;font-weight:500;line-height:1.75}
@media(max-width:700px){.brand-divider,.brand-detail{display:none}.header-actions{gap:6px}.announcement-center-button{width:32px;height:32px;flex-basis:32px}.announcement-dialog[open]{height:min(580px,calc(100dvh - 24px));max-height:calc(100dvh - 24px)}.announcement-dialog .announcement-dialog-head{min-height:68px;padding:14px 17px}.announcement-list{padding:0 17px}.announcement-list-item{min-height:70px;gap:10px}.announcement-list-title{font-size:16px}.announcement-detail-heading{padding:12px 17px 15px}.announcement-dialog .announcement-detail-heading h3{font-size:24px}.announcement-dialog .announcement-dialog-body{padding:18px 17px;font-size:17px}}

/* Creator account workspace */
.creator-auth-body{padding:22px 0}.creator-auth-body .period-tabs{width:max-content;margin-bottom:18px}
.creator-auth-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:end;gap:14px}
.creator-auth-form .field{min-width:0}.creator-auth-form .button{height:44px;grid-column:1/-1}
.creator-auth-form .alert{grid-column:1/-1}
.creator-binding-panel{margin-bottom:24px;border:0;border-radius:0;box-shadow:none;background:transparent}
.creator-binding-panel .panel-header{padding:20px 0;border-bottom:1px solid #dde3e9}
.creator-binding-panel h2{letter-spacing:0}
.creator-bindings{padding:18px 0 4px;letter-spacing:0}
.creator-binding-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px;padding-bottom:18px}
.creator-binding-filter{display:flex;align-items:center;gap:10px;min-width:0;color:#526174;font-size:12px}
.creator-binding-filter>span{flex-shrink:0}
.creator-binding-filter select{width:230px;max-width:100%;height:38px;font-size:13px}
.creator-binding-query{display:inline-flex;align-items:center;min-height:36px;padding:0;font-size:12px;color:#2e67d5}
.creator-binding-query:disabled{color:#7b8797}
.creator-binding-actions{display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-left:auto;min-width:0}
.creator-binding-selected{color:#697687;font-size:12px}
.creator-binding-remove{height:36px;padding:0 12px;font-size:12px}
.creator-binding-remove:disabled{color:#9d6260;background:#f3e9e8;opacity:1}
.creator-binding-toolbar-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid #e1e5e9}
.creator-binding-toolbar-title{color:#334155;font-size:13px;font-weight:600;overflow-wrap:anywhere}
.creator-binding-count{flex-shrink:0;color:#728092;font-size:12px}
.creator-binding-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.creator-binding-row{display:flex;align-items:center;gap:12px;min-width:0;min-height:76px;padding:13px 16px;border:1px solid #e0e5eb;border-radius:6px;background:#fff;color:#334155;font-size:13px;overflow-wrap:anywhere;cursor:pointer;transition:border-color .2s,background .2s}
.creator-binding-row:hover{border-color:#afc4e6;background:#fbfcff}
.creator-binding-row:has(input:checked){border-color:#729bdd;background:#f0f5ff}
.creator-binding-row:has(input:focus-visible){outline:2px solid #729bdd;outline-offset:2px}
.creator-binding-row input{width:16px;height:16px;padding:0;flex:0 0 16px;accent-color:var(--blue)}
.creator-binding-content{display:flex;flex-direction:column;gap:4px;min-width:0}
.creator-binding-content strong{font-size:14px;color:#29384b;overflow-wrap:anywhere;font-weight:600}
.creator-binding-theater{font-size:12px;color:#738194}
.creator-binding-state{margin-left:auto;flex-shrink:0;color:#398065;font-size:11px;white-space:nowrap}
.creator-binding-pagination{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:16px;color:#697687;font-size:12px;font-variant-numeric:tabular-nums}
.creator-binding-page-buttons{display:flex;gap:5px}
.creator-binding-page-button{width:34px;min-width:34px;height:34px;padding:0;font-size:12px;border-radius:5px;color:#58677a}
.creator-binding-page-button.active{background:#2e67d5;border-color:#2e67d5;color:#fff}
.creator-binding-page-button.active:hover{background:#2358be;border-color:#2358be}
.creator-binding-page-button:disabled{background:#f0f2f4;color:#aab2bc;opacity:1}
.creator-reset-result{padding:0 0 18px;color:#1e5f44;font-weight:600;overflow-wrap:anywhere}
#creatorDashboard .query-form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}
#creatorDashboard .query-form .video-field{min-width:0}
.query-field-hint{margin:0;color:#687789;font-size:11px;line-height:1.5}
.query-result-scope{overflow-wrap:anywhere}
#creatorDashboard .query-form .date-range-field{grid-column:span 2}
#creatorDashboard .query-form .query-buttons{grid-column:1/-1}
@media(max-width:800px){#creatorDashboard .query-form{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.creator-auth-body{padding:20px 16px}.creator-auth-form,#creatorDashboard .query-form{grid-template-columns:1fr}.creator-auth-body .period-tabs{margin-left:0}.creator-auth-form .button{width:100%}#creatorDashboard .query-form .date-range-field{grid-column:1}#creatorDashboard .query-form .query-buttons{grid-column:1}.creator-binding-panel .panel-header{flex-wrap:wrap}}

/* Creator account polish: one calm login column and a scannable admin table. */
.creator-auth-panel{max-width:520px;margin-left:auto;margin-right:auto}
.creator-auth-panel .panel-header{justify-content:center;text-align:center;padding-bottom:21px}
.creator-auth-panel .section-heading{justify-content:center}
.creator-auth-body{padding:26px 42px 32px}
.creator-auth-body .period-tabs{display:none}
.creator-auth-form{display:flex;flex-direction:column;gap:15px;align-items:stretch}
.creator-auth-form .button{width:100%;margin-top:4px}
.creator-dashboard-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end}
.creator-dashboard-actions .button{height:36px;padding:0 12px;font-size:11px}
.creator-account-table-wrap{margin-top:22px;border-top:1px solid var(--line);overflow-x:auto}
.creator-account-table{min-width:980px;table-layout:fixed}
.creator-account-table th,.creator-account-table td{padding:14px 14px;text-align:left;vertical-align:middle}
.creator-account-table th:first-child,.creator-account-table td:first-child{padding-left:0;width:17%}
.creator-account-table th:nth-child(4),.creator-account-table td:nth-child(4){width:76px}
.creator-account-table th:nth-child(5),.creator-account-table td:nth-child(5){width:118px}
.creator-account-table th:last-child,.creator-account-table td:last-child{padding-right:0;width:215px}
.creator-account-table th{background:transparent;font-size:10px;color:#8b98a8;border-bottom:1px solid #eef1f4}
.creator-account-table td{font-size:12px;color:#647489;white-space:normal;overflow-wrap:anywhere}
.creator-account-table tbody tr:first-child td{border-top:0}
.creator-account-table .account-name-cell{font-weight:650;color:#304967}
.creator-account-table .account-bindings-cell{color:#718298;line-height:1.65}
.account-binding-summary{display:inline-block;margin-right:8px;color:#526b87;font-weight:600}
.account-binding-toggle{display:inline-block;padding:2px 0;color:#4d75bd;font-size:11px}
.account-binding-details{margin-top:7px;padding:7px 9px;border-left:2px solid #dce7f5;background:#f8fafc;color:#718298;font-size:11px;line-height:1.8;overflow-wrap:anywhere}
.creator-account-search{display:flex;align-items:end;gap:12px;margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}
.creator-account-search .field{flex:0 1 360px}.creator-account-search .button{height:42px}.creator-account-search .text-button{height:42px}
.creator-account-pagination{display:flex;align-items:center;gap:8px;margin-top:18px;color:#687789;font-size:12px}
.creator-account-pagination>span{margin-right:auto}.creator-account-page-buttons{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.creator-account-page-button{min-width:36px;height:34px;padding:0 9px;font-size:11px}.creator-account-page-button.active{background:#e8effb;color:#416ab7;border-color:#cbdaf2}
.creator-account-table .account-date-cell{white-space:nowrap;font-size:11px;color:#8b98a8}
.creator-account-table .account-status-cell{white-space:nowrap}
.account-status{display:inline-flex;align-items:center;min-height:24px;padding:0 8px;border-radius:999px;font-size:10px;font-weight:650;letter-spacing:.2px}
.account-status.active{background:#e9f7ef;color:#32845d}
.account-status.inactive{background:#f2f3f5;color:#8a929c}
.account-actions-cell{white-space:normal}
.account-actions-cell .text-button{margin:2px 10px 2px 0}
.account-password-button{display:inline-flex;align-items:center;gap:5px;color:#5d7fbc;font-size:11px;padding:5px 0}
.account-password-button .icon{width:14px;height:14px}
.account-status-button{display:inline-flex;align-items:center;gap:5px;color:#73849a;font-size:11px;padding:5px 0}
.account-status-button .icon{width:14px;height:14px}
.account-delete-button{display:inline-flex;align-items:center;gap:5px;color:#b25c57;font-size:11px;padding:5px 0}
.account-delete-button .icon{width:14px;height:14px}
.account-protected-note{display:inline-block;color:#aab2bc;font-size:10px;margin:2px 8px 2px 0}
.creator-account-hint{margin-top:15px;color:#99a5b3;font-size:11px;line-height:1.7}
.theater-statement{margin:0 29px 18px;min-width:0;border:1px solid #e7edf4;border-radius:10px;overflow:hidden;background:var(--panel)}
.statement-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:60px;padding:15px 18px;border-bottom:1px solid var(--line)}
.statement-scroll-hint{display:none;color:#9aa6b5;font-size:9px;white-space:nowrap;margin-left:auto}
.statement-identity{display:flex;align-items:center;gap:9px;min-width:0;flex:1}.statement-mark{display:grid;place-items:center;width:27px;height:27px;flex-shrink:0;color:#7397ce;background:#f0f5fd;border-radius:7px}.statement-mark .icon{width:14px;height:14px}.statement-heading h4{margin:0;min-width:0;font-size:13px;font-weight:600;line-height:1.6;color:#49617e;overflow-wrap:anywhere}.statement-count{padding:2px 7px;border-radius:4px;background:#f5f7fa;color:#8b98a9;font-size:10px;font-weight:400;white-space:nowrap;flex-shrink:0}.statement-heading .statement-meta{margin:0;font-size:10px;line-height:1.6;color:#91a0b1;flex-shrink:0}
.statement-scroll{overflow-x:auto}.statement-table{width:100%;min-width:560px;table-layout:fixed;border-collapse:collapse;font-variant-numeric:tabular-nums}.statement-table th,.statement-table td{text-align:right;padding:13px 18px;white-space:normal;overflow-wrap:anywhere;line-height:1.65;border:0;font-size:12px;color:#647489;letter-spacing:0}.statement-table th:first-child,.statement-table td:first-child{text-align:left;padding-left:18px;width:46%}.statement-table th:last-child,.statement-table td:last-child{padding-right:18px;width:18%}.statement-table thead th{padding-top:11px;padding-bottom:11px;background:#f7f9fc;font-size:11px;font-weight:500;color:#8191a5}.statement-table .statement-summary th,.statement-table .statement-summary td{background:#eff5ff;border-top:1px solid #e4edf9;border-bottom:1px solid #e4edf9;color:#5073a4;font-weight:600}.statement-table .statement-summary td:last-child{color:var(--blue);font-size:13px}.statement-details td{border-top:1px solid #f0f3f7}.statement-details tr:nth-child(odd) td{background:#fff}.statement-details tr:nth-child(even) td{background:#fafbfd}.statement-details tr:hover td{background:#f2f7ff}.statement-details td:last-child{color:#4d6c96;font-weight:500}.statement-title{color:#536a86}.statement-title small{display:block;font-size:10px;color:#94a1b2;margin-top:3px}.statement-basis,.statement-missing{font-size:10px;line-height:1.8;margin:0;padding:10px 18px;border-top:1px solid var(--line);color:#8a98aa;background:#fff}.statement-missing{color:#9b835c;background:#fffdf8}.statement-empty{text-align:center!important;color:#99a5b3!important}
.statement-drama-group tr{cursor:pointer;transition:background .15s}.statement-drama-group tr:hover td,.statement-drama-group tr.expanded td{background:#f6f9ff}.statement-drama-group th.statement-drama-name{font-weight:500}.statement-drama-toggle{display:flex;align-items:center;gap:9px;width:100%;padding:0;border:0;background:transparent;text-align:left;color:#4f6684}.statement-drama-toggle>.icon{width:15px;height:15px;color:#91a3bb;transition:transform .18s}.statement-drama-toggle[aria-expanded=true]>.icon{transform:rotate(90deg);color:var(--blue)}.statement-drama-label{min-width:0;font-weight:600;overflow-wrap:anywhere}.statement-drama-count{margin-left:auto;flex-shrink:0;color:#99a5b3;font-size:10px;font-weight:400}
.ranking-controls{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:9px;min-width:0}
.ranking-period{display:flex;align-items:center;gap:3px;padding:3px;border:1px solid #edf0f4;border-radius:7px;background:#f5f6f8}
.ranking-period button{min-width:48px;height:28px;padding:0 9px;border:0;border-radius:5px;background:transparent;color:#758193;font-size:11px;font-weight:600;cursor:pointer;transition:color .2s,background .2s,box-shadow .2s}
.ranking-period button.active{background:#fff;color:#b35b47;box-shadow:0 1px 4px #34405518}
.hot-ranking-heading{min-width:0}
.hot-ranking-heading>.ranking-period{margin-left:18px;flex-shrink:0}
.hot-ranking-heading>.ranking-period button{height:34px;min-width:61px;font-size:17px;font-weight:500;color:#d65e5e;border-radius:5px}
.hot-ranking-heading>.ranking-period button.active{background:#fff5f5;color:#ee3f4b;box-shadow:none}
.ranking-date{width:135px;flex:0 0 135px}
.ranking-date input{height:35px;padding:0 8px;border-color:#e6ebf1;font-size:11px}
.ranking-controls .ranking-filter{flex:0 0 160px}
@media(max-width:800px){.hot-ranking-header{align-items:flex-start}.hot-ranking-heading{flex-wrap:wrap}.hot-ranking-heading>.ranking-period{margin-left:47px}.ranking-controls{justify-content:flex-start;width:100%}}
@media(max-width:700px){.ranking-controls{margin-left:47px;width:calc(100% - 47px)}.ranking-controls .ranking-filter{margin-left:0;width:160px}}
@media(max-width:430px){.ranking-controls{margin-left:0;width:100%}.ranking-date{flex:1 1 120px}.ranking-controls .ranking-filter{flex:1 1 160px}}
.creator-password-dialog{width:min(460px,calc(100vw - 32px));padding:0;border-radius:10px;overflow:hidden}
.creator-password-dialog form{margin:0}
.creator-password-dialog .dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:23px 25px 18px;border-bottom:1px solid #edf0f4;background:#f8fafc}
.creator-password-dialog .dialog-head h2{margin-top:6px;font-size:20px;color:#24364e}
.creator-password-dialog .dialog-head p{margin-top:7px;font-size:11px;color:#8b98a8}
.creator-password-dialog .dialog-head .dialog-close{width:32px;height:32px;border-radius:8px;flex:0 0 32px}
.creator-password-dialog .dialog-body{display:flex;flex-direction:column;gap:15px;padding:23px 25px 5px}
.creator-password-dialog .dialog-body .alert{margin-top:0}
.creator-password-dialog .dialog-actions{padding:18px 25px 22px;margin:0;border-top:1px solid #edf0f4}
.creator-password-dialog .dialog-actions .button{min-width:100px}
.creator-password-dialog .check-field{margin-top:-2px}
@media(max-width:700px){
  .creator-auth-panel{max-width:none}
  .creator-auth-body{padding:22px 20px 26px}
  .creator-dashboard-actions{width:100%;justify-content:flex-start;margin-left:47px}
  .creator-dashboard-actions .button{flex:1}
  .creator-account-table-wrap{margin-top:18px}
  .creator-account-hint{font-size:10px}
  .creator-binding-panel .panel-header{flex-wrap:wrap;gap:16px}.creator-binding-panel .creator-dashboard-actions{margin-left:0}
  .creator-binding-list{grid-template-columns:1fr}.creator-binding-toolbar{gap:10px 16px}.creator-binding-filter{width:100%}.creator-binding-filter select{flex:1;width:0}
  .creator-binding-actions{gap:8px}.creator-binding-selected{font-size:11px}.creator-binding-query{font-size:11px}.creator-binding-remove{padding:0 9px;font-size:11px}
  .creator-binding-pagination{align-items:flex-start;flex-direction:column}.creator-binding-row{padding:12px;min-height:72px}.creator-binding-state{font-size:10px}
  .creator-account-search{display:grid;grid-template-columns:1fr 1fr;gap:10px}.creator-account-search .field{grid-column:1/-1}.creator-account-search .button,.creator-account-search .text-button{width:100%}.creator-account-pagination{align-items:flex-start;flex-direction:column}.creator-account-pagination>span{margin-right:0}.creator-account-page-buttons{justify-content:flex-start}
  .creator-password-dialog .dialog-head,.creator-password-dialog .dialog-body{padding-left:20px;padding-right:20px}
  .creator-password-dialog .dialog-actions{padding-left:20px;padding-right:20px}
  .theater-statement{margin:0 20px 16px;border-radius:8px}.statement-heading{padding:12px;gap:8px;min-height:52px;flex-wrap:wrap}.statement-identity{flex:1 0 100%}.statement-heading h4{font-size:12px}.statement-count{font-size:9px;padding:2px 5px}.statement-scroll-hint{display:inline-block;order:3;width:100%;margin-left:35px;margin-top:-2px}.statement-heading .statement-meta{display:none}.statement-mark{width:23px;height:23px}.statement-mark .icon{width:12px;height:12px}.statement-table{min-width:420px}.statement-table th:first-child,.statement-table td:first-child{width:40%}.statement-table th:last-child,.statement-table td:last-child{width:20%}.statement-table th,.statement-table td{font-size:11px;padding:12px 7px;line-height:1.7}.statement-table th:first-child,.statement-table td:first-child{padding-left:12px}.statement-table th:last-child,.statement-table td:last-child{padding-right:12px}.statement-table thead th{font-size:10px;padding-top:10px;padding-bottom:10px}.statement-table .statement-summary td:last-child{font-size:12px}.statement-title small{font-size:9px}.statement-basis,.statement-missing{font-size:9px;padding:9px 12px}
}

/* 数字口径说明：跟着数字走，避免误读（2026-10-16 第 1 批） */
.result-total .metric-note{font-size:9px;color:#aab4c0;font-weight:400;line-height:1.5;margin-top:6px;max-width:min(210px,42vw);white-space:normal;letter-spacing:0}

/* ===== 第 2 批：达人端左侧分组导航 + 分页（2026-10-16） ===== */
.creator-layout{display:grid;grid-template-columns:228px minmax(0,1fr);gap:28px;align-items:start}
.creator-content{min-width:0}
.creator-page .page-intro{margin:2px 0 26px}
.side-nav{align-self:stretch}
.side-nav-inner{position:sticky;top:24px;display:flex;flex-direction:column;gap:20px;padding:4px 0 18px}
.side-nav-group{display:flex;flex-direction:column;gap:3px}
.side-nav-title{font-size:11px;letter-spacing:1.5px;color:#8d97a4;padding:0 13px 8px}
.side-nav-item{display:flex;align-items:center;gap:11px;padding:11px 13px;border-radius:10px;font-size:15px;font-weight:500;letter-spacing:.2px;color:#3f4e63;transition:background .18s,color .18s}
.side-nav-item .icon{width:19px;height:19px;color:#8b98ab;transition:color .18s}
.side-nav-item:hover{background:#fff;color:var(--ink)}
.side-nav-item.active{background:var(--light-blue);color:var(--blue);font-weight:650}
.side-nav-item.active .icon{color:var(--blue)}
.side-nav-status{display:flex;align-items:flex-start;gap:8px;padding:14px 12px 0;border-top:1px solid var(--line);margin-top:2px}
.side-nav-status strong{display:block;font-size:11px;color:#5d6c75;font-weight:500}
.side-nav-status small{display:block;font-size:10px;color:#98a0a8;margin-top:3px;font-variant-numeric:tabular-nums}
.side-nav-status .status-dot{margin-top:6px}
@media(max-width:900px){.creator-layout{grid-template-columns:190px minmax(0,1fr)}}
@media(max-width:700px){
  .creator-layout{grid-template-columns:minmax(0,1fr);gap:16px}
  .creator-page .page-intro{margin:0 0 18px}
  .side-nav-inner{position:static;flex-direction:row;gap:9px;overflow-x:auto;padding:0 0 8px;margin:0;scrollbar-width:none}
  .side-nav::-webkit-scrollbar{display:none}
  .side-nav-group{flex-direction:row;gap:9px;flex:0 0 auto}
  .side-nav-title{display:none}
  .side-nav-item{white-space:nowrap;border:1px solid #e6ebf1;background:#fff;padding:9px 15px;font-size:12.5px;gap:0}
  .side-nav-item .icon{display:none}
  .side-nav-item.active{border-color:#c9dcff;background:var(--light-blue)}
  .side-nav-status{display:none}
}

/* ===== 第 5 批：我的视频号 · 横列列表（2026-10-16） ===== */
.creator-binding-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px 29px;border-bottom:1px solid var(--line)}
.creator-binding-toolbar-heading{display:flex;align-items:baseline;gap:10px}
.creator-binding-count{font-size:11px;color:#9aa4b1}
.creator-channel-search{display:flex;align-items:center;gap:8px;font-size:11px;color:#8794a3}
.creator-channel-search input{width:190px;height:34px;font-size:12px}
.creator-channel-list{display:flex;flex-direction:column}
.creator-channel-row{display:grid;grid-template-columns:minmax(200px,1fr) minmax(0,1.5fr) auto;gap:16px;align-items:center;padding:16px 29px;border-top:1px solid var(--line)}
.creator-channel-row:first-child{border-top:0}
.creator-channel-row:hover{background:#fcfdff}
.creator-channel-identity{display:flex;align-items:center;gap:12px;min-width:0}
.creator-channel-avatar{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--light-blue);color:var(--blue);font-size:15px;font-weight:650;flex-shrink:0}
.creator-channel-name{min-width:0}
.creator-channel-name strong{display:block;font-size:13px;font-weight:600;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.creator-channel-name span{display:block;margin-top:3px;font-size:10px;color:#9aa4b1;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.creator-channel-chips{display:flex;flex-wrap:wrap;gap:6px;min-width:0}
.creator-channel-chip{font-size:10px;padding:4px 9px;border-radius:6px;border:1px solid #e8ebef;background:#fafbfc;color:#7c8794;white-space:nowrap}
.creator-channel-chip.approved{background:#eef8f3;border-color:#d5eade;color:#3f7d61}
.creator-channel-chip.pending{background:#fff8ec;border-color:#f2e3c8;color:#9a7b38}
.creator-channel-chip.none{background:#f7f8fa;border-color:#e8ebef;color:#9aa4b1}
.creator-channel-actions{display:flex;align-items:center;gap:8px;justify-content:flex-end}
.creator-channel-actions .button{height:34px;padding:0 13px;font-size:11px}
@media(max-width:700px){
  .creator-binding-toolbar{padding:16px 20px}
  .creator-channel-search{width:100%;flex:1;min-width:0}
  .creator-channel-search input{width:100%;flex:1}
  .creator-channel-row{grid-template-columns:1fr;gap:12px;padding:15px 20px}
  .creator-channel-actions{justify-content:flex-start;flex-wrap:wrap}
  .creator-channel-actions .button{flex:1}
}

/* ===== 第 5 批：管理视频号弹窗（2026-10-16） ===== */
.channel-manage-list{display:flex;flex-direction:column;gap:8px}
.channel-manage-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid #eef1f4;border-radius:9px;background:#fbfcfd}
.channel-manage-info{display:flex;align-items:center;gap:9px;min-width:0}
.channel-manage-info strong{font-size:12px;font-weight:600;color:var(--ink)}
.channel-manage-note{font-size:10px;color:#9aa4b1}
.channel-manage-empty{font-size:11px;color:#9aa4b1;padding:4px 0}
.channel-manage-row .button{height:32px;padding:0 12px;font-size:11px}

/* ===== 第 2b 批：报白申请并入侧栏 + 后台分组导航（2026-10-16） ===== */
.admin-layout{display:grid;grid-template-columns:228px minmax(0,1fr);gap:28px;align-items:start}
.admin-content{min-width:0}
/* The admin pages hold full-width panels; the dashboard grid already spaces them. */
.admin-page>.panel:first-child{margin-top:0}
#pageApply .whitelist-hero-panel{margin-top:0}
@media(max-width:900px){.admin-layout{grid-template-columns:190px minmax(0,1fr)}}
@media(max-width:700px){
  .admin-layout{grid-template-columns:minmax(0,1fr);gap:16px}
}

/* ===== 退出按钮：加底色 + 加深字重（2026-10-16） ===== */
/* Deliberately a soft filled chip: clearly more prominent than the plain text nav
   links, but it must not compete with the page's primary actions. */
.nav-link.logout-chip{background:#e9eef6;border:1px solid #d9e2ed;border-radius:9px;padding:8px 15px;font-weight:600;color:#28384c;letter-spacing:.2px;transition:background .2s,border-color .2s,color .2s}
.nav-link.logout-chip:hover{background:#dce5f1;border-color:#c2d1e3;color:#16243a}
@media(max-width:700px){
  .nav-link.logout-chip{padding:7px 11px;font-size:11px}
}

/* ===== 未登录时把需要登录的侧栏入口标灰 + 「需登录」（2026-10-16） ===== */
.side-nav-item.locked{color:#9aa4b1}
.side-nav-item.locked .icon{color:#c3cbd4}
.side-nav-item.locked:hover{background:#f7f8fa;color:#8a95a2}
.side-nav-item.locked::after{content:'需登录';margin-left:auto;font-size:9px;font-weight:500;line-height:1;color:#9aa4b1;background:#f2f4f7;border:1px solid #e8ecf1;border-radius:5px;padding:4px 6px}
.side-nav-item.locked.active{background:#f7f8fa;color:#8a95a2;font-weight:500}
@media(max-width:700px){
  .side-nav-item.locked::after{content:'需登录';margin-left:7px;padding:3px 5px}
}

/* ===== 第 3 批：收益概览页（2026-10-16） ===== */
.overview-body{padding:22px 29px 24px}
.overview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}
.overview-presets{display:flex;gap:7px;flex-wrap:wrap}
.overview-preset{border:1px solid #e4e9ef;background:#fff;color:#5c6b80;border-radius:8px;padding:8px 14px;font-size:12px;cursor:pointer;transition:background .18s,border-color .18s,color .18s}
.overview-preset:hover{border-color:#c3d2e4;color:var(--ink)}
.overview-preset.active{background:var(--light-blue);border-color:#c9dcff;color:var(--blue);font-weight:600}
.overview-custom{display:flex;align-items:center;gap:8px}
.overview-custom input[type=date]{height:36px;font-size:12px;padding:0 10px;border:1px solid #e4e9ef;border-radius:8px;color:var(--ink)}
.overview-custom-sep{font-size:11px;color:#9aa4b1}
.overview-custom .button{height:36px;padding:0 14px;font-size:12px}
.overview-stats{margin:0}
.overview-note{font-size:11px;color:#9aa4b1;margin:14px 0 0}
.overview-actions{display:flex;gap:9px;flex-wrap:wrap;margin-top:16px}
.overview-actions .button{height:36px;padding:0 15px;font-size:12px}
@media(max-width:700px){
  .overview-body{padding:18px 20px 20px}
  .overview-toolbar{flex-direction:column;align-items:stretch}
  .overview-preset{flex:1;padding:9px 8px;text-align:center}
  .overview-custom{flex-wrap:wrap}
  .overview-custom input[type=date]{flex:1;min-width:0}
  .overview-actions .button{flex:1}
}

/* ===== 外观主题系统（2026-10-16） =====
   默认「云端白」不设置 data-theme，因此下面的规则一条都不生效 —— 原始外观逐像素保留。
   其余主题只覆盖"看得见的表面"，通过 [data-theme] 作用域限定，绝不触碰默认渲染。 */
.theme-picker{position:relative}
.theme-button{display:flex;align-items:center;gap:8px;border:1px solid #e2e5e9;border-radius:9px;background:#fff;padding:8px 13px;font-size:12px;color:#566270;cursor:pointer;font-family:inherit;transition:border-color .2s,background .2s}
.theme-button:hover{border-color:#b7cafa;background:#f6f9ff}
.theme-button .icon{width:14px;height:14px}
.theme-button .chevron{width:12px;height:12px;color:#98a3b2}
.theme-menu{position:absolute;right:0;top:calc(100% + 10px);width:222px;background:#fff;border:1px solid #e7ebf0;border-radius:14px;box-shadow:0 20px 44px -20px rgba(16,24,40,.4);padding:12px;z-index:60}
.theme-menu-title{font-size:11px;font-weight:600;color:#7d8896;padding:2px 8px 9px}
.theme-option{display:flex;align-items:center;gap:11px;width:100%;border:0;background:none;padding:9px 8px;border-radius:9px;font-size:13px;color:#3f4e63;cursor:pointer;text-align:left;font-family:inherit}
.theme-option:hover{background:#f4f7fb}
.theme-option.active{background:#eef4ff;color:#2e67d5;font-weight:600}
.theme-swatch{width:17px;height:17px;border-radius:50%;flex-shrink:0;box-shadow:inset 0 0 0 1px rgba(0,0,0,.1)}
.theme-option .check{margin-left:auto;width:15px;height:15px;color:#2e67d5}
.theme-menu-note{font-size:10px;color:#9aa4b1;text-align:center;padding:10px 0 2px;border-top:1px solid #edf0f4;margin-top:8px}

/* 结构性覆盖：只在设置了主题时生效 */
[data-theme] .site-header{background:var(--t-header-bg);border-bottom-color:var(--t-line)}
[data-theme] .panel{background:var(--t-panel);border-color:var(--t-line)}
[data-theme] .stat-card{background:var(--t-panel);border-color:var(--t-line)}
[data-theme] .stat-card strong{color:var(--t-ink)}
[data-theme] .stat-card span,[data-theme] .stat-card small{color:var(--t-muted)}
[data-theme] .stat-card .stat-icon{background:var(--t-tint)}
[data-theme] .page-intro h1,[data-theme] h1,[data-theme] h2,[data-theme] h3{color:var(--t-ink)}
[data-theme] .page-intro p,[data-theme] .panel-header p,[data-theme] .section-heading p{color:var(--t-muted)}
[data-theme] .side-nav{background:var(--t-nav-bg);border-radius:15px;padding:16px 13px 14px}
[data-theme] .side-nav-title{color:var(--t-nav-muted)}
[data-theme] .side-nav-item{color:var(--t-nav-ink)}
[data-theme] .side-nav-item .icon{color:var(--t-nav-icon)}
[data-theme] .side-nav-item:hover{background:var(--t-nav-hover);color:var(--t-nav-ink-strong)}
[data-theme] .side-nav-item:hover .icon{color:var(--t-nav-ink)}
[data-theme] .side-nav-item.active{background:var(--t-brand);color:var(--t-on-brand)}
[data-theme] .side-nav-item.active .icon{color:var(--t-on-brand)}
[data-theme] .side-nav-item.locked{color:var(--t-nav-muted)}
[data-theme] .side-nav-item.locked .icon{color:var(--t-nav-icon)}
[data-theme] .side-nav-item.locked:hover{background:var(--t-nav-hover);color:var(--t-nav-muted)}
[data-theme] .side-nav-item.locked::after{background:var(--t-nav-hover);border-color:var(--t-nav-hover);color:var(--t-nav-muted)}
[data-theme] .side-nav-status{border-top-color:var(--t-nav-line)}
[data-theme] .side-nav-status strong{color:var(--t-nav-ink)}
[data-theme] .side-nav-status small{color:var(--t-nav-muted)}
[data-theme] .creator-binding-toolbar,[data-theme] .creator-channel-row{border-color:var(--t-line)}
[data-theme] .creator-channel-row:hover{background:var(--t-row-hover)}
[data-theme] .creator-channel-name strong{color:var(--t-ink)}
[data-theme] .creator-channel-name span,[data-theme] .creator-binding-count{color:var(--t-muted)}
[data-theme] .creator-channel-avatar{background:var(--t-tint);color:var(--t-brand)}
[data-theme] .overview-preset{background:var(--t-panel);border-color:var(--t-line);color:var(--t-muted)}
[data-theme] .overview-preset.active{background:var(--t-tint);border-color:var(--t-tint-border);color:var(--t-brand)}
[data-theme] input,[data-theme] select,[data-theme] textarea{background:var(--t-input-bg);border-color:var(--t-line);color:var(--t-ink)}
[data-theme] .button.secondary,[data-theme] .admin-link,[data-theme] .theme-button{background:var(--t-panel);border-color:var(--t-line);color:var(--t-ink-2)}
[data-theme] .button.primary{background:var(--t-brand)}
[data-theme] .button.primary:hover{background:var(--t-brand-hover)}
[data-theme] table th{background:var(--t-surface-2);color:var(--t-muted)}
[data-theme] table td{border-color:var(--t-line);color:var(--t-ink-2)}
[data-theme] .bottom-guide,[data-theme] .site-footer,[data-theme] .nav-link{color:var(--t-muted)}
[data-theme] .theme-menu{background:var(--t-panel);border-color:var(--t-line)}
[data-theme] .theme-menu-title,[data-theme] .theme-menu-note{color:var(--t-muted)}
[data-theme] .theme-menu-note{border-top-color:var(--t-line)}
[data-theme] .theme-option{color:var(--t-ink-2)}
[data-theme] .theme-option:hover{background:var(--t-row-hover)}
[data-theme] .theme-option.active{background:var(--t-tint);color:var(--t-brand)}
[data-theme] .theme-button .chevron{color:var(--t-muted)}

/* ---- 深海蓝 ---- */
[data-theme="deepsea"]{--bg:#eef2f8;--t-header-bg:rgba(255,255,255,.55);--t-panel:#fff;--t-surface-2:#f2f5f9;--t-line:#dfe5ee;--t-ink:#1b2838;--t-ink-2:#465468;--t-muted:#7b8798;--t-brand:#2e67d5;--t-brand-hover:#2358be;--t-tint:#e8effb;--t-tint-border:#c9dcff;--t-input-bg:#fff;--t-row-hover:#f6f9fd;--t-nav-bg:#0f1729;--t-nav-ink:#c2cbdb;--t-nav-ink-strong:#fff;--t-nav-muted:#8b98ad;--t-nav-icon:#8b98ad;--t-nav-hover:#1b2740;--t-nav-line:#1d2942;--t-on-brand:#fff}

/* ---- 靛青 ---- */
[data-theme="indigo"]{--bg:#f1f2fb;--t-header-bg:rgba(255,255,255,.55);--t-panel:#fff;--t-surface-2:#f3f3fb;--t-line:#e2e2f2;--t-ink:#1e1b39;--t-ink-2:#4a4770;--t-muted:#7f7c9e;--t-brand:#4f46e5;--t-brand-hover:#4338ca;--t-tint:#eceafd;--t-tint-border:#cdc9fb;--t-input-bg:#fff;--t-row-hover:#f7f7fe;--t-nav-bg:#141232;--t-nav-ink:#c6c3e2;--t-nav-ink-strong:#fff;--t-nav-muted:#9d9ad0;--t-nav-icon:#9d9ad0;--t-nav-hover:#221e4d;--t-nav-line:#272253;--t-on-brand:#fff}

/* ---- 森林绿 ---- */
[data-theme="forest"]{--bg:#edf6f2;--t-header-bg:rgba(255,255,255,.5);--t-panel:#fff;--t-surface-2:#f0f7f4;--t-line:#d9e8e2;--t-ink:#12302b;--t-ink-2:#3c5b55;--t-muted:#6f8b85;--t-brand:#0f766e;--t-brand-hover:#0d6459;--t-tint:#e0f2ee;--t-tint-border:#bfe3da;--t-input-bg:#fff;--t-row-hover:#f5fbf9;--t-nav-bg:#0c2b28;--t-nav-ink:#c0d6d1;--t-nav-ink-strong:#fff;--t-nav-muted:#86b3ab;--t-nav-icon:#86b3ab;--t-nav-hover:#123a36;--t-nav-line:#17403b;--t-on-brand:#fff}

/* ---- 石墨黑 ---- */
[data-theme="graphite"]{--bg:#0b1220;--t-header-bg:rgba(11,18,32,.88);--t-panel:#141d2f;--t-surface-2:#182238;--t-line:#243044;--t-ink:#e8edf5;--t-ink-2:#c2cbdb;--t-muted:#8d99ac;--t-brand:#5b8cff;--t-brand-hover:#4a7bf0;--t-tint:#1c2740;--t-tint-border:#2b3a58;--t-input-bg:#0f1729;--t-row-hover:#182238;--t-nav-bg:#0f1729;--t-nav-ink:#c2cbdb;--t-nav-ink-strong:#fff;--t-nav-muted:#93a1b8;--t-nav-icon:#93a1b8;--t-nav-hover:#1b2740;--t-nav-line:#1d2942;--t-on-brand:#0b1220}
[data-theme="graphite"] body{color:var(--t-ink)}
[data-theme="graphite"] .panel{box-shadow:0 1px 2px rgba(0,0,0,.5)}
[data-theme="graphite"] .stat-card .stat-icon{color:var(--t-brand)}
[data-theme="graphite"] .creator-channel-chip{background:var(--t-surface-2);border-color:var(--t-line);color:var(--t-muted)}
[data-theme="graphite"] .bottom-guide,[data-theme="graphite"] .site-footer{border-color:var(--t-line)}
[data-theme="graphite"] .button.primary{color:#0b1220}
[data-theme="graphite"] .preview-summary,[data-theme="graphite"] .history-body{color:var(--t-ink-2)}

/* ---- 语义色：所有非默认主题共用一套，深浅主题各自微调 ---- */
[data-theme]{--t-danger:#b94c47;--t-danger-tint:#fbeeed;--t-danger-line:#f5ded6;--t-success:#1e5f44;--t-success-tint:#e9f7ef;--t-success-line:#d8ece1;--t-warning:#8a6a24;--t-warning-tint:#fff5e9;--t-warning-line:#f0e4c6;--t-placeholder:#9aa4b1;--t-toast-bg:#243346;
  /* 旧变量桥接：logo、旧按钮等仍在使用 var(--blue)，让它们一起跟随主题 */
  --blue:var(--t-brand);--blue-hover:var(--t-brand-hover);--light-blue:var(--t-tint);--panel:var(--t-panel);--line:var(--t-line);--ink:var(--t-ink);--muted:var(--t-muted)}

/* ---- ① 按钮 ---- */
[data-theme] .button.primary{background:var(--t-brand);border-color:var(--t-brand);color:var(--t-on-brand)}
[data-theme] .button.primary:hover{background:var(--t-brand-hover);border-color:var(--t-brand-hover)}
[data-theme] .button.secondary{background:var(--t-panel);border-color:var(--t-line);color:var(--t-ink-2)}
[data-theme] .button.secondary:hover{border-color:var(--t-tint-border);background:var(--t-tint);color:var(--t-brand)}
[data-theme] .button.danger{background:var(--t-danger);border-color:var(--t-danger);color:#fff}
[data-theme] .button.danger:hover{filter:brightness(.93)}
[data-theme] .text-button{color:var(--t-brand)}
[data-theme] .text-button:hover{color:var(--t-brand-hover)}
[data-theme] .button:disabled,[data-theme] .button[disabled]{background:var(--t-surface-2);border-color:var(--t-line);color:var(--t-muted)}
[data-theme] .logout-chip{background:var(--t-tint);border-color:var(--t-tint-border);color:var(--t-brand)}
[data-theme] .logout-chip:hover{background:var(--t-tint-border);color:var(--t-brand-hover)}

/* ---- ② 状态提示 ---- */
[data-theme] .alert.error{background:var(--t-danger-tint);border-color:var(--t-danger-line);color:var(--t-danger)}
[data-theme] .alert.success{background:var(--t-success-tint);border-color:var(--t-success-line);color:var(--t-success)}
[data-theme] .alert.warning{background:var(--t-warning-tint);border-color:var(--t-warning-line);color:var(--t-warning)}
[data-theme] .creator-channel-chip.approved{background:var(--t-success-tint);border-color:var(--t-success-line);color:var(--t-success)}
[data-theme] .creator-channel-chip.pending{background:var(--t-warning-tint);border-color:var(--t-warning-line);color:var(--t-warning)}
[data-theme] .creator-channel-chip.none{background:var(--t-surface-2);border-color:var(--t-line);color:var(--t-muted)}
[data-theme] .toast{background:var(--t-toast-bg)}
[data-theme] .status-dot{background:var(--t-success)}

/* ---- ③ 表格与列表 ---- */
[data-theme] table th{background:var(--t-surface-2);color:var(--t-muted);border-color:var(--t-line)}
[data-theme] table td{border-color:var(--t-line);color:var(--t-ink-2)}
[data-theme] table,[data-theme] thead,[data-theme] tbody,[data-theme] tr,[data-theme] .table-wrap,[data-theme] .creator-account-table-wrap,[data-theme] .history-body{background:var(--t-panel)}
[data-theme] tbody tr:hover{background:var(--t-row-hover)}
[data-theme] .compact-empty,[data-theme] .loading-message,[data-theme] .panel-note,[data-theme] .creator-account-hint{color:var(--t-muted)}
[data-theme] .creator-binding-page-button{background:var(--t-panel);border-color:var(--t-line);color:var(--t-ink-2)}
[data-theme] .creator-binding-page-button.active{background:var(--t-brand);border-color:var(--t-brand);color:var(--t-on-brand)}
[data-theme] .creator-binding-page-button:disabled{background:var(--t-surface-2);color:var(--t-muted);opacity:1}
[data-theme] .creator-binding-pagination{color:var(--t-muted)}

/* ---- ④ 表单 ---- */
[data-theme] input::placeholder,[data-theme] textarea::placeholder{color:var(--t-placeholder)}
[data-theme] input:focus,[data-theme] select:focus,[data-theme] textarea:focus{border-color:var(--t-brand);box-shadow:0 0 0 3px var(--t-tint)}
[data-theme] .field label,[data-theme] .check-field span{color:var(--t-ink-2)}
[data-theme] .drop-zone{background:var(--t-surface-2);border-color:var(--t-line)}
[data-theme] .drop-zone:hover{border-color:var(--t-brand);background:var(--t-tint)}

/* ---- ⑤ 容器与边框 ---- */
[data-theme] .panel-header{border-color:var(--t-line)}
[data-theme] .eyebrow{color:var(--t-brand)}
[data-theme] .bottom-guide{border-color:var(--t-line)}
[data-theme] .site-footer{border-top-color:var(--t-line)}
[data-theme] .stat-icon.green{background:var(--t-success-tint);color:var(--t-success)}
[data-theme] .stat-icon.amber{background:var(--t-warning-tint);color:var(--t-warning)}
[data-theme] .stat-icon.lilac{background:var(--t-tint);color:var(--t-brand)}

/* ---- ⑥ 深色主题的语义色修正（浅底提示色在深底上不可读） ---- */
[data-theme="graphite"]{--t-danger:#ff8b84;--t-danger-tint:#2a1819;--t-danger-line:#43211f;--t-success:#5ed6a4;--t-success-tint:#12271f;--t-success-line:#1c3a2e;--t-warning:#e5b95c;--t-warning-tint:#2a2312;--t-warning-line:#463a1c;--t-placeholder:#5d6b84;--t-toast-bg:#1b2740}
[data-theme="graphite"] .button.danger{color:#2a1819}
[data-theme="graphite"] .creator-channel-chip.approved{color:var(--t-success)}
[data-theme="graphite"] .overview-note,[data-theme="graphite"] .side-nav-title{color:var(--t-muted)}

/* ===== C-01 修复：账单明细的单元格自带底色，只改容器不够，必须逐个覆盖 ===== */
[data-theme] .statement-details td{border-top-color:var(--t-line)}
[data-theme] .statement-details tr:nth-child(odd) td{background:var(--t-panel)}
[data-theme] .statement-details tr:nth-child(even) td{background:var(--t-surface-2)}
[data-theme] .statement-details tr:hover td{background:var(--t-tint)}
[data-theme] .statement-details td:last-child{color:var(--t-brand)}
[data-theme] .statement-drama-group tr:hover td,[data-theme] .statement-drama-group tr.expanded td{background:var(--t-tint)}
[data-theme] .statement-drama-toggle{color:var(--t-ink-2)}
[data-theme] .statement-drama-toggle>.icon{color:var(--t-muted)}
[data-theme] .statement-drama-toggle[aria-expanded=true]>.icon{color:var(--t-brand)}
[data-theme] .statement-drama-count{color:var(--t-muted)}
[data-theme] .statement-total td{background:var(--t-surface-2);color:var(--t-ink)}
[data-theme] .statement-total td:last-child{color:var(--t-brand)}

/* ===== C-02 修复：弹窗此前只改了输入框和 label，正文仍是白底 ===== */
[data-theme] dialog{background:var(--t-panel);border-color:var(--t-line);color:var(--t-ink)}
[data-theme] dialog h2,[data-theme] .creator-password-dialog .dialog-head h2{color:var(--t-ink)}
[data-theme] dialog p,[data-theme] .creator-password-dialog .dialog-head p{color:var(--t-muted)}
[data-theme] .creator-password-dialog .dialog-head{background:var(--t-surface-2);border-bottom-color:var(--t-line)}
[data-theme] .creator-password-dialog .dialog-actions{border-top-color:var(--t-line)}
[data-theme] .dialog-close{background:var(--t-surface-2);color:var(--t-muted)}
[data-theme] .dialog-close:hover{background:var(--t-tint);color:var(--t-brand)}
[data-theme] .dialog-icon{background:var(--t-warning-tint);color:var(--t-warning)}
[data-theme] .announcement-dialog{background:var(--t-panel);border-color:var(--t-line)}
[data-theme] .announcement-dialog-head,[data-theme] .announcement-dialog .announcement-dialog-head{background:var(--t-surface-2);border-bottom-color:var(--t-line)}
[data-theme] .announcement-dialog-meta,[data-theme] .announcement-dialog h2{background:var(--t-surface-2);color:var(--t-muted)}
[data-theme] .announcement-dialog .announcement-head-title h2,[data-theme] .announcement-dialog .announcement-detail-heading h3{color:var(--t-ink)}
[data-theme] .announcement-dialog-meta>span:first-child{background:var(--t-tint);color:var(--t-brand)}
[data-theme] .announcement-dialog-body,[data-theme] .announcement-dialog .announcement-dialog-body{color:var(--t-ink-2)}
[data-theme] .announcement-dialog-footer{background:var(--t-surface-2);border-top-color:var(--t-line);color:var(--t-muted)}
[data-theme] .announcement-dialog-head .dialog-icon,[data-theme] .announcement-dialog .announcement-head-title .dialog-icon{background:var(--t-tint);color:var(--t-brand)}
[data-theme] .announcement-dialog .dialog-close{background:var(--t-panel)}
[data-theme] .announcement-back,.data-theme-announcement{color:var(--t-brand)}
[data-theme] .creator-password-dialog .check-field span,[data-theme] dialog .field label{color:var(--t-ink-2)}

/* 页头副标题与页脚：原先写死的中灰在浅色页头上只有 3.84:1 */
[data-theme] .brand-detail{color:var(--t-ink-2)}
[data-theme] .site-footer,[data-theme] .footer-inner{color:var(--t-ink-2)}

/* C-01/C-02 复查追加：这些元素此前写死深色/浅色，未被主题覆盖 */
[data-theme] .creator-binding-toolbar-title{color:var(--t-ink)}
[data-theme] .creator-binding-toolbar-heading{color:var(--t-ink)}
[data-theme] .whitelist-refresh,[data-theme] .whitelist-refresh:hover{color:var(--t-brand)}
[data-theme] .required{color:var(--t-danger)}
[data-theme] .optional,[data-theme] .query-field-hint,[data-theme] .whitelist-availability-note,[data-theme] .whitelist-admin-hint,[data-theme] .creator-account-hint,[data-theme] .import-option-note,[data-theme] .panel-note{color:var(--t-muted)}
[data-theme] .hot-ranking-rank{color:var(--t-warning)}
[data-theme] .period-tab,[data-theme] .period-tabs button{color:var(--t-muted)}
[data-theme] .period-tab.active,[data-theme] .period-tabs button.active{color:var(--t-brand)}
[data-theme] .brand-detail{color:var(--t-muted)}
/* ===== F-06 修复：主题漏过剧场标题与总计行（补丁误写 .statement-total，实际类名是 .statement-summary） ===== */
[data-theme] .statement-heading h4,[data-theme] .statement-heading{color:var(--t-ink)}
[data-theme] .statement-summary td,[data-theme] .statement-summary th{background:var(--t-surface-2);color:var(--t-ink-2)}
[data-theme] .statement-summary td:last-child{background:var(--t-surface-2);color:var(--t-brand)}
[data-theme] .statement-total td,[data-theme] .statement-summary tr:hover td{background:var(--t-surface-2)}
[data-theme] .statement-basis{color:var(--t-muted)}
/* ===== 修复：独立的报白申请页/后台分页不再有外层容器提供内距 =====
   这三条旧规则（第 29/32/35 行）是为"面板嵌在别的容器里"写的：border:0 + padding 左右 0。
   第 2b 批把报白申请拆成独立分页后，外层没了，面板就变成没边框、没边距的裸块，
   文字紧贴左边缘。凡是独立成页的，都按普通卡片还给它内距与边框。 */
.admin-page .whitelist-management-panel,
.creator-page .whitelist-hero-panel,
.creator-page .whitelist-status-panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}
.admin-page .whitelist-management-panel .panel-header,
.creator-page .whitelist-hero-panel .panel-header,
.creator-page .whitelist-status-panel .panel-header{padding:26px 29px;border-bottom:1px solid var(--line)}
.admin-page .whitelist-management-panel .whitelist-admin-body,
.creator-page .whitelist-hero-panel .whitelist-apply-body,
.creator-page .whitelist-status-panel .whitelist-status-body{padding:26px 29px}
@media(max-width:700px){
  .admin-page .whitelist-management-panel .panel-header,
  .creator-page .whitelist-hero-panel .panel-header,
  .creator-page .whitelist-status-panel .panel-header{padding:20px}
  .admin-page .whitelist-management-panel .whitelist-admin-body,
  .creator-page .whitelist-hero-panel .whitelist-apply-body,
  .creator-page .whitelist-status-panel .whitelist-status-body{padding:20px}
}
/* ===== 侧栏结构：外层撑满内容列，内层吸顶（用户选方案 C）===== */
.side-nav{align-self:stretch}
.side-nav-inner{min-width:0}
[data-theme] .side-nav{display:flex;flex-direction:column}
[data-theme] .side-nav-inner{flex:0 0 auto}
@media(max-width:700px){
  .side-nav{align-self:stretch}
  .side-nav-inner{position:static;flex-direction:row}
}

/* ===== 后台正文字号统一（用户要求）=====
   侧栏 15px 之后，正文的 11-12px 明显偏小，同一屏挤了 11/12/14/17/33 五种字号。
   统一成 13px 一档，面板标题 18px，让层级清楚。 */
.panel-header p{font-size:13px}
.section-heading h2{font-size:18px}
.whitelist-admin-hint,.whitelist-availability-note,.creator-account-hint,.import-option-note,.panel-note,.whitelist-admin-body p{font-size:13px}
.whitelist-summary-item{font-size:13px}
.whitelist-filter-form .field label,.theater-form .field label,.creator-account-search .field label{font-size:13px}
.text-button{font-size:13px}
.creator-account-hint,.whitelist-admin-hint{line-height:1.7}
.admin-page .compact-empty,.admin-page .loading-message{font-size:13px}
.theater-management-hint{font-size:13px}
.announcement-form .field label,.recommend-form .field label{font-size:13px}
.history-body,.theater-list,.admin-whitelist-applications{font-size:13px}
@media(max-width:700px){
  .section-heading h2{font-size:16px}
  .whitelist-admin-hint,.creator-account-hint,.import-option-note,.panel-note{font-size:12px}
}

/* ---- 团队主账号 / 成员子账号（阶段 4） ---- */
/* 全部使用主题令牌，5 个主题自动跟随；不用固定色值的地方都走 --t-* 变量。 */
.team-channel-filter{flex-wrap:wrap}
.team-assign-bar{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:14px 0;padding:12px 14px;border:1px solid var(--t-line);border-radius:12px;background:var(--t-tint)}
.team-assign-bar label{font-size:13px;color:var(--t-ink-2);font-weight:600}
.team-assign-bar select{min-width:180px;max-width:100%;padding:8px 10px;border:1px solid var(--t-line);border-radius:10px;background:var(--t-panel);color:var(--t-ink);font:inherit;font-size:13px}
.team-assign-selection{font-size:13px;color:var(--t-muted);margin-left:auto}
.team-channel-identity{display:flex;flex-direction:column;gap:2px;min-width:0}
.team-channel-identity strong{font-size:14px;color:var(--t-ink);overflow-wrap:anywhere}
.team-channel-identity span{font-size:12px;color:var(--t-muted);overflow-wrap:anywhere}
.creator-channel-locked{font-size:12px;color:var(--t-muted);align-self:center}
.creator-account-table td.numeric,
.team-member-revenue td.numeric{text-align:right;font-variant-numeric:tabular-nums}
.team-member-revenue td,.team-member-revenue th{font-size:13px}
.account-type-cell{white-space:nowrap;font-size:13px;color:var(--t-ink-2)}

.team-admin-list{display:flex;flex-direction:column;gap:12px}
.team-admin-card{border:1px solid var(--t-line);border-radius:14px;padding:16px 18px;background:var(--t-panel);display:flex;flex-direction:column;gap:10px}
.team-admin-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px}
.team-admin-title{display:flex;flex-direction:column;gap:4px;min-width:0}
.team-admin-title strong{font-size:16px;color:var(--t-ink);overflow-wrap:anywhere}
.team-admin-title span{font-size:13px;color:var(--t-muted)}
.team-admin-stats{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:13px;color:var(--t-ink-2)}
.team-admin-actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center;border-top:1px solid var(--t-line);padding-top:10px}
.team-status{font-size:12px;padding:3px 10px;border-radius:999px;border:1px solid var(--t-line)}
.team-status.active{color:var(--t-success);border-color:var(--t-success-line);background:var(--t-success-tint)}
.team-status.suspended{color:var(--t-warning);border-color:var(--t-warning-line);background:var(--t-warning-tint)}

.team-audit-list{display:flex;flex-direction:column;gap:8px}
.team-audit-item{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;padding:9px 12px;border:1px solid var(--t-line);border-radius:10px;font-size:13px}
.team-audit-action{font-weight:600;color:var(--t-ink)}
.team-audit-detail{color:var(--t-ink-2);overflow-wrap:anywhere;flex:1 1 220px;min-width:0}
.team-audit-time{color:var(--t-muted);font-size:12px;margin-left:auto}

@media(max-width:700px){
  .team-assign-bar{gap:8px;padding:10px}
  .team-assign-bar select{min-width:0;flex:1 1 100%}
  .team-assign-selection{margin-left:0}
  .team-admin-actions{gap:8px}
  .team-audit-time{margin-left:0}
}
/* ---- TR-10/TR-11：团队只读提示与错误态 ---- */
#teamReadOnlyBanner{margin:0 0 18px;font-size:13px}
.team-channel-filter .field,
.creator-account-search .field{min-width:0}
/* ---- RF-04：团队模块错误与重试 ---- */
.team-retry-row{margin:0 0 16px}
.team-retry-row .button{font-size:13px}
#teamAssignError{margin:12px 0}
/* ---- 验收反馈修复（2026-10-17 上线后）----
   1) 后台「开通团队」表单有 5 个子元素（2 字段 + 复选 + 提示 + 按钮），
      沿用 .theater-form 的 flex（.field{flex:1} → flex-basis:0）时，
      其余子元素的固有宽度把两个 .field 挤成 0 宽：标签逐字竖排、输入框消失。
      这里改为显式网格，并把按钮固定在首行第三列。 */
#teamCreateForm{display:grid;grid-template-columns:minmax(160px,1.1fr) minmax(160px,1fr) auto;
  gap:16px 18px;align-items:end;max-width:none}
#teamCreateForm>div.field:nth-of-type(1){grid-column:1;grid-row:1}
#teamCreateForm>div.field:nth-of-type(2){grid-column:2;grid-row:1}
#teamCreateForm>#createTeamButton{grid-column:3;grid-row:1;height:42px;justify-self:end}
#teamCreateForm>#teamLeaderHint{grid-column:1/-1;grid-row:2;margin:0}
#teamCreateForm>.check-field{grid-column:1/-1;grid-row:3;min-height:0;padding-top:2px}
#teamCreateForm>#teamCreateTarget{grid-column:1/-1;grid-row:4;margin:0}

/*   2) 达人端「我的视频号」：主题把 .creator-binding-panel 渲染成白卡后，
      头部与分页仍是 0 横向内距，而工具栏/列表是 29px，导致图标与文字贴边。
      统一为同一内距；<=700px 时与列表的 20px 对齐。 */
.creator-binding-panel .panel-header{padding:20px 29px}
.creator-binding-pagination{padding:16px 29px 4px}

@media(max-width:700px){
  #teamCreateForm{grid-template-columns:1fr}
  #teamCreateForm>div.field:nth-of-type(1),
  #teamCreateForm>div.field:nth-of-type(2),
  #teamCreateForm>.check-field,
  #teamCreateForm>#teamCreateTarget{grid-column:1;grid-row:auto}
  #teamCreateForm>#createTeamButton{grid-column:1;grid-row:auto;width:100%;justify-self:stretch}
  .creator-binding-panel .panel-header{padding:18px 20px}
  .creator-binding-pagination{padding:16px 20px 4px}
}
/* ---- 验收反馈：开通团队的账号选择改成可搜索（2026-10-17）----
   原生 <select> 仍保留为真值来源（提交/锁定逻辑不变），但视觉上换成搜索框 + 候选列表。
   达人数量多时可以输入账号开头直接筛选；深浅主题都走 --t-* 令牌。 */
.team-leader-field{min-width:0}
.team-leader-picker{position:relative;min-width:0}
#teamLeaderFilter{width:100%;height:42px;padding:0 32px 0 12px;font-size:13px}
.team-leader-caret{position:absolute;right:13px;top:21px;width:0;height:0;border-left:5px solid transparent;
  border-right:5px solid transparent;border-top:6px solid var(--t-muted,#97a3b2);pointer-events:none}
.team-leader-native{position:absolute;left:0;bottom:0;width:1px;height:1px;min-width:0;padding:0;margin:0;
  opacity:0;border:0;pointer-events:none}
.team-leader-list{position:absolute;z-index:60;left:0;right:0;top:calc(100% + 6px);max-height:290px;overflow-y:auto;
  padding:5px;border:1px solid var(--t-line,var(--line));border-radius:10px;background:var(--t-panel,#fff);
  box-shadow:0 16px 34px rgba(23,42,74,.16)}
.team-leader-list[hidden]{display:none}
.team-leader-option{display:flex;align-items:center;gap:10px;width:100%;padding:9px 11px;border:0;border-radius:7px;
  background:transparent;color:var(--t-ink,var(--ink));font:inherit;text-align:left;cursor:pointer}
.team-leader-option.active,.team-leader-option:hover{background:var(--t-row-hover,#eef4ff)}
.team-leader-option.selected{background:var(--t-tint,#eef4ff)}
.team-leader-option-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;color:var(--t-ink,var(--ink))}
.team-leader-option-contact{flex-shrink:0;max-width:46%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
  color:var(--t-muted,#94a1b2);font-size:11px}
.team-leader-mark{padding:0 1px;border-radius:3px;background:var(--t-warning-tint,#fdecc8);color:inherit;font-weight:650}
.team-leader-empty{padding:14px 12px;color:var(--t-muted,#96a2b2);font-size:12px;text-align:center}
.team-leader-hint{margin:0;color:var(--t-muted,#8b97a6);font-size:11px;line-height:1.5;overflow-wrap:anywhere}
@media(max-width:700px){
  .team-leader-list{max-height:240px}
}
/* ===== 2026-10-17 修复：团队「视频号分配」表 =====
   1) 全局 input{width:100%;height:42px} 把这一个复选框拉成了 152×42 的白块，
      其它复选框都有各自的尺寸规则，只有这张表漏了 → 这里按表作用域还原。 */
.team-channel-table input[type=checkbox]{width:16px;height:16px;padding:0;margin:0;min-width:0;flex:0 0 auto;border-radius:3px;box-shadow:none;accent-color:var(--t-brand,#2e67d5)}
/* 2) 这张表误继承了「达人账号管理」表的列宽与贴边规则（首列 padding-left:0、末列 215px 等），
      这里给团队表自己的列宽，原账号表不受影响。 */
.team-channel-table{min-width:900px}
.team-channel-table th,.team-channel-table td{padding-left:14px;padding-right:14px}
.team-channel-table th:first-child,.team-channel-table td:first-child{width:56px;padding-left:14px;text-align:center}
.team-channel-table th:nth-child(4),.team-channel-table td:nth-child(4){width:110px}
.team-channel-table th:nth-child(5),.team-channel-table td:nth-child(5){width:120px}
.team-channel-table th:last-child,.team-channel-table td:last-child{width:120px;padding-right:14px}

/* ===== 2026-10-17 新增：剧场剧目目录（达人端） =====
   网盘链接是否出现由服务端响应决定；这里的样式只负责卡片、状态标签与窄屏布局。 */
.drama-catalog-header{gap:20px;flex-wrap:wrap}
.drama-catalog-toolbar{width:min(430px,100%);flex:0 0 auto;display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.drama-catalog-toolbar select{flex:1 1 130px;min-width:120px}
.drama-catalog-toolbar input[type=search]{flex:1 1 150px;min-width:130px;height:38px;font-size:12px}
.drama-catalog-toolbar .text-button{flex:0 0 auto;font-size:11px;white-space:nowrap}
@media (max-width:700px){
  .drama-catalog-toolbar{width:100%}
  .drama-catalog-toolbar select,.drama-catalog-toolbar input[type=search]{flex:1 1 100%}
}
.drama-catalog-body{padding:22px 29px 26px}
.drama-status-tabs{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}
.drama-status-tabs button{height:32px;padding:0 12px;border:1px solid #e5e9ef;border-radius:999px;background:#f7f9fc;color:#6c7a8c;font-size:12px;cursor:pointer;font-family:inherit}
.drama-status-tabs button.active{background:#e8effb;border-color:#cbdaf2;color:#416ab7;font-weight:500}
.drama-status-count{margin-left:5px;font-variant-numeric:tabular-nums;opacity:.72}
.drama-catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:16px}
.drama-catalog-placeholder{grid-column:1/-1;text-align:center;padding:34px 20px;color:#98a3b1}
.drama-catalog-placeholder .icon{width:26px;height:26px;color:#c3cbd6;margin:0 auto}
.drama-catalog-placeholder h3{font-size:13px;color:#7a899a;font-weight:500;margin-top:10px}
.drama-catalog-placeholder p{font-size:11px;color:#a4adba;margin-top:6px}
.drama-catalog-card{display:flex;flex-direction:column;min-width:0;border:1px solid #eef0f3;border-radius:12px;overflow:hidden;background:#fff}
.drama-catalog-desc{margin:0;color:#7b8795;font-size:11px;line-height:1.6;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;white-space:pre-line;word-break:break-word}
.drama-detail-button{margin-top:2px;width:100%;height:30px;padding:0 10px;font-size:11px;border-radius:6px}
.drama-detail-hint{color:#9aa5b2;font-size:10px;margin-top:2px}
.drama-catalog-poster{position:relative;aspect-ratio:3/4;background:linear-gradient(145deg,#f1f2f4,#fafbfc);display:grid;place-items:center;overflow:hidden}
.drama-catalog-poster img{width:100%;height:100%;object-fit:cover;display:block}
.drama-poster-fallback{color:#aab3bf;font-size:11px;letter-spacing:.5px}
.drama-catalog-poster .tag{position:absolute;top:8px;left:8px;background:rgba(255,255,255,.92)}
.drama-catalog-card-body{padding:11px 12px 13px;display:flex;flex-direction:column;gap:7px;min-width:0}
.drama-catalog-card-body h3{font-size:13px;line-height:1.45;color:#33455a;font-weight:600;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.drama-catalog-meta{display:flex;gap:8px;flex-wrap:wrap;color:#8b98a8;font-size:11px}
.drama-catalog-alias{margin:0;color:#8b98a8;font-size:11px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.drama-download-link{display:inline-flex;align-items:center;gap:5px;margin-top:auto;color:#2e67d5;font-size:11px;font-weight:500;text-decoration:none}
.drama-download-link:hover{text-decoration:underline}
.drama-download-link .icon{width:13px;height:13px}
.drama-download-muted{margin-top:auto;color:#a6b0bd;font-size:11px}

/* 剧目详情弹窗：海报 + 全部字段 + 完整介绍 + 网盘入口 */
.drama-detail-dialog{max-width:820px;width:calc(100% - 40px);max-height:calc(100vh - 60px);overflow:auto;border:0;border-radius:16px;padding:0;box-shadow:0 24px 60px rgba(20,35,60,.22)}
.drama-detail-dialog::backdrop{background:rgba(18,28,44,.42)}
.drama-detail-body{display:flex;gap:20px;padding:22px 26px 8px}
.drama-detail-cover{width:190px;flex:0 0 190px;aspect-ratio:3/4;border-radius:10px;overflow:hidden;background:#f1f3f6;display:grid;place-items:center;color:#aab3bf;font-size:12px;align-self:flex-start}
.drama-detail-cover img{width:100%;height:100%;object-fit:cover;display:block}
.drama-detail-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;gap:14px}
.drama-detail-info{display:flex;flex-direction:column;gap:8px;margin:0}
.drama-info-row{display:grid;grid-template-columns:96px minmax(0,1fr);gap:10px;align-items:start;font-size:12px;line-height:1.7}
.drama-info-row dt{margin:0;color:#95a0ae;font-size:11px;padding-top:1px}
.drama-info-row dd{margin:0;color:#44546a;word-break:break-word}
.drama-detail-url{color:#2e67d5;text-decoration:none;font-size:11px;word-break:break-all;line-height:1.6;display:inline-block}
.drama-detail-url:hover{text-decoration:underline}
.drama-detail-subtitle{margin:0 0 6px;font-size:12px;color:#5a6b80;font-weight:600}
.drama-detail-description-block{border-top:1px solid #eef1f5;padding-top:12px}
.drama-detail-description{margin:0;color:#4d5d70;font-size:13px;line-height:1.85;white-space:pre-line;word-break:break-word;max-height:300px;overflow:auto}
.drama-detail-actions{display:flex;gap:10px;flex-wrap:wrap;padding-top:4px}
@media (max-width:700px){
  .drama-detail-body{flex-direction:column;gap:14px;padding:18px 20px 4px}
  .drama-detail-cover{width:140px;flex:0 0 auto;align-self:center}
  .drama-detail-description{max-height:none}
  .drama-info-row{grid-template-columns:78px minmax(0,1fr)}
}

/* ===== 2026-10-17 新增：管理员「剧目资料管理」 ===== */
.admin-drama-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px 16px;padding:22px 0 8px;border-bottom:1px dashed #e9edf2;margin-bottom:18px}
.admin-drama-form .field.wide{grid-column:1/-1}
.admin-drama-form-actions{grid-column:1/-1;display:flex;gap:10px;flex-wrap:wrap;padding-top:2px}
.admin-drama-poster-row{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap}
.admin-drama-poster-preview{width:84px;height:112px;flex:0 0 auto;border:1px dashed #dfe5ec;border-radius:8px;background:#f7f9fc;display:grid;place-items:center;overflow:hidden;color:#a9b3bf;font-size:11px}
.admin-drama-poster-preview img{width:100%;height:100%;object-fit:cover;display:block}
.admin-drama-poster-actions{flex:1 1 220px;min-width:0;display:flex;flex-direction:column;gap:8px}
.admin-drama-poster-actions input[type=file]{height:auto;padding:8px 10px;font-size:11px;background:#fbfcfd}
.admin-drama-hint{margin:0;color:#9aa5b2;font-size:11px;line-height:1.6}
.admin-drama-filter{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end;margin-bottom:14px}
.admin-drama-filter .field{flex:1 1 160px;min-width:0}
.admin-drama-table-wrap{border:1px solid #eef0f3;border-radius:10px}
/* 9 列在 1440px 下必须一次看全（尤其是末列"删除"），所以收紧本表内距并给最小宽度兜底。 */
.admin-drama-table{min-width:780px}
.admin-drama-table th,.admin-drama-table td{padding:10px}
.admin-drama-table th:first-child,.admin-drama-table td:first-child{padding-left:18px}
.admin-drama-table th:last-child,.admin-drama-table td:last-child{padding-right:18px}
.admin-drama-thumb{width:38px;height:51px;border-radius:5px;object-fit:cover;display:block;background:#f2f4f7}
.admin-drama-thumb.empty{display:grid;place-items:center;color:#b3bcc7;font-size:10px}
.admin-drama-actions{display:flex;gap:10px;white-space:nowrap}
.admin-drama-actions .text-button{padding:0}
@media (max-width:900px){
  .admin-drama-form{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px){
  .admin-drama-form{grid-template-columns:1fr}
  .drama-catalog-body{padding:18px 20px 22px}
  .drama-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .drama-catalog-header{gap:14px}
  .drama-catalog-toolbar{width:100%}
  .admin-drama-actions{flex-wrap:wrap;gap:6px}
}

/* ===== 2026-10-19：成员自添视频号 + 团队收益口径 =====
   来源标签只表达归属（本人添加 / 团队分配），不新增交互控件；
      颜色沿用主题变量，未启用主题时保持白底浅色。 */
.channel-source-tag{display:inline-block;font-size:10px;line-height:1.6;padding:4px 9px;border-radius:6px;
  border:1px solid #dbe5f5;background:#f1f6ff;color:#4a6da8;white-space:nowrap;vertical-align:middle}
.channel-source-tag.self-added{border-color:#d5e3fa;background:#eef4ff;color:#4166a3}
.channel-source-tag.team-assigned{border-color:#e6def4;background:#f6f2fd;color:#72609b}
/* 团队视频号分配表：来源标签跟在视频号信息下方，与两行身份信息左对齐。 */
.team-channel-table .channel-source-tag{margin-top:5px}
/* 成员弹窗两个权限复选框改为上下两行，避免窄弹窗里并排贴在一起。 */
#teamMemberForm .check-field{display:flex}
/* 团队收益统计卡只剩 3 张：桌面三等分，窄屏沿用既有 2 列规则；手机单列避免长标题挤压。 */
.team-revenue-stats{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1000px){.team-revenue-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.team-revenue-stats{grid-template-columns:1fr}}
/* 跨归属 / 历史缺失提示：只给文字说明，不展示后端未返回的月表金额与差额。 */
.team-revenue-pending{color:#9a7b38;line-height:1.7}
[data-theme] .channel-source-tag{border-color:var(--t-line);background:var(--t-surface-2);color:var(--t-muted)}
[data-theme] .channel-source-tag.self-added{border-color:var(--t-tint-border);background:var(--t-tint);color:var(--t-brand)}
[data-theme] .channel-source-tag.team-assigned{border-color:var(--t-line);background:var(--t-surface-2);color:var(--t-ink-2)}
[data-theme] .team-revenue-pending{color:var(--t-warning)}
/* 合作剧场账号：多剧场负责范围 */.operator-theater-choices { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 8px 18px; }.operator-theater-choices .check-field { margin: 0; }

/* 合作剧场账号：紧凑的多剧场选择器 */
.operator-scope-field { flex: 1.4; }
.operator-scope-picker { position: relative; }
.operator-scope-trigger { width: 100%; height: 42px; display: flex; align-items: center; justify-content: space-between; gap: 10px; padding: 0 12px; border: 1px solid #e0e5eb; border-radius: 7px; background: #fff; color: #415269; font: inherit; font-size: 12px; text-align: left; cursor: pointer; transition: border-color .2s, box-shadow .2s; }
.operator-scope-trigger:hover { border-color: #c7d2e1; }
.operator-scope-trigger[aria-expanded="true"] { border-color: #83a8e8; box-shadow: 0 0 0 3px #2e67d50a; }
.operator-scope-summary { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.operator-scope-caret { color: #97a3b2; font-size: 15px; line-height: 1; }
.operator-scope-menu { position: absolute; z-index: 30; left: 0; right: 0; top: calc(100% + 6px); padding: 12px; border: 1px solid #e2e8ef; border-radius: 10px; background: #fff; box-shadow: 0 14px 34px #253d6126; }
.operator-scope-menu[hidden] { display: none; }
.operator-scope-menu .operator-theater-choices { max-height: 220px; overflow: auto; grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 2px; }
.operator-scope-menu-foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 10px; padding-top: 10px; border-top: 1px solid #eef2f6; color: #9aa6b5; font-size: 11px; }
.operator-scope-done { height: 30px; padding: 0 14px; border: 0; border-radius: 6px; background: var(--blue); color: #fff; font: inherit; font-size: 11px; cursor: pointer; }
.operator-scope-done:hover { background: var(--blue-hover); }

.operator-scope-count { margin-top: 10px; color: #9aa6b5; font-size: 11px; }


.theater-management-actions { display: flex; align-items: center; gap: 10px; flex-shrink: 0; }
.theater-management-actions .danger-text { white-space: nowrap; }
@media(max-width: 600px) { .theater-management-actions { width: 100%; justify-content: flex-start; } }

