:root{color-scheme:dark;--bg:#101716;--panel:#17211f;--ink:#e6ece5;--muted:#9baea5;--line:#33453d;--green:#9aceac;--gold:#e8c481;--red:#f18d84;--font:system-ui,-apple-system,'Microsoft YaHei',sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:calc(14px * var(--text-scale,1))/1.65 var(--font)}button,input{font:inherit}button{cursor:pointer;color:inherit;border:1px solid var(--line);background:#202e27;border-radius:4px;padding:10px 16px;transition:background .18s,border-color .18s}button:hover:not(:disabled){background:#314438;border-color:var(--green)}button:disabled{opacity:.42;cursor:not-allowed}button:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:4px}input{background:#121d19;border:1px solid var(--line);color:var(--ink);padding:11px 14px;border-radius:4px;width:100%}a{color:inherit;text-decoration:none}#landscape{position:fixed;inset:0;width:100%;height:100%;z-index:-1;opacity:.68}.shell{max-width:1240px;margin:auto;padding:0 36px}header{height:95px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:16px}.brand{font:calc(30px * var(--text-scale,1)) 'STSong','SimSun',serif;display:flex;align-items:center;gap:18px;white-space:nowrap}.brand span{font:calc(12px * var(--text-scale,1)) var(--font);color:var(--muted)}.header-right{display:flex;align-items:center;gap:12px}.header-right>span{color:var(--muted);font-size:calc(12px * var(--text-scale,1))}.quiet{background:transparent;padding:7px 12px;font-size:calc(12px * var(--text-scale,1))}main{min-height:calc(100vh - 155px)}footer{display:flex;justify-content:space-between;padding:20px 0;color:#91a398;font-size:calc(11px * var(--text-scale,1));border-top:1px solid var(--line)}h1,h2,h3,p{margin:0}h1,h2,.serif{font-family:'STSong','SimSun',serif;font-weight:400}h1{font-size:calc(44px * var(--text-scale,1));line-height:1.3}h2{font-size:calc(25px * var(--text-scale,1))}h3{font-size:calc(15px * var(--text-scale,1));font-weight:500}.muted{color:var(--muted)}.gold{color:var(--gold)}.eyebrow{color:var(--green);font-size:calc(11px * var(--text-scale,1));margin-bottom:14px}.start{padding:65px 0 45px;max-width:1050px;margin:auto}.start-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:34px}.start-heading p{color:var(--muted);max-width:430px;margin-top:15px;line-height:1.9}.name-field{width:235px;flex-shrink:0}.name-field label{display:block;font-size:calc(12px * var(--text-scale,1));color:var(--muted);margin-bottom:8px}.talent-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.talent-card{text-align:left;min-height:278px;padding:26px 25px;display:flex;flex-direction:column;align-items:flex-start;background:rgba(20,32,27,.94);position:relative;overflow:hidden;border-top:2px solid var(--tier);border-radius:4px}.talent-card:hover{background:#26362d!important;border-color:var(--tier)!important}.talent-card.selected{outline:1px solid var(--tier);background:#293b30}.tier-0{--tier:#c8d2d0}.tier-1{--tier:#92cd99}.tier-2{--tier:#8ab6ed}.tier-3{--tier:#c0a3e8}.tier-4{--tier:#f09385}.tier-5{--tier:#f1ce7b}.rarity{color:var(--tier);font-size:calc(11px * var(--text-scale,1))}.talent-symbol{font:calc(50px * var(--text-scale,1)) 'STSong','SimSun',serif;color:var(--tier);margin:15px 0 10px}.talent-card h2{font-size:calc(23px * var(--text-scale,1))}.talent-desc{font-size:calc(12px * var(--text-scale,1));color:var(--muted);margin:9px 0 19px}.talent-effect{font-size:calc(12px * var(--text-scale,1));color:var(--tier);margin-top:auto;padding-top:15px;border-top:1px solid var(--line);width:100%}.start-bottom{display:flex;justify-content:space-between;align-items:center;margin:26px 0 35px;gap:16px}.primary{background:#9aceac;color:#14281d;border-color:#9aceac}.primary:hover:not(:disabled){background:#b2dfbd;border-color:#b2dfbd}.primary:disabled{opacity:.5}.start-bottom .primary{min-width:170px}.rarity-key{display:flex;gap:13px;flex-wrap:wrap;font-size:calc(11px * var(--text-scale,1))}.rarity-key span{color:var(--tier)}.rarity-key i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--tier);margin-right:5px}.realm-strip{border-top:1px solid var(--line);padding-top:24px;display:flex;gap:15px;flex-wrap:wrap;align-items:center;color:var(--muted);font-size:calc(12px * var(--text-scale,1))}.realm-strip span:first-child{color:var(--gold)}.realm-strip b{font-weight:400;color:#587463}.dashboard{display:grid;grid-template-columns:265px 1fr;gap:32px;padding:30px 0}.character{border-right:1px solid var(--line);padding-right:25px}.character .eyebrow{margin-bottom:8px}.character h2{font-size:calc(27px * var(--text-scale,1));overflow-wrap:anywhere}.realm-name{font-size:calc(18px * var(--text-scale,1));margin:25px 0 3px;color:var(--green)}.quality{font-size:calc(12px * var(--text-scale,1));color:var(--gold);margin-bottom:18px}.power{padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:18px}.power small{color:var(--muted);display:block;font-size:calc(11px * var(--text-scale,1))}.power strong{font:calc(30px * var(--text-scale,1))/1.5 var(--font);font-weight:400}.stat-row{display:flex;justify-content:space-between;gap:10px;font-size:calc(12px * var(--text-scale,1));margin:11px 0}.stat-row .muted{white-space:nowrap}.meter{height:5px;background:#304039;border-radius:3px;overflow:hidden}.meter>i{display:block;height:100%;background:var(--green);transition:width .3s}.hp-meter>i{background:#d99583}.xp-meter>i{background:#e3c382}.character-talent{padding-top:20px;margin-top:24px;border-top:1px solid var(--line)}.character-talent h3{color:var(--tier);margin:5px 0}.character-talent p{font-size:calc(11px * var(--text-scale,1));color:var(--muted)}.lineage{padding-top:22px;font-size:calc(11px * var(--text-scale,1));color:var(--muted)}.lineage div{margin-top:8px;color:#bdcbbd}.journey{min-width:0}.journey-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;gap:15px}.tabs{display:flex;border-bottom:1px solid var(--line);gap:25px;margin-bottom:22px}.tabs button{border:0;border-radius:0;background:none;padding:11px 0;color:var(--muted);font-size:calc(13px * var(--text-scale,1))}.tabs button.active{color:var(--green);box-shadow:0 2px var(--green)}.scene{height:140px;position:relative;overflow:hidden;margin-bottom:22px;border-bottom:1px solid var(--line);background:linear-gradient(90deg,rgba(20,37,29,.5),transparent)}.scene canvas{width:100%;height:100%;display:block}.scene-caption{position:absolute;left:20px;top:28px}.scene-caption h2{font-size:calc(23px * var(--text-scale,1))}.scene-caption p{font-size:calc(12px * var(--text-scale,1));color:var(--muted);margin-top:5px}.actions{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:24px}.actions button{padding:12px 5px;font-size:calc(13px * var(--text-scale,1))}.actions small{display:block;font-size:calc(10px * var(--text-scale,1));opacity:.65;margin-top:3px}.section-title{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-bottom:12px;border-bottom:1px solid var(--line);font-size:calc(13px * var(--text-scale,1))}.section-title small{color:var(--muted);font-size:calc(11px * var(--text-scale,1))}.logs{height:300px;overflow:auto;scrollbar-width:thin;scrollbar-color:#45654f transparent}.log{display:grid;grid-template-columns:62px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid #2c3b32;font-size:calc(12px * var(--text-scale,1));animation:arrive .2s}.log time{color:#8fa494;font-size:calc(11px * var(--text-scale,1))}.log p{color:#c1cfc4}.log.good p{color:var(--green)}.log.danger p{color:#e5a098}.log.breakthrough p{color:var(--gold)}.log.story p{color:#c9d6e5}.log.cultivate p{color:#aebfae}.subheading{margin-bottom:18px}.subheading p{margin-top:8px;font-size:calc(12px * var(--text-scale,1));color:var(--muted)}.place,.shop-item,.option{padding:17px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:20px}.place p,.shop-item p,.option p{font-size:calc(12px * var(--text-scale,1));color:var(--muted);margin:4px 0}.place small{color:var(--gold);font-size:calc(11px * var(--text-scale,1))}.option.locked h3{color:#829489}.option h3{color:var(--gold)}.option button{min-width:105px;flex-shrink:0;font-size:calc(12px * var(--text-scale,1))}.option .cost{font-size:calc(11px * var(--text-scale,1));color:#b8c9bc}.inline-notice{padding:12px 15px;border-left:2px solid var(--gold);background:#24312a;font-size:calc(12px * var(--text-scale,1));color:#d6c7a6;margin:15px 0}.combat{background:rgba(53,30,26,.6);border-top:1px solid #915c4e;border-bottom:1px solid #915c4e;padding:20px;margin-bottom:22px}.combat-top{display:flex;justify-content:space-between;align-items:center;gap:15px}.combat h3{color:#f0b29c;font-size:calc(19px * var(--text-scale,1))}.combat p{font-size:calc(12px * var(--text-scale,1));color:#d4afa0}.combat .meter{margin:12px 0}.combat .meter i{background:#df8e75}.combat-actions{display:flex;gap:8px;flex-wrap:wrap}.event{border-left:2px solid var(--gold);padding:18px;background:#293126;margin-bottom:22px}.event h3{color:var(--gold)}.event p{font-size:calc(12px * var(--text-scale,1));margin:8px 0 14px;color:var(--muted)}.event button{margin:4px 8px 4px 0;font-size:calc(12px * var(--text-scale,1))}.ending{padding:25px;border:1px solid var(--gold);margin-bottom:20px}.ending h2{color:var(--gold)}.ending p{color:var(--muted);margin:10px 0 15px;font-size:calc(12px * var(--text-scale,1))}dialog{background:#16221c;color:var(--ink);border:1px solid #4a6350;border-radius:6px;width:min(760px,calc(100% - 30px));max-height:85vh;padding:28px}dialog::backdrop{background:rgba(5,13,9,.82);backdrop-filter:blur(5px)}.modal-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-top button{padding:4px 11px;font-size:calc(20px * var(--text-scale,1))}dialog p{color:var(--muted);font-size:calc(12px * var(--text-scale,1));margin:10px 0}dialog h3{margin-top:20px;color:var(--gold)}.book-table{width:100%;border-collapse:collapse;font-size:calc(12px * var(--text-scale,1))}.book-table td,.book-table th{padding:12px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.book-table th{color:var(--muted);font-weight:400}.book-table td:first-child{white-space:nowrap;color:var(--green)}.confirm-actions{display:flex;gap:12px;justify-content:end;margin-top:20px}.toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%);background:#304639;border:1px solid #739d7f;padding:10px 20px;z-index:10;max-width:90%;font-size:calc(12px * var(--text-scale,1))}@keyframes arrive{from{opacity:.3;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}
#landscape{opacity:.32}.scene::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#1c3027f5,transparent 85%);pointer-events:none}.scene-caption{z-index:1}
.result-message{padding:16px;border-left:3px solid var(--green);background:#23362a;font-size:calc(14px * var(--text-scale,1));line-height:1.9}.result-message.danger{border-color:var(--red);background:#362622}.toast{border-radius:8px;box-shadow:0 8px 30px #0006;pointer-events:none;text-align:center}.toast.danger{background:#362622;border-color:var(--red)}.guide-steps h3{margin-top:16px}.confirm-actions{flex-wrap:wrap}.modal-top{gap:12px}.modal-top h2{min-width:0;overflow-wrap:anywhere}.modal-top button{flex-shrink:0}
@media(max-width:380px){header{gap:8px}.header-right{gap:4px}.quiet{padding:6px;font-size:calc(11px * var(--text-scale,1))}.brand{font-size:calc(23px * var(--text-scale,1))}.confirm-actions button{flex:1;padding:10px 8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}dialog::backdrop{backdrop-filter:none}}
:root{--surface:#182820;--surface-soft:#21342a;--button:#23382c;--hover:#304b39;--shadow:#0003;--danger-surface:#362622;--scene-fade:#1c3027f5;--radius:6px}
:root[data-theme="paper"]{color-scheme:light;--bg:#f3eddf;--panel:#faf6eb;--ink:#302f28;--muted:#6b695a;--line:#c9c2af;--green:#426747;--gold:#896125;--red:#a3443c;--surface:#faf6eb;--surface-soft:#eae4d5;--button:#e6e0d0;--hover:#dcd8c4;--shadow:#63553920;--danger-surface:#f1dbd0;--scene-fade:#eee9dafa;--radius:2px}
:root[data-theme="night"]{--bg:#101524;--panel:#182137;--ink:#e4edff;--muted:#a5b4d0;--line:#374866;--green:#8fbdf0;--gold:#f2d398;--red:#f2a3a3;--surface:#192239;--surface-soft:#23324d;--button:#253650;--hover:#32496a;--shadow:#03091855;--danger-surface:#3c2b3d;--scene-fade:#172239f5;--radius:14px}
:root[data-theme="plum"]{--bg:#211423;--panel:#2b1d30;--ink:#f5e8f2;--muted:#c5acc4;--line:#614263;--green:#e0add8;--gold:#f0c48e;--red:#f4a1ac;--surface:#2d2032;--surface-soft:#3e2b43;--button:#452f4c;--hover:#593d63;--shadow:#10041655;--danger-surface:#482b35;--scene-fade:#302036f5;--radius:10px}
body{background:var(--bg)}select{font:inherit;color:var(--ink);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);padding:7px 9px;max-width:100%;cursor:pointer}select:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.theme-picker{display:flex;align-items:center;gap:7px;font-size:calc(12px * var(--text-scale,1))}.theme-picker>span{color:var(--muted)}header{height:auto;min-height:95px;padding:20px 0}.header-right{flex-wrap:wrap;justify-content:flex-end}.quiet{white-space:nowrap}
button{background:var(--button);border-radius:var(--radius)}button:hover:not(:disabled){background:var(--hover)}input{background:var(--surface);border-radius:var(--radius)}.primary{background:var(--green);border-color:var(--green);color:var(--bg)}.primary:hover:not(:disabled){background:var(--green);filter:brightness(1.08)}.quiet{background:transparent}.talent-card{background:var(--surface);border-radius:var(--radius);box-shadow:0 8px 24px var(--shadow)}.talent-card:hover,.talent-card.selected{background:var(--surface-soft)!important}.meter{background:var(--line)}.hp-meter>i{background:var(--red)}.xp-meter>i{background:var(--gold)}.inline-notice{background:var(--surface-soft);color:var(--gold)}.log{border-color:var(--line)}.log p{color:var(--ink)}.log time,.log.cultivate p{color:var(--muted)}.log.danger p,.log.accident p{color:var(--red)}.log.story p{color:var(--ink)}.scene::after{background:linear-gradient(90deg,var(--scene-fade),transparent 90%)}.scene-caption p{color:var(--ink)}dialog{background:var(--surface);border-color:var(--line);border-radius:var(--radius)}.result-message{background:var(--surface-soft);color:var(--ink)}.result-message.danger,.combat{background:var(--danger-surface)}.combat h3,.combat p{color:var(--ink)}.event{background:var(--surface-soft)}.toast{background:var(--surface-soft);border-color:var(--green);color:var(--ink)}.toast.danger{background:var(--danger-surface)}
.shop-filters{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 20px}.shop-filters button{padding:6px 15px;font-size:calc(12px * var(--text-scale,1))}.shop-filters button[aria-pressed="true"]{background:var(--green);color:var(--bg);border-color:var(--green)}.market-grid,.place-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.shop-item,.place{padding:18px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius);align-items:flex-start;box-shadow:0 4px 14px var(--shadow)}.shop-item>div,.place>div{min-width:0}.shop-item button,.place button{padding:8px 10px;flex-shrink:0;font-size:calc(12px * var(--text-scale,1))}.shop-item h3,.place h3{font-size:calc(16px * var(--text-scale,1))}.shop-item p,.place p{line-height:1.8}.shop-item small{font-size:calc(11px * var(--text-scale,1));color:var(--muted)}.item-kind{display:block;color:var(--green);font-size:calc(10px * var(--text-scale,1));letter-spacing:.08em;margin-bottom:7px}.place .eyebrow{display:block;margin-bottom:8px}.place.locked{opacity:.65}.equipment-slots{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:25px}.gear-slot{padding:18px 12px;background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius);text-align:center}.gear-slot small{display:block;font-size:calc(11px * var(--text-scale,1));color:var(--muted);margin-bottom:8px}.gear-slot strong{font-size:calc(14px * var(--text-scale,1));font-weight:500;color:var(--gold)}.inventory-title{margin:24px 0 12px;color:var(--green)}.empty-state{padding:24px;background:var(--surface);border:1px dashed var(--line);color:var(--muted);text-align:center}.tabs{gap:22px}.confirm-actions .primary{color:var(--bg)}
:root[data-theme="paper"] .tier-0{--tier:#615d50}:root[data-theme="paper"] .tier-1{--tier:#417647}:root[data-theme="paper"] .tier-2{--tier:#3b6399}:root[data-theme="paper"] .tier-3{--tier:#795293}:root[data-theme="paper"] .tier-4{--tier:#a13e34}:root[data-theme="paper"] .tier-5{--tier:#926519}:root[data-theme="paper"] .start,:root[data-theme="paper"] .journey{font-family:'STSong','SimSun',serif}:root[data-theme="paper"] #landscape{opacity:.12}:root[data-theme="night"] h1,:root[data-theme="night"] h2{font-family:var(--font);font-weight:300}:root[data-theme="night"] .journey,:root[data-theme="plum"] .journey{padding:22px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}
button:disabled{opacity:.65}
.breakthrough-panel{margin-top:28px;padding-top:24px;border-top:1px solid var(--line)}.buff-notice{margin-top:14px;color:var(--green);font-size:calc(12px * var(--text-scale,1))}.craft-disciplines{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.craft-disciplines button{padding:15px 8px;text-align:left}.craft-disciplines strong{font-size:calc(16px * var(--text-scale,1));font-weight:400;display:block}.craft-disciplines small{font-size:calc(11px * var(--text-scale,1));color:var(--muted);display:block;margin-top:5px}.craft-disciplines button[aria-pressed="true"]{border-color:var(--green);background:var(--surface-soft)}.recipe-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.recipe-card{padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.recipe-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.recipe-heading h3{font-size:calc(18px * var(--text-scale,1))}.recipe-heading>.gold{font-size:calc(18px * var(--text-scale,1))}.recipe-card>p{color:var(--muted);font-size:calc(12px * var(--text-scale,1));margin-top:10px}.recipe-materials{display:flex;gap:6px;flex-wrap:wrap;margin:15px 0}.recipe-materials span{padding:4px 8px;border:1px solid var(--line);border-radius:var(--radius);font-size:calc(11px * var(--text-scale,1))}.recipe-materials .enough{color:var(--green)}.recipe-materials .missing{color:var(--red)}.recipe-bottom{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:18px}.recipe-bottom small{color:var(--gold);font-size:calc(11px * var(--text-scale,1))}.recipe-bottom button{font-size:calc(12px * var(--text-scale,1));padding:8px 12px}.material-shelf{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.material-chip{display:flex;justify-content:space-between;gap:6px;background:var(--surface-soft);border:1px solid var(--line);border-radius:var(--radius);padding:12px;font-size:calc(12px * var(--text-scale,1))}.material-chip strong{color:var(--gold);font-weight:500}.place p.material-source{color:var(--green);font-size:calc(11px * var(--text-scale,1));margin-top:8px}.seal-actions{margin-top:10px}.log.crafted p{color:var(--green)}.log.craft-failed p{color:var(--red)}
.music-control{position:relative;font-size:calc(12px * var(--text-scale,1))}.music-control summary{list-style:none;cursor:pointer;padding:7px 10px;border:1px solid var(--line);border-radius:var(--radius);white-space:nowrap}.music-control summary::-webkit-details-marker{display:none}.music-control summary:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.music-panel{position:absolute;right:0;top:calc(100% + 10px);width:250px;padding:18px;background:var(--surface);border:1px solid var(--line);box-shadow:0 10px 35px var(--shadow);border-radius:var(--radius);z-index:20;display:grid;gap:10px}.music-panel label{color:var(--muted)}.music-panel input[type="range"]{padding:0;accent-color:var(--green);width:100%}.music-panel p{color:var(--muted);font-size:calc(11px * var(--text-scale,1))}.music-panel output{float:right;color:var(--gold)}
@media(max-width:1050px){.recipe-grid{grid-template-columns:1fr}.material-shelf{grid-template-columns:repeat(2,minmax(0,1fr))}.header-right>span{display:none}}
@media(max-width:600px){.music-control summary{padding:6px 8px;font-size:calc(11px * var(--text-scale,1))}.music-panel{position:fixed;left:50%;right:auto;top:116px;transform:translateX(-50%);width:min(280px,calc(100vw - 34px))}.recipe-card{padding:16px}.craft-disciplines{gap:7px}.craft-disciplines button{padding:12px 8px}.recipe-heading h3{font-size:calc(16px * var(--text-scale,1))}.material-chip{padding:10px;font-size:calc(11px * var(--text-scale,1))}.breakthrough-panel{margin-top:22px;padding-top:20px}}
@media(max-width:1050px){.market-grid,.place-grid{grid-template-columns:1fr}.theme-picker>span{display:none}.header-right{gap:8px}.brand{gap:10px}}
@media(max-width:600px){header{min-height:100px;padding:14px 0;align-items:flex-start}.brand{margin-top:3px}.header-right{max-width:calc(100% - 60px);gap:6px}.theme-picker{flex-basis:100%;justify-content:flex-end}.theme-picker select{font-size:calc(11px * var(--text-scale,1));padding:5px 8px}.tabs{gap:0}.shop-item,.place{padding:16px}.equipment-slots{gap:7px}.gear-slot{padding:14px 5px}.gear-slot strong{font-size:calc(12px * var(--text-scale,1))}:root[data-theme="night"] .journey,:root[data-theme="plum"] .journey{padding:15px}.scene-caption{left:12px}.scene-caption h2{font-size:calc(20px * var(--text-scale,1))}}
@media(min-width:1400px){.start{padding-top:85px}.talent-card{min-height:310px}.dashboard{padding-top:40px}.logs{height:350px}}
@media(max-width:850px){.shell{padding:0 22px}.dashboard{grid-template-columns:220px 1fr;gap:22px}.character{padding-right:18px}.brand span{display:none}.header-right>span{display:none}.talent-card{padding:20px 17px}.actions{grid-template-columns:repeat(2,1fr)}.start-heading{align-items:start}.name-field{width:190px}.tabs{gap:20px}.option{gap:12px}}
@media(max-width:600px){.shell{padding:0 17px}header{height:74px}.brand{font-size:calc(27px * var(--text-scale,1))}.header-right{gap:7px}.quiet{padding:6px 8px}.start{padding:35px 0 25px}.start-heading{display:block;margin-bottom:24px}h1{font-size:calc(33px * var(--text-scale,1))}.start-heading p{font-size:calc(12px * var(--text-scale,1))}.name-field{width:100%;margin-top:20px}.talent-grid{grid-template-columns:1fr;gap:12px}.talent-card{min-height:0;padding:17px 20px;display:grid;grid-template-columns:50px 1fr;column-gap:16px}.talent-symbol{grid-column:1;grid-row:1/5;align-self:center;margin:0;font-size:calc(39px * var(--text-scale,1))}.rarity,.talent-card h2,.talent-desc,.talent-effect{grid-column:2}.talent-card h2{font-size:calc(20px * var(--text-scale,1));margin-top:3px}.talent-desc{margin:4px 0 9px;font-size:calc(11px * var(--text-scale,1))}.talent-effect{padding-top:8px;font-size:calc(11px * var(--text-scale,1))}.start-bottom{flex-wrap:wrap}.start-bottom .primary{width:100%}.realm-strip{gap:9px;font-size:calc(11px * var(--text-scale,1))}.dashboard{display:block;padding:24px 0}.character{border-right:0;padding:0 0 22px;border-bottom:1px solid var(--line);margin-bottom:24px;display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.character-title,.character-talent,.lineage{grid-column:1/3}.realm-name{margin-top:15px}.power{grid-column:2;grid-row:2/4;border:0;padding:12px 0 0;margin:0;text-align:right}.power strong{font-size:calc(25px * var(--text-scale,1))}.quality{margin-bottom:12px}.character .metric{min-width:0}.character-talent{padding-top:13px;margin-top:13px}.character-talent p{font-size:calc(11px * var(--text-scale,1))}.character-talent .rarity{float:right}.lineage{padding-top:10px}.lineage div{display:inline-block;margin-right:12px}.journey-top h2{font-size:calc(22px * var(--text-scale,1))}.tabs{gap:0;justify-content:space-between}.scene{height:115px}.logs{height:300px}.place,.shop-item,.option{gap:10px}.place p,.option p{font-size:calc(11px * var(--text-scale,1))}.place button,.shop-item button{flex-shrink:0;padding:9px 11px;font-size:calc(12px * var(--text-scale,1))}.option button{min-width:91px;padding:9px}.log{grid-template-columns:52px 1fr;gap:8px}footer{font-size:calc(10px * var(--text-scale,1))}dialog{padding:20px}.book-table{font-size:calc(11px * var(--text-scale,1))}.book-table td,.book-table th{padding:10px 5px}.ending{padding:18px}}
.sale-buttons{display:flex;flex-direction:column;gap:8px;flex-shrink:0}.sale-buttons button{font-size:calc(11px * var(--text-scale,1))}

.craft-disciplines{grid-template-columns:repeat(4,minmax(0,1fr))}.tabs{gap:0;justify-content:space-between}.gold-boss{border:1px solid var(--gold);box-shadow:0 0 25px #e8c48125}.gold-boss h3{color:var(--gold)}.array-actions{display:flex;gap:10px;margin-top:15px}.fx-layer{position:fixed;inset:0;pointer-events:none;z-index:99;overflow:hidden;animation:fx-fade .9s forwards}.fx-layer i{position:absolute;left:50%;top:45%;width:6px;height:70px;background:var(--gold);transform:rotate(var(--angle)) translateY(-80px);animation:fx-ray .9s forwards}.fx-battle{background:linear-gradient(125deg,transparent 45%,#b6eac344 49%,transparent 53%)}.fx-battle i{background:var(--green);height:30px}.fx-breakthrough{background:radial-gradient(circle at 50% 45%,#e8c48140,transparent 60%)}.fx-failure{background:#f18d8418}.fx-boss{background:radial-gradient(circle,#e8c48155,transparent)}@keyframes fx-fade{to{opacity:0}}@keyframes fx-ray{to{transform:rotate(var(--angle)) translateY(-230px);opacity:0}}@media(max-width:600px){.craft-disciplines button{padding:10px 5px}.craft-disciplines strong{font-size:calc(14px * var(--text-scale,1))}.header-right{max-width:calc(100% - 65px)}.theme-picker{flex-basis:auto}.music-panel{top:155px}}

.sky-motes{position:fixed;inset:0;pointer-events:none;z-index:-1;overflow:hidden}.sky-motes i{position:absolute;left:var(--x);bottom:-10px;width:3px;height:3px;border-radius:50%;background:var(--gold);opacity:0;animation:sky-rise 18s var(--delay) infinite linear;box-shadow:0 0 8px var(--green)}@keyframes sky-rise{15%,75%{opacity:.55}to{transform:translate(var(--drift),-95vh);opacity:0}}

.duration-options{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin:18px 0}.duration-options button{padding:10px 5px}.duration-options button[aria-pressed="true"]{background:var(--green);color:var(--bg);border-color:var(--green)}.cultivation-estimate{font-size:calc(12px * var(--text-scale,1));color:var(--muted);margin:12px 0 18px}.cultivation-estimate p+p{margin-top:6px}.actions{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:600px){.duration-options{grid-template-columns:repeat(3,minmax(0,1fr))}}

.quick-bar{margin-top:22px;padding:16px 12px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius)}.quick-bar h3{font-size:calc(16px * var(--text-scale,1));margin-bottom:12px;color:var(--green)}.quick-gear{display:flex;justify-content:space-between;gap:8px;font-size:calc(12px * var(--text-scale,1));margin:9px 0}.quick-gear span{color:var(--muted)}.quick-gear strong{font-weight:400;color:var(--gold)}.quick-bar button{display:flex;justify-content:space-between;align-items:center;width:100%;gap:8px;margin:9px 0;padding:10px 8px;font-size:calc(12px * var(--text-scale,1))}.quick-bar small,.quick-bar p{font-size:calc(10px * var(--text-scale,1));color:var(--muted)}.quality-rank{display:block;margin:5px 0}.rank-0{color:var(--muted)}.rank-1{color:var(--green)}.rank-2{color:#81aef3}.rank-3{color:#c792e3}.rank-4{color:var(--gold)}.expedition-panel{margin-bottom:22px;border:1px solid var(--line);border-radius:var(--radius);padding:14px;background:var(--surface)}.expedition-visual{position:relative;height:210px;overflow:hidden}.expedition-visual canvas{width:100%;height:100%}.expedition-caption{position:absolute;left:18px;top:24px;max-width:70%;text-shadow:0 1px 5px #000}.expedition-caption h2{color:#f6e8b8}.expedition-caption p,.expedition-caption .eyebrow{color:#e1eadb;font-size:calc(12px * var(--text-scale,1))}.route-progress{display:flex;gap:8px;margin:16px 0}.route-progress i{height:5px;flex:1;background:var(--line)}.route-progress .done{background:var(--gold)}.route-actions{display:flex;gap:10px;flex-wrap:wrap}.route-actions button{flex:1}.expedition-panel>p{font-size:calc(11px * var(--text-scale,1));margin-top:12px}.scene-battle{border-color:var(--red);box-shadow:0 0 24px #ad493420}.scene-treasure{border-color:var(--gold)}.scene-possession{border-color:#a978d0}.log.death p{color:var(--red)}.market-grid .shop-item:has([data-quick-set]){flex-wrap:wrap}.market-grid .shop-item:has([data-quick-set])>div{flex-basis:100%}@media(min-width:1000px){.character{position:sticky;top:15px;align-self:start;max-height:calc(100vh - 30px);overflow:auto;scrollbar-width:thin}}@media(max-width:600px){.quick-bar{grid-column:1/3;margin-top:16px}.quick-bar{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.quick-bar h3,.quick-bar>p{grid-column:1/3}.quick-gear{display:block}.quick-gear span{display:block}.expedition-caption{left:12px;max-width:80%}.expedition-visual{height:180px}.expedition-caption h2{font-size:calc(23px * var(--text-scale,1))}}

.quality-product{flex-wrap:wrap}.quality-product>div{flex-basis:100%}.quality-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin:12px 0}.quality-options button{padding:8px 3px;font-size:calc(11px * var(--text-scale,1))}.quality-options small{display:block;font-size:calc(9px * var(--text-scale,1))}.quality-options button[aria-pressed="true"]{background:var(--green);color:var(--bg);border-color:var(--green)}

.resource-wallet{margin-top:18px;padding:14px;border:1px solid var(--line);font-size:calc(11px * var(--text-scale,1));grid-column:1/3}.resource-wallet h3{font-size:calc(14px * var(--text-scale,1));margin-bottom:8px}.resource-wallet p{display:flex;justify-content:space-between;gap:8px;margin:5px 0}.trade-controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:16px 0;font-size:calc(12px * var(--text-scale,1))}.trade-controls input{width:85px;padding:8px;margin-left:8px}.trade-controls span{font-size:calc(11px * var(--text-scale,1));color:var(--muted)}.resource-market{padding:15px;border:1px solid var(--line);margin:15px 0;font-size:calc(12px * var(--text-scale,1))}.resource-market button{margin:5px;padding:8px}.resource-market p{margin:8px 0}.tabs button{font-size:calc(12px * var(--text-scale,1))}.quality-product button[data-buy-max]{font-size:calc(11px * var(--text-scale,1))}

:root[data-layout="desktop"]{min-width:1120px}:root[data-layout="desktop"] .shell{min-width:1120px;max-width:1280px;padding:0 40px}:root[data-layout="desktop"] .dashboard{display:grid!important;grid-template-columns:260px minmax(0,1fr)!important;gap:36px;padding:40px 0}:root[data-layout="desktop"] .character{display:block!important;border-right:1px solid var(--line);border-bottom:0;padding:0 28px 0 0;margin:0}:root[data-layout="desktop"] .power{text-align:left;margin:25px 0;border-bottom:1px solid var(--line);padding:18px 0}:root[data-layout="desktop"] .header-right{max-width:none;flex-wrap:wrap}:root[data-layout="desktop"] .quick-bar{display:block}:root[data-layout="desktop"] .quick-gear{display:flex}:root[data-layout="desktop"] .scene{height:140px}:root[data-layout="desktop"] .market-grid,:root[data-layout="desktop"] .place-grid,:root[data-layout="desktop"] .recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}:root[data-layout="desktop"] .duration-options{grid-template-columns:repeat(6,minmax(0,1fr))}:root[data-layout="desktop"] .actions{grid-template-columns:repeat(3,minmax(0,1fr))}:root[data-layout="desktop"] .tabs{gap:12px;justify-content:space-between}:root[data-layout="desktop"] .music-panel{position:absolute;left:auto;right:0;top:calc(100% + 10px);transform:none}:root[data-layout="desktop"] .theme-picker{flex-basis:auto}
header{height:auto}

:root{--text-scale:1}.afk-panel,.medicine-panel{padding:16px;margin:16px 0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-soft)}.afk-panel{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.afk-panel>div{flex:1;min-width:180px}.afk-panel p,.medicine-panel p{font-size:calc(12px * var(--text-scale,1));color:var(--muted);margin-top:8px}.afk-panel #afk-status{color:var(--green)}.medicine-panel h3{color:var(--gold)}.medicine-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.medicine-actions button{font-size:calc(12px * var(--text-scale,1))}.option{flex-wrap:wrap}.option>div{flex:1;min-width:180px}.scene{height:calc(140px * var(--text-scale,1))!important}.scene-caption{right:12px}.shop-item,.recipe-card,.quick-bar,.stat-row,.quality-options button{overflow-wrap:anywhere}.header-right{min-width:0}.tabs{flex-wrap:wrap}.quality-options small{overflow-wrap:anywhere}@media(max-width:600px){.scene-caption h2{font-size:calc(18px * var(--text-scale,1))}.scene-caption p{font-size:calc(11px * var(--text-scale,1))}.afk-panel{align-items:stretch}.afk-panel>button{width:100%}.quick-bar button{flex-wrap:wrap}.stat-row{flex-wrap:wrap}.book-table{display:block;overflow:auto}.scene-caption{top:18px}}

.origin-heading{margin-top:28px}.origin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.origin-card{text-align:left;padding:20px;background:var(--surface)}.origin-card.selected{border-color:var(--gold);background:var(--surface-soft)}.origin-card p{font-size:calc(12px * var(--text-scale,1));color:var(--muted);margin-top:8px}.start .talent-grid{margin-top:18px}.origin-story{max-width:800px;margin:45px auto;padding:30px;border:1px solid var(--line);background:var(--surface);border-radius:var(--radius)}.origin-story h1{font-size:calc(32px * var(--text-scale,1))}.origin-narrative{font-size:calc(16px * var(--text-scale,1));line-height:2;margin:24px 0;color:var(--ink)}.origin-talents{color:var(--gold);font-size:calc(12px * var(--text-scale,1))}.origin-choices{display:grid;gap:12px;margin:24px 0}.origin-choices button{text-align:left;white-space:normal}.origin-story .logs{margin-top:24px;height:180px}.talent-card .talent-effect{line-height:1.9}@media(max-width:600px){.origin-grid{grid-template-columns:1fr}.origin-story{margin:20px auto;padding:18px}.origin-story h1{font-size:calc(25px * var(--text-scale,1))}.start .talent-card{min-height:240px}}

.growth-controls,.save-actions{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}.growth-controls label{display:grid;gap:6px;flex:1;min-width:140px;font-size:calc(12px * var(--text-scale,1))}.growth-table-wrap{overflow:auto}.growth-table{min-width:590px}.growth-table td{font-variant-numeric:tabular-nums}.growth-table small{display:block;color:var(--muted);font-size:calc(10px * var(--text-scale,1))}.save-file-label{display:grid;gap:10px;margin-top:20px}.save-file-label input{min-width:0}

/* Viewport workspace on computers; touch devices retain their scrolling layout. */
.character-details{margin-top:12px;grid-column:1/3}.character-details>summary,.practice-notes>summary,.journal>summary{cursor:pointer;color:var(--muted);font-size:calc(12px * var(--text-scale,1))}.character-details .character-talent{margin-top:8px;padding-top:8px}.character-details .resource-wallet{margin-top:8px}.practice-notes{margin:10px 0}.practice-notes .inline-notice{margin:8px 0}.journal{margin-top:26px}.journal>summary{list-style:disclosure-closed}.journal[open]>summary{list-style:disclosure-open}.journal .logs{margin-top:8px}.encounter-area:empty{display:none}
@media(min-width:1000px) and (min-height:600px) and (hover:hover) and (pointer:fine){
 body:has(.dashboard){height:100dvh;overflow:hidden}
 body:has(.dashboard) .shell{max-width:1680px;min-width:0;height:100dvh;padding:0 20px;display:grid;grid-template-rows:auto minmax(0,1fr) auto}
 body:has(.dashboard) header{min-height:64px;padding:8px 0;gap:14px}body:has(.dashboard) .brand{font-size:calc(26px * var(--text-scale,1));gap:10px}body:has(.dashboard) .brand span{display:none}
 body:has(.dashboard) .header-right{max-width:none;gap:6px;flex-wrap:wrap}body:has(.dashboard) .header-right>span{display:none}body:has(.dashboard) .theme-picker{flex-basis:auto}body:has(.dashboard) .theme-picker>span{display:none}body:has(.dashboard) .theme-picker select,body:has(.dashboard) .quiet,body:has(.dashboard) .music-control summary{font-size:calc(12px * var(--text-scale,1));padding:5px 8px}
 body:has(.dashboard) #app{min-height:0;overflow:hidden}body:has(.dashboard) footer{padding:4px 0;font-size:calc(10px * var(--text-scale,1))}
 body:has(.dashboard) .dashboard{height:100%;grid-template-columns:250px minmax(0,1fr)!important;gap:20px;padding:12px 0!important;min-height:0;align-items:stretch}
 body:has(.dashboard) .character{position:static;align-self:stretch;max-height:none;min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 14px 0 0!important;scrollbar-width:thin}
 .character h2{font-size:calc(22px * var(--text-scale,1))}.character .eyebrow{margin:0 0 2px;font-size:calc(10px * var(--text-scale,1))}.character .realm-name{margin:8px 0 0;font-size:calc(16px * var(--text-scale,1))}.character .quality{margin-bottom:6px}.character .power{padding:5px 0!important;margin:0 0 6px!important}.character .power strong{font-size:calc(24px * var(--text-scale,1))}.character .power small{margin-right:10px}.character .stat-row{margin:5px 0;font-size:calc(12px * var(--text-scale,1))}.character .metric{margin:6px 0}.character .quick-bar{margin:12px 0 0;padding:9px}.character .quick-bar h3{margin-bottom:6px;font-size:calc(14px * var(--text-scale,1))}.character .quick-gear{margin:5px 0;gap:4px}.character .quick-gear strong{overflow-wrap:anywhere}.character .quick-bar button{margin:5px 0;padding:6px;font-size:calc(11px * var(--text-scale,1))}.character-details{margin-top:8px}
 body:has(.dashboard) .journey{display:flex;flex-direction:column;min-height:0;overflow:hidden;padding:0!important;border:0;background:transparent}
 .journey-top{order:0;margin-bottom:4px;flex:none}.journey-top h2{font-size:calc(20px * var(--text-scale,1))}.journey>.tabs{order:1;flex:none;gap:12px;margin:0 0 10px;justify-content:space-between}.journey>.tabs button{padding:7px 0}
 .journey>.encounter-area{order:2;min-height:0;overflow:auto;scrollbar-width:thin;max-height:52%;flex-shrink:1}.journey[data-encounter="true"][data-view="explore"]>.encounter-area{flex:1;max-height:none}.journey[data-encounter="true"][data-view="explore"]>#tab-content{display:none}
 .journey>#tab-content{order:3;flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;padding-right:4px;scroll-padding:10px}
 .journey[data-view="practice"] #tab-content{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;align-content:start}
 .journey .breakthrough-panel{margin:0;padding:0 0 0 16px;border-top:0;border-left:1px solid var(--line)}.journey .cultivation-panel{min-width:0}
 .journey .afk-panel{margin:0 0 10px;padding:10px;gap:8px}.journey .afk-panel>div{min-width:130px}.journey .afk-panel p{margin-top:4px}.journey .afk-panel button{padding:7px 10px}.journey .practice-notes{margin:6px 0}
 .journey .scene{height:clamp(60px,10dvh,100px)!important;margin-bottom:10px}.journey .scene-caption{top:12px;left:12px}.journey .scene-caption h2{font-size:calc(18px * var(--text-scale,1))}.journey .scene-caption p{font-size:calc(11px * var(--text-scale,1))}
 .journey .duration-options{gap:5px;margin:10px 0}.journey .duration-options button{padding:7px 2px;font-size:calc(12px * var(--text-scale,1))}.journey .cultivation-estimate{margin:8px 0;font-size:calc(12px * var(--text-scale,1))}.journey .cultivation-estimate p+p{margin-top:2px}.journey .actions{gap:6px;margin-bottom:8px}.journey .actions button{padding:8px 4px;font-size:calc(12px * var(--text-scale,1))}.journey .buff-notice{margin-top:6px;font-size:calc(11px * var(--text-scale,1))}
 .journey .medicine-panel{padding:10px;margin:0 0 12px}.journey .medicine-panel p{margin-top:4px}.journey .medicine-actions{margin-top:6px;gap:5px}.journey .medicine-actions button{padding:6px 8px}.journey .subheading{margin-bottom:10px}.journey .subheading h2{font-size:calc(22px * var(--text-scale,1))}.journey .subheading p{margin-top:4px}.journey .option{padding:9px 0;gap:8px}.journey .option>div{min-width:150px}.journey .option button{min-width:90px;padding:8px}.journey .inline-notice{padding:8px 10px;margin:8px 0}
 .journey>.journal{order:4;flex:none;margin-top:8px}.journey>.journal>summary{padding-bottom:4px}.journey>.journal .logs{height:clamp(44px,8dvh,90px);margin-top:4px}.journey .log{padding:4px 0}
 .journey .expedition-panel{margin-bottom:10px;padding:8px}.journey .expedition-visual{height:clamp(60px,12dvh,110px)}.journey .expedition-caption{top:8px}.journey .route-actions button{padding:7px 10px}.journey .expedition-panel>p{margin-top:6px}.journey .combat,.journey .event{padding:12px;margin-bottom:10px}.journey .combat-actions button{padding:7px 10px}.journey .combat .meter{margin:8px 0}
 .journey .market-grid,.journey .place-grid,.journey .recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.journey .shop-filters,.journey .craft-disciplines{gap:6px}.journey .recipe-card{padding:14px}.journey .shop-item,.journey .place{padding:12px}
}

@media(min-width:1000px) and (min-height:600px) and (hover:hover) and (pointer:fine){.journey .option{padding:7px 0}.journey .option h3{font-size:calc(14px * var(--text-scale,1))}.journey .option p{margin:2px 0;font-size:calc(11px * var(--text-scale,1));line-height:1.45}.journey .option .cost{line-height:1.45}.journey .breakthrough-panel>.subheading p{font-size:calc(11px * var(--text-scale,1));line-height:1.45}.journey .medicine-panel{padding:8px}.journey .medicine-panel h3{font-size:calc(14px * var(--text-scale,1))}.journey .medicine-panel p{line-height:1.45}.journey .medicine-actions button{font-size:calc(11px * var(--text-scale,1));padding:5px 6px}}

.status-resources{display:contents}@media(min-width:1000px) and (min-height:600px) and (hover:hover) and (pointer:fine){.character .status-resources{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 10px;margin:4px 0}.character .status-resources>.metric{display:contents}.character .status-resources .stat-row{font-size:calc(11px * var(--text-scale,1));gap:4px;margin:4px 0}.character .power{display:flex;align-items:center;gap:10px}.character .power small{margin-right:0}.character .quick-gear{margin:4px 0}.character .quick-bar button{margin:4px 0;padding:5px;gap:4px}.character .quick-bar>p{display:none}}

@media(min-width:1000px) and (min-height:600px) and (hover:hover) and (pointer:fine){.journey>.journal .logs{height:clamp(36px,6dvh,70px)}}
@media(min-width:1000px) and (min-height:600px) and (max-height:700px) and (hover:hover) and (pointer:fine){.journey>.journal .logs{height:24px}.journey .scene{height:52px!important}.journey .scene-caption p{display:none}.journey .afk-panel{padding:7px;margin-bottom:6px}}
@media(min-width:1000px) and (min-height:600px) and (hover:hover) and (pointer:fine){:root[data-layout="desktop"]:has(.dashboard){min-width:0}:root[data-layout="desktop"]:has(.dashboard) .shell{min-width:0;max-width:1680px;padding:0 20px}:root[data-layout="desktop"]:has(.dashboard) .dashboard{grid-template-columns:250px minmax(0,1fr)!important;gap:20px}}

/* Space inside panels keeps text clear of borders, including rounded themes. */
.journey{min-width:0}.journey-top,.journey>.tabs,.journal>summary{padding-left:8px;padding-right:8px}.journal .logs{padding:4px 8px}.log{padding:6px 4px}.option{padding:12px 10px;gap:12px}.breakthrough-panel{padding-left:10px;padding-right:10px}.afk-panel,.medicine-panel,.expedition-panel,.quick-bar{padding:14px}.combat,.event{padding:16px}.practice-notes{padding:2px 4px}.subheading{padding:2px 4px}.buff-notice,.cultivation-estimate{padding-left:6px;padding-right:6px}.resource-wallet{padding:14px}.combat-actions,.medicine-actions{row-gap:8px}.encounter-area{padding:2px}.expedition-panel>p{padding:0 2px}.journal{padding:0 2px}.scene-caption{right:16px}
@media(min-width:1000px) and (min-height:600px) and (hover:hover) and (pointer:fine){
 body:has(.dashboard) .journey{padding:8px 10px!important;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}
 .journey>.tabs{margin-bottom:10px}.journey>#tab-content{padding:4px 6px 6px;scroll-padding:12px}.journey[data-view="practice"] #tab-content{gap:12px}.journey .breakthrough-panel{padding:0 0 0 12px}.journey .afk-panel,.journey .medicine-panel{padding:12px;margin-bottom:12px}.journey .option{padding:8px 8px;margin:3px 0}.journey .subheading{padding:2px 4px}.journey .expedition-panel{padding:12px;margin-bottom:12px}.journey .combat,.journey .event{padding:14px;margin-bottom:12px}.journey .quick-bar{padding:12px}.journey .scene{margin:2px 0 12px}.journey .journal .logs{padding:4px 8px}.journey .log{padding:5px 4px}.journey .journey-top{margin-bottom:6px}.journey .shop-item,.journey .place,.journey .recipe-card{padding:14px}.journey .expedition-caption{left:16px;top:10px}.journey .practice-notes{margin:5px 0}
}
.hurt-overlay{position:fixed;inset:0;z-index:120;pointer-events:none;background:radial-gradient(ellipse at center,rgba(170,16,26,.04) 25%,rgba(176,15,28,.28) 70%,rgba(132,0,16,.68) 100%);box-shadow:inset 0 0 65px #e6304066;animation:hurt-flash .7s ease-out forwards}.hurt-dialog{box-shadow:0 0 24px #e6304066;border-color:#d66570}
@keyframes hurt-flash{0%{opacity:.85}25%{opacity:1}100%{opacity:0}}
.ambient-click{position:fixed;width:88px;height:88px;margin:-44px 0 0 -44px;z-index:110;pointer-events:none;contain:layout style;animation:ambient-fade 1.2s ease-out forwards}.ambient-click i{position:absolute;left:50%;top:50%;pointer-events:none;--angle:0deg;--delay:0s}
.ambient-lotus i{width:14px;height:32px;margin:-16px 0 0 -7px;border-radius:80% 20% 75% 25%;background:linear-gradient(#f3bcdecc,#c183da44);border:1px solid #f6cde288;transform-origin:center;animation:lotus-bloom 1s var(--delay) ease-out both}.ambient-lotus::after{content:'';position:absolute;left:38px;top:38px;width:12px;height:12px;border-radius:50%;background:#f2d591;box-shadow:0 0 12px #f2d59188}
.ambient-rain i{width:12px;height:12px;margin:-6px;border:1px solid #91d4eee0;border-radius:50%;animation:rain-ring .9s var(--delay) ease-out both}.ambient-rain::before{content:'';position:absolute;left:40px;top:18px;width:8px;height:12px;border-radius:70% 30% 65% 35%;background:#b5e9ffcc;animation:rain-drop .35s ease-in forwards}
.ambient-stars i{width:9px;height:9px;margin:-5px;clip-path:polygon(50% 0,61% 38%,100% 50%,61% 62%,50% 100%,39% 62%,0 50%,39% 38%);background:#f5d58fe6;animation:star-spread 1s var(--delay) ease-out both}
.ambient-leaves i{width:10px;height:20px;margin:-10px -5px;border-radius:90% 0 90% 0;background:linear-gradient(#a8ddbccc,#70bda955);border:1px solid #b4e5cb66;animation:leaf-spread 1s var(--delay) ease-out both}
@keyframes ambient-fade{0%,50%{opacity:1}100%{opacity:0}}@keyframes lotus-bloom{from{transform:rotate(var(--angle)) translateY(0) scale(.12)}to{transform:rotate(var(--angle)) translateY(-18px) scale(1)}}@keyframes rain-ring{from{transform:scale(.2);opacity:.8}to{transform:scale(5);opacity:0}}@keyframes rain-drop{to{transform:translateY(26px);opacity:0}}@keyframes star-spread{from{transform:rotate(var(--angle)) translateY(0) scale(.2)}to{transform:rotate(var(--angle)) translateY(-38px) scale(1);opacity:0}}@keyframes leaf-spread{from{transform:rotate(var(--angle)) translateY(0) scale(.2)}to{transform:rotate(var(--angle)) translateY(-30px) rotate(50deg);opacity:0}}
@media(prefers-reduced-motion:reduce){.hurt-overlay{opacity:.25}.ambient-click{width:24px;height:24px;margin:-12px;background:#b5d7c533;border:1px solid var(--green);border-radius:50%;opacity:.5}.ambient-click i,.ambient-click::before,.ambient-click::after{display:none}}

.journal-latest{display:none}.journal>summary{gap:12px}.journal>summary>small{margin-left:auto;white-space:nowrap}@media(min-width:1000px) and (min-height:600px) and (hover:hover) and (pointer:fine){.journal-latest{display:block;flex:1;min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--muted);font-size:calc(11px * var(--text-scale,1))}.journey .breakthrough-panel>.subheading{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.journey .breakthrough-panel>.subheading h2{flex-shrink:0}.journey .breakthrough-panel>.subheading p{flex:1;min-width:160px;margin:0}}

.age-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:24px 0}.age-options button{text-align:left;padding:16px}.age-options button[aria-pressed=true]{border-color:var(--gold);background:var(--surface-soft)}.age-options p,.origin-card small{font-size:calc(12px * var(--text-scale,1));color:var(--muted)}.birth-points,.invent-controls{display:flex;gap:14px;flex-wrap:wrap;margin:18px 0}.birth-points label,.invent-controls label{display:grid;gap:6px;flex:1;min-width:120px}.invent-controls button{align-self:end}.invent-panel,.refinement-panel{border-top:1px solid var(--line);padding:18px 4px;margin-top:18px}.refinement-panel>p,.invent-panel>p{font-size:calc(12px * var(--text-scale,1));color:var(--muted);margin:10px 0 16px}.job-actions{display:flex;gap:8px;flex-wrap:wrap}.equipment-slots{grid-template-columns:repeat(auto-fit,minmax(100px,1fr))}.asset-grid{display:grid;gap:12px}.asset-row{padding:14px;border:1px solid var(--line);border-radius:var(--radius)}.asset-row input{margin:8px 0}.asset-row h3{margin-top:0}.asset-row small{display:block;overflow-wrap:anywhere}.custom-background{position:fixed;inset:0;background-size:cover;background-position:center;z-index:-2;pointer-events:none}.custom-background::after{content:'';position:absolute;inset:0;background:var(--bg);opacity:.42}:root[data-custom-background=true] #landscape{opacity:0}:root[data-custom-background=true] body{background:transparent}@media(max-width:600px){.age-options{grid-template-columns:1fr;gap:8px}.age-options button{padding:12px}.invent-controls button{width:100%}}

.asset-row input{display:block;width:100%;max-width:100%;min-width:0}.custom-background{z-index:-1} :root[data-custom-background=true] #landscape{visibility:hidden}
/* Alpha is applied only to paint colors, never to text or a parent opacity. */
:root{--panel-opacity:100%;--nav-font:'KaiTi','STKaiti','FangSong','SimSun',serif}
:root[data-theme] :is(.start,.origin-story,.journey,.character,.resource-wallet,.quick-bar,.afk-panel,.medicine-panel,.combat,.event,.expedition-panel,.shop-item,.recipe-card,.place,.option,.gear-slot,.material-chip,.inline-notice,.buff-notice,.empty-state,.talent-card,.origin-card,.age-options button,.result-message,.asset-row,.invent-panel,.refinement-panel,.logs,dialog,.music-panel){background:color-mix(in srgb,var(--surface) var(--panel-opacity),transparent)!important}
:root[data-theme] :is(.quick-bar,.afk-panel,.medicine-panel,.gear-slot,.material-chip,.shop-item,.recipe-card,.talent-card,.origin-card,.age-options button,.inline-notice){background:color-mix(in srgb,var(--surface-soft) var(--panel-opacity),transparent)!important}
:root[data-theme] :is(button,input,select){background-color:color-mix(in srgb,var(--button) var(--panel-opacity),transparent)}
:root[data-theme] :is(button:hover:not(:disabled),button[aria-pressed=true]){background-color:color-mix(in srgb,var(--hover) var(--panel-opacity),transparent)!important}
.tabs{gap:4px}.tabs button,.journey .tabs button{font-family:var(--nav-font);font-size:calc(18px * var(--text-scale,1));font-weight:600;letter-spacing:.16em;line-height:1.35;padding:9px 7px;position:relative;min-width:0;overflow-wrap:anywhere;text-shadow:0 1px 6px color-mix(in srgb,var(--gold) 12%,transparent)}.tabs button.active::after{content:'';position:absolute;bottom:0;left:calc(50% - 3px);width:6px;height:6px;background:var(--gold);transform:rotate(45deg);border-radius:1px}.tabs button.active{color:var(--gold)}
.appearance-form{display:grid;gap:12px}.appearance-form label{display:grid;gap:6px}.appearance-form select{width:100%}.nav-label-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.nav-label-fields input{min-width:0}.appearance-form input[type=file]{min-width:0;max-width:100%;font-size:calc(12px * var(--text-scale,1))}.invent-traits,.invent-materials{display:grid;gap:12px}.invent-trait,.invent-materials>div{display:grid;grid-template-columns:1fr 1fr;gap:12px}.invent-trait label,.invent-materials label{display:grid;gap:5px;min-width:0}.invent-trait :is(input,select),.invent-materials :is(input,select){width:100%;min-width:0}.invent-trait small{font-size:calc(11px * var(--text-scale,1));color:var(--muted)}#invent-summary{padding:12px;border:1px solid var(--line);border-radius:var(--radius);font-size:calc(13px * var(--text-scale,1))}.invent-panel h3{margin:16px 0 8px}.tabs button{flex:1}
@media(max-width:600px){.nav-label-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.tabs button,.journey .tabs button{font-size:calc(16px * var(--text-scale,1));letter-spacing:.05em;padding:8px 3px}.invent-trait,.invent-materials>div{grid-template-columns:1fr 1fr;gap:8px}}@media(max-width:380px){.tabs button,.journey .tabs button{font-size:calc(15px * var(--text-scale,1))}}

button:disabled{opacity:1;color:var(--muted)}
.invent-controls :is(input,select){width:100%;max-width:100%;min-width:0}
@media(max-width:600px){.music-panel{position:fixed;left:15px;right:15px;top:clamp(80px,18vh,160px);width:auto;max-width:calc(100vw - 30px)}}
@media(min-width:1000px) and (min-height:600px) and (max-height:700px) and (hover:hover) and (pointer:fine){.journey .tabs button{padding-top:5px;padding-bottom:5px;line-height:1.2}.journey .scene{height:36px!important;margin-bottom:8px}.journey .afk-panel,.journey .medicine-panel{padding:8px;margin-bottom:8px}.journey .scene-caption{top:3px}.journey .scene-caption h2{font-size:calc(16px * var(--text-scale,1))}}
/* Give opening text a real inset from the panel, with separate card groups. */
.start{max-width:1120px;margin:30px auto;padding:36px 36px 38px;border:1px solid var(--line);border-radius:10px}.start-heading{gap:32px;margin-bottom:30px}.start-heading p{max-width:540px;line-height:2}.start .age-options{gap:20px;margin:28px 0 32px}.start .age-options button{padding:20px 22px}.start .age-options p{margin-top:8px;line-height:1.85}.start .section-title{padding:0 4px 12px;margin-top:26px;gap:16px}.start .talent-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:22px}.start .talent-card{padding:28px 26px;min-height:300px}.start .talent-desc{line-height:1.9;margin-top:12px;margin-bottom:22px}.start .origin-heading{margin-top:36px}.start .origin-grid{gap:20px;margin-top:22px}.start .origin-card{padding:24px}.start .origin-card p{line-height:1.9;margin-top:10px;margin-bottom:12px}.start .origin-card small{line-height:1.8}.start-bottom{margin-top:32px}.start .realm-strip{padding-top:26px;margin-top:8px}.start .talent-card h2{overflow-wrap:anywhere}
@media(max-width:850px){.start{padding:28px 24px}.start .talent-grid{gap:18px}.start .talent-card{padding:24px 20px}.start .age-options{gap:14px}.start .age-options button{padding:18px 16px}}
@media(max-width:600px){.start{margin:20px auto;padding:24px 20px 28px}.start-heading{margin-bottom:24px}.start .age-options{grid-template-columns:1fr;gap:14px;margin:26px 0 30px}.start .age-options button{padding:18px}.start .talent-grid{grid-template-columns:1fr;gap:18px;margin-top:18px}.start .talent-card{padding:22px 18px;min-height:0;grid-template-columns:42px minmax(0,1fr);column-gap:14px}.start .talent-desc{margin:8px 0 16px}.start .talent-effect{padding-top:12px}.start .origin-grid{gap:16px}.start .origin-card{padding:20px}.start .section-title{align-items:flex-start;flex-wrap:wrap;row-gap:8px}.start .name-field{min-width:0}.start .rarity-key{gap:10px}.start .realm-strip{gap:12px}.start .start-bottom{gap:22px}}
@media(max-width:380px){.start{padding-left:16px;padding-right:16px}.start .talent-card{padding:20px 16px;column-gap:10px}.start h1{font-size:calc(29px * var(--text-scale,1))}}
/* v2.12 trading and shared quick preparation */
.catalog-controls{display:flex;flex-direction:column;gap:12px;margin:18px 0 22px;padding:14px;border:1px solid var(--line);border-radius:6px}.catalog-controls .shop-filters{margin:0;flex-wrap:wrap;gap:8px}.realm-filter{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:calc(12px * var(--text-scale,1))}.realm-filter select{max-width:190px;padding:8px}.market-wallet{display:flex;flex-wrap:wrap;gap:10px 22px;margin:14px 0}.market-wallet span{font-size:calc(12px * var(--text-scale,1));color:var(--muted)}.market-wallet strong{color:var(--gold);margin-left:6px}.trade-controls{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:14px;margin:14px 0;border:1px solid var(--line);border-radius:6px}.trade-controls label{display:flex;gap:12px;align-items:center}.trade-controls input{width:100px;min-width:70px}.trade-controls small{flex-basis:100%;color:var(--muted)}.quantity-presets{display:flex;gap:8px;flex-wrap:wrap}.quantity-presets button{padding:7px 12px}.quantity-presets [aria-pressed=true]{border-color:var(--gold);color:var(--gold)}.trade-total{line-height:1.8}.market-grid .shop-item{min-width:0;align-items:stretch;flex-wrap:wrap;gap:10px}.market-grid .shop-item>div:first-child{width:100%;min-width:0}.market-grid .shop-item h3{overflow-wrap:anywhere}.market-grid .quality-options{display:flex;flex-wrap:wrap;gap:6px}.market-grid .quality-options button{flex:1 1 66px;min-width:0;max-width:100%}.market-grid .quality-options small{font-size:calc(10px * var(--text-scale,1));overflow-wrap:anywhere}.market-grid .sale-buttons{display:flex;flex-wrap:wrap;gap:8px}.market-grid .material-chip{padding:16px;align-items:start}.market-grid .material-chip h3{font-size:calc(14px * var(--text-scale,1))}.quick-config-list{display:flex;flex-direction:column;gap:14px;margin-top:20px}.quick-config-row{display:grid;grid-template-columns:minmax(0,1fr) 110px auto auto;gap:14px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:6px}.quick-config-row h3{overflow-wrap:anywhere}.quick-config-row label,.quick-config-row small{color:var(--muted);font-size:calc(12px * var(--text-scale,1))}.quick-config-row input{padding:8px;margin-top:6px}.quick-bar>button{overflow-wrap:anywhere}.quick-bar button span,.quick-bar button small{display:block}.quick-bar button small{color:var(--muted)}
@media(max-width:700px){.quick-config-row{grid-template-columns:minmax(0,1fr) 100px}.quick-config-row button{min-width:0;padding:9px}.catalog-controls{padding:12px}.trade-controls label{flex-wrap:wrap}.market-wallet{gap:8px 14px}.trade-controls{padding:12px;gap:10px}.quantity-presets button{padding:7px 10px}}
@media(min-width:1000px){.journey[data-view="shop"] .catalog-controls{display:grid;grid-template-columns:minmax(0,1fr) 140px;gap:8px;margin:12px 0;padding:10px}.journey[data-view="shop"] .catalog-controls>.shop-filters{grid-column:1}.journey[data-view="shop"] .realm-filter{grid-column:2;grid-row:1 / span 2;flex-direction:column;align-self:center;gap:6px}.journey[data-view="shop"] .trade-controls{padding:10px;margin:10px 0;gap:8px}.journey[data-view="shop"] .trade-controls small{flex-basis:auto}.journey[data-view="shop"] .trade-controls input{padding:7px 10px;width:84px}.journey[data-view="shop"] .resource-market{padding:8px 12px;margin:10px 0}.journey[data-view="shop"] .market-wallet{margin:10px 0}.journey[data-view="shop"] .subheading{margin-bottom:12px}}

/* Study controls */
.study-links{display:flex;flex-direction:column;gap:10px;min-width:0}.study-links button{width:100%}.spell-status{margin:14px 0;color:var(--gold);font-size:calc(13px * var(--text-scale,1))}.spell-actions button{min-width:0;white-space:normal}.spell-actions small{display:block;margin-top:5px;opacity:.8}.spell-actions{flex-wrap:wrap;margin:12px 0}.study-links small{white-space:normal}

.actions{align-items:start}.study-links{gap:6px}.study-links button{height:auto;min-height:0}
@media(min-width:900px) and (max-height:650px){.journey .study-links button{padding:6px 4px}.journey .study-links small{display:none}}

.recipe-card .item-kind[class*="tier-"]{color:var(--tier)}

/* Character panel spacing, including room beside the scrollbar. */
.character{overflow-wrap:anywhere}.character-details{padding:10px 12px}.character-details summary{line-height:1.55}.character .stat-row{gap:8px;flex-wrap:wrap}.recipe-bottom{flex-wrap:wrap;gap:10px}
@media(min-width:1000px) and (min-height:600px) and (hover:hover) and (pointer:fine){body:has(.dashboard) .character{padding:12px 14px 12px 12px!important;scrollbar-gutter:stable;border:1px solid var(--line);border-radius:12px}body:has(.dashboard) .dashboard{grid-template-columns:284px minmax(0,1fr)!important}:root[data-layout="desktop"]:has(.dashboard) .dashboard{grid-template-columns:284px minmax(0,1fr)!important}}
@media(min-width:1000px) and (max-height:650px){body:has(.dashboard) .character{padding-top:8px!important;padding-bottom:8px!important}}
@media(max-width:999px){.character{padding:12px;border:1px solid var(--line);border-radius:12px}}

/* Custom time settings */
.time-controls{padding:12px 14px;line-height:1.75}.time-controls summary{cursor:pointer}.time-setting{padding:12px 0;margin:8px 0;border-bottom:1px solid var(--line)}.time-setting h3{margin:0 0 10px;font-size:calc(14px * var(--text-scale,1))}.time-fields{display:flex;flex-wrap:wrap;gap:10px;align-items:end}.time-fields label{display:flex;flex-direction:column;gap:5px;font-size:calc(12px * var(--text-scale,1));color:var(--muted)}.time-fields input{width:104px;max-width:100%;padding:8px}.time-fields select{padding:8px;max-width:100%}.time-fields button{padding:9px 12px}.time-setting p,.time-controls>p{margin:10px 0;overflow-wrap:anywhere;font-size:calc(12px * var(--text-scale,1))}.spell-progress{color:var(--gold);line-height:1.8}@media(max-width:600px){.time-controls{padding:12px}.time-fields{gap:12px}.time-fields button{flex:1 1 100px}.time-fields label{flex:1 1 90px}.time-fields input{width:100%;min-width:0}}
/* Keep primary actions visible on short desktop displays. */
@media (min-width:1000px) and (max-height:650px){
 .journey[data-view="practice"] .time-controls{margin:2px 0;padding:2px 4px}
 .journey[data-view="practice"] .time-controls[open]{max-height:76px;overflow:auto}
 .journey[data-view="practice"] .time-setting{padding:4px 0;margin:2px 0}
 .journey[data-view="practice"] .time-controls>p{display:none}
 .journey[data-view="practice"] .afk-panel{padding:8px;margin-bottom:8px}
 .journey[data-view="practice"] .afk-panel .practice-notes{margin:2px 0}
 .journey[data-view="practice"] .scene{height:36px!important;margin-bottom:8px}
 .journey[data-view="practice"] .scene-caption{top:7px}
 .journey[data-view="practice"] .duration-options{margin:6px 0}
 .journey[data-view="practice"] .cultivation-estimate{margin:4px 0}
}
/* Storage ring keeps the main navigation focused on places. */
.storage-ring-button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;margin:16px 0 0;padding:12px 14px;border-color:var(--green);background:var(--surface-soft);grid-column:1/3}
.storage-ring-button span{font-family:var(--nav-font);font-size:calc(17px * var(--text-scale,1));color:var(--gold)}
.storage-ring-button small{font-size:calc(11px * var(--text-scale,1));color:var(--muted)}
.quick-bar .quick-gear{align-items:center;gap:8px;flex-wrap:wrap}
.quick-bar .quick-gear strong{flex:1;min-width:0;text-align:right}
.quick-bar .quick-gear .unequip-button{flex:0 0 auto;width:auto;margin:0;padding:3px 6px;font-size:calc(10px * var(--text-scale,1))}
.item-introduction{color:var(--muted);line-height:1.8;font-size:calc(12px * var(--text-scale,1));overflow-wrap:anywhere}
.quick-config-row .item-introduction{margin:8px 0 0}
dialog.storage-dialog{width:min(1100px,calc(100vw - 32px));max-height:90dvh;padding:24px}
dialog.storage-dialog[open]{display:flex;flex-direction:column;overflow:hidden}
.storage-dialog>.modal-top{flex:none;margin-bottom:14px;padding:0 4px}
[data-storage-content]{min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable;padding:4px 8px 12px}
.storage-dialog .market-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.storage-dialog .subheading h2{font-size:calc(20px * var(--text-scale,1))}
@media(min-width:1000px) and (min-height:600px){.character .storage-ring-button{margin-top:8px;padding:7px 9px}.character .storage-ring-button span{font-size:calc(15px * var(--text-scale,1))}.character .storage-ring-button small{font-size:calc(10px * var(--text-scale,1))}.character .quick-bar{margin-top:8px}}
@media(max-width:900px){.storage-dialog .market-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){dialog.storage-dialog{padding:16px;width:calc(100vw - 20px)}[data-storage-content]{padding:4px 4px 10px}.storage-dialog .market-grid{grid-template-columns:1fr}.quick-bar .quick-gear{display:flex;grid-column:1/3}.quick-bar .quick-gear span{flex:none}.storage-ring-button{margin-top:14px}.storage-ring-button small{max-width:60%;text-align:right}}
@media(min-width:1000px) and (min-height:600px){.character .quick-bar .quick-gear{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:4px;align-items:center;margin:4px 0}.character .quick-bar .quick-gear strong{font-size:calc(11px * var(--text-scale,1))}.character .quick-bar .quick-gear .unequip-button{padding:2px 4px;font-size:calc(10px * var(--text-scale,1))}}
@media(min-width:1000px) and (min-height:600px) and (max-height:760px) and (hover:hover) and (pointer:fine){
 .character .metric{margin:4px 0}.character .realm-name{margin-top:4px}.character .quality{margin-bottom:4px}.character .power{padding-top:3px!important;padding-bottom:3px!important}
 .character .status-resources .stat-row{margin:2px 0}.character .storage-ring-button{padding:4px 9px;margin-top:6px}.character .quick-bar{margin-top:6px;padding-top:8px;padding-bottom:8px}.character .quick-bar h3{line-height:1.4}.character .quick-bar .quick-gear{margin:3px 0}.character .quick-bar .quick-gear .unequip-button{padding:1px 4px;line-height:1.4}.character .quick-bar>button{padding-top:4px;padding-bottom:4px}
}
.storage-feedback{flex:none;padding:10px 12px;border-left:2px solid var(--green);background:var(--surface-soft);color:var(--green);font-size:calc(12px * var(--text-scale,1));line-height:1.65}

/* Remote materials trading */
.remote-trade-setting{padding:16px 18px;margin:0 0 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);display:flex;flex-wrap:wrap;gap:12px;align-items:center}.remote-trade-setting small{color:var(--muted);line-height:1.7}.remote-trade-setting label{display:flex;gap:10px;align-items:center}.remote-controls{display:flex;flex-wrap:wrap;gap:14px;margin:18px 0}.remote-controls label{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.remote-controls input{width:110px}.remote-material-row{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:14px 8px;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.remote-material-row label{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.remote-material-row span{min-width:0}.remote-material-row small{display:block;color:var(--muted);margin-top:7px;line-height:1.7}.remote-material-row input[type=number]{width:90px;max-width:100%}.remote-material-row strong{color:var(--gold);font-size:calc(12px * var(--text-scale,1));line-height:1.7}[data-remote-content]>p,[data-remote-sale-content]>p{margin:12px 0;line-height:1.8}.remote-controls select{max-width:100%}
@media(max-width:600px){.remote-material-row{padding:14px 2px}.remote-material-row label{flex-basis:100%}.remote-controls label{width:100%}.remote-trade-setting{padding:14px}.remote-trade-setting label{align-items:flex-start}.remote-material-row>strong{flex:1}.remote-controls select{width:140px}}

.remote-trade-setting input[type=checkbox],.remote-material-row input[type=checkbox]{width:18px;height:18px;flex:0 0 18px;margin:0;padding:0;accent-color:var(--green)}.remote-material-row label>span{flex:1}.remote-material-row>label{align-items:flex-start}[data-remote-content] .primary,[data-remote-sale-content] .primary{background:var(--green);border-color:var(--green);color:var(--bg)}

.talent-gift{margin:12px 0 0;padding:10px 12px;border-radius:8px;background:rgba(128,145,150,.1);font-size:.85em;line-height:1.65;overflow-wrap:anywhere;}

.expedition-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;padding:16px;margin:16px 0 20px;border:1px solid var(--line);border-radius:8px;background:var(--card)}.expedition-filters label{display:flex;flex-direction:column;gap:8px;min-width:0;color:var(--muted)}.expedition-filters input,.expedition-filters select{width:100%;min-width:0;max-width:100%;box-sizing:border-box;font-size:calc(12px * var(--text-scale,1))}.expedition-filters button{align-self:end;min-width:0;overflow-wrap:anywhere}.expedition-filter-count{grid-column:1/-1;margin:0;color:var(--muted)}.array-actions{flex-wrap:wrap;gap:10px}.array-actions button{max-width:100%;overflow-wrap:anywhere}.array-quality-plan{overflow-wrap:anywhere;line-height:1.8}
@media(max-width:650px){.expedition-filters{grid-template-columns:repeat(2,minmax(0,1fr));padding:12px;gap:12px}.expedition-material-filter,.expedition-search{grid-column:1/-1}.expedition-filters button{grid-column:1/-1}}

/* Shared typography also covers controls, dialogs and dynamically rendered panels. */
select,textarea,output,dialog{font-family:var(--font)}h1,h2,.serif,.brand,.talent-symbol{font-family:var(--title-font,'STSong','SimSun',serif)}

:root[data-custom-background=true][data-special-scene=true] #landscape{visibility:visible;opacity:.68}:root[data-special-scene=true] .custom-background{visibility:hidden}

.exchange-quantity{display:flex;align-items:center;gap:12px;margin:16px 0}.exchange-quantity input{width:160px;max-width:65%}.exchange-grid{display:grid;gap:12px}.resource-market .exchange-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid var(--line);border-radius:8px}.exchange-row p{min-width:0;flex:1;overflow-wrap:anywhere}.exchange-row small{display:block;color:var(--muted);margin-top:7px}.exchange-row>div{display:flex;gap:10px;flex-wrap:wrap}@media(max-width:600px){.exchange-row p{flex-basis:100%}.exchange-row>div{width:100%}.exchange-row button{flex:1;padding:10px}}

/* Workshop quantity and custom materials */
.batch-count{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap}.batch-count input{width:5rem;min-width:0}.job-contract{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin:.7rem 0;flex-wrap:wrap}.artisan-panel{margin-top:1.2rem;padding:1rem}.artisan-materials{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:.9rem;margin:1rem 0;max-height:340px;overflow:auto;padding:.4rem}.artisan-materials label{display:flex;align-items:center;justify-content:space-between;gap:.7rem;padding:.6rem}.artisan-materials input{width:5rem;min-width:0}.artisan-materials small{display:block;margin-top:.3rem}.recipe-bottom{flex-wrap:wrap;gap:.7rem}

.profession-panel{padding:18px;margin:14px 0;border:1px solid var(--line);border-radius:12px}.profession-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.profession-heading h3{margin:0}.profession-progress{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,145px),1fr));gap:12px;margin:16px 0}.profession-progress>div{padding:10px 12px;border:1px solid var(--line);border-radius:8px}.profession-progress span,.profession-progress strong{display:block;overflow-wrap:anywhere}.profession-panel p,.profession-recipe-status{line-height:1.7;overflow-wrap:anywhere}

.artisan-blueprint-row{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:12px 0}.artisan-blueprint-row span{overflow-wrap:anywhere;min-width:0}.confirm-actions{flex-wrap:wrap}
/* Explicit phone workspace. Native browser zoom and text settings remain available. */
.mobile-header-tools{display:flex;align-items:center;gap:6px}.mobile-header-tools button{padding:6px 10px;font-size:calc(12px * var(--text-scale,1))}.mobile-header-tools #mobile-quick-button,.mobile-header-tools #mobile-announcement-button{display:none}
:root[data-layout="mobile"] [hidden]{display:none!important}
:root[data-layout="mobile"]:has(.dashboard),:root[data-layout="mobile"] body:has(.dashboard){height:100dvh;overflow:hidden;min-width:0}
:root[data-layout="mobile"] .shell{min-width:0;max-width:700px;padding:0 max(8px,env(safe-area-inset-right)) 0 max(8px,env(safe-area-inset-left));}
:root[data-layout="mobile"] body:has(.dashboard) .shell{height:100dvh;display:grid;grid-template-rows:36px minmax(0,1fr);padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom)}
:root[data-layout="mobile"] .shell>header{height:36px;min-height:36px;padding:0;gap:6px;align-items:center;margin:0;border-bottom:0}
:root[data-layout="mobile"] .brand{font-size:22px;margin:0;flex:1;gap:0}:root[data-layout="mobile"] .brand span{display:none}
:root[data-layout="mobile"] .shell>header>.header-right{display:none}
:root[data-layout="mobile"] .mobile-header-tools{gap:6px;margin:0}:root[data-layout="mobile"] .mobile-header-tools button{font-size:calc(11px * var(--text-scale,1));min-height:30px;padding:4px 9px}
:root[data-layout="mobile"] .mobile-header-tools #mobile-quick-button,:root[data-layout="mobile"] .mobile-header-tools #mobile-announcement-button{display:block}
:root[data-layout="mobile"] body:has(.dashboard) .shell>footer{display:none}
:root[data-layout="mobile"] body:has(.dashboard) #app{height:100%;min-height:0;overflow:hidden}
:root[data-layout="mobile"] .dashboard{height:100%;display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:clamp(105px,calc(20dvh - 36px),150px) minmax(0,1fr);gap:8px;padding:0 0 6px!important;min-height:0}
:root[data-layout="mobile"] .mobile-character{position:static;align-self:stretch;display:flex!important;flex-direction:column;justify-content:center;gap:6px;border:1px solid var(--line);border-radius:12px;background:var(--surface);margin:0;padding:9px 11px!important;min-height:0;max-height:none;overflow:hidden}
.mobile-character-heading{display:flex;align-items:center;gap:10px;justify-content:space-between}.mobile-role-title{padding:0;border:0;background:transparent;text-align:left;min-width:0;flex:1;display:flex;align-items:baseline;gap:9px}.mobile-role-title strong{font:calc(17px * var(--text-scale,1)) var(--nav-font,var(--font));max-width:42%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-role-title span{font-size:calc(11px * var(--text-scale,1));color:var(--green);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-ring{padding:6px 9px;white-space:nowrap;font-size:calc(11px * var(--text-scale,1));min-height:34px;color:var(--gold)}
.mobile-role-line{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:calc(10px * var(--text-scale,1));line-height:1.3}.mobile-role-line>span{white-space:nowrap}.mobile-role-line button{padding:0;border:0;background:transparent;color:var(--gold);font-size:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mobile-meters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.mobile-meters>div{min-width:0}.mobile-meters span{display:block;font-size:calc(10px * var(--text-scale,1));line-height:1.5;white-space:nowrap}.mobile-meters strong{font-weight:400;color:var(--muted)}.mobile-meters .meter{margin-top:4px;height:4px}
:root[data-layout="mobile"] .journey{display:flex;flex-direction:column;height:100%;min-height:0;overflow:hidden;background:transparent;border:0;padding:0!important}
:root[data-layout="mobile"] .journey>.tabs{order:0;flex:none;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:0 0 6px;gap:5px;height:37px;border:0}
:root[data-layout="mobile"] .journey>.tabs button{font-size:calc(13px * var(--text-scale,1));padding:4px 3px;border:1px solid var(--line);border-radius:8px;background:var(--surface);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-height:34px}
:root[data-layout="mobile"] .journey>.tabs button.active{background:var(--button);border-color:var(--green);box-shadow:none;color:var(--green)}
:root[data-layout="mobile"] .journey>#tab-content{order:1;flex:1;min-height:0;overflow:hidden;padding:0;display:flex!important;flex-direction:column;gap:6px}
.mobile-local-tools:empty{display:none}.mobile-local-tools{display:flex;flex-wrap:wrap;gap:5px;flex:none;padding:0 1px}.mobile-local-tools button{padding:5px 7px;font-size:calc(11px * var(--text-scale,1));min-height:32px}.mobile-local-tools .shop-filters{display:flex;gap:5px;margin:0;flex-wrap:wrap}.mobile-local-tools .craft-disciplines{width:100%;margin:0;gap:5px}.mobile-local-tools .craft-disciplines button{padding:6px 4px;min-height:34px}.mobile-local-tools .craft-disciplines small{display:none}.mobile-local-tools .craft-disciplines strong{font-size:calc(13px * var(--text-scale,1))}.mobile-local-tools .mobile-wallet{width:100%;display:flex;flex-wrap:wrap;gap:8px;margin:0;font-size:calc(10px * var(--text-scale,1))}.mobile-local-tools .mobile-wallet span{margin:0}
.mobile-pager{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:6px;align-items:center;flex:none}.mobile-pager button{padding:5px 8px;font-size:calc(11px * var(--text-scale,1));min-height:34px}.mobile-pager select{min-width:0;width:100%;height:34px;padding:4px 6px;font-size:calc(12px * var(--text-scale,1));text-overflow:ellipsis}
.mobile-pages{flex:1;min-height:0;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:var(--surface);position:relative}
.mobile-page{height:100%;overflow:hidden;padding:14px;min-width:0;line-height:1.65}.mobile-page>article,.mobile-page>.place,.mobile-page>.option{margin:0;padding:0;border:0;background:transparent;border-radius:0;box-shadow:none}.mobile-page .recipe-heading{gap:7px}.mobile-page h3{font-size:calc(17px * var(--text-scale,1));margin:0 0 8px;line-height:1.5}.mobile-page p{font-size:calc(12px * var(--text-scale,1));margin:7px 0;line-height:1.65}.mobile-page .item-kind{font-size:calc(11px * var(--text-scale,1))}.mobile-page .quality-options{margin:9px 0}.mobile-page .quality-options button{font-size:calc(11px * var(--text-scale,1));min-height:40px;padding:5px 2px}.mobile-page .quality-options small{font-size:calc(9px * var(--text-scale,1))}.mobile-page .recipe-bottom{flex-wrap:wrap;gap:8px;margin-top:10px}.mobile-page .recipe-bottom small{font-size:calc(11px * var(--text-scale,1))}.mobile-page .recipe-bottom button,.mobile-page .place button,.mobile-page .option button{font-size:calc(12px * var(--text-scale,1));padding:8px 11px;min-height:36px}.mobile-page .shop-item,.mobile-page .place,.mobile-page .option{display:flex;flex-direction:column;align-items:stretch;gap:8px}.mobile-page .option>div{min-width:0}.mobile-page .shop-item>button,.mobile-page .place>button,.mobile-page .option>button{width:100%;margin:0;flex-shrink:0}.mobile-page .sale-buttons{flex-direction:row;flex-wrap:wrap}.mobile-page .array-actions{flex-wrap:wrap;gap:6px}.mobile-page .array-actions button{padding:7px;flex:1;font-size:calc(11px * var(--text-scale,1))}.mobile-page .recipe-materials{gap:6px;margin-top:9px}.mobile-page .recipe-materials span{font-size:calc(11px * var(--text-scale,1))}
.mobile-page-footer{display:flex;align-items:center;justify-content:space-between;gap:8px;flex:none;font-size:calc(10px * var(--text-scale,1));min-height:30px}.mobile-page-footer button{padding:3px 8px;font-size:calc(10px * var(--text-scale,1));min-height:28px}
.mobile-practice{height:100%;display:flex;flex-direction:column;gap:10px}.mobile-scene{position:relative;min-height:56px;flex:1;max-height:105px;overflow:hidden;border-radius:8px;background:var(--surface-soft)}.mobile-scene canvas{height:100%;width:100%;position:absolute;inset:0;opacity:.6}.mobile-scene>div{position:relative;padding:9px 12px}.mobile-scene span{font-size:calc(10px * var(--text-scale,1));color:var(--muted)}.mobile-scene h2{font-size:calc(21px * var(--text-scale,1))}.mobile-duration-label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:calc(12px * var(--text-scale,1));flex:none}.mobile-duration-label select{width:58%;min-width:0;padding:6px 10px;min-height:36px}.mobile-practice .mobile-estimate{margin:0;font-size:calc(11px * var(--text-scale,1));color:var(--gold);flex:none}.mobile-primary-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;flex:none}.mobile-primary-actions button{padding:9px 6px;min-height:43px;font-size:calc(13px * var(--text-scale,1))}.mobile-primary-actions small{display:block;font-size:calc(9px * var(--text-scale,1));line-height:1.5;opacity:.8}.mobile-practice .mobile-afk-status{margin:0;color:var(--muted);font-size:calc(10px * var(--text-scale,1));line-height:1.5;flex:none}.mobile-secondary-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;flex:none}.mobile-secondary-actions button{padding:6px 3px;min-height:32px;font-size:calc(10px * var(--text-scale,1))}.mobile-practice-small .mobile-scene{display:none}.mobile-practice-small .mobile-practice{gap:6px}.mobile-practice-small .mobile-primary-actions button{min-height:36px;padding:5px}.mobile-practice-small .mobile-afk-status{display:none}
.mobile-launch-card{height:100%;display:flex;flex-direction:column;justify-content:center;align-items:stretch;gap:12px}.mobile-launch-card .eyebrow{margin:0}.mobile-launch-card h3{font-size:calc(21px * var(--text-scale,1));margin:0}.mobile-launch-card p{margin:0;color:var(--muted)}.mobile-launch-card button{min-height:42px}
.mobile-mode-options{display:flex;gap:8px;flex-wrap:wrap}.mobile-mode-options button{flex:1;min-width:100px}.mobile-settings-controls.header-right{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;max-width:none!important;gap:12px!important;padding-top:12px}.mobile-settings-controls>span{display:block!important;grid-column:1/-1}.mobile-settings-controls .theme-picker{flex-basis:auto;display:block}.mobile-settings-controls select{width:100%;font-size:calc(12px * var(--text-scale,1));padding:8px}.mobile-settings-controls button{min-height:38px}.mobile-settings-controls .music-control{grid-column:1/-1}.mobile-settings-controls .music-panel{position:static!important;width:100%;transform:none!important;box-shadow:none}
:root[data-layout="mobile"] dialog{max-height:calc(100dvh - 28px);width:min(620px,calc(100% - 20px));margin:auto;padding:16px;overflow:auto;overscroll-behavior:contain}
#mobile-panel-dialog [data-mobile-source]{display:block!important;min-width:0}#mobile-panel-dialog .mobile-full-character{position:static!important;max-height:none!important;display:block!important;border:0!important;margin:0;padding:0!important;overflow:visible}#mobile-panel-dialog .mobile-full-character h2{font-size:24px}#mobile-panel-dialog .logs{height:auto;overflow:visible}#mobile-panel-dialog .quick-bar{display:block;margin:0;border:0;padding:0}#mobile-panel-dialog .quick-bar button{min-height:38px}#mobile-panel-dialog .expedition-visual{height:120px}#mobile-panel-dialog .recipe-grid{grid-template-columns:1fr}#mobile-panel-dialog .encounter-area{max-height:none!important;overflow:visible!important}#mobile-panel-dialog input,#mobile-panel-dialog select{max-width:100%;min-width:0}#mobile-panel-dialog .invent-controls{grid-template-columns:1fr}#mobile-panel-dialog .book-table{display:table;min-width:0}
:root[data-layout="mobile"] .toast{bottom:36px;padding:8px 12px;max-width:calc(100% - 24px);font-size:calc(11px * var(--text-scale,1))}
:root[data-layout="mobile"] .mobile-encounter .expedition-panel{padding:0;border:0;margin:0 0 8px}.mobile-encounter .expedition-visual{height:86px}.mobile-encounter .expedition-caption{top:7px;left:8px}.mobile-encounter .expedition-caption h2{font-size:calc(17px * var(--text-scale,1))}.mobile-encounter .expedition-caption p{display:none}.mobile-encounter .route-progress{margin:8px 0}.mobile-encounter .expedition-panel>p{display:none}.mobile-encounter .combat{padding:8px;margin:0}.mobile-encounter .combat h3{font-size:calc(17px * var(--text-scale,1))}.mobile-encounter .combat-actions button{padding:7px;min-height:36px;font-size:calc(11px * var(--text-scale,1))}.mobile-encounter .event{padding:10px;margin:0}.mobile-encounter .ending{margin:0;padding:10px}
@media(max-width:380px){.mobile-meters strong{display:block}.mobile-role-line{gap:4px}.mobile-ring{padding:5px 7px}.mobile-local-tools{gap:4px}.mobile-local-tools button{padding:4px 6px}.mobile-page{padding:11px}.mobile-primary-actions{gap:6px}}
:root[data-layout="mobile"] .mobile-primary-actions button.primary{background:var(--green);color:var(--bg);border-color:var(--green)}
:root[data-layout="mobile"] .mobile-character button:hover{background:transparent}.mobile-role-title strong{color:var(--ink)}
.mobile-encounter .mobile-secondary-actions{display:flex;margin-top:8px}.mobile-encounter .mobile-secondary-actions button{flex:1}
.mobile-launch-small .mobile-launch-card{gap:8px}.mobile-launch-small .mobile-launch-card>.eyebrow,.mobile-launch-small .mobile-launch-card>p{display:none}.mobile-launch-small .mobile-launch-card h3{font-size:calc(16px * var(--text-scale,1));line-height:1.4}.mobile-launch-small .mobile-launch-card button{min-height:36px;padding:6px;font-size:calc(11px * var(--text-scale,1))}
#mobile-panel-dialog [data-mobile-source="more-tools"]>div{display:flex;flex-wrap:wrap;gap:12px}#mobile-panel-dialog [data-mobile-source="more-tools"]>div>.market-wallet{width:100%;display:grid;gap:8px}#mobile-panel-dialog [data-mobile-source="more-tools"] button{min-height:38px}
@media(orientation:landscape) and (max-height:480px){:root[data-layout="mobile"] .dashboard{grid-template-rows:70px minmax(0,1fr)}:root[data-layout="mobile"] .mobile-character{gap:4px;padding:5px 9px!important}.mobile-role-line{display:none}.mobile-meters .meter{margin-top:2px}.mobile-character-heading .mobile-ring{min-height:28px;padding:4px 8px}.mobile-role-title strong{font-size:calc(14px * var(--text-scale,1))}:root[data-layout="mobile"] .journey>.tabs{height:32px;margin-bottom:4px}.mobile-page-footer{min-height:26px}.mobile-local-tools button{min-height:28px}.mobile-pager button,.mobile-pager select{min-height:28px;height:28px}.mobile-page{padding:8px}.mobile-local-tools .craft-disciplines button{min-height:28px}}

:root[data-layout="mobile"] .mobile-launch-card button.primary{background:var(--green);color:var(--bg);border-color:var(--green)}

:root[data-layout="mobile"] .mobile-pages{background:color-mix(in srgb,var(--surface) var(--panel-opacity),transparent)}

/* Two-step opening: horizontal talent cards and a separate identity screen. */
main:has(.start-wizard){min-height:0}
.start.start-wizard{display:flex;flex-direction:column;height:calc(100dvh - 175px);min-height:440px;padding:20px 24px;margin:18px auto;gap:10px}
.start-wizard .start-heading{margin:0;align-items:center;gap:16px;flex:none}.start-wizard .start-heading h1{font-size:calc(26px * var(--text-scale,1));line-height:1.35}.start-wizard .eyebrow{margin:0 0 3px}.start-wizard .start-steps{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:calc(12px * var(--text-scale,1));flex:none}.start-steps [aria-current=step]{color:var(--gold)}
.start-wizard .age-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;flex:none}.start-wizard .age-options button{padding:8px 12px;text-align:center;min-width:0}.start-wizard .age-options h3{font-size:calc(13px * var(--text-scale,1));line-height:1.5}.start-age-description{color:var(--muted);font-size:calc(12px * var(--text-scale,1));line-height:1.5;flex:none}.start-wizard .section-title{padding:0 2px 6px;margin:0;align-items:center;flex-wrap:nowrap;flex:none}.start-wizard .section-title>span,.start-wizard .section-title small{white-space:nowrap}
.start-wizard .talent-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:170px;gap:12px;margin:0;padding:2px 3px 8px;flex:1;min-height:0;overflow:auto;overscroll-behavior:contain;scrollbar-width:thin;align-content:start}.talent-option{position:relative;min-width:0;min-height:0}.start-wizard .talent-card{height:100%;min-height:0;width:100%;display:flex;flex-direction:column;align-items:stretch;text-align:left;padding:12px 14px;gap:5px;border-radius:8px;overflow:hidden;writing-mode:horizontal-tb}.start-wizard .talent-title-row{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;flex:none}.start-wizard .talent-card h2{font-size:calc(18px * var(--text-scale,1));line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;writing-mode:horizontal-tb}.start-wizard .talent-card .rarity{font-size:calc(10px * var(--text-scale,1));white-space:nowrap;flex:none}.start-wizard .talent-desc{margin:0;line-height:1.5;font-size:calc(11px * var(--text-scale,1));white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.start-wizard .talent-effect{width:100%;min-width:0;grid-column:1/-1;border:0;padding:0;margin:0;font-size:calc(11px * var(--text-scale,1));line-height:1.5;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;writing-mode:horizontal-tb}.start-wizard .talent-gift{width:100%;min-width:0;grid-column:1/-1;margin:auto 0 0;padding:0 48px 0 0;border-radius:0;background:none;font-size:calc(11px * var(--text-scale,1));line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;writing-mode:horizontal-tb}.talent-info-button{position:absolute;right:9px;bottom:8px;padding:2px 7px;min-height:26px;font-size:calc(10px * var(--text-scale,1));line-height:1.4;white-space:nowrap}.talent-detail p{overflow-wrap:anywhere;writing-mode:horizontal-tb}
.start-wizard .start-bottom{display:flex;justify-content:space-between;align-items:center;margin:0;padding-top:5px;gap:12px;flex:none;flex-wrap:nowrap}.start-confirm-hint{font-size:calc(12px * var(--text-scale,1));color:var(--muted)}.start-wizard .start-bottom button{width:auto;min-width:0;min-height:40px;white-space:normal}.start-wizard .start-bottom .primary{background:var(--green);color:var(--bg);border-color:var(--green)}.start-choice-summary{display:flex;flex-wrap:wrap;gap:7px;flex:none;font-size:calc(12px * var(--text-scale,1))}.start-choice-summary span{padding:2px 8px;border:1px solid var(--line);border-radius:4px;color:var(--tier,var(--gold))}.start-wizard .origin-grid{margin:0;flex:1;min-height:0;overflow:auto;grid-auto-rows:max-content;gap:12px;align-content:start;padding:2px 3px 8px;overscroll-behavior:contain}.start-wizard .origin-card{min-width:0;padding:14px 16px;writing-mode:horizontal-tb}.start-wizard .origin-card p{margin:5px 0 7px;font-size:calc(12px * var(--text-scale,1));line-height:1.6}.start-wizard .origin-card small{display:block;line-height:1.5}.start-wizard .name-field{margin:0}.start-wizard .name-field label{margin:0 0 4px}.start-wizard .name-field input{padding:7px 10px}
@media(max-width:600px){
 body:has(.start-wizard){overflow:hidden}body:has(.start-wizard) .shell{height:100dvh;display:grid;grid-template-rows:36px minmax(0,1fr);padding:env(safe-area-inset-top) max(8px,env(safe-area-inset-right)) env(safe-area-inset-bottom) max(8px,env(safe-area-inset-left));min-width:0}
 body:has(.start-wizard) .shell>header{height:36px;min-height:36px;margin:0;padding:0;border:0;gap:6px}body:has(.start-wizard) .shell>header .brand{font-size:21px}body:has(.start-wizard) .shell>header>.header-right,body:has(.start-wizard) .shell>footer{display:none}body:has(.start-wizard) .mobile-header-tools button{padding:4px 9px;min-height:30px;font-size:calc(11px * var(--text-scale,1))}body:has(.start-wizard) #mobile-quick-button{display:none}
 body:has(.start-wizard) main{min-height:0;overflow:hidden}.start.start-wizard{height:100%;min-height:0;margin:0;padding:10px;gap:7px;border-radius:10px}
 .start-wizard .start-heading{display:flex;flex-direction:column;align-items:stretch;gap:8px}.start-wizard .start-heading h1{font-size:calc(19px * var(--text-scale,1))}.start-wizard .eyebrow{display:none}.start-wizard .start-steps{font-size:calc(11px * var(--text-scale,1));gap:10px;line-height:1.4}.start-wizard .age-options button{padding:6px 2px}.start-wizard .age-options h3{font-size:calc(12px * var(--text-scale,1))}.start-age-description{font-size:calc(11px * var(--text-scale,1));display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.start-wizard .section-title{padding-bottom:4px;font-size:calc(12px * var(--text-scale,1));gap:7px}.start-wizard .section-title small{font-size:calc(10px * var(--text-scale,1))}
 .start-wizard .talent-grid{grid-template-columns:minmax(0,1fr);grid-auto-rows:var(--start-card-height,108px);gap:8px;padding:0 2px 2px}.start-wizard .talent-card{padding:8px 10px;gap:4px;border-radius:6px}.start-wizard .talent-card h2{font-size:calc(15px * var(--text-scale,1))}.start-wizard .talent-card .rarity{font-size:calc(10px * var(--text-scale,1))}.start-wizard .talent-desc{display:none}.start-wizard .talent-effect{font-size:calc(11px * var(--text-scale,1));line-height:1.4;-webkit-line-clamp:2}.start-wizard .talent-gift{font-size:calc(10px * var(--text-scale,1));line-height:1.4;padding-right:48px;margin-top:auto}.start-wizard .start-list-tight .talent-card{padding:6px 9px;gap:3px}.start-list-tight .talent-effect{-webkit-line-clamp:1}.start-wizard .talent-info-button{right:8px;bottom:6px;min-height:25px;padding:2px 6px;font-size:calc(10px * var(--text-scale,1))}
 .start-wizard .start-confirm-hint{display:none}.start-wizard .start-bottom{gap:7px;padding-top:3px}.start-wizard[data-start-step=talents] .start-bottom .primary{width:100%;min-height:38px;padding:7px}.start-wizard .start-bottom button{font-size:calc(12px * var(--text-scale,1));min-height:38px;padding:7px 8px;flex:1}.start-wizard .origin-grid{grid-template-columns:1fr;gap:9px}.start-wizard .origin-card{padding:12px}.start-wizard .origin-card h3{font-size:calc(14px * var(--text-scale,1))}.start-wizard .origin-card p,.start-wizard .origin-card small{font-size:calc(11px * var(--text-scale,1))}.start-wizard .name-field{width:100%}.start-wizard .name-field label{font-size:calc(11px * var(--text-scale,1))}.start-wizard .name-field input{padding:6px 9px;min-height:35px;font-size:calc(12px * var(--text-scale,1))}.start-choice-summary{font-size:calc(11px * var(--text-scale,1));gap:5px}
}

.mobile-header-tools{flex-shrink:0}.mobile-header-tools button{white-space:nowrap}
