.v3-ast-page{flex:1;min-height:0;display:flex;flex-direction:column;position:relative;background:var(--bg);color:var(--text-primary);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;overflow-x:hidden}.v3-ast-page *,.v3-ast-page :after,.v3-ast-page :before{box-sizing:border-box}.v3-ast-bg{position:fixed;inset:0;z-index:var(--z-mesh);pointer-events:none;background:radial-gradient(ellipse 80% 45% at 50% -5%,rgba(167,139,250,.28) 0,rgba(167,139,250,.1) 45%,transparent 70%),radial-gradient(ellipse 100% 60% at 50% 50%,rgba(129,140,248,.06) 0,transparent 70%),radial-gradient(ellipse 80% 40% at 50% 108%,rgba(232,168,73,.22) 0,rgba(232,168,73,.08) 45%,transparent 68%)}.v3-ast-root{position:relative;z-index:var(--z-content);display:flex;flex-direction:column;flex:1;min-height:0;max-width:var(--app-max-width);width:100%;margin:0 auto;color:var(--t1)}.v3-ast-header{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:calc(env(safe-area-inset-top, 0px) + 8px) var(--app-padding-x) 10px;background:linear-gradient(180deg,rgba(14,14,22,.82),rgba(14,14,22,.55) 72%,transparent);backdrop-filter:blur(20px) saturate(1.4) brightness(1.1);-webkit-backdrop-filter:blur(20px) saturate(1.4) brightness(1.1)}.v3-ast-header__left,.v3-ast-header__right{display:flex;align-items:center;gap:8px;min-width:0}.v3-ast-header__title{display:inline-flex;align-items:center;gap:8px;min-width:0}.v3-ast-header__dot{width:8px;height:8px;border-radius:50%;background:var(--signal-good);box-shadow:0 0 0 3px var(--signal-good-bg);flex-shrink:0;animation:v3-ast-pulse 2.8s ease-in-out infinite}@keyframes v3-ast-pulse{0%,to{opacity:.8}50%{opacity:1}}.v3-ast-header__label{font-size:var(--fs-body-lg);font-weight:var(--fw-semibold);color:var(--t1);letter-spacing:var(--ls-snug);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v3-ast-header__btn{flex-shrink:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:36px;height:36px;border-radius:50%;background:hsla(0,0%,100%,.04);border:1px solid var(--border-default);color:var(--t2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease-spring)}.v3-ast-header__btn:focus-visible,.v3-ast-header__btn:hover{background:hsla(0,0%,100%,.1);color:var(--t1);outline:none}.v3-ast-header__btn:active{transform:scale(.94)}.v3-ast-header__btn svg{width:18px;height:18px}.v3-ast-header__memory{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:var(--radius-full);background:hsla(0,0%,100%,.04);border:1px solid var(--border-default);color:var(--t2);font:inherit;font-size:var(--fs-caption);font-weight:var(--fw-semibold);cursor:pointer;text-decoration:none;-webkit-tap-highlight-color:transparent;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease)}.v3-ast-header__memory:hover{background:hsla(0,0%,100%,.1);color:var(--t1)}.v3-ast-header__memory svg{width:14px;height:14px}.v3-ast-scroll{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;padding:20px var(--app-padding-x);scrollbar-width:none}.v3-ast-scroll::-webkit-scrollbar{display:none}.v3-ast-thread{gap:18px}.v3-ast-greeting,.v3-ast-thread{display:flex;flex-direction:column}.v3-ast-greeting{height:100%;gap:var(--space-5);text-align:center;padding:var(--space-4)}.v3-ast-greeting,.v3-ast-greeting__spark{align-items:center;justify-content:center}.v3-ast-greeting__spark{width:56px;height:56px;border-radius:50%;display:inline-flex;color:var(--accent);background:var(--accent-bg);border:1px solid var(--accent-border);box-shadow:0 0 0 6px rgba(232,168,73,.06)}.v3-ast-greeting__spark svg{width:28px;height:28px}.v3-ast-greeting__title{font-size:var(--fs-title);font-weight:var(--fw-semibold);color:var(--t1);letter-spacing:var(--ls-snug);margin:0}.v3-ast-greeting__desc{font-size:var(--fs-body);color:var(--t2);line-height:var(--lh-relaxed);max-width:30ch;margin:0}.v3-ast-greeting__chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:420px}.v3-ast-chip{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex-shrink:0;padding:8px 14px;border-radius:var(--radius-full);background:hsla(0,0%,100%,.05);border:1px solid var(--border-default);color:var(--t1);font:inherit;font-size:var(--fs-caption);font-weight:var(--fw-medium);cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;transition:background var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease-spring)}.v3-ast-chip:hover{background:hsla(0,0%,100%,.1);border-color:var(--border-focus)}.v3-ast-chip:active{transform:scale(.96)}.v3-ast-date{display:flex;align-items:center;gap:12px;padding:4px 0}.v3-ast-date__line{flex:1;height:1px;background:var(--border-subtle)}.v3-ast-date__text{font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--t3);white-space:nowrap}.v3-ast-msg{display:flex;flex-direction:column;gap:4px;max-width:86%;animation:v3-ast-enter .22s var(--ease) both}.v3-ast-msg--user{align-self:flex-end;align-items:flex-end}.v3-ast-msg--ai{align-self:flex-start;align-items:flex-start}@keyframes v3-ast-enter{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.v3-ast-row{display:flex;align-items:flex-end;gap:8px}.v3-ast-msg--user .v3-ast-row{flex-direction:row-reverse}.v3-ast-avatar{flex-shrink:0;width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--accent-bg);border:1px solid var(--accent-border);color:var(--accent);margin-bottom:4px}.v3-ast-avatar svg{width:14px;height:14px}.v3-ast-bubble{padding:11px 15px;border-radius:18px;font-size:var(--fs-body);line-height:var(--lh-relaxed);color:var(--t1);letter-spacing:var(--ls-body);word-wrap:break-word;overflow-wrap:anywhere}.v3-ast-bubble--user{white-space:pre-wrap}.v3-ast-bubble--ai{background:hsla(0,0%,100%,.055);backdrop-filter:blur(20px) saturate(1.4) brightness(1.08);-webkit-backdrop-filter:blur(20px) saturate(1.4) brightness(1.08);border:1px solid hsla(0,0%,100%,.09);border-bottom-left-radius:6px;box-shadow:0 2px 16px rgba(0,0,0,.18),inset 0 1px 0 hsla(0,0%,100%,.07)}.v3-ast-bubble--user{background:var(--accent-gradient);color:#0a0a0c;border-bottom-right-radius:6px;font-weight:var(--fw-medium);box-shadow:0 4px 14px rgba(232,168,73,.22)}.v3-ast-bubble strong{font-weight:var(--fw-bold)}.v3-ast-bubble--ai em,.v3-ast-bubble--ai i{font-style:normal;color:var(--accent);font-weight:var(--fw-medium)}.v3-ast-md-heading{font-size:var(--fs-caption);font-weight:var(--fw-bold);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--t3);margin:0;padding-top:4px}.v3-ast-md-heading:first-child{padding-top:0}.v3-ast-md-p{margin:0;line-height:var(--lh-relaxed)}.v3-ast-md-list{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:3px}.v3-ast-md-li{display:flex;gap:7px;line-height:var(--lh-relaxed)}.v3-ast-md-li:before{content:"·";color:var(--accent);font-weight:var(--fw-bold);flex-shrink:0;margin-top:.05em}.v3-ast-md-br{display:block;height:6px}.v3-ast-bubble--ai .v3-ast-md-heading+.v3-ast-md-list,.v3-ast-bubble--ai .v3-ast-md-heading+.v3-ast-md-p{margin-top:4px}.v3-ast-bubble--ai .v3-ast-md-list+.v3-ast-md-heading,.v3-ast-bubble--ai .v3-ast-md-p+.v3-ast-md-heading{margin-top:10px}.v3-ast-bubble--ai .v3-ast-md-p+.v3-ast-md-list{margin-top:4px}.v3-ast-bubble--ai .v3-ast-md-list+.v3-ast-md-p{margin-top:6px}.v3-ast-time{font-size:var(--fs-micro);color:var(--t3);font-variant-numeric:tabular-nums;padding:0 8px}.v3-ast-msg--ai .v3-ast-time{padding-left:40px}.v3-ast-fact{margin-top:6px;margin-left:34px;display:inline-flex;flex-direction:column;gap:2px;padding:8px 12px;border-radius:var(--radius-sm);background:var(--accent-bg);border:1px solid var(--accent-border);color:var(--accent);max-width:100%}.v3-ast-fact__head{display:flex;align-items:center;gap:6px;font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:var(--ls-label);text-transform:uppercase}.v3-ast-fact__head svg{width:12px;height:12px}.v3-ast-fact__desc{font-size:var(--fs-caption);color:var(--t2);line-height:var(--lh-normal)}.v3-ast-typing{display:flex;align-items:flex-end;gap:8px;align-self:flex-start;max-width:86%}.v3-ast-typing__dots{padding:12px 14px;border-radius:18px;border-bottom-left-radius:6px;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-default);display:inline-flex;align-items:center;gap:4px}.v3-ast-typing__dot{width:5px;height:5px;border-radius:50%;background:var(--t2);opacity:.45;animation:v3-ast-bounce 1.35s ease-in-out infinite}.v3-ast-typing__dot:nth-child(2){animation-delay:.18s}.v3-ast-typing__dot:nth-child(3){animation-delay:.36s}@keyframes v3-ast-bounce{0%,80%,to{transform:translateY(0);opacity:.4}40%{transform:translateY(-4px);opacity:.95}}@keyframes v3-ast-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.v3-ast-limit{padding:14px 16px;border-radius:var(--radius-md);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px dashed var(--border-input);color:var(--t2);font-size:var(--fs-caption);line-height:var(--lh-relaxed);text-align:center;box-shadow:var(--shadow-glass)}.v3-ast-chipbar{position:relative;padding:10px var(--app-padding-x) 4px;background:linear-gradient(180deg,transparent,rgba(14,14,22,.35) 30%,rgba(10,10,18,.65));backdrop-filter:blur(14px) saturate(1.3) brightness(1.08);-webkit-backdrop-filter:blur(14px) saturate(1.3) brightness(1.08)}.v3-ast-chipbar__scroll{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.v3-ast-chipbar__scroll::-webkit-scrollbar{display:none}.v3-ast-chipbar .v3-ast-chip{scroll-snap-align:start}.v3-ast-inputbar{position:relative;padding:10px var(--app-padding-x) calc(env(safe-area-inset-bottom, 0px) + 10px);background:linear-gradient(180deg,rgba(14,14,22,.6),rgba(10,10,18,.88));backdrop-filter:blur(24px) saturate(1.5) brightness(1.12);-webkit-backdrop-filter:blur(24px) saturate(1.5) brightness(1.12);border-top:1px solid hsla(0,0%,100%,.08);display:flex;flex-direction:column;gap:6px}.v3-ast-inputbar__row{display:flex;align-items:flex-end;gap:8px}.v3-ast-inputbar__photo{flex-shrink:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:40px;height:40px;border-radius:50%;background:hsla(0,0%,100%,.05);border:1px solid var(--border-default);color:var(--t2);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease-spring)}.v3-ast-inputbar__photo:hover{background:hsla(0,0%,100%,.1);color:var(--t1)}.v3-ast-inputbar__photo:active{transform:scale(.94)}.v3-ast-inputbar__photo svg{width:20px;height:20px}.v3-ast-inputbar__field{flex:1;min-width:0;min-height:40px;max-height:140px;padding:10px 14px;border-radius:20px;background:hsla(0,0%,100%,.07);border:1px solid hsla(0,0%,100%,.1);color:var(--t1);font:inherit;font-size:var(--fs-body);line-height:var(--lh-relaxed);resize:none;overflow-y:auto;-webkit-tap-highlight-color:transparent;transition:border-color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.v3-ast-inputbar__field::-moz-placeholder{color:var(--t3)}.v3-ast-inputbar__field::placeholder{color:var(--t3)}.v3-ast-inputbar__field:focus{outline:none;border-color:hsla(0,0%,100%,.18);background:hsla(0,0%,100%,.1)}.v3-ast-inputbar__field:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.v3-ast-inputbar__field:disabled{opacity:.55;cursor:not-allowed}.v3-ast-inputbar__send{flex-shrink:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:40px;height:40px;border-radius:50%;background:hsla(0,0%,100%,.08);border:1px solid var(--border-default);color:var(--t3);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease-spring),box-shadow var(--dur-fast) var(--ease)}.v3-ast-inputbar__send svg{width:18px;height:18px}.v3-ast-inputbar__send--active{background:var(--accent-gradient);color:#0a0a0c;border-color:transparent;box-shadow:var(--shadow-btn-primary)}.v3-ast-inputbar__send--active:hover:not(:disabled){transform:scale(1.04)}.v3-ast-inputbar__send--active:active:not(:disabled){transform:scale(.94)}.v3-ast-inputbar__send:disabled{opacity:.55;cursor:not-allowed}.v3-ast-inputbar__counter{padding:0 2px;font-size:var(--fs-micro);color:var(--t3);text-align:center;font-variant-numeric:tabular-nums}.v3-ast-mem-fact{display:flex;align-items:flex-start;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border-subtle);background:transparent}.v3-ast-mem-fact:last-child{border-bottom:none}.v3-ast-mem-fact__text{flex:1;min-width:0;font-size:var(--fs-body);color:var(--t1);line-height:var(--lh-relaxed);white-space:pre-wrap;word-wrap:break-word}.v3-ast-mem-fact__meta{margin-top:4px;font-size:var(--fs-micro);color:var(--t3);font-variant-numeric:tabular-nums}.v3-ast-mem-fact__remove{flex-shrink:0;-webkit-appearance:none;-moz-appearance:none;appearance:none;width:32px;height:32px;border-radius:50%;background:hsla(0,0%,100%,.04);border:1px solid var(--border-default);color:var(--t3);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),border-color var(--dur-fast) var(--ease)}.v3-ast-mem-fact__remove:hover{background:var(--signal-alert-bg);color:var(--signal-alert);border-color:var(--signal-alert-border)}.v3-ast-mem-fact__remove:disabled{opacity:.4;cursor:not-allowed}.v3-ast-mem-fact__remove svg{width:16px;height:16px}.v3-ast-mem-add{position:relative;padding:16px;background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);display:flex;flex-direction:column;gap:var(--space-3);box-shadow:var(--shadow-glass)}.v3-ast-mem-add,.v3-ast-mem-add__trigger{border-radius:var(--radius-md);border:1px dashed var(--border-input);color:var(--t2)}.v3-ast-mem-add__trigger{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;padding:14px;background:transparent;font:inherit;font-size:var(--fs-body);font-weight:var(--fw-medium);cursor:pointer;text-align:center;-webkit-tap-highlight-color:transparent;transition:border-color var(--dur-fast) var(--ease),color var(--dur-fast) var(--ease),background var(--dur-fast) var(--ease)}.v3-ast-mem-add__trigger:hover{border-color:var(--accent-border);color:var(--accent);background:rgba(232,168,73,.05)}.v3-ast-mem-add__title{font-size:var(--fs-label);font-weight:var(--fw-bold);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--lbl)}.v3-ast-mem-add__actions{display:flex;gap:8px}.v3-ast-mem-add__actions .v3-btn{flex:1}.v3-wk-hero{position:relative;padding:var(--space-6);border-radius:var(--radius-lg);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-default);box-shadow:var(--shadow-glass);display:flex;flex-direction:column;align-items:center;gap:var(--space-4);text-align:center;overflow:hidden;isolation:isolate}.v3-wk-hero:before{content:"";inset:0;border-radius:inherit;padding:1px;background:var(--glass-edge-gradient);-webkit-mask:linear-gradient(#000,#000) content-box,linear-gradient(#000,#000);-webkit-mask-composite:xor;mask-composite:exclude;z-index:1}.v3-wk-hero:before,.v3-wk-hero__glow{position:absolute;pointer-events:none}.v3-wk-hero__glow{inset:-30%;z-index:0;overflow:hidden}.v3-wk-hero__glow:after,.v3-wk-hero__glow:before{content:"";position:absolute;border-radius:50%}.v3-wk-hero__glow:before{width:55%;height:55%;top:10%;left:10%;background:radial-gradient(circle,rgba(232,168,73,.22),transparent 68%);filter:blur(36px);animation:v3-wk-glow-a 18s ease-in-out infinite alternate}.v3-wk-hero__glow:after{width:50%;height:50%;bottom:10%;right:5%;background:radial-gradient(circle,rgba(164,140,255,.18),transparent 68%);filter:blur(32px);animation:v3-wk-glow-b 24s ease-in-out infinite alternate}@keyframes v3-wk-glow-a{0%{transform:translate(0) scale(1)}to{transform:translate(6%,-8%) scale(1.1)}}@keyframes v3-wk-glow-b{0%{transform:translate(0) scale(1)}to{transform:translate(-5%,6%) scale(1.08)}}.v3-wk-hero>*{position:relative;z-index:2}.v3-wk-hero__watermark{position:absolute;top:var(--space-4);right:var(--space-5);font-size:var(--fs-micro);letter-spacing:.12em;color:hsla(0,0%,100%,.08);pointer-events:none;z-index:2}.v3-wk-hero__period,.v3-wk-hero__watermark{font-weight:var(--fw-bold);text-transform:uppercase}.v3-wk-hero__period{font-size:var(--fs-label);letter-spacing:var(--ls-label);color:var(--t2)}.v3-wk-hero__ring{position:relative;width:180px;height:180px;flex-shrink:0}.v3-wk-hero__ring svg{width:100%;height:100%;overflow:visible}.v3-wk-ring-track{stroke:hsla(0,0%,100%,.07)}.v3-wk-ring-fill,.v3-wk-ring-track{fill:none;stroke-width:10;stroke-linecap:round}.v3-wk-ring-fill{transform-origin:80px 80px;transform:rotate(-90deg);stroke-dasharray:var(--ring-c);stroke-dashoffset:var(--ring-c);animation:v3-wk-ring-in 1s var(--ease) forwards;animation-delay:var(--ring-delay,0s)}.v3-wk-ring-fill--energy{stroke:var(--accent)}.v3-wk-ring-fill--resource{stroke:var(--resource)}.v3-wk-ring-fill--body{stroke:var(--body)}@keyframes v3-wk-ring-in{to{stroke-dashoffset:var(--ring-offset)}}.v3-wk-hero__ring-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;pointer-events:none}.v3-wk-hero__score{font-size:clamp(32px,8vw,44px);font-weight:var(--fw-bold);color:var(--t1);font-variant-numeric:tabular-nums;letter-spacing:var(--ls-snug);line-height:1}.v3-wk-hero__score-label{font-size:var(--fs-caption);color:var(--t3);font-weight:var(--fw-medium)}.v3-wk-hero__legend{display:flex;align-items:center;justify-content:center;gap:var(--space-4)}.v3-wk-hero__legend-item{display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-caption);font-weight:var(--fw-semibold);color:var(--t2)}.v3-wk-hero__legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.v3-wk-hero__headline{font-size:var(--fs-title);font-weight:var(--fw-semibold);color:var(--t1);line-height:var(--lh-snug);letter-spacing:var(--ls-snug);margin:0;max-width:36ch}.v3-wk-hero__sub{font-size:var(--fs-body);color:var(--t2);line-height:var(--lh-relaxed);margin:0;max-width:40ch}.v3-wk-hero__actions{display:flex;gap:var(--space-2);width:100%}.v3-wk-hero__actions .v3-btn{flex:1}.v3-met-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--bento-gap)}.v3-met-card{position:relative;padding:var(--space-4) var(--space-3);border-radius:var(--radius-md);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-default);box-shadow:var(--shadow-glass);display:flex;flex-direction:column;align-items:center;gap:6px;overflow:hidden;isolation:isolate}.v3-met-card:before{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:var(--met-color,var(--accent));opacity:.55}.v3-met-ring{position:relative;width:52px;height:52px;flex-shrink:0}.v3-met-ring svg{width:100%;height:100%}.v3-met-ring-track{stroke:hsla(0,0%,100%,.07)}.v3-met-ring-fill,.v3-met-ring-track{fill:none;stroke-width:5;stroke-linecap:round}.v3-met-ring-fill{transform-origin:26px 26px;transform:rotate(-90deg);stroke-dasharray:var(--mini-c,126);stroke-dashoffset:var(--mini-c,126);animation:v3-met-ring-in .9s var(--ease) forwards;animation-delay:var(--met-delay,.2s)}@keyframes v3-met-ring-in{to{stroke-dashoffset:var(--mini-offset,126)}}.v3-met-ring__val{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;font-size:var(--fs-caption);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;letter-spacing:var(--ls-snug)}.v3-met-card__label{letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--t3)}.v3-met-card__label,.v3-met-delta{font-size:var(--fs-micro);font-weight:var(--fw-bold)}.v3-met-delta{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;border-radius:var(--radius-full);font-variant-numeric:tabular-nums;border:1px solid transparent}.v3-met-delta--up{background:var(--signal-good-bg);color:var(--signal-good);border-color:var(--signal-good-border)}.v3-met-delta--down{background:var(--signal-alert-bg);color:var(--signal-alert);border-color:var(--signal-alert-border)}.v3-met-delta--flat{background:hsla(0,0%,100%,.04);color:var(--t3);border-color:var(--border-default)}.v3-met-delta svg{width:8px;height:8px}.v3-wk-history{padding:var(--space-5);border-radius:var(--radius-lg);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-default);box-shadow:var(--shadow-glass);display:flex;flex-direction:column;gap:var(--space-3)}.v3-wk-history__legend{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.v3-wk-history__legend-item{display:inline-flex;align-items:center;gap:5px;font-size:var(--fs-micro);font-weight:var(--fw-semibold);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--t3)}.v3-wk-history__legend-line{width:14px;height:2px;border-radius:2px}.v3-wk-dots{display:flex;gap:4px;align-items:flex-end;height:40px}.v3-wk-dot-wrap{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:3px;height:100%}.v3-wk-dot-bar{width:100%;max-width:14px;border-radius:4px 4px 0 0;min-height:4px;background:var(--dot-color,hsla(0,0%,100%,.14));opacity:.7;transition:opacity var(--dur-fast) var(--ease)}.v3-wk-dot-bar--filled{opacity:1}.v3-wk-dot-day{font-size:9px;color:var(--t3);font-variant-numeric:tabular-nums;text-align:center}.v3-achv-list{display:flex;flex-direction:column;gap:var(--bento-gap)}.v3-achv{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:var(--radius-md);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-default);box-shadow:var(--shadow-glass);position:relative;overflow:hidden;isolation:isolate}.v3-achv:before{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:var(--achv-stripe,var(--accent-gradient))}.v3-achv--streak{--achv-stripe:linear-gradient(90deg,rgba(249,168,88,.95),rgba(249,168,88,.28))}.v3-achv--gold{--achv-stripe:linear-gradient(90deg,rgba(232,168,73,.95),rgba(232,168,73,.28))}.v3-achv--green{--achv-stripe:linear-gradient(90deg,rgba(134,210,149,.95),rgba(134,210,149,.28))}.v3-achv--blue{--achv-stripe:linear-gradient(90deg,rgba(122,199,222,.95),rgba(122,199,222,.28))}.v3-achv__badge{flex-shrink:0;width:40px;height:40px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;background:var(--achv-badge-bg,hsla(0,0%,100%,.06));color:var(--achv-badge-color,var(--t1))}.v3-achv__badge svg{width:20px;height:20px}.v3-achv--streak .v3-achv__badge{--achv-badge-bg:rgba(249,168,88,.16);--achv-badge-color:#f9a858}.v3-achv--gold .v3-achv__badge{--achv-badge-bg:rgba(232,168,73,.16);--achv-badge-color:#f2b964}.v3-achv--green .v3-achv__badge{--achv-badge-bg:rgba(134,210,149,.16);--achv-badge-color:#a9e1b9}.v3-achv--blue .v3-achv__badge{--achv-badge-bg:rgba(122,199,222,.16);--achv-badge-color:#95d5ea}.v3-achv__body{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.v3-achv__title{font-size:var(--fs-body-lg);font-weight:var(--fw-semibold);color:var(--t1);line-height:var(--lh-snug)}.v3-achv__desc{font-size:var(--fs-caption);color:var(--t2);line-height:var(--lh-normal)}.v3-achv__streak-dots{display:flex;gap:4px;margin-top:4px}.v3-achv__dot{width:7px;height:7px;border-radius:50%;background:hsla(0,0%,100%,.1);border:1px solid hsla(0,0%,100%,.08)}.v3-achv__dot--filled{background:rgba(249,168,88,.45);border-color:transparent}.v3-achv__dot--current{background:#f9a858;border-color:transparent;box-shadow:0 0 0 3px rgba(249,168,88,.22)}.v3-chal{position:relative;padding:var(--space-5);border-radius:var(--radius-lg);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-default);box-shadow:var(--shadow-glass);display:flex;flex-direction:column;gap:var(--space-3);overflow:hidden;isolation:isolate}.v3-chal:before{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:linear-gradient(90deg,rgba(164,140,255,.95),rgba(164,140,255,.25))}.v3-chal__header{display:flex;align-items:center;gap:10px}.v3-chal__icon{flex-shrink:0;width:32px;height:32px;border-radius:var(--radius-sm);display:inline-flex;align-items:center;justify-content:center;background:rgba(164,140,255,.14);color:#b8a8ff}.v3-chal__icon svg{width:18px;height:18px}.v3-chal__kicker{font-size:var(--fs-micro);font-weight:var(--fw-bold);letter-spacing:var(--ls-label);text-transform:uppercase;color:var(--t3)}.v3-chal__text{font-size:var(--fs-body-lg);font-weight:var(--fw-semibold);color:var(--t1);line-height:var(--lh-snug);margin:0}.v3-chal__text em{font-style:normal;color:#b8a8ff}.v3-chal__context{font-size:var(--fs-body);color:var(--t2);line-height:var(--lh-relaxed);margin:0}.v3-chal__cta{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-self:flex-start;align-items:center;gap:7px;padding:9px 16px;border-radius:var(--radius-full);background:rgba(164,140,255,.12);border:1px solid rgba(164,140,255,.28);color:#b8a8ff;font:inherit;font-size:var(--fs-caption);font-weight:var(--fw-semibold);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background var(--dur-fast) var(--ease),transform var(--dur-fast) var(--ease-spring)}.v3-chal__cta:hover{background:rgba(164,140,255,.2)}.v3-chal__cta:active{transform:scale(.97)}.v3-chal__cta svg{width:15px;height:15px}@media (prefers-reduced-motion:reduce){.v3-wk-hero__glow:after,.v3-wk-hero__glow:before{animation:none}.v3-wk-ring-fill{animation:none;stroke-dashoffset:var(--ring-offset)}.v3-met-ring-fill{animation:none;stroke-dashoffset:var(--mini-offset,126)}}.v3-tr-hero{position:relative;padding:var(--space-5);border-radius:var(--radius-lg);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid rgba(79,195,247,.18);box-shadow:0 0 0 1px rgba(79,195,247,.06),var(--shadow-glass);display:flex;flex-direction:column;gap:var(--space-4);overflow:hidden;isolation:isolate}.v3-tr-hero:before{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:linear-gradient(90deg,rgba(79,195,247,.92),rgba(79,195,247,.2))}.v3-tr-hero__top{display:flex;align-items:flex-start;gap:var(--space-4)}.v3-tr-hero__icon{flex-shrink:0;width:52px;height:52px;border-radius:var(--radius-md);display:inline-flex;align-items:center;justify-content:center;background:rgba(79,195,247,.12);color:var(--hydration,#4fc3f7)}.v3-tr-hero__icon>*{width:26px;height:26px}.v3-tr-hero__info{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px}.v3-tr-hero__type{font-size:var(--fs-heading);font-weight:var(--fw-bold);color:var(--hydration,#4fc3f7);letter-spacing:var(--ls-snug);line-height:var(--lh-tight)}.v3-tr-hero__date{font-size:var(--fs-body);color:var(--t2);line-height:var(--lh-normal)}.v3-tr-hero__meta{font-size:var(--fs-caption);color:var(--t3);line-height:var(--lh-normal);font-variant-numeric:tabular-nums}.v3-tr-hero__desc{font-size:var(--fs-body);color:var(--t1);line-height:var(--lh-relaxed);white-space:pre-wrap}.v3-tr-params{display:flex;flex-direction:column;gap:var(--card-gap)}.v3-tr-params__title-row{display:flex;align-items:baseline;gap:var(--space-3)}.v3-tr-params__saved{font-size:var(--fs-caption);color:var(--t3);opacity:0;transition:opacity .3s var(--ease)}.v3-tr-params__saved--visible{opacity:1}.v3-tr-param{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);min-height:52px;padding:8px 16px;border-bottom:1px solid var(--border-subtle)}.v3-tr-param:last-child{border-bottom:none}.v3-tr-param__label{font-size:var(--fs-body);color:var(--t2);flex-shrink:0;white-space:nowrap}.v3-tr-param__value{-webkit-appearance:none;-moz-appearance:none;appearance:none;font:inherit;font-size:var(--fs-body);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;color:var(--t1);text-align:right;background:transparent;border:none;cursor:pointer;padding:6px 8px;border-radius:var(--radius-sm);-webkit-tap-highlight-color:transparent;transition:background var(--dur-fast) var(--ease);min-width:64px}.v3-tr-param__input,.v3-tr-param__value:hover{background:hsla(0,0%,100%,.05)}.v3-tr-param__input{font:inherit;font-size:var(--fs-body);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;color:var(--t1);text-align:right;border:1px solid var(--border-focus);border-radius:var(--radius-sm);padding:6px 8px;min-width:80px;max-width:120px;outline:none;-webkit-tap-highlight-color:transparent;transition:border-color var(--dur-fast) var(--ease)}.v3-tr-param__input--hydration{border-color:rgba(79,195,247,.45);color:var(--hydration,#4fc3f7)}.v3-tr-param__input:focus{border-color:var(--border-focus)}.v3-tr-param__input:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.v3-tr-impact{padding:var(--space-5);border-radius:var(--radius-lg);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid rgba(79,195,247,.14);box-shadow:var(--shadow-glass);display:flex;flex-direction:column;gap:var(--space-3)}.v3-tr-impact__value{display:flex;align-items:baseline;gap:var(--space-2)}.v3-tr-impact__num{font-size:clamp(28px,7vw,36px);font-weight:var(--fw-bold);color:var(--hydration,#4fc3f7);font-variant-numeric:tabular-nums;letter-spacing:var(--ls-snug);line-height:1}.v3-tr-impact__unit{font-weight:var(--fw-medium)}.v3-tr-impact__desc,.v3-tr-impact__unit{font-size:var(--fs-body);color:var(--t2)}.v3-tr-impact__desc{line-height:var(--lh-relaxed)}.v3-tr-danger{padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--border-default);box-shadow:var(--shadow-glass)}.v3-tr-time-body{display:flex;flex-direction:column;gap:var(--space-3)}.v3-tr-time-tz{font-size:var(--fs-caption);color:var(--t3);font-variant-numeric:tabular-nums}.v3-tr-time-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:100%;padding:12px 14px;border-radius:var(--radius-md);background:hsla(0,0%,100%,.05);border:1px solid var(--border-default);color:var(--t1);font:inherit;font-size:var(--fs-body-lg);font-weight:var(--fw-semibold);font-variant-numeric:tabular-nums;outline:none;-webkit-tap-highlight-color:transparent;transition:border-color var(--dur-fast) var(--ease)}.v3-tr-time-input:focus{border-color:rgba(79,195,247,.5)}.v3-tr-time-input:focus-visible{outline:2px solid rgba(79,195,247,.5);outline-offset:2px}.v3-tr-time-actions{display:flex;flex-direction:column;gap:var(--space-2);padding-top:var(--space-1)}