@charset "UTF-8";
:root {color-scheme:dark;--base:#0b0b12;--surface:#14131e;--surface2:#1b1825;--line:#332c3b;--muted:#a9a0b2;--text:#f6eef7;--accent:#e5afd0;--gradient:linear-gradient(110deg,#ffcfad,#e7aecb 55%,#b68ffd);font-family:Inter,-apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif}
*{box-sizing:border-box}body{background:var(--base);color:var(--text);margin:0;-webkit-font-smoothing:antialiased}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}[hidden]{display:none!important}
.login-screen{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:#0d0b12}
.login-art{display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(ellipse at center,#422146,#19101c 55%,#08060a);border-right:1px solid #422e48}
.login-art img{width:min(93%,650px);mix-blend-mode:screen;filter:drop-shadow(0 0 60px #db75cf40)}
.login-card{padding:min(12vh,100px) clamp(35px,8vw,140px);display:flex;flex-direction:column;justify-content:center;max-width:850px}
.login-brand,.side-brand{display:flex;align-items:center;gap:12px;font-size:19px;letter-spacing:2px;font-weight:720}.login-brand img,.side-brand img{width:55px;height:55px;mix-blend-mode:screen}.login-brand small,.side-brand small{display:block;color:#a08da6;font-size:9px;letter-spacing:2px;margin-top:5px;font-weight:500}
.login-kicker{color:#c49bbb;letter-spacing:3px;font-size:10px;margin-top:65px}.login-card h1{font-size:52px;margin:14px 0;font-weight:650;letter-spacing:-1px}.login-card h1 span{color:#e4a8c6}.login-card p{font-size:14px;color:#a79dab;line-height:2;margin-bottom:35px}.login-card form{display:grid;gap:12px}
.login-card label,.field label{color:#e6dce9;font-size:12px;font-weight:600;display:block}.login-card input,.field input,.field select,.field textarea{width:100%;border:1px solid #45404f;background:#14131d;color:#f8eff6;outline:none;border-radius:4px;padding:14px 15px;transition:border-color .2s;font-size:13px}.login-card input:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:#e7b4d7}.login-card input{margin-bottom:14px}.login-card form button{margin-top:10px}.back-site{font-size:12px;color:#aa8eaa;margin-top:42px}
.solid-button,.outline-button{border:0;display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 23px;background:var(--gradient);color:#211423;font-size:13px;font-weight:680;border-radius:4px;transition:transform .15s,opacity .15s}.solid-button:hover,.outline-button:hover{transform:translateY(-2px)}.solid-button:disabled{opacity:.45;cursor:wait}.solid-button.compact{justify-content:center;padding:13px 21px}
.outline-button{border:1px solid #9b859e;color:#eed8eb;background:transparent}
.form-error{font-size:12px;color:#ffacb3;line-height:1.5;min-height:16px;margin-top:10px}
.app{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;width:255px;background:#110f19;border-right:1px solid #302939;padding:24px 18px;display:flex;flex-direction:column;z-index:10}.side-brand{padding:4px 5px 44px;font-size:17px}.side-brand img{width:50px;height:50px}.side-caption{font-size:10px;color:#7c7184;letter-spacing:2px;margin:7px 13px 14px}
.side-menu{display:grid;gap:7px}.menu-entry{border:0;text-align:left;display:flex;align-items:center;gap:16px;padding:15px 18px;border-radius:5px;background:none;color:#ab9db3;font-size:13px}.menu-entry span{width:18px;font-size:19px;text-align:center}.menu-entry.active,.menu-entry:hover{background:#322335;color:#ffdfed}
.sidebar-bottom{margin-top:auto;display:flex;justify-content:space-between;gap:10px;padding:20px 9px 4px;border-top:1px solid var(--line);font-size:11px;color:#a391ab}.sidebar-bottom button{background:none;border:0;color:#bf9fb9}
.admin-main{width:calc(100% - 255px);margin-left:255px}.admin-top{height:110px;background:#100e16;border-bottom:1px solid #282330;padding:0 46px;display:flex;justify-content:space-between;align-items:center}.admin-top span{font-size:9px;letter-spacing:2px;color:#a888a8}.admin-top h2{font-size:23px;margin:9px 0 0;font-weight:630}.admin-user{font-size:12px;color:#c4b6c5;display:flex;align-items:center;gap:11px}.user-dot{width:35px;height:35px;display:grid;place-items:center;background:#35223d;border-radius:50%;font-size:16px!important;color:#f0c6db!important}
.admin-content{padding:38px 46px 95px;max-width:1500px;margin:auto}.intro-panel{border:1px solid #67435e;min-height:275px;background:radial-gradient(ellipse at right,#66395b80,transparent 60%),linear-gradient(110deg,#211627,#150f1e);padding:38px;display:flex;justify-content:space-between;gap:30px;overflow:hidden}.intro-panel .eyebrow{font-size:10px;color:#dfb1ce;letter-spacing:2px}.intro-panel h1{font-size:35px;line-height:1.47;letter-spacing:-1px;margin:14px 0}.intro-panel p{font-size:12px;color:#b7a3b5;line-height:1.9;margin-bottom:22px}.intro-panel img{width:300px;object-fit:contain;mix-blend-mode:screen;margin:-50px -15px -75px auto}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0}.stats-grid>div{background:#15121e;border:1px solid #31283b;display:flex;flex-direction:column;padding:25px 29px}.stats-grid span{font-size:12px;color:#bdaebf}.stats-grid strong{font-size:44px;font-weight:660;margin:12px 0;background:var(--gradient);background-clip:text;-webkit-background-clip:text;color:transparent}.stats-grid small{font-size:11px;color:#7f7383}.notice{padding:24px 28px;border:1px solid #3b3044;background:#15121b}.notice strong{font-size:14px}.notice p{color:#a99aad;line-height:1.9;font-size:12px;margin:10px 0 0}
.view-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.view-heading h1{font-size:27px;font-weight:650;margin:0 0 9px}.view-heading p{color:#9c8e9e;font-size:13px;margin:0}.plain-back{border:0;background:none;color:#c0a5c0;padding:0;margin-bottom:19px;font-size:12px}
.table-wrap{background:#15121c;border:1px solid #332c3a;overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}th{font-size:11px;font-weight:550;color:#978b9b;padding:22px 16px;border-bottom:1px solid #322b3b}th:first-child,td:first-child{padding-left:25px}td{padding:20px 16px;border-bottom:1px solid #28212f;color:#bfb3c0;font-size:12px}tr:last-child td{border-bottom:0}.drama-cell{display:flex;align-items:center;gap:14px;max-width:330px}.drama-thumb{width:47px;height:67px;object-fit:cover;background:linear-gradient(135deg,#583058,#17111b);border:1px solid #ffffff25;flex-shrink:0}.drama-cell strong{display:block;color:#f1e7ed;font-weight:550;line-height:1.55;white-space:normal;max-width:245px}.drama-cell small{display:block;color:#7d7181;margin-top:6px}.status{font-size:11px;border-radius:20px;padding:5px 10px;border:1px solid #585060}.status.live{color:#9edcc0;border-color:#4a8870;background:#2147384d}.status.draft{color:#baabbd}.table-btn{border:1px solid #53445b;background:transparent;color:#ead4e7;font-size:12px;padding:7px 11px;margin-right:6px}.table-btn.danger{color:#eb9cab;border-color:#68414d}.no-items{padding:65px 20px;text-align:center;color:#a091a4;font-size:13px}
.panel{background:#17131d;border:1px solid #352e3b;padding:28px;border-radius:5px;margin-bottom:18px}.panel-title{color:#f4e7f3;font-weight:650;font-size:15px;padding-bottom:24px;border-bottom:1px solid #342e3b;margin-bottom:23px}.panel-title em,.field label em{font-style:normal;color:#ffafbd}
.editor-layout{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(250px,1fr);gap:22px;align-items:start}.editor-primary,.editor-aside{min-width:0}.field{margin-bottom:23px}.field label{margin-bottom:11px}.field input,.field textarea,.field select{background:#110f18}.field textarea{resize:vertical;line-height:1.7;min-height:80px}.field small{display:block;font-size:11px;line-height:1.7;color:#8d7f91;margin-top:8px}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field:last-child{margin-bottom:0}.upload-box{aspect-ratio:3/3.6;border:1.5px dashed #6a5368;background:linear-gradient(135deg,#24182c,#12101a);display:flex;align-items:center;justify-content:center;cursor:pointer;overflow:hidden;max-height:330px}.upload-box:hover{border-color:#efbddc}.upload-box>img{width:100%;height:100%;object-fit:contain}.upload-placeholder{display:flex;flex-direction:column;align-items:center;gap:13px;text-align:center;padding:15px}.upload-placeholder b{font-size:47px;font-weight:300;color:#d8a2cd}.upload-placeholder strong{font-size:13px;font-weight:550}.upload-placeholder small{color:#a38fa5;font-size:10px;line-height:1.4}.upload-status{font-size:11px;color:#ac9caf;margin-top:12px;min-height:15px}
.switch-line{display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer}.switch-line strong,.switch-line small{display:block}.switch-line strong{font-size:13px;font-weight:600}.switch-line small{font-size:10px;color:#8f8395;margin-top:7px;line-height:1.5}.switch-line input{position:absolute;opacity:0}.toggle{height:24px;width:43px;flex-shrink:0;background:#514b5a;border-radius:20px;position:relative;transition:.2s}.toggle:after{content:"";position:absolute;top:3px;left:3px;height:18px;width:18px;border-radius:50%;background:#e1dae4;transition:.2s}.switch-line input:checked+.toggle{background:#c78baa}.switch-line input:checked+.toggle:after{transform:translateX(19px);background:#fff}.editor-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.editor-actions button{justify-content:center;padding:15px 9px}
.settings-panel{max-width:800px}.settings-hint{color:#948496;font-size:12px;line-height:1.9;margin:5px 0 23px}.toast{position:fixed;right:24px;bottom:24px;background:#e9bad8;color:#1b111c;padding:16px 24px;font-size:13px;border-radius:5px;box-shadow:0 20px 55px #0007;opacity:0;transform:translateY(15px);transition:.2s;pointer-events:none;z-index:99}.toast.show{opacity:1;transform:none}
@media(max-width:1050px){.sidebar{width:210px}.admin-main{margin-left:210px;width:calc(100% - 210px)}.admin-top{padding:0 24px}.admin-content{padding:28px 24px}.editor-layout{grid-template-columns:minmax(0,1fr) 270px}.panel{padding:21px}.intro-panel img{width:210px}}
@media(max-width:760px){.login-screen{grid-template-columns:1fr}.login-art{display:none}.login-card{padding:45px 24px;min-height:100vh}.login-kicker{margin-top:55px}.login-card h1{font-size:43px}.sidebar{position:sticky;top:0;width:100%;height:auto;padding:8px 12px;flex-direction:row;align-items:center;gap:10px;overflow:auto;white-space:nowrap}.side-brand{padding:0;font-size:14px}.side-brand img{width:37px;height:37px}.side-brand small,.side-caption,.sidebar-bottom{display:none}.side-menu{display:flex;gap:4px}.menu-entry{font-size:11px;padding:11px 10px;gap:5px}.menu-entry span{font-size:14px;width:16px}.app{display:block}.admin-main{margin:0;width:100%}.admin-top{height:85px;padding:0 17px}.admin-top h2{font-size:19px}.admin-top span{font-size:8px}.admin-user{font-size:11px}.admin-content{padding:20px 15px 70px}.intro-panel{padding:25px;min-height:240px}.intro-panel img{width:120px;margin-right:-70px;opacity:.55}.intro-panel h1{font-size:27px}.intro-panel p{max-width:260px}.stats-grid{gap:7px}.stats-grid>div{padding:17px 12px}.stats-grid strong{font-size:29px}.stats-grid span,.stats-grid small{font-size:10px}.view-heading{align-items:start}.view-heading h1{font-size:23px}.view-heading p{font-size:11px;line-height:1.7}.view-heading .solid-button{white-space:nowrap}.editor-layout,.field-row{grid-template-columns:1fr}.editor-aside{grid-row:1}.upload-box{max-width:300px;aspect-ratio:3/3.5}.panel{padding:18px}.contact-info{padding:0}}

/* V3 admin palette; functional markup and scripts remain unchanged. */
:root{color-scheme:light;--base:#f6f0f7;--surface:#fffaf7;--surface2:#eee1f1;--line:#d9c8df;--muted:#806e88;--text:#3d2a48;--accent:#935386;--gradient:linear-gradient(110deg,#f0d0ad,#ddb2d1 55%,#c5a0e8)}
.login-screen{background:linear-gradient(125deg,#f2e5f5,#fff9ef)}.login-art{background:radial-gradient(ellipse at center,#875271,#432b55 75%);border-color:#b696b4}.login-brand img,.side-brand img{mix-blend-mode:normal;background:#35213e;border-radius:10px}.login-card p,.login-brand small,.side-brand small{color:#8a7190}.login-kicker{color:#a36495}.login-card label,.field label{color:#63466e}.login-card input,.field input,.field select,.field textarea{background:#fffcfa;color:#3c2946;border-color:#d4bddb}.login-card input:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:#9c5994}.back-site{color:#996b94}.sidebar{background:#f2e7f3;border-color:#d9c7df}.menu-entry{color:#8e7495}.menu-entry.active,.menu-entry:hover{background:#e2cde8;color:#693e75}.sidebar-bottom{color:#987a9b}.sidebar-bottom button{color:#9b628d}.admin-top{background:#fff9f3;border-color:#e4d4e5}.admin-top span,.admin-user{color:#96749d}.intro-panel{background:radial-gradient(ellipse at right,#a7759670,transparent 60%),linear-gradient(110deg,#51335f,#6b3c65);color:#fff7ed;border-color:#9f7aa7}.intro-panel p{color:#e2c9dd}.stats-grid>div,.notice,.table-wrap,.panel{background:#fffbf8;border-color:#dfcde2}.stats-grid span,.notice p,.view-heading p,.settings-hint,.field small{color:#8a7191}.stats-grid strong{background:linear-gradient(100deg,#93559c,#bf789e);background-clip:text;-webkit-background-clip:text;color:transparent}.stats-grid small{color:#a18aa6}.panel-title{color:#63416c;border-color:#e2d2e5}.plain-back{color:#955e8c}th{color:#967b9c;border-color:#decde3}td{color:#83658b;border-color:#e6d9e9}.drama-cell strong{color:#65446e}.drama-cell small{color:#a18ba5}.status.draft{color:#967e9f;border-color:#c7b1d1}.status.live{color:#3b7964;background:#e4f1e8;border-color:#b4d2c2}.table-btn{color:#8d5485;border-color:#c7a8c6}.table-btn.danger{color:#b04c69;border-color:#d7b0c0}.outline-button{color:#8f608d;border-color:#c3a4c5}.upload-box{background:linear-gradient(135deg,#e9d9ed,#fff9f3);border-color:#bb93bd}.upload-placeholder small,.upload-status,.switch-line small{color:#97789e}.no-items{color:#967c9e}.login-card h1 span{color:#ac6194}

.video-panel{overflow:hidden}.optional-label{font-weight:400;font-size:11px;margin-left:8px;color:#9d81a2}.video-file-label{display:block;font-size:13px;color:#77537f;margin-bottom:12px}#dramaVideoFile{width:100%;font-size:12px;color:#8d6e94}#dramaVideoFile::file-selector-button{border:1px solid #bb96bc;background:#efdfef;color:#764a7e;padding:10px 12px;border-radius:4px;margin-right:8px;cursor:pointer}.video-help{font-size:11px;line-height:1.85;color:#967b9c;margin:14px 0}#videoProgress{display:block;width:100%;height:12px;accent-color:#9e659f;margin:16px 0}#videoUploadStatus{font-size:12px;line-height:1.8;color:#95678e;overflow-wrap:anywhere;margin-bottom:12px}#adminVideoPreview{width:100%;max-height:300px;background:#392341;border-radius:5px;margin:18px 0}#removeVideo,#cancelVideoUpload{margin-top:8px}
