:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;color:#1d1c1a;background:#d9dad8;font-synthesis:none;--bg: #efefed;--panel: #fff;--sidebar: #fafaf8;--line: #e5e4e0;--muted: #77746f;--shadow: 0 12px 34px rgba(42, 39, 34, .055);--safe-area-top: env(safe-area-inset-top, 0px);--safe-area-right: env(safe-area-inset-right, 0px);--safe-area-bottom: env(safe-area-inset-bottom, 0px);--safe-area-left: env(safe-area-inset-left, 0px)}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{min-width:320px;overflow-x:hidden;background:linear-gradient(145deg,#dadbd9,#cfd1cf)}button,input,select,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid rgba(39,140,119,.22);outline-offset:2px}a{color:inherit;text-decoration:none}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:calc(100vh - 32px);max-width:1460px;margin:16px auto;background:var(--bg);border:1px solid rgba(255,255,255,.75);border-radius:26px;overflow:hidden;box-shadow:0 28px 80px #2729272e}.sidebar{display:flex;flex-direction:column;padding:22px 16px 16px;background:var(--sidebar);border-right:1px solid var(--line)}.brand{display:flex;align-items:center;gap:11px;padding:0 7px 22px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;color:#fff;background:#181817;box-shadow:0 8px 22px #00000021}.brand strong,.brand span{display:block}.brand strong{font-size:17px;letter-spacing:-.02em}.brand span{margin-top:2px;color:var(--muted);font-size:11px}.app-nav{display:flex;flex-direction:column;gap:7px}.app-nav a,.settings-link{display:flex;align-items:center;gap:12px;min-height:46px;padding:0 13px;border-radius:13px;color:#45423d;font-size:14px;font-weight:550;transition:.18s ease}.app-nav a:hover,.settings-link:hover{background:#f0f0ed}.app-nav a.active,.settings-link.active{color:#171716;background:#fff;box-shadow:0 7px 22px #34312b12}.sidebar-spacer{flex:1;min-height:34px}.settings-link{margin-bottom:12px}.sidebar-tip{display:flex;flex-direction:column;gap:5px;padding:14px;border:1px solid var(--line);border-radius:15px;background:#fff}.sidebar-tip strong{font-size:12px}.sidebar-tip span{color:var(--muted);font-size:11px;line-height:1.55}.mobile-header,.mobile-drawer,.drawer-backdrop{display:none}.content{min-width:0;height:calc(100vh - 34px);overflow:auto;padding:22px}.page{display:flex;flex-direction:column;gap:16px;width:min(100%,1100px);margin:0 auto}.narrow-page{max-width:900px}.page-header{display:flex;align-items:center;justify-content:space-between;min-height:104px;padding:22px 24px;border:1px solid var(--line);border-radius:20px;background:#ffffffeb;box-shadow:var(--shadow)}.page-header h1{margin:3px 0 4px;font-size:clamp(25px,3vw,32px);letter-spacing:-.045em}.page-header p,.section-title p{margin:0;color:var(--muted);font-size:13px}.eyebrow{color:#85817b;font-size:9px;font-weight:800;letter-spacing:.18em}.header-stat{display:flex;flex-direction:column;align-items:flex-end;gap:2px;padding-left:24px}.header-stat strong{font-size:30px;letter-spacing:-.05em}.header-stat span{color:var(--muted);font-size:11px}.panel{padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--panel);box-shadow:var(--shadow)}.section-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}.section-title h2{margin:0 0 4px;font-size:16px;letter-spacing:-.02em}.button,.icon-button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #dfddd8;background:#fff;cursor:pointer;transition:.16s ease}.button{min-height:39px;padding:0 14px;border-radius:11px;font-size:13px;font-weight:600}.button:hover:not(:disabled),.icon-button:hover:not(:disabled){border-color:#c8c5bf;background:#f8f7f4;transform:translateY(-1px)}.button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.45}.button.primary{color:#fff;border-color:#191918;background:#191918}.button.primary:hover:not(:disabled){background:#33322f}.button.large{width:100%;min-height:46px}.button.mint{border-color:#cce7df;background:#f1fbf8}.button.ai-accent{color:#5545a8;border-color:#dcd5fa;background:#f3f0ff}.button.ai-accent:hover:not(:disabled){border-color:#c9bdf5;background:#ebe6ff}.button.soft-active{background:#eeece7}.button.danger-outline{color:#b24048;border-color:#ebcfd1}.icon-button{width:34px;height:34px;padding:0;border-radius:10px}.icon-button.danger{color:#b95056}input,select{width:100%;min-height:40px;padding:0 11px;color:#272522;border:1px solid #dedcd7;border-radius:10px;background:#fff}textarea{width:100%;padding:10px 11px;color:#272522;border:1px solid #dedcd7;border-radius:10px;background:#fff;resize:vertical}input:disabled,input:read-only{color:#7d7973;background:#f5f4f1}.stack-form{display:flex;flex-direction:column;gap:13px}.stack-form label{display:flex;flex-direction:column;gap:6px;color:#5f5b55;font-size:12px;font-weight:650}.form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:5px}.form-error,.success-banner{padding:11px 13px;border-radius:11px;font-size:13px}.form-error{color:#a6363f;border:1px solid #efc8cc;background:#fff2f3}.form-error.wide{grid-column:1 / -1}.success-banner{display:flex;align-items:center;gap:7px;color:#246b59;border:1px solid #c8e7dd;background:#effbf7}.spinner{width:20px;height:20px;border:2px solid #d5d2cc;border-top-color:#222;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.center-screen,.loading-block{display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted)}.center-screen{min-height:100vh}.connection-error{padding:24px;text-align:center}.connection-error h1{margin-bottom:7px}.connection-error p{margin:0 0 18px;color:var(--muted)}.loading-block{min-height:150px;font-size:13px}.empty-panel,.empty-list{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.empty-panel{min-height:420px}.empty-panel h2,.empty-list h3{margin:12px 0 4px}.empty-panel p,.empty-list p{color:var(--muted);font-size:13px}.empty-panel .button{margin-top:12px}.auth-page{display:grid;min-height:100vh;place-items:center;padding:22px;background:radial-gradient(circle at 20% 15%,#f1e7ee 0,transparent 32%),radial-gradient(circle at 85% 75%,#dcefe8 0,transparent 32%),#e6e6e3}.auth-card{width:min(100%,420px);padding:28px;border:1px solid rgba(255,255,255,.75);border-radius:24px;background:#ffffffe6;box-shadow:0 28px 80px #2a282524;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.auth-brand{display:flex;align-items:center;gap:8px;margin-bottom:34px;font-weight:800}.auth-brand svg{width:36px;height:36px;padding:8px;color:#fff;border-radius:11px;background:#191918}.auth-icon{display:grid;width:46px;height:46px;place-items:center;color:#287d69;border-radius:15px;background:#e8f7f2}.auth-card h1{margin:17px 0 7px;font-size:26px;letter-spacing:-.04em}.auth-card>p{margin:0 0 23px;color:var(--muted);font-size:13px}.auth-note{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:20px;color:#77736d;font-size:10px}.quick-add{display:grid;grid-template-columns:minmax(220px,1fr) 92px 118px 178px 126px auto;gap:9px}.reminder-toggle{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:6px;padding:0 10px;color:#5f5b55;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:12px;font-weight:650;cursor:pointer}.reminder-toggle input{width:15px;height:15px;margin:0;accent-color:#222}.todo-schedule{display:flex;grid-column:1 / -1;min-width:0;align-items:center;gap:9px;margin:0;padding:0;border:0}.todo-schedule>p{margin:0;color:var(--muted);font-size:11px}.todo-schedule-fields{display:grid;grid-template-columns:auto minmax(140px,1fr) minmax(140px,1fr);align-items:end;gap:9px;flex:1}.todo-schedule-fields>label:not(.reminder-toggle){display:flex;flex-direction:column;gap:4px;color:#5f5b55;font-size:10px;font-weight:650}.form-hint{display:flex;align-items:center;gap:8px}.form-hint a,.todo-calendar-link{color:#28745f;font-weight:700;text-decoration:none}.todo-calendar-link{display:inline-flex;align-items:center;gap:4px}.title-input{min-width:0}.todo-panel{padding:0;overflow:hidden}.panel-toolbar{padding:14px 16px;border-bottom:1px solid var(--line)}.segmented{display:flex;min-width:0;align-items:center;gap:7px}.segmented button{display:inline-flex;align-items:center;gap:7px;min-height:35px;padding:0 13px;border:1px solid #e5e2dc;border-radius:10px;background:#fff;cursor:pointer;font-size:12px}.segmented button.active{color:#fff;border-color:#1b1b1a;background:#1b1b1a}.segmented button span{display:grid;min-width:17px;height:17px;place-items:center;border-radius:8px;background:#ffffff2e;font-size:9px}.todo-list,.detail-list{margin:0;padding:0;list-style:none}.todo-list li{display:flex;align-items:center;gap:13px;min-height:72px;padding:13px 16px;border-bottom:1px solid #eeece7}.todo-list li:last-child{border-bottom:0}.todo-list li.completed{background:#fbfbfa}.check-button{display:grid;width:27px;height:27px;flex:0 0 auto;place-items:center;color:#55514b;border:0;border-radius:9px;background:transparent;cursor:pointer}.completed .check-button{color:#fff;background:#222}.todo-copy{min-width:0;flex:1}.todo-copy strong{display:block;overflow:hidden;margin-bottom:7px;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.completed .todo-copy strong{color:#96918a;text-decoration:line-through}.todo-copy>div{display:flex;flex-wrap:wrap;align-items:center;gap:10px;color:#858078;font-size:10px}.todo-copy>div span{display:inline-flex;align-items:center;gap:4px}.priority{padding:3px 7px;border-radius:7px}.priority.low{color:#39745f;background:#edf8f3}.priority.normal{color:#6c6255;background:#f4f0e9}.priority.high{color:#a43f4b;background:#fff0f2}.todo-category{padding:3px 7px;border-radius:7px;font-weight:700}.todo-category.work{color:#315f90;background:#edf4fb}.todo-category.life{color:#8a5a32;background:#fbf1e8}.ai-reminder{color:#6d4aa0}.overdue{color:#b14951!important}.row-actions{display:flex;gap:5px;opacity:.55;transition:.16s}li:hover .row-actions{opacity:1}.empty-list{min-height:240px;padding:30px;color:#87827b}.empty-list.compact{min-height:130px}.empty-list h3{color:#3f3b36;font-size:15px}.health-controls{display:flex;flex-direction:column;gap:13px}.date-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.date-nav,.date-actions{display:flex;align-items:center;gap:7px}.date-nav input{width:142px}.week-strip{display:grid;grid-template-columns:repeat(9,minmax(78px,1fr));gap:7px;overflow-x:auto;padding-bottom:3px}.week-strip button{display:flex;min-width:78px;min-height:78px;flex-direction:column;align-items:flex-start;justify-content:center;padding:9px 11px;border:1px solid #e6e3dd;border-radius:12px;background:#fff;cursor:pointer}.week-strip span,.week-strip small{color:#827d75;font-size:10px}.week-strip strong{margin:3px 0;font-size:14px}.week-strip small{white-space:nowrap}.week-strip button.active{color:#fff;border-color:#191918;background:#191918;box-shadow:0 8px 20px #0000001f}.week-strip button.active span,.week-strip button.active small{color:#ffffffad}.static-card{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.static-card div{display:flex;flex-direction:column;gap:4px}.static-card span{color:#57534e;font-size:12px}.static-card strong{font-size:27px;letter-spacing:-.04em}.static-card small{color:#8a857e;font-size:10px}.metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.metric-card{display:flex;min-height:142px;flex-direction:column;align-items:flex-start;justify-content:center;padding:20px;border:1px solid rgba(0,0,0,.055);border-radius:19px;background:#fff;text-align:left}button.metric-card{cursor:pointer}button.metric-card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.metric-card svg{width:34px;height:34px;margin-bottom:15px;padding:8px;border-radius:12px;background:#ffffffad}.metric-card span{color:#716d67;font-size:12px}.metric-card strong{margin-top:4px;font-size:24px;letter-spacing:-.035em}.metric-card.pink{background:#fdebf3}.metric-card.pink svg{color:#b85074}.metric-card.green{background:#e8f8f2}.metric-card.green svg{color:#287f69}.metric-card.purple{background:#f0edff}.metric-card.purple svg{color:#6a61bb}.metric-card.blue{background:#eaf2ff}.metric-card.blue svg{color:#3e7ac3}.static-card-actions{display:flex;gap:8px}.metric-card small{color:#8a857e;font-size:10px;margin-top:4px}.form-hint{color:#8a857e;font-size:12px;line-height:1.5;margin:0}.macro-totals-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.macro-totals-grid>div{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:12px;background:#faf8f4}.macro-totals-grid span{color:#716d67;font-size:11px}.macro-totals-grid strong{font-size:20px;letter-spacing:-.03em}.macro-totals-grid strong.over-limit{color:#b84e70}.macro-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.item-macros{display:block;margin-top:3px;color:#8a857e;font-size:10px}.chart-panel{padding-bottom:12px}.chart-wrap{width:100%;height:310px}.detail-panel{padding-bottom:4px}.detail-list li{display:flex;align-items:center;gap:12px;min-height:62px;padding:10px 0;border-top:1px solid #eeece7}.detail-icon{display:grid;width:34px;height:34px;place-items:center;border-radius:11px}.detail-icon.intake{color:#b84e70;background:#fdebf2}.detail-icon.exercise{color:#2d806b;background:#e9f8f3}.detail-list li>div:nth-child(2){min-width:0;flex:1}.detail-list strong,.detail-list span{display:block}.detail-list strong{font-size:13px}.detail-list span{margin-top:3px;color:var(--muted);font-size:10px}.detail-list b{font-size:12px}.detail-list b.intake{color:#b84e70}.detail-list b.exercise{color:#2d806b}.ai-source-badge{display:inline-flex;margin-left:7px;padding:2px 6px;color:#6452b1;border-radius:6px;background:#efebff;font-size:9px;font-style:normal;font-weight:700}.health-mode-tabs{display:flex;align-items:center;justify-content:space-between;padding:10px 12px}.health-mode-tabs p{margin:0 4px;color:var(--muted);font-size:11px}.body-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.training-section-meta{margin:12px 0 0;color:#77746f;font-size:12px}.training-analysis{margin-top:14px}.training-session-list{margin-top:16px}.training-session{margin-bottom:14px}.training-session>h3{margin:0 0 8px;font-size:14px}.training-session>p{margin:0 0 8px;color:#8a857e;font-size:11px}.training-location{margin-left:8px;padding:2px 7px;border-radius:6px;font-size:10px;font-weight:600}.training-location.home{color:#3e7ac3;background:#eaf2ff}.training-location.gym{color:#287f69;background:#e8f8f2}.training-item-list{display:flex;flex-direction:column;gap:8px}.training-item-row{display:flex;min-width:0;align-items:center;gap:10px;padding:8px 12px;border:1px solid #eeece7;border-radius:10px;background:#f8f7f4}.training-item-row.executable{padding:10px 14px;border-radius:12px;background:#fff}.training-item-row.executable.executed{border-color:#c8e7dd;background:#f1fbf8}.training-progress-badge{margin-left:8px;padding:2px 8px;border-radius:999px;background:#efece6;color:#78756f;font-size:10px;font-weight:400;vertical-align:middle}.training-progress-badge.done{background:#c8e7dd;color:#1d7a5f}.training-done-flag{flex-shrink:0;font-size:10px;color:#b0aca4;font-weight:500;white-space:nowrap}.training-done-flag.done{color:#1d7a5f}.training-item-row.executable.as-button{width:100%;text-align:left;cursor:pointer;font:inherit}.training-item-row.executable.done-row{opacity:.62}.record-hint{align-self:center;gap:4px;display:inline-flex;align-items:center;white-space:nowrap}.exercise-guide-panel{display:flex;flex-direction:column;gap:8px;padding:10px 12px;border:1px solid #eeece7;border-radius:10px;background:#f8f7f4}.exercise-guide-panel .guide-block strong{display:block;margin-bottom:2px;font-size:11px;color:#78756f}.exercise-guide-panel .guide-block p{margin:0;font-size:12px;line-height:1.55;color:#44413c}.guide-draft-card{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border:1px solid #eeece7;border-radius:10px;background:#fff}.training-item-index{display:grid;width:28px;height:28px;flex:0 0 auto;place-items:center;border-radius:8px;font-size:12px;font-weight:700}.training-item-index.large{width:34px;height:34px;border-radius:10px;font-size:13px}.training-item-index.large.home{color:#3e7ac3;background:#eaf2ff}.training-item-index.large.gym{color:#287f69;background:#e8f8f2}.training-item-main{min-width:0;flex:1}.training-item-main>strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.training-item-main>span{display:block;color:#888;font-size:10px}.training-item-notes{max-width:150px;overflow:hidden;color:#aaa;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.training-empty{margin-top:16px}.training-chart.primary-chart{height:220px}.training-progression{margin-top:20px}.training-progression-item{margin-bottom:12px}.training-progression-item>strong{font-size:12px}.training-chart.progression-chart{height:120px;margin-top:4px}.training-header-actions{display:flex;gap:8px}.training-import-summary{flex-direction:column;align-items:flex-start;gap:4px;margin-bottom:12px}.training-filter{margin-bottom:8px}.training-exercise-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:8px}.training-item-row.exercise-card{padding:9px 12px;background:#fff}.training-item-row.exercise-card .training-item-index{font-size:11px}.training-goal-list{display:flex;flex-direction:column;gap:10px}.training-goal-card{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid #eeece7;border-radius:14px;background:#fafaf8}.training-goal-card.active{border-color:#dcd5fa;background:#f8f6ff}.training-goal-card>svg.active{color:#756bd3}.training-goal-card>svg:not(.active){color:#ccc}.training-goal-card>div{min-width:0;flex:1}.training-goal-card>div>strong{font-size:14px}.training-goal-card>div>div{display:flex;gap:16px;margin-top:4px;color:#666;font-size:12px}.training-goal-card>div>span{color:#999;font-size:10px}.training-equipment-summary{margin-bottom:12px}.training-equipment-list{display:flex;flex-direction:column;gap:8px}.training-item-row.equipment-card{padding:10px 14px;border-radius:12px;background:#fff}.training-generated-list{display:flex;max-height:320px;flex-direction:column;gap:6px;overflow:auto}.training-generated-list label{justify-content:flex-start;gap:10px}.training-generated-list label>span{min-width:0;flex:1}.training-generated-list strong{font-size:12px}.training-generated-list em{display:block;color:#888;font-size:10px;font-style:normal}.training-generated-notes{margin:0;color:#888;font-size:11px}.training-execution-title{margin:0;color:#666;font-size:13px}.execution-set-list{display:flex;flex-direction:column;gap:6px}.execution-set-row{display:grid;grid-template-columns:28px minmax(0,1fr) minmax(0,1fr) 34px;align-items:center;gap:8px}.execution-set-row>span{color:#888;font-size:11px;text-align:center}.execution-set-row>label{margin:0}.body-empty{display:flex;min-height:330px;flex-direction:column;align-items:center;justify-content:center;text-align:center}.body-empty>svg{width:45px;height:45px;padding:11px;color:#368a75;border-radius:15px;background:#e8f7f2}.body-empty h2{margin:15px 0 5px;font-size:18px}.body-empty p{margin:0;color:var(--muted);font-size:12px}.body-empty>div{display:flex;gap:8px;margin-top:17px}.body-overview-grid{display:grid;grid-template-columns:1.15fr repeat(3,1fr);gap:11px}.body-score-card,.body-primary-card{min-height:176px;border:1px solid rgba(0,0,0,.055);border-radius:19px;box-shadow:var(--shadow)}.body-score-card{display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#35ad9e,#238d82)}.score-ring{display:flex;width:142px;height:142px;flex-direction:column;align-items:center;justify-content:center;border:2px solid rgba(255,255,255,.6);border-radius:50%;box-shadow:0 0 0 10px #ffffff17}.score-ring span{font-size:10px;opacity:.75}.score-ring strong{margin:2px 0;font-size:52px;line-height:1;letter-spacing:-.06em}.score-ring small{font-size:9px;opacity:.72}.body-primary-card{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:19px;background:#fff}.body-primary-card>svg{width:35px;height:35px;margin-bottom:13px;padding:8px;color:#3e8573;border-radius:11px;background:#e9f7f3}.body-primary-card>span{color:var(--muted);font-size:10px}.body-primary-card>strong{margin:4px 0;font-size:20px;letter-spacing:-.035em}.body-primary-card>small{color:var(--muted);font-size:9px}.body-status{display:inline-flex;width:fit-content;margin-top:5px;padding:3px 7px;border-radius:7px;font-size:9px}.body-status.normal{color:#28725f;background:#e3f5ef}.body-status.warning{color:#996c22;background:#fff0c9}.body-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.body-metric-item{display:flex;min-height:100px;flex-direction:column;align-items:flex-start;justify-content:center;padding:13px;border:1px solid #eae7e1;border-radius:13px;background:#fbfbfa}.body-metric-item>span{color:var(--muted);font-size:10px}.body-metric-item>strong{margin-top:5px;font-size:14px;line-height:1.35}.body-notes{margin-top:12px;padding:12px;border-radius:11px;background:#f5f3ef}.body-notes strong{font-size:10px}.body-notes p{margin:4px 0 0;color:var(--muted);font-size:11px;line-height:1.55}.body-chart{height:280px}.body-history ul{margin:0;padding:0;list-style:none}.body-history li{display:flex;min-height:59px;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #eeece7}.body-history li>div:first-child{min-width:0}.body-history li strong,.body-history li span{display:block}.body-history li strong{margin-bottom:4px;font-size:12px}.body-history li span{color:var(--muted);font-size:10px}.health-disclaimer{margin:-3px 5px 8px;color:#8a857e;font-size:9px;text-align:center}.settings-section{padding:21px}.app-settings-list{display:flex;flex-direction:column;gap:9px}.app-setting-row{display:grid;grid-template-columns:auto auto minmax(170px,1fr) auto auto;align-items:center;gap:12px;padding:12px;border:1px solid #e8e5df;border-radius:14px;background:#fbfbfa}.app-setting-row.dragging{opacity:.45}.drag-handle{color:#aaa69f;cursor:grab}.app-setting-icon{display:grid;width:38px;height:38px;place-items:center;border-radius:12px}.app-setting-icon.todo{color:#5c69b7;background:#eef0ff}.app-setting-icon.health{color:#28806a;background:#e8f8f2}.app-setting-icon.storage{color:#9a6729;background:#fff2dd}.app-setting-row label:not(.switch){display:flex;align-items:center;gap:12px}.app-setting-row label>span{min-width:56px;color:var(--muted);font-size:10px}.order-buttons{display:flex;gap:4px}.switch{display:flex;align-items:center;gap:7px;cursor:pointer}.switch input{position:absolute;width:1px;opacity:0}.switch span{position:relative;width:37px;height:22px;border-radius:12px;background:#d8d5d0;transition:.2s}.switch span:after{position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 2px 5px #00000029;content:"";transition:.2s}.switch input:checked+span{background:#2d8d73}.switch input:checked+span:after{transform:translate(15px)}.switch b{min-width:42px;color:#68635d;font-size:10px}.settings-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}.ai-provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.ai-provider-card{padding:16px;border:1px solid #e7e3dc;border-radius:16px;background:#fbfbfa}.ai-provider-card>header{display:flex;align-items:center;gap:11px;margin-bottom:16px}.provider-icon{display:grid;width:40px;height:40px;flex:0 0 auto;place-items:center;border-radius:12px}.provider-icon.deepseek{color:#4e5da7;background:#eaeefe}.provider-icon.volcengine{color:#7a4daa;background:#f1e9fb}.ai-provider-card header>div:nth-child(2){min-width:0;flex:1}.ai-provider-card h3{margin:0 0 3px;font-size:14px}.ai-provider-card header span{color:var(--muted);font-size:10px}.ai-provider-card header>b{padding:4px 7px;color:#817d77;border-radius:8px;background:#eeece8;font-size:9px}.ai-provider-card header>b.configured{color:#28725f;background:#e4f5ef}.compact-form{gap:10px}.compact-form label{gap:5px;font-size:10px}.provider-actions{display:flex;align-items:center;gap:7px;margin-top:14px}.provider-actions .icon-button{margin-left:auto}.credential-note{margin:13px 0 0;color:var(--muted);font-size:10px;line-height:1.6}.env-credential-note{display:block;margin-top:-4px;color:#8a6d1f;font-size:9px;line-height:1.5}.agent-access-panel .section-title>svg{color:#5f55ad}.agent-create-grid{display:grid;grid-template-columns:1.2fr 1fr .7fr auto;align-items:end;gap:9px}.agent-create-grid label{display:flex;flex-direction:column;gap:5px;color:#5f5b55;font-size:10px;font-weight:650}.agent-token-reveal{display:flex;flex-direction:column;gap:10px;margin-top:15px;padding:14px;color:#4d456f;border:1px solid #d9d1f4;border-radius:14px;background:#f5f2ff}.agent-token-reveal>div:first-child{display:flex;align-items:center;gap:9px}.agent-token-reveal>div:first-child svg{flex:0 0 auto}.agent-token-reveal strong,.agent-token-reveal span{display:block}.agent-token-reveal strong{font-size:12px}.agent-token-reveal span,.agent-token-reveal small{margin-top:2px;color:#746d89;font-size:9px}.agent-token-reveal>label{display:flex;flex-direction:column;gap:5px;color:#6d6681;font-size:9px;font-weight:700}.agent-token-reveal code{display:block;overflow-x:auto;padding:10px;color:#25222d;border-radius:9px;background:#fff;font-size:11px;font-weight:400;-webkit-user-select:all;user-select:all;white-space:nowrap}.agent-token-reveal>div:nth-of-type(2){display:flex;gap:7px}.agent-subsection{margin-top:20px}.agent-subsection>h3,.agent-audit-title h3{margin:0 0 10px;font-size:13px}.agent-empty{margin:0;padding:18px;color:var(--muted);border:1px dashed #ddd9d2;border-radius:11px;font-size:10px;text-align:center}.agent-token-list{display:flex;flex-direction:column;gap:8px}.agent-token-list article{display:grid;grid-template-columns:minmax(170px,1fr) minmax(220px,auto) auto;align-items:center;gap:12px;padding:12px;border:1px solid #e7e4de;border-radius:12px;background:#fbfbfa}.agent-token-list article.inactive{opacity:.58}.agent-token-list strong,.agent-token-list span,.agent-token-list small{display:block}.agent-token-list strong{font-size:12px}.agent-token-list span,.agent-token-list small{margin-top:3px;color:var(--muted);font-size:9px}.agent-permissions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px}.agent-permissions b{padding:4px 7px;color:#3e715f;border-radius:7px;background:#e8f6f1;font-size:8px}.revoked-label{font-weight:700}.agent-audit-title{display:flex;align-items:center;justify-content:space-between}.agent-audit-list{max-height:260px;overflow:auto;border:1px solid #e8e5df;border-radius:12px}.agent-audit-list>div{display:grid;grid-template-columns:44px 90px 120px 1fr;align-items:center;gap:8px;min-height:42px;padding:7px 10px;border-bottom:1px solid #eeece7}.agent-audit-list>div:last-child{border-bottom:0}.agent-audit-list span{padding:3px 6px;border-radius:6px;font-size:8px;text-align:center}.agent-audit-list span.success{color:#28725f;background:#e6f5ef}.agent-audit-list span.failed{color:#a43f4b;background:#fff0f2}.agent-audit-list strong,.agent-audit-list b{font-size:9px}.agent-audit-list b{color:#6d6861}.agent-audit-list small{color:var(--muted);font-size:9px;text-align:right}.security-card{display:flex;flex-direction:column;align-items:flex-start}.notes-workspace{display:grid;min-height:calc(100vh - 78px);grid-template-columns:220px 270px minmax(0,1fr);overflow:hidden;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:var(--shadow)}.notes-folders,.notes-list-pane{border-right:1px solid var(--line);background:#fbfbfa}.notes-folders{display:flex;min-width:0;flex-direction:column;padding:16px 11px 12px}.notes-pane-header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 4px 15px}.notes-pane-header h1{margin:3px 0 0;font-size:21px;letter-spacing:-.04em}.notes-tree{flex:1;overflow:auto}.notes-folder-row{display:flex;width:100%;min-height:35px;align-items:center;gap:6px;overflow:hidden;color:#5a5650;border:0;border-radius:9px;background:transparent;cursor:pointer;font-size:12px;text-align:left}.notes-folder-row:hover{background:#f0efeb}.notes-folder-row.active{color:#1e1d1a;background:#e8f2ef;font-weight:700}.notes-folder-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notes-hint{padding:8px;color:var(--muted);font-size:11px;line-height:1.5}.notes-trash-link{display:flex;min-height:35px;align-items:center;gap:7px;padding:0 9px;color:#746f68;border:0;border-radius:9px;background:transparent;cursor:pointer;font-size:12px}.notes-trash-link:hover{background:#f0efeb}.notes-list-pane{min-width:0}.notes-list-toolbar{display:flex;flex-direction:column;gap:9px;padding:13px;border-bottom:1px solid var(--line)}.notes-list-toolbar label{display:flex;align-items:center;gap:7px;padding:0 9px;color:#8a857e;border:1px solid #e5e2dc;border-radius:10px;background:#fff}.notes-list-toolbar input{min-width:0;height:35px;min-height:35px;padding:0;border:0;box-shadow:none}.notes-list-toolbar .button{width:100%}.notes-folder-actions{display:flex;gap:4px}.notes-trash-caption{color:#857f77;font-size:10px;text-align:center}.notes-list{overflow:auto}.notes-list>button{display:flex;width:100%;min-height:86px;flex-direction:column;align-items:flex-start;gap:5px;padding:14px;border:0;border-bottom:1px solid #efede8;background:transparent;cursor:pointer;text-align:left}.notes-list>button:hover,.notes-list>button.active{background:#f5f4f0}.notes-list>button.active{box-shadow:inset 3px 0 #317d69}.notes-list strong,.notes-list span,.notes-list small{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notes-list strong{font-size:13px}.notes-list span{color:#77726b;font-size:11px}.notes-list small{color:#9a958e;font-size:9px}.notes-editor-pane{position:relative;display:flex;min-width:0;flex-direction:column;padding:20px;background:#fff}.notes-editor-header{display:flex;align-items:center;gap:12px;border-bottom:1px solid #eeece7;padding-bottom:13px}.notes-title{min-width:0;min-height:42px;flex:1;padding:0;border:0;border-radius:0;font-size:24px;font-weight:750;letter-spacing:-.04em;box-shadow:none}.notes-editor-header>div{display:flex;align-items:center;gap:7px}.notes-save-status{min-width:49px;color:#7e7972;font-size:10px;text-align:right}.notes-save-status.saving{color:#7761a8}.notes-save-status.failed{color:#b7474d}.notes-tags{display:flex;align-items:center;gap:8px;padding:11px 0;color:#706b64;font-size:11px;font-weight:700}.notes-tags input{min-height:31px;padding:0 8px;border-color:#ebe9e5;font-size:11px;font-weight:400}.notes-rich-editor{min-height:0;flex:1;overflow:auto}.notes-source-editor{width:100%;min-height:420px;flex:1;border-color:#e7e3dc;border-radius:12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;line-height:1.7}.notes-empty-editor{flex:1}.notes-error{position:absolute;right:20px;bottom:18px;left:20px}.notes-ai-panel{display:flex;flex-direction:column;gap:9px;margin:0 0 12px;padding:12px;border:1px solid #ddd6f7;border-radius:13px;background:#faf9ff}.notes-ai-panel label{display:flex;flex-direction:column;gap:5px;color:#60587a;font-size:11px;font-weight:700}.notes-ai-panel textarea{min-height:64px;border-color:#e4dff5;font-size:12px}.notes-ai-panel>div{display:flex;align-items:center;justify-content:space-between;gap:10px}.notes-ai-panel small{color:#777086;font-size:10px;line-height:1.45}.notes-ai-proposal{padding-top:4px}.notes-ai-proposal.stale{opacity:.65}.notes-ai-proposal header strong,.notes-ai-proposal header span{display:block}.notes-ai-proposal header strong{color:#433c60;font-size:12px}.notes-ai-proposal header span{margin-top:2px;color:#827b91;font-size:9px}.notes-ai-diff{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:9px}.notes-ai-diff pre{min-height:54px;max-height:150px;overflow:auto;margin:0;padding:8px;color:#554f62;border:1px solid #e5e0f2;border-radius:8px;background:#fff;font:10px/1.55 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre-wrap}.notes-ai-proposal p{margin:8px 0;color:#5e5870;font-size:10px}.notes-ai-actions{display:flex;gap:7px}.notes-trash-tags{margin:0 0 10px;color:#6f6a62;font-size:11px}.notes-trash-body{flex:1;overflow:auto;margin:0;padding:14px;border:1px solid #ece9e3;border-radius:12px;background:#fbfbfa;font:13px/1.7 ui-monospace,SFMono-Regular,Menlo,monospace;white-space:pre-wrap}.app-setting-icon.notes{color:#6b56ae;background:#f0ecff}@media (max-width: 900px){.notes-workspace{grid-template-columns:175px minmax(220px,1fr)}.notes-editor-pane{grid-column:1 / -1;min-height:560px;border-top:1px solid var(--line)}.notes-folders{min-height:360px}.notes-list-pane{border-right:0}}@media (max-width: 620px){.notes-workspace{display:flex;flex-direction:column;min-height:0}.notes-folders{min-height:150px;max-height:230px;border-right:0;border-bottom:1px solid var(--line)}.notes-list-pane{border-bottom:1px solid var(--line)}.notes-editor-pane{min-height:520px;padding:14px}.notes-editor-header{align-items:flex-start;flex-direction:column}.notes-editor-header>div{width:100%;justify-content:flex-end}.notes-title{width:100%}.notes-save-status{margin-right:auto;text-align:left}}.security-mark{display:grid;width:48px;height:48px;place-items:center;color:#287e69;border-radius:15px;background:#e7f7f1}.security-card h2{margin:20px 0 7px;font-size:17px}.security-card p{margin:0;color:var(--muted);font-size:12px;line-height:1.65}.security-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:28px}.modal-backdrop{position:fixed;z-index:100;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:20px;background:#1f1e1c59;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.modal{width:min(100%,460px);max-height:calc(100vh - 40px);overflow:auto;padding:20px;border:1px solid rgba(255,255,255,.72);border-radius:20px;background:#fff;box-shadow:0 30px 90px #14141240}.modal>header{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.modal h2{margin:0;font-size:18px}.modal.ai-food-modal{width:min(100%,880px)}.ai-food-mode-tabs{margin:-4px 0 16px;padding-bottom:14px;border-bottom:1px solid #ece9e4}.modal.body-composition-modal{width:min(100%,920px)}.body-upload-row{display:grid;grid-template-columns:280px 1fr;align-items:end;gap:15px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #ece9e4}.body-upload-row .image-dropzone,.body-upload-row .image-dropzone img{min-height:180px;height:180px}.body-upload-row .image-dropzone img{object-fit:contain}.body-upload-row>div .button{width:100%}.body-ai-empty{display:flex;min-height:185px;flex-direction:column;align-items:center;justify-content:center;gap:7px;color:#867f91;border:1px solid #ece9e4;border-radius:14px;background:#fbfbfa;text-align:center}.body-ai-empty svg{color:#8070c1}.body-ai-empty strong{color:#45413e;font-size:13px}.body-ai-empty span{max-width:480px;font-size:10px;line-height:1.6}.body-draft-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.body-draft-heading>div{display:flex;flex-direction:column;gap:3px}.body-draft-heading strong{font-size:11px}.body-draft-heading span{color:var(--muted);font-size:10px}.body-draft-heading>b{padding:4px 8px;color:#6354ab;border-radius:7px;background:#efebff;font-size:9px}.body-input-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.body-input-grid>label,.body-text-grid>label{display:flex;min-width:0;flex-direction:column;gap:5px;color:#5f5b55;font-size:10px;font-weight:650}.body-input-grid small{min-height:11px;color:var(--muted);font-size:8px;font-weight:400}.unit-input{position:relative}.unit-input input{padding-right:39px}.unit-input span{position:absolute;top:14px;right:9px;color:var(--muted);font-size:8px;font-weight:500}.body-text-grid{display:grid;grid-template-columns:1fr 2fr;gap:10px;margin-top:10px}.recognized-statuses{margin-top:12px;padding:11px;border-radius:11px;background:#f5f3ef}.recognized-statuses>strong{display:block;margin-bottom:7px;font-size:9px}.recognized-statuses>div{display:flex;flex-wrap:wrap;gap:5px}.recognized-statuses span{padding:4px 7px;color:#765d2d;border-radius:7px;background:#fff0c9;font-size:8px}.body-modal-error{margin-top:12px}.ai-food-layout{display:grid;grid-template-columns:minmax(230px,.78fr) minmax(0,1.4fr);gap:18px}.ai-upload-column,.ai-draft-column{min-width:0}.image-dropzone{position:relative;display:flex;min-height:245px;flex-direction:column;align-items:center;justify-content:center;gap:9px;overflow:hidden;padding:18px;color:#6d65a0;border:1px dashed #cfc7ec;border-radius:16px;background:#f7f5ff;text-align:center;cursor:pointer}.image-dropzone:hover{border-color:#a99cda;background:#f2efff}.image-dropzone>svg{width:34px;height:34px}.image-dropzone strong{color:#3e3a54;font-size:13px}.image-dropzone span{color:#827d91;font-size:10px}.image-dropzone input{position:absolute;width:1px;height:1px;opacity:0}.image-dropzone.has-image{padding:0;border-style:solid;background:#ece9e4}.image-dropzone img{width:100%;height:245px;object-fit:cover}.food-description-field{display:flex;min-height:245px;flex-direction:column;padding:16px;border:1px solid #d8d1ef;border-radius:16px;background:linear-gradient(145deg,#faf9ff,#f5f2ff)}.food-description-field>span{margin-bottom:9px;color:#4f476d;font-size:11px;font-weight:750}.food-description-field textarea{min-height:170px;flex:1;resize:vertical;border-color:#d8d1eb;background:#ffffffdb;font-size:13px;line-height:1.65}.food-description-field small{margin-top:8px;color:#817b91;font-size:9px;text-align:right}.meal-select{display:flex;align-items:center;gap:10px;margin:12px 0;color:#5f5b55;font-size:11px;font-weight:650}.meal-select select{flex:1}.ai-upload-column>.button{width:100%}.privacy-note{display:flex;align-items:flex-start;gap:6px;margin:11px 0 0;color:var(--muted);font-size:9px;line-height:1.5}.privacy-note svg{flex:0 0 auto}.ai-draft-column{display:flex;min-height:340px;flex-direction:column}.ai-draft-empty{display:flex;min-height:320px;flex-direction:column;align-items:center;justify-content:center;padding:30px;color:#8d8795;border:1px solid #ece9e4;border-radius:16px;background:#fcfcfb;text-align:center}.ai-draft-empty svg{width:30px;height:30px;color:#8c7bcf}.ai-draft-empty h3{margin:12px 0 5px;color:#44413e;font-size:14px}.ai-draft-empty p{max-width:300px;margin:0;font-size:11px;line-height:1.6}.ai-draft-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.ai-draft-header h3{margin:0 0 3px;font-size:15px}.ai-draft-header span{color:var(--muted);font-size:10px}.ai-draft-list{display:flex;max-height:330px;flex-direction:column;gap:8px;overflow:auto;padding-right:3px}.ai-draft-row{padding:10px;border:1px solid #e9e6e0;border-radius:13px;background:#fbfbfa}.draft-fields{display:grid;grid-template-columns:minmax(0,1fr) 115px;gap:8px}.draft-fields label{position:relative}.draft-fields label input{padding-right:38px}.draft-fields label span{position:absolute;top:14px;right:9px;color:var(--muted);font-size:9px}.draft-macros{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:7px}.draft-macros label{display:flex;min-width:0;flex-direction:column;gap:3px;color:#716d67;font-size:9px;font-weight:650}.draft-meta{display:flex;align-items:center;gap:7px;margin-top:7px;color:var(--muted);font-size:9px}.draft-meta>span{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.confidence{padding:3px 6px;border-radius:6px;font-size:8px!important}.confidence.high{color:#28725f;background:#e6f5ef}.confidence.medium{color:#8a682e;background:#faf1da}.confidence.low{color:#a34f56;background:#fdebed}.draft-meta .icon-button{width:27px;height:27px}.ai-notes{margin-top:10px;padding:10px;color:#625d55;border-radius:10px;background:#f5f3ef}.ai-notes strong{font-size:9px}.ai-notes p{margin:4px 0 0;font-size:10px;line-height:1.5}.ai-disclaimer{margin:10px 0 0;color:#8a6d39;font-size:9px;line-height:1.55}.ai-draft-column .form-error{margin-top:10px}.ai-modal-actions{padding-top:15px;border-top:1px solid #eeece7}.storage-page{width:min(100%,1180px)}.storage-header-actions{display:flex;gap:8px}.storage-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.storage-metrics article{display:grid;min-height:118px;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-content:center;column-gap:10px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:var(--shadow)}.storage-metrics svg{grid-row:1 / 3;width:37px;height:37px;padding:9px;color:#99682f;border-radius:12px;background:#fff0d8}.storage-metrics span{align-self:end;color:var(--muted);font-size:10px}.storage-metrics strong{overflow:hidden;align-self:start;margin-top:3px;font-size:20px;letter-spacing:-.035em;text-overflow:ellipsis;white-space:nowrap}.storage-metrics article.warning svg{color:#a94149;background:#fff0f2}.storage-controls{display:flex;flex-direction:column;gap:13px}.storage-filter-grid{display:grid;grid-template-columns:minmax(180px,1fr) 180px 180px auto;gap:8px}.search-field{position:relative}.search-field svg{position:absolute;z-index:1;top:13px;left:11px;color:var(--muted)}.search-field input{padding-left:33px}.tag-filter,.known-tags{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.tag-filter>svg{margin-right:2px;color:var(--muted)}.tag-filter button,.known-tags button{min-height:28px;padding:0 9px;color:#6d675f;border:1px solid #e3dfd8;border-radius:9px;background:#faf9f7;cursor:pointer;font-size:10px}.tag-filter button.active{color:#fff;border-color:#8d642e;background:#9a6c31}.storage-list-panel{padding-bottom:6px}.storage-list{display:flex;flex-direction:column}.storage-list>article{display:flex;min-height:84px;align-items:center;gap:13px;padding:12px 0;border-top:1px solid #eeece7}.storage-kind{display:grid;width:40px;height:40px;flex:0 0 auto;place-items:center;border-radius:13px}.storage-kind.physical{color:#9a6729;background:#fff0d8}.storage-kind.subscription{color:#6a58ae;background:#efebff}.storage-kind.digital{color:#287f69;background:#e8f7f2}.storage-copy{min-width:0;flex:1}.storage-copy>div:first-child{display:flex;align-items:center;gap:7px}.storage-copy strong{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.storage-copy p{margin:4px 0 6px;color:var(--muted);font-size:10px}.storage-copy>div:last-child{display:flex;flex-wrap:wrap;gap:4px}.storage-copy>div:last-child span{padding:3px 6px;color:#6d665d;border-radius:6px;background:#f2f0ec;font-size:8px}.storage-status{flex:0 0 auto;padding:3px 6px;color:#3e705f;border-radius:7px;background:#e8f6f1;font-size:8px}.storage-status.expired,.storage-status.refunded,.storage-status.unavailable,.storage-status.discarded,.storage-status.lost{color:#a3474e;background:#fff0f2}.storage-status.idle,.storage-status.renewal_cancelled,.storage-status.sold{color:#896522;background:#fff1cf}.storage-money{display:flex;min-width:115px;flex-direction:column;align-items:flex-end}.storage-money strong{font-size:13px}.storage-money span{margin-top:3px;color:var(--muted);font-size:9px}.finance-summary-grid,.investment-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.investment-summary-card{display:flex;flex-direction:column;gap:8px}.investment-summary-card span{color:var(--muted);font-size:12px}.investment-summary-card strong{font-size:22px}.investment-management-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.investment-management-panel{display:grid;gap:12px}.investment-management-list{display:grid;gap:8px}.investment-management-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid #ece9e4}.investment-management-item>div{min-width:0;display:grid;gap:3px}.investment-management-item small{color:var(--muted)}.empty-inline{margin:0;color:var(--muted);font-size:13px}.icon-button{display:inline-grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid #e4ded5;border-radius:8px;background:#fff;color:var(--ink);cursor:pointer}.icon-button:hover{background:#f6f1e9}.investment-holdings{display:grid;gap:12px}.investment-holding-list{display:grid;gap:8px}.investment-holding-list article{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #ece9e4;border-radius:12px}.investment-security-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#eef2fa;color:#3e5f9a}.investment-holding-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.investment-holding-main small,.investment-holding-main span{color:var(--muted)}.investment-holding-main em{color:#247a5a;font-size:11px;font-style:normal}.investment-holding-main em.stale{color:#a66528}.investment-holding-value{min-width:150px;display:flex;flex-direction:column;align-items:flex-end;gap:3px}.investment-holding-value span{color:var(--muted);font-size:12px}.investment-holding-value b{font-size:12px}.investment-preview{margin-top:14px;padding:12px;border-radius:12px;background:#fbf8f2;border:1px dashed #d9cfbd}.finance-summary-card{display:flex;flex-direction:column;gap:8px}.finance-summary-card span{color:var(--muted);font-size:12px}.finance-summary-card strong{font-size:22px}.finance-form{display:grid;gap:14px}.finance-account-list,.finance-transaction-list{display:grid;gap:8px}.finance-account-list article,.finance-transaction-list article{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #ece9e4;border-radius:12px}.finance-account-list article>div,.finance-transaction-list article>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.finance-account-list small,.finance-transaction-list small{color:var(--muted)}.finance-account-icon{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#f1efe9}.finance-account-list b,.finance-transaction-list b{white-space:nowrap}.negative{color:#b84c4c}.positive{color:#247a5a}.finance-filters{display:flex;gap:8px}.finance-type{width:42px;padding:5px 7px;border-radius:8px;text-align:center;font-size:11px}.finance-type.expense{background:#fff0ee;color:#a84343}.finance-type.income{background:#eaf7f0;color:#247a5a}.finance-type.transfer{background:#eef2fa;color:#3e5f9a}.file-picker{display:flex;align-items:center;gap:12px}.finance-draft-list,.finance-ai-drafts{display:grid;gap:10px;margin-top:12px}.finance-draft-list article{display:grid;grid-template-columns:72px 90px 110px minmax(150px,1fr) minmax(140px,1fr);gap:8px;align-items:center;padding:10px;border:1px solid #ece9e4;border-radius:10px}.finance-draft-list article small{grid-column:1 / -1;color:#a66528}.finance-draft-list article.skipped{opacity:.65}.finance-draft-list article.failed{border-color:#e8b0b0}.finance-ai-inputs{display:grid;grid-template-columns:1fr 1fr;gap:16px}.finance-ai-inputs>div{display:flex;flex-direction:column;gap:8px}.finance-ai-inputs textarea{min-height:100px}.finance-ai-drafts article{position:relative;padding:12px;border:1px solid #ece9e4;border-radius:12px}.finance-ai-drafts article>.icon-button{position:absolute;top:8px;right:8px}.finance-draft-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding-right:30px}.finance-draft-fields label{display:flex;flex-direction:column;gap:5px;font-size:11px}.finance-storage-link{margin-top:4px;padding:12px;border:1px dashed #d9cfbd;border-radius:10px;background:#fbf8f2}.storage-link-toggle{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:600}.storage-link-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:10px}.storage-link-fields label{display:flex;flex-direction:column;gap:5px;font-size:11px}.storage-link-fields small{grid-column:1 / -1;color:#a66528}.storage-linked-badge{margin-top:4px;color:#8e651f;font-size:11px}.storage-suggesting{color:var(--muted);font-size:12px}.finance-dashboard-values{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.finance-dashboard-values span{display:flex;flex-direction:column;gap:4px;color:var(--muted)}.finance-dashboard-values strong{color:var(--text);font-size:15px}.button.compact{min-height:34px;padding:0 10px;font-size:10px}.storage-stats-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}.storage-distribution h2{margin:0 0 14px;font-size:14px}.storage-distribution>p{color:var(--muted);font-size:11px}.storage-distribution>div{display:grid;grid-template-columns:74px 1fr 24px;align-items:center;gap:8px;min-height:29px}.storage-distribution span{overflow:hidden;color:#625d56;font-size:9px;text-overflow:ellipsis;white-space:nowrap}.storage-distribution i{height:6px;overflow:hidden;border-radius:5px;background:#efede9}.storage-distribution i b{display:block;height:100%;border-radius:inherit;background:#b6874d}.storage-distribution strong{color:var(--muted);font-size:9px;text-align:right}.expiry-panel>div:last-child{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.expiry-panel article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid #e8e4dd;border-radius:12px;background:#fbfbfa}.expiry-panel article strong,.expiry-panel article span{display:block}.expiry-panel article strong{font-size:11px}.expiry-panel article span{margin-top:4px;color:var(--muted);font-size:9px}.expiry-panel article b{padding:4px 7px;color:#8e651f;border-radius:7px;background:#fff0ca;font-size:8px}.expiry-panel article b.expired{color:#a23f48;background:#ffedef}.modal.storage-item-modal{width:min(100%,620px)}.modal.storage-renewal-modal{width:min(100%,700px)}.storage-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.storage-form-grid label,.renewal-form label{display:flex;min-width:0;flex-direction:column;gap:6px;color:#5f5b55;font-size:10px;font-weight:650}.wide-field{grid-column:1 / -1}.known-tags{padding:10px;border-radius:11px;background:#f7f5f1}.known-tags>span{margin-right:3px;color:var(--muted);font-size:9px}.form-hint{margin:0;color:var(--muted);font-size:9px}.renewal-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.renewal-heading strong,.renewal-heading span{display:block}.renewal-heading strong{font-size:13px}.renewal-heading span{margin-top:3px;color:var(--muted);font-size:9px}.renewal-list{border:1px solid #e8e4de;border-radius:13px}.renewal-list article{display:flex;min-height:60px;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid #ece9e4}.renewal-list article:last-child{border-bottom:0}.renewal-list strong,.renewal-list span{display:block}.renewal-list strong{font-size:12px}.renewal-list span{margin-top:3px;color:var(--muted);font-size:9px}.renewal-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.modal.ai-storage-modal{width:min(100%,1040px)}.ai-storage-layout{display:grid;grid-template-columns:minmax(250px,.65fr) minmax(0,1.6fr);gap:18px}.ai-storage-layout .ai-upload-column{display:flex;flex-direction:column;gap:11px}.ai-storage-draft{display:flex;min-width:0;min-height:360px;flex-direction:column}.storage-ai-list{display:flex;max-height:520px;flex-direction:column;gap:9px;overflow:auto;padding-right:4px}.storage-ai-list article{padding:11px;border:1px solid #e7e3dc;border-radius:14px;background:#fbfbfa}.storage-ai-list article>header{display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:8px;margin-bottom:9px}.storage-ai-list article>header select{min-height:34px}.storage-ai-list article>header .confidence{justify-self:start}.storage-ai-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.storage-ai-fields label{display:flex;min-width:0;flex-direction:column;gap:4px;color:#625d56;font-size:9px;font-weight:650}.storage-ai-fields input,.storage-ai-fields select{min-height:36px;font-size:11px}@media (max-width: 900px){body{background:var(--bg)}.shell{display:block;min-height:100vh;min-height:100dvh;margin:0;border:0;border-radius:0;box-shadow:none}.desktop-sidebar{display:none}.mobile-header{position:sticky;z-index:30;top:0;display:flex;height:calc(58px + var(--safe-area-top));min-height:calc(58px + var(--safe-area-top));align-items:center;gap:12px;padding:var(--safe-area-top) calc(14px + var(--safe-area-right)) 0 calc(14px + var(--safe-area-left));border-bottom:1px solid var(--line);background:#fafaf8f0;box-shadow:0 3px 14px #2a27220a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-drawer{position:fixed;z-index:60;top:0;bottom:0;left:0;display:flex;width:min(84vw,290px);padding-top:calc(22px + var(--safe-area-top));padding-right:calc(16px + var(--safe-area-right));padding-bottom:calc(16px + var(--safe-area-bottom));padding-left:calc(16px + var(--safe-area-left));border-right:1px solid var(--line);box-shadow:20px 0 60px #1e1e1c29;transform:translate(-105%);transition:transform .23s ease}.mobile-drawer.open{transform:translate(0)}.drawer-close{position:absolute;z-index:2;top:calc(14px + var(--safe-area-top));right:12px}.drawer-backdrop{position:fixed;z-index:50;top:0;right:0;bottom:0;left:0;display:block;background:#201f1d4d}.content{height:auto;min-height:calc(100vh - 58px - var(--safe-area-top));min-height:calc(100dvh - 58px - var(--safe-area-top));padding:14px calc(14px + var(--safe-area-right)) calc(14px + var(--safe-area-bottom)) calc(14px + var(--safe-area-left));overflow-x:hidden}.quick-add{grid-template-columns:1fr 1fr}.quick-add .title-input{grid-column:1 / -1}.date-toolbar{align-items:flex-start;flex-direction:column}.date-actions{width:100%}.date-actions .button{flex:1}.week-strip{grid-template-columns:repeat(9,82px)}.settings-grid,.ai-provider-grid{grid-template-columns:1fr}.agent-create-grid{grid-template-columns:1fr 1fr}.agent-create-grid .button{min-height:40px}.body-overview-grid{grid-template-columns:repeat(2,1fr)}.body-metric-grid,.body-input-grid{grid-template-columns:repeat(3,1fr)}.storage-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.storage-filter-grid{grid-template-columns:1fr 1fr}.storage-stats-grid,.ai-storage-layout{grid-template-columns:1fr}.ai-storage-layout .image-dropzone,.ai-storage-layout .image-dropzone img{min-height:210px;height:210px}.training-page .health-mode-tabs{align-items:flex-start;flex-direction:column;gap:8px}.training-page .health-mode-tabs .segmented{width:100%;overflow-x:auto;padding-bottom:3px}.training-page .health-mode-tabs .segmented button{flex:0 0 auto}.training-page .health-mode-tabs p{max-width:100%}.training-item-notes{display:none}.training-item-main>span{white-space:normal}.training-exercise-grid{grid-template-columns:1fr}.training-header-actions{flex-direction:column;width:100%}.training-header-actions .button{width:100%}.training-progression{margin-top:16px}}@media (max-width: 600px){.content{padding:10px calc(10px + var(--safe-area-right)) calc(10px + var(--safe-area-bottom)) calc(10px + var(--safe-area-left))}.page{gap:11px}.page-header{min-height:0;align-items:stretch;flex-direction:column;gap:12px;padding:17px;border-radius:16px}.page-header>div,.section-title>div{min-width:0}.page-header h1{font-size:25px}.page-header p{max-width:none}.page-header .button,.page-header .header-actions{width:100%}.page-header .header-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.page-header .header-actions .button{width:100%}.page-header .header-actions .primary{grid-column:1 / -1}.header-stat{display:none}.panel{padding:13px;border-radius:16px}.quick-add{grid-template-columns:1fr}.quick-add .title-input{grid-column:auto}.quick-add .button{min-height:43px}.todo-schedule{align-items:stretch;flex-direction:column}.todo-schedule-fields{width:100%;grid-template-columns:1fr}.form-hint{align-items:flex-start;flex-direction:column}.panel-toolbar{padding:11px;overflow-x:auto}.todo-list li{padding:12px 10px}.row-actions{opacity:1}.todo-copy>div{gap:5px}.health-controls{padding:10px}.date-nav{width:100%;overflow-x:auto;padding-bottom:3px}.date-nav .button{flex:0 0 auto}.date-nav input{min-width:137px}.metric-grid{grid-template-columns:1fr;gap:9px}.metric-card{min-height:115px;padding:16px}.metric-card svg{margin-bottom:9px}.metric-card strong{font-size:21px}.static-card{align-items:flex-start;flex-direction:column}.static-card .button{width:100%}.chart-wrap{height:260px}.detail-list li{gap:8px}.detail-list .row-actions{gap:2px}.detail-list b{font-size:11px}.section-title{align-items:flex-start;flex-direction:column}.section-title>.button{width:100%}.app-setting-row{grid-template-columns:auto auto 1fr auto;gap:8px}.app-setting-row label:not(.switch){grid-column:2 / -1;align-items:flex-start;flex-direction:column;gap:5px}.order-buttons{grid-column:3}.switch{grid-column:4}.switch b{display:none}.modal{padding:16px}.modal-backdrop{display:flex;align-items:flex-end;padding:0}.modal{width:100%;max-width:100%;max-height:88vh;border-radius:22px 22px 0 0}.ai-food-layout{grid-template-columns:1fr}.image-dropzone,.image-dropzone img{min-height:190px;height:190px}.ai-draft-column{min-height:0}.ai-draft-empty{min-height:190px}.ai-modal-actions .button{flex:1}.segmented{width:100%;overflow-x:auto;padding-bottom:3px;scrollbar-width:thin}.segmented button{flex:0 0 auto}.health-mode-tabs{align-items:flex-start;flex-direction:column;gap:8px}.health-mode-tabs .segmented{width:100%}.health-mode-tabs .segmented button{flex:1}.body-toolbar{align-items:stretch;flex-direction:column}.body-toolbar .date-actions{display:grid;grid-template-columns:1fr 1fr}.body-overview-grid{grid-template-columns:1fr;gap:8px}.body-score-card,.body-primary-card{min-height:125px}.body-score-card{min-height:170px}.body-primary-card{padding:15px}.body-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.body-metric-item{min-height:91px}.body-history li span{max-width:235px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.body-upload-row{grid-template-columns:1fr}.body-upload-row .image-dropzone,.body-upload-row .image-dropzone img{min-height:190px;height:190px}.body-input-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.body-text-grid,.agent-create-grid{grid-template-columns:1fr}.agent-token-reveal>div:nth-of-type(2){flex-direction:column}.agent-token-list article{grid-template-columns:1fr}.agent-permissions{justify-content:flex-start}.agent-token-list article .button{width:100%}.agent-audit-list>div{grid-template-columns:42px 74px 1fr}.agent-audit-list small{grid-column:1 / -1;text-align:left}.storage-page .page-header{align-items:flex-start;flex-direction:column;gap:12px}.storage-page .page-header .button,.storage-header-actions{width:100%}.storage-header-actions{flex-direction:column}.storage-metrics{grid-template-columns:1fr 1fr;gap:7px}.storage-metrics article{min-height:96px;padding:12px}.storage-metrics svg{width:32px;height:32px}.storage-metrics strong{font-size:15px}.storage-controls .segmented{overflow-x:auto}.storage-controls .segmented button{flex:0 0 auto}.storage-filter-grid{grid-template-columns:1fr}.storage-list>article{align-items:flex-start;flex-wrap:wrap}.storage-copy{width:calc(100% - 56px);flex:0 0 calc(100% - 56px)}.storage-money{min-width:0;flex:1;align-items:flex-start;padding-left:53px}.storage-list>article>.row-actions{margin-left:auto}.expiry-panel>div:last-child{grid-template-columns:1fr}.storage-form-grid,.renewal-form{grid-template-columns:1fr}.wide-field{grid-column:auto}.renewal-heading{align-items:stretch;flex-direction:column}.renewal-heading .button{width:100%}.storage-ai-fields{grid-template-columns:1fr 1fr}.storage-ai-fields .wide-field{grid-column:1 / -1}.storage-ai-list{max-height:none}.storage-ai-list article>header{grid-template-columns:1fr auto auto}.training-session{margin-bottom:12px}.training-item-row{align-items:flex-start}.training-item-row,.training-item-row.executable.done-row{flex-wrap:wrap}.training-item-main{width:calc(100% - 50px);flex:0 0 calc(100% - 50px)}.training-item-row>.button{width:100%;margin-left:0;order:1}.training-item-row .row-actions{margin-left:auto}.training-goal-card{align-items:flex-start}.training-goal-card>div>div{flex-wrap:wrap;gap:6px 12px}.training-goal-card .row-actions{margin-left:auto}.execution-set-row{grid-template-columns:34px minmax(0,1fr)}.execution-set-row>label{min-width:0}.execution-set-row>label:nth-of-type(2),.execution-set-row>.icon-button{grid-column:2}.execution-set-row>.icon-button{justify-self:end}.dashboard-header{gap:14px}.dashboard-header .button{min-height:43px}.dashboard-action-grid,.dashboard-side{gap:11px}.action-item{grid-template-columns:38px 28px minmax(0,1fr) auto;grid-template-areas:"group check main priority" "group . main link";align-items:start;gap:5px 8px;padding:12px 10px}.action-group{grid-area:group;flex:0 0 auto;margin-top:5px}.action-check,.action-icon{grid-area:check;margin-top:1px}.action-main{grid-area:main;align-self:start;min-width:0}.action-main strong{display:-webkit-box;overflow:hidden;line-height:1.35;text-overflow:ellipsis;white-space:normal;-webkit-box-orient:vertical;-webkit-line-clamp:2}.action-location{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.action-item .dash-priority{grid-area:priority;align-self:start}.action-item .dash-alert-link{grid-area:link;align-self:end;justify-self:end}.finance-dashboard-values{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.finance-dashboard-values>span{min-width:0;overflow:hidden}.finance-dashboard-values strong{overflow:hidden;font-size:14px;text-overflow:ellipsis;white-space:nowrap}.dash-calorie-summary{gap:6px}.calorie-stat{padding:10px 4px}.calorie-stat strong{max-width:100%;overflow:hidden;font-size:18px;text-overflow:ellipsis;white-space:nowrap}.dash-meals{align-items:flex-start;flex-direction:column;gap:7px}}.ai-call-logs-panel .section-title>svg{color:#5f55ad}.ai-logs-filter-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:9px;margin-bottom:14px}.ai-logs-filter-row label{display:flex;flex-direction:column;gap:5px;color:#5f5b55;font-size:10px;font-weight:650}.ai-logs-filter-row select{padding:8px 10px;border:1px solid #d8d5cf;border-radius:9px;background:#fff;font-size:11px}.ai-call-log-list{display:flex;flex-direction:column;gap:8px}.ai-call-log-row{border:1px solid #e7e4de;border-radius:12px;background:#fbfbfa;overflow:hidden}.ai-call-log-row.expanded{background:#fff}.ai-call-log-head{display:grid;grid-template-columns:auto 44px minmax(110px,1fr) auto auto minmax(120px,1.4fr) minmax(110px,1fr) auto auto;align-items:center;gap:8px;padding:9px 12px}.ai-call-log-toggle{display:inline-flex;color:var(--muted)}.ai-call-log-status{padding:3px 6px;border-radius:6px;font-size:8px;text-align:center}.ai-call-log-status.success{color:#28725f;background:#e6f5ef}.ai-call-log-status.failed{color:#a43f4b;background:#fff0f2}.ai-call-log-head strong{font-size:12px}.ai-call-log-head b,.ai-call-log-source,.ai-call-log-meta{font-size:9px;color:#6d6861}.ai-call-log-source{padding:3px 6px;border-radius:6px;background:#eeece8}.ai-call-log-head small{color:var(--muted);font-size:9px;text-align:right}.ai-call-log-detail{display:flex;flex-direction:column;gap:8px;padding:12px 14px;border-top:1px solid #eeece7}.ai-call-log-detail p{margin:0;font-size:10px;color:#4d4540}.ai-call-log-detail p b{display:inline-block;min-width:70px;color:var(--muted);font-size:9px;font-weight:700}.ai-call-log-summary{display:flex;flex-direction:column;gap:4px}.ai-call-log-summary b{color:var(--muted);font-size:9px;font-weight:700}.ai-call-log-summary span{font-size:10px;line-height:1.6;color:#4d4540;white-space:pre-wrap;word-break:break-word;padding:8px 10px;border-radius:8px;background:#f6f5f2}.ai-call-log-more{display:flex;justify-content:center;margin-top:14px}.spin{animation:spin .8s linear infinite}.dashboard-header p{max-width:460px}.calendar-page{width:min(100%,1280px)}.calendar-page .page-header{align-items:center}.calendar-shell{min-height:650px;overflow:hidden}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}.calendar-nav{display:flex;align-items:center;gap:7px}.calendar-nav h2{min-width:180px;margin:0 0 0 6px;font-size:18px}.calendar-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}.calendar-weekday{padding:8px;color:var(--muted);border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#f7f6f3;font-size:10px;font-weight:700;text-align:center}.calendar-day{min-width:0;min-height:112px;padding:7px;color:inherit;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff;cursor:pointer;text-align:left}.calendar-day:hover{background:#fbfcfb}.calendar-day.outside{background:#f8f8f6;color:#aaa6a0}.calendar-day>span{display:grid;width:23px;height:23px;place-items:center;margin-bottom:4px;border-radius:50%;font-size:10px;font-weight:700}.calendar-day.today>span{color:#fff;background:#28745f}.calendar-day>div{display:flex;min-width:0;flex-direction:column;gap:3px}.calendar-day>div>b{color:var(--muted);font-size:8px;font-weight:600}.calendar-event-chip{display:flex;width:100%;min-width:0;align-items:center;gap:4px;padding:4px 5px;overflow:hidden;color:#256451;border:0;border-radius:6px;background:#e7f5f0;cursor:pointer;font-size:8px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.calendar-event-chip.life{color:#74568c;background:#f1eafa}.calendar-event-chip span{flex:0 0 auto;font-size:7px;opacity:.75}.calendar-week{display:grid;grid-template-columns:repeat(7,minmax(115px,1fr));min-height:520px;overflow-x:auto;border:1px solid var(--line);border-radius:12px}.calendar-week>section{min-width:115px;border-right:1px solid var(--line);background:linear-gradient(#fff 0,#fff 49px,#fafaf8 49px)}.calendar-week>section:last-child{border:0}.calendar-week>section>header{display:flex;width:100%;height:50px;flex-direction:column;align-items:center;justify-content:center;border-bottom:1px solid var(--line);background:#fff}.calendar-week>section>header.today{color:#24705b;background:#eef9f5}.calendar-week>section>header b{font-size:10px}.calendar-week>section>header span{margin-top:2px;color:var(--muted);font-size:8px}.calendar-week-all-day{display:flex;min-height:28px;flex-direction:column;gap:3px;padding:4px;border-bottom:1px solid var(--line)}.calendar-week-timeline{display:flex;flex-direction:column}.calendar-hour-slot{position:relative;min-height:47px;padding:4px 4px 4px 28px;border-bottom:1px solid #eeece8;cursor:pointer}.calendar-hour-slot:hover{background:#f4faf7}.calendar-hour-slot>time{position:absolute;top:4px;left:3px;color:#aaa49d;font-size:7px}.calendar-week .calendar-event-chip{min-height:36px;align-items:flex-start;flex-direction:column;justify-content:center;white-space:normal}.calendar-agenda{display:flex;max-width:800px;flex-direction:column;gap:10px;margin:0 auto}.calendar-agenda section{display:flex;flex-direction:column;gap:6px}.calendar-agenda h3{margin:12px 0 2px;font-size:12px}.agenda-event{display:grid;grid-template-columns:80px 1fr;align-items:center;gap:12px;padding:11px 13px;color:inherit;border:1px solid var(--line);border-left:4px solid #5daf94;border-radius:11px;background:#fff;cursor:pointer;text-align:left}.agenda-event.life{border-left-color:#9a79b6}.agenda-event time{color:var(--muted);font-size:10px}.agenda-event strong,.agenda-event span{display:block}.agenda-event strong{font-size:12px}.agenda-event span{margin-top:3px;color:var(--muted);font-size:9px}.calendar-day-drawer{position:fixed;z-index:35;top:0;right:0;bottom:0;width:min(390px,90vw);padding:22px;overflow-y:auto;border-left:1px solid var(--line);background:#fff;box-shadow:-20px 0 50px #19231f24}.calendar-day-drawer header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.calendar-day-drawer header span,.calendar-day-drawer header strong{display:block}.calendar-day-drawer header span{font-size:17px;font-weight:750}.calendar-day-drawer header strong{margin-top:3px;color:var(--muted);font-size:10px}.calendar-day-drawer>.button{width:100%;margin-bottom:12px}.drawer-event{display:grid;width:100%;grid-template-columns:55px 1fr;gap:8px;padding:11px 5px;color:inherit;border:0;border-bottom:1px solid var(--line);background:transparent;cursor:pointer;text-align:left}.drawer-event time{color:var(--muted);font-size:9px}.drawer-event strong,.drawer-event span{display:block}.drawer-event strong{font-size:12px}.drawer-event span{margin-top:3px;color:var(--muted);font-size:9px}.modal.calendar-event-modal{width:min(100%,760px)}.calendar-event-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.calendar-event-form>label,.calendar-event-form>.calendar-todo-field{display:flex;min-width:0;flex-direction:column;gap:6px;color:#5f5b55;font-size:10px;font-weight:650}.calendar-event-form textarea{resize:vertical}.calendar-event-form .calendar-all-day{grid-column:1 / -1;flex-direction:row;align-items:center}.calendar-todo-field>div{display:grid;grid-template-columns:1fr auto;gap:7px}.calendar-todo-field>p{margin:0;padding:9px 10px;color:var(--muted);border:1px solid var(--line);border-radius:8px;background:#f7f7f5;font-size:11px;font-weight:500}.calendar-event-footer{display:flex;align-items:center;gap:8px;margin-top:14px;padding-top:13px;border-top:1px solid var(--line)}.calendar-event-footer>div{flex:1}.calendar-linked-todo{margin:0;color:var(--muted);font-size:11px}.dashboard-action-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.8fr);gap:16px;align-items:start}.dashboard-progress{position:relative;width:min(320px,100%);height:7px;margin:14px 0 6px;overflow:hidden;border-radius:99px;background:#e8e6e1}.dashboard-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2f7d68,#66b99c);transition:width .25s ease}.dashboard-header small{color:var(--muted);font-size:11px}.dashboard-side{display:flex;flex-direction:column;gap:16px}.action-timeline{display:flex;flex-direction:column;gap:7px;margin:0;padding:0;list-style:none}.action-item{display:flex;align-items:center;gap:11px;padding:11px 12px;border:1px solid var(--line);border-radius:13px;background:#fbfbfa}.action-item.is-overdue{border-color:#f0d3d6;background:#fff6f7}.action-group{flex:0 0 38px;color:var(--muted);font-size:10px;font-weight:750}.action-item.is-overdue .action-group{color:#b24048}.action-check,.action-icon{display:grid;place-items:center;flex:0 0 auto;width:28px;height:28px;border-radius:8px}.action-check{border:1.5px solid #d7d4ce;background:#fff;color:transparent;cursor:pointer;transition:.15s ease}.action-check:hover:not(:disabled){border-color:#2c7d68;color:#2c7d68}.action-check.completed{color:#fff;border-color:#2c7d68;background:#2c7d68}.action-check:disabled{opacity:.5}.action-icon{border:1px dashed #dcd9d3;color:var(--muted);background:#fff}.action-main{display:flex;min-width:0;flex:1;flex-direction:column;gap:2px}.action-main strong{overflow:hidden;font-size:14px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.action-due{color:var(--muted);font-size:11px}.action-due.tone-overdue{color:#b24048;font-weight:650}.action-due.tone-today{color:#2c6d5e;font-weight:650}.action-location{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:10px}.action-more{display:flex;justify-content:center;padding-top:12px}.action-more a{color:#2c6d5e;font-size:12px;font-weight:650}.dash-priority{flex:0 0 auto;padding:3px 9px;border-radius:7px;font-size:10px;font-weight:700;background:#eeece8;color:#6d6861}.dash-priority.priority-high{background:#fde8ea;color:#b24048}.dash-priority.priority-normal{background:#eef0f7;color:#5b5f7a}.dash-priority.priority-low{background:#eaf4ef;color:#2c6d5e}.dash-calorie-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-bottom:14px}.calorie-stat{display:flex;flex-direction:column;align-items:center;gap:2px;padding:12px 8px;border:1px solid var(--line);border-radius:13px;background:#fbfbfa}.calorie-stat svg{color:var(--muted)}.calorie-stat strong{font-size:22px;letter-spacing:-.03em}.calorie-stat span{color:var(--muted);font-size:10px}.calorie-stat.is-surplus{border-color:#f0d3d6;background:#fff6f7}.calorie-stat.is-surplus strong{color:#b24048}.calorie-stat.is-surplus svg{color:#b24048}.calorie-stat.is-deficit{border-color:#c8e7dd;background:#effbf7}.calorie-stat.is-deficit strong{color:#246b59}.calorie-stat.is-deficit svg{color:#246b59}.dashboard-sparkline{display:block;width:100%;height:auto}.sparkline-zero{stroke:#d7d4ce;stroke-width:1;stroke-dasharray:3 3}.sparkline-line{fill:none;stroke:#2f7d68;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}.dash-meals{display:flex;align-items:center;gap:9px;margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.dash-meals-label{color:var(--muted);font-size:11px;font-weight:600}.dash-meal-chips{display:flex;flex-wrap:wrap;gap:6px}.meal-chip{padding:3px 10px;border-radius:8px;font-size:11px;color:var(--muted);border:1px solid var(--line);background:#fbfbfa}.meal-chip.recorded{color:#246b59;border-color:#c8e7dd;background:#effbf7;font-weight:600}.dash-alert-list{display:flex;flex-direction:column;gap:8px;margin:0;padding:0;list-style:none}.dash-alert-item{display:flex;align-items:center;gap:11px;padding:11px 12px;border:1px solid var(--line);border-radius:13px;background:#fbfbfa}.dash-alert-item>svg{flex:0 0 auto;color:var(--muted)}.dash-alert-item.is-overdue{border-color:#f0d3d6;background:#fff6f7}.dash-alert-item.is-overdue>svg{color:#b24048}.dash-alert-main{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.dash-alert-title{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dash-alert-sub{font-size:11px;color:var(--muted);line-height:1.5}.dash-alert-link{flex:0 0 auto;display:inline-flex;align-items:center;gap:2px;color:var(--muted);font-size:11px;font-weight:600}.dash-alert-link:hover{color:#171716}.dash-alert-empty{display:flex;align-items:center;justify-content:center;gap:8px;padding:22px;color:var(--muted);font-size:13px}@media (max-width: 820px){.calendar-month{min-width:760px}.calendar-shell{overflow-x:auto}.calendar-toolbar{position:sticky;left:0;min-width:0}.calendar-day{min-height:100px}.dashboard-action-grid{grid-template-columns:1fr}.dashboard-progress{width:100%}.dash-calorie-summary{gap:7px}.calorie-stat strong{font-size:19px}.finance-summary-grid,.investment-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.investment-management-grid{grid-template-columns:1fr}.finance-draft-list article{grid-template-columns:64px 80px minmax(100px,1fr)}.finance-draft-list article>:nth-child(4),.finance-draft-list article>:nth-child(5){grid-column:span 1}.finance-draft-fields{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 600px){.finance-page .page-header{align-items:stretch;flex-direction:column}.finance-page .header-actions,.finance-page .header-actions .button{width:100%}.finance-page .header-actions{display:grid;grid-template-columns:1fr 1fr}.finance-page .header-actions .primary{grid-column:1 / -1}.finance-summary-grid,.investment-summary-grid,.finance-ai-inputs,.finance-draft-fields,.storage-link-fields{grid-template-columns:1fr}.investment-holding-list article{align-items:flex-start;flex-wrap:wrap}.investment-holding-main{width:calc(100% - 52px);flex:0 0 calc(100% - 52px)}.investment-holding-value{width:100%;align-items:flex-start;padding-left:50px}.finance-filters{flex-direction:column}.finance-account-list article,.finance-transaction-list article{align-items:flex-start;flex-wrap:wrap}.finance-account-list article>div,.finance-transaction-list article>div{width:calc(100% - 52px);flex:0 0 calc(100% - 52px)}.finance-draft-list{overflow-x:auto}.finance-draft-list article{min-width:560px}.ai-logs-filter-row{display:grid;grid-template-columns:1fr}.ai-logs-filter-row .button{width:100%;min-height:42px}.ai-call-log-head{grid-template-columns:34px minmax(0,1fr) 34px;grid-template-rows:repeat(6,auto);align-items:center;gap:4px 8px;padding:10px 11px}.ai-call-log-head>.ai-call-log-toggle{grid-row:1;grid-column:1}.ai-call-log-head>strong{grid-row:1;grid-column:2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-call-log-head>.icon-button{grid-row:1;grid-column:3}.ai-call-log-head>.ai-call-log-status{grid-row:2;grid-column:1 / 2}.ai-call-log-head>.ai-call-log-provider{grid-row:2;grid-column:2}.ai-call-log-head>.ai-call-log-source{grid-row:3;grid-column:1 / -1;justify-self:start}.ai-call-log-model{grid-row:4;grid-column:1 / -1}.ai-call-log-performance{grid-row:5;grid-column:1 / -1}.ai-call-log-head>small{grid-row:6;grid-column:1 / -1;text-align:left}}@media (max-width: 600px){.calendar-page .page-header{align-items:stretch;flex-direction:column;gap:12px}.calendar-page .page-header .button{width:100%}.calendar-toolbar{align-items:stretch;flex-direction:column}.calendar-nav{flex-wrap:wrap}.calendar-nav h2{flex:1;min-width:120px}.calendar-toolbar .segmented button{flex:1}.calendar-day-drawer{top:auto;width:100%;max-height:76vh;border-top:1px solid var(--line);border-left:0;border-radius:22px 22px 0 0}.calendar-event-form{grid-template-columns:1fr}.calendar-event-form .wide-field,.calendar-event-form .calendar-all-day{grid-column:auto}.calendar-todo-field>div{grid-template-columns:1fr}.calendar-event-footer{align-items:stretch;flex-direction:column}.calendar-event-footer>div{display:none}.calendar-event-footer .button{width:100%}}
