:root{--navy:#000064;--navy-soft:#1a1a7a;--navy-deep:#00003a;--navy-700:#2a2a86;--lightblue:#e6f2f7;--tint:#f0f1f8;--line:#e8e8f0;--ink:#14142b;--muted:#6b6b85;--faint:#9a9ab0;--success:#1f8f5c;--success-bg:#e7f5ee;--warning:#c97a00;--warning-bg:#fbf0db;--info:#1f66d9;--info-soft:#e6effb;--red:#ff0000;--red-soft:#ff2d2d;--cta:#0224ff;--cta-soft:#1f3cff;--quest:#4a4ab8;--bg:#ffffff;--alt:#f5f6fa;--font:"Raleway","Helvetica Neue",Arial,sans-serif;--display:"Poppins","Helvetica Neue",Arial,sans-serif;--mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;--maxw:1440px;--r-card:16px;--r-thumb:14px;--r-btn:10px;--shadow:0 14px 36px rgba(0,0,70,.09),0 3px 10px rgba(0,0,70,.05);--shadow-sm:0 6px 18px rgba(0,0,70,.07);--shadow-navy:0 20px 48px rgba(0,0,80,.3);--dur:.24s;--ease:cubic-bezier(.2,0,0,1);--tia-navy:#000064;--tia-red:#FF0000;--tia-light-blue:#E6F2F7;--tia-white:#FFFFFF;--tia-navy-950:#00003A;--tia-navy-800:#1A1A78;--tia-navy-200:#D9D9EC;--tia-navy-100:#ECECF5;--tia-navy-50:#F5F5FA;--tia-red-700:#B30000;--tia-red-600:#E60000;--tia-red-100:#FFE6E6;--tia-grey-900:#1C1C2E;--tia-grey-700:#3F3F55;--tia-grey-500:#6B6B82;--tia-grey-400:#8E8EA3;--tia-grey-300:#C4C4D1;--tia-grey-200:#E2E2EA;--tia-grey-100:#F1F1F5;--tia-grey-50:#F8F8FB;--surface-page:#FFFFFF;--surface-raised:#FFFFFF;--surface-subtle:#E6F2F7;--surface-muted:#F8F8FB;--border-subtle:#E2E2EA;--border-default:#C4C4D1;--fg-primary:#000064;--fg-body:#1C1C2E;--fg-muted:#6B6B82;--fg-subtle:#8E8EA3;--fg-accent:#FF0000;--fg-on-inverse:#FFFFFF;--action-primary-bg:#0224ff;--action-primary-bg-hover:#1f3cff;--action-primary-bg-pressed:#001fd6;--action-primary-fg:#FFFFFF;--fw-body-light:300;--fw-body-regular:400;--fw-body-medium:500;--fw-body-bold:700;--fw-display-semi:600;--fw-display-bold:700;--fs-display-md:clamp(2.7rem,2rem + 2.4vw,3.8rem);--fs-h3:2.05rem;--fs-h4:1.68rem;--fs-h5:1.4rem;--fs-body-lg:1.45rem;--fs-body:1.22rem;--fs-body-sm:1.16rem;--fs-caption:1.04rem;--fs-eyebrow:.95rem;--lh-tight:1.08;--lh-snug:1.2;--lh-normal:1.45;--lh-relaxed:1.65;--ls-display:-.02em;--ls-heading:-.01em;--ls-eyebrow:.14em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--radius-xs:4px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-pill:999px;--shadow-md:0 8px 20px rgba(0,0,100,.08),0 2px 6px rgba(0,0,100,.05);--shadow-lg:0 20px 40px rgba(0,0,100,.1),0 6px 12px rgba(0,0,100,.06);--ease-standard:cubic-bezier(.2,0,0,1);--dur-fast:.12s;--dur-base:.2s}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font);font-weight:400;font-size:19px;line-height:1.6;-webkit-font-smoothing:antialiased}.tnum{font-variant-numeric:tabular-nums}.eyebrow{font-family:var(--display);font-weight:600;font-size:14.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--red);margin:0 0 6px}h1{font-family:var(--display);font-weight:700;color:var(--navy);font-size:48px;letter-spacing:-.02em;line-height:1.05;margin:0 0 12px}h2{font-family:var(--display);font-weight:700;color:var(--navy);font-size:31px;margin:0 0 6px}.lead{font-size:22px;color:#33334d;line-height:1.7;max-width:660px}.card{border:1px solid var(--line);border-radius:var(--r-card);padding:24px;margin:0 0 18px;background:#fff;box-shadow:var(--shadow-sm)}.btn{font-family:var(--font);font-weight:600;font-size:16.5px;border:1.5px solid transparent;border-radius:var(--r-btn);padding:14px 26px;cursor:pointer;transition:all var(--dur) var(--ease);display:inline-flex;align-items:center;gap:9px;line-height:1}.btn-primary{background:var(--cta);color:#fff}.btn-primary:hover{background:var(--cta-soft);transform:translateY(-1px)}.btn:focus-visible{outline:none;box-shadow:0 0 0 3px #00006452}.tag{font-size:13px;font-weight:600;border-radius:999px;padding:5px 12px;display:inline-flex;align-items:center;gap:6px}.tag:before{content:"";width:7px;height:7px;border-radius:999px;background:currentColor}.tag-found{color:var(--success);background:var(--success-bg)}.tag-inter{color:var(--info);background:var(--info-soft)}.tag-adv{color:var(--warning);background:var(--warning-bg)}.kpi-row{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0 0 18px}.kpi{background:#fff;border:1px solid var(--line);border-radius:var(--r-card);padding:22px;box-shadow:var(--shadow-sm)}.kpi-value{font-family:var(--display);font-size:40px;font-weight:700;color:var(--navy);line-height:1;letter-spacing:-.02em}.kpi-value .unit{font-size:16px;font-weight:500;color:var(--muted);margin-left:2px}.kpi-label{font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-top:12px}.kpi-context{font-size:14px;color:var(--muted);margin-top:8px}.kpi-context.up{color:var(--success)}.kpi-context.down{color:var(--warning)}.btn-ghost{background:transparent;color:var(--navy);border-color:var(--line)}.btn-ghost:hover{background:var(--tint);border-color:var(--navy)}.btn-lg{padding:16px 32px;font-size:17px}.btn-primary:disabled{background:var(--line);color:var(--muted);cursor:not-allowed}.btn-primary:disabled:hover{background:var(--line);transform:none}.btn-red{background:var(--red);color:#fff;border-color:transparent}.btn-red:hover{background:var(--red-soft);transform:translateY(-1px)}.eyebrow--cta{color:var(--cta)}.eyebrow--on-navy{color:#ffffff85}.hero-surface{background:radial-gradient(120% 140% at 100% 0%,#16166e 0%,var(--navy) 42%,var(--navy-deep) 100%);color:#fff;border-radius:24px;box-shadow:var(--shadow-navy)}.avatar{border-radius:999px;background:var(--navy);color:#fff;display:inline-flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:600;flex:none}.rise{animation:tia-rise .56s var(--ease) backwards}@keyframes tia-rise{0%{transform:translateY(10px);opacity:0}to{transform:none;opacity:1}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important}.btn:hover,.card:hover,.btn-ghost:hover{transform:none}}.site{max-width:var(--maxw);margin:0 auto;padding:24px 28px 80px}.hero{margin:6px 0 24px}.setup-head{margin:6px 0 34px}.setup-eyebrow{display:inline-block;font-family:var(--display);font-size:var(--fs-eyebrow);font-weight:600;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--fg-accent);margin-bottom:14px}.setup-h1{font-family:var(--display);font-weight:700;color:var(--fg-primary);font-size:var(--fs-display-md);line-height:var(--lh-tight);letter-spacing:var(--ls-display);max-width:18ch;margin:0 0 16px}.setup-lead{font-size:var(--fs-body-lg);color:var(--fg-body);line-height:var(--lh-relaxed);max-width:62ch;margin:0}.standing{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:1px;background:var(--border-subtle);border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden;margin-bottom:40px}.stand-cell{background:var(--surface-raised);padding:20px 24px}.stand-cap{display:flex;align-items:center;gap:8px;margin-bottom:14px;font-family:var(--display);font-size:var(--fs-eyebrow);font-weight:600;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--fg-muted)}.stand-val{font-family:var(--display);font-size:var(--fs-h4);font-weight:700;color:var(--fg-primary);margin-bottom:6px}.stand-sub{font-size:var(--fs-body-sm);color:var(--fg-muted);margin:0;line-height:var(--lh-normal)}.seg4{display:flex;gap:4px;margin-top:8px}.seg4 i{height:6px;flex:1;border-radius:var(--radius-pill);background:var(--tia-navy-200)}.seg4 i.on{background:var(--tia-navy)}.seg4-ends{display:flex;justify-content:space-between;margin-top:8px;font-size:var(--fs-caption);color:var(--fg-subtle)}.cfg{background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:36px 36px 32px;margin:0 0 40px;scroll-margin-top:20px}.cfg-h2{font-family:var(--display);font-size:31px;font-weight:700;color:var(--fg-primary);margin:0 0 4px}.cfg-sub{font-size:var(--fs-body);color:var(--fg-muted);margin:0 0 28px}.step-lbl{font-family:var(--display);font-size:var(--fs-h5);font-weight:600;letter-spacing:var(--ls-heading);text-transform:none;color:var(--fg-primary);margin-bottom:14px}.len-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:32px}.len-btn{cursor:pointer;text-align:center;padding:16px 12px;border-radius:var(--radius-sm);font-family:var(--font-body);transition:border-color var(--dur-base) var(--ease-standard),background-color var(--dur-base) var(--ease-standard);background:var(--surface-raised);color:var(--fg-primary);border:1px solid var(--border-default)}.len-btn:hover{border-color:var(--tia-navy);background:var(--tia-navy-50)}.len-btn.on{background:var(--tia-navy);color:var(--fg-on-inverse);border:1.5px solid var(--tia-navy);box-shadow:var(--shadow-sm)}.len-btn .lt{display:block;font-family:var(--display);font-size:var(--fs-h5);font-weight:600;margin-bottom:4px}.len-btn .lq{display:block;font-size:var(--fs-body-sm)}.len-btn .lm{display:block;font-family:var(--mono);font-size:var(--fs-caption);margin-top:6px;opacity:.8}.mode-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px}.mode-card{cursor:pointer;text-align:left;padding:16px 18px;border-radius:var(--radius-md);font-family:var(--font-body);transition:border-color var(--dur-base) var(--ease-standard),background-color var(--dur-base) var(--ease-standard);background:var(--surface-raised);color:var(--fg-primary);border:1px solid var(--border-default)}.mode-card:hover{border-color:var(--tia-navy)}.mode-card.on{background:var(--tia-light-blue);border:1.5px solid var(--tia-navy)}.mode-top{display:flex;align-items:center;gap:8px;margin-bottom:6px}.mode-name{font-family:var(--display);font-size:var(--fs-h5);font-weight:600}.mode-rec{font-family:var(--display);font-size:11.5px;font-weight:600;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--tia-red);background:var(--tia-red-100);padding:3px 8px;border-radius:var(--radius-pill)}.mode-desc{display:block;font-size:var(--fs-body-sm);color:var(--fg-muted);line-height:var(--lh-normal)}.tnote{display:flex;align-items:flex-start;gap:12px;background:var(--surface-subtle);border-radius:var(--radius-md);padding:16px 18px;margin-bottom:28px}.tnote p{font-size:var(--fs-body-sm);color:var(--fg-body);margin:0;line-height:var(--lh-normal)}.chipwrap{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:28px}.chip{display:inline-flex;align-items:center;gap:7px;cursor:pointer;padding:11px 16px;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:var(--fs-body-sm);transition:border-color var(--dur-fast) var(--ease-standard),background-color var(--dur-fast) var(--ease-standard);background:var(--surface-raised);color:var(--fg-body);border:1px solid var(--border-default)}.chip:hover{border-color:var(--tia-navy);background:var(--tia-navy-50)}.chip.on{background:var(--tia-light-blue);color:var(--fg-primary);font-weight:var(--fw-body-medium);border:1.5px solid var(--tia-navy)}.focus-guide{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin:0 0 14px;padding:12px 15px;background:var(--tia-navy-50);border:1px solid var(--border-default);border-radius:12px}.fg-txt{flex:1 1 240px;font-size:var(--fs-body-sm);color:var(--fg-body)}.fg-txt b{color:var(--fg-primary)}.fg-btn{display:inline-flex;align-items:center;gap:7px;cursor:pointer;border:none;border-radius:999px;background:var(--cta);color:#fff;font-family:var(--font-body);font-weight:600;font-size:var(--fs-body-sm);padding:9px 15px;white-space:nowrap}.fg-btn svg{width:15px;height:15px;stroke:currentColor}.fg-btn:hover{filter:brightness(1.08)}.chip-dot{width:9px;height:9px;border-radius:999px;flex:0 0 auto;display:inline-block}.chip-dot--weak{background:var(--red)}.chip-dot--mid{background:#e0922b}.chip-dot--strong{background:#2e9e5b}.chip-dot--nodata{background:var(--border-default)}.chip-score{font-weight:600;color:var(--muted);font-size:.82rem}.chip.on .chip-score{color:var(--fg-primary)}.sumbar{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;border-top:1px solid var(--border-subtle);padding-top:24px}.sumtext{display:flex;align-items:center;gap:10px;min-width:0;font-size:var(--fs-body-sm);color:var(--fg-body);line-height:var(--lh-normal)}.start-btn{cursor:pointer;font-family:var(--display);font-weight:600;font-size:var(--fs-body);letter-spacing:var(--ls-heading);padding:14px 28px;border-radius:var(--radius-sm);border:none;white-space:nowrap;background:var(--action-primary-bg);color:var(--action-primary-fg);transition:background-color var(--dur-base) var(--ease-standard)}.start-btn:hover{background:var(--action-primary-bg-hover)}.start-btn:disabled{background:var(--tia-grey-200);color:var(--fg-subtle);cursor:not-allowed}.perf-link{display:inline-flex;align-items:center;gap:6px;margin-top:18px;font-family:var(--display);font-weight:600;font-size:var(--fs-body-sm);color:var(--fg-primary);background:none;border:none;cursor:pointer;padding:0}.perf-link:hover{color:var(--fg-accent)}.tia-hero{background:radial-gradient(120% 150% at 100% 0%,#1a1a86 0%,var(--navy) 46%,var(--navy-deep) 100%);color:#fff;border-radius:22px;box-shadow:var(--shadow-navy);padding:22px 34px 24px;margin:6px 0 28px}.tia-hero-top{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:12px}.tia-hero-eyebrow{font-family:var(--display);font-weight:600;font-size:14px;letter-spacing:.18em;text-transform:uppercase;color:#ff5a5a}.tia-hero-meta{display:inline-flex;align-items:center;gap:10px;font-family:var(--display);font-weight:600;font-size:15px;color:#ffffffe6}.tia-hero-meta .thm-xp{font-family:var(--mono);font-weight:500;color:#ffffff9e}.tia-hero-meta .thm-dot{color:#fff6}.tia-hero-meta .thm-streak{display:inline-flex;align-items:center;gap:6px;background:var(--red);color:#fff;border-radius:999px;padding:5px 13px;font-size:13.5px;margin-left:4px}.tia-hero-meta .thm-streak--off{background:#ffffff1f;color:#ffffffbf}.tia-hero-meta .thm-freeze{display:inline-flex;align-items:center;gap:5px;background:#ffffff24;color:#fff;border-radius:999px;padding:5px 12px;font-size:13.5px;margin-left:6px}.tia-hero-meta .thm-freeze svg{width:14px;height:14px}.tia-hero-topright{display:flex;align-items:center;gap:12px}.notif-wrap{position:relative}.notif-bell{position:relative;width:40px;height:40px;border-radius:999px;border:none;cursor:pointer;background:#ffffff1f;color:#fff;display:flex;align-items:center;justify-content:center;transition:background-color var(--dur-base) var(--ease-standard)}.notif-bell:hover{background:#ffffff38}.notif-bell svg{width:20px;height:20px}.notif-badge{position:absolute;top:-3px;right:-3px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--red);color:#fff;font-family:var(--display);font-weight:700;font-size:11px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px var(--navy)}.notif-panel{position:absolute;top:calc(100% + 12px);right:0;width:360px;max-width:88vw;background:#fff;border:1px solid var(--border-subtle);border-radius:16px;box-shadow:var(--shadow-lg);opacity:0;transform:translateY(-10px) scale(.97);transform-origin:top right;pointer-events:none;transition:opacity .22s var(--ease-standard),transform .22s var(--ease-standard);z-index:70;overflow:hidden}.notif-panel.open{opacity:1;transform:none;pointer-events:auto}.notif-head{font-family:var(--display);font-weight:700;color:var(--navy);font-size:15px;padding:15px 18px 11px;border-bottom:1px solid var(--border-subtle)}.notif-list{padding:8px}.notif-card{display:flex;align-items:flex-start;gap:11px;padding:12px;border-radius:12px;position:relative;overflow:hidden;max-height:170px;transition:opacity .26s var(--ease-standard),transform .26s var(--ease-standard),max-height .26s var(--ease-standard),margin .26s var(--ease-standard),padding .26s var(--ease-standard)}.notif-card:hover{background:var(--tia-navy-50)}.notif-card.dismissing{opacity:0;transform:translate(40px);max-height:0;margin:0;padding-top:0;padding-bottom:0}.nc-ic{flex:0 0 auto;width:32px;height:32px;border-radius:9px;background:var(--lightblue);color:var(--navy);display:flex;align-items:center;justify-content:center}.nc-ic svg{width:17px;height:17px;stroke:currentColor}.nk-target .nc-ic{background:var(--warning-bg);color:var(--warning)}.nk-up .nc-ic,.nk-best .nc-ic{background:var(--success-bg);color:var(--success)}.nk-flame .nc-ic{background:var(--tia-red-100);color:var(--red)}.nk-update .nc-ic,.nk-welcome .nc-ic{background:var(--info-soft);color:var(--info)}.nc-body{flex:1;min-width:0}.nc-title{font-family:var(--display);font-weight:600;font-size:13.5px;color:var(--navy)}.nc-msg{font-size:12.5px;color:var(--muted);line-height:1.45;margin-top:2px}.nc-x{flex:0 0 auto;background:none;border:none;cursor:pointer;color:var(--faint);width:24px;height:24px;border-radius:999px;display:flex;align-items:center;justify-content:center;transition:color var(--dur-base) var(--ease-standard),background-color var(--dur-base) var(--ease-standard),transform var(--dur-base) var(--ease-standard)}.nc-x svg{width:14px;height:14px;stroke:currentColor}.nc-x:hover{color:var(--red);background:var(--tia-red-100);transform:rotate(90deg)}.notif-empty{padding:26px 18px;text-align:center;color:var(--muted);font-size:13px}@media (max-width:560px){.notif-panel{position:fixed;top:66px;right:8px;left:8px;width:auto;max-width:none}}.tia-hero-meta .thm-streak svg{width:14px;height:14px}.tia-hero-h1{font-family:var(--display);font-weight:700;font-size:clamp(36px,2vw + 28px,52px);line-height:1.04;letter-spacing:-.02em;color:#fff;margin:0 0 10px;max-width:22ch}.tia-hero-lead{font-size:1.12rem;line-height:1.5;color:#ffffffd6;max-width:64ch;margin:0 0 14px}.tia-hero-xp{max-width:440px;margin:0 0 16px}.tia-hero-xp .thx-bar{height:9px;background:#ffffff2e;border-radius:999px;overflow:hidden}.tia-hero-xp .thx-bar i{display:block;height:100%;background:#fff;border-radius:999px;transition:width var(--dur-slow,.42s) var(--ease-standard)}.tia-hero-xp .thx-next{font-size:14px;color:#ffffffa8;margin-top:9px}.xp-ladder{max-width:560px;margin:0 0 14px}.hero-gamerow{display:flex;gap:26px;align-items:flex-start;flex-wrap:wrap;margin:0 0 16px}.hero-gamerow>.xp-ladder{flex:1 1 320px;max-width:none;margin:0}.hero-gamerow>.streak-cal{flex:2 1 540px;margin:0}.xpl-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:9px}.xpl-title{font-family:var(--display);font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#ffffffa8}.xpl-xp{font-family:var(--mono);font-size:13px;color:#fff9}.xpl-row,.xpl-node{display:flex;align-items:center}.xpl-node:not(:first-child){flex:1}.xpl-conn{flex:1;height:4px;background:#ffffff2e;border-radius:999px;margin:0 7px;overflow:hidden}.xpl-conn i{display:block;height:100%;background:#fff;border-radius:999px;transition:width .8s var(--ease-standard)}.xpl-dot{flex:0 0 auto;width:30px;height:30px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:700;font-size:13px;border:2px solid rgba(255,255,255,.38);color:#ffffffc7}.xpl-node.cur .xpl-dot{background:#fff;color:var(--navy);border-color:#fff;box-shadow:0 5px 16px #00000052}.xpl-foot{font-size:13px;color:#ffffffa3;margin-top:8px}@media (max-width:520px){.xpl-dot{width:30px;height:30px;font-size:12.5px}.xpl-conn{margin:0 4px}}.streak-cal{display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin:0 0 6px;padding:13px 18px;background:#ffffff0d;border:1px solid rgba(255,255,255,.14);border-radius:14px}.sc-left{flex:0 0 auto;min-width:112px}.sc-flame{width:34px;height:34px;border-radius:9px;background:#ffffff1f;display:flex;align-items:center;justify-content:center;color:#fff;margin-bottom:9px}.sc-flame svg{width:19px;height:19px}.sc-streak{display:flex;align-items:baseline;gap:6px}.sc-n{font-family:var(--display);font-weight:700;font-size:32px;color:#fff;line-height:1}.sc-u{font-size:14px;color:#fff9}.sc-lbl{font-size:10.5px;letter-spacing:.1em;text-transform:uppercase;color:#ffffff8c;font-weight:600;margin-top:6px}.sc-cals{display:flex;gap:24px;flex:1;justify-content:center;flex-wrap:wrap}.cal-mtitle{font-family:var(--display);font-weight:600;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:#fff9;text-align:center;margin-bottom:6px}.cal-dows{display:grid;grid-template-columns:repeat(7,1fr);gap:4px;margin-bottom:4px}.cal-dows span{font-size:9px;font-weight:600;color:#fff6;text-align:center}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.cal-cell{width:15px;height:15px;border-radius:999px;border:1.5px solid rgba(255,255,255,.18);box-sizing:border-box}.cal-cell.empty{border:none}.cal-cell.on{background:#fff;border-color:#fff}.cal-cell.today{border:2px solid var(--red);transform-origin:center;position:relative;z-index:2;animation:cal-today-pulse 1.5s ease-in-out infinite}.cal-cell.on.today{background:#fff;border:2px solid var(--red)}@keyframes cal-today-pulse{0%,to{transform:scale(1);box-shadow:0 0 0 2px #f006}50%{transform:scale(1.32);box-shadow:0 0 0 6px #ff00000a}}@media (prefers-reduced-motion:reduce){.cal-cell.today{animation:none;box-shadow:0 0 0 3px #ff00002e}}.sc-stats{flex:0 0 auto;display:flex;flex-direction:column;gap:11px;padding-left:24px;border-left:1px solid rgba(255,255,255,.14);min-width:130px}.sc-sv{font-family:var(--display);font-weight:700;font-size:18px;color:#fff;line-height:1}.sc-sv .sc-snow{width:14px;height:14px;vertical-align:-2px;margin-right:5px;opacity:.85}.sc-sl{font-size:11.5px;color:#ffffff8c;margin-top:3px}@media (max-width:860px){.streak-cal{gap:18px}.sc-stats{padding-left:0;border-left:none;border-top:1px solid rgba(255,255,255,.14);padding-top:14px;flex-direction:row;flex-wrap:wrap;gap:20px}}.nav-rail{position:fixed;left:16px;top:50%;transform:translateY(-50%);z-index:1200;display:flex;flex-direction:column;gap:8px;background:#ffffffeb;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);padding:9px 8px;box-shadow:var(--shadow-lg)}.nav-rail-btn{position:relative;width:46px;height:46px;border-radius:var(--radius-pill);border:none;background:transparent;color:var(--navy);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background-color var(--dur-base) var(--ease-standard),color var(--dur-base) var(--ease-standard),transform var(--dur-base) var(--ease-standard)}.nav-rail-btn:hover{background:var(--tia-navy-50)}.nav-rail-btn.active{background:var(--navy);color:#fff}.nav-rail-btn.active:hover{background:var(--navy-soft)}.nrb-ic{display:flex}.nav-rail-btn svg{width:21px;height:21px;stroke:currentColor}.nav-rail-pop{position:absolute;left:56px;top:50%;transform:translateY(-50%) translate(-8px);opacity:0;pointer-events:none;background:var(--navy);color:#fff;border-radius:12px;padding:11px 15px;box-shadow:var(--shadow-lg);transition:opacity var(--dur-base) var(--ease-standard),transform var(--dur-base) var(--ease-standard);display:flex;flex-direction:column;gap:3px;width:max-content;max-width:250px;text-align:left}.nav-rail-pop b{font-family:var(--display);font-weight:600;font-size:14.5px}.nav-rail-pop span{font-size:13px;color:#ffffffd1;line-height:1.4;font-family:var(--font)}.nav-rail-pop:before{content:"";position:absolute;left:-6px;top:50%;transform:translateY(-50%);border:6px solid transparent;border-right-color:var(--navy)}.nav-rail-btn:hover .nav-rail-pop,.nav-rail-btn:focus-visible .nav-rail-pop{opacity:1;transform:translateY(-50%) translate(0)}@media (max-width:860px){.nav-rail{display:none}}body.perf-open{overflow:hidden}.perf-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;display:flex;align-items:flex-start;justify-content:center}.perf-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#0406228f;backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);opacity:0;transition:opacity .3s var(--ease-standard);cursor:pointer}.perf-overlay.open .perf-backdrop{opacity:1}.perf-overlay.closing .perf-backdrop{opacity:0;transition:opacity .26s var(--ease-standard)}.perf-pane{position:relative;z-index:2;width:min(1100px,calc(100vw - 36px));max-height:calc(100vh - 48px);margin:24px auto;background:#fff;border-radius:24px;box-shadow:0 40px 120px #00002080,0 4px 18px #00002047;overflow:hidden;opacity:0;transform:translateY(42px) scale(.985);transition:opacity .38s var(--ease-standard),transform .38s var(--ease-standard)}.perf-overlay.open .perf-pane{opacity:1;transform:none}.perf-overlay.closing .perf-pane{opacity:0;transform:translateY(36px) scale(.985);transition:opacity .28s var(--ease-standard),transform .28s var(--ease-standard)}.perf-pane-scroll{max-height:calc(100vh - 48px);overflow-y:auto;-webkit-overflow-scrolling:touch;padding:30px 34px 36px}.perf-x{position:absolute;top:15px;right:15px;z-index:6;width:42px;height:42px;border-radius:999px;border:none;cursor:pointer;background:#00004099;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-md);transition:background-color var(--dur-base) var(--ease-standard),transform var(--dur-base) var(--ease-standard)}.perf-x svg{width:20px;height:20px;stroke:currentColor;stroke-width:2.4;stroke-linecap:round}.perf-x:hover{background:var(--red);transform:rotate(90deg)}.perf-x:focus-visible{outline:2px solid #fff;outline-offset:2px}@media (max-width:560px){.perf-pane{width:calc(100vw - 16px);max-height:calc(100vh - 20px);margin:10px auto;border-radius:18px}.perf-pane-scroll{max-height:calc(100vh - 20px);padding:22px 18px 26px}.perf-x{top:11px;right:11px;width:38px;height:38px}}@media (prefers-reduced-motion: reduce){.perf-backdrop,.perf-pane,.perf-overlay.closing .perf-pane,.perf-overlay.closing .perf-backdrop{transition:none}.perf-pane{transform:none}.perf-x{transition:none}}.perf-glance{display:flex;gap:22px;align-items:center;flex-wrap:nowrap;background:#fff;border:1px solid var(--border-subtle);border-radius:18px;padding:20px 22px;margin:18px 0 0;box-shadow:0 1px 3px #0000200f}.pg-gauge{text-align:center;flex:0 0 auto}.pg-gauge svg{max-height:150px}.pg-trend{flex:1 1 200px;min-width:0}.perf-glance svg{max-width:100%;height:auto}.pg-trend .chartwrap svg{max-height:140px}.pg-cap{font-size:.86rem;color:var(--muted);margin-bottom:6px}.pg-chips{display:flex;flex-direction:column;gap:8px;flex:0 0 auto;min-width:190px}.gchip{background:var(--tia-navy-50);border-radius:12px;padding:9px 12px}.gc-l{font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600}.gc-v{font-family:var(--display);font-weight:700;color:var(--navy);font-size:1.05rem;line-height:1.18}.gc-s{font-size:.8rem;color:var(--muted);margin-top:1px}.perf-grid{column-count:2;column-gap:18px;margin-top:18px}.perf-card{background:#fff;border:1px solid var(--border-subtle);border-radius:18px;padding:18px 20px;box-shadow:0 1px 3px #0000200f;break-inside:avoid;-webkit-column-break-inside:avoid;margin:0 0 18px}.perf-card svg{max-width:100%;height:auto}.perf-card .chartwrap{text-align:center}.chartwrap{max-width:100%}.chartwrap svg{max-width:100%;height:auto}html,body{overflow-x:hidden}.start-btn{max-width:100%}.apt-info-pop{max-width:min(300px,84vw)}.perf-more{margin-top:12px;width:100%}.cal-verdict{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 14px;border-radius:12px;margin-bottom:14px}.cal-verdict.cal-over{background:#ff000012}.cal-verdict.cal-under{background:#d88a1e1f}.cal-verdict.cal-ok{background:#2e9e5b1f}.cv-badge{font-family:var(--display);font-weight:700;font-size:1.02rem;color:var(--navy)}.cal-over .cv-badge{color:var(--red)}.cal-under .cv-badge{color:#b5781e}.cal-ok .cv-badge{color:#2e9e5b}.cv-score{font-size:.82rem;color:var(--muted)}.cv-score b{font-family:var(--display);font-size:1.1rem;color:var(--fg-primary);margin-right:2px}.cal-row{margin:0 0 12px}.cr-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}.cr-lab{font-weight:600;color:var(--fg-primary);font-size:.92rem}.cr-tag{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;font-weight:600;color:#2e9e5b}.cal-row.cal-over .cr-tag{color:var(--red)}.cal-row.cal-under .cr-tag{color:#b5781e}.cr-bar{position:relative;height:12px;background:#f1f1f7;border-radius:7px;overflow:hidden}.cr-band{position:absolute;top:0;bottom:0;background:#2e9e5b38}.cr-mark{position:absolute;top:-2px;width:4px;height:16px;border-radius:2px;background:var(--navy);transform:translate(-2px)}.cal-row.cal-over .cr-mark{background:var(--red)}.cal-row.cal-under .cr-mark{background:#d98a1e}.cr-meta{font-size:.8rem;color:var(--muted);margin-top:5px}.cr-meta b{color:var(--fg-primary)}.cal-insight{margin-top:12px;font-size:.92rem;line-height:1.55;color:var(--fg-body);background:var(--tia-navy-50);border-radius:12px;padding:12px 14px}.cal-insight b{color:var(--fg-primary)}.ach-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}.ach-count{font-size:.9rem;color:var(--fg-body);white-space:nowrap}.ach-count b{font-family:var(--display);font-size:1.05rem;color:var(--fg-primary)}.ach-bar{flex:1;height:7px;border-radius:999px;background:#ececf4;overflow:hidden}.ach-bar i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--cta),#7b3ff2)}.badge-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(116px,1fr));gap:12px;margin-top:2px}.badge{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:6px;padding:16px 10px 13px;border-radius:16px;border:1px solid var(--border-subtle);background:#fff;overflow:hidden;transition:transform var(--dur-base) var(--ease-standard),box-shadow var(--dur-base) var(--ease-standard)}.badge-ic{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;color:var(--fg-subtle);background:#eef0f6}.badge-ic svg{width:24px;height:24px}.badge-t{font-family:var(--display);font-weight:700;font-size:.86rem;line-height:1.12;color:var(--fg-primary)}.badge-d{font-size:.72rem;line-height:1.3;color:var(--muted)}.badge.earned{border-color:transparent;color:#fff;box-shadow:0 6px 18px #0000201f}.badge.earned .badge-ic{color:#fff;box-shadow:inset 0 1px #ffffff73,0 3px 8px #0000002e}.badge.earned .badge-t{color:#fff}.badge.earned .badge-d{color:#ffffffd1}.badge.earned:after{content:"";position:absolute;top:-40%;left:-35%;width:55%;height:180%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.38),transparent);transform:skew(-18deg);pointer-events:none}.badge.badge--common.earned{background:linear-gradient(150deg,#4a4aa0,#15155e)}.badge.badge--common.earned .badge-ic{background:#ffffff2e}.badge.badge--rare.earned{background:linear-gradient(150deg,#2f6df0,#0224ff)}.badge.badge--rare.earned .badge-ic{background:#fff3}.badge.badge--epic.earned{background:linear-gradient(150deg,#8350f5,#4b1fc9)}.badge.badge--epic.earned .badge-ic{background:#fff3}.badge.badge--legendary.earned{background:linear-gradient(150deg,#f7b733,#e3681a)}.badge.badge--legendary.earned .badge-ic{background:#ffffff3d}.badge.earned:hover{transform:translateY(-3px);box-shadow:0 12px 26px #00002033}.badge.locked{background:var(--tia-navy-50);border-style:dashed}.badge.locked .badge-ic{background:#e7e7ef;color:#aaaabf}.badge.locked .badge-t{color:var(--fg-muted)}.badge.locked .badge-d{color:var(--fg-subtle)}.badge-lock{position:absolute;top:8px;right:8px;color:#b6b6c6}.badge-lock svg{width:14px;height:14px}@media (prefers-reduced-motion:no-preference){.badge.earned:after{animation:badge-shine 5s ease-in-out infinite}}@keyframes badge-shine{0%,74%{left:-35%}90%,to{left:130%}}.hero-badges{display:inline-flex;align-items:center;gap:12px;cursor:pointer;border:1px solid rgba(255,255,255,.18);background:#ffffff0f;border-radius:999px;padding:7px 18px 7px 10px;margin:16px 0 2px;transition:background-color var(--dur-base) var(--ease-standard),border-color var(--dur-base) var(--ease-standard),transform var(--dur-base) var(--ease-standard)}.hero-badges:hover{background:#ffffff1f;border-color:#ffffff4d;transform:translateY(-1px)}.hb-stack{display:flex;align-items:center}.hb-disc{width:34px;height:34px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;border:2px solid var(--navy);margin-left:-13px;box-shadow:0 2px 6px #0000004d}.hb-disc:first-child{margin-left:0}.hb-disc svg{width:17px;height:17px}.hb-disc--common{background:linear-gradient(150deg,#4a4aa0,#1c1c72)}.hb-disc--rare{background:linear-gradient(150deg,#2f6df0,#0224ff)}.hb-disc--epic{background:linear-gradient(150deg,#8350f5,#4b1fc9)}.hb-disc--legendary{background:linear-gradient(150deg,#f7b733,#e3681a)}.hb-disc--locked{background:#ffffff24;color:#ffffff80}.hb-txt{display:inline-flex;align-items:center;gap:6px;color:#fff;font-size:.98rem;white-space:nowrap}.hb-txt b{font-family:var(--display);font-weight:700;font-size:1.15rem}.hb-txt svg{opacity:.75}.res-game{display:flex;gap:12px;flex-wrap:wrap;margin:0 0 16px}.rg-item{flex:1 1 120px;background:var(--tia-navy-50);border-radius:14px;padding:14px 16px;text-align:center}.rg-v{font-family:var(--display);font-weight:700;font-size:1.5rem;color:var(--navy);line-height:1.1}.rg-l{font-size:.74rem;color:var(--muted);margin-top:4px;text-transform:uppercase;letter-spacing:.04em}.xp-break{background:#fff;border:1px solid var(--border-subtle);border-radius:16px;padding:16px 18px;margin:0 0 18px;box-shadow:0 1px 3px #0000200f}.xpb-head{display:flex;align-items:center;gap:9px;font-family:var(--display);font-weight:700;font-size:1.05rem;color:var(--navy);margin-bottom:10px}.xpb-head svg{width:20px;height:20px;color:var(--cta)}.xpb-head b{color:var(--cta)}.xpb-row{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--border-subtle);font-size:.92rem}.xpb-l{flex:1;color:var(--fg-body)}.xpb-calc{color:var(--muted);font-size:.82rem;white-space:nowrap}.xpb-v{font-family:var(--display);font-weight:700;color:var(--navy);min-width:46px;text-align:right}.xpb-speed .xpb-v{color:var(--cta)}.xpb-total{display:flex;justify-content:space-between;align-items:center;padding-top:10px;font-family:var(--display);font-weight:700;color:var(--navy);font-size:1.05rem}.xpb-why{margin-top:10px;font-size:.84rem;line-height:1.5;color:var(--muted);background:var(--tia-navy-50);border-radius:10px;padding:10px 12px}.xpb-why b{color:var(--fg-primary)}.xp-cel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;display:flex;align-items:center;justify-content:center;pointer-events:none}.xp-cel-card{position:relative;background:linear-gradient(150deg,#1a1a86,var(--navy));color:#fff;border-radius:20px;padding:24px 42px;text-align:center;box-shadow:0 24px 60px #00002080;animation:xpcel-in .36s var(--ease-standard)}.xp-cel.out .xp-cel-card{animation:xpcel-out .5s var(--ease-standard) forwards}.xp-cel-xp{font-family:var(--display);font-weight:800;font-size:3rem;line-height:1}.xp-cel-sub{font-size:1rem;color:#ffffffd1;margin-top:6px}.xp-confetti{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden}.xp-confetti i{position:absolute;top:50%;left:50%;width:9px;height:9px;border-radius:2px;opacity:0;animation:xpconf 1.5s var(--ease-standard) forwards;animation-delay:var(--d)}@keyframes xpcel-in{0%{opacity:0;transform:scale(.7)}to{opacity:1;transform:none}}@keyframes xpcel-out{to{opacity:0;transform:scale(.92) translateY(-12px)}}@keyframes xpconf{0%{opacity:1;transform:translate(0) rotate(0)}to{opacity:0;transform:translate(var(--x),var(--y)) rotate(var(--r))}}.perf-read{margin-top:18px}.pc-head{display:flex;align-items:center;gap:9px;font-family:var(--display);font-weight:700;font-size:1.18rem;color:var(--navy);margin:0 0 6px}.pc-head svg{width:22px;height:22px;flex:0 0 auto}.pc-sub{font-size:.84rem;color:var(--muted);margin:0 0 12px;line-height:1.4}.m-top{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:5px}.m-name{font-weight:600;color:var(--fg-primary);font-size:.92rem}.m-val{font-family:var(--display);font-weight:700;color:var(--navy);font-size:1rem}.m-bar{position:relative;height:10px;background:#eef0f6;border-radius:6px}.m-bar>i{display:block;height:100%;border-radius:6px;background:linear-gradient(90deg,var(--cta),#5b7bff)}.m-goal{position:absolute;top:-3px;width:3px;height:16px;border-radius:2px;background:var(--navy)}.m-cap{font-size:.76rem;color:var(--muted);margin-top:6px}.m-cap b{color:var(--fg-primary)}@media (max-width:760px){.perf-grid{column-count:1}.perf-glance{gap:16px;flex-wrap:wrap}.pg-chips{min-width:0;width:100%}.pg-trend{flex:1 1 240px}}@media (max-width:600px){.mode-grid,.standing{grid-template-columns:1fr}}@media (max-width:560px){.site{padding:16px 14px 64px}.cfg{padding:22px 18px}.cfg-h2{font-size:25px}.len-grid{grid-template-columns:1fr;gap:10px}.streak-cal{flex-direction:column;align-items:stretch}.sc-cals{justify-content:flex-start}.sc-stats{padding-left:0;border-left:none}.tia-hero-lead{font-size:1rem}.perf-glance{padding:16px}}#app.page-in{animation:page-in .3s var(--ease-standard)}@keyframes page-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.tia-hero-banknote{font-size:13px;color:#fff9;font-family:var(--mono);margin:-6px 0 14px}.apt-info{position:relative;display:inline-flex;align-items:center;margin-left:8px;cursor:help;color:#ffffffb8;vertical-align:middle;outline:none}.apt-info svg{width:15px;height:15px}.apt-info-pop{position:absolute;left:0;bottom:150%;transform:translateY(6px);opacity:0;pointer-events:none;width:max-content;max-width:300px;background:#fff;color:var(--ink);border-radius:12px;padding:12px 15px;box-shadow:var(--shadow-lg);font-size:12.5px;line-height:1.55;font-family:var(--font);font-weight:400;text-transform:none;letter-spacing:0;z-index:6;transition:opacity var(--dur-base) var(--ease-standard),transform var(--dur-base) var(--ease-standard)}.apt-info-pop b{font-weight:600}.apt-info-pop:after{content:"";position:absolute;left:14px;top:100%;border:6px solid transparent;border-top-color:#fff}.apt-info:hover .apt-info-pop,.apt-info:focus .apt-info-pop,.apt-info:focus-within .apt-info-pop{opacity:1;transform:translateY(0);pointer-events:auto}@media (prefers-reduced-motion: reduce){#app.page-in{animation:none}}.tia-hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ffffff29;border:1px solid rgba(255,255,255,.16);border-radius:14px;overflow:hidden;margin:0 0 16px}.tia-hero-stat{background:#ffffff0d;padding:13px 17px}.tia-hero-stat .ths-cap{display:flex;align-items:center;gap:8px;font-family:var(--display);font-weight:600;font-size:12.5px;letter-spacing:.1em;text-transform:uppercase;color:#ffffff9e;margin-bottom:7px}.tia-hero-stat .ths-cap svg{width:15px;height:15px;stroke:#ffffffb8}.tia-hero-stat .ths-val{font-family:var(--display);font-weight:700;font-size:1.4rem;color:#fff;line-height:1.1}.tia-hero-stat .ths-val .mono,.tia-hero-stat .ths-val span{font-family:var(--mono)}.tia-hero-stat .ths-sub{font-size:13.5px;color:#fff9;margin:8px 0 0;line-height:1.4}.seg4--hero{display:flex;gap:4px;margin-top:12px}.seg4--hero i{height:6px;flex:1;border-radius:999px;background:#ffffff38}.seg4--hero i.on{background:#fff}.apt-feature{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin:2px 0 16px}.apt-big{display:flex;align-items:baseline;gap:3px;flex:none}.apt-num{font-family:var(--display);font-weight:700;font-size:2.7rem;color:#fff;line-height:1;letter-spacing:-.02em}.apt-den{font-family:var(--display);font-weight:600;font-size:1.25rem;color:#ffffff80}.apt-meta{flex:1;min-width:280px}.apt-cap{font-family:var(--display);font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#ffffffa8;margin-bottom:7px}.apt-cap b{color:#fff;font-weight:700}.apt-gauge{position:relative;height:12px;border-radius:999px;background:#ffffff29}.apt-gauge-fill{height:100%;border-radius:999px;background:linear-gradient(90deg,#4a4ab8,var(--cta));transition:width .9s var(--ease-standard)}.apt-tick{position:absolute;top:-4px;width:2px;height:20px;background:#ffffff6b;transform:translate(-1px)}.apt-marker{position:absolute;top:50%;width:18px;height:18px;border-radius:999px;background:#fff;border:3px solid var(--red);transform:translate(-50%,-50%);box-shadow:0 3px 10px #00000059;transition:left .9s var(--ease-standard)}.apt-bands{position:relative;height:14px;margin-top:6px}.apt-bands span{position:absolute;transform:translate(-50%);font-size:11px;color:#ffffff80;white-space:nowrap}@media (max-width:720px){.apt-num{font-size:3rem}.apt-bands span{font-size:9.5px}}.xp-cel{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;align-items:center;justify-content:center;pointer-events:none}.xp-cel.out{animation:xp-fade .64s var(--ease-standard) both}.xp-cel-card{position:relative;text-align:center;animation:xp-pop .54s var(--ease-standard) both}.xp-cel-xp{font-family:var(--display);font-weight:800;font-size:5rem;line-height:1;color:var(--cta);text-shadow:0 8px 30px rgba(2,36,255,.4)}.xp-cel-sub{font-family:var(--display);font-weight:700;font-size:1.45rem;color:var(--navy);margin-top:6px}.xp-confetti{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.xp-confetti i{position:absolute;width:11px;height:11px;border-radius:2px;opacity:0;animation:xp-conf 1.5s var(--ease-standard) forwards;animation-delay:var(--d)}@keyframes xp-pop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.14);opacity:1}to{transform:scale(1);opacity:1}}@keyframes xp-fade{to{opacity:0;transform:scale(1.06) translateY(-12px)}}@keyframes xp-conf{0%{transform:translate(0) rotate(0);opacity:1}to{transform:translate(var(--x),var(--y)) rotate(var(--r));opacity:0}}.tia-hero-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.tia-hero-build{display:inline-flex;align-items:center;gap:11px;cursor:pointer;font-family:var(--display);font-weight:600;font-size:17.5px;letter-spacing:var(--ls-heading);color:var(--navy);background:#fff;border:none;border-radius:11px;padding:16px 28px;box-shadow:0 14px 32px #00001e57;transition:transform var(--dur-base) var(--ease-standard),box-shadow var(--dur-base) var(--ease-standard)}.tia-hero-build:hover{transform:translateY(-2px);box-shadow:0 18px 40px #00001e70}.tia-hero-build svg{width:18px;height:18px;flex:none;stroke:var(--navy)}.tia-hero-perf{display:inline-flex;align-items:center;gap:10px;cursor:pointer;font-family:var(--display);font-weight:600;font-size:16.5px;letter-spacing:var(--ls-heading);color:#fff;background:#ffffff14;border:1.5px solid rgba(255,255,255,.5);border-radius:11px;padding:14.5px 24px;transition:background-color var(--dur-base) var(--ease-standard),border-color var(--dur-base) var(--ease-standard)}.tia-hero-perf:hover{background:#ffffff29;border-color:#fff}.tia-hero-perf svg{width:18px;height:18px;flex:none;stroke:#fff}.tia-hero-d5{cursor:pointer;font-family:var(--display);font-weight:600;font-size:16px;color:#fff;background:var(--red);border:none;border-radius:11px;padding:16px 24px;transition:background-color var(--dur-base) var(--ease-standard)}.tia-hero-d5:hover{background:var(--red-soft)}.tia-hero-d5.done{background:#ffffff29;color:#ffffffb8;cursor:default}.tia-hero-stats--4{grid-template-columns:repeat(4,1fr)}@media (max-width:720px){.tia-hero{padding:28px 22px;border-radius:18px}.tia-hero-stats,.tia-hero-stats--4{grid-template-columns:1fr 1fr}.tia-hero-actions{flex-direction:column;align-items:stretch}.tia-hero-build,.tia-hero-perf,.tia-hero-d5{justify-content:center}}.acc-head{display:flex;justify-content:space-between;align-items:center;cursor:pointer;-webkit-user-select:none;user-select:none;font-family:var(--display);font-weight:700;color:var(--navy);font-size:18px}.acc-head .accchev{display:inline-flex;color:var(--muted);transition:transform var(--dur-base) var(--ease-standard)}.acc-card.open .acc-head .accchev{transform:rotate(180deg)}.acc-body{height:0;overflow:hidden;transition:height .34s var(--ease-standard)}.acc-inner{padding-top:14px}.nar-panel{margin-top:22px;border-top:1px solid var(--border-subtle);padding-top:20px}.nar-head{display:flex;align-items:center;gap:9px;font-family:var(--display);font-weight:700;color:var(--navy);font-size:16px;margin-bottom:12px}.nar-head svg{width:18px;height:18px;stroke:var(--cta)}.nar-body{font-size:16.5px;line-height:1.72;color:var(--ink);white-space:pre-wrap;min-height:4.5em}.type-caret{display:inline-block;width:2px;height:1.05em;background:var(--red);margin-left:1px;vertical-align:-2px;animation:caret-blink 1s steps(1) infinite}@keyframes caret-blink{50%{opacity:0}}.perf-bottom{background:radial-gradient(120% 150% at 100% 0%,#1a1a86 0%,var(--navy) 46%,var(--navy-deep) 100%);color:#fff;border-radius:24px;box-shadow:var(--shadow-navy);padding:32px 38px;margin:32px 0 0;display:flex;align-items:center;justify-content:space-between;gap:26px;flex-wrap:wrap}.perf-bottom-h{font-family:var(--display);font-weight:700;font-size:1.7rem;color:#fff;line-height:1.15}.perf-bottom-sub{font-size:1.05rem;color:#ffffffb8;margin-top:6px}.perf-bottom-actions{display:flex;align-items:center;gap:13px;flex-wrap:wrap}@media (max-width:720px){.perf-bottom{flex-direction:column;align-items:stretch;padding:26px 22px}.perf-bottom-actions{flex-direction:column}.perf-bottom-actions .tia-hero-build,.perf-bottom-actions .tia-hero-perf,.perf-bottom-actions .tia-hero-d5{justify-content:center}}@media (max-width:720px){.standing,.mode-grid{grid-template-columns:1fr}.cfg{padding:24px 20px}}.hiw{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:0 0 24px}.hiw-step{display:flex;gap:12px;align-items:flex-start;background:#fff;border:1px solid var(--line);border-radius:var(--r-card);padding:16px 18px;box-shadow:var(--shadow-sm)}.hiw-num{flex:0 0 32px;width:32px;height:32px;border-radius:8px;background:var(--lightblue);color:var(--navy);font-family:var(--display);font-weight:700;display:flex;align-items:center;justify-content:center;font-size:15.5px}.hiw-t{font-family:var(--display);font-weight:600;color:var(--navy);font-size:18.5px;margin-bottom:3px}.hiw-d{font-size:17px;color:var(--muted);line-height:1.55}.lbl{font-size:13.5px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);font-weight:600;margin:0 0 11px}.seg-row{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 10px}.seg{font-family:var(--font);font-weight:600;font-size:16.5px;color:var(--navy);background:#fff;border:1.5px solid var(--line);border-radius:var(--r-btn);padding:13px 20px;cursor:pointer;transition:all var(--dur) var(--ease)}.seg:hover{border-color:var(--navy);background:var(--tint)}.seg.on{background:var(--navy);color:#fff;border-color:var(--navy)}.segmut{font-weight:400;opacity:.75;font-size:15px;margin-left:6px}.seg.on .segmut{color:#c9c9e8;opacity:1}.segdesc{font-size:17px;color:var(--muted);line-height:1.6;margin:0 0 22px;max-width:62ch}.note{font-size:17px;color:var(--navy);line-height:1.6;background:var(--lightblue);border-radius:12px;padding:16px 20px;margin:0 0 18px}.progress .prog-row{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:6px 0 14px}.pstat{background:var(--tint);border-radius:12px;padding:14px;text-align:center}.pv{font-family:var(--display);font-weight:700;font-size:30px;color:var(--navy)}.pl{font-size:13.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);font-weight:600;margin-top:4px}.spark{margin:0 0 14px}.qhead{display:flex;justify-content:space-between;align-items:center;margin:4px 0 14px;gap:12px}.qhead-r{display:flex;align-items:center;gap:14px}.prog{font-size:16.5px;color:var(--muted);font-weight:500}.clock{font-family:var(--mono);font-weight:500;font-size:25px;color:var(--navy);min-width:60px;text-align:right}.clock.warn{color:var(--red)}.qcard{margin:14px 0 0}.stem{font-size:24px;line-height:var(--lh-relaxed);font-weight:var(--fw-body-regular);color:var(--fg-body);margin:6px 0 20px}.optlist{display:flex;flex-direction:column;gap:10px}.optbtn{font-family:var(--font);font-weight:400;font-size:19.5px;text-align:left;display:flex;gap:14px;align-items:center;border:1px solid var(--border-default);border-radius:var(--radius-md);padding:18px 22px;background:var(--surface-raised);cursor:pointer;transition:border-color var(--dur-base) var(--ease-standard),background-color var(--dur-base) var(--ease-standard),box-shadow var(--dur-base) var(--ease-standard)}.optbtn:hover{border-color:var(--tia-navy);background:var(--tia-navy-50);box-shadow:var(--shadow-sm)}.ol{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex:0 0 30px;border-radius:var(--radius-sm);background:var(--tia-light-blue);color:var(--navy);font-family:var(--display);font-weight:700;font-size:14.5px}.optbtn.correct{border-color:var(--success);background:var(--success-bg)}.optbtn.correct .ol{background:var(--success);color:#fff}.optbtn.wrong{border-color:var(--red);background:#fff0f0}.optbtn.wrong .ol{background:var(--red);color:#fff}.optbtn.dim{opacity:.5}.optbtn:disabled{cursor:default}.optbtn:disabled:hover{transform:none;box-shadow:none}.figopts{display:flex;flex-wrap:wrap;gap:12px;margin:6px 0 0}.figbtn{position:relative;border:1px solid var(--border-default);border-radius:var(--radius-md);padding:10px;background:var(--surface-raised);cursor:pointer;transition:border-color var(--dur-base) var(--ease-standard),background-color var(--dur-base) var(--ease-standard),box-shadow var(--dur-base) var(--ease-standard)}.figbtn:hover{border-color:var(--tia-navy);background:var(--tia-navy-50);box-shadow:var(--shadow-sm)}.figbtn.correct{border:2px solid var(--success);background:var(--success-bg)}.figbtn.correct .ol2{color:var(--success)}.figbtn.wrong{border:2px solid var(--red);background:#fff0f0}.figbtn.wrong .ol2{color:var(--red)}.figbtn.dim{opacity:.5}.ol2{position:absolute;top:4px;left:7px;font-size:11px;color:var(--muted);font-family:var(--display);font-weight:600}.tile{border:1px solid var(--line);border-radius:8px;display:flex;align-items:center;justify-content:center;background:#fff}.blank{color:var(--faint);font-size:24px}.mx{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;max-width:210px;margin:0 0 16px}.frow{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin:0 0 16px}.sep{font-size:22px;color:var(--faint);padding:0 4px}.explain{border-radius:var(--radius-md);padding:16px 18px;margin:16px 0 0;border:1px solid var(--border-subtle)}.explain.good{background:var(--success-bg);border-color:#bfe6d3}.explain.bad{background:#fff5f5;border-color:#ffd2d2}.ex-h{font-family:var(--display);font-weight:700;font-size:17px;margin-bottom:5px}.explain.good .ex-h{color:var(--success)}.explain.bad .ex-h{color:#b00020}.ex-b{font-size:17px;color:var(--ink);line-height:1.6}.explain+.btn{margin-top:16px}.chartwrap{margin:6px 0 14px}.vizwrap{margin:4px 0 16px}.kpi-row.mini{margin-top:6px}.kpi-row.mini .kpi{padding:16px}.kpi-row.mini .kpi-value{font-size:30px}.brow{display:flex;align-items:center;gap:12px;margin:0 0 11px}.blab{flex:0 0 176px;font-size:17px;color:var(--ink)}.btrack{position:relative;flex:1;height:14px;background:var(--tint);border-radius:7px}.bfill{height:100%;background:var(--navy);border-radius:7px}.bmark{position:absolute;top:-3px;width:2px;height:20px;background:var(--red);opacity:.75}.bval{flex:0 0 54px;text-align:right;font-family:var(--display);font-size:16px;font-weight:700;color:var(--navy)}.quad{display:grid;grid-template-columns:1fr 1fr;gap:12px}.qcell{border:1px solid var(--line);border-radius:12px;padding:18px;text-align:center}.qcell.good{background:var(--success-bg);border-color:#bfe6d3}.qcell.mid{background:var(--tint)}.qcell.warn{background:var(--warning-bg);border-color:#f0dcb8}.qcell.bad{background:#fff0f0;border-color:#ffd2d2}.qn{font-family:var(--display);font-size:36px;font-weight:700;color:var(--navy)}.ql{font-size:16px;color:var(--muted);margin-top:2px}.mut{color:var(--muted);font-size:17px;line-height:1.6;margin:2px 0 14px}.focus{margin:0;padding-left:18px;font-size:17.5px;line-height:1.9}.actions{display:flex;gap:12px;flex-wrap:wrap}.attempts{display:flex;flex-direction:column}.arow{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);font-size:16px}.arow:last-child{border-bottom:none}.amut{color:var(--muted);font-size:15px;margin-left:auto;margin-right:14px}.aacc{font-family:var(--display);font-weight:700;color:var(--navy)}@media (max-width:720px){.hiw,.kpi-row,.quad{grid-template-columns:1fr}.blab{flex-basis:104px}.progress .prog-row{grid-template-columns:repeat(2,1fr)}}.starthint{font-size:14.5px;color:var(--muted);margin:12px 0 0}.aptcard{padding:22px 24px}.aptwrap{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.aptbig{display:flex;align-items:baseline;gap:2px}.aptnum{font-family:var(--display);font-size:72px;font-weight:700;color:var(--navy);line-height:1}.aptden{font-family:var(--display);font-size:25px;font-weight:600;color:var(--muted)}.aptmeta{flex:1;min-width:240px}.aptband{font-family:var(--display);font-weight:700;font-size:22px;margin-bottom:4px}.aptline{font-size:17px;color:var(--muted);line-height:1.6}.verdict{font-size:20px;color:var(--ink);line-height:1.7;margin:2px 0 0}.namut{flex:1;font-size:15.5px;color:var(--faint);font-style:italic}.sgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.sglab{font-family:var(--display);font-weight:700;font-size:15.5px;margin-bottom:4px}.review{margin-top:14px}.rvrow{display:flex;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid var(--line);font-size:15.5px}.rvrow:last-child{border-bottom:none}.rvi{flex:0 0 26px;color:var(--faint);font-family:var(--mono);font-size:14px}.rvq{flex:1;color:var(--ink)}.rvtag{flex:0 0 auto;color:var(--muted);font-size:14px}.rvres{flex:0 0 100px;text-align:right;font-weight:600;font-size:15px}.rvrow.ok .rvres{color:var(--success)}.rvrow.no .rvres{color:var(--red)}.rvrow.to .rvres{color:var(--warning)}@media (max-width:720px){.sgrid{grid-template-columns:1fr}.rvtag{display:none}}.sublbl{font-size:16.5px;color:var(--muted,#6b6b80);margin:-2px 0 10px}.gamebar{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:16px 20px;margin:0 0 14px}.gb-left{flex:1;min-width:220px}.gb-lvl-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px}.gb-lvl{font-family:var(--display);font-weight:700;color:var(--fg-primary);font-size:var(--fs-h5)}.gb-xp{font-family:var(--mono);font-size:var(--fs-caption);color:var(--fg-muted)}.xpbar{height:8px;background:var(--tia-navy-100);border-radius:var(--radius-pill);overflow:hidden}.xpbar i{display:block;height:100%;background:var(--tia-navy);border-radius:var(--radius-pill);transition:width var(--dur-slow) var(--ease-standard)}.gb-next{font-size:var(--fs-caption);color:var(--fg-subtle);margin-top:6px}.gb-right{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.streak-chip{display:inline-flex;align-items:center;gap:6px;font-family:var(--display);font-weight:600;font-size:var(--fs-body-sm);color:var(--fg-muted);background:var(--tia-grey-50);border:1px solid var(--border-subtle);border-radius:var(--radius-pill);padding:7px 14px}.streak-chip.live{color:var(--fg-primary);background:var(--tia-red-100);border-color:var(--tia-red-100)}.d5-btn{font-family:var(--display);font-weight:600;font-size:var(--fs-body-sm);padding:10px 18px;border-radius:var(--radius-sm);border:none;cursor:pointer;background:var(--action-primary-bg);color:var(--action-primary-fg);transition:background-color var(--dur-base) var(--ease-standard)}.d5-btn:hover{background:var(--action-primary-bg-hover)}.d5-btn.done{background:var(--tia-grey-100);color:var(--fg-muted);cursor:default}.streak-nudge{font-size:var(--fs-body-sm);color:var(--tia-red-700);background:var(--tia-red-100);border-radius:var(--radius-md);padding:10px 16px;margin:0 0 18px}.res-game{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:0 0 18px}.res-game .rg-item{background:var(--surface-subtle);border-radius:var(--radius-md);padding:16px;text-align:center}.rg-v{font-family:var(--display);font-size:34px;font-weight:700;color:var(--fg-primary);line-height:1}.rg-l{font-size:13.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted);font-weight:600;margin-top:8px}.pb-banner{display:flex;align-items:center;gap:8px;font-size:var(--fs-body);color:var(--fg-primary);background:linear-gradient(90deg,var(--tia-light-blue),var(--tia-navy-50));border:1px solid var(--tia-navy-200);border-radius:var(--radius-md);padding:14px 18px;margin:0 0 14px}.pb-spark{color:var(--tia-red);font-size:18px}.badge-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:6px}.badge{display:flex;align-items:flex-start;gap:12px;border:1px solid var(--border-subtle);border-radius:var(--radius-md);padding:14px 16px;background:var(--surface-raised)}.badge.earned{border-color:var(--tia-navy-200);background:var(--tia-navy-50)}.badge.locked{opacity:.6}.badge-ic{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-sm);background:var(--tia-light-blue)}.badge.locked .badge-ic{background:var(--tia-grey-100)}.badge-t{font-family:var(--display);font-weight:600;font-size:var(--fs-body-sm);color:var(--fg-primary)}.badge-d{font-size:var(--fs-caption);color:var(--fg-muted);line-height:var(--lh-normal);margin-top:2px}.mastery{margin:0 0 14px}.m-top{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:6px}.m-name{font-size:var(--fs-body-sm);color:var(--fg-body)}.m-val{font-family:var(--display);font-weight:700;font-size:var(--fs-body-sm);color:var(--fg-primary)}.m-tgt{color:var(--fg-subtle);font-weight:400}.m-bar{height:10px;background:var(--tia-grey-100);border-radius:var(--radius-pill);overflow:hidden}.m-bar i{display:block;height:100%;background:var(--tia-navy);border-radius:var(--radius-pill);transition:width var(--dur-slow) var(--ease-standard)}@media (max-width:720px){.res-game{grid-template-columns:1fr 1fr 1fr}.badge-grid{grid-template-columns:1fr}.gamebar{flex-direction:column;align-items:stretch}.gb-right{justify-content:space-between}}.tia-modal-ov{position:fixed;top:0;right:0;bottom:0;left:0;background:#00003a8c;display:flex;align-items:center;justify-content:center;padding:24px;z-index:9999}.tia-modal{position:relative;background:var(--surface-raised);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl,0 32px 64px rgba(0,0,100,.22));padding:28px 28px 24px;max-width:680px;width:100%;max-height:90vh;overflow:auto}.tia-modal-x{position:absolute;top:14px;right:16px;background:none;border:none;font-size:18px;color:var(--fg-muted);cursor:pointer;line-height:1}.tia-modal-x:hover{color:var(--fg-primary)}.share-prev{border:1px solid var(--border-subtle);border-radius:var(--radius-md);overflow:hidden;margin:14px 0 18px;background:#fff}.share-prev svg{display:block;width:100%;height:auto}.quest-row{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:16px 0;border-top:1px solid var(--border-subtle)}.quest-row:first-of-type{border-top:none}.quest-meta{flex:1;min-width:240px}.quest-t{font-family:var(--display);font-weight:600;font-size:var(--fs-h5);color:var(--fg-primary)}.quest-cert{font-family:var(--display);font-size:11.5px;font-weight:600;letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--tia-positive,#0F8A5F);background:var(--tia-positive-soft,#E3F5EC);padding:3px 9px;border-radius:var(--radius-pill);margin-left:6px;vertical-align:middle}.quest-d{font-size:var(--fs-body-sm);color:var(--fg-muted);line-height:var(--lh-normal);margin:4px 0 8px;max-width:62ch}.quest-dots{display:flex;align-items:center;gap:6px}.quest-dots i{width:26px;height:6px;border-radius:var(--radius-pill);background:var(--tia-navy-200)}.quest-dots i.on{background:var(--tia-navy)}.quest-prog{font-size:var(--fs-caption);color:var(--fg-subtle);margin-left:8px}.gamebar{background:radial-gradient(120% 140% at 100% 0%,#16166e 0%,var(--navy) 42%,var(--navy-deep) 100%);color:#fff;border:none;box-shadow:var(--shadow-navy);border-radius:var(--r-card)}.gamebar .gb-lvl{color:#fff}.gamebar .gb-xp{color:#ffffff9e}.gamebar .xpbar{background:#ffffff2e}.gamebar .xpbar i{background:#fff}.gamebar .gb-next{color:#ffffff8c}.gamebar .streak-chip{color:#fff;background:#ffffff1f;border-color:#fff3}.gamebar .streak-chip.live{background:var(--red);border-color:var(--red);color:#fff}.gamebar .d5-btn{background:#fff;color:var(--navy)}.gamebar .d5-btn:hover{background:#ffffffe0}.gamebar .d5-btn.done{background:#ffffff29;color:#ffffffb3}
