body:has(#root .login){display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}
body:has(#root .login)>#root{display:flex;flex:1;flex-direction:column}
#root .login{flex:1;min-height:0}
#root .login-stage{min-width:0}
.filmash-login-legal-footer{display:none;justify-content:center;align-items:center;flex-wrap:wrap;gap:4px 24px;flex-shrink:0;padding:8px 20px max(22px,env(safe-area-inset-bottom));background:#22242a;text-align:center}
body:has(#root .login)>.filmash-login-legal-footer{display:flex}
.filmash-login-legal-footer a{display:inline-flex;align-items:center;min-height:28px;padding:2px 0;color:#a1a5ae;font:400 12px/1.5 Inter,system-ui,sans-serif;text-decoration:none;text-underline-offset:3px}
.filmash-login-legal-footer a:hover{color:#d8dbe1;text-decoration:underline}
.filmash-login-legal-footer a:focus-visible,.filmash-login-legal-host :is(button,a,summary):focus-visible{outline:2px solid #3585ff;outline-offset:4px;border-radius:3px}
.filmash-login-legal-host{position:fixed;inset:0;z-index:1080;pointer-events:none;color-scheme:light;--legal-bg:#fff;--legal-ink:#252c37;--legal-muted:#657080;--legal-border:#dfe3e8;--legal-hover:#f1f4f8;--legal-link:#315d92;--legal-nav-bg:#f8f9fb;font-family:Inter,system-ui,sans-serif}
.filmash-login-legal-host[data-bs-theme=dark]{color-scheme:dark;--legal-bg:#292c33;--legal-ink:#e5e7eb;--legal-muted:#a4adbb;--legal-border:#3e424a;--legal-hover:#353942;--legal-link:#9ebff2;--legal-nav-bg:#25282f}
.filmash-login-legal-host>.offcanvas-backdrop{pointer-events:auto}
.filmash-login-legal-panel.offcanvas{--bs-offcanvas-width:1100px;position:fixed;inset:20px 20px 20px auto;width:min(1100px,calc(100vw - 40px));height:auto;max-height:calc(100dvh - 40px);display:flex;flex-direction:column;pointer-events:auto;background:var(--legal-bg);color:var(--legal-ink);border:1px solid var(--legal-border);border-radius:18px;overflow:hidden;box-shadow:0 18px 70px #0004}
.filmash-login-legal-panel .offcanvas-header{display:flex;align-items:flex-start;gap:18px;flex-shrink:0;padding:22px 26px 18px;border-bottom:1px solid var(--legal-border)}
.filmash-legal-heading{min-width:0;flex:1}
.filmash-legal-heading h1{margin:0;color:var(--legal-ink);font:650 21px/1.35 Inter,system-ui,sans-serif}
.filmash-legal-heading h1:focus{outline:none}
.filmash-legal-edition{margin:6px 0 0;color:var(--legal-muted);font-size:12px}
.filmash-legal-close{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;padding:7px;border:0;border-radius:8px;background:transparent;color:var(--legal-muted);cursor:pointer}
.filmash-legal-close:hover{background:var(--legal-hover);color:var(--legal-ink)}
.filmash-legal-document-nav{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;flex-shrink:0;padding:11px 26px;border-bottom:1px solid var(--legal-border)}
.filmash-legal-document-nav button{padding:6px 10px;border:0;border-radius:6px;background:transparent;color:var(--legal-muted);font:500 13px/1.4 Inter,system-ui,sans-serif;cursor:pointer}
.filmash-legal-document-nav button:hover,.filmash-legal-document-nav button[aria-current=page]{color:var(--legal-ink);background:var(--legal-hover)}
.filmash-legal-document-nav a{color:var(--legal-link);font-size:12px;text-decoration:none;line-height:1.5}
.filmash-legal-document-nav a:hover{text-decoration:underline}
.filmash-legal-document-nav .filmash-legal-open-page{margin-left:auto}
.filmash-legal-reader{display:grid;grid-template-columns:220px minmax(0,1fr);flex:1;min-height:0}
.filmash-legal-contents{min-height:0;overflow:auto;padding:20px 14px;background:var(--legal-nav-bg);border-right:1px solid var(--legal-border)}
.filmash-legal-contents summary{margin:0 8px 12px;color:var(--legal-muted);font-size:12px;cursor:pointer;list-style-position:inside}
.filmash-legal-contents nav{display:flex;flex-direction:column;gap:4px}
.filmash-legal-contents button{display:block;width:100%;padding:9px 10px;border:0;border-radius:6px;background:transparent;color:var(--legal-muted);font:400 12px/1.5 Inter,system-ui,sans-serif;text-align:left;cursor:pointer}
.filmash-legal-contents button:hover,.filmash-legal-contents button:focus-visible{background:var(--legal-hover);color:var(--legal-ink)}
.filmash-legal-body{min-width:0;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:27px 34px 40px}
.filmash-legal-body article{max-width:760px;margin:0 auto}
.filmash-legal-body h2{margin:26px 0 12px;color:var(--legal-ink);font:650 17px/1.45 Inter,system-ui,sans-serif;scroll-margin-top:14px}
.filmash-legal-body section:first-child h2{margin-top:0}
.filmash-legal-body h2:focus{outline:0}
.filmash-legal-body p{margin:0 0 14px;color:var(--legal-ink);font-size:14px;line-height:1.75;white-space:pre-line;overflow-wrap:anywhere}
.filmash-legal-body a{color:var(--legal-link)}
@media(max-width:767px){
 #root .login-heading{flex-direction:column;align-items:flex-start;gap:8px}
 #root .login-heading>p{max-width:100%;margin-top:0!important;overflow-wrap:anywhere}
 .filmash-login-legal-footer{gap:2px 18px;padding:8px 18px max(18px,env(safe-area-inset-bottom))}
 .filmash-login-legal-panel.offcanvas{inset:0;width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0}
 .filmash-login-legal-panel .offcanvas-header{padding:18px 18px 14px;gap:10px}
 .filmash-legal-heading h1{font-size:18px}
 .filmash-legal-document-nav{padding:8px 14px;gap:4px 8px}
 .filmash-legal-document-nav button{font-size:12px;padding:6px 8px}
 .filmash-legal-document-nav .filmash-legal-open-page{margin-left:0}
 .filmash-legal-reader{display:flex;flex-direction:column}
 .filmash-legal-contents{flex-shrink:0;max-height:30vh;padding:10px 16px;border-right:0;border-bottom:1px solid var(--legal-border)}
 .filmash-legal-contents summary{margin:0;font-size:13px}
 .filmash-legal-contents[open] summary{margin-bottom:8px}
 .filmash-legal-body{flex:1;padding:20px 20px 30px}
 .filmash-legal-body p{font-size:14px;line-height:1.7}
}
@media(prefers-reduced-motion:reduce){.filmash-login-legal-panel.offcanvas,.filmash-login-legal-host>.offcanvas-backdrop{transition:none!important}}
