/* Shared interface refinements. Keep the Solo Leveling palette and display accents. */
/* A fixed rectangular edge glow; the centre retains the selected theme. */
body::before{content:"";position:fixed;inset:0;z-index:80;pointer-events:none;opacity:0;border-radius:0;background:transparent;box-shadow:inset 0 0 3px 1px #9583edaa,inset 0 0 36px 7px #5941c270,inset 0 0 100px 18px #213b845c;transition:opacity 2800ms cubic-bezier(.22,1,.36,1)}
body.focus-atmosphere::before{opacity:1;transition-duration:2200ms}
body .app-toolbar,body .nav,body #view-focus .rest-card{transition:opacity 2800ms cubic-bezier(.22,1,.36,1)}
body.focus-atmosphere .app-toolbar,body.focus-atmosphere .nav,body.focus-atmosphere #view-focus .rest-card{opacity:.6;transition-duration:2200ms}
body.focus-atmosphere .app-toolbar:hover,body.focus-atmosphere .app-toolbar:focus-within,body.focus-atmosphere .nav:hover,body.focus-atmosphere .nav:focus-within,body.focus-atmosphere #view-focus .rest-card:hover{opacity:1}
body #view-focus .timer-card{transition:box-shadow 2800ms ease,border-color 2800ms ease}
body.focus-atmosphere #view-focus .timer-card{border-color:#7464c88c;box-shadow:0 0 32px #5941c21c;transition-duration:2200ms}
@media(max-width:600px){body::before{box-shadow:inset 0 0 2px 1px #9583ed99,inset 0 0 22px 4px #5941c270,inset 0 0 56px 8px #213b844d}}
@media(prefers-reduced-motion:reduce){body::before,body .app-toolbar,body .nav,body #view-focus .rest-card,body #view-focus .timer-card{transition:none!important}}
.hunter-compact-level{display:grid;gap:5px;min-width:0;width:174px}
.hunter-compact-xp{display:block;height:4px;overflow:hidden;border-radius:99px;background:var(--border)}
.hunter-compact-xp>span{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,var(--primary-2),var(--primary))}
@media(max-width:720px){.hunter-compact-level{width:112px}.hunter-compact-level .hunter-compact-rank{display:block;font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hunter-overview>summary{column-gap:8px!important}}
:root{--font-body:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--text-dim:#b0a9c5;--text-faint:#9b92ae;--ui-ease:cubic-bezier(.22,1,.36,1)}
:root[data-theme="light"]{--text-dim:#5f556f;--text-faint:#6b6079}
body{letter-spacing:0;line-height:1.5}
.app{padding-top:60px}
.top-search-anchor{position:fixed;z-index:90;top:14px;left:50%;transform:translateX(-50%);display:flex;justify-content:center}
.top-search-trigger{display:grid;place-items:center;width:34px;height:34px;padding:0;border-radius:50%;color:var(--text);background:var(--panel-2);border:1px solid var(--border-lit);box-shadow:0 3px 12px var(--shadow-1);transition:background 180ms ease,box-shadow 180ms ease,transform 180ms var(--ui-ease)}
.top-search-trigger svg{width:16px;height:16px}
.top-search-trigger::before{content:"";position:absolute;inset:-5px;border-radius:50%}
.top-search-trigger:hover{background:var(--panel);box-shadow:0 7px 26px var(--shadow-1),0 0 0 4px var(--wash-1);transform:translateY(-1px)}
.top-search-trigger:active{transform:scale(.94)}
.top-search-trigger[aria-expanded="true"]{visibility:hidden}
#quickActions{position:fixed;inset:14px 0 auto;margin:0 auto;width:min(680px,calc(100vw - 24px));max-height:calc(100dvh - 28px);border-radius:24px;transform-origin:top center}
#quickActions[open]{animation:searchUnfold 360ms var(--ui-ease) both}
#quickActions[open]::backdrop{animation:interfaceFade 200ms ease both}
@keyframes searchUnfold{from{clip-path:inset(0 calc(50% - 17px) calc(100% - 34px) round 17px);opacity:.7}to{clip-path:inset(0 0 0 round 24px);opacity:1}}
@keyframes interfaceFade{from{opacity:0}to{opacity:1}}
.hud{border-radius:20px;padding:20px 24px;box-shadow:0 12px 32px -22px var(--shadow-1)}
.nav{gap:6px;padding:6px;border:1px solid var(--border);border-radius:16px;background:var(--raise);margin:18px 0 24px}
.nav-btn{border-radius:11px;font-family:var(--font-body);font-size:12px;font-weight:550;letter-spacing:0;padding:10px 13px;transition:background 180ms ease,color 180ms ease,border-color 180ms ease}
.nav-btn.active{box-shadow:none}
.btn{border-radius:11px;min-height:38px;padding:9px 15px;font-family:var(--font-body);font-size:13px;font-weight:550;letter-spacing:0;transition:background 160ms ease,border-color 160ms ease,box-shadow 160ms ease}
.btn-sm{min-height:32px;padding:6px 11px;font-size:12px}
.btn:hover{filter:none;box-shadow:0 3px 12px -8px var(--shadow-1)}
.btn:disabled{cursor:default;opacity:.5}
.section-head{gap:16px;margin-bottom:20px}.section-sub{line-height:1.65;font-size:13px}
.detail-panel,.daily-card,.timer-card,.rest-card,.all-stats,.shadow-card{border-radius:18px}
.modal{border-radius:20px;box-shadow:0 24px 80px var(--shadow-1)}
input,textarea,select{transition:border-color 160ms ease,box-shadow 160ms ease}
input:focus,textarea:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--wash-1)}
button:focus-visible,summary:focus-visible,a:focus-visible{outline:2px solid var(--primary);outline-offset:4px}
.view.active{animation:interfaceFade 160ms ease both}
.gate-title,.sub-title,.daily-text{line-height:1.5}
:root[data-theme="light"] .top-search-trigger{background:#fff;border-color:#d5c8e6;box-shadow:0 4px 18px #33204716}
:root[data-theme="light"] .nav{background:#ffffffa8;border-color:#e0d9e9}
@media(max-width:720px){.app{padding-top:56px}.top-search-anchor{top:10px}#quickActions{top:10px;max-height:calc(100dvh - 20px);border-radius:20px}.hud{padding:16px;gap:12px}.nav{padding:5px;gap:4px}.nav-btn{padding:10px 12px}.btn{min-height:40px}.section-head{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){#quickActions[open],#quickActions[open]::backdrop,.view.active{animation:none}.top-search-trigger,.nav-btn,.btn,input,textarea,select{transition:none}.top-search-trigger:hover,.top-search-trigger:active{transform:none}}
/* Consistency pass: hierarchy, navigation, shared panels and calm surfaces. */
.ui-icon{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.app-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;position:relative;z-index:35;min-height:44px}
.hunter-overview{position:relative;min-width:0}.hunter-overview>summary{display:flex;align-items:center;gap:14px;cursor:pointer;list-style:none;padding:7px 0;min-height:44px}.hunter-overview>summary::-webkit-details-marker,.nav-more>summary::-webkit-details-marker{display:none}
.brand-wordmark{font-family:var(--font-display);font-size:15px;letter-spacing:2px;color:var(--text)}.hunter-compact-rank{color:var(--text-dim);font-size:12px}.disclosure-chevron{color:var(--text-faint);transition:transform 180ms ease}.hunter-overview[open] .disclosure-chevron{transform:rotate(180deg)}
.hunter-overview .hud{position:absolute;top:calc(100% + 8px);left:0;width:min(550px,calc(100vw - 44px));display:flex;flex-wrap:wrap;background:var(--panel);box-shadow:0 16px 50px -24px var(--shadow-1);border-color:var(--border);z-index:40}.hunter-overview .hud-main{min-width:180px}.hunter-overview .hud-stats{width:100%;justify-content:flex-start;gap:30px;padding-top:12px;border-top:1px solid var(--border)}
.toolbar-actions{display:flex;align-items:center;gap:6px}.toolbar-actions .theme-toggle{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;box-shadow:none;background:transparent;border-color:transparent}
.nav{position:relative;z-index:30;background:transparent;border:0;border-bottom:1px solid var(--border);border-radius:0;padding:0 0 12px;margin:12px 0 24px;align-items:center;overflow:visible}
.nav>.nav-btn{background:transparent;border-color:transparent;text-transform:none;font-size:14px;min-height:42px;font-weight:500}.nav>.nav-btn.active{background:var(--wash-1);color:var(--text);border-color:transparent}.nav>.nav-btn:hover{background:var(--raise-2)}
.nav-more{position:relative}.nav-more>summary{display:flex;align-items:center;gap:7px;list-style:none;min-height:42px;padding:9px 12px;border-radius:11px;cursor:pointer;font-size:14px;color:var(--text-dim)}.nav-more[open]>summary,.nav-more.has-selection>summary{color:var(--text);background:var(--wash-1)}
.nav-more-list{position:absolute;top:calc(100% + 8px);left:0;min-width:210px;display:grid;gap:3px;padding:7px;background:var(--panel);border:1px solid var(--border);box-shadow:0 14px 35px -20px var(--shadow-1);border-radius:14px;z-index:45}.nav-more-list .nav-btn{border:0;border-radius:9px;background:transparent;text-transform:none;font-size:13px;justify-content:space-between;min-height:40px;text-align:left}.nav-more-list .nav-btn.active{background:var(--wash-1);color:var(--text)}
.nav-nexus{margin-left:auto;width:38px;min-width:38px;height:38px;background:var(--panel);border-color:var(--border);color:var(--text-dim);box-shadow:none}.nav-nexus:hover{transform:none;box-shadow:none;border-color:var(--primary);color:var(--text)}
.section-title,.dungeon-name,.modal h3,.hud-stat .n,.node-label{font-family:var(--font-body);text-transform:none;letter-spacing:0}.section-title{font-size:22px;font-weight:650}.dungeon-name{font-size:18px}.modal h3{font-size:22px}.node-label{font-size:12px;font-weight:600}
.hud-avatar{box-shadow:none}.xp-fill{box-shadow:none}.xp-fill::after,.portal-ring,.portal-glyph,.portal-line{animation:none!important}.portal-core{box-shadow:inset 0 0 16px var(--wash-1)}.portal-glyph{filter:none}.portal-line{stroke-dasharray:none}
.daily-card,.detail-panel,.timer-card,.rest-card,.shadow-card{background:var(--panel);box-shadow:none;border-color:var(--border)}.gate-title{font-size:15px}.sub-title,.daily-text{font-size:14px}.section-sub,.field label,.modal .sub{font-size:13px}
#modalGate{display:flex;align-items:stretch;justify-content:flex-end;background:var(--scrim);z-index:100;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 200ms ease,visibility 200ms ease}
#modalGate.show{opacity:1;visibility:visible;pointer-events:auto}#modalGate .task-editor{width:min(460px,100vw);height:100dvh;max-height:100dvh;border:0;border-left:1px solid var(--border);border-radius:0;padding:30px 26px;background:var(--panel);box-shadow:-14px 0 50px -25px var(--shadow-1);animation:none;transform:translateX(100%);transition:transform 260ms var(--ui-ease);display:flex;flex-direction:column;overflow-y:auto}
#modalGate.show .task-editor{transform:translateX(0)}.task-editor .modal-actions{margin-top:auto;padding-top:24px;position:sticky;bottom:-30px;background:var(--panel);padding-bottom:20px}.editor-priority{margin:4px 0 20px}.editor-priority summary{cursor:pointer;font-size:13px;color:var(--text-dim);padding:10px 0}.editor-priority .slider-3{padding-top:12px}.editor-status{min-height:20px;font-size:12px;color:var(--text-dim);line-height:1.6}.task-editor .score-preview{background:var(--raise);border-color:var(--border)}
#modalConfirm{z-index:130}.calendar-detail-drawer{border-color:var(--border);box-shadow:-14px 0 50px -25px var(--shadow-1)}
.cal-insights-disclosure>summary{padding:12px 22px;font-size:12px;cursor:pointer;color:var(--text-dim);border-bottom:1px solid var(--border)}.cal-display-options{position:relative}.cal-display-options>summary{cursor:pointer;font-size:12px;color:var(--text-dim);padding:7px 10px;border-radius:8px}.cal-display-options[open]>.cal-filter-row{position:absolute;right:0;top:100%;min-width:170px;display:grid;gap:14px;padding:18px;background:var(--panel);border:1px solid var(--border);border-radius:12px;z-index:60;box-shadow:0 12px 32px -20px var(--shadow-1)}.cal-filterbar .cal-display-options{margin-left:auto}.cal-filterbar .cal-filter-row{margin:0}
#calAdd{background:transparent;border:1px solid var(--border);color:var(--text-dim)}#planWeekOpen{font-weight:600}.cal-event:focus-visible,.overview-event:focus-visible{outline:2px solid var(--primary);outline-offset:2px;z-index:10}.cal-time,.cal-event-meta{font-size:11px}.cal-day-head em{text-transform:none;letter-spacing:0}
:root[data-theme="light"] .nav{background:transparent;border-color:#e0d9e9}:root[data-theme="light"] .nav-more-list,:root[data-theme="light"] .hunter-overview .hud,:root[data-theme="light"] #modalGate .task-editor,:root[data-theme="light"] .task-editor .modal-actions{background:#fcfaff}:root[data-theme="light"] .nav-nexus{background:#fff;border-color:#ddd3e7}
@media(max-width:720px){.hunter-compact-rank{display:none}.app-toolbar{gap:8px}.nav{flex-wrap:nowrap;overflow:visible;gap:2px}.nav>.nav-btn{font-size:12px;padding:8px 9px}.nav>.nav-btn .ui-icon{display:none}.nav-more>summary{font-size:12px;padding:8px;max-width:94px}.nav-more>summary .ui-icon{width:14px;height:14px}#navMoreLabel{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-more-list{left:auto;right:0;min-width:195px}.nav-nexus{width:32px;min-width:32px;height:34px}.hunter-overview .hud{width:calc(100vw - 24px)}#modalGate{align-items:flex-end}#modalGate .task-editor{width:100%;height:auto;max-height:90dvh;border-radius:22px 22px 0 0;border-left:0;border-top:1px solid var(--border);transform:translateY(100%);padding:24px 20px}#modalGate.show .task-editor{transform:translateY(0)}.task-editor .modal-actions{bottom:-24px;padding-bottom:18px}.cal-insights-disclosure>summary{padding:12px 16px}.cal-display-options[open]>.cal-filter-row{right:0}.cal-filter-row .cal-check:nth-child(3){display:flex!important}.section-title{font-size:20px}}
@media(prefers-reduced-motion:reduce){#modalGate,#modalGate .task-editor,.disclosure-chevron{transition:none}*,*::before,*::after{scroll-behavior:auto!important}.portal-core,.xp-track,.levelup-box{animation:none!important}}
@media(max-width:480px){body .nav{flex-wrap:wrap}body .nav>.nav-btn{padding:8px 7px}body .nav-more>summary{max-width:78px}}
