:root{--bg-canvas:#f3f1ec;--bg-surface:#fff;--bg-elevated:#fff;--border:#e9e6df;--border-strong:#ddd8cf;--text-ink:#1a1c22;--text-secondary:#83817a;--text-muted:#a8a59c;--accent:#2f8f5b;--accent-hover:#277a4d;--accent-soft:#2f8f5b1a;--accent-blue:#3b82f6;--accent-blue-soft:#eaf1ff;--warn:#c98a2e;--warn-ink:#8a5a12;--warn-soft:#fbeccf;--warn-bg:#fff6ec;--warn-border:#f3e3cf;--success:#2f8f5b;--warning:#c98a2e;--danger:#d94a4a;--hero-from:#eafaf0;--hero-to:#dff4e7;--hero-border:#cfecd9;--hero-ink:#15321f;--hero-eye:#1f7a4a;--hero-meta:#3f7a57;--shadow-sm:0 2px 8px #1a1c220f;--shadow-md:0 6px 18px #1a1c220f;--shadow-lg:0 10px 28px #1a1c2214;--radius-sm:12px;--radius-md:16px;--radius-lg:20px;--radius-xl:28px;--glass-bg:#f3f1eccc;--switch-track:#ddd8cf;--switch-thumb:#fff;--skeleton:#eceae4}.dark{--bg-canvas:#121113;--bg-surface:#1b1a1d;--bg-elevated:#222024;--border:#2c2a2e;--border-strong:#3a373c;--text-ink:#f3f1ee;--text-secondary:#a29e98;--text-muted:#726e69;--accent:#36b06e;--accent-hover:#41c47c;--accent-soft:#36b06e29;--accent-blue:#5b9bf6;--accent-blue-soft:#5b9bf629;--warn:#d99a3e;--warn-ink:#e7b86a;--warn-soft:#d99a3e33;--warn-bg:#d99a3e1a;--warn-border:#d99a3e47;--success:#36b06e;--warning:#d99a3e;--danger:#e8615f;--hero-from:#16261c;--hero-to:#13201a;--hero-border:#24402f;--hero-ink:#dff3e6;--hero-eye:#6fce97;--hero-meta:#8fb89f;--shadow-sm:0 2px 10px #0000004d;--shadow-md:0 8px 22px #00000059;--shadow-lg:0 14px 34px #00000073;--glass-bg:#121113cc;--switch-track:#3a373c;--switch-thumb:#f3f1ee;--skeleton:#222024}html,body{background:var(--bg-canvas);color:var(--text-ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,Helvetica Neue,sans-serif}*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,Helvetica Neue,sans-serif;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.visible{visibility:visible}.static{position:static}.relative{position:relative}.sticky{position:sticky}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.ml-auto{margin-left:auto}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.flex-1{flex:1}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.rounded-xl{border-radius:.75rem}.border{border-width:1px}.bg-accent{background-color:var(--accent)}.bg-danger{background-color:var(--danger)}.bg-elevated{background-color:var(--bg-elevated)}.px-4{padding-left:1rem;padding-right:1rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.text-ink{color:var(--text-ink)}.text-muted{color:var(--text-muted)}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.outline{outline-style:solid}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.hover\:bg-accent-hover:hover{background-color:var(--accent-hover)}.hover\:bg-border:hover{background-color:var(--border)}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:opacity-50:disabled{opacity:.5}.card{background:var(--bg-surface);border:1px solid var(--border);border-radius:12px;padding:16px;transition:border-color .15s}.card:hover{border-color:var(--border-strong)}.signal-tile{background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--text-ink) 7%, transparent);text-align:left;cursor:pointer;border-radius:14px;flex-direction:column;justify-content:space-between;gap:10px;width:100%;min-height:92px;padding:12px;transition:background .15s,border-color .15s;display:flex;position:relative;overflow:hidden}.signal-top{justify-content:space-between;align-items:center;display:flex}.signal-chip{background:color-mix(in srgb, var(--text-ink) 5%, transparent);border-radius:9px;justify-content:center;align-items:center;width:30px;height:30px;font-size:16px;display:flex}.signal-chev{color:var(--text-secondary);opacity:.45}.signal-tile:hover,.signal-tile:focus-visible{background:color-mix(in srgb, var(--text-ink) 3%, var(--bg-elevated));border-color:color-mix(in srgb, var(--text-ink) 14%, transparent);outline:none}.signal-num{color:var(--text-ink);letter-spacing:-.02em;font-size:22px;font-weight:700;line-height:1.05}.signal-label{color:var(--text-secondary);letter-spacing:.01em;font-size:10px;font-weight:500}.signal-tile.warn{background:color-mix(in srgb, #ef4444 4%, var(--bg-elevated));border-color:#ef444447}.ios-switch{flex-shrink:0;width:34px;height:20px;display:inline-block;position:relative}.ios-switch input{opacity:0;width:0;height:0;position:absolute}.ios-switch .slider{cursor:pointer;background:color-mix(in srgb, var(--text-muted) 35%, transparent);border-radius:999px;transition:background .2s;position:absolute;inset:0}.ios-switch .slider:before{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .2s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #00000040}.ios-switch input:checked+.slider:before{transform:translate(14px)}.chip{background:var(--bg-elevated);border:1px solid var(--border);color:var(--text-secondary);border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:12px;line-height:1;display:inline-flex}.chip-accent{background:var(--accent-soft);border-color:color-mix(in srgb, var(--accent) 40%, transparent);color:var(--accent)}.chip-button{cursor:pointer;transition:background .15s,border-color .15s}.chip-button:hover{background:var(--bg-surface);border-color:var(--border-strong)}.badge{background:var(--accent-soft);color:var(--accent);letter-spacing:.02em;text-transform:uppercase;border-radius:8px;padding:2px 8px;font-size:11px;font-weight:600;display:inline-block}.skeleton{background:linear-gradient(90deg, var(--skeleton), color-mix(in srgb, var(--text-ink) 8%, var(--skeleton)), var(--skeleton));background-size:200% 100%;border-radius:8px;animation:1.6s ease-in-out infinite ds-shimmer}@keyframes ds-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.src-dot{background:var(--text-secondary);border-radius:50%;flex-shrink:0;width:9px;height:9px}.src-dot.ok{background:#22c55e}.src-dot.err{background:#ef4444}.src-dot.off{background:color-mix(in srgb, var(--text-ink) 25%, transparent)}.icon-btn{width:36px;height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;transition:background .15s,color .15s,transform 80ms ease-out;display:inline-flex}.icon-btn:active{transform:scale(.88)}.icon-btn.success{color:#16a34a;background:#16a34a24}.pill-input{background:var(--bg-elevated);border:1.5px solid var(--border);cursor:text;border-radius:999px;align-items:center;gap:10px;min-height:46px;padding:11px 18px;transition:border-color .15s,background .15s,box-shadow .15s;display:flex;position:relative}.pill-input:hover{border-color:var(--border-strong)}.pill-input:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent)}.pill-input.error{border-color:var(--danger);box-shadow:0 0 0 3px color-mix(in srgb, var(--danger) 18%, transparent)}.pill-input.title-input{border-radius:16px;align-items:flex-start;min-height:56px;padding:12px 16px}.ds-subtabs{background:var(--bg-elevated);border-radius:999px;gap:4px;padding:4px;display:flex}.subtab{color:var(--text-secondary);cursor:pointer;white-space:nowrap;text-align:center;text-overflow:ellipsis;background:0 0;border:none;border-radius:999px;flex:1 1 0;min-width:0;padding:6px 8px;font-size:13px;font-weight:500;line-height:1.2;transition:color .15s,background .15s;overflow:hidden}.sheet-overlay{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:49;background:#00000080;animation:.2s ease-out ds-fade-in;position:fixed;inset:0}.bottom-sheet{background:var(--bg-surface);border-top:1px solid var(--border);padding:16px 16px calc(16px + env(safe-area-inset-bottom));z-index:50;-webkit-overflow-scrolling:touch;border-radius:18px 18px 0 0;max-height:95vh;animation:.25s cubic-bezier(.2,.9,.3,1) ds-slide-up;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;box-shadow:0 -20px 40px -10px #0000002e}@keyframes ds-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes ds-fade-in{0%{opacity:0}to{opacity:1}}@media (width>=641px){.ds-sheet-wrap.dialog{z-index:50;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ds-sheet-wrap.dialog>.bottom-sheet{z-index:60;border-radius:18px;width:480px;max-width:calc(100vw - 32px);max-height:88vh;animation:.18s ease-out ds-fade-in;position:relative;bottom:auto;left:auto;right:auto}}.next-action-card{background:var(--bg-elevated);border:1px solid color-mix(in srgb, var(--text-ink) 7%, transparent);border-radius:14px;flex-direction:column;gap:8px;padding:12px 14px;display:flex;position:relative;overflow:hidden;box-shadow:0 1px 2px #00000008}.next-action-card.is-frog{background:radial-gradient(circle at 0% 0%, #22c55e14, transparent 60%), var(--bg-elevated);border-color:#22c55e59}.next-action-label{text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);align-items:center;gap:4px;font-size:9px;font-weight:600;display:inline-flex}.next-action-card.is-frog .next-action-label{color:#15803d}.next-action-title{color:var(--text-ink);letter-spacing:-.012em;cursor:pointer;background:0 0;border:0;padding:0;font-size:15px;font-weight:600;line-height:1.3}.next-action-actions .icon-btn{border-radius:10px;min-width:36px;min-height:36px}.next-action-actions .icon-btn.success{color:#fff;background:linear-gradient(#22c55e,#16a34a);border:0;box-shadow:0 1px 4px #16a34a4d}.next-action-meta{color:var(--text-secondary);letter-spacing:.01em;font-size:11px}.text-button{cursor:pointer;background:0 0;border:none;padding:6px 8px;font-size:14px;font-weight:600}.time-popover{background:var(--bg-elevated);border:1px solid var(--border);border-radius:16px;width:min(320px,100vw - 32px);max-height:calc(100vh - 32px);padding:14px;overflow-y:auto;box-shadow:0 24px 64px -16px #0000008c}.time-popover .tp-display{text-align:center;letter-spacing:.04em;color:var(--text-ink);font-variant-numeric:tabular-nums;margin-bottom:10px;font-size:32px;font-weight:700}.time-popover .tp-display .tp-seg{cursor:pointer;border-radius:6px;padding:2px 8px;transition:background .12s,color .12s}.time-popover .tp-tabs{gap:4px;margin-bottom:12px;display:flex}.time-popover .tp-tab{text-align:center;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:1;padding:6px 0;font-size:11px;font-weight:700;transition:background .12s,color .12s}.tp-dial{background:var(--bg-surface);border-radius:50%;width:240px;height:240px;margin:6px auto 14px;position:relative}.tp-dial-num{font-variant-numeric:tabular-nums;width:32px;height:32px;color:var(--text-ink);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;margin-top:-16px;margin-left:-16px;font-size:14px;transition:background .12s,color .12s,transform 80ms;display:flex;position:absolute}.tp-dial-num.inner{color:var(--text-muted);font-size:12px}.tp-dial-num:active{transform:scale(.92)}.tp-dial-num.selected{background:var(--accent);color:#fff!important}.tp-dial-hand{background:var(--accent);transform-origin:1px 100%;pointer-events:none;width:2px;height:90px;transition:height .15s,transform .25s cubic-bezier(.4,1.5,.6,1);position:absolute;bottom:50%;left:50%;transform:translate(-1px)rotate(0)}.tp-dial-hand.inner{height:56px}.tp-dial-center{background:var(--accent);pointer-events:none;border-radius:50%;width:8px;height:8px;margin-top:-4px;margin-left:-4px;position:absolute;top:50%;left:50%}.time-popover .tp-actions{justify-content:space-between;gap:6px;margin-top:8px;display:flex}.calendar-popover{background:var(--bg-elevated);border:1px solid var(--border);border-radius:12px;width:240px;padding:10px;animation:.14s ease-out ds-fade-in;box-shadow:0 16px 48px -12px #00000073}.cal-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.cal-header .nav-btn{width:26px;height:26px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:18px;line-height:1;transition:background .12s,color .12s;display:flex}.cal-header .title{color:var(--text-ink);text-transform:capitalize;font-size:13px;font-weight:600}.day-grid{grid-template-columns:repeat(7,1fr);gap:2px;display:grid}.day-grid .wd{text-align:center;color:var(--text-muted);text-transform:uppercase;padding:2px 0;font-size:10px;font-weight:600}.day-cell{text-align:center;font-variant-numeric:tabular-nums;cursor:pointer;width:100%;color:var(--text-ink);background:0 0;border:none;border-radius:6px;padding:6px 0;font-size:12px;transition:background .12s,color .12s}.day-cell.muted{color:var(--text-muted);opacity:.4}.day-cell.past{color:var(--text-muted);opacity:.28;pointer-events:none;cursor:not-allowed}.card{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:none;padding:18px}.card:hover{box-shadow:var(--shadow-lg);border:none}.icon-badge{border-radius:13px;flex:none;justify-content:center;align-items:center;display:flex}.icon-badge--green{background:var(--accent-soft);color:var(--accent)}.icon-badge--blue{background:var(--accent-blue-soft);color:var(--accent-blue)}.icon-badge--warn{background:var(--warn-soft);color:var(--warn)}.icon-badge--neutral{background:color-mix(in srgb, var(--text-ink) 6%, transparent);color:var(--text-secondary)}.signal-tile{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:none;flex-direction:column;justify-content:flex-start;align-items:stretch;gap:0;min-height:0;padding:17px;transition:box-shadow .15s;display:flex}.signal-tile:hover,.signal-tile:focus-visible{background:var(--bg-surface);box-shadow:var(--shadow-lg);border:none;outline:none}.signal-tile.warn{background:var(--bg-surface)}.signal-tile .icon-badge{width:40px;height:40px;margin-bottom:18px}.signal-num{letter-spacing:-.02em;color:var(--text-ink);font-size:26px;font-weight:700;line-height:1.05}.signal-text{color:var(--text-ink);letter-spacing:-.01em;font-size:18px;font-weight:700;line-height:1.2}.signal-label{color:var(--text-secondary);margin-top:3px;font-size:12.5px;font-weight:500}.signal-tile.warn .signal-num{color:var(--danger)}.signal-footer{margin-top:14px}.progress-bar{background:color-mix(in srgb, var(--text-ink) 8%, transparent);border-radius:99px;height:8px;overflow:hidden}.progress-bar--sm{height:5px}.progress-fill{border-radius:99px;height:100%}.progress-fill--green{background:var(--accent)}.progress-fill--blue{background:var(--accent-blue)}.week-dots{gap:5px;display:flex}.week-dots i{background:color-mix(in srgb, var(--text-ink) 12%, transparent);border-radius:50%;width:8px;height:8px}.week-dots i.on{background:var(--accent)}.next-action-card{background:linear-gradient(180deg, var(--hero-from), var(--hero-to));border:1px solid var(--hero-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:26px 24px}.next-action-label{color:var(--hero-eye);align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.next-action-title{letter-spacing:-.01em;color:var(--hero-ink);text-align:left;cursor:pointer;background:0 0;border:0;width:100%;margin:13px 0 20px;padding:0;font-size:23px;font-weight:700;line-height:1.28}.next-action-actions{align-items:center;gap:12px;display:flex}.next-action-meta{color:var(--hero-meta);font-size:13px}.hero-btn{background:var(--bg-surface);width:46px;height:46px;color:var(--hero-meta);cursor:pointer;box-shadow:var(--shadow-sm);border:none;border-radius:50%;justify-content:center;align-items:center;display:flex}.hero-btn--done{background:var(--accent);color:#fff;box-shadow:0 8px 18px var(--accent-soft);margin-left:auto}.icon-btn{background:var(--bg-surface);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;box-shadow:var(--shadow-sm);border:none;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.icon-btn.success{background:var(--accent);color:#fff}.today-card{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:15px 17px}.today-row{justify-content:space-between;align-items:baseline;margin-bottom:11px;display:flex}.today-lbl{color:var(--text-ink);font-size:13px;font-weight:600}.today-val{color:var(--text-secondary);font-size:12.5px}.alert-strip{text-align:left;background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-sm);cursor:pointer;align-items:center;gap:13px;padding:14px 16px;display:flex}.alert-strip-ic{background:var(--warn-soft);width:40px;height:40px;color:var(--warn);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.alert-strip-body{flex-direction:column;min-width:0;display:flex}.alert-strip-title{color:var(--warn-ink);font-size:14.5px;font-weight:700}.alert-strip-sub{color:var(--warn);margin-top:1px;font-size:12px}.alert-strip-go{color:var(--warn-ink);white-space:nowrap;margin-left:auto;font-size:12.5px;font-weight:600}.task-row{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;padding:13px 15px;transition:box-shadow .15s;display:flex}.task-row:hover{box-shadow:var(--shadow-md)}.task-row-main{align-items:flex-start;gap:13px;display:flex}.task-row-actions{align-items:center;gap:2px;margin-top:8px;padding-left:2px;display:flex}.task-act{width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:9px;justify-content:center;align-items:center;transition:background .12s,color .12s;display:flex}.task-act:hover{background:var(--bg-canvas);color:var(--text-ink)}.task-act.danger:hover{color:var(--danger)}.task-act.complete{color:var(--accent);margin-left:auto}.task-act.complete:hover{background:var(--accent-soft)}.task-act.complete.on{background:var(--accent);color:#fff}.task-check{border:2px solid var(--border-strong);color:#fff;cursor:pointer;background:0 0;border-radius:50%;flex:none;justify-content:center;align-items:center;width:24px;height:24px;transition:background .15s,border-color .15s;display:flex}.task-check:hover{border-color:var(--accent)}.task-row.done .task-check{background:var(--accent);border-color:var(--accent)}.task-body{text-align:left;cursor:pointer;background:0 0;border:0;flex:1;min-width:0;padding:0}.task-row-title{color:var(--text-ink);white-space:pre-wrap;overflow-wrap:break-word;font-size:15px;font-weight:550;line-height:1.3}.task-row.done .task-row-title{color:var(--text-muted);text-decoration:line-through}:where(.task-row-title,.task-focus-title) .repeat-mark{font-size:13px}:where(.task-row-title,.task-focus-title) .task-link{color:var(--accent-blue);border-bottom:1px solid color-mix(in srgb, var(--accent-blue) 35%, transparent);text-decoration:none}:where(.task-row-title,.task-focus-title) .task-link:hover{border-bottom-color:var(--accent-blue)}:where(.task-row-title,.task-focus-title) .wikilink{color:var(--accent);cursor:pointer;border-bottom:1px dashed color-mix(in srgb, var(--accent) 45%, transparent);font-weight:550;text-decoration:none}:where(.task-row-title,.task-focus-title) .wikilink:hover{border-bottom-style:solid}:where(.task-row-title,.task-focus-title) .wikilink.broken{color:var(--text-muted);border-bottom-color:color-mix(in srgb, var(--text-muted) 40%, transparent);cursor:help}.task-row-meta{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:8px;margin-top:5px;font-size:12px;display:flex}.task-time{align-items:center;gap:3px;display:inline-flex}.task-frog{color:var(--accent);align-items:center;gap:2px;font-weight:600;display:inline-flex}.task-chain{color:var(--text-secondary);align-items:center;gap:3px;font-weight:550;display:inline-flex}.task-tag{color:var(--accent-blue);font-weight:500}.task-row.frog{box-shadow:inset 3px 0 0 0 var(--accent), var(--shadow-sm)}.task-row.overdue .task-time{color:var(--danger)}.feed-card{text-align:left;background:var(--bg-surface);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-sm);cursor:pointer;flex-direction:column;gap:7px;padding:15px 16px;transition:box-shadow .15s;display:flex}.feed-card:hover{box-shadow:var(--shadow-md)}.feed-card.read{opacity:.6}.feed-card-head{align-items:flex-start;gap:11px;display:flex}.feed-card-fav{background:color-mix(in srgb, var(--text-ink) 5%, transparent);width:30px;height:30px;color:var(--text-secondary);border-radius:10px;flex:none;justify-content:center;align-items:center;font-size:12px;font-weight:700;display:flex;overflow:hidden}.feed-card-fav img{border-radius:4px;width:18px;height:18px}.feed-card-title{color:var(--text-ink);flex:1;font-size:15px;font-weight:600;line-height:1.32}.feed-card-saved{color:var(--accent);flex:none;margin-top:2px}.feed-card-summary{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13px;line-height:1.45;display:-webkit-box;overflow:hidden}.feed-card-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:7px;font-size:11.5px;display:flex}.feed-card-dot{opacity:.5}.feed-card-topic{background:var(--accent-blue-soft);color:var(--accent-blue);border-radius:6px;padding:1px 7px;font-size:11px;font-weight:500}.menu-card{text-align:left;background:var(--bg-surface);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-sm);cursor:pointer;align-items:center;gap:13px;padding:13px 15px;transition:box-shadow .15s;display:flex}.menu-card:hover{box-shadow:var(--shadow-md)}.menu-card-body{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.menu-card-title{color:var(--text-ink);font-size:15px;font-weight:600}.menu-card-sub{color:var(--text-secondary);font-size:12.5px}.menu-card-chev{color:var(--text-muted);flex:none}.note-card{text-align:left;background:var(--bg-surface);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-sm);cursor:pointer;flex-direction:column;gap:6px;padding:15px 16px;transition:box-shadow .15s;display:flex}.note-card:hover{box-shadow:var(--shadow-md)}.note-card-title{color:var(--text-ink);align-items:center;gap:6px;font-size:15px;font-weight:600;display:flex}.note-card-title svg{color:var(--text-muted);flex:none}.note-card-preview{color:var(--text-secondary);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:13.5px;line-height:1.5;display:-webkit-box;overflow:hidden}.note-card-meta{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:8px;margin-top:2px;font-size:11.5px;display:flex}.note-card-cat{background:var(--accent-soft);color:var(--accent);border-radius:6px;padding:1px 8px;font-weight:600}.note-card-tag{color:var(--accent-blue);font-weight:500}.note-card-date{margin-left:auto}.sheet-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#14120f6b}.bottom-sheet{background:var(--bg-surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0;padding:22px 18px calc(22px + env(safe-area-inset-bottom));border-top:none;box-shadow:0 -24px 60px -20px #00000047}.bottom-sheet h3{letter-spacing:-.01em;font-size:19px;font-weight:700}@media (width>=641px){.ds-sheet-wrap.dialog>.bottom-sheet{border-radius:var(--radius-xl);width:440px;box-shadow:var(--shadow-lg);padding:24px}}.pill-input{background:var(--bg-surface);box-shadow:inset 0 0 0 1px var(--border);border:none;border-radius:99px}.pill-input:hover{box-shadow:inset 0 0 0 1px var(--border-strong)}.pill-input:focus-within{box-shadow:inset 0 0 0 2px var(--accent)}.pill-input.error{box-shadow:inset 0 0 0 2px var(--danger)}.pill-input.title-input{border-radius:14px}.ds-subtabs{background:var(--bg-surface);box-shadow:var(--shadow-sm);padding:5px}.subtab{padding:7px 6px;font-size:13px;font-weight:550}.subtab[aria-current=true]{color:var(--accent);background:var(--accent-soft)}.subtab:hover:not([aria-current=true]){color:var(--text-ink);background:0 0}.subtab.locked{opacity:.4}.chip{background:var(--bg-surface);box-shadow:inset 0 0 0 1px var(--border);border:none;border-radius:99px}.chip-accent{background:var(--accent-soft);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 35%, transparent);color:var(--accent)}.badge{background:var(--accent-soft);color:var(--accent);border-radius:7px}.calendar-popover{background:var(--bg-surface);border-radius:var(--radius-lg);width:286px;box-shadow:var(--shadow-lg);border:none;padding:16px}.cal-header{margin-bottom:10px}.cal-header .title{font-size:14px;font-weight:700}.cal-header .nav-btn{border-radius:10px;width:30px;height:30px}.cal-header .nav-btn:hover{background:var(--bg-canvas);color:var(--accent)}.day-grid{gap:3px}.day-grid .wd{padding:4px 0;font-size:10.5px}.day-cell{border-radius:10px;padding:8px 0;font-size:13px}.day-cell:hover{background:var(--bg-canvas)}.day-cell.today{color:var(--accent);font-weight:700}.day-cell.selected{background:var(--accent);color:#fff}.day-cell.selected.today{color:#fff}.time-popover{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:none;width:min(320px,100vw - 48px);padding:16px}.tp-dial{background:var(--bg-canvas)}.tp-dial-num:hover{background:var(--bg-surface)}.time-popover .tp-tab.active{background:var(--accent);color:#fff}.time-popover .tp-display .tp-seg.active{background:var(--accent-soft);color:var(--accent)}.icon-btn:hover{background:var(--bg-canvas);color:var(--text-ink)}.icon-btn.success:hover{background:var(--accent-hover);color:#fff}.icon-btn:disabled{opacity:.4;pointer-events:none}.ios-switch input:checked+.slider{background:var(--accent)}.drag-handle{color:var(--text-muted);cursor:grab;touch-action:none;flex:none;align-items:center;margin-top:1px;display:flex}.drag-handle:active{cursor:grabbing}.drag-handle:hover{color:var(--text-secondary)}.sheet-form{flex-direction:column;gap:14px;display:flex}.sheet-input{background:var(--bg-canvas);width:100%;height:48px;box-shadow:inset 0 0 0 1px var(--border);color:var(--text-ink);border:none;border-radius:14px;padding:0 16px;font-size:16px}.sheet-input:focus{box-shadow:inset 0 0 0 2px var(--accent);outline:none}.habit-form-top{align-items:center;gap:8px;display:flex}.habit-form-top .sheet-input{flex:auto;width:auto;min-width:0}.habit-emoji-input{text-align:center;font-size:20px;flex:0 0 52px!important;width:52px!important;padding:0!important}.sheet-textarea{background:var(--bg-canvas);width:100%;min-height:120px;box-shadow:inset 0 0 0 1px var(--border);color:var(--text-ink);resize:vertical;border:none;border-radius:14px;padding:14px 16px;font-family:inherit;font-size:15px;line-height:1.5}.sheet-textarea:focus{box-shadow:inset 0 0 0 2px var(--accent);outline:none}.sheet-opts{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.sheet-opt--alt{margin-left:auto}.sheet-opt{background:var(--bg-canvas);box-shadow:inset 0 0 0 1px var(--border);color:var(--text-secondary);cursor:pointer;border:none;border-radius:99px;align-items:center;gap:5px;padding:7px 12px;font-size:12.5px;display:inline-flex}.sheet-opt.active{background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 40%, transparent)}.sheet-opt.frog.active{background:var(--accent-soft);color:var(--accent)}.sheet-toggles{gap:8px;display:flex}.tog-btn{background:var(--bg-canvas);width:42px;height:42px;box-shadow:inset 0 0 0 1px var(--border);color:var(--text-muted);cursor:pointer;border:none;border-radius:12px;flex:none;justify-content:center;align-items:center;transition:background .15s,color .15s,box-shadow .15s;display:flex}.tog-btn:hover{color:var(--text-secondary)}.tog-btn.on{background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.sheet-picker{flex-direction:column;align-items:center;gap:8px;padding:4px 0;display:flex}.picker-reset{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:4px 10px;font-size:13px;font-weight:600}.picker-reset:hover{color:var(--danger);background:var(--bg-canvas)}.sheet-actions{gap:10px;margin-top:4px;display:flex}.sheet-actions>*{flex:1}.draft-card{flex-direction:column;gap:12px;display:flex;position:relative}.sheet-form>.draft-card+.draft-card,.sheet-form>.draft-collapsed+.draft-card,.sheet-form>.draft-card+.draft-collapsed,.sheet-form>.draft-collapsed+.draft-collapsed{border-top:1px solid var(--border);margin-top:4px;padding-top:14px}.draft-remove{width:24px;height:24px;color:var(--text-muted);cursor:pointer;z-index:1;background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;display:flex;position:absolute;top:-2px;right:-2px}.draft-remove:hover{color:var(--danger);background:var(--bg-canvas)}.draft-collapsed{background:var(--bg-canvas);width:100%;box-shadow:inset 0 0 0 1px var(--border);cursor:pointer;color:var(--text-ink);text-align:left;border:none;border-radius:12px;align-items:center;gap:8px;padding:11px 13px;display:flex}.draft-collapsed:hover{box-shadow:inset 0 0 0 1px var(--border-strong,var(--border))}.draft-collapsed-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:14px;font-weight:550;overflow:hidden}.draft-collapsed-meta{color:var(--text-secondary);flex:none;font-size:12px}.draft-collapsed svg{color:var(--text-muted);flex:none}.more-task{color:var(--accent);cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:6px;padding:4px 2px;font-size:13.5px;font-weight:600;display:inline-flex}.more-task:disabled{opacity:.4;cursor:default}.monthpick{flex-direction:column;gap:8px;width:100%;max-width:280px;display:flex}.monthpick-head{justify-content:center;align-items:center;gap:16px;display:flex}.monthpick-year{color:var(--text-ink);text-align:center;min-width:52px;font-size:14px;font-weight:650}.monthpick-nav{background:var(--bg-canvas);width:30px;height:30px;box-shadow:inset 0 0 0 1px var(--border);color:var(--text-secondary);cursor:pointer;border:none;border-radius:9px;font-size:18px;line-height:1}.monthpick-nav:hover{color:var(--text-ink)}.monthpick-grid{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.monthpick-cell{background:var(--bg-canvas);box-shadow:inset 0 0 0 1px var(--border);color:var(--text-ink);cursor:pointer;text-transform:capitalize;border:none;border-radius:9px;padding:9px 0;font-size:13px}.monthpick-cell:hover{box-shadow:inset 0 0 0 1px var(--accent)}.monthpick-cell.past{color:var(--text-muted);opacity:.5}.monthpick-cell.sel{background:var(--accent);color:#fff;box-shadow:none}.article-sheet{flex-direction:column;gap:14px;display:flex}.article-meta{color:var(--text-secondary);font-size:12.5px}.article-summary{color:var(--text-ink);font-size:15px;line-height:1.6}.ex-search-bar{background:var(--bg-canvas);height:42px;color:var(--text-muted);box-shadow:inset 0 0 0 1px var(--border);border-radius:12px;align-items:center;gap:8px;padding:0 12px;display:flex}.ex-search-bar input{min-width:0;color:var(--text-ink);background:0 0;border:none;outline:none;flex:1;font-size:14.5px}.ex-search-chips{flex-wrap:wrap;gap:6px;display:flex}.ex-search-chips .chip{padding:5px 10px;font-size:12px}.ex-search-results{flex-direction:column;gap:6px;max-height:52vh;display:flex;overflow-y:auto}.ex-search-empty{color:var(--text-muted);text-align:center;padding:24px 0;font-size:13px}.ex-search-item{text-align:left;background:var(--bg-canvas);cursor:pointer;border:none;border-radius:10px;align-items:center;gap:11px;padding:8px 10px;display:flex}.ex-search-item:hover{box-shadow:inset 0 0 0 1.5px var(--accent)}.ex-search-thumb{background-color:var(--bg-surface);width:40px;height:40px;box-shadow:inset 0 0 0 1px var(--border);background-position:50%;background-size:cover;border-radius:8px;flex:none}.ex-search-name{color:var(--text-ink);font-size:13.5px}.technique-body{flex-direction:column;gap:14px;display:flex}.technique-gif{aspect-ratio:4/3;border-radius:var(--radius-md);background-position:50%;background-size:cover;background-color:var(--bg-canvas);width:100%;position:relative;overflow:hidden}.technique-gif-end{background-position:50%;background-size:cover;animation:1.6s step-end infinite tech-flip;position:absolute;inset:0}@keyframes tech-flip{0%,50%{opacity:0}50.01%,to{opacity:1}}.technique-desc{color:var(--text-ink);font-size:14px;line-height:1.55}.technique-spine{color:var(--warn);background:color-mix(in srgb, var(--warn) 12%, transparent);border-radius:10px;align-items:center;gap:6px;padding:9px 12px;font-size:12.5px;display:flex}.technique-empty{color:var(--text-muted);flex-direction:column;align-items:center;gap:8px;padding:30px 0;font-size:13px;display:flex}.rex-name{gap:8px;display:flex}.rex-name .sheet-input{flex:1}.rex-lib-btn{background:var(--accent-soft);color:var(--accent);cursor:pointer;border:none;border-radius:12px;flex:none;align-items:center;gap:5px;padding:0 13px;font-size:13px;font-weight:600;display:inline-flex}.note-sheet-head{justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.note-sheet-head-actions{gap:4px;display:inline-flex}.note-head-btn{background:var(--bg-canvas);width:34px;height:34px;color:var(--text-secondary);cursor:pointer;border:none;border-radius:10px;justify-content:center;align-items:center;display:flex}.note-head-btn:hover{color:var(--text-ink)}.note-head-btn.danger:hover{color:var(--danger)}.md-toolbar{background:var(--bg-canvas);box-shadow:inset 0 0 0 1px var(--border);border-radius:10px;flex-wrap:wrap;align-items:center;gap:2px;padding:4px;display:flex}.md-toolbar button{width:30px;height:30px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;font-size:12px;display:flex}.md-toolbar button:hover{background:var(--bg-surface);color:var(--text-ink)}.md-toolbar .md-wikilink{width:auto;padding:0 8px;font-size:11px;font-weight:600}.md-toolbar-sep{background:var(--border);width:1px;height:18px;margin:0 3px}.note-textarea{min-height:180px;font-family:ui-monospace,SF Mono,monospace;font-size:13.5px;line-height:1.5}.note-preview-title{color:var(--text-ink);font-size:19px;font-weight:700}.note-preview{color:var(--text-ink);font-size:14.5px;line-height:1.6}.note-backlinks{border-top:1px solid var(--border);flex-direction:column;gap:6px;padding-top:12px;display:flex}.note-backlinks-head{color:var(--text-secondary);font-size:12px;font-weight:600}.note-backlink{text-align:left;background:var(--bg-canvas);box-shadow:inset 0 0 0 1px var(--border);color:var(--text-ink);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border:none;border-radius:10px;padding:9px 12px;font-size:13.5px;overflow:hidden}.note-backlink:hover{box-shadow:inset 0 0 0 1.5px var(--accent)}.note-preview .wikilink{color:var(--accent);cursor:pointer;border-bottom:1px dashed color-mix(in srgb, var(--accent) 45%, transparent);font-weight:550;text-decoration:none}.note-preview .wikilink.broken{color:var(--text-muted);cursor:help}.markdown-body h1,.markdown-body h2,.markdown-body h3{margin:14px 0 6px;font-weight:700;line-height:1.25}.markdown-body h1{font-size:19px}.markdown-body h2{font-size:17px}.markdown-body h3{font-size:15px}.markdown-body p{margin:8px 0}.markdown-body ul,.markdown-body ol{margin:8px 0;padding-left:22px}.markdown-body li{margin:3px 0}.markdown-body code{background:var(--bg-canvas);border-radius:5px;padding:1px 5px;font-family:ui-monospace,monospace;font-size:.88em}.markdown-body pre{background:var(--bg-canvas);border-radius:10px;padding:11px 13px;overflow-x:auto}.markdown-body pre code{background:0 0;padding:0}.markdown-body blockquote{border-left:3px solid var(--border-strong);color:var(--text-secondary);margin:8px 0;padding-left:12px}.markdown-body a{color:var(--accent-blue)}.markdown-body strong{font-weight:700}.sheet-title{field-sizing:content;background:var(--bg-canvas);width:100%;min-height:56px;max-height:32vh;box-shadow:inset 0 0 0 1px var(--border);color:var(--text-ink);resize:none;border:none;border-radius:14px;padding:12px 16px;font-family:inherit;font-size:16px;line-height:1.4;overflow-y:auto}.sheet-title:focus{box-shadow:inset 0 0 0 2px var(--accent);outline:none}.tagfield{flex-direction:column;gap:8px;display:flex}.tag-cloud{flex-wrap:wrap;gap:6px 14px;margin:2px 0;display:flex}.tag-chip{box-shadow:none;color:var(--tc,var(--text-secondary));text-transform:uppercase;letter-spacing:.01em;cursor:pointer;background:0 0;border:none;padding:2px;font-size:13px;font-weight:700;transition:opacity .12s}.tag-chip:hover{opacity:.65}.tag-chip.on{text-underline-offset:3px;text-decoration:underline;text-decoration-thickness:2px}.sheet-hint{color:var(--text-muted);margin-top:-6px;font-size:12px}.sheet-switches{grid-template-columns:1fr 1fr;gap:11px 14px;margin:2px 0;display:grid}.sw-row{cursor:pointer;color:var(--text-ink);align-items:center;gap:10px;font-size:14px;display:flex}.sw-ic{align-items:center;gap:5px;display:inline-flex}.tagfield-input{background:var(--bg-canvas);height:42px;color:var(--text-muted);box-shadow:inset 0 0 0 1px var(--border);border-radius:12px;align-items:center;gap:8px;padding:0 12px;display:flex}.tagfield-input:focus-within{box-shadow:inset 0 0 0 2px var(--accent)}.tagfield-input input{min-width:0;color:var(--text-ink);background:0 0;border:none;outline:none;flex:1;font-size:14.5px}.decomp-goal{color:var(--text-ink);font-size:14px;font-weight:600}.decomp-loading{color:var(--text-secondary);align-items:center;gap:8px;padding:14px 0;font-size:14px;display:flex}.decomp-list{flex-direction:column;gap:12px;max-height:50vh;display:flex;overflow-y:auto}.decomp-mst{flex-direction:column;gap:5px;display:flex}.decomp-mst-head{color:var(--text-ink);align-items:center;gap:6px;font-size:14px;font-weight:600;display:flex}.decomp-offset{color:var(--text-muted);margin-left:auto;font-size:11px;font-weight:500}.decomp-task{color:var(--text-secondary);align-items:center;gap:6px;padding-left:20px;font-size:13px;display:flex}.reminder-presets{flex-wrap:wrap;gap:6px;margin-top:2px;display:flex}.reminder-preset{background:var(--accent-soft);color:var(--accent);cursor:pointer;border:none;border-radius:8px;padding:5px 10px;font-size:12px;font-weight:600}.reminder-preset:disabled{opacity:.4;cursor:default}.reminder-custom{align-items:center;gap:6px;margin-top:6px;display:flex}.reminder-custom input{background:var(--bg-canvas);min-width:0;height:34px;box-shadow:inset 0 0 0 1px var(--border);color:var(--text-ink);border:none;border-radius:8px;flex:1;padding:0 8px;font-size:12.5px}.reminder-list{flex-wrap:wrap;gap:6px;margin-top:8px;display:flex}.reminder-chip{background:var(--bg-canvas);box-shadow:inset 0 0 0 1px var(--border);color:var(--text-ink);border-radius:99px;align-items:center;gap:5px;padding:4px 6px 4px 10px;font-size:12px;display:inline-flex}.reminder-chip button{background:color-mix(in srgb, var(--text-ink) 10%, transparent);width:16px;height:16px;color:var(--text-secondary);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.home-screen{flex-direction:column;gap:13px;display:flex}.home-header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.home-header-line{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:6px;min-width:0;font-size:13px;display:flex}.home-date{color:var(--text-ink);font-weight:600}.home-weather{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;padding:0;font-size:13px;display:inline-flex}.home-weather:hover{color:var(--text-ink)}.home-weather-sep{opacity:.5}.weather-forecast-pill{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);grid-template-columns:repeat(4,1fr);gap:4px;padding:12px 10px;display:grid}.weather-fc-slot{flex-direction:column;align-items:center;gap:3px;display:flex}.weather-fc-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;font-size:10px;font-weight:600}.weather-fc-icon{font-size:17px;line-height:1}.weather-fc-temp{color:var(--text-ink);font-size:13px;font-weight:700}.signals-grid{grid-template-columns:1fr 1fr;gap:13px;display:grid}.recent-strip{flex-direction:column;gap:9px;margin-top:4px;display:flex}.recent-strip-head{justify-content:space-between;align-items:center;margin-bottom:2px;padding:0 6px;display:flex}.recent-strip-header{color:var(--text-secondary);font-size:12px;font-weight:600}.recent-strip-links{align-items:center;gap:10px;display:flex}.recent-strip-link{color:var(--text-secondary);cursor:pointer;background:0 0;border:0;padding:2px 0;font-size:12px}.recent-strip-link:hover{color:var(--text-ink)}.recent-item{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);cursor:pointer;text-align:left;border:none;align-items:center;gap:13px;width:100%;padding:14px 16px;transition:box-shadow .15s;display:flex}.recent-item:hover{box-shadow:var(--shadow-md)}.recent-item-favicon{background:color-mix(in srgb, var(--text-ink) 5%, transparent);width:34px;height:34px;color:var(--text-secondary);border-radius:11px;flex:none;justify-content:center;align-items:center;font-size:13px;font-weight:700;display:flex;overflow:hidden}.recent-item-favicon img{-o-object-fit:contain;object-fit:contain;width:20px;height:20px}.recent-item-body{flex:1;min-width:0}.recent-item-title{color:var(--text-ink);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:14px;font-weight:500;line-height:1.32;display:-webkit-box;overflow:hidden}.recent-item-source{color:var(--text-secondary);margin-top:2px;font-size:11.5px}.tasks-screen{flex-direction:column;gap:14px;display:flex}.tasks-subtabs-wrap{margin-bottom:2px}.tasks-pane{flex-direction:column;gap:10px;display:flex}.task-focus{background:var(--bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:22px 22px 18px}.task-focus.frog{background:linear-gradient(180deg, var(--hero-from), var(--hero-to));border:1px solid var(--hero-border)}.task-focus-eyebrow{color:var(--accent);align-items:center;gap:6px;font-size:12px;font-weight:700;display:inline-flex}.task-focus.frog .task-focus-eyebrow{color:var(--hero-eye)}.task-focus-title{letter-spacing:-.01em;color:var(--text-ink);white-space:pre-wrap;overflow-wrap:break-word;margin:12px 0 14px;font-size:20px;font-weight:700;line-height:1.3}.task-focus-title.multiline{letter-spacing:0;font-size:15px;font-weight:600;line-height:1.5}.task-focus.frog .task-focus-title{color:var(--hero-ink)}.task-focus-meta{color:var(--text-secondary);flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;font-size:13px;display:flex}.task-focus.frog .task-focus-meta{color:var(--hero-meta)}.task-focus-meta .mi{align-items:center;gap:4px;display:inline-flex}.task-focus-actions{align-items:center;gap:8px;display:flex}.day-group{flex-direction:column;gap:9px;display:flex}.day-group+.day-group{margin-top:20px}.day-header-row{cursor:pointer;text-align:left;background:0 0;border:none;justify-content:space-between;align-items:center;gap:8px;width:100%;padding:2px 4px;display:flex}.day-header{color:var(--text-ink);font-size:13px;font-weight:600}.day-header-right{color:var(--text-muted);align-items:center;gap:8px;display:inline-flex}.day-count{color:var(--text-muted);text-align:right;min-width:16px;font-size:12px;font-weight:600}.day-chevron{transition:transform .15s;transform:rotate(180deg)}.day-chevron.collapsed{transform:rotate(0)}.tasks-empty{text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:48px 16px;display:flex}.tasks-empty-ic{background:var(--accent-soft);width:56px;height:56px;color:var(--accent);border-radius:18px;justify-content:center;align-items:center;margin-bottom:4px;display:flex}.tasks-fab{right:18px;bottom:calc(84px + env(safe-area-inset-bottom));z-index:25;background:var(--accent);color:#fff;width:52px;height:52px;box-shadow:0 10px 24px var(--accent-soft), var(--shadow-lg);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;transition:transform .12s;display:flex;position:fixed}.tasks-fab:active{transform:scale(.94)}.tasks-search{align-items:center;margin-bottom:4px;display:flex;position:relative}.tasks-search>svg{color:var(--text-muted);pointer-events:none;position:absolute;left:14px}.tasks-search input{background:var(--bg-surface);width:100%;height:44px;box-shadow:var(--shadow-sm);color:var(--text-ink);border:none;border-radius:99px;padding:0 40px;font-size:14px}.tasks-search input::placeholder{color:var(--text-muted)}.tasks-search input:focus{box-shadow:var(--shadow-md);outline:none}.tasks-search-clear{width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;right:12px}.overdue-notice{background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:var(--radius-lg);color:var(--warn-ink);box-shadow:var(--shadow-sm);align-items:flex-start;gap:9px;margin-bottom:6px;padding:12px 14px;font-size:13px;line-height:1.4;display:flex}.overdue-notice svg{color:var(--warn);flex:none;margin-top:1px}.tasks-toolbar{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:6px;display:flex;position:relative}.tasks-done-toggle{color:var(--text-secondary);white-space:nowrap;cursor:pointer;align-items:center;gap:8px;font-size:12.5px;display:inline-flex}.tasks-toolbar .tasks-search{flex:150px;margin-bottom:0}.tasks-filter{position:static}.tasks-filter-btn{background:var(--bg-surface);width:44px;height:44px;box-shadow:var(--shadow-sm);color:var(--text-secondary);cursor:pointer;border-radius:14px;justify-content:center;align-items:center;list-style:none;display:flex;position:relative}.tasks-filter-btn::-webkit-details-marker{display:none}.tasks-filter[open] .tasks-filter-btn{color:var(--accent)}.tasks-filter-badge{background:var(--accent);color:#fff;border-radius:8px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;display:flex;position:absolute;top:5px;right:5px}.tasks-filter-panel{z-index:5;background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);flex-direction:column;gap:14px;padding:14px;display:flex;position:absolute;top:calc(100% + 8px);left:0;right:0}.filter-row{flex-direction:column;gap:8px;display:flex}.filter-label{color:var(--text-secondary);font-size:12px;font-weight:600}.filter-seg{flex-wrap:wrap;gap:6px;display:flex}.filter-seg button{background:var(--bg-canvas);box-shadow:inset 0 0 0 1px var(--border);color:var(--text-secondary);cursor:pointer;border:none;border-radius:99px;padding:6px 12px;font-size:12.5px}.filter-seg button.active{background:var(--accent);color:#fff;box-shadow:none}.filter-toggles{flex-flow:wrap;gap:16px}.filter-toggles label{color:var(--text-secondary);cursor:pointer;align-items:center;gap:8px;font-size:13px;display:inline-flex}.filter-reset{color:var(--accent);cursor:pointer;background:0 0;border:none;align-self:flex-start;padding:0;font-size:13px;font-weight:600}.tasks-motivation{text-align:center;background:linear-gradient(180deg, var(--hero-from), var(--hero-to));border:1px solid var(--hero-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);color:var(--hero-meta);flex-direction:column;align-items:center;gap:8px;padding:36px 20px;display:flex}.tasks-motivation>svg{color:var(--accent)}.tasks-motivation-title{color:var(--hero-ink);font-size:18px;font-weight:700}.tasks-motivation-text{color:var(--hero-meta);font-size:13.5px}.tasks-motivation-actions{gap:8px;margin-top:8px;display:flex}.cal-pane{flex-direction:column;gap:14px;display:flex}.cal-nav{justify-content:space-between;align-items:center;display:flex}.cal-nav-btn{background:var(--bg-surface);width:34px;height:34px;box-shadow:var(--shadow-sm);color:var(--text-secondary);cursor:pointer;border:none;border-radius:11px;justify-content:center;align-items:center;display:flex}.cal-month{color:var(--text-ink);cursor:pointer;background:0 0;border:none;font-size:16px;font-weight:700}.cal-grid{grid-template-columns:repeat(7,1fr);gap:4px;display:grid}.cal-wd{text-align:center;color:var(--text-muted);text-transform:uppercase;padding:2px 0;font-size:10.5px;font-weight:600}.cal-day{aspect-ratio:1;background:var(--bg-surface);box-shadow:var(--shadow-sm);cursor:pointer;border:none;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:4px;transition:box-shadow .12s;display:flex}.cal-day:hover{box-shadow:var(--shadow-md)}.cal-day-num{color:var(--text-ink);font-size:13px;font-weight:550}.cal-day.muted{box-shadow:none;background:0 0}.cal-day.muted .cal-day-num{color:var(--text-muted);opacity:.5}.cal-day.today .cal-day-num{color:var(--accent);font-weight:700}.cal-day.alldone{background:var(--accent-soft)}.cal-day.sel{background:var(--accent);box-shadow:0 6px 16px var(--accent-soft)}.cal-day.sel .cal-day-num{color:#fff}.cal-dots{align-items:center;gap:3px;height:5px;display:flex}.cal-dots i{background:var(--text-muted);border-radius:50%;width:5px;height:5px}.cal-dots i.frog{background:var(--accent)}.cal-day.sel .cal-dots i{background:#ffffffd9}.cal-load{background:var(--border-strong);border-radius:2.5px;width:74%;height:5px;position:relative;overflow:hidden}.cal-load:after{content:"";background:var(--bg-surface);opacity:.75;width:1px;position:absolute;top:0;bottom:0;left:50%}.cal-load i{background:var(--text-muted);border-radius:2.5px;height:100%;transition:width .15s;display:block}.cal-load.tight i{background:var(--accent)}.cal-load.over i{background:var(--danger)}.cal-load-n{color:var(--accent);font-size:9.5px;font-weight:700;line-height:1}.cal-load-n.over{color:var(--danger)}.cal-day.sel .cal-load{background:#ffffff59}.cal-day.sel .cal-load i{background:#fff}.cal-day.sel .cal-load-n{color:#fff}.cal-day-load{color:var(--text-secondary);flex-wrap:wrap;align-items:baseline;gap:4px;margin-top:-4px;padding:0 4px;font-size:12px;display:flex}.cal-day-load b{color:var(--text-ink);font-weight:650}.cal-day-load em{color:var(--danger);font-style:normal;font-weight:650}.cal-day-load.over b{color:var(--danger)}.cal-day-list{flex-direction:column;gap:10px;margin-top:4px;display:flex}.cal-day-title{color:var(--text-ink);padding:0 4px;font-size:14px;font-weight:600}.cal-day-empty{color:var(--text-secondary);text-align:center;padding:24px;font-size:13px}.brief-screen{flex-direction:column;gap:16px;display:flex}.brief-header{justify-content:space-between;align-items:flex-start;gap:10px;display:flex}.brief-title{letter-spacing:-.01em;color:var(--text-ink);font-size:22px;font-weight:700;line-height:1.25}.brief-date{color:var(--text-secondary);margin-top:4px;font-size:13px}.brief-card{background:var(--bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);padding:22px}.brief-prose{color:var(--text-ink);font-size:15px;line-height:1.6}.brief-prose>:first-child{margin-top:0}.brief-prose>:last-child{margin-bottom:0}.brief-prose h1,.brief-prose h2,.brief-prose h3{letter-spacing:-.01em;margin:18px 0 8px;font-size:16px;font-weight:700}.brief-prose p{margin:0 0 12px}.brief-prose ul,.brief-prose ol{margin:0 0 12px;padding-left:20px}.brief-prose li{margin-bottom:6px}.brief-prose a{color:var(--accent);text-decoration:none}.brief-prose a:hover{text-decoration:underline}.brief-prose strong{font-weight:700}.brief-prose code{background:color-mix(in srgb, var(--text-ink) 7%, transparent);border-radius:5px;padding:1px 5px;font-size:13px}.brief-prose blockquote{border-left:3px solid var(--accent-soft);color:var(--text-secondary);margin:0 0 12px;padding-left:14px}.brief-react{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.brief-react-msg{color:var(--accent);margin-left:2px;font-size:12.5px}.brief-react-lbl{color:var(--text-secondary);margin-right:4px;font-size:13px}.brief-react-btn{background:var(--bg-surface);width:40px;height:40px;color:var(--text-secondary);box-shadow:var(--shadow-sm);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.brief-react-btn:hover{color:var(--text-ink)}.brief-react-btn.active{background:var(--accent);color:#fff}.feed-screen{flex-direction:column;gap:14px;display:flex}.feed-head{justify-content:space-between;align-items:center;display:flex}.feed-title{letter-spacing:-.01em;color:var(--text-ink);font-size:22px;font-weight:700}.feed-list{flex-direction:column;gap:10px;display:flex}.library-screen{flex-direction:column;gap:14px;display:flex}.library-title{letter-spacing:-.01em;color:var(--text-ink);font-size:22px;font-weight:700}.library-list{flex-direction:column;gap:10px;display:flex}.notes-screen{flex-direction:column;gap:13px;display:flex}.notes-head{justify-content:space-between;align-items:center;display:flex}.notes-title{letter-spacing:-.01em;color:var(--text-ink);font-size:22px;font-weight:700}.notes-search{align-items:center;display:flex;position:relative}.notes-search>svg{color:var(--text-muted);pointer-events:none;position:absolute;left:14px}.notes-search input{background:var(--bg-surface);width:100%;height:44px;box-shadow:var(--shadow-sm);color:var(--text-ink);border:none;border-radius:99px;padding:0 40px;font-size:14px}.notes-search input::placeholder{color:var(--text-muted)}.notes-search input:focus{box-shadow:var(--shadow-md);outline:none}.notes-search-clear{width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex;position:absolute;right:12px}.notes-cats{flex-wrap:wrap;gap:8px;display:flex}.notes-cat{background:var(--bg-surface);box-shadow:var(--shadow-sm);color:var(--text-secondary);cursor:pointer;border:none;border-radius:99px;padding:6px 14px;font-size:13px;transition:background .15s,color .15s}.notes-cat.active{background:var(--accent);color:#fff}.notes-list{flex-direction:column;gap:10px;display:flex}.kb-screen{flex-direction:column;gap:14px;display:flex}.kb-title{letter-spacing:-.01em;color:var(--text-ink);font-size:22px;font-weight:700}.kb-list{flex-direction:column;gap:10px;display:flex}.kb-search{background:var(--bg-surface);box-shadow:var(--shadow-sm);height:44px;color:var(--text-muted);border-radius:99px;align-items:center;gap:8px;padding:0 14px;display:flex}.kb-search input{min-width:0;color:var(--text-ink);background:0 0;border:none;outline:none;flex:1;font-size:14.5px}.kb-search-clear{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex:none;display:flex}.kb-filters{flex-wrap:wrap;gap:8px;display:flex}.kb-period{appearance:none;cursor:pointer;padding-right:14px}.kb-tags{flex-wrap:wrap;gap:8px;display:flex}.kb-tag-count{opacity:.6;font-size:10px}.learn-screen{flex-direction:column;gap:14px;display:flex}.learn-head{justify-content:space-between;align-items:center;display:flex}.learn-title{letter-spacing:-.01em;color:var(--text-ink);font-size:22px;font-weight:700}.learn-review{text-align:left;background:linear-gradient(180deg, var(--hero-from), var(--hero-to));border:1px solid var(--hero-border);border-radius:var(--radius-xl);width:100%;box-shadow:var(--shadow-lg);cursor:pointer;align-items:center;gap:14px;padding:20px 22px;display:flex}.learn-review-body{flex-direction:column;flex:1;gap:4px;display:flex}.learn-review-eye{color:var(--hero-eye);font-size:12px;font-weight:700}.learn-review-num{letter-spacing:-.01em;color:var(--hero-ink);font-size:21px;font-weight:700}.learn-review-play{background:var(--accent);color:#fff;width:50px;height:50px;box-shadow:0 8px 18px var(--accent-soft);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.learn-decks{flex-direction:column;gap:10px;display:flex}.deck-card{text-align:left;background:var(--bg-surface);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-sm);cursor:pointer;align-items:center;gap:13px;padding:13px 15px;transition:box-shadow .15s;display:flex}.deck-card:hover{box-shadow:var(--shadow-md)}.deck-dot{color:#fff;border-radius:12px;flex:none;justify-content:center;align-items:center;width:38px;height:38px;font-size:18px;display:flex}.deck-body{flex:1;min-width:0}.deck-name{color:var(--text-ink);font-size:15px;font-weight:600}.deck-stats{gap:10px;margin-top:2px;font-size:12px;display:flex}.deck-due{color:var(--accent-blue);font-weight:600}.deck-new{color:var(--text-secondary)}.deck-empty{color:var(--text-muted)}.deck-chev{color:var(--text-muted);flex:none}.learn-limit{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.learn-limit-lbl{color:var(--text-secondary);font-size:12.5px}.learn-limit-opts{background:var(--bg-surface);box-shadow:var(--shadow-sm);border-radius:99px;gap:4px;padding:3px;display:flex}.learn-limit-opts button{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:99px;padding:5px 11px;font-size:12.5px;font-weight:600}.learn-limit-opts button.active{background:var(--accent);color:#fff}.learn-review-screen{flex-direction:column;gap:14px;display:flex}.learn-review-bar{justify-content:space-between;align-items:center;display:flex}.learn-back{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;gap:2px;font-size:14px;font-weight:600;display:inline-flex}.learn-progress{color:var(--text-muted);font-size:12.5px}.learn-save-error{background:var(--warn-bg);border:1px solid var(--warn-border);border-radius:var(--radius-lg);color:var(--warn-ink);padding:10px 13px;font-size:12.5px;line-height:1.4}.learn-card{background:var(--bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);flex-direction:column;gap:14px;padding:20px;display:flex}.learn-card-meta{color:var(--text-muted);font-size:11.5px}.learn-card-front{color:var(--text-ink);font-size:18px;font-weight:650}.learn-card-back{color:var(--text-secondary);border-top:1px solid var(--border);padding-top:14px;font-size:15px}.learn-show{align-self:center}.learn-explain-btn{background:var(--accent-soft);color:var(--accent);cursor:pointer;border:none;border-radius:12px;align-self:flex-start;align-items:center;gap:6px;padding:8px 13px;font-size:13px;font-weight:600;display:inline-flex}.learn-explain-btn:disabled{opacity:.6}.learn-explain{background:var(--bg-canvas);border-radius:12px;padding:12px 14px}.learn-explain-head{color:var(--accent);align-items:center;gap:6px;margin-bottom:6px;font-size:12px;font-weight:700;display:flex}.learn-explain-head button{color:var(--text-muted);cursor:pointer;background:0 0;border:none;margin-left:auto;display:flex}.learn-ratings{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.learn-rate{cursor:pointer;box-shadow:inset 0 0 0 1px var(--border);background:var(--bg-canvas);color:var(--text-secondary);border:none;border-radius:14px;flex-direction:column;align-items:center;gap:3px;padding:12px 4px;font-size:12px;font-weight:600;display:flex}.learn-rate-e{font-size:19px}.learn-rate.r1:hover{box-shadow:inset 0 0 0 2px var(--danger);color:var(--danger)}.learn-rate.r2:hover{box-shadow:inset 0 0 0 2px var(--warn);color:var(--warn)}.learn-rate.r3:hover,.learn-rate.r4:hover{box-shadow:inset 0 0 0 2px var(--accent);color:var(--accent)}.learn-done{text-align:center;flex-direction:column;align-items:center;gap:8px;padding:40px 16px;display:flex}.learn-done-emoji{color:var(--accent)}.learn-done-title{color:var(--text-ink);font-size:18px;font-weight:700}.learn-done-sub{color:var(--text-secondary);margin-bottom:8px;font-size:13.5px}.learn-ai-hint{color:var(--text-secondary);font-size:13px;line-height:1.45}.learn-ai-hint code{background:var(--bg-canvas);border-radius:5px;padding:1px 6px;font-size:.9em}.learn-ai-drafts{flex-direction:column;gap:8px;max-height:50vh;display:flex;overflow-y:auto}.learn-ai-draft{background:var(--bg-canvas);box-shadow:inset 0 0 0 1px var(--border);border-radius:10px;padding:10px 12px}.learn-ai-front{color:var(--text-ink);font-size:13.5px;font-weight:600}.learn-ai-back{color:var(--text-secondary);margin-top:3px;font-size:12.5px}.habits-screen{flex-direction:column;gap:14px;display:flex}.habits-head{align-items:center;gap:12px;display:flex}.habits-title{letter-spacing:-.01em;color:var(--text-ink);margin-right:auto;font-size:22px;font-weight:700}.habits-arch-toggle{color:var(--text-secondary);align-items:center;gap:7px;font-size:12.5px;display:flex}.habits-list{flex-direction:column;gap:10px;display:flex}.habit-row{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:10px;padding:13px 15px;display:flex}.habit-row.archived{opacity:.7}.habit-main{align-items:center;gap:12px;display:flex}.habit-emoji{background:color-mix(in srgb, var(--text-ink) 5%, transparent);border-radius:13px;flex:none;justify-content:center;align-items:center;width:40px;height:40px;font-size:19px;display:flex}.habit-body{text-align:left;cursor:pointer;background:0 0;border:0;flex:1;min-width:0;padding:0}.habit-title{color:var(--text-ink);font-size:15px;font-weight:600}.habit-meta{color:var(--text-secondary);align-items:center;gap:10px;margin-top:3px;font-size:12px;display:flex}.habit-streak{color:var(--warn);align-items:center;gap:3px;font-weight:600;display:inline-flex}.habit-tag-neg{color:var(--danger);background:color-mix(in srgb, var(--danger) 12%, transparent);border-radius:6px;padding:1px 6px;font-size:10.5px;font-weight:600}.habit-icon{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:9px;flex:none;justify-content:center;align-items:center;display:flex}.habit-icon:hover{background:var(--bg-canvas);color:var(--text-ink)}.habit-actions{gap:8px;display:flex}.habit-act{cursor:pointer;background:var(--bg-canvas);color:var(--text-secondary);box-shadow:inset 0 0 0 1px var(--border);border:none;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:6px;padding:9px 12px;font-size:13.5px;font-weight:600;transition:background .15s,color .15s;display:inline-flex}.habit-act:hover{color:var(--text-ink)}.habit-act.primary{background:var(--accent);color:#fff;box-shadow:none}.habit-act.danger{color:var(--danger)}.habit-act.danger-active{background:var(--danger);color:#fff;box-shadow:none}.habit-act.muted-active{background:color-mix(in srgb, var(--text-ink) 8%, transparent);color:var(--text-ink)}.habit-best{color:var(--text-muted);align-items:center;gap:5px;font-size:11.5px;display:inline-flex}.habit-row.done .habit-title{color:var(--text-secondary)}.habit-form-top{gap:8px;display:flex}.habit-emoji-input{text-align:center;flex:none;width:56px;font-size:20px}.sheet-opt-row{background:var(--bg-canvas);box-shadow:inset 0 0 0 1px var(--border);border-radius:12px;justify-content:space-between;align-items:center;padding:11px 13px;display:flex}.sheet-opt-row>span{color:var(--text-ink);align-items:center;gap:7px;font-size:14px;display:inline-flex}.sheet-input{background:var(--bg-canvas);color:var(--text-ink);box-shadow:inset 0 0 0 1px var(--border);border:none;border-radius:12px;outline:none;width:100%;padding:11px 13px;font-size:14.5px}.sheet-input:focus{box-shadow:inset 0 0 0 2px var(--accent)}.dow-row{flex-wrap:wrap;gap:6px;display:flex}.dow-pill{background:var(--bg-canvas);min-width:38px;box-shadow:inset 0 0 0 1px var(--border);color:var(--text-secondary);cursor:pointer;border:none;border-radius:10px;flex:1;padding:8px 0;font-size:12.5px;font-weight:600}.dow-pill.on{background:var(--accent);color:#fff;box-shadow:none}.goals-screen{flex-direction:column;gap:16px;display:flex}.goals-head{align-items:center;gap:12px;display:flex}.goals-title{letter-spacing:-.01em;color:var(--text-ink);margin-right:auto;font-size:22px;font-weight:700}.goals-group{flex-direction:column;gap:10px;display:flex}.goals-group-head{text-transform:uppercase;letter-spacing:.03em;color:var(--text-secondary);align-items:center;gap:6px;font-size:12.5px;font-weight:600;display:inline-flex}.goals-list{flex-direction:column;gap:10px;display:flex}.goal-card{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:10px;padding:13px 15px;display:flex}.goal-card-top{align-items:flex-start;gap:10px;display:flex}.goal-milestones{border-top:1px solid color-mix(in srgb, var(--text-ink) 7%, transparent);flex-direction:column;gap:2px;padding-top:8px;display:flex}.goal-mst-row{color:var(--text-secondary);align-items:center;gap:7px;padding:3px 0;font-size:12.5px;display:flex}.goal-mst-row svg{color:var(--accent);flex:none}.goal-mst-row .gm-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.goal-mst-row .gm-date{color:var(--text-muted);white-space:nowrap;font-size:11px}.goal-mst-row.status-done{opacity:.5}.goal-mst-row.status-done .gm-title{text-decoration:line-through}.goal-mst-row.status-dropped{opacity:.4}.goal-mst-row.status-dropped .gm-title{text-decoration:line-through}.goal-caret{color:var(--text-muted);flex:none;transition:transform .15s}.goal-caret.open{transform:rotate(90deg)}.goal-task-row{color:var(--text-secondary);align-items:center;gap:7px;padding:2px 0 2px 19px;font-size:12px;display:flex}.goal-task-row svg{color:var(--text-muted);flex:none}.goal-task-row.done{opacity:.55}.goal-task-row.done .gt-title{text-decoration:line-through}.goal-task-row .gt-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.goal-task-row .gt-date{color:var(--text-muted);white-space:nowrap;font-size:10.5px}.goal-tasks-empty{color:var(--text-muted);padding:6px 0;font-size:12px}.goal-card.status-done{opacity:.72}.goal-card.status-dropped{opacity:.55}.goal-body{text-align:left;cursor:pointer;background:0 0;border:0;flex-direction:column;flex:1;gap:6px;min-width:0;padding:0;display:flex}.goal-title-row{align-items:center;gap:8px;display:flex}.goal-title{color:var(--text-ink);font-size:15px;font-weight:600}.goal-status{color:var(--text-secondary);background:color-mix(in srgb, var(--text-ink) 8%, transparent);border-radius:6px;padding:1px 6px;font-size:10.5px;font-weight:600}.goal-meta{color:var(--text-secondary);align-items:center;gap:8px;font-size:12px;display:flex}.goal-why{color:var(--text-secondary);margin-top:2px;font-size:12px;font-style:italic;line-height:1.35}.goal-streak{color:var(--accent);font-size:11.5px;font-weight:600}.goal-next{color:var(--text-ink);background:var(--accent-soft);border-radius:8px;align-items:center;gap:6px;padding:6px 10px;font-size:12.5px;display:flex}.goal-next svg{color:var(--accent);flex:none}.goal-next-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:550;overflow:hidden}.goal-next-date{color:var(--text-muted);white-space:nowrap;font-size:11px}.gm-count{color:var(--text-muted);font-size:11px;font-weight:600}.gm-kr{align-items:center;gap:5px;display:inline-flex}.gm-kr-val{color:var(--accent);white-space:nowrap;font-size:11px;font-weight:600}.gm-kr-btn{background:var(--accent-soft);width:18px;height:18px;color:var(--accent);cursor:pointer;border:none;border-radius:6px;justify-content:center;align-items:center;font-size:13px;line-height:1;display:flex}.gm-kr-btn:active{transform:scale(.9)}.goal-mst{align-items:center;gap:3px;display:inline-flex}.goal-bar{background:color-mix(in srgb, var(--text-ink) 8%, transparent);border-radius:4px;height:6px;margin-top:2px;overflow:hidden}.goal-bar-fill{background:var(--accent);border-radius:4px;height:100%;transition:width .25s}.goal-progress{color:var(--text-muted);font-size:11px;font-weight:600}.goal-actions{flex-direction:column;flex:none;gap:4px;display:flex}.goal-icon{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:9px;justify-content:center;align-items:center;display:flex}.goal-icon:hover{background:var(--bg-canvas);color:var(--text-ink)}.goal-sheet-field{flex-direction:column;gap:6px;display:flex}.goal-sheet-label{color:var(--text-secondary);font-size:12.5px;font-weight:600}.goal-seg{flex-wrap:wrap;gap:6px;display:flex}.goal-seg-pill{background:var(--bg-canvas);min-width:64px;box-shadow:inset 0 0 0 1px var(--border);color:var(--text-secondary);cursor:pointer;border:none;border-radius:10px;flex:1;padding:8px 6px;font-size:12.5px;font-weight:600}.goal-seg-pill.on{background:var(--accent);color:#fff;box-shadow:none}.fuel-screen{flex-direction:column;gap:14px;display:flex}.fuel-head{align-items:center;gap:10px;display:flex}.fuel-title{color:var(--text-ink);margin-right:auto;font-size:20px;font-weight:700}.fuel-sub{color:var(--text-secondary);margin-top:-6px;font-size:13px}.fuel-card{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:10px;padding:13px 15px;display:flex}.fuel-off{color:var(--text-secondary);font-size:14px}.fuel-card-head{color:var(--text-ink);align-items:center;gap:7px;font-size:14.5px;font-weight:600;display:inline-flex}.fuel-muted{color:var(--text-muted);font-size:12px}.fuel-src-row{justify-content:space-between;align-items:center;gap:8px;font-size:13.5px;display:flex}.fuel-src-row.off{opacity:.45}.fuel-src-label{cursor:pointer;min-width:0;color:var(--text-ink);align-items:center;gap:8px;display:flex}.fuel-src-label span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.fuel-ok{color:var(--accent);flex:none;font-size:12.5px}.fuel-bad{color:var(--danger);flex:none;font-size:12.5px}.fuel-input{background:var(--bg-canvas);width:100%;color:var(--text-ink);box-shadow:inset 0 0 0 1px var(--border);border:none;border-radius:12px;outline:none;padding:11px 13px;font-size:14.5px}.fuel-input:focus{box-shadow:inset 0 0 0 2px var(--accent)}.fuel-results{flex-direction:column;gap:2px;max-height:320px;display:flex;overflow-y:auto}.fuel-result{text-align:left;cursor:pointer;width:100%;color:var(--accent);background:0 0;border:none;border-radius:10px;justify-content:space-between;align-items:center;gap:8px;padding:8px;display:flex}.fuel-result:hover{background:var(--bg-canvas)}.fuel-result-txt{min-width:0}.fuel-result-name{color:var(--text-ink);font-size:14px;font-weight:600}.fuel-result-addr{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.fuel-msg{color:var(--text-muted);font-size:12px}.fuel-msg.err{color:var(--danger)}.fuel-my{flex-direction:column;gap:10px;display:flex}.fuel-my-head{color:var(--text-secondary);font-size:13px;font-weight:600}.fuel-st-head{justify-content:space-between;align-items:flex-start;gap:8px;display:flex}.fuel-st-name{color:var(--text-ink);font-size:15px;font-weight:600}.fuel-st-addr{color:var(--text-muted);font-size:12px}.fuel-st-actions{flex:none;gap:4px;display:flex}.fuel-icon{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:9px;justify-content:center;align-items:center;display:flex}.fuel-icon:hover{background:var(--bg-canvas);color:var(--text-ink)}.fuel-icon.star-on{color:var(--warn)}.fuel-st-rows{flex-direction:column;gap:6px;display:flex}.fuel-src-status{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fuel-src-name{color:var(--text-muted);flex:none;min-width:4.5rem;font-size:12px}.fuel-chip{border-radius:99px;padding:1px 8px;font-size:12px;font-weight:600}.fuel-chip.ok{background:color-mix(in srgb, var(--accent) 18%, transparent);color:var(--accent)}.fuel-chip.no{background:color-mix(in srgb, var(--danger) 18%, transparent);color:var(--danger)}.fuel-chip.unknown{background:var(--bg-canvas);color:var(--text-muted);box-shadow:inset 0 0 0 1px var(--border)}.fuel-opt{color:var(--text-ink);justify-content:space-between;align-items:center;gap:8px;font-size:14px;display:flex}.fuel-field{flex-direction:column;gap:5px;display:flex}.fuel-field-label{color:var(--text-muted);font-size:12px}.fuel-types{flex-wrap:wrap;gap:12px;display:flex}.fuel-type{color:var(--text-ink);cursor:pointer;align-items:center;gap:5px;font-size:13px;display:flex}.health-screen{flex-direction:column;gap:16px;display:flex}.health-title{letter-spacing:-.01em;color:var(--text-ink);font-size:22px;font-weight:700}.health-stats{grid-template-columns:1fr 1fr;gap:13px;display:grid}.hstat{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);flex-direction:column;gap:12px;padding:16px;display:flex}.hstat .icon-badge{width:36px;height:36px}.hstat-val{letter-spacing:-.02em;color:var(--text-ink);font-size:24px;font-weight:700;line-height:1}.hstat-unit{color:var(--text-secondary);margin-left:3px;font-size:14px;font-weight:600}.hstat-lbl{color:var(--text-secondary);margin-top:3px;font-size:12.5px}.hstat-empty{color:var(--text-muted);font-size:18px;font-weight:600}.health-sections{flex-direction:column;gap:10px;display:flex}.health-back{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:2px;font-size:14px;font-weight:600;display:inline-flex}.health-sub-title{color:var(--text-ink);font-size:19px;font-weight:700}.metric-latest{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:16px}.metric-latest-head{color:var(--text-secondary);justify-content:space-between;margin-bottom:12px;font-size:12.5px;display:flex}.metric-latest-date{color:var(--text-muted)}.metric-latest-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.metric-latest-grid>div{flex-direction:column;display:flex}.metric-latest-grid b{color:var(--text-ink);font-size:20px;font-weight:700;line-height:1.1}.metric-latest-grid span{color:var(--text-secondary);font-size:11px}.metric-history{flex-direction:column;gap:8px;display:flex}.metric-row{background:var(--bg-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);align-items:center;gap:12px;padding:11px 14px;display:flex}.metric-row-body{flex-direction:column;flex:1;min-width:0;display:flex}.metric-row-weight{color:var(--text-ink);font-size:15px;font-weight:650}.metric-row-date{color:var(--text-muted);font-size:11.5px}.metric-row-extra{color:var(--text-secondary);font-size:12.5px}.metric-del{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex:none;padding:5px;display:flex}.metric-del:hover{color:var(--danger)}.metric-grid{grid-template-columns:1fr 1fr;gap:8px;display:grid}.blood-list{flex-direction:column;gap:10px;display:flex}.blood-card{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:14px}.blood-card-head{justify-content:space-between;align-items:flex-start;display:flex}.blood-panel{color:var(--text-ink);font-size:15px;font-weight:650}.blood-meta{color:var(--text-secondary);margin-top:1px;font-size:12px}.blood-rows{flex-direction:column;gap:4px;margin-top:10px;display:flex}.blood-row{border-top:1px solid var(--border);justify-content:space-between;padding:4px 0;font-size:13px;display:flex}.blood-row>span:first-child{color:var(--text-secondary)}.blood-val{color:var(--text-ink);font-weight:600}.blood-edit-rows{flex-direction:column;gap:6px;display:flex}.blood-edit-row{align-items:center;gap:6px;display:flex}.blood-edit-row .set-input{padding:8px 10px}.blood-edit-val{flex:none;width:70px}.blood-edit-unit{flex:none;width:56px}.blood-edit-del{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex:none;padding:4px;display:flex}.blood-add-row{background:var(--accent-soft);color:var(--accent);cursor:pointer;border:none;border-radius:9px;align-self:flex-start;align-items:center;gap:4px;padding:6px 11px;font-size:12.5px;font-weight:600;display:inline-flex}.workouts-screen{flex-direction:column;gap:14px;display:flex}.workouts-head{justify-content:space-between;align-items:center;display:flex}.workouts-title{letter-spacing:-.01em;color:var(--text-ink);font-size:22px;font-weight:700}.workouts-section-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;padding:6px 6px 0;font-size:11px;font-weight:700}.workouts-list{flex-direction:column;gap:10px;display:flex}.workout-hero{text-align:left;background:linear-gradient(180deg, var(--hero-from), var(--hero-to));border:1px solid var(--hero-border);border-radius:var(--radius-xl);width:100%;box-shadow:var(--shadow-lg);cursor:pointer;align-items:center;gap:14px;padding:20px 22px;display:flex}.workout-hero-body{flex-direction:column;flex:1;gap:4px;display:flex}.workout-hero-eye{color:var(--hero-eye);font-size:12px;font-weight:700}.workout-hero-title{letter-spacing:-.01em;color:var(--hero-ink);font-size:20px;font-weight:700}.workout-hero-play{background:var(--accent);color:#fff;width:50px;height:50px;box-shadow:0 8px 18px var(--accent-soft);border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.routine-card{text-align:left;background:var(--bg-surface);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-sm);cursor:pointer;align-items:center;gap:13px;padding:13px 15px;transition:box-shadow .15s;display:flex}.routine-card:hover{box-shadow:var(--shadow-md)}.routine-ic{background:var(--accent-soft);width:38px;height:38px;color:var(--accent);border-radius:12px;flex:none;justify-content:center;align-items:center;display:flex}.routine-body{flex:1;min-width:0}.routine-name{color:var(--text-ink);font-size:15px;font-weight:600;display:block}.routine-days{color:var(--text-secondary);font-size:12px}.routine-chev{color:var(--text-muted);flex:none}.session-row{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);align-items:center;gap:13px;padding:13px 15px;display:flex}.session-body{flex:1;min-width:0}.session-name{color:var(--text-ink);font-size:14.5px;font-weight:550;display:block}.session-date{color:var(--text-secondary);font-size:12px}.session-status{color:var(--text-muted);white-space:nowrap;font-size:12px;font-weight:600}.session-status.done{color:var(--accent)}.workout-back{color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-self:flex-start;align-items:center;gap:2px;font-size:14px;font-weight:600;display:inline-flex}.workout-quickstart{background:linear-gradient(180deg, var(--hero-from), var(--hero-to));border:1px solid var(--hero-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);flex-direction:column;gap:12px;padding:18px 20px;display:flex}.quickstart-top{justify-content:space-between;align-items:flex-start;display:flex}.quickstart-eye{color:var(--hero-eye);font-size:12px;font-weight:700}.quickstart-num{color:var(--hero-ink);font-size:21px;font-weight:700}.quickstart-ago{color:var(--hero-meta);font-size:12px}.quickstart-days{flex-wrap:wrap;gap:6px;display:flex}.quickstart-day{background:var(--bg-surface);box-shadow:var(--shadow-sm);color:var(--text-ink);cursor:pointer;border:none;border-radius:99px;padding:7px 13px;font-size:12.5px;font-weight:600}.quickstart-day.next{background:var(--accent);color:#fff}.session-card{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.session-card .session-row{width:100%;box-shadow:none;cursor:pointer;background:0 0;border-radius:0}.session-chev{color:var(--text-muted);flex:none;transition:transform .18s}.session-chev.open{transform:rotate(180deg)}.session-detail{flex-direction:column;gap:10px;padding:0 15px 14px;display:flex}.session-ex-name{color:var(--text-ink);margin-bottom:4px;font-size:13.5px;font-weight:600}.session-ex-sets{flex-wrap:wrap;gap:5px;display:flex}.session-set{background:var(--bg-canvas);color:var(--text-secondary);border-radius:6px;padding:2px 7px;font-size:11.5px}.session-set.warmup{opacity:.65}.session-actions{border-top:1px solid var(--border);justify-content:flex-end;align-items:center;gap:8px;margin-top:2px;padding-top:4px;display:flex}.session-act{background:var(--bg-canvas);color:var(--text-secondary);cursor:pointer;border:none;border-radius:8px;align-items:center;gap:5px;padding:6px 11px;font-size:12.5px;font-weight:600;display:inline-flex}.session-act:hover{color:var(--text-ink)}.session-act.danger{color:var(--text-muted);padding:6px 9px}.session-act.danger:hover{color:var(--danger)}.routine-detail{flex-direction:column;gap:14px;display:flex}.routine-detail-title{color:var(--text-ink);font-size:21px;font-weight:700}.routine-detail-sub{color:var(--text-secondary);margin-top:-8px;font-size:13px}.routine-day{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:10px;padding:15px;display:flex}.routine-day-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.routine-day-name{color:var(--text-ink);font-size:16px;font-weight:650}.routine-day-muscles{flex-wrap:wrap;gap:5px;display:flex}.routine-day-muscles span{color:var(--accent);background:var(--accent-soft);border-radius:6px;padding:2px 7px;font-size:10.5px;font-weight:600}.routine-exs{flex-direction:column;gap:7px;display:flex}.routine-ex{border-top:1px solid var(--border);justify-content:space-between;align-items:baseline;gap:10px;padding:5px 0;display:flex}.routine-ex-name{color:var(--text-ink);font-size:14px}.routine-ex-target{color:var(--text-secondary);white-space:nowrap;font-size:12px}.routine-start{margin-top:2px}.active-screen{flex-direction:column;gap:12px;display:flex}.active-bar{justify-content:space-between;align-items:center;display:flex}.active-title{color:var(--text-ink);font-size:21px;font-weight:700}.active-sub{color:var(--text-secondary);margin-top:-8px;font-size:12.5px}.logger-ex{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:8px;padding:14px;display:flex}.logger-ex-head{flex-direction:column;gap:2px;display:flex}.logger-ex-name{color:var(--text-ink);font-size:15.5px;font-weight:650}.logger-ex-meta{color:var(--text-secondary);flex-wrap:wrap;gap:10px;font-size:11.5px;display:flex}.logger-ex-target{color:var(--accent);font-weight:600}.logger-set{background:var(--bg-canvas);border-radius:10px;align-items:center;gap:10px;padding:7px 10px;display:flex}.logger-set.warmup{opacity:.75}.logger-set.prefilled{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--accent) 35%, transparent)}.logger-set-num{width:20px;color:var(--text-muted);text-align:center;flex:none;font-size:12px;font-weight:700}.logger-set-vals{min-width:0;color:var(--text-ink);flex-wrap:wrap;flex:1;align-items:center;gap:4px;font-size:14px;display:flex}.logger-set-vals .muted{color:var(--text-muted)}.warmup-badge{color:var(--warn);background:var(--warn-bg,color-mix(in srgb, var(--warn) 14%, transparent));border-radius:5px;padding:1px 6px;font-size:10px;font-weight:600}.prefilled-badge{font-size:12px}.logger-set-ok{background:var(--accent-soft);color:var(--accent);cursor:pointer;border:none;border-radius:8px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;display:flex}.logger-set-del{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex:none;padding:4px;display:flex}.logger-set-del:hover{color:var(--danger)}.logger-set-edit{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex:none;padding:4px;display:flex}.logger-set-edit:hover{color:var(--accent)}.logger-set.editing{box-shadow:inset 0 0 0 1.5px var(--accent);gap:6px}.logger-add{background:var(--bg-canvas);box-shadow:inset 0 0 0 1px var(--border);border-radius:10px;align-items:center;gap:6px;padding:6px 10px;display:flex}.logger-add.warmup{box-shadow:inset 0 0 0 1.5px var(--warn)}.logger-input{background:var(--bg-surface);text-align:center;width:56px;min-width:0;color:var(--text-ink);box-shadow:inset 0 0 0 1px var(--border);border:none;border-radius:8px;outline:none;flex:1;padding:7px 8px;font-size:13.5px}.logger-input:focus{box-shadow:inset 0 0 0 2px var(--accent)}.logger-warmup{background:var(--bg-surface);width:32px;height:32px;color:var(--text-muted);cursor:pointer;box-shadow:inset 0 0 0 1px var(--border);border:none;border-radius:8px;flex:none;justify-content:center;align-items:center;display:flex}.logger-warmup.on{background:var(--warn);color:#fff;box-shadow:none}.logger-add-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;flex:none;justify-content:center;align-items:center;width:32px;height:32px;display:flex}.logger-ex-headline{align-items:center;gap:8px;display:flex}.logger-ex-headline .logger-ex-name{flex:1;min-width:0}.logger-ex-tech{background:var(--bg-canvas);width:30px;height:30px;color:var(--text-muted);cursor:pointer;border:none;border-radius:8px;flex:none;justify-content:center;align-items:center;display:flex}.logger-ex-tech:hover{color:var(--accent)}.active-add-ex{border:1.5px dashed var(--border-strong);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:6px;padding:12px;font-size:13.5px;font-weight:600;display:inline-flex}.active-add-ex:hover{border-color:var(--accent);color:var(--accent)}.routine-detail-bar{justify-content:space-between;align-items:center;display:flex}.routine-edit-toggle{background:var(--bg-surface);box-shadow:var(--shadow-sm);color:var(--text-secondary);cursor:pointer;border:none;border-radius:99px;align-items:center;gap:5px;padding:6px 13px;font-size:13px;font-weight:600;display:inline-flex}.routine-edit-toggle.on{background:var(--accent);color:#fff;box-shadow:none}.routine-ex-actions{flex:none;gap:2px;display:inline-flex}.routine-ex-actions button{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;display:flex}.routine-ex-actions button:hover:not(:disabled){background:var(--bg-canvas);color:var(--text-ink)}.routine-ex-actions button:disabled{opacity:.3}.routine-add-ex{background:var(--accent-soft);color:var(--accent);cursor:pointer;border:none;border-radius:10px;align-self:flex-start;align-items:center;gap:5px;padding:8px 13px;font-size:13px;font-weight:600;display:inline-flex}.sources-screen{flex-direction:column;gap:14px;display:flex}.sources-head{justify-content:space-between;align-items:center;display:flex}.sources-title{letter-spacing:-.01em;color:var(--text-ink);font-size:22px;font-weight:700}.sources-list{flex-direction:column;gap:10px;display:flex}.source-row{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:12px;padding:14px 16px;display:flex}.source-row.off{opacity:.6}.source-top{align-items:flex-start;gap:10px;display:flex}.source-info{flex:1;min-width:0}.source-name{color:var(--text-ink);font-size:15px;font-weight:600}.source-host{color:var(--text-secondary);margin-top:1px;font-size:12px}.source-del{width:32px;height:32px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.source-del:hover{color:var(--danger)}.source-toggles{flex-wrap:wrap;gap:14px;display:flex}.src-tg{color:var(--text-secondary);cursor:pointer;align-items:center;gap:7px;font-size:12.5px;display:inline-flex}.settings-screen{flex-direction:column;gap:20px;display:flex}.settings-title{letter-spacing:-.01em;color:var(--text-ink);font-size:22px;font-weight:700}.settings-group{flex-direction:column;gap:8px;display:flex}.settings-group-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;padding:0 6px;font-size:11px;font-weight:700}.set-row{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);align-items:center;gap:13px;padding:13px 15px;display:flex}.set-body{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.set-title{color:var(--text-ink);font-size:15px;font-weight:600}.set-sub{color:var(--text-secondary);font-size:12.5px}.set-val{color:var(--accent);white-space:nowrap;font-size:14px;font-weight:600}.settings-saved{color:var(--accent);margin-left:10px;font-size:12px;font-weight:600}.set-field{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:6px;padding:12px 15px;display:flex}.set-field>label{color:var(--text-secondary);align-items:center;gap:5px;font-size:12.5px;display:flex}.set-field-row{gap:8px;display:flex}.set-field-row .set-field{flex:1}.set-input{background:var(--bg-canvas);color:var(--text-ink);box-shadow:inset 0 0 0 1px var(--border);border:none;border-radius:10px;outline:none;padding:9px 11px;font-size:14.5px}.set-input:focus{box-shadow:inset 0 0 0 2px var(--accent)}.set-textarea{resize:vertical;min-height:64px;font-family:inherit}.hashtag-add{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);align-items:center;gap:8px;padding:10px 12px;display:flex}.hashtag-add-ic{color:var(--text-muted);flex:none}.hashtag-add-name{flex:1;min-width:0}.hashtag-color{border:1px solid var(--border);background:var(--bg-surface);cursor:pointer;border-radius:9px;flex:none;width:34px;height:34px;padding:2px}.hashtag-list{flex-direction:column;gap:6px;display:flex}.hashtag-row{background:var(--bg-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);align-items:center;gap:10px;padding:9px 12px;display:flex}.hashtag-name{font-size:14.5px;font-weight:650}.hashtag-count{color:var(--text-muted);margin-left:auto;font-size:12px}.hashtag-del{color:var(--text-muted);cursor:pointer;background:0 0;border:none;flex:none;padding:4px;display:flex}.hashtag-del:hover{color:var(--danger)}.trash-screen{flex-direction:column;gap:13px;display:flex}.trash-head{justify-content:space-between;align-items:center;display:flex}.trash-title{letter-spacing:-.01em;color:var(--text-ink);font-size:22px;font-weight:700}.trash-purge{color:var(--danger);cursor:pointer;background:0 0;border:none;font-size:13px;font-weight:600}.trash-list{flex-direction:column;gap:10px;display:flex}.trash-row{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);align-items:center;gap:13px;padding:13px 15px;display:flex}.trash-body{flex:1;min-width:0}.trash-row-title{color:var(--text-secondary);font-size:14.5px;font-weight:550;text-decoration:line-through}.trash-row-meta{color:var(--text-muted);margin-top:2px;font-size:11.5px}.trash-restore{background:var(--accent-soft);width:36px;height:36px;color:var(--accent);cursor:pointer;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.trash-purge-btn{background:var(--danger-soft,color-mix(in srgb, var(--danger) 14%, transparent));width:36px;height:36px;color:var(--danger);cursor:pointer;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.chat-screen{height:calc(100dvh - 92px - env(safe-area-inset-bottom));flex-direction:column;margin:-4px 0;display:flex}.chat-scroll{flex:1;min-height:0;padding:4px 2px 12px;overflow-y:auto}.chat-empty{text-align:center;flex-direction:column;align-items:center;gap:6px;padding:32px 8px;display:flex}.chat-empty-ic{background:var(--accent-soft);width:60px;height:60px;color:var(--accent);border-radius:50%;justify-content:center;align-items:center;margin-bottom:6px;display:flex}.chat-empty-title{color:var(--text-ink);font-size:17px;font-weight:700}.chat-empty-sub{color:var(--text-secondary);max-width:280px;font-size:13.5px;line-height:1.4}.chat-suggestions{flex-direction:column;gap:8px;width:100%;margin-top:14px;display:flex}.chat-suggestion{text-align:left;background:var(--bg-surface);box-shadow:var(--shadow-sm);border-radius:var(--radius-md);color:var(--text-ink);cursor:pointer;border:none;align-items:center;gap:10px;padding:13px 15px;font-size:14px;transition:box-shadow .15s;display:flex}.chat-suggestion:hover{box-shadow:inset 0 0 0 1.5px var(--accent), var(--shadow-sm)}.chat-suggestion svg{color:var(--accent);flex:none}.chat-messages{flex-direction:column;gap:10px;display:flex}.chat-msg{white-space:pre-wrap;word-break:break-word;border-radius:18px;max-width:86%;padding:11px 14px;font-size:14.5px;line-height:1.45}.chat-msg.user{background:var(--accent);color:#fff;border-bottom-right-radius:6px;align-self:flex-end}.chat-msg.assistant{background:var(--bg-surface);color:var(--text-ink);box-shadow:var(--shadow-sm);border-bottom-left-radius:6px;align-self:flex-start}.chat-msg.thinking{color:var(--text-secondary);align-items:center;gap:8px;display:flex}.chat-dots{gap:3px;display:inline-flex}.chat-dots i{background:var(--text-muted);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite chat-bounce}.chat-dots i:nth-child(2){animation-delay:.18s}.chat-dots i:nth-child(3){animation-delay:.36s}@keyframes chat-bounce{0%,60%,to{opacity:.5;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.chat-input-bar{align-items:flex-end;gap:8px;padding:8px 0 2px;display:flex}.chat-input{resize:none;background:var(--bg-surface);min-width:0;box-shadow:var(--shadow-sm);color:var(--text-ink);border:none;border-radius:22px;outline:none;flex:1;max-height:220px;padding:12px 16px;font-family:inherit;font-size:14.5px;overflow-y:auto}.chat-input:focus{box-shadow:inset 0 0 0 2px var(--accent)}.chat-send{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.chat-send:disabled{opacity:.45;cursor:default}.chat-topbar{align-items:center;gap:8px;padding:2px 2px 8px;display:flex}.chat-topbar-btn{background:var(--bg-surface);width:38px;height:38px;box-shadow:var(--shadow-sm);color:var(--text-secondary);cursor:pointer;border:none;border-radius:12px;flex:none;justify-content:center;align-items:center;display:flex}.chat-topbar-btn:active{transform:scale(.94)}.chat-topbar-title{text-align:center;min-width:0;color:var(--text-ink);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:15px;font-weight:650;overflow:hidden}.chat-drawer-backdrop{z-index:40;background:#00000052;position:fixed;inset:0}.chat-drawer{z-index:41;background:var(--bg-canvas);width:min(82vw,320px);padding:calc(12px + env(safe-area-inset-top)) 12px 12px;flex-direction:column;animation:.18s chat-drawer-in;display:flex;position:fixed;top:0;bottom:0;left:0;box-shadow:4px 0 28px #0000002e}@keyframes chat-drawer-in{0%{transform:translate(-100%)}to{transform:translate(0)}}.chat-drawer-head{color:var(--text-ink);justify-content:space-between;align-items:center;padding:4px 4px 10px;font-size:15px;font-weight:700;display:flex}.chat-drawer-x{color:var(--text-muted);cursor:pointer;background:0 0;border:none;padding:4px;display:flex}.chat-drawer-new{background:var(--accent-soft);width:100%;color:var(--accent);border-radius:var(--radius-md);cursor:pointer;border:none;align-items:center;gap:8px;margin-bottom:8px;padding:11px 14px;font-size:14px;font-weight:600;display:flex}.chat-drawer-list{flex-direction:column;flex:1;gap:4px;min-height:0;display:flex;overflow-y:auto}.chat-drawer-empty{color:var(--text-muted);text-align:center;padding:24px 8px;font-size:13px}.chat-drawer-item{border-radius:var(--radius-md);align-items:center;gap:2px;padding-right:4px;display:flex}.chat-drawer-item:hover{background:var(--bg-surface)}.chat-drawer-item.on{background:var(--bg-surface);box-shadow:inset 0 0 0 1.5px var(--accent)}.chat-drawer-item-main{text-align:left;border-radius:var(--radius-md);min-width:0;color:var(--text-ink);cursor:pointer;background:0 0;border:none;flex:1;align-items:center;gap:9px;padding:11px 12px;font-size:14px;display:flex}.chat-drawer-item-main svg{color:var(--text-muted);flex:none}.chat-drawer-item.on .chat-drawer-item-main svg{color:var(--accent)}.chat-drawer-item-title{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.chat-drawer-act{width:30px;height:30px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:none;justify-content:center;align-items:center;display:flex}.chat-drawer-act:hover{background:var(--bg-canvas);color:var(--text-secondary)}.chat-drawer-edit{background:var(--bg-surface);min-width:0;height:36px;box-shadow:inset 0 0 0 1.5px var(--accent);color:var(--text-ink);border:none;border-radius:10px;flex:1;padding:0 10px;font-size:14px}.chat-drawer-edit:focus{outline:none}.watch-screen{flex-direction:column;gap:16px;display:flex}.watch-head{justify-content:space-between;align-items:center;display:flex}.watch-title{letter-spacing:-.01em;color:var(--text-ink);font-size:22px;font-weight:700}.watch-section-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:8px;padding:0 4px;font-size:11px;font-weight:700;display:flex}.watch-count{text-transform:none;letter-spacing:0;color:var(--text-muted);font-weight:500}.watch-topics{flex-direction:column;gap:8px;display:flex}.watch-topics-row{flex-wrap:wrap;gap:8px;display:flex}.watch-topic-chip{background:var(--bg-surface);box-shadow:inset 0 0 0 1px var(--border);color:var(--text-ink);cursor:pointer;border:none;border-radius:99px;padding:7px 13px;font-size:13px;transition:box-shadow .15s}.watch-topic-chip:hover{box-shadow:inset 0 0 0 1.5px var(--accent);color:var(--accent)}.watch-topic-count{color:var(--text-muted)}.watch-form{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;gap:10px;padding:15px;display:flex}.watch-form-head{color:var(--text-ink);align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.watch-form-head svg{color:var(--accent)}.watch-input{background:var(--bg-canvas);color:var(--text-ink);box-shadow:inset 0 0 0 1px var(--border);border:none;border-radius:10px;outline:none;width:100%;padding:10px 12px;font-size:14.5px}.watch-input:focus{box-shadow:inset 0 0 0 2px var(--accent)}.watch-form-row{gap:8px;display:flex}.watch-form-row>select{flex:1}.watch-score{color:var(--text-secondary);white-space:nowrap;align-items:center;gap:6px;font-size:13px;display:flex}.watch-score .watch-input{width:64px}.watch-form-actions{gap:8px;display:flex}.watch-msg{color:var(--accent);font-size:12.5px}.watch-list{flex-direction:column;gap:8px;display:flex}.watch-row{background:var(--bg-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);align-items:center;gap:12px;padding:12px 14px;display:flex}.watch-row-ic{background:var(--accent-soft);width:36px;height:36px;color:var(--accent);border-radius:10px;flex:none;justify-content:center;align-items:center;display:flex}.watch-row-body{flex:1;min-width:0}.watch-row-pattern{color:var(--text-ink);text-overflow:ellipsis;white-space:nowrap;font-size:14.5px;font-weight:600;overflow:hidden}.watch-row-meta{color:var(--text-secondary);margin-top:1px;font-size:12px}.watch-act{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:none;padding:6px;display:flex}.watch-act:hover{background:var(--bg-canvas);color:var(--text-ink)}.watch-act.danger:hover{color:var(--danger)}.app-shell{background:var(--bg-canvas);min-height:100dvh;color:var(--text-ink)}.app-main{max-width:640px;padding:calc(16px + env(safe-area-inset-top)) 16px calc(76px + env(safe-area-inset-bottom));margin:0 auto}.app-boot,.app-error{text-align:center;min-height:60vh;color:var(--text-secondary);justify-content:center;align-items:center;padding:24px;font-size:14px;display:flex}.app-error{color:var(--danger)}.app-auth{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:70vh;padding:24px;display:flex}.app-auth-title{color:var(--text-ink);font-size:16px;font-weight:650}.app-auth-btn{background:var(--accent);color:#fff;border-radius:12px;justify-content:center;align-items:center;padding:12px 22px;font-size:14.5px;font-weight:600;text-decoration:none;display:inline-flex;box-shadow:0 1px 2px #00000014}.app-auth-btn:active{transform:translateY(1px)}.app-auth-hint{color:var(--text-muted);max-width:240px;font-size:12.5px;line-height:1.4}.glass{background:var(--glass-bg);-webkit-backdrop-filter:saturate(140%)blur(12px)}.bottom-nav{z-index:30;border-top:1px solid var(--border);padding-bottom:env(safe-area-inset-bottom);position:fixed;bottom:0;left:0;right:0}.bottom-nav-row{grid-template-columns:repeat(6,minmax(0,1fr));max-width:640px;margin:0 auto;font-size:10px;display:grid}.nav-item{cursor:pointer;color:var(--text-muted);background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;padding:10px 0;transition:color .15s;display:flex;position:relative}.nav-item:hover{color:var(--text-ink)}.nav-item[aria-current=true]{color:var(--accent)}.nav-item .dot{background:var(--accent);border-radius:50%;width:4px;height:4px;position:absolute;top:4px}.placeholder{text-align:center;min-height:60vh;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex}.placeholder-title{color:var(--text-ink);font-size:16px;font-weight:600}
