:root{--ink:#0e1620;--ink2:#15212e;--panel:#1a2836;--panel2:#22323f;--line:#2c3e4d;--line2:#38505f;--txt:#e8eef2;--muted:#8ba0ae;--faint:#5f7585;--teal:#34d1c4;--teal-dk:#1f8d84;--amber:#f0a830;--rose:#e8607a;--green:#3ecf8e;--shadow: 0 8px 30px rgba(0,0,0,.35);--r:14px}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--ink);color:var(--txt);font-family:DM Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}body{padding-bottom:90px}h1,h2,h3,.disp{font-family:Space Grotesk,DM Sans,sans-serif}.wrap{max-width:1100px;margin:0 auto;padding:0 16px}a{color:var(--teal)}header{position:sticky;top:0;z-index:40;background:#0e1620eb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.head-row{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;max-width:1100px;margin:0 auto}.brand{display:flex;align-items:center;gap:11px}.logo{width:34px;height:34px;border-radius:9px;background:linear-gradient(135deg,var(--teal),var(--teal-dk));display:grid;place-items:center;font-weight:700;color:var(--ink);font-size:18px;font-family:Space Grotesk;box-shadow:0 0 18px #34d1c459}.brand .t{font-weight:600;font-size:16px;letter-spacing:.2px}.brand .s{font-size:11px;color:var(--faint);letter-spacing:.5px;text-transform:uppercase}.datepick{display:flex;align-items:center;gap:8px}.datepick button{background:var(--panel);border:1px solid var(--line);color:var(--muted);width:32px;height:32px;border-radius:8px;cursor:pointer;font-size:15px;transition:.15s}.datepick button:hover{border-color:var(--teal);color:var(--teal)}.datepick .d{font-size:13px;color:var(--txt);min-width:124px;text-align:center;font-variant-numeric:tabular-nums}.datepick .today-tag{font-size:10px;color:var(--teal);text-transform:uppercase;letter-spacing:.5px;display:block;margin-top:1px}nav.tabs{position:fixed;bottom:0;left:0;right:0;z-index:50;background:#15212ef7;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-top:1px solid var(--line);display:flex;justify-content:center;gap:2px;padding:8px 6px 10px}nav.tabs button{background:none;border:none;color:var(--faint);cursor:pointer;display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 16px;border-radius:10px;transition:.15s;min-width:64px}nav.tabs button svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.8}nav.tabs button span{font-size:10.5px;letter-spacing:.3px}nav.tabs button.on{color:var(--teal)}nav.tabs button.on svg{filter:drop-shadow(0 0 6px rgba(52,209,196,.5))}.view{animation:fade .35s ease}@keyframes fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}section{padding:22px 0 6px}.eyebrow{font-size:11px;letter-spacing:1.6px;text-transform:uppercase;color:var(--teal);font-weight:600;margin-bottom:5px;display:flex;align-items:center;gap:8px}.eyebrow:before{content:"";width:18px;height:1.5px;background:var(--teal)}h2.sec{font-size:23px;font-weight:600;letter-spacing:-.3px;margin-bottom:3px}.sec-sub{color:var(--muted);font-size:13px;margin-bottom:16px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r);padding:18px;margin-bottom:14px}.card h3{font-size:15px;font-weight:600;margin-bottom:2px;display:flex;align-items:center;gap:9px;justify-content:space-between}.card h3 .lbl{display:flex;align-items:center;gap:9px}.pill{font-size:10px;padding:3px 9px;border-radius:20px;background:var(--ink2);color:var(--muted);border:1px solid var(--line);text-transform:uppercase;letter-spacing:.6px;font-weight:600}.pill.teal{color:var(--teal);border-color:var(--teal-dk);background:#34d1c414}.pill.amber{color:var(--amber);border-color:#6b4d14;background:#f0a83014}.pill.rose{color:var(--rose);border-color:#6b2230;background:#e8607a14}.pill.green{color:var(--green);border-color:#1f6b48;background:#3ecf8e14}.hero{display:grid;grid-template-columns:auto 1fr;gap:22px;align-items:center}@media (max-width:620px){.hero{grid-template-columns:1fr;text-align:center}}.rings{position:relative;width:150px;height:150px;margin:0 auto}.rings svg{transform:rotate(-90deg)}.rings .ctr{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;text-align:center}.rings .ctr .big{font-size:30px;font-weight:700;font-family:Space Grotesk;line-height:1}.rings .ctr .sm{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.8px;margin-top:3px}.legend{display:flex;flex-direction:column;gap:11px}.legend .row{display:flex;align-items:center;gap:11px}.legend .dot{width:11px;height:11px;border-radius:3px;flex-shrink:0}.legend .nm{font-size:13px;flex:1}.legend .vl{font-size:13px;font-variant-numeric:tabular-nums;color:var(--muted);font-weight:600}.gate{background:linear-gradient(135deg,var(--ink2),var(--panel));border:1px solid var(--line2);position:relative;overflow:hidden}.gate:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,var(--amber),var(--teal))}.gate .gate-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}.gate .clock{font-family:Space Grotesk;font-size:26px;font-weight:700;letter-spacing:.5px;font-variant-numeric:tabular-nums}.gate-steps{display:flex;flex-direction:column;gap:9px}.gstep{display:flex;align-items:flex-start;gap:11px;font-size:13px;line-height:1.4}.gstep .num{width:22px;height:22px;border-radius:50%;background:var(--ink);border:1px solid var(--line2);display:grid;place-items:center;font-size:11px;color:var(--muted);flex-shrink:0;font-weight:600}.gstep.done .num{background:var(--teal);border-color:var(--teal);color:var(--ink)}.gstep.done .txt{color:var(--muted);text-decoration:line-through}.gstep .txt b{color:var(--txt)}.gbtn{margin-top:14px;width:100%;padding:13px;border-radius:11px;border:none;cursor:pointer;font-family:Space Grotesk;font-weight:600;font-size:14px;background:var(--teal);color:var(--ink);transition:.15s}.gbtn:hover{background:#48ddd0;box-shadow:0 0 22px #34d1c466}.gbtn.taken{background:var(--ink2);color:var(--green);border:1px solid var(--green);cursor:default}.gbtn:disabled{opacity:.5;cursor:not-allowed}.macro-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:4px}@media (max-width:560px){.macro-grid{grid-template-columns:repeat(2,1fr)}}.macro{background:var(--ink2);border:1px solid var(--line);border-radius:11px;padding:13px}.macro .mlbl{font-size:10.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;margin-bottom:6px;display:flex;justify-content:space-between}.macro .mval{font-size:21px;font-weight:700;font-family:Space Grotesk;font-variant-numeric:tabular-nums}.macro .mtgt{font-size:11px;color:var(--faint)}.macro .bar{height:4px;background:var(--ink);border-radius:3px;margin-top:8px;overflow:hidden}.macro .bar i{display:block;height:100%;border-radius:3px;transition:width .4s}.add-food{display:flex;gap:8px;margin-top:13px;flex-wrap:wrap}.add-food input{flex:1;min-width:90px;background:var(--ink);border:1px solid var(--line);color:var(--txt);padding:10px 12px;border-radius:9px;font-size:13px;font-family:inherit}.add-food input:focus{outline:none;border-color:var(--teal)}.add-food input::placeholder{color:var(--faint)}.add-food .nm{flex:2.5;min-width:130px}.add-food button{background:var(--teal);border:none;color:var(--ink);padding:0 18px;border-radius:9px;cursor:pointer;font-weight:600;font-family:Space Grotesk;font-size:13px}.food-log{margin-top:12px;display:flex;flex-direction:column;gap:6px}.food-item{display:flex;align-items:center;gap:10px;padding:9px 12px;background:var(--ink2);border-radius:9px;font-size:13px}.food-item .fn{flex:1}.food-item .food-thumb{flex-shrink:0;line-height:0}.food-item .food-thumb img{width:34px;height:34px;border-radius:7px;object-fit:cover;border:1px solid var(--line)}.food-item .fm{color:var(--muted);font-variant-numeric:tabular-nums;font-size:12px}.food-item .del{background:none;border:none;color:var(--faint);cursor:pointer;font-size:16px;line-height:1;padding:2px 4px}.food-item .del:hover{color:var(--rose)}.quickadd{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.quickadd button{background:var(--ink);border:1px solid var(--line);color:var(--muted);font-size:11.5px;padding:6px 11px;border-radius:20px;cursor:pointer;transition:.15s}.quickadd button:hover{border-color:var(--teal);color:var(--teal)}.food-search{position:relative;margin-top:13px}.food-search input{width:100%;background:var(--ink);border:1px solid var(--line);color:var(--txt);padding:11px 13px;border-radius:9px;font-size:13.5px;font-family:inherit}.food-search input:focus{outline:none;border-color:var(--teal)}.food-search input::placeholder{color:var(--faint)}.search-results{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:20;background:var(--panel2);border:1px solid var(--line2);border-radius:11px;max-height:280px;overflow-y:auto;box-shadow:var(--shadow)}.sr-item{display:flex;align-items:center;gap:10px;padding:11px 13px;cursor:pointer;border-bottom:1px solid var(--line);transition:.1s}.sr-item:last-child{border-bottom:none}.sr-item:hover{background:var(--ink2)}.sr-item .sn{flex:1;font-size:13px}.sr-item .sn .ss{font-size:11px;color:var(--faint)}.sr-item .sm{font-size:11.5px;color:var(--muted);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.sr-item .sm b{color:var(--amber)}.sr-empty{padding:14px;text-align:center;color:var(--faint);font-size:12.5px}.recent-foods{display:flex;gap:6px;flex-wrap:wrap;margin-top:10px}.recent-foods .rf-label{font-size:10.5px;color:var(--faint);text-transform:uppercase;letter-spacing:.6px;width:100%;margin-bottom:-3px}.recent-foods button{background:#34d1c412;border:1px solid var(--teal-dk);color:var(--teal);font-size:11.5px;padding:6px 11px;border-radius:20px;cursor:pointer;transition:.15s}.recent-foods button:hover{background:#34d1c426}.check-grp{margin-bottom:6px}.check-grp .gh{font-size:11px;color:var(--teal);text-transform:uppercase;letter-spacing:.8px;margin:14px 0 8px;font-weight:600;display:flex;align-items:center;gap:8px}.check-grp .gh .gnote{color:var(--faint);font-weight:400;letter-spacing:0;text-transform:none;font-size:11px}.chk{display:flex;align-items:center;gap:12px;padding:11px 13px;background:var(--ink2);border:1px solid var(--line);border-radius:10px;margin-bottom:7px;cursor:pointer;transition:.15s;-webkit-user-select:none;user-select:none}.chk:hover{border-color:var(--line2)}.chk.on{background:#34d1c40f;border-color:var(--teal-dk)}.chk.locked{cursor:default}.chk.locked:hover{border-color:var(--line)}.chk.auto .box{border-style:dashed}.box{width:21px;height:21px;border-radius:6px;border:2px solid var(--line2);flex-shrink:0;display:grid;place-items:center;transition:.15s}.chk.on .box{background:var(--teal);border-color:var(--teal)}.box svg{width:12px;height:12px;stroke:var(--ink);stroke-width:3.5;fill:none;opacity:0;transition:.15s}.chk.on .box svg{opacity:1}.chk .ci{flex:1}.chk .cn{font-size:13.5px;font-weight:500}.chk.on .cn{color:var(--muted)}.chk .cs{font-size:11.5px;color:var(--faint);margin-top:1px}.chk .tag{font-size:9.5px;padding:2px 7px;border-radius:12px;text-transform:uppercase;letter-spacing:.5px;font-weight:600;flex-shrink:0}.tag.am{background:#f0a8301f;color:var(--amber)}.tag.pm{background:#7b8cff24;color:#9aa6ff}.tag.pw{background:#3ecf8e1f;color:var(--green)}.tag.food{background:#34d1c41a;color:var(--teal)}.tag.auto{background:#34d1c41f;color:var(--teal);border:1px solid var(--teal-dk)}.tag.day{background:#7b8cff24;color:#9aa6ff}.chk.child{margin-left:16px;padding:9px 12px;background:transparent;border-style:dashed}.chk.child .cn{font-size:13px;font-weight:450}.chk.child .box{width:19px;height:19px}.voice-fab{position:fixed;right:18px;bottom:96px;z-index:60;width:54px;height:54px;border-radius:50%;border:none;cursor:pointer;display:grid;place-items:center;color:var(--ink);background:linear-gradient(135deg,var(--teal),var(--teal-dk));box-shadow:0 6px 20px #34d1c473;transition:.15s}.voice-fab:hover{transform:translateY(-2px);box-shadow:0 8px 24px #34d1c48c}.voice-fab:active{transform:translateY(0)}.voice-mic{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;margin:10px 0;padding:14px;border-radius:12px;border:1px solid var(--teal-dk);background:#34d1c414;color:var(--teal);font-weight:600;cursor:pointer;font-size:14px}.voice-mic.live{background:#e85a5a1f;border-color:var(--rose);color:var(--rose);animation:voice-pulse 1.2s infinite}@keyframes voice-pulse{0%,to{opacity:1}50%{opacity:.5}}.insight-row{display:flex;gap:10px;align-items:flex-start;padding:10px 0;border-bottom:1px solid var(--line)}.insight-row:last-of-type{border-bottom:none}.insight-row .pill{flex-shrink:0;margin-top:1px}.insight-body{flex:1}.insight-text{font-size:13.5px;line-height:1.4}.insight-detail{font-size:11.5px;color:var(--faint);margin-top:2px;font-variant-numeric:tabular-nums}.lift-ex{padding:9px 0;border-bottom:1px solid var(--line)}.lift-ex:last-child{border-bottom:none}.lift-ex-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.lift-ex-name{font-size:14px;font-weight:600}.set-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:7px}.set-chip{display:inline-flex;align-items:center;gap:4px;background:var(--ink2);border:1px solid var(--line);border-radius:8px;padding:4px 7px;font-size:12.5px;font-variant-numeric:tabular-nums}.set-chip.warm{opacity:.55;border-style:dashed}.set-chip .set-x{background:none;border:none;color:var(--faint);cursor:pointer;font-size:14px;line-height:1;padding:0 1px}.set-chip .set-x:hover{color:var(--rose)}.ex-picker{margin:8px 0;border:1px solid var(--line);border-radius:10px;overflow:hidden}.ex-opt{display:block;width:100%;text-align:left;background:var(--ink2);border:none;border-bottom:1px solid var(--line);color:var(--txt);padding:9px 12px;cursor:pointer;font-size:13px}.ex-opt:last-child{border-bottom:none}.ex-opt:hover{background:var(--panel2)}.ex-opt.add{color:var(--teal);font-weight:600}.draft-ex{margin-top:10px;padding:10px;background:var(--ink2);border:1px solid var(--line);border-radius:10px}.set-row{display:flex;align-items:center;gap:6px;margin-top:7px}.set-row .set-n{width:16px;color:var(--faint);font-size:12px;flex-shrink:0}.set-row input{width:64px;background:var(--ink);border:1px solid var(--line);border-radius:8px;color:var(--txt);padding:7px 8px;font-size:13px}.set-row .set-x-lbl{color:var(--faint)}.set-row .set-e1rm{flex:1;font-size:11px;color:var(--faint);text-align:right;font-variant-numeric:tabular-nums}.set-row .set-x{background:none;border:none;color:var(--faint);cursor:pointer;font-size:16px;line-height:1}.set-row .set-x:hover{color:var(--rose)}.warm-btn{width:26px;height:26px;border-radius:7px;border:1px solid var(--line);background:var(--ink);color:var(--faint);cursor:pointer;font-size:11px;font-weight:700;flex-shrink:0}.warm-btn.on{background:#f0a83029;border-color:var(--amber);color:var(--amber)}.add-set{margin-top:8px;background:none;border:1px dashed var(--line2);color:var(--muted);border-radius:8px;padding:6px 12px;cursor:pointer;font-size:12.5px}.add-set:hover{border-color:var(--teal-dk);color:var(--teal)}.wkgrid{overflow-x:auto;margin:0 -2px}table.matrix{width:100%;border-collapse:separate;border-spacing:4px;min-width:540px}table.matrix th{font-size:11px;color:var(--muted);font-weight:600;padding:6px;text-align:center}table.matrix th.lab{text-align:left;min-width:130px}table.matrix td.lab{font-size:13px;text-align:left;padding:8px 6px;color:var(--txt)}table.matrix td.lab .sub{font-size:11px;color:var(--faint)}table.matrix td .cell{width:34px;height:34px;border-radius:8px;background:var(--ink2);border:1px solid var(--line);margin:0 auto;cursor:pointer;display:grid;place-items:center;transition:.12s}table.matrix td .cell:hover{border-color:var(--line2)}table.matrix td .cell.on{background:var(--teal);border-color:var(--teal)}table.matrix td .cell.on:after{content:"✓";color:var(--ink);font-size:15px;font-weight:700}table.matrix td .cell.rest{background:repeating-linear-gradient(45deg,var(--ink2),var(--ink2) 4px,var(--panel) 4px,var(--panel) 8px)}.metric-row{display:flex;align-items:center;gap:14px;padding:13px 0;border-bottom:1px solid var(--line)}.metric-row:last-child{border-bottom:none}.metric-row .mname{flex:1}.metric-row .mname .t{font-size:14px;font-weight:500}.metric-row .mname .d{font-size:11.5px;color:var(--faint)}.metric-row input{width:80px;background:var(--ink2);border:1px solid var(--line);color:var(--txt);padding:9px;border-radius:9px;text-align:center;font-size:14px;font-family:inherit;font-variant-numeric:tabular-nums}.metric-row input:focus{outline:none;border-color:var(--teal)}.metric-row .unit{font-size:12px;color:var(--muted);min-width:34px}.tl{position:relative;padding-left:26px}.tl:before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:var(--line2)}.tl-item{position:relative;padding:0 0 20px}.tl-item:before{content:"";position:absolute;left:-23px;top:4px;width:14px;height:14px;border-radius:50%;background:var(--panel);border:2px solid var(--teal)}.tl-item.done:before{background:var(--teal)}.tl-item .when{font-size:11px;color:var(--teal);text-transform:uppercase;letter-spacing:.7px;font-weight:600}.tl-item .what{font-size:14px;font-weight:500;margin:3px 0 2px}.tl-item .desc{font-size:12.5px;color:var(--muted);line-height:1.45}.tl-check{margin-top:7px;display:inline-flex;align-items:center;gap:7px;font-size:12px;color:var(--faint);cursor:pointer;background:var(--ink2);border:1px solid var(--line);padding:5px 11px;border-radius:8px;transition:.15s}.tl-check:hover{border-color:var(--teal);color:var(--teal)}.tl-check.done{color:var(--green);border-color:var(--green)}.appt{display:flex;align-items:center;gap:13px;padding:13px;background:var(--ink2);border:1px solid var(--line);border-radius:11px;margin-bottom:9px}.appt .ico{width:38px;height:38px;border-radius:10px;display:grid;place-items:center;flex-shrink:0;font-size:18px}.appt .ai{flex:1}.appt .an{font-size:14px;font-weight:600}.appt .ad{font-size:12px;color:var(--muted)}.appt .status{font-size:10px;padding:4px 10px;border-radius:20px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.st-booked{background:#3ecf8e24;color:var(--green)}.st-open{background:#f0a83024;color:var(--amber)}.st-motion{background:#34d1c41f;color:var(--teal)}.note{font-size:12px;color:var(--faint);line-height:1.5;margin-top:6px}.divider{height:1px;background:var(--line);margin:22px 0}.flag{display:flex;gap:10px;padding:12px 14px;background:#f0a83012;border:1px solid #5c4416;border-radius:11px;font-size:12.5px;line-height:1.5;color:#f3d49a;margin-bottom:10px}.flag.teal{background:#34d1c40f;border-color:var(--teal-dk);color:#a5e8e2}.flag b{color:#fff}.flag .fi{font-size:16px;flex-shrink:0}.reset-link{font-size:11px;color:var(--faint);text-align:center;display:block;margin:20px auto;cursor:pointer;background:none;border:none;width:100%}.reset-link:hover{color:var(--rose)}.toast{position:fixed;bottom:96px;left:50%;transform:translate(-50%) translateY(20px);background:var(--teal);color:var(--ink);padding:11px 20px;border-radius:24px;font-size:13px;font-weight:600;opacity:0;transition:.3s;z-index:60;box-shadow:var(--shadow);pointer-events:none}.toast.show{opacity:1;transform:translate(-50%) translateY(0)}.loading{text-align:center;color:var(--faint);padding:40px;font-size:13px}.log-actions{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:13px}.log-actions button{background:var(--ink2);border:1px solid var(--line);color:var(--txt);font-size:12.5px;padding:11px 6px;border-radius:10px;cursor:pointer;font-family:inherit;transition:.15s}.log-actions button:hover{border-color:var(--teal);color:var(--teal)}@media (max-width:480px){.log-actions{grid-template-columns:repeat(2,1fr)}}.meal-group{margin-bottom:10px}.meal-head{font-size:11px;color:var(--teal);text-transform:uppercase;letter-spacing:.7px;font-weight:600;display:flex;justify-content:space-between;align-items:baseline;margin:8px 2px 6px}.meal-head .meal-sub{color:var(--faint);font-weight:500;letter-spacing:0;text-transform:none;font-variant-numeric:tabular-nums}.food-item .fserv{color:var(--faint)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#080d13b8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:flex-end;justify-content:center;animation:fade .2s ease}@media (min-width:620px){.modal-overlay{align-items:center}}.modal{background:var(--panel);border:1px solid var(--line2);border-radius:18px 18px 0 0;width:100%;max-width:560px;max-height:90vh;overflow-y:auto;padding:18px;box-shadow:var(--shadow)}@media (min-width:620px){.modal{border-radius:16px}}.modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.modal-title{font-family:Space Grotesk;font-size:18px;font-weight:600}.modal-x{background:none;border:none;color:var(--muted);font-size:26px;line-height:1;cursor:pointer;padding:0 4px}.modal-x:hover{color:var(--rose)}.meal-chips{display:flex;gap:6px;margin-bottom:12px}.meal-chip{flex:1;background:var(--ink2);border:1px solid var(--line);color:var(--muted);font-size:11.5px;padding:8px;border-radius:9px;cursor:pointer;text-transform:capitalize;font-family:inherit;transition:.15s}.meal-chip.on{background:#34d1c41a;border-color:var(--teal-dk);color:var(--teal)}.mode-tabs{display:flex;gap:6px;margin-bottom:14px;flex-wrap:wrap}.mode-tab{flex:1;min-width:80px;background:var(--ink);border:1px solid var(--line);color:var(--muted);font-size:12px;padding:9px 6px;border-radius:9px;cursor:pointer;font-family:inherit;transition:.15s}.mode-tab.on{background:var(--teal);border-color:var(--teal);color:var(--ink);font-weight:600}.mode-body{min-height:60px}.logger-input,.logger-textarea{width:100%;background:var(--ink);border:1px solid var(--line);color:var(--txt);padding:11px 13px;border-radius:10px;font-size:14px;font-family:inherit}.logger-input:focus,.logger-textarea:focus{outline:none;border-color:var(--teal)}.logger-textarea{min-height:84px;resize:vertical;line-height:1.45}.logger-go{margin-top:10px;width:100%;padding:12px;border-radius:10px;border:1px solid var(--teal-dk);background:#34d1c414;color:var(--teal);font-weight:600;font-family:Space Grotesk;font-size:14px;cursor:pointer}.logger-go:disabled{opacity:.5;cursor:not-allowed}.logger-go.primary{background:var(--teal);color:var(--ink);border-color:var(--teal)}.cand{display:flex;align-items:center;gap:8px;padding:10px 11px;background:var(--ink2);border:1px solid var(--line);border-radius:10px;margin-top:7px}.cand-main{flex:1;cursor:pointer;min-width:0}.cand-name{font-size:13.5px;font-weight:500}.cand-brand,.src{color:var(--faint);font-weight:400}.src{font-size:10px;text-transform:uppercase;letter-spacing:.4px;margin-left:4px}.cand-sub{font-size:11.5px;color:var(--muted);margin-top:2px;font-variant-numeric:tabular-nums}.cand-fav,.cand-x{background:none;border:none;color:var(--faint);cursor:pointer;font-size:18px;line-height:1;padding:2px 5px;flex-shrink:0}.cand-fav:hover{color:var(--amber)}.cand-x:hover{color:var(--rose)}.scanner{position:relative;border-radius:12px;overflow:hidden;background:#000;aspect-ratio:4/3}.scanner-video{width:100%;height:100%;object-fit:cover;display:block}.scanner-reticle{position:absolute;top:18%;right:12%;bottom:18%;left:12%;border:2px solid rgba(52,209,196,.8);border-radius:10px;box-shadow:0 0 0 9999px #00000040}.photo-zone{padding:6px 0}.photo-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:24px;border-radius:12px;border:1.5px dashed var(--line2);color:var(--teal);font-size:14px;font-weight:600;cursor:pointer;background:var(--ink2);transition:.15s}.photo-btn:hover{border-color:var(--teal)}.draft{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.draft-row{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid var(--line)}.draft-main{flex:1;min-width:0}.draft-row .conf{color:var(--amber);font-size:11px;font-weight:600}.qty{display:flex;align-items:center;gap:8px;flex-shrink:0}.qty button{width:26px;height:26px;border-radius:7px;border:1px solid var(--line2);background:var(--ink2);color:var(--txt);font-size:15px;cursor:pointer;line-height:1}.qty span{min-width:24px;text-align:center;font-variant-numeric:tabular-nums;font-size:13px}nav.tabs button{padding:6px 7px;min-width:46px}@media (max-width:400px){nav.tabs button span{font-size:9px}nav.tabs button{padding:6px 5px;min-width:42px;gap:2px}}@media (max-width:340px){nav.tabs button span{display:none}}.conn-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.conn-name{font-size:14px;font-weight:600}.conn-sub{font-size:12px;color:var(--muted);margin-top:1px}.conn-btn{background:var(--ink2);border:1px solid var(--line2);color:var(--txt);font-size:12.5px;padding:8px 14px;border-radius:9px;cursor:pointer;font-family:inherit;text-decoration:none;white-space:nowrap;display:inline-block}.conn-btn:hover{border-color:var(--teal);color:var(--teal)}.conn-btn.primary{background:var(--teal);border-color:var(--teal);color:var(--ink);font-weight:600}.conn-btn:disabled{opacity:.5;cursor:not-allowed}.note code{background:var(--ink);border:1px solid var(--line);border-radius:5px;padding:1px 5px;font-size:11px;color:var(--teal);word-break:break-all}.trend-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}@media (max-width:520px){.trend-grid{grid-template-columns:1fr}}.trend{background:var(--ink2);border:1px solid var(--line);border-radius:11px;padding:11px}.trend-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:4px;font-size:12px;color:var(--muted)}.trend-head b{font-family:Space Grotesk;font-size:15px;color:var(--txt);font-variant-numeric:tabular-nums}.bm-row{display:flex;align-items:center;gap:10px;padding:11px 2px;border-bottom:1px solid var(--line);cursor:pointer}.bm-row:hover{background:var(--ink2)}.bm-name{flex:1;font-size:13.5px;font-weight:500}.bm-unit{color:var(--faint);font-weight:400;font-size:11.5px}.bm-val{font-family:Space Grotesk;font-weight:700;font-variant-numeric:tabular-nums;font-size:15px}.bm-chg{font-size:12px;color:var(--muted);font-variant-numeric:tabular-nums;min-width:52px;text-align:right}.bm-chart{padding:10px 4px 14px}.corr-selects{display:flex;align-items:center;gap:10px;margin-bottom:12px}.corr-selects select{flex:1;background:var(--ink);border:1px solid var(--line);color:var(--txt);padding:9px 10px;border-radius:9px;font-size:13px;font-family:inherit}.corr-selects select:focus{outline:none;border-color:var(--teal)}.corr-vs{color:var(--faint);font-size:12px}.water-bar{height:10px;background:var(--ink2);border:1px solid var(--line);border-radius:6px;overflow:hidden;margin:6px 0 10px}.water-bar i{display:block;height:100%;background:linear-gradient(90deg,#5aa9ff,#34d1c4);border-radius:6px;transition:width .4s}.water-glasses{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:8px;font-size:20px;line-height:1}.glass{opacity:.22;filter:grayscale(.4)}.glass.full{opacity:1;filter:none}.rem-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 0;border-bottom:1px solid var(--line)}.rem-row:last-child{border-bottom:none}.rem-name{font-size:13.5px;font-weight:500}.rem-sub{font-size:11.5px;color:var(--faint);margin-top:1px}.rem-time{width:92px;background:var(--ink2);border:1px solid var(--line);color:var(--txt);padding:7px;border-radius:8px;font-size:13px;font-family:inherit}.switch{width:42px;height:24px;border-radius:14px;background:var(--ink2);border:1px solid var(--line2);position:relative;cursor:pointer;flex-shrink:0;transition:.15s}.switch i{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--faint);transition:.18s}.switch.on{background:#34d1c440;border-color:var(--teal-dk)}.switch.on i{left:21px;background:var(--teal)}.assistant-answer{white-space:pre-wrap;font-size:13px;line-height:1.55;color:var(--txt);background:var(--ink2);border:1px solid var(--line);border-radius:10px;padding:12px;margin-top:10px;max-height:440px;overflow-y:auto}.rate{width:24px;height:24px;border-radius:6px;border:1px solid var(--line2);background:var(--ink2);color:var(--muted);font-size:12px;cursor:pointer}.rate:hover{border-color:var(--teal);color:var(--teal)}.login-wrap{max-width:360px;margin:18vh auto 0;padding:0 20px;text-align:center}.login-wrap .logo{width:54px;height:54px;border-radius:14px;margin:0 auto 18px;font-size:28px}.login-wrap input{width:100%;background:var(--ink2);border:1px solid var(--line);color:var(--txt);padding:13px;border-radius:11px;font-size:15px;font-family:inherit;margin:14px 0}.login-wrap input:focus{outline:none;border-color:var(--teal)}.login-wrap button{width:100%;padding:13px;border-radius:11px;border:none;background:var(--teal);color:var(--ink);font-weight:600;font-family:Space Grotesk;font-size:15px;cursor:pointer}.login-err{color:var(--rose);font-size:13px;margin-top:8px;min-height:18px}
