/* 曙光品牌視覺；狀態紅黃綠與持久化識別沿用。 */
:root{--bg:#111719;--surface:#1b2326;--surface-raised:#253034;--line:#344044;--line-strong:#566265;--ink:#f9f2e9;--ink-dim:#d8d0c7;--muted:#b3aaa1;--accent:#ff895b;--accent-soft:rgba(255,137,91,.12);--on-accent:#29160d;--button-hover:#ffa47f;--overlay-surface:rgba(17,23,25,.98);--floating:rgba(27,35,38,.96);--nav-surface:rgba(17,23,25,.98);--brand-glow:rgba(255,137,91,.09)}
:root[data-theme="light"]{--bg:#f8f4ee;--surface:#fffcf7;--surface-raised:#eee7dd;--line:#ded5c8;--line-strong:#a5998b;--ink:#252b2d;--ink-dim:#454b4c;--muted:#6b645d;--accent:#aa461e;--accent-soft:rgba(170,70,30,.09);--on-accent:#fffaf5;--button-hover:#873615;--inset:#f0e9e0;--overlay-surface:rgba(248,244,238,.98);--floating:rgba(255,252,247,.96);--nav-surface:rgba(255,252,247,.98);--brand-glow:rgba(206,96,43,.08)}
.rad-home{position:fixed;top:calc(8px + env(safe-area-inset-top,0px));left:calc(12px + env(safe-area-inset-left,0px));z-index:790;display:flex;align-items:center;gap:9px;min-height:44px;padding:0 8px 0 0;border-radius:14px;background:var(--floating);color:var(--ink);text-decoration:none;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.rad-home img{width:44px;height:44px;border-radius:13px;display:block}.rad-home span{font-size:14px;font-weight:750;line-height:1.2;letter-spacing:-.025em}.rad-home small{display:block;margin-top:3px;font-size:10px;font-weight:450;color:var(--muted);letter-spacing:.09em}.rad-home:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
body.training-immersive .rad-home,body[data-page="gym"] .rad-home{display:none}
.rad-mark{display:block;object-fit:contain;background:#111719;border-radius:26%;flex-shrink:0}
.login-page{background:radial-gradient(ellipse at 50% 15%,var(--brand-glow),transparent 65%),var(--bg)}
.login-page .card{max-width:400px;padding:38px 30px 28px;background:var(--surface);border:1px solid var(--line);border-radius:28px;box-shadow:0 22px 70px rgba(0,0,0,.12)}
.login-page .brand{margin-bottom:32px}.login-page .brand .rad-mark{width:104px;height:104px;margin:0 auto 23px}
.login-page .brand-text,.pwa-veil-brand{font-size:32px;font-weight:800;line-height:1.15;letter-spacing:-.045em}
.login-page .brand-sub{font-size:14px;letter-spacing:.22em;margin-top:10px;color:var(--muted)}
.login-page label{font-size:13px;letter-spacing:0;margin:0 0 8px 1px}.login-page input{background:var(--bg);border:1px solid var(--line);min-height:48px;font-size:16px;padding-right:56px}.login-page input:focus{border-color:var(--accent);outline:2px solid var(--accent-soft)}
.login-page .pw-toggle{font-size:13px;top:11px;padding:4px;min-height:26px}.login-page .submit{min-height:49px;background:var(--accent);border:1px solid var(--accent);color:var(--on-accent);border-radius:14px;font-size:15px;font-weight:700;letter-spacing:.03em}.login-page .foot{font-size:11px;color:var(--muted);letter-spacing:.03em}
.pwa-veil,.login-page .pwa-veil{background:radial-gradient(ellipse at 50% 28%,var(--brand-glow),transparent 62%),var(--bg)}
.pwa-veil-center{width:min(440px,100%);gap:14px}.pwa-veil .rad-mark{width:128px;height:128px;margin-bottom:14px}.pwa-veil-sub{font-size:14px;line-height:1.7}.pwa-veil .rad-tagline{letter-spacing:.18em;font-size:16px;margin-bottom:15px;color:var(--muted)}
.pwa-veil .pwa-install,.pwa-veil .veil-install{min-width:208px;min-height:48px;border-radius:14px;background:var(--accent);color:var(--on-accent);border:1px solid var(--accent);font-size:15px;font-weight:700;margin-top:8px}.pwa-veil .pwa-install:hover,.pwa-veil .veil-install:hover{background:var(--button-hover);border-color:var(--button-hover);color:var(--on-accent)}
.pwa-card>.rad-mark{width:44px;height:44px;border-radius:12px}.pwa-card .pwa-title{font-weight:700;font-size:14px}
.rad-footer-brand{display:flex;align-items:center;gap:10px;margin:0 0 13px}.rad-footer-brand .rad-mark{width:40px;height:40px;border-radius:12px}.rad-footer-brand strong{display:block;font-size:15px;letter-spacing:-.025em;color:var(--ink)}.rad-footer-brand small{display:block;font-size:11px;letter-spacing:.1em;margin-top:2px}
.card-header:hover{background:var(--accent-soft)}.me-avatar{border-color:var(--line)}.nav-plus:hover,.ho-btn.primary:hover,.life button.primary:hover{background:var(--button-hover)}
@media(max-width:360px){.page-actions .profile-entry span:not(.nav-badge){display:none}.page-actions .master-btn.profile-entry{min-width:44px;width:44px;padding:0}.rad-home{gap:7px}.rad-home span{font-size:13px}.login-page .card{padding:30px 23px 25px}.login-page .brand-text,.pwa-veil-brand{font-size:29px}}
@media(prefers-reduced-motion:reduce){.rad-home,.login-page .submit{transition:none}}
