@import url('https://fonts.googleapis.com/css2?family=Alexandria:wght@300;400;500;600;700;800&display=swap');
:root{--bg:#040B1F;--panel:#091632;--panel2:#0D1D3D;--line:#29457F;--gold:#F2C45F;--gold2:#F8D37A;--violet:#7B52FF;--pink:#B54CFF;--text:#F8F5EF;--muted:#AAB4D0}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 80% 0,#7B52FF20,transparent 26%),linear-gradient(180deg,#040B1F,#020817);color:var(--text);font-family:'Alexandria','Segoe UI',Tahoma,sans-serif}.login{min-height:100vh;display:grid;place-items:center;padding:18px}.loginBox{width:min(430px,100%);background:linear-gradient(145deg,#0D1D3D,#07122B);border:1px solid #2E4B86;border-radius:20px;padding:24px;box-shadow:0 24px 70px #0008,0 0 30px #7658FF18}.shell{display:grid;grid-template-columns:245px 1fr;min-height:100vh}.side{background:#061027E8;border-left:1px solid #284376;padding:20px 14px;position:sticky;top:0;height:100vh;backdrop-filter:blur(16px)}.logo{font-size:19px;font-weight:800;background:linear-gradient(135deg,#FFF0A8,#F3C45F,#C98A28);-webkit-background-clip:text;background-clip:text;color:transparent;margin-bottom:22px}.nav a{display:block;text-decoration:none;color:#A9B5D2;padding:11px 12px;border-radius:11px;font-size:12px;margin-bottom:4px;transition:.2s}.nav a.active,.nav a:hover{background:linear-gradient(135deg,#172552,#101B3C);color:#F8D37A;border:1px solid #3B4F94}.sideFoot{position:absolute;bottom:20px;left:14px;right:14px}.main{padding:22px;width:100%;max-width:1280px}.topbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.topbar h1{font-size:24px;margin:0;background:linear-gradient(135deg,#FFF0A8,#F3C45F,#C98A28);-webkit-background-clip:text;background-clip:text;color:transparent}.actions{display:flex;gap:8px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border:0;border-radius:11px;padding:10px 13px;font-family:inherit;font-weight:700;font-size:11px;cursor:pointer}.gold{background:linear-gradient(135deg,#FFF0A8,#F2C45F,#D79A31);color:#10182A;box-shadow:0 8px 20px #D7A13B28}.dark{background:#0A1735;color:#fff;border:1px solid #35518D}.danger{background:#451824;color:#FFD6DF;border:1px solid #7B2A41}.card{background:linear-gradient(145deg,#0B1837,#07122B);border:1px solid #29457F;border-radius:18px;padding:17px;margin-bottom:14px;box-shadow:0 16px 40px #0003}.card h2{font-size:17px;margin:0 0 13px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.grid3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.field label{display:block;color:#9FAACE;font-size:10px;margin-bottom:6px}.field input,.field textarea,.field select{width:100%;background:#051027;color:#F8F5EF;border:1px solid #36538D;border-radius:11px;padding:11px;font-family:inherit;outline:none}.field input:focus,.field textarea:focus,.field select:focus{border-color:#7B52FF;box-shadow:0 0 0 3px #7B52FF16}.field textarea{min-height:110px;resize:vertical}.check{display:flex;gap:8px;align-items:center;color:#B6C0DB;font-size:11px}.preview{width:112px;height:112px;object-fit:cover;border-radius:50%;border:4px solid #F2C45F;box-shadow:0 0 20px #F2C45F2D}.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.stat{background:linear-gradient(145deg,#0D1B3B,#07122B);border:1px solid #2F4C86;border-radius:15px;padding:15px}.stat b{display:block;font-size:25px;background:linear-gradient(135deg,#FFF0A8,#F2C45F,#D79A31);-webkit-background-clip:text;background-clip:text;color:transparent}.stat span{font-size:10px;color:#9CA8C9}.tableWrap{overflow:auto}.table{width:100%;border-collapse:collapse;min-width:820px}.table th,.table td{padding:10px;border-bottom:1px solid #213A69;text-align:right;font-size:11px}.table th{color:#8D9ABB}.thumb{width:72px;height:50px;object-fit:cover;border-radius:9px;background:#0E1B39;border:1px solid #2B477D}.flash{padding:11px;border-radius:10px;margin-bottom:13px;font-size:11px}.success{background:#123E31;color:#D4FFE8;border:1px solid #24664F}.error{background:#451927;color:#FFDADA;border:1px solid #7B2A41}.notice{background:#111B3A;border:1px solid #3A3D7B;color:#B6BDD6;padding:11px;border-radius:11px;font-size:10px;line-height:1.8}.formActions{display:flex;gap:8px;margin-top:13px}.mini{padding:7px 9px}.muted{color:#7E89A9;font-size:10px}.loginBox h1{margin:0 0 5px;background:linear-gradient(135deg,#FFF0A8,#F2C45F,#D79A31);-webkit-background-clip:text;background-clip:text;color:transparent}.loginBox p{color:#9EA9C8;font-size:11px;line-height:1.8}
@media(max-width:850px){.shell{display:block}.side{height:auto;position:static;border-left:0;border-bottom:1px solid #29457F}.nav{display:flex;overflow:auto}.nav a{white-space:nowrap}.sideFoot{position:static;margin-top:10px}.main{padding:14px}.grid,.grid3{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.topbar{align-items:flex-start;flex-direction:column}}


/* FINAL PRODUCTION CLEANUP — admin forms */
.editableForm,.editableForm .field,.editableForm input,.editableForm textarea,.editableForm select{position:relative;z-index:2;pointer-events:auto}.editableForm input,.editableForm textarea{user-select:text;-webkit-user-select:text;caret-color:#F8D37A}.editableForm input:disabled{opacity:.48;cursor:not-allowed}
.field[hidden],.check[hidden],#youtubeSourceField[hidden],#uploadSourceField[hidden],.periodValidation[hidden],.specialRoleCard[hidden]{display:none!important}
.specialWorkNotice{border-color:#D7A13B55;background:linear-gradient(135deg,#FFF9E810,#6F52FF0B)}.specialRoleHelp{display:block;margin-top:6px;color:#D7A13B;font-weight:700}
.lockedRole{display:flex;align-items:center;gap:10px;min-height:66px;padding:10px 12px;border-radius:14px;background:#0A1732;border:1px solid rgba(215,161,59,.34)}.lockedRoleIcon{width:38px;height:38px;flex:0 0 38px;display:grid;place-items:center;border-radius:12px;background:rgba(215,161,59,.10);color:#F2C45F;border:1px solid rgba(215,161,59,.18)}.lockedRole>div{display:flex;flex-direction:column;gap:3px;min-width:0}.lockedRole b{color:#F2C45F;font-size:13px}.lockedRole small{color:#7F8DA8;font-size:9px;line-height:1.45}
.periodValidation,.formValidationSummary{grid-column:1/-1;padding:10px 12px;border-radius:12px;border:1px solid rgba(220,70,70,.35);background:rgba(220,70,70,.08);color:#FFD6D6;font-size:10px;font-weight:700;line-height:1.65}.formValidationSummary{margin-top:12px}.formValidationSummary[hidden]{display:none!important}
.promoSourceChoices{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.promoSourceChoices label{display:flex;align-items:center;gap:7px;min-height:42px;padding:9px 12px;border:1px solid #334E89;border-radius:12px;background:#08142E;color:#EEF3FF;cursor:pointer}.promoSourceChoices input{accent-color:#F2C45F}.promoThumbPreview{display:grid;gap:7px;justify-items:start;margin:12px 0}.promoThumbLarge{width:min(360px,100%)!important;height:auto!important;aspect-ratio:16/9;object-fit:cover;background:#050914;border:1px solid #314D84;border-radius:14px}.promoRowActions{display:flex;gap:5px;align-items:center;flex-wrap:wrap}.promoRowActions form{margin:0}

/* Live work preview */
.workPreviewPanel{margin-top:16px;padding-top:14px;border-top:1px solid #213A69}.workPreviewHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.workPreviewHeader>div{display:grid;gap:2px}.workPreviewHeader small{color:#7F8DAC;font-size:9px}.workPreviewHeader b{font-size:12px}.workPreviewHeader>span{padding:5px 8px;border-radius:999px;background:#F2C45F12;border:1px solid #F2C45F44;color:#F8D37A;font-size:7px;font-weight:800;letter-spacing:.8px}
.workPreviewCard{width:min(430px,100%);overflow:hidden;border-radius:18px;border:1px solid #2D4780;background:linear-gradient(145deg,#0B1837,#07122B);box-shadow:0 14px 28px #0003}.workPreviewMedia{position:relative;width:100%;aspect-ratio:4/3;overflow:hidden;background:#07122B}.workPreviewMedia #workPreviewImageBg{position:absolute;inset:-14px;width:calc(100% + 28px);height:calc(100% + 28px);object-fit:cover;filter:blur(16px) brightness(.56);transform:scale(1.04)}.workPreviewMedia #workPreviewImage{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:2}.workPreviewFallback{position:absolute;inset:0;display:grid;place-items:center;color:#6E7FA8;font-size:10px}.workPreviewBody{display:flex;flex-direction:column;gap:8px;padding:12px}.workPreviewBadges{display:flex;flex-wrap:wrap;gap:6px}.workPreviewBadges span{padding:5px 8px;border-radius:999px;font-size:7px;font-weight:800}.workPreviewBadges span:first-child{background:#211B2C;border:1px solid #E7B96F55;color:#FFD98E}.workPreviewBadges span:last-child{background:#101E3D;border:1px solid #5C78B755;color:#D9E5FF}.workPreviewBody h3{margin:0;font-size:14px;line-height:1.45;overflow-wrap:anywhere}.workPreviewMeta{display:flex;flex-wrap:wrap;gap:7px}.workPreviewMeta span{padding:5px 8px;border-radius:9px;background:#08152F;border:1px solid #294273;color:#9FADD0;font-size:7px}.workPreviewInstitution{display:grid;grid-template-columns:84px minmax(0,1fr);gap:12px;align-items:center;padding:14px}.workPreviewInstitutionLogo{width:84px;height:84px;border-radius:16px;background:#F7F8FB;display:grid;place-items:center;padding:9px;overflow:hidden}.workPreviewInstitutionLogo img{width:100%;height:100%;object-fit:contain}.workPreviewInstitutionLogo span{color:#314A7E;font-size:10px;font-weight:800}.workPreviewInstitution>div:last-child{min-width:0;display:flex;flex-direction:column;gap:7px}.workPreviewInstitution>div:last-child>span{align-self:flex-start;padding:5px 8px;border-radius:999px;background:#211B2C;border:1px solid #E7B96F55;color:#FFD98E;font-size:7px;font-weight:800}.workPreviewInstitution b{font-size:13px;line-height:1.4;overflow-wrap:anywhere}.workPreviewInstitution small{color:#AAB4D0}

/* Live promo preview */
.promoLivePreview{margin-top:16px;padding-top:14px;border-top:1px solid #213A69}.promoPreviewCard{width:min(520px,100%);overflow:hidden;border-radius:20px;border:1px solid #51458F;background:#07122B}.promoPreviewMedia{position:relative;aspect-ratio:16/9;background:#08152F;overflow:hidden}.promoPreviewMedia img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.promoPreviewMedia .previewPlay{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:54px;height:54px;border-radius:50%;display:grid;place-items:center;border:1px solid #F8D37A99;background:#040B1FCC;color:#F8D37A;font-size:18px}.promoPreviewBody{padding:13px;display:grid;gap:9px}.promoPreviewRoles{display:flex;flex-wrap:wrap;gap:6px}.promoPreviewRoles span{padding:5px 8px;border-radius:999px;background:#211B2C;border:1px solid #E7B96F55;color:#FFD98E;font-size:7px;font-weight:800}.promoPreviewBody h3{margin:0;font-size:16px;line-height:1.45;overflow-wrap:anywhere}.promoPreviewMeta{display:flex;gap:7px;flex-wrap:wrap}.promoPreviewMeta span{padding:6px 8px;border-radius:9px;background:#08152F;border:1px solid #294273;color:#AAB6D3;font-size:8px}

@media(max-width:850px){.field input,.field textarea,.field select{font-size:16px;min-height:46px}.field textarea{min-height:130px}.workPreviewCard,.promoPreviewCard{width:100%}.workPreviewHeader{align-items:flex-start}}


/* V44 — SHOWREEL / PROMO admin: simpler, cleaner, responsive */
#promoForm{border-color:#35538D;background:#08152F;box-shadow:none}
#promoForm>h2{display:flex;align-items:center;gap:8px;margin-bottom:10px;color:#F8D37A}
#promoForm>.notice{margin-bottom:14px!important;background:#0A1732;border-color:#2E477C;color:#AEB9D2}
.promoAdminGrid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
.promoAdminGrid .promoTitleField,.promoAdminGrid .promoWideField{grid-column:1/-1}
.promoAdminGrid .field{min-width:0}
.promoAdminGrid .field label{font-size:10px;color:#B7C3DF;font-weight:700}
.promoAdminGrid .field input,.promoAdminGrid .field select{background:#061128;border-color:#2F4B82}
.promoAdminGrid .field input:focus,.promoAdminGrid .field select:focus{border-color:#D7A13B;box-shadow:0 0 0 2px rgba(215,161,59,.10)}
.promoSourceChoices{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important}
.promoSourceChoices label{justify-content:flex-start;min-width:0;background:#07142E;border-color:#2F4B82}
.promoLivePreview{margin-top:14px!important}
.promoPreviewCard{box-shadow:none!important;border-color:#35538D!important;background:#07122B!important}
.promoPreviewBody{background:#07122B}
.promoPreviewMeta{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px!important}
.promoPreviewMeta span{min-width:0;white-space:normal;overflow-wrap:anywhere}
#promoForm .formActions{position:sticky;bottom:8px;z-index:8;padding:8px;border-radius:14px;background:rgba(5,16,39,.96);border:1px solid #29457F}
#promoForm .formActions .btn.gold{min-width:190px}
.promoRowActions{justify-content:flex-start}
.tableWrap{scrollbar-width:thin;scrollbar-color:#36538D #07122B}
@media(max-width:850px){
  .promoAdminGrid{grid-template-columns:1fr!important}
  .promoAdminGrid .promoTitleField,.promoAdminGrid .promoWideField{grid-column:auto}
  .promoSourceChoices{grid-template-columns:1fr!important}
  .promoPreviewMeta{grid-template-columns:1fr 1fr!important}
  #promoForm .formActions{position:static;background:transparent;border:0;padding:0}
  #promoForm .formActions .btn.gold{width:100%;min-width:0}
}

/* V49 — YouTube statistics setup */
.youtubeApiCard{border-color:rgba(242,196,95,.28)}
.youtubeApiHead{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:12px}
.youtubeApiHead h2{margin-bottom:4px}
.youtubeApiHead p{margin:0;max-width:760px;line-height:1.75}
.apiStatus{display:inline-flex;align-items:center;justify-content:center;min-height:30px;padding:6px 11px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap}
.apiStatus.ok{background:rgba(52,211,153,.10);border:1px solid rgba(52,211,153,.30);color:#A7F3D0}
.apiStatus.off{background:rgba(148,163,184,.08);border:1px solid rgba(148,163,184,.20);color:#CBD5E1}
.youtubeApiForm{display:grid;gap:10px}
.youtubeApiForm .field{max-width:760px}
.youtubeCachedViews{display:inline-flex;align-items:center;gap:6px;margin-top:7px;min-height:30px;padding:6px 9px;border-radius:10px;background:#08162E;border:1px solid rgba(242,196,95,.20);color:#F8D37A;font-weight:800}
.youtubeCachedViews small{color:#91A0BF;font-weight:500}
.youtubeApiCard code{direction:ltr;unicode-bidi:isolate;background:#08162E;padding:2px 6px;border-radius:6px}
@media(max-width:720px){.youtubeApiHead{flex-direction:column}.youtubeApiForm .field{max-width:none}.youtubeCachedViews{flex-wrap:wrap}}

/* Optional viewing choices for episodic works */
.episodeOptionField{grid-column:1/-1;padding:12px;border:1px solid #2E477C;border-radius:14px;background:#07142E}
.episodeOptionToggle{display:flex!important;align-items:flex-start;gap:10px!important;margin:0!important;cursor:pointer;color:#F8F5EF!important}
.episodeOptionToggle>input{width:18px!important;height:18px!important;min-height:0!important;margin:2px 0 0;flex:0 0 18px;accent-color:#F2C45F}
.episodeOptionToggle>span{display:grid;gap:3px;min-width:0}
.episodeOptionToggle b{font-size:11px;line-height:1.4;color:#F8D37A}
.episodeOptionToggle small{font-size:9px;line-height:1.6;color:#8997B8;font-weight:500}
.episodeOptionInput{margin-top:10px;padding-top:10px;border-top:1px solid #213A69}
.episodeOptionInput[hidden]{display:none!important}
@media(max-width:850px){.episodeOptionField{padding:11px}.episodeOptionToggle b{font-size:12px}.episodeOptionToggle small{font-size:10px}}
