/* V0.10.12 — restrained chrome, separate from the story/subtitle typography. */
body .top-hud{top:20px;left:24px;right:24px;gap:18px;flex-wrap:nowrap;align-items:center}
body .brand{gap:12px;flex-shrink:0}
body .brand-mark{font-size:27px!important;letter-spacing:5px}
body .brand-world{font-size:12px!important;letter-spacing:1px}
body .brand-sub{font-size:10px!important;display:block;opacity:.7}
body .brand-divider{display:block;height:28px}
body .top-hud .view-tools{width:auto;max-width:none;max-height:none;overflow:visible;gap:6px;flex-wrap:nowrap;justify-content:flex-end}
body .view-tools button{font-size:13px!important;min-height:36px;padding:8px 12px;border-radius:7px;background:#132128b8;border-color:#d9d8c329;backdrop-filter:blur(12px);white-space:nowrap;display:inline-flex;gap:7px;align-items:center;justify-content:center}
body .view-tools button span{font-size:inherit!important}
body .view-tools button:hover,body .view-tools button[aria-expanded=true]{background:#334248df;border-color:#d5c39899}
body .view-tools #autoDialogue[aria-pressed=true]{background:#354448c9;color:#e7d6ad;border-color:#d5c39855}
body .view-tools button.icon-button{width:36px;padding:8px;min-width:36px}
body .view-tools .exit-button{background:transparent;border-color:transparent;color:#e0e3df}
body .view-tools svg,body .home-tools svg,body .password-field svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}
body #resetView{display:inline-flex}
body .floating-panel{z-index:30;right:24px;top:72px;max-height:calc(100dvh - 92px);border:1px solid #dbd9bb30;background:#142127f0;box-shadow:0 24px 70px #0006;border-radius:14px;padding:22px;backdrop-filter:blur(22px);color:#e8e8de}
body .floating-panel *,body .account-overlay *,body .start-overlay *{font-size:14px!important}
body .floating-panel .panel-header{align-items:center;padding:0 0 18px}
body .floating-panel .overline,body .account-card>.overline{font-size:9px!important;letter-spacing:2px;color:#9caea9}
body .floating-panel .panel-header h2{font-size:20px!important;font-weight:500;letter-spacing:1px;margin:6px 0 0}
body .floating-panel .close-button,body .account-card>.close-button{font-size:24px!important;border-radius:6px;width:30px;height:30px;background:transparent;padding:0;color:#adbcb9}
body .floating-panel .close-button:hover,body .account-card>.close-button:hover{background:#ffffff0c;color:white}
body .scene-panel{width:460px;display:flex;flex-direction:column;overflow:hidden}
body .directory-tabs{display:grid;grid-template-columns:1fr 1fr;gap:7px;padding:18px 0;margin:0;border-bottom:1px solid #d4d7c41a;flex-shrink:0}
body .directory-tabs button{min-width:0;min-height:42px;font-size:13px!important;padding:10px 8px;background:#d5e4df06;border:1px solid #d4ddcc24;border-radius:6px;color:#b9c7c3;line-height:1.4}
body .directory-tabs button.active{background:#bda77922;border-color:#d5bc7d99;color:#ead7ad}
body .directory-heading{display:flex;justify-content:space-between;gap:8px;align-items:center;padding:18px 3px 10px;color:#e8dfc4;flex-shrink:0}
body .directory-heading small{font-size:11px!important;color:#899f9a;white-space:nowrap}
body #sceneList{overflow:auto;min-height:100px;scrollbar-width:thin;scrollbar-color:#8e9c8c55 transparent;gap:3px;margin:0 -5px;padding:0 5px}
body #sceneList button{padding:11px 10px;min-height:44px;font-size:13px!important;border-radius:6px;gap:12px;color:#bac7c4;flex-shrink:0;line-height:1.5}
body #sceneList .scene-num{font-size:11px!important;flex-basis:21px;color:#7e9691;font-family:ui-monospace,monospace}
body #sceneList button.active{border-color:#d7bb7c66;background:#cfb58216;color:#f1deb3}
body .settings-panel{width:360px}
body .settings-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:4px;margin:17px 0 22px;padding:4px;background:#080f1444;border-radius:8px}
body .settings-tabs button{font-size:13px!important;background:transparent;border:0;border-radius:5px;padding:8px;color:#8ea59f}
body .settings-tabs button[aria-selected=true]{background:#41514e66;color:#eddcba}
body .settings-panel .sound-setting{display:flex;justify-content:space-between;align-items:center;width:100%;font-size:13px!important;background:transparent;border:0;padding:10px 0;margin:0;color:#d2ded8}
body .settings-panel .sound-setting:after{content:'';width:30px;height:17px;border-radius:12px;background:radial-gradient(circle at 8px 8.5px,#a3aca5 5px,transparent 5.5px),#34423f;border:1px solid #9ba99244;flex-shrink:0}
body .settings-panel .sound-setting[aria-pressed=true]:after{background:radial-gradient(circle at 21px 8.5px,#f2e6c9 5px,transparent 5.5px),#988b65}
body .settings-panel .volume-setting{display:grid;grid-template-columns:1fr auto;gap:12px;color:#91a7a0;border:0;margin:3px 0 20px;padding:5px 0 18px;border-bottom:1px solid #d4d7c417;font-size:12px!important}
body .settings-panel .volume-setting span,body .settings-panel .volume-setting output{font-size:12px!important}
body .settings-panel .volume-setting input{grid-column:1/-1;width:100%;margin:2px 0 0}
body .settings-panel input[type=range]{accent-color:#ddc494;height:4px;cursor:pointer}
body .settings-panel .star-setting{font-size:13px!important;margin:26px 0 34px;color:#ccd9d0}
body .settings-panel .control-list{margin:0}
body .settings-panel .control-list li{grid-template-columns:85px 1fr;gap:13px;padding:12px 0;border-color:#d4d7c415;line-height:1.65}
body .settings-panel .control-list kbd{font-size:11px!important;background:#ffffff05;border-color:#c5d1c029;color:#dfd4b9;padding:4px 6px}
body .settings-panel .control-list span{font-size:12px!important;color:#a1b3ac}
body[data-mode=menu] :is(.top-hud,.bottom-hud,.scene-caption,.center-reticle,#labelLayer,#coldEdge,#ghostCountdown,.story-notice,.world-toast){display:none!important}
body #startOverlay{position:absolute;inset:0;z-index:40;display:block;overflow:auto;backdrop-filter:none;background:linear-gradient(90deg,#07121de3 0%,#0b182bc9 30%,#0a14244d 66%,#0a14242b 100%),linear-gradient(0deg,#0a121cf5 0%,#0b17249c 30%,transparent 72%),url('./assets/ui/home-background.png') center 43% / cover no-repeat;color:#f2f1e8}
body .home-header{position:relative;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:27px 44px;z-index:2}
body .home-brand{display:flex;align-items:center;gap:15px;color:#f0efe6;text-decoration:none;font-size:25px!important;font-weight:650;letter-spacing:5px;white-space:nowrap}
body .home-brand span{font-size:11px!important;font-weight:400;letter-spacing:3px;border-left:1px solid #d8dcc24d;padding-left:17px;color:#c6d2ce}
body .home-tools{display:flex;align-items:center;gap:9px}
body .home-tools button{background:transparent;border-color:transparent;border-radius:6px;font-size:12px!important;color:#e6e9de;padding:8px 12px;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
body .home-tools #openRegister{border-color:#d4d8c34d;background:#c3d6cb09}
body .home-tools button:hover{border-color:#ddd1aa88;background:#dae5d514}
body .home-tools svg{width:15px;height:15px}
body .language-control{position:relative}
body .language-menu{position:absolute;right:0;top:43px;background:#17292df5;box-shadow:0 14px 45px #0005;min-width:170px;border:1px solid #b6c3af38;border-radius:9px;padding:7px;backdrop-filter:blur(15px)}
body .language-menu button{width:100%;justify-content:space-between;padding:11px}
body .language-menu button[aria-current=true]{background:#d3c29b1f;color:#e7d2a7}
body .language-menu button span{font-size:10px!important;color:#8ea39e}
body .home-content{position:relative;min-height:calc(100dvh - 90px);display:flex;flex-direction:column;justify-content:space-between;gap:38px;padding:30px 5vw 36px 44px;max-width:1600px;margin:auto}
body .home-hero{max-width:610px;padding:0}
body .home-hero .overline{font-size:11px!important;letter-spacing:3px;color:#c4b28a}
body .home-hero h1{font-size:clamp(40px,4.6vw,68px)!important;line-height:1.27;letter-spacing:6px;font-weight:350;margin:19px 0 19px;text-shadow:0 4px 30px #0003}
body .home-hero h1 span,body .home-hero h1 em{font-size:inherit!important}
body .home-hero h1 em{font-style:normal;color:#dcc795}
body .home-hero p{font-size:12px!important;color:#aebfbd;line-height:1.9;letter-spacing:.5px;margin:0}
body .home-journey{width:min(840px,100%);padding:0}
body .resume-button{display:flex;align-items:center;gap:12px;min-width:255px;min-height:48px;border-radius:7px;background:#d6c092;color:#152329;border:1px solid #efdaa9a8;padding:12px 18px;margin-bottom:19px;box-shadow:0 7px 30px #0002;font-size:14px!important}
body .resume-button:hover{background:#efdab0;border-color:#f2dfbc}
body .resume-button .resume-icon{font-size:10px!important;opacity:.8}
body .resume-button #resumeProgress{font-size:11px!important;font-family:ui-monospace,monospace;opacity:.7;margin-left:14px}
body .resume-button .resume-arrow{margin-left:auto;font-size:20px!important;line-height:1}
body .home-maps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
body .home-map{position:relative;text-align:left;display:flex;align-items:flex-start;gap:13px;min-height:85px;padding:16px 14px;border:1px solid #b9c6b62e;border-radius:8px;background:linear-gradient(135deg,#1d303cbd,#18252eb8);backdrop-filter:blur(12px);color:#e6e8dd;overflow:hidden}
body .home-map:hover{background:#3b4c4bce;border-color:#cfbd8c99;transform:translateY(-2px)}
body .home-map .map-roman{color:#b6a57f;font:italic 17px/1.4 Georgia,serif!important;min-width:24px;opacity:.85}
body .home-map .map-copy{display:flex;flex-direction:column;gap:8px;min-width:0}
body .home-map strong{font-size:13px!important;line-height:1.4;font-weight:500;letter-spacing:.5px}
body .home-map small{font-size:10px!important;color:#90a6a7;line-height:1.5}
body .home-map .map-count{font-size:9px!important;position:absolute;right:10px;top:10px;color:#aab8ae66;font-family:ui-monospace,monospace}
body .account-overlay{position:absolute;z-index:70;inset:0;background:#041017a8;backdrop-filter:blur(15px);display:flex;justify-content:center;align-items:center;padding:24px;overflow:auto}
body .account-card{position:relative;background:linear-gradient(135deg,#20343a,#14242a);border:1px solid #b6c7b738;box-shadow:0 30px 110px #0009;border-radius:16px;width:390px;max-width:100%;padding:34px;outline:none}
body .account-card>.close-button{position:absolute;right:14px;top:13px}
body .account-card h2{font-size:25px!important;line-height:1.5;font-weight:450;letter-spacing:1px;margin:15px 0 8px}
body .account-card .account-intro{font-size:12px!important;color:#9db1ad;line-height:1.8;margin:0 0 24px}
body .account-card form{display:flex;flex-direction:column;gap:9px}
body .account-card label{font-size:12px!important;color:#c7d3cb;margin-top:9px}
body .account-card input{width:100%;font-size:13px!important;height:44px;background:#07171f77;border:1px solid #aabca42b;color:#ecefdf;border-radius:7px;padding:0 12px;outline:none}
body .account-card input::placeholder{color:#7c9691;font-size:11px!important}
body .account-card input:focus{border-color:#d6c192;box-shadow:0 0 0 3px #d6c19210}
body .account-card input[aria-invalid=true]{border-color:#dc9c86}
body .password-field{position:relative;display:flex}
body .password-field input{padding-right:44px}
body .password-field button{position:absolute;right:3px;top:4px;border:0;padding:9px;background:transparent;color:#849f98;line-height:1;display:flex}
body .account-card .account-message{font-size:12px!important;line-height:1.7;min-height:21px;margin:4px 0;color:#e5bb9c}
body .account-card .account-primary{width:100%;min-height:44px;background:#d6c092;color:#15272c;border-radius:7px;border-color:#e5d2aa;letter-spacing:1px;font-size:13px!important}
body .account-card .account-primary:hover{background:#e8d3a8}
body .account-card .account-primary:disabled{opacity:.55;cursor:not-allowed;background:#87918a;color:#192d32;border-color:transparent}
body .account-card .account-switch{width:100%;border:0;background:transparent;font-size:12px!important;color:#bac5b6;padding:12px 0 0;text-align:center}
body .preview-badge{display:inline-block;color:#d6c398;border:1px solid #d6c39850;background:#d6c39809;font-size:10px!important;padding:4px 7px;border-radius:4px}
body .payment-plan{border:1px solid #bdd2bb29;background:#06151e3d;border-radius:9px;padding:18px;margin:16px 0}
body .payment-plan>span{font-size:12px!important;color:#afc0b8}
body .payment-plan strong{display:block;font-size:17px!important;color:#edddba;font-weight:500;margin:9px 0 14px}
body .payment-plan p{font-size:11px!important;color:#95aaa3;margin:0;overflow-wrap:anywhere}
@media(min-width:1550px){body .home-content{padding-top:45px}.home-header{max-width:1600px;margin:auto}}
@media(max-width:1020px){body .top-hud{left:16px;right:16px;gap:10px}body .brand-sub,body .brand-divider{display:none}body .brand-mark{font-size:24px!important}body .brand-world{font-size:10px!important}body .view-tools button{font-size:12px!important;padding:8px 10px}body .home-header{padding:24px 30px}body .home-content{padding-left:30px;padding-right:30px}}
@media(max-width:760px){body .top-hud{top:12px;flex-wrap:wrap;align-items:center;gap:12px}body .brand-world{display:block;font-size:10px!important}body .brand{gap:10px}body .top-hud .view-tools{width:100%;justify-content:flex-end;gap:4px}body .view-tools button{min-height:34px;font-size:11px!important;padding:7px 9px}body .view-tools button.icon-button{min-height:34px;width:34px;min-width:34px}body .floating-panel{top:106px;right:12px;max-height:calc(100dvh - 120px);padding:18px;width:min(440px,calc(100vw - 24px))}body .home-header{padding:20px 22px}body .home-brand{font-size:23px!important}body .home-brand span{display:none}body .home-tools{gap:3px}body .home-tools button{font-size:11px!important;padding:8px 10px}body .home-content{padding:28px 22px;min-height:calc(100dvh - 77px);gap:32px}body .home-hero h1{font-size:48px!important;letter-spacing:4px}body .home-hero .overline{font-size:10px!important;letter-spacing:2px}body .home-hero p{max-width:300px;font-size:11px!important}body .home-maps{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}body .home-map{min-height:76px;padding:14px 11px;gap:8px}body .home-map strong{font-size:12px!important}body .home-map small{font-size:9px!important}body .home-map .map-roman{font-size:15px!important;min-width:22px}body .home-map .map-count{display:none}body .resume-button{min-height:44px;margin-bottom:14px}body #startOverlay{background-position:center,center,58% center}}
@media(max-width:400px){body .home-tools button{padding:8px 7px}body .home-header{padding:18px}body .home-content{padding:20px 18px}body .home-hero h1{font-size:40px!important}body .home-map .map-roman{display:none}body .view-tools #resetView{display:none}body .account-card{padding:27px 24px}body .floating-panel .directory-tabs button{font-size:12px!important}body .home-map small{letter-spacing:0}}
@media(max-height:680px) and (min-width:761px){body .home-header{padding-top:18px;padding-bottom:14px}body .home-content{min-height:calc(100dvh - 65px);padding-top:12px;padding-bottom:23px;gap:24px}body .home-hero h1{font-size:42px!important;margin:12px 0}body .home-map{min-height:74px;padding:12px 14px}body .resume-button{margin-bottom:12px}}
@media(prefers-reduced-motion:reduce){body .home-map:hover{transform:none}}

/* V0.10.13 — subtitles align with the former location row, at its 18px size. */
body #dialoguePanel.dialogue-panel{bottom:76px!important;padding:7px 11px!important;gap:9px;max-width:calc(100vw - 230px)!important;max-height:28vh!important;border-radius:5px}
body #dialoguePanel>p,body #dialoguePanel #speakerName,body #dialoguePanel #nextLine{font-size:18px!important;line-height:1.65!important}
body #dialoguePanel #nextLine{padding:3px 8px!important;white-space:nowrap}
body .bottom-hud{left:24px;right:auto;top:78px;bottom:auto;display:block;z-index:5;max-width:calc(100vw - 48px)}
body .bottom-hud .where,body[data-mode=story] .bottom-hud .where{font-size:13px!important;padding:0;gap:7px;background:transparent!important;border:0!important;box-shadow:none;letter-spacing:.2px;text-shadow:0 1px 5px #0009;max-width:none}
body .bottom-hud .where *{font-size:13px!important}
body .bottom-hud .status-dot{display:none}
body .bottom-hud .small-divider{height:11px;opacity:.5;margin:0 3px}
body .bottom-hud :is(.navigation-hint,.scene-pager){display:none}
body .run-toggle,body[data-mode=story] .run-toggle{right:42px!important;bottom:23px!important;min-width:0;min-height:0;width:66px;height:91px;border:0!important;background:transparent!important;box-shadow:none;border-radius:0;padding:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:5px;color:#e8e4d6}
body .run-toggle .run-icon{display:grid;place-items:center;flex:0 0 64px;width:64px;height:64px;border:1px solid #d8cba7b0;background:#15232f96;border-radius:50%;box-shadow:0 2px 12px #0003;transition:background .2s}
body .run-toggle svg{width:36px;height:36px;fill:#eeeade;stroke:#eeeade;stroke-width:3.8;stroke-linecap:round;stroke-linejoin:round}
body .run-toggle svg path{fill:none}
body .run-toggle #runLabel{font-size:13px!important;line-height:1.4;text-shadow:0 1px 4px #000b}
body .run-toggle[aria-pressed=true] .run-icon{background:#b7a479;color:#112730;box-shadow:0 0 16px #c9b27d22}
body .run-toggle[aria-pressed=true] svg{fill:#172a30;stroke:#172a30}
body .run-toggle:hover .run-icon{background:#4a5554ad;border-color:#f0dfb2}
@media(max-width:760px){body #dialoguePanel.dialogue-panel{bottom:72px!important;max-width:calc(100vw - 130px)!important;padding:6px 8px!important;gap:7px}body #dialoguePanel>p,body #dialoguePanel #speakerName,body #dialoguePanel #nextLine{font-size:18px!important}body .bottom-hud{top:107px;left:16px;max-width:calc(100vw - 32px)}body .bottom-hud .where{flex-wrap:wrap}body .run-toggle,body[data-mode=story] .run-toggle{right:22px!important;bottom:19px!important}}
@media(max-width:440px){body #dialoguePanel.dialogue-panel{max-width:calc(100vw - 108px)!important;margin-left:-32px}body .run-toggle,body[data-mode=story] .run-toggle{right:14px!important;bottom:20px!important;width:56px;height:79px}body .run-toggle .run-icon{width:54px;height:54px;flex-basis:54px}body .run-toggle svg{width:31px;height:31px}}
html[lang=en] #speakerName:after{content:':'}
/* MYTIANDOG identity screens share the existing restrained game palette. */
body .account-card{max-height:calc(100dvh - 48px);overflow:auto;width:min(440px,calc(100vw - 32px))}
body .account-card [hidden]{display:none!important}
body .account-card input{box-sizing:border-box;width:100%;background:#0819238c;border:1px solid #8faaa641;border-radius:6px;color:#f2ead8;padding:10px 12px;font:14px/1.5 inherit}
body .account-card label{display:block;margin:13px 0 6px;font-size:12px!important;color:#bac9c1}
body .account-card .account-primary{margin-top:18px}
body .account-card .account-helpers{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin:15px 0}
body .account-card .account-helpers button,body .account-mailbox{padding:0;border:0;background:none;color:#ccb88a;font-size:12px!important;line-height:1.6}
body .account-card .account-social{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}
body .account-card .account-provider{padding:9px 12px;border:1px solid #a7bcb23b;background:#30413c52;border-radius:6px;font-size:13px!important}
body .account-card .account-provider:disabled{opacity:.45;cursor:not-allowed}
body .account-card .account-social p{grid-column:1/-1;text-align:center;color:#8daba0;font-size:11px!important;margin:5px 0}
body .account-card .profile-details{margin:20px 0;padding:14px;background:#05151d50;border:1px solid #d5c28f23;border-radius:8px}
body .account-card .profile-details dt{font-size:10px!important;color:#9eb4a9;margin-top:12px;letter-spacing:.3px}
body .account-card .profile-details dt:first-child{margin-top:0}
body .account-card .profile-details dd{margin:4px 0 0;color:#e5dfca;font-size:13px!important;overflow-wrap:anywhere}
body .account-card .profile-details dd:first-of-type{font-family:ui-monospace,monospace;font-size:12px!important}
body .account-card .profile-edit{display:flex;gap:8px;align-items:center}
body .account-card .profile-edit button{white-space:nowrap;padding:10px;background:#b9a675;color:#142722;border:0;border-radius:6px;font-size:12px!important}
body .account-message{min-height:1.4em;line-height:1.7!important;overflow-wrap:anywhere}
@media(max-width:760px){
  body #dialoguePanel.dialogue-panel{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;max-height:44vh!important;overflow:hidden}
  body #dialoguePanel>p{grid-column:1/-1;grid-row:1;min-width:0;width:100%;max-height:32vh;overflow:auto}
  body #dialoguePanel #speakerName{grid-column:1;grid-row:2;align-self:center}
  body #dialoguePanel .dialogue-actions{grid-column:2;grid-row:2;justify-self:end}
}
