/* The Thornring: quiet dialogue craft, two health bars, uninterrupted combat. */
.iso-stag-hud{position:fixed;inset:0;z-index:65;pointer-events:none;color:#f0ddb2;font-family:Georgia,serif;text-shadow:0 2px 7px #000}
.iso-stag-hud[hidden],.iso-stag-sync[hidden]{display:none!important}
.is-stag-combat :is(.iso-fullscreen-toggle,.iso-landscape-hint,.iso-marker-layer,.iso-marker){visibility:hidden!important;pointer-events:none!important}
.iso-stag-player-hp{position:absolute;top:calc(31px + env(safe-area-inset-top));left:calc(33px + env(safe-area-inset-left));width:clamp(140px,22vw,290px)}
.iso-stag-player-hp>span{display:block;margin:0 0 9px 7px;font-size:11px;letter-spacing:3px}
.iso-stag-hp-rim{position:relative;height:12px;padding:3px 9px;background:linear-gradient(90deg,#8e7545,#ead39b 18%,#b69756 82%,#f1d59a);clip-path:polygon(7px 0,calc(100% - 7px) 0,100% 50%,calc(100% - 7px) 100%,7px 100%,0 50%);filter:drop-shadow(0 3px 9px #0009)}
.iso-stag-hp-rim:before{content:'';position:absolute;inset:1px;background:#0c1613;clip-path:inherit}
.iso-stag-hp-rim progress{position:relative;display:block;appearance:none;width:100%;height:100%;border:0;background:#1d1c17;color:#b24d30;overflow:hidden}
.iso-stag-hp-rim progress::-webkit-progress-bar{background:#1d1c17}
.iso-stag-hp-rim progress::-webkit-progress-value{background:linear-gradient(0deg,#713020,#bf5534 55%,#d4854f);transition:width .15s linear}
.iso-stag-hp-rim progress::-moz-progress-bar{background:linear-gradient(0deg,#713020,#bf5534 55%,#d4854f)}
.iso-stag-boss-hp{position:absolute;bottom:calc(37px + env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);width:min(65vw,920px);text-align:center}
.iso-stag-antlers{display:block;object-fit:contain;filter:drop-shadow(0 2px 2px #08100bef) drop-shadow(0 0 6px #efbb4533);user-select:none}
.iso-stag-boss-hp>.iso-stag-antlers{width:92px;height:52px;margin:0 auto 8px}
.iso-stag-boss-hp .iso-stag-hp-rim{height:13px}
.iso-stag-boss-hp>span{display:block;margin-top:11px;font-size:14px;letter-spacing:3px}
.iso-stag-boss-hp i{font-style:normal;font-size:12px;letter-spacing:1.5px;color:#dbcfb5}
.iso-stag-sync{position:absolute;left:50%;top:22%;transform:translateX(-50%);max-width:calc(100% - 36px);padding:12px 20px;background:#0b1913e8;border:1px solid #b89b5960;color:#f0e4c7;text-align:center;font:13px/1.5 Inter,sans-serif}
.is-stag-combat :is(.iso-header,.iso-journal-menu,.iso-objective,.iso-controls,.iso-reyn-note,.iso-audio-toggle,.iso-spirits-host,.iso-identity-launcher,.iso-preview,.iso-combat-readout,.iso-enemy-view,.iso-lobby-launcher,.iso-lobby-toggle,.iso-skip,.iso-frame){visibility:hidden!important;pointer-events:none!important}
.iso-panel[data-mode=stag] .iso-bank-portrait{width:min(51vw,740px);right:-1vw}
.iso-panel[data-mode=stag] .iso-bank-portrait img{object-fit:contain;object-position:bottom center}
.iso-panel[data-mode=stag] .iso-panel-content{overflow-wrap:anywhere}
.iso-stag-offer{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin:13px 0 15px;color:#eddbb2;font:16px/1.5 Georgia,serif}
.iso-stag-offer strong{font-weight:400;font-size:28px;color:#efd092}
.iso-stag-rules{max-width:61ch;margin:8px 0 14px;color:#c5bfa9;font:11px/1.65 Inter,sans-serif}
.iso-stag-rules span{display:block}
.iso-stag-reset{font:12px/1.6 Inter,sans-serif;color:#dac89f;margin:10px 0}
.iso-stag-entry-checks{display:flex;flex-wrap:wrap;gap:9px 20px;list-style:none;padding:0;margin:15px 0;color:#bad1ac;font:12px/1.5 Inter,sans-serif}.iso-stag-entry-checks .is-needed{color:#ecc681}
.iso-stag-result-mark{width:88px;height:50px;color:#dfbf79;margin:4px 0 8px}
.iso-stag-result-mark .iso-stag-antlers{width:100%;height:100%}
.iso-stag-earned{font:36px/1.2 Georgia,serif;color:#d8ebbd;margin:8px 0 12px}.iso-stag-earned small{font-size:16px}
.iso-stag-post-link{display:inline-flex;gap:10px;align-items:center;color:#e2c58d;font:13px/1.5 Georgia,serif;margin:10px 0;text-underline-offset:4px}
html[data-theme=light] .iso-stag-sync{background:#f6efdeed;color:#233d2d;text-shadow:none}
html[data-theme=light] .iso-panel[data-mode=stag] :is(.iso-stag-rules,.iso-stag-reset){color:#d1c8ac}
@media(max-width:700px){
 .iso-stag-player-hp{top:calc(20px + env(safe-area-inset-top));left:calc(20px + env(safe-area-inset-left));width:38vw;max-width:230px}
 .iso-stag-boss-hp{width:calc(100% - 40px);bottom:calc(24px + env(safe-area-inset-bottom))}
 .iso-stag-boss-hp>span{font-size:12px;letter-spacing:2px}.iso-stag-boss-hp i{font-size:10px;letter-spacing:.5px}
 .iso-stag-boss-hp>.iso-stag-antlers{width:68px;height:38px;margin-bottom:5px}
 .iso-panel[data-mode=stag] .iso-bank-portrait{width:70vw;right:-7vw;opacity:.92}
 .iso-stag-offer{font-size:14px;margin:8px 0}.iso-stag-offer strong{font-size:23px}
 .iso-stag-rules{font-size:10px;line-height:1.6}.iso-stag-earned{font-size:29px}
}
@media(max-height:520px) and (orientation:landscape){
 .iso-stag-player-hp{top:15px;width:170px}.iso-stag-boss-hp{bottom:15px;width:53vw}.iso-stag-boss-hp>.iso-stag-antlers{width:46px;height:26px;margin-bottom:3px}.iso-stag-boss-hp>span{margin-top:6px}
 .iso-panel[data-mode=stag] .iso-stag-rules{font-size:9px;line-height:1.4;margin:5px 0}.iso-stag-offer{margin:3px 0}.iso-stag-offer strong{font-size:20px}
}
@media(prefers-reduced-motion:reduce){.iso-stag-hp-rim progress::-webkit-progress-value{transition:none}}

/* Twin Marks: one living gold mark in the reading stack below Spirits. */
.iso-twin-marks{display:flex;align-items:center;max-width:100%;min-height:44px;margin-top:0;color:#f0e4c7;text-shadow:0 1px 5px #07150f;font:14px/1.2 Georgia,serif}
.iso-twin-marks[hidden],.iso-stag-lesson[hidden]{display:none!important}
.iso-mode-morph{position:relative;display:flex;align-items:center;gap:8px;min-height:44px;max-width:100%;padding:1px 8px 1px 1px;border:0;border-radius:5px;background:radial-gradient(ellipse at 21% 50%,#d7b86b08,transparent 70%);color:#e5d9bc;font:inherit;text-shadow:inherit;cursor:pointer;isolation:isolate;transition:color .3s,background .3s}
.iso-mode-morph:after{content:'';position:absolute;left:34px;right:6px;bottom:5px;height:1px;opacity:.55;background:linear-gradient(90deg,#ebc97a60,#c9a46418,transparent);pointer-events:none}
.iso-mode-morph:hover{color:#fff1cc;background:radial-gradient(ellipse at 21% 50%,#d7b86b16,transparent 75%)}
.iso-mode-morph:focus-visible,.iso-stag-review:focus-visible{outline:1px solid #f2d698;outline-offset:2px;border-radius:4px}
.iso-app .iso-mode-morph:disabled{cursor:default;opacity:1}.iso-twin-marks[data-pending=true] .iso-mode-morph{cursor:wait}
.iso-mode-emblem{position:relative;display:grid;place-items:center;flex:0 0 34px;width:34px;height:38px;pointer-events:none}
.iso-mode-emblem svg{width:32px;height:32px;overflow:visible;filter:drop-shadow(0 1px 2px #06100b99) drop-shadow(0 0 5px #dcae481c)}
.iso-mode-silhouette{stroke:#f5dba4;stroke-width:.55;stroke-linejoin:round}
.iso-mode-veins,.iso-mode-fuller{fill:none;stroke:#57411f;stroke-width:.8;stroke-linecap:round;transition:opacity .24s}
.iso-mode-fuller{opacity:0;stroke:#fff2c1;stroke-width:.65}
.iso-twin-marks[data-mode=combat] .iso-mode-veins{opacity:0}.iso-twin-marks[data-mode=combat] .iso-mode-fuller{opacity:.9;transition-delay:.22s}
.iso-mode-name{display:block;min-width:57px;letter-spacing:.35px;text-align:left}
.iso-mode-glint{position:absolute;left:19px;top:11px;width:2px;height:2px;border-radius:50%;background:#fff6d4;opacity:0;pointer-events:none}
.iso-mode-glint:before,.iso-mode-glint:after{content:'';position:absolute;left:50%;top:50%;height:1px;width:18px;background:linear-gradient(90deg,transparent,#ffedac,transparent);transform:translate(-50%,-50%)}
.iso-mode-glint:after{transform:translate(-50%,-50%) rotate(90deg)}
.iso-twin-marks[data-morphing=true] .iso-mode-emblem svg{animation:iso-mark-forge .62s ease-in-out both}
.iso-twin-marks[data-morphing=true] .iso-mode-glint{animation:iso-mark-glint .62s ease-in-out both}
.iso-twin-marks[data-morphing=true] .iso-mode-name{animation:iso-mark-name .5s ease-out both}
.iso-twin-marks kbd{font:9px/1.2 Inter,sans-serif;padding:3px 4px;border:1px solid #c1b79530;border-radius:3px;color:#c5bda5;background:#10221818;text-shadow:inherit}
@keyframes iso-mark-forge{0%,100%{transform:rotate(0) scale(1)}40%{transform:rotate(-9deg) scale(.91);filter:drop-shadow(0 0 6px #f2cc8970)}72%{transform:rotate(3deg) scale(1.04)}}
@keyframes iso-mark-glint{0%,25%,100%{opacity:0;transform:scale(.3) rotate(-20deg)}48%{opacity:1;transform:scale(1) rotate(0)}70%{opacity:.35;transform:scale(.6) rotate(15deg)}}
@keyframes iso-mark-name{0%{opacity:.25;filter:blur(2px)}100%{opacity:1;filter:blur(0)}}
body:not([data-player-mode=combat]) .iso-combat-hint{display:none}
.is-stag-combat .iso-twin-marks{visibility:hidden;pointer-events:none}
.iso-stag-review{margin-top:8px;padding:8px 0;border:0;background:none;color:#d0bf96;text-decoration:underline;text-underline-offset:4px;font:12px/1.4 Georgia,serif;cursor:pointer}
.iso-stag-lesson{position:fixed;z-index:38;left:max(26px,env(safe-area-inset-left));top:118px;display:grid;grid-template-columns:64px minmax(0,1fr);gap:13px;width:min(365px,calc(100vw - 48px));padding:18px 18px 15px 12px;background:linear-gradient(120deg,#10241ce8,#10201de0);border:1px solid #b99c4b25;border-radius:4px 22px 4px 4px;box-shadow:0 12px 32px #03110c25;backdrop-filter:blur(12px);color:#f1e8ce;font-family:Georgia,serif;pointer-events:auto}
.iso-stag-lesson>img{width:72px;height:107px;object-fit:cover;object-position:50% 7%;align-self:start;mask-image:linear-gradient(#000 72%,transparent)}
.iso-lesson-copy{min-width:0}.iso-lesson-kicker{font:9px/1.4 Inter,sans-serif;letter-spacing:1.7px;color:#d9bd79}.iso-stag-lesson h2{font:22px/1.15 Georgia,serif;margin:8px 0}.iso-lesson-line{font:italic 13px/1.5 Georgia,serif;color:#c7cbb6;margin:0 0 10px}.iso-lesson-instruction{font:12px/1.6 Inter,sans-serif;margin:0;color:#f0e5cb}
.iso-lesson-progress{display:flex;gap:7px;margin:13px 0}.iso-lesson-progress i{width:16px;height:2px;background:#bac3a72c}.iso-lesson-progress .is-done{background:#91b78a}.iso-lesson-progress .is-current{background:#ebc573;box-shadow:0 0 6px #e6c56f44}
.iso-lesson-pause,.iso-lesson-retry{border:0;background:transparent;padding:8px 0;color:#bfb99e;min-height:36px;font:11px/1.4 Inter,sans-serif;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.iso-lesson-retry{display:block;color:#f2cd8c}.iso-lesson-retry[hidden],.iso-lesson-error[hidden]{display:none}.iso-lesson-error{font:12px/1.5 Inter,sans-serif;color:#edbd9a}.iso-stag-lesson button:focus-visible{outline:1px solid #ecd093;outline-offset:2px}
.is-stag-lesson :is(.iso-objective,.iso-reyn-note){visibility:hidden;pointer-events:none}
html[data-theme=light] .iso-stag-lesson{background:linear-gradient(120deg,#f7f1e3ef,#e5eadbea);color:#263e30;border-color:#314b2c18;box-shadow:0 10px 30px #1e3b2514}
html[data-theme=light] .iso-stag-lesson :is(.iso-lesson-line,.iso-lesson-instruction){color:#354b3a}html[data-theme=light] .iso-stag-lesson :is(.iso-lesson-kicker,.iso-lesson-pause,.iso-lesson-retry){color:#755d2b}
@media(max-width:700px){.iso-twin-marks{font-size:13px}.iso-mode-morph{gap:6px;padding-right:4px}.iso-mode-name{min-width:54px}.iso-twin-marks kbd{display:none}.iso-stag-lesson{top:158px;left:18px;grid-template-columns:44px minmax(0,1fr);width:calc(100vw - 36px);max-width:350px;padding:13px 14px 8px 8px;gap:10px}.iso-stag-lesson>img{width:50px;height:88px}.iso-stag-lesson h2{font-size:20px}.iso-lesson-line{font-size:12px}.iso-lesson-instruction{font-size:11px}}
@media(max-height:520px) and (orientation:landscape){.iso-twin-marks{font-size:12px}.iso-mode-morph{gap:5px}.iso-mode-emblem{flex-basis:30px;width:30px}.iso-mode-emblem svg{width:28px;height:28px}.iso-twin-marks kbd{display:none}.iso-stag-lesson{top:70px;left:16px;max-width:275px;grid-template-columns:1fr;padding:12px}.iso-stag-lesson>img,.iso-lesson-line{display:none}.iso-stag-lesson h2{font-size:18px;margin:5px 0}.iso-lesson-progress{margin:8px 0}.iso-lesson-pause{min-height:28px}}
@media(prefers-reduced-motion:reduce){.iso-twin-marks *{transition:none!important;animation:none!important}}
@media(max-width:700px) and (orientation:portrait){.iso-app:has(.iso-twin-marks:not([hidden])) .iso-objective{top:calc(167px + env(safe-area-inset-top))}}
@media(prefers-reduced-transparency:reduce){.iso-stag-lesson{backdrop-filter:none;background:#10241c}html[data-theme=light] .iso-stag-lesson{background:#f1eddf}}
