@font-face{font-family:'SH Sora';font-style:normal;font-weight:700;font-display:swap;src:url('../fonts/sora-latin-700-normal.woff2') format('woff2')}
@font-face{font-family:'SH Newsreader';font-style:normal;font-weight:200 800;font-display:swap;src:url('../fonts/newsreader-latin-standard-normal.woff2') format('woff2')}
@font-face{font-family:'SH Manrope';font-style:normal;font-weight:200 800;font-display:swap;src:url('../fonts/manrope-latin-wght-normal.woff2') format('woff2')}
/* Dodos Streaming shared design system. Loaded after each original page style.
   Existing page layout, form contracts and business scripts are retained. */
:root{--sh-font-heading:'SH Sora','SH Manrope',Arial,Helvetica,sans-serif;--sh-font-serif:var(--sh-font-heading);--sh-font-sans:'SH Manrope',Arial,Helvetica,sans-serif;--sh-bg:#f7f9fc;--sh-surface:#ffffff;--sh-surface-soft:#f0f4f8;--sh-text:#172033;--sh-muted:#63738a;--sh-line:#dce4ee;--sh-accent:#007c76;--sh-link:#006f69;--sh-accent-contrast:#fff;--sh-danger:#b63229;--sh-positive:#246a3e;--sh-positive-bg:#e5f4e5;--sh-shadow:0 6px 22px rgba(28,43,33,.045);--sh-raised:#ffffff;--sh-line-strong:#88958b;--sh-danger-bg:#fbeae6;--sh-warning:#8b5c16;--sh-warning-bg:#fff4dc;--sh-overlay:rgba(13,22,17,.52);--sh-shadow-raised:0 12px 36px rgba(28,43,33,.13);--sh-ease:cubic-bezier(.23,1,.32,1);--sh-sidebar:264px;--sh-focus:#008d86;color-scheme:light}
:root[data-theme="dark"]{--sh-bg:#0f1720;--sh-surface:#18232e;--sh-surface-soft:#202e3b;--sh-raised:#202e3b;--sh-text:#f1f5fa;--sh-muted:#b4c0cf;--sh-line:#34465a;--sh-line-strong:#75899e;--sh-accent:#0f766e;--sh-link:#63d6c5;--sh-accent-contrast:#fff;--sh-danger:#ffb2a8;--sh-danger-bg:#422925;--sh-warning:#f3cf8a;--sh-warning-bg:#3d3423;--sh-positive:#acf0b9;--sh-positive-bg:#223e2c;--sh-shadow:0 6px 22px rgba(0,0,0,.16);--sh-shadow-raised:0 16px 48px rgba(0,0,0,.34);--sh-overlay:rgba(4,10,6,.68);--sh-focus:#a9e4d1;color-scheme:dark}
html{background:var(--sh-bg);scroll-padding-top:24px}
body{background:var(--sh-bg)!important;color:var(--sh-text);font-family:var(--sh-font-sans)!important;line-height:1.5}
button,input,select,textarea{font:inherit}
button,a,input,select,textarea{touch-action:manipulation}
:focus-visible{outline:3px solid var(--sh-focus)!important;outline-offset:3px!important}
[hidden]{display:none!important}
body .main-content{min-width:0;max-width:100%;margin-left:var(--sh-sidebar);padding:28px 32px 44px!important;animation:none}
body .header,body .admin-topbar{background:transparent;box-shadow:none;border:0;padding:0;margin-bottom:28px}
body .header h1,body .admin-heading h1,body .page-header h1{font-family:var(--sh-font-serif)!important;font-weight:700!important;letter-spacing:-.045em;color:var(--sh-text)!important;line-height:1.12;font-size:clamp(2rem,3.3vw,3.4rem)}
body .header-subtitle,body .admin-heading p{color:var(--sh-muted)!important}
body .sidebar{width:var(--sh-sidebar)!important;background:var(--sh-bg)!important;color:var(--sh-text);border-right:1px solid var(--sh-line);box-shadow:none;padding:22px 14px!important;height:100dvh;z-index:1100;overflow-y:auto;transform:translateX(0);inset:0 auto 0 0}
body .sidebar-header{padding:10px 8px 25px;margin:0 0 15px;border-bottom:1px solid var(--sh-line);text-align:left}
.sh-brand{display:flex;align-items:center;gap:10px;color:var(--sh-text)!important;text-decoration:none;font-size:21px;font-weight:700;letter-spacing:-1px;white-space:nowrap}
.sh-brand-mark{display:inline-grid;place-items:center;color:#de412a;font-family:var(--sh-font-sans);font-size:35px;font-weight:800;letter-spacing:-4px;width:37px;line-height:1}
.sh-brand small{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--sh-muted)}
body .sidebar-nav{padding:0;display:flex;flex-direction:column;gap:4px}
body .sidebar .nav-item{display:flex;align-items:center;gap:12px;padding:12px 13px;color:var(--sh-muted)!important;background:transparent;border:0!important;border-radius:7px;font-family:var(--sh-font-sans);font-size:14px;font-weight:400;min-height:46px;text-decoration:none}
body .sidebar .nav-item svg{width:20px;height:20px;flex-shrink:0;margin:0;stroke-width:1.6}
body .sidebar .nav-item:hover,body .sidebar .nav-item.active{background:color-mix(in srgb,var(--sh-accent) 12%,transparent)!important;color:var(--sh-link)!important}
:root[data-theme="dark"] body .sidebar .nav-item:hover,:root[data-theme="dark"] body .sidebar .nav-item.active{color:var(--sh-link)!important}
body .sidebar .nav-item.active{font-weight:700}
body .sidebar .nav-section-title{border-top:1px solid var(--sh-line);padding:20px 13px 7px;margin-top:12px;color:var(--sh-muted);font-size:11px;letter-spacing:.14em}
body .sidebar-close{display:none;color:var(--sh-text)!important;background:var(--sh-surface-soft);border:1px solid var(--sh-line);border-radius:7px;width:38px;height:38px;top:12px;right:10px;z-index:2}
.sh-utility-bar{display:flex;align-items:center;justify-content:flex-end;gap:10px;margin:0 0 25px;min-height:40px;position:relative;z-index:30}
.sh-mobile-brand{display:none}
.sh-utility-button{display:inline-flex;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:8px 12px;background:var(--sh-surface)!important;color:var(--sh-text)!important;border:1px solid var(--sh-line)!important;border-radius:12px;cursor:pointer;box-shadow:none;font-size:13px;line-height:1.1}
.sh-utility-button svg{width:18px;height:18px;stroke:currentColor;fill:none;stroke-width:1.7}
.sh-theme-label{min-width:42px}
.sh-activity-panel{position:absolute;right:0;top:49px;width:min(360px,calc(100vw - 32px));padding:20px;background:var(--sh-raised);border:1px solid var(--sh-line-strong);border-radius:12px;box-shadow:var(--sh-shadow-raised);transform-origin:top right;color:var(--sh-text);max-height:70vh;overflow:auto}
.sh-activity-panel h2{font-family:var(--sh-font-serif);font-size:24px;margin:0 0 5px;color:var(--sh-text)}
.sh-activity-panel p{color:var(--sh-muted);font-size:13px;margin:4px 0 15px}
.sh-activity-panel a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 0;color:var(--sh-text);border-top:1px solid var(--sh-line);text-decoration:none;font-size:14px}
.sh-activity-panel strong{font-variant-numeric:tabular-nums;color:var(--sh-link)}
.sh-activity-announcement{padding:12px;background:var(--sh-surface-soft);border-radius:6px;white-space:pre-wrap;font-size:14px;overflow-wrap:anywhere}
.sh-skip-link{position:fixed;top:-100px;left:12px;z-index:3000;background:var(--sh-surface);color:var(--sh-text);padding:12px;border:2px solid var(--sh-accent)}
.sh-skip-link:focus{top:10px}
body .sidebar-open{display:none;position:static!important;width:40px;height:40px;min-width:40px;margin-right:auto;background:var(--sh-surface)!important;border:1px solid var(--sh-line);box-shadow:none;border-radius:8px;transform:none}
body .sidebar-open .bar{background:var(--sh-text)}
body .menu-toggle{display:none!important}
body .sidebar-backdrop{opacity:0;pointer-events:none;position:fixed;inset:0;z-index:1050;background:var(--sh-overlay)}
body .sidebar-backdrop.show{opacity:1;pointer-events:auto}
body .btn-primary,body .btn-success,body .buy-button{background:var(--sh-accent)!important;border-color:var(--sh-accent)!important;color:var(--sh-accent-contrast)!important;box-shadow:none}
body input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="submit"]),body select,body textarea{background:var(--sh-surface)!important;color:var(--sh-text)!important;border-color:var(--sh-line)!important;max-width:100%}
body input::placeholder,body textarea::placeholder{color:var(--sh-muted);opacity:1}
body input[type="checkbox"],body input[type="radio"]{accent-color:var(--sh-accent)}
body button:disabled,body input:disabled{cursor:not-allowed;opacity:.6}
body .modal-content{background:var(--sh-surface)!important;color:var(--sh-text)!important;border:1px solid var(--sh-line);max-height:90dvh;overflow:auto}
body .modal-header,body .modal-footer{background:var(--sh-surface-soft)!important;border-color:var(--sh-line)!important;color:var(--sh-text)}
body .modal-header h2,body .modal-header h3,body .modal-content label{color:var(--sh-text)!important}
body .modal{z-index:1500}
body .sh-scroll-table{overflow:auto;max-width:100%;overscroll-behavior-x:contain}
@media(max-width:1100px){:root{--sh-sidebar:242px}body .main-content{padding:24px!important}.sh-brand{font-size:19px}}
@media(max-width:900px){body .main-content{margin-left:0!important;padding:16px 20px 32px!important}body .sidebar{width:min(86vw,300px)!important;transform:translateX(-105%);visibility:hidden;transition:transform .2s var(--sh-ease),visibility .2s}body .sidebar.open{transform:translateX(0);visibility:visible}body .sidebar-close{display:block}body .sidebar-header{padding-top:45px}body .sidebar-open{display:inline-flex!important;opacity:1!important;pointer-events:auto!important}.sh-utility-bar{justify-content:flex-start;margin-bottom:26px;gap:8px}.sh-mobile-brand{display:flex;margin-right:auto;font-size:19px}.sh-utility-bar .sidebar-open{margin-right:0}.sh-mobile-brand .sh-brand-mark{font-size:29px;width:29px}.sh-theme-label,.sh-activity-label{display:none}.sh-utility-button{width:40px;height:40px;padding:8px}.sh-utility-bar .sh-brand{gap:6px}.sh-has-sidebar.no-scroll{overflow:hidden}body .header{flex-wrap:wrap}body .header h1,body .admin-heading h1{font-size:clamp(2rem,7.5vw,3rem)}}
@media(max-width:380px){body .main-content{padding:14px 12px 28px!important}.sh-mobile-brand{font-size:16px}.sh-utility-bar{gap:5px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

/* Existing diagnostic/denial documents receive presentation only. */
body.sh-status{display:block!important;min-height:100vh;padding:28px!important}
body.sh-status .sh-utility-bar{max-width:1000px;margin:0 auto 24px}
body.sh-status :is(.fatal,.message-box){background:var(--sh-surface)!important;color:var(--sh-text)!important;border:1px solid var(--sh-line)!important;box-shadow:var(--sh-shadow);max-width:1000px;margin:0 auto;padding:24px;border-radius:12px}
body.sh-status :is(h1,h2){color:var(--sh-text)!important;font-family:var(--sh-font-serif);font-weight:400}
body.sh-status p{color:var(--sh-muted)!important}
body.sh-status .fatal pre{background:var(--sh-surface-soft)!important;color:var(--sh-text)!important;white-space:pre-wrap;overflow:auto}

/* Quiet interaction polish: no repeated entrance motion on operational content. */
::selection{background:var(--sh-accent);color:var(--sh-accent-contrast)}
html{scrollbar-color:var(--sh-line-strong) var(--sh-bg)}
body .sidebar .nav-item{transition:background-color .16s var(--sh-ease),color .16s var(--sh-ease)}
body .sidebar-backdrop{transition:opacity .18s var(--sh-ease)}
.sh-utility-button{transition:transform .12s var(--sh-ease),border-color .16s var(--sh-ease),background-color .16s var(--sh-ease)}
.sh-activity-panel a{transition:color .16s var(--sh-ease)}
.sh-activity-panel a:focus-visible{border-radius:3px}
body input:autofill{box-shadow:inset 0 0 0 1000px var(--sh-surface)!important;color:var(--sh-text)!important;caret-color:var(--sh-text)}
body input:-webkit-autofill{-webkit-box-shadow:inset 0 0 0 1000px var(--sh-surface)!important;-webkit-text-fill-color:var(--sh-text)!important;caret-color:var(--sh-text)}
@media(hover:hover) and (pointer:fine){
  .sh-utility-button:hover{border-color:var(--sh-line-strong)!important}
  .sh-activity-panel a:hover{color:var(--sh-link)}
}
@media(prefers-reduced-motion:no-preference){
  html:not([data-sh-input="keyboard"]) .sh-utility-button:active:not(:disabled){transform:scale(.96)}
  html:not([data-sh-input="keyboard"]) .sh-activity-panel{opacity:1;transform:none;transition:opacity .18s var(--sh-ease),transform .18s var(--sh-ease)}
  @starting-style{html:not([data-sh-input="keyboard"]) .sh-activity-panel:not([hidden]){opacity:0;transform:translateY(-4px) scale(.985)}}
}
/* Keyboard navigation remains immediate, including dialogs and the mobile menu. */
html[data-sh-input="keyboard"] body :is(.sidebar,.sidebar-backdrop,.nav-item,.sh-utility-button,.sh-activity-panel,.modal-content,.modal-card,.rr-modal-card,.custom-modal-card,.theme-toggle,.login-button,.btn,.btn-primary,.buy-button,.rr-submit,.rr-modal-primary,.form-panel.shake){transition:none!important;animation:none!important}
html[data-sh-input="keyboard"] body :is(a,button,input,select,textarea){transition:none!important}
html[data-sh-input="keyboard"] body :is(.theme-toggle,.login-button) svg{transition:none!important}

/* Original mobile menu: stays available while the page scrolls. */
@media(max-width:900px){
  body.sh-has-sidebar .sidebar-open {
    position:fixed!important;top:max(12px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));right:auto;bottom:auto;
    width:48px;height:48px;min-width:48px;padding:0;margin:0;border:1px solid rgba(255,255,255,.08);
    border-radius:14px;background:#0f172a!important;box-shadow:0 9px 24px rgba(2,6,23,.24);z-index:1200;
    display:inline-flex!important;flex-direction:column;align-items:center;justify-content:center;gap:5px;
  }
  body.sh-has-sidebar .sidebar-open .bar {width:21px;height:2px;background:#fff;border-radius:2px}
  body.sh-has-sidebar.sidebar-active .sidebar-open {opacity:0!important;pointer-events:none!important}
  body.sh-has-sidebar .sh-utility-bar {padding-left:54px;min-height:48px}
}

/* Approved identity and shared shell, 75. */
.sh-brand-mark{display:inline-flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:48px;letter-spacing:0}
.sh-brand-mark img{display:block;width:100%;height:100%;object-fit:contain}
.sh-brand-name{display:block;white-space:normal;line-height:1.15;font-size:16px;font-weight:800;letter-spacing:.015em;text-transform:uppercase}
body .sidebar{background:linear-gradient(160deg,#101924,#111e2b)!important;color:#d5dfeb;border-color:#2b3b4c}
body .sidebar .sh-brand{color:#fff!important;gap:12px;letter-spacing:0}
body .sidebar .nav-item{color:#c4cfdd!important;border-radius:10px}
body .sidebar .nav-item.active,body .sidebar .nav-item:hover{background:#153541!important;color:#65dadd!important}
body .sidebar .nav-section-title{color:#9aaabe;border-color:#2b3b4c}
body .sidebar-header{border-color:#2b3b4c}
body .sidebar-close{color:#edf4fb!important;background:#203244;border-color:#3b5066}
.sh-activity-panel h2,body.sh-status :is(h1,h2){font-family:var(--sh-font-heading);font-weight:700}
.sh-utility-button{border-radius:12px}
@media(max-width:900px){.sh-mobile-brand .sh-brand-mark{flex-basis:27px;width:27px;height:33px}.sh-mobile-brand .sh-brand-name{font-size:12px;line-height:1.1}}
