:root{--bg: #0a1216;--bg2: #0f1b21;--panel: #122028;--panel2: #182a33;--line: #203540;--line2: #2c4854;--text: #e4eef1;--muted: #93a9b1;--dim: #5f7680;--accent: #5ee0b0;--accent2: #27b58b;--amber: #f5b942;--rose: #ff6b8a;--violet: #a78bfa;--sky: #67c3ff;--lime: #b7e45a;--mono: ui-monospace, "Cascadia Mono", "SF Mono", Menlo, Consolas, "Liberation Mono", monospace;--sans: "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--radius: 14px;color-scheme:dark}*{box-sizing:border-box}html,body{margin:0;min-height:100%}body{background-color:var(--bg);background-image:radial-gradient(900px 500px at 8% -10%,#1a4a3c66,transparent 60%),radial-gradient(700px 400px at 100% 0%,#3a2a6a33,transparent 60%),linear-gradient(#ffffff07 1px,transparent 1px),linear-gradient(90deg,#ffffff07 1px,transparent 1px);background-size:auto,auto,28px 28px,28px 28px;color:var(--text);font:15px/1.5 var(--sans);-webkit-font-smoothing:antialiased}a{color:var(--accent)}h1,h2,h3{margin:0;font-weight:650;letter-spacing:-.02em}h1{font-size:26px}.mono{font-family:var(--mono)}.dim{color:var(--dim)}.small{font-size:13px}.accent{color:var(--accent)}.hint{color:var(--muted);font-size:12.5px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.center{min-height:60vh;display:grid;place-items:center}.lab-label{font:600 11px/1 var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--accent2)}.shell{min-height:100vh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 20px;background:#0a1216e6;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}.brand-link{text-decoration:none;color:inherit}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--accent)}.brand-word{display:flex;flex-direction:column;line-height:1;color:var(--text);font-size:19px;letter-spacing:-.02em}.brand-word b{color:var(--accent);font-weight:700}.brand-word small{margin-top:4px;font:500 10px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dim)}.brand.large .brand-word{font-size:30px}.atom .orbit-a,.atom .orbit-b,.atom .orbit-c{transform-origin:32px 32px;animation:spin 14s linear infinite}.atom .orbit-b{animation-duration:18s;animation-direction:reverse}.atom .orbit-c{animation-duration:22s}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.atom ellipse{animation:none!important}}.nav{display:flex;gap:4px}.nav a{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border-radius:10px;color:var(--muted);text-decoration:none;font-weight:500;font-size:14px}.nav a svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.nav a:hover{color:var(--text);background:#ffffff0a}.nav a.active{color:var(--accent);background:#5ee0b014}.main{flex:1;width:100%;max-width:1080px;margin:0 auto;padding:22px 20px 48px}.foot{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 20px 20px;border-top:1px solid var(--line);color:var(--dim);font-size:12.5px}@media (max-width: 720px){.topbar{padding:8px 14px}.nav{position:fixed;left:0;right:0;bottom:0;z-index:6;justify-content:space-around;padding:6px 8px calc(6px + env(safe-area-inset-bottom,0px));background:#0a1216f2;border-top:1px solid var(--line)}.nav a{flex-direction:column;gap:3px;font-size:11px;padding:6px 10px}.main{padding:16px 14px 90px}.foot{padding-bottom:90px}}.page{display:grid;gap:18px}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.page-head h1{margin-top:6px}.grid2{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start}.tiles{display:flex;gap:10px;flex-wrap:wrap}.tile{min-width:108px;padding:10px 14px;border:1px solid var(--line);border-radius:12px;background:var(--panel);display:grid;gap:2px}.tile b{font-size:22px;color:var(--accent)}.tile span{font-size:11.5px;color:var(--muted);letter-spacing:.04em;text-transform:uppercase}.specimen{position:relative;display:grid;gap:12px;padding:16px 18px 18px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,var(--panel2),var(--panel));box-shadow:0 10px 30px #00000040}.specimen:before,.specimen:after{content:"";position:absolute;width:12px;height:12px;border-color:var(--line2);border-style:solid}.specimen:before{top:6px;left:6px;border-width:1px 0 0 1px}.specimen:after{bottom:6px;right:6px;border-width:0 1px 1px 0}.specimen.inner{box-shadow:none;background:#0d171d}.specimen-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.empty{margin:0;color:var(--muted);font-size:14px}.link{font-size:13px}.stack{display:grid;gap:12px}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:flex-end}.row.between{justify-content:space-between;align-items:center}.row>label{flex:1 1 120px}.row>label.grow{flex:3 1 200px}label{display:grid;gap:5px;font-size:13px;color:var(--muted)}label.check{grid-template-columns:auto 1fr;align-items:start;gap:10px;color:var(--text)}label.check input{margin-top:4px;accent-color:var(--accent)}.input{width:100%;padding:10px 12px;border:1px solid var(--line2);border-radius:10px;background:#0b151b;color:var(--text);font:inherit;font-size:15px}.input:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.input.mono{font-family:var(--mono)}.input.code{font-family:var(--mono);font-size:28px;letter-spacing:.3em;text-align:center}textarea.input{resize:vertical}select.input{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}.error{margin:0;padding:8px 12px;border-radius:10px;background:#ff6b8a1a;border:1px solid #ff6b8a55;color:#ffb3c2;font-size:13.5px}.notice{margin:0;padding:8px 12px;border-radius:10px;background:#5ee0b014;border:1px solid #5ee0b044;color:#bff3ec;font-size:13.5px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:8px 16px;border-radius:10px;border:1px solid var(--accent2);background:transparent;color:var(--accent);font:600 14px var(--sans);cursor:pointer;text-decoration:none;transition:background .15s,transform .05s}.btn:hover{background:#5ee0b014}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{background:var(--accent);color:#06201d;border-color:var(--accent)}.btn.primary:hover{background:#7fe8c3}.btn.ghost{border-color:var(--line2);color:var(--muted)}.btn.ghost:hover{color:var(--text);background:#ffffff0a}.btn.small{min-height:32px;padding:4px 12px;font-size:13px}.btn.tiny{min-height:26px;padding:2px 9px;font-size:12px;border-radius:8px}.actions{display:inline-flex;gap:6px;flex-wrap:wrap}.turnstile-host{min-height:65px}.chip{display:inline-block;padding:2px 8px;border-radius:999px;font:600 10.5px/1.5 var(--mono);letter-spacing:.08em;text-transform:uppercase;border:1px solid}.cat-supplement{color:var(--accent);border-color:#5ee0b066;background:#5ee0b012}.cat-peptide{color:var(--violet);border-color:#a78bfa66;background:#a78bfa14}.cat-medication{color:var(--amber);border-color:#f5b94266;background:#f5b94212}.cat-shot{color:var(--sky);border-color:#67c3ff66;background:#67c3ff12}.cat-addiction{color:var(--rose);border-color:#ff6b8a66;background:#ff6b8a12}.cat-other{color:var(--muted);border-color:var(--line2);background:#ffffff08}.formula{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.formula b{font-weight:650}.filters,.days{display:flex;gap:6px;flex-wrap:wrap}.filter{padding:5px 12px;border-radius:999px;border:1px solid var(--line2);background:transparent;color:var(--muted);font:500 13px var(--sans);cursor:pointer}.filter.on{background:var(--accent);border-color:var(--accent);color:#06201d;font-weight:650}.dot.planned{background:transparent;border:1.5px solid var(--accent);box-sizing:border-box}.dot.missed{background:transparent;border:1.5px solid var(--rose);box-sizing:border-box}.state.planned{color:var(--accent);background:#5ee0b014}.compound .schedules li{flex-wrap:nowrap;align-items:flex-start}.compound .schedules li .text{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}.compound .schedules li .actions{flex:none;margin-left:auto}.protocol,.loglist,.suggestions,.compounds,.schedules{list-style:none;margin:0;padding:0;display:grid;gap:8px}.protocol>li{display:grid;gap:6px;padding:10px 0 12px;border-top:1px dashed var(--line2)}.protocol>li:first-child{border-top:0;padding-top:0}.instance,.loglist li,.suggestions li{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 10px;border-radius:10px;background:#0b151b;border:1px solid var(--line)}.instance .mono,.loglist .mono{color:var(--muted)}.dose{color:var(--text)!important}.instance .actions,.loglist .btn,.suggestions .btn{margin-left:auto}.state{font:600 10.5px/1.6 var(--mono);letter-spacing:.1em;text-transform:uppercase;padding:0 7px;border-radius:6px}.state.taken{color:#06201d;background:var(--accent)}.state.skipped{color:var(--muted);background:#ffffff10}.state.pending{color:var(--amber);background:#f5b94218}.state.missed{color:var(--rose);background:#ff6b8a1a}.instance.state-missed{border-color:#ff6b8a44}.compound{display:grid;gap:8px;padding:12px;border-radius:12px;background:#0b151b;border:1px solid var(--line)}.compound-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:center}.schedules li{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;padding:6px 10px;border-radius:8px;background:#ffffff06}.schedules .btn{margin-left:auto}.quicklog{display:grid;gap:12px}.feeling{display:grid;grid-template-columns:repeat(10,1fr);gap:4px}.feeling-step{min-height:38px;border-radius:8px;border:1px solid var(--line2);background:#0b151b;color:var(--dim);font:600 13px var(--mono);cursor:pointer}.feeling-step.lit{color:#06201d;border-color:transparent}.feeling-step.picked{outline:2px solid #ffffffb0;outline-offset:1px}.f1,.feeling-step.lit.f1{background:#ff6b8a}.f2,.feeling-step.lit.f2{background:#ff7f7a}.f3,.feeling-step.lit.f3{background:#ff946c}.f4,.feeling-step.lit.f4{background:#f8a85a}.f5,.feeling-step.lit.f5{background:#f5b942}.f6,.feeling-step.lit.f6{background:#d7c94a}.f7,.feeling-step.lit.f7{background:#b7e45a}.f8,.feeling-step.lit.f8{background:#8fe07c}.f9,.feeling-step.lit.f9{background:#62e3a8}.f10,.feeling-step.lit.f10{background:#5ee0b0}.feeling-step:not(.lit){background:#0b151b}.daynote .note{min-height:74px}.calendar{gap:8px}.weekdays,.cells{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.weekdays span{font:600 10.5px/1 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--dim);padding:4px 6px}.cell{position:relative;min-height:64px;padding:6px;border-radius:10px;border:1px solid var(--line);background:#0b151b;color:var(--text);text-align:left;cursor:pointer;display:grid;align-content:start;gap:4px}.cell.pad{border-color:transparent;background:transparent;cursor:default}.cell.future{color:var(--dim)}.cell.today{border-color:var(--accent2)}.cell.selected{outline:2px solid var(--accent);outline-offset:1px}.cell .num{font-size:13px}.cell.today .num{color:var(--accent);font-weight:700}.dots{display:flex;gap:3px;flex-wrap:wrap}.dot{display:inline-block;width:7px;height:7px;border-radius:50%}.dot.taken{background:var(--accent)}.dot.skipped{background:var(--dim)}.assay{display:block;height:5px;border-radius:3px;margin-top:auto}.assay.inline{display:inline-block;width:26px;vertical-align:middle}.notemark{position:absolute;top:7px;right:7px;width:6px;height:6px;border-radius:1px;background:var(--amber);transform:rotate(45deg)}.notemark.inline{position:static;display:inline-block;margin:0 6px 0 2px}.legend{display:flex;gap:16px;flex-wrap:wrap;font-size:12px;color:var(--muted)}.legend span{display:inline-flex;align-items:center;gap:6px}@media (max-width: 520px){.cell{min-height:52px;padding:4px}}.spinner{display:inline-flex;align-items:center;gap:10px;color:var(--muted);font-size:13px}.orbit{width:16px;height:16px;border-radius:50%;border:2px solid var(--line2);border-top-color:var(--accent);animation:spin .9s linear infinite}.auth{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.bench{position:relative;overflow:hidden;background:linear-gradient(160deg,#0d1c24,#0a1216 60%,#0b1a1f);border-right:1px solid var(--line);padding:48px;display:flex;flex-direction:column;justify-content:flex-end}.bench-glow{position:absolute;inset:-20% -10% auto -10%;height:70%;background:radial-gradient(closest-side,#5ee0b02b,transparent 70%)}.bench-atom{position:absolute;top:10%;right:8%;color:var(--accent);opacity:.9;filter:drop-shadow(0 0 24px #5ee0b055)}.bench-copy{position:relative;max-width:440px;display:grid;gap:16px}.bench-copy h2{font-size:clamp(30px,3.4vw,46px);line-height:1.08}.bench-copy p{margin:0;color:var(--muted);font-size:16px}.formulas{list-style:none;margin:0;padding:0;display:grid;gap:6px}.formulas li{font:500 13px/1.6 var(--mono);color:var(--accent);padding:6px 10px;border:1px solid #5ee0b033;border-radius:8px;background:#5ee0b00a;width:-moz-max-content;width:max-content}.auth-card{display:grid;align-content:center;gap:16px;padding:48px clamp(24px,6vw,80px)}.auth-card h1{font-size:28px}.auth-intro{margin:-6px 0 4px;color:var(--muted)}.auth-links{display:flex;gap:18px;flex-wrap:wrap;font-size:14px}@media (max-width: 860px){.auth{grid-template-columns:1fr}.bench{min-height:240px;padding:28px 22px;border-right:0;border-bottom:1px solid var(--line)}.bench-atom{top:6%;right:4%;transform:scale(.55);transform-origin:top right}.bench-copy h2{font-size:26px}.formulas{display:none}.auth-card{padding:28px 22px 48px}}.clock{flex:1 1 auto;display:flex;justify-content:center;align-items:baseline;gap:12px;flex-wrap:wrap;font:500 13px var(--mono);letter-spacing:.04em;color:var(--muted);white-space:nowrap}.clock-time{font-weight:700;color:var(--text);font-variant-numeric:tabular-nums}@media (max-width: 720px){.topbar{flex-wrap:wrap;padding-top:0}.clock{order:-1;flex:1 1 100%;gap:8px;padding:5px 0 6px;margin-bottom:6px;border-bottom:1px solid var(--line);font-size:12px}}.qr-handoff{display:flex;align-items:center;gap:16px;margin-top:6px;padding:14px;border:1px solid var(--line);border-radius:var(--radius);background:#0b151b;max-width:440px}.qr-handoff img{flex:none;width:112px;height:112px;padding:4px;border-radius:10px;background:#eafaf3;border:1px solid #5ee0b055;box-shadow:0 0 24px #5ee0b022}.qr-handoff p{margin:6px 0 4px;font-size:13.5px;color:var(--muted)}@media (max-width: 860px),(hover: none) and (pointer: coarse){.qr-handoff{display:none}}.picker{position:relative;display:block}.picker .input{padding-right:40px}.picker-clear{position:absolute;right:6px;top:50%;transform:translateY(-50%)}.picker-results{display:grid;gap:10px}.picker-group{display:grid;gap:6px}.picked{margin:0;display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 10px;border-radius:10px;border:1px solid #5ee0b044;background:#5ee0b00d}.ad{margin-top:22px;display:grid;gap:6px}.ad-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px}.ad-label{font:600 10.5px/1 var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--amber)}.ad-sponsor{font:500 11px/1 var(--mono);color:var(--dim)}.ad-card{display:flex;align-items:center;gap:16px;padding:16px 18px;border:1px dashed #f5b94266;border-radius:var(--radius);background:repeating-linear-gradient(135deg,#f5b9420a 0 10px,transparent 10px 20px),linear-gradient(180deg,var(--panel2),var(--panel));color:var(--text);text-decoration:none;transition:border-color .15s,transform .05s}.ad-card:hover{border-color:#f5b942aa}.ad-card:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.ad-mark{flex:none;width:44px;height:44px;display:grid;place-items:center;border-radius:12px;border:1px solid #f5b94255;background:#f5b94212;color:var(--amber)}.ad-mark svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.ad-text{flex:1 1 auto;min-width:0;display:grid;gap:3px}.ad-text b{font-size:16px}.ad-text span{color:var(--muted);font-size:13.5px}.ad-text .ad-host{font:500 11.5px var(--mono);color:var(--dim)}.ad-cta{flex:none;border-color:var(--amber);color:var(--amber)}.ad-card:hover .ad-cta{background:#f5b94214}@media (max-width: 560px){.ad-card{flex-wrap:wrap}.ad-cta{width:100%}}.trace{display:grid;grid-template-columns:168px minmax(0,1fr);border:1px solid var(--line);border-radius:12px;background:#0b151b;overflow:hidden}.trace-labels{border-right:1px solid var(--line);background:#0d1a20}.trace-feel-label{display:flex;align-items:stretch;justify-content:space-between;padding:10px 10px 10px 12px;border-top:1px solid var(--line)}.trace-feel-label .scale{display:flex;flex-direction:column;justify-content:space-between;padding:14px 0 0;font-size:10.5px;color:var(--dim);text-align:right}.trace-lane-label{width:100%;display:flex;flex-direction:column;justify-content:center;gap:1px;padding:0 10px;border:0;border-top:1px solid var(--line);border-left:3px solid transparent;background:transparent;color:var(--text);text-align:left;cursor:pointer;overflow:hidden}.trace-lane-label b{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.trace-lane-label span{font-size:10.5px;color:var(--dim)}.trace-lane-label:hover,.trace-lane-label.on{background:#ffffff08}.trace-lane-label.on b{color:var(--accent)}.trace-scroll{overflow-x:auto;overflow-y:hidden}.trace-scroll svg{display:block}.trace-week{stroke:#ffffff10}.trace-month{font:600 10px var(--mono);letter-spacing:.1em;text-transform:uppercase;fill:var(--accent2)}.trace-day{font:500 10px var(--mono);fill:var(--dim)}.trace-guide{stroke:#ffffff12;stroke-dasharray:3 4}.trace-line{fill:none;stroke:#e4eef1;stroke-opacity:.55;stroke-width:1.6;stroke-linejoin:round}.trace-note{fill:var(--amber)}.trace-today{stroke:var(--amber);stroke-width:1.2;stroke-dasharray:4 3}.trace-selected{fill:#ffffff10;stroke:#ffffff30}.trace-lane-rule{stroke:var(--line)}.trace-hit{fill:transparent;cursor:pointer}.trace-hit:hover{fill:#ffffff08}.lg-bar{display:inline-block;width:22px;height:9px;border-radius:5px;background:#5ee0b02a;border:1px solid #5ee0b073}.lg-note{display:inline-block;width:7px;height:7px;background:var(--amber);transform:rotate(45deg)}.lg-today{display:inline-block;width:0;height:12px;border-left:1.5px dashed var(--amber)}.insights{list-style:none;margin:0;padding:0;display:grid;gap:10px}.insight{display:grid;gap:6px;padding:10px 12px;border-radius:10px;border:1px solid var(--line);border-left:3px solid var(--line2);background:#0b151b}.insight.on{background:#ffffff08}.insight-head{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.insight-facts{display:grid;gap:2px;font-size:12px;color:var(--muted)}.insight-feel{margin:0;font-size:13.5px}.delta{display:inline-block;margin-left:4px;padding:0 7px;border-radius:6px;font:700 12px/1.6 var(--mono)}.delta.up{color:#06201d;background:var(--accent)}.delta.down{color:#2a0a12;background:var(--rose)}.delta.flat{color:var(--muted);background:#ffffff12}.day-quote{margin:0;padding:8px 12px;border-left:3px solid var(--amber);background:#f5b9420d;border-radius:0 8px 8px 0;color:var(--text);white-space:pre-wrap}@media (max-width: 720px){.trace{grid-template-columns:112px minmax(0,1fr)}.trace-lane-label b{font-size:12px}}.overall{display:grid;grid-template-columns:auto auto 1fr auto;align-items:baseline;gap:8px;padding:10px 14px;border-radius:12px;border:1px solid var(--line);background:#0b151b}.overall-num{font-size:34px;font-weight:700;line-height:1}.overall-of{color:var(--dim);font-size:13px}.overall-word{color:var(--muted);font-size:14px}.overall-word small{color:var(--dim)}.overall-bars{display:flex;align-items:flex-end;gap:3px;height:30px;align-self:center}.overall-bars i{width:7px;border-radius:2px}.overall-bars i.empty{background:var(--line2)}.f1-text .overall-num{color:#ff6b8a}.f2-text .overall-num{color:#ff7f7a}.f3-text .overall-num{color:#ff946c}.f4-text .overall-num{color:#f8a85a}.f5-text .overall-num{color:#f5b942}.f6-text .overall-num{color:#d7c94a}.f7-text .overall-num{color:#b7e45a}.f8-text .overall-num{color:#8fe07c}.f9-text .overall-num{color:#62e3a8}.f10-text .overall-num{color:#5ee0b0}.pillars{display:grid;gap:10px}.pillar{display:grid;gap:5px}.pillar-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}.pillar-head b{font-size:14px}.pillar-head .hint{flex:1 1 auto}.pillar-val{font-weight:700;color:var(--text)}.feeling.compact .feeling-step{min-height:30px;font-size:12px;border-radius:6px}.pillar-readout{list-style:none;margin:0;padding:0;display:grid;gap:6px}.pillar-readout li{display:grid;grid-template-columns:minmax(0,150px) 1fr 24px;align-items:center;gap:10px;font-size:13px;color:var(--muted)}.pillar-meter{height:8px;border-radius:4px;background:#ffffff0d;overflow:hidden}.pillar-meter i{display:block;height:100%;border-radius:4px}.pillar-readout b{text-align:right;color:var(--text)}
