:root{--dm-bg:#08090a;--dm-surface:#15171a;--dm-text:#e7e4df;--dm-muted:#a4a5a7;--dm-accent:#cbbb96;--dm-border:#ffffff26;--dm-danger:#e5a499;--dm-fast:180ms;--dm-cinema:650ms}
body[data-screen]:not([data-screen=landing]){margin:0;background:var(--dm-bg);color:var(--dm-text);font:16px/1.6 Barlow,Arial,sans-serif;min-height:100dvh}
[data-screen] *{box-sizing:border-box} [data-screen] [hidden]{display:none!important}
.scene{position:fixed;inset:0;background:linear-gradient(90deg,#08090aed,#08090a66),url('domanthyr-hero-poster.png') center/cover;z-index:-1;opacity:.55}
.client-top{height:110px;padding:28px 5vw;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--dm-border)}.client-top a{display:flex;flex-direction:column;align-items:center;color:inherit;text-decoration:none}.client-top img{width:205px;max-width:40vw}.client-top small{font-size:8px;letter-spacing:4px;margin-top:8px}.client-top>span{letter-spacing:3px;font-size:10px;color:var(--dm-muted)}
.auth-stage{min-height:calc(100dvh - 110px);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:60px 24px 100px}.auth-card{width:min(100%,540px);color:var(--dm-text);font-family:Barlow,Arial,sans-serif;text-align:left}.auth-card h1,.boot-panel h1,.menu-stage h1{font-size:clamp(36px,4.5vw,72px);line-height:1.08;letter-spacing:-2px;font-weight:400;margin:25px 0}.auth-card p,.auth-card small,.boot-panel p,.menu-stage p{color:var(--dm-muted);line-height:1.7}.auth-card small{display:block;font-size:11px;margin-top:20px}.overline{letter-spacing:3px;color:var(--dm-accent);font-size:10px}.auth-card form{margin-top:30px}.gold-button{display:flex;align-items:center;justify-content:center;gap:30px;background:var(--dm-accent);color:#141517;text-decoration:none;padding:18px 24px;min-height:54px;cursor:pointer;border:1px solid transparent;font:600 12px/1.4 Barlow,Arial,sans-serif;letter-spacing:1px;transition:transform var(--dm-fast),background var(--dm-fast)}.gold-button:hover:not(:disabled){transform:translateY(-2px);background:#dfd3b8}.gold-button:disabled,.text-button:disabled{opacity:.45;cursor:not-allowed}.auth-card .gold-button{width:100%}.text-button{display:inline-block;color:var(--dm-text);background:transparent;border:0;border-bottom:1px solid var(--dm-border);padding:15px 0;margin:10px 0;font:inherit;font-size:13px;cursor:pointer;text-decoration:none}.auth-card .text-button{width:100%;text-align:center}.back-link{margin-top:30px;color:var(--dm-muted);font-size:12px;text-decoration:none}.notice{padding:14px;border-left:2px solid var(--dm-accent);background:#ffffff08;font-size:13px}.sound-controls{position:fixed;bottom:16px;right:20px;z-index:10001;display:flex;gap:10px;align-items:center;padding:9px 12px;background:#08090aee;border:1px solid var(--dm-border);color:var(--dm-text);font:11px Barlow,Arial,sans-serif}.sound-controls button{background:transparent;border:0;color:var(--dm-text);font:inherit;cursor:pointer}.sound-controls input{width:80px;accent-color:var(--dm-accent)}.sound-controls label{font-size:10px;color:var(--dm-muted)}
.auth-cinematic{position:fixed;inset:0;width:100vw;height:100dvh;z-index:2147483647;isolation:isolate;overflow:hidden;background:#000;color:#eee;transform:translateZ(0)}.auth-cinematic[hidden],.auth-cinematic-fallback[hidden],.auth-cinematic video[hidden]{display:none}.auth-cinematic video{position:absolute;inset:0;z-index:1;width:100%;height:100%;object-fit:contain;background:#000}.auth-cinematic-fallback{position:absolute;inset:0;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle,#202b2c,#020405 70%)}.auth-cinematic-fallback span{font:clamp(38px,8vw,110px) Georgia,serif;letter-spacing:.12em}.auth-cinematic-fallback small{margin-top:18px;letter-spacing:.55em;color:#b9aa7e}.auth-cinematic>p{position:absolute;z-index:2;left:30px;bottom:25px;letter-spacing:.25em;font-size:10px;color:#aaa}.auth-cinematic>button{position:absolute;z-index:3;right:30px;bottom:20px;color:#d8c798}.auth-cinematic-open{overflow:hidden}.auth-cinematic-open>.sound-controls{visibility:hidden}
.play-cta{min-width:270px;min-height:76px;font-size:25px!important;letter-spacing:5px!important}
#authDialog{width:min(700px,94vw);max-height:90dvh;overflow:auto;padding:65px;border:1px solid var(--dm-border);background:#101214;color:var(--dm-text);animation:dm-enter var(--dm-cinema) both}#authDialog::backdrop{background:#08090aeb}#authDialog .dialog-close{position:absolute;right:20px;top:15px;color:#ddd;background:none;border:0;font-size:20px;cursor:pointer}
@keyframes dm-enter{from{opacity:0;transform:translateY(22px) scale(.98)}to{opacity:1;transform:none}}
.boot-panel{min-height:calc(100dvh - 110px);padding:60px 24px 100px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.boot-panel p{max-width:560px;font-size:13px}.boot-logo{width:min(600px,80vw);margin:40px}.boot-panel label{font-size:13px;color:var(--dm-muted)}#logoStage{position:fixed;inset:0;z-index:200;background:#000;padding:0}#studioVideo{width:100%;height:100dvh;object-fit:contain}.skip-video{position:absolute;right:35px;bottom:65px;z-index:2}#resumeVideo{position:absolute;bottom:120px}.warning-panel{min-height:100dvh;padding:5vh 8vw 90px;background:#050505;position:relative;z-index:201;color:#b5b5b5}.warning-panel h1{text-align:center;font-weight:400;font-size:clamp(20px,2.2vw,35px);line-height:1.4}.warning-icon{display:block;text-align:center;font-size:28px;color:#ddd}.rule{width:30%;height:1px;background:#333;margin:25px auto 40px}.warning-panel h2{font-size:18px;margin-top:32px}.warning-panel p,.warning-panel li{font-size:clamp(14px,1.2vw,20px);line-height:1.55}.warning-panel .gold-button{margin:30px auto 0}progress{width:min(560px,80vw);height:4px;accent-color:var(--dm-accent)}.menu-stage{padding:8vh 7vw 100px;display:grid;grid-template-columns:1fr 340px;gap:8vw;min-height:calc(100dvh - 110px);align-items:center;animation:dm-enter var(--dm-cinema) both}.menu-actions{padding:30px;border:1px solid var(--dm-border);background:#08090ac7}.menu-caption{font-size:10px;letter-spacing:2px;color:var(--dm-accent)}.menu-actions .text-button{display:block}.menu-actions small{color:var(--dm-muted);font-size:10px}.world-card{border-left:2px solid var(--dm-accent);padding:12px 20px;margin:15px 0;background:#ffffff06}.world-card strong{display:block;font-weight:400}.world-card small{color:var(--dm-muted)}
.loading-splash{position:fixed;inset:0;z-index:205;overflow:hidden;background:#030506;color:#fff}.loading-splash-art{position:absolute;inset:0;background:url('domanthyr-loading-splash.png') center/cover no-repeat;animation:loading-splash-in 1.4s cubic-bezier(.16,1,.3,1) both}.loading-splash:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#03050755 0,transparent 28%,transparent 60%,#020304d9 100%),linear-gradient(90deg,#03050788 0,transparent 32%);pointer-events:none}.loading-wordmark{position:absolute;z-index:2;left:clamp(24px,4vw,72px);top:clamp(24px,5vh,60px);width:clamp(180px,17vw,330px);height:auto;filter:drop-shadow(0 8px 18px #000)}.loading-footer{position:absolute;z-index:3;left:clamp(24px,4vw,72px);right:clamp(24px,4vw,72px);bottom:clamp(28px,5vh,64px)}.loading-footer>p{margin:0 0 12px;font-size:9px;letter-spacing:.24em;text-transform:uppercase;text-shadow:0 2px 8px #000}.loading-footer progress{display:block;width:100%;height:3px;border:0;border-radius:0;background:#ffffff35;overflow:hidden;accent-color:#f2eee5}.loading-footer progress::-webkit-progress-bar{background:#ffffff35}.loading-footer progress::-webkit-progress-value{background:#f4f1e9;box-shadow:0 0 14px #fff}.loading-footer progress::-moz-progress-bar{background:#f4f1e9;box-shadow:0 0 14px #fff}.loading-build{display:flex;justify-content:space-between;margin-top:10px;color:#fff;font-size:8px;letter-spacing:.2em;text-shadow:0 2px 8px #000}.loading-footer .gold-button{margin-top:18px;min-height:42px;padding:9px 18px}.loading-splash:not([hidden]) .loading-wordmark{animation:loading-mark-in 1s .15s cubic-bezier(.16,1,.3,1) both}.loading-splash:not([hidden]) .loading-footer{animation:loading-footer-in .8s .3s ease both}@keyframes loading-splash-in{from{opacity:0;transform:scale(1.06);filter:blur(10px)}to{opacity:1;transform:scale(1);filter:blur(0)}}@keyframes loading-mark-in{from{opacity:0;transform:translateX(-30px);filter:blur(8px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes loading-footer-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@media(max-width:620px){.loading-build{gap:12px;line-height:1.5}.loading-build span:last-child{text-align:right}}
.admin-main{max-width:1400px;margin:auto;padding:45px 4vw 100px}.admin-main h1{font-size:32px;font-weight:400}.admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:24px}.admin-panel{background:#101215e8;border:1px solid var(--dm-border);padding:25px;margin-bottom:24px}.admin-panel h2{font-size:20px;font-weight:400}.admin-panel form{margin-top:20px;display:grid;gap:10px}.admin-panel label{font-size:12px;color:var(--dm-muted)}.admin-panel input:not([type=checkbox]),.admin-panel select{display:block;width:100%;color:var(--dm-text);background:#08090a;border:1px solid var(--dm-border);padding:10px;font:inherit}.admin-panel table{width:100%;border-collapse:collapse;font-size:12px}.admin-panel td,.admin-panel th{text-align:left;border-bottom:1px solid var(--dm-border);padding:10px 4px}.admin-panel code{font-size:12px;color:var(--dm-accent)}.admin-modules{display:flex;flex-wrap:wrap;gap:15px;font-size:12px;color:var(--dm-muted);margin:20px 0}.admin-modules span{padding:8px;border:1px solid var(--dm-border)}
[data-screen] :focus-visible{outline:2px solid #f1dba5;outline-offset:5px}
@media(max-width:700px){.client-top{height:90px;padding:20px}.client-top>span{display:none}#authDialog{padding:55px 25px}.menu-stage{grid-template-columns:1fr;padding:40px 24px 100px;gap:30px}.sound-controls{right:8px;bottom:8px}.warning-panel{padding:35px 24px 100px}.warning-panel h1{text-align:left}.sound-controls label{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
body.dm-reduced *{animation:none!important;transition:none!important}

.world-card{display:block;color:var(--dm-text);text-decoration:none;transition:transform var(--dm-fast),background var(--dm-fast)}.world-card:hover{background:#cbbb9614;transform:translateX(5px)}
.fullscreen-gate{position:fixed;inset:0;z-index:2147483646;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;background:#030506e8;backdrop-filter:blur(12px);color:#d6c8a4}.fullscreen-gate span{font-size:9px;letter-spacing:.35em}.fullscreen-gate button{min-width:min(360px,84vw);padding:18px 24px;border:1px solid #d6c8a480;background:#d4c49e;color:#111;font:600 11px Barlow,Arial,sans-serif;letter-spacing:.16em;cursor:pointer}.fullscreen-gate button:disabled{opacity:.6}
