:root{--paper:#f6f2ea;--paper-deep:#eee8dc;--ink:#23201c;--muted:#756e64;--line:#ded6c9;--card:#fffdf8c7;--card-solid:#fffdfa;--tomato:#b84934;--tomato-dark:#903522;--sage:#637868;--sage-soft:#e1e8dd;--gold:#b18444;--gold-soft:#f4e7cd;--rose-soft:#f4ddda;--shadow:0 16px 45px #46362314;--sans:"Noto Sans SC", "Microsoft YaHei", "PingFang SC", system-ui, sans-serif;--serif:"Noto Serif SC", "Songti SC", "STSong", Georgia, serif}*{box-sizing:border-box}html{background:var(--paper);min-height:100%}body{min-height:100vh;color:var(--ink);background:radial-gradient(circle at 80% 0%, #dac6a445, transparent 23rem), var(--paper);font-family:var(--sans);margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.app-frame{min-height:100vh}.sidebar{z-index:5;border-right:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f8f4edd6;flex-direction:column;width:252px;padding:30px 18px 22px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:11px;padding:0 9px 28px;display:flex}.brand-mark{color:#fffaf2;background:var(--tomato);width:36px;height:36px;font-family:var(--serif);border-radius:12px 12px 12px 3px;flex:none;place-items:center;font-size:22px;display:grid;box-shadow:0 7px 20px #b8493442}.brand strong{font-family:var(--serif);letter-spacing:.08em;font-size:19px;font-weight:700;display:block}.brand small{color:var(--muted);letter-spacing:.06em;margin-top:2px;font-size:10px;display:block}.side-nav{gap:4px;display:grid}.nav-link{color:#625d55;border-radius:12px;align-items:center;gap:12px;padding:11px;font-size:14px;transition:background .18s,color .18s,transform .18s;display:flex}.nav-link:hover{color:var(--ink);background:#ffffffa6}.nav-link.active{color:var(--tomato-dark);background:#f3e4dc;font-weight:700}.privacy-note{color:var(--muted);border-top:1px solid var(--line);gap:9px;margin-top:auto;padding:15px 10px;display:flex}.privacy-note strong{color:#5e574f;font-size:11px;display:block}.privacy-note p{margin:4px 0 0;font-size:10px;line-height:1.55}.privacy-dot{background:var(--sage);border-radius:50%;flex:none;width:7px;height:7px;margin-top:4px;display:inline-block;box-shadow:0 0 0 3px #6378681f}.main-content{min-height:100vh;margin-left:252px}.page{max-width:1240px;margin:0 auto;padding:58px 48px 76px}.mobile-header,.mobile-nav{display:none}.section-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:34px;display:flex}.section-heading h1{font-family:var(--serif);letter-spacing:-.04em;margin:2px 0 7px;font-size:clamp(31px,3.2vw,44px);line-height:1.17}.eyebrow{color:var(--tomato);letter-spacing:.14em;text-transform:uppercase;margin:0 0 8px;font-size:11px;font-weight:750}.section-description{max-width:560px;color:var(--muted);margin:0;font-size:14px;line-height:1.7}.primary-button,.secondary-button,.text-button{border:0;border-radius:11px;justify-content:center;align-items:center;gap:8px;font-weight:700;transition:transform .16s,background .16s,box-shadow .16s;display:inline-flex}.primary-button{color:#fffaf4;background:var(--tomato);min-height:42px;padding:0 16px;font-size:13px;box-shadow:0 8px 18px #b849342e}.primary-button:hover{background:var(--tomato-dark);transform:translateY(-1px);box-shadow:0 11px 21px #b8493436}.primary-button:disabled{cursor:wait;opacity:.65;transform:none}.secondary-button{color:#5e574f;border:1px solid var(--line);background:0 0;min-height:40px;padding:0 14px;font-size:13px}.text-button,.quiet-link{color:var(--tomato-dark);background:0 0;font-size:13px}.text-button:hover,.quiet-link:hover{color:var(--tomato)}.quiet-link{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.icon-button{color:#5e574f;border:1px solid var(--line);background:#ffffff73;border-radius:9px;place-items:center;width:36px;height:36px;padding:0;display:grid}.icon-button:hover{color:var(--tomato-dark);background:#fffaf5;border-color:#ceb5aa}.icon-button.subtle{background:0 0;border-color:#0000;width:31px;height:31px}.icon-button:disabled{cursor:default;opacity:.3}.latest-meal,.first-meal{background:var(--card-solid);min-height:310px;box-shadow:var(--shadow);border:1px solid #e2d8c9;border-radius:20px;grid-template-columns:minmax(300px,1.1fr) minmax(260px,.9fr);margin-bottom:23px;display:grid;overflow:hidden}.latest-visual{background:linear-gradient(135deg,#c57a61,#853d2e);min-height:310px;position:relative;overflow:hidden}.latest-visual>img{object-fit:cover;width:100%;height:100%}.visual-label{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#1d181454;border-radius:999px;padding:5px 9px;font-size:11px;position:absolute;top:17px;left:18px}.plate-illustration{color:#f7d8a8;background:radial-gradient(circle at 50% 47%,#f6d8a830 0 22%,#0000 22.5%),radial-gradient(circle at 50% 47%,#fff4d226 0 38%,#0000 38.5%),linear-gradient(135deg,#9d4a38,#632c28);place-items:center;width:100%;height:100%;display:grid}.plate-illustration span{font-family:var(--serif);opacity:.94;font-size:78px;transform:rotate(-11deg)}.plate-illustration i{letter-spacing:8px;font-size:16px;font-style:normal;position:absolute}.sync-notice{color:#557055;background:#f5f8f0;border:1px solid #d8dfcf;border-radius:10px;margin:12px 22px 0;padding:10px 13px;font-size:13px}.sync-notice.error{color:#9b4639;background:#fff4f0;border-color:#efc9bd}.sync-retry{color:inherit;font-size:inherit;background:0 0;border:0;margin-left:9px;padding:0;font-weight:800;text-decoration:underline}.sync-status-sr{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.latest-copy{flex-direction:column;justify-content:center;align-items:flex-start;padding:37px 40px;display:flex}.latest-copy h2,.first-meal h2{font-family:var(--serif);margin:0 0 11px;font-size:31px;line-height:1.25}.latest-summary{color:#534e47;margin:0;font-size:15px;line-height:1.8}.improvement{color:#605a51;align-items:baseline;gap:9px;margin:18px 0;font-size:13px;line-height:1.55;display:flex}.improvement span,.next-note span{color:var(--sage);letter-spacing:.08em;flex:none;font-size:11px;font-weight:800}.first-meal{background:linear-gradient(120deg,#fffdfa,#f6e9d9);grid-template-columns:230px 1fr;align-items:center;padding:30px 48px 30px 36px}.first-meal-art{color:#bd684c;width:132px;font-family:var(--serif);grid-template-columns:1fr 1fr;gap:5px;font-size:35px;line-height:1.1;display:grid;transform:rotate(-5deg)}.first-meal p:not(.eyebrow){max-width:470px;color:var(--muted);margin:0 0 21px;font-size:14px;line-height:1.8}.metric-grid{grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:23px;display:grid}.metric-card{background:#fffdf9ad;border:1px solid #e1d9cd;border-radius:16px;min-height:143px;padding:19px}.metric-icon{width:31px;height:31px;color:var(--tomato);background:#f5e5dd;border-radius:9px;place-items:center;margin-bottom:14px;display:grid}.metric-card p{color:var(--muted);margin:0 0 4px;font-size:11px}.metric-card strong{font-family:var(--serif);letter-spacing:-.04em;font-size:30px;font-weight:700}.metric-card strong small{font-family:var(--sans);letter-spacing:0;margin-left:3px;font-size:11px;font-weight:500}.metric-compact strong{letter-spacing:-.02em;font-size:18px}.dashboard-columns{grid-template-columns:1.2fr .8fr;gap:23px;display:grid}.panel,.story-callout,.experiment-teaser{background:#fffdf9ab;border:1px solid #e1d9cd;border-radius:17px;padding:25px}.panel-title-row{justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:17px;display:flex}.panel h2,.story-callout h2,.experiment-teaser h2{font-family:var(--serif);margin:0;font-size:21px}.recent-list{display:grid}.recent-row{border-top:1px solid #eee7dd;grid-template-columns:63px 1fr auto;align-items:center;gap:13px;padding:13px 2px;display:grid}.recent-row:hover strong{color:var(--tomato-dark)}.date-stamp span{color:#4c463f;font-family:var(--serif);font-size:15px;font-weight:700;display:block}.date-stamp small{color:var(--muted);font-size:10px}.recent-row strong{font-size:13px}.recent-row p{color:var(--muted);-webkit-line-clamp:1;-webkit-box-orient:vertical;margin:4px 0 0;font-size:11px;line-height:1.45;display:-webkit-box;overflow:hidden}.recipe-mini{border-top:1px solid #eee7dd;align-items:center;gap:10px;padding:12px 0;display:flex}.recipe-avatar{color:#6c4a37;width:34px;height:34px;font-family:var(--serif);background:#efe3ca;border-radius:50% 50% 48% 52%;place-items:center;font-weight:800;display:grid}.recipe-mini strong{font-size:13px}.recipe-mini p{color:var(--muted);margin:3px 0 0;font-size:10px}.count-pill{color:var(--sage);background:var(--sage-soft);border-radius:999px;margin-left:auto;padding:4px 7px;font-size:10px;font-weight:800}.soft-empty{min-height:160px;color:var(--muted);text-align:center;place-items:center;padding:24px;display:grid}.soft-empty p{max-width:230px;margin:10px 0 0;font-size:12px;line-height:1.65}.recent-empty{min-height:210px}.lower-columns{margin-top:23px}.story-callout{background:linear-gradient(135deg,#eae5d6,#f9f6ed);align-items:flex-start;gap:17px;display:flex}.story-icon{color:#857447;background:#f6edcf;border-radius:50%;flex:none;place-items:center;width:43px;height:43px;display:grid}.story-callout p:not(.eyebrow),.experiment-teaser>p:not(.eyebrow){color:var(--muted);margin:9px 0 0;font-size:12px;line-height:1.75}.experiment-teaser{background:linear-gradient(135deg,#e5ece3,#f7f8f3)}.experiment-teaser .text-button{margin-top:16px}.skeleton{position:relative;overflow:hidden;background:#e7e0d4!important;border-color:#0000!important}.skeleton:after{content:"";background:linear-gradient(100deg,#0000,#ffffff8c,#0000);animation:1.3s infinite shimmer;position:absolute;inset:0;transform:translate(-100%)}.loading-title{border-radius:12px;width:280px;height:50px;margin-bottom:34px}.loading-hero{border-radius:20px;height:310px;margin-bottom:23px}@keyframes shimmer{to{transform:translate(100%)}}.record-view-switch{background:#e9e1d5;border-radius:10px;gap:4px;margin:-13px 0 25px;padding:4px;display:inline-flex}.switch-link{color:var(--muted);border-radius:7px;padding:7px 12px;font-size:12px;font-weight:700}.switch-link.active{color:var(--ink);background:#fffdfa;box-shadow:0 2px 7px #49392314}.timeline{max-width:900px}.timeline-entry{grid-template-columns:22px 145px 1fr;gap:15px;padding-bottom:26px;display:grid;position:relative}.timeline-rail{border-right:1px solid #d9cfc2;position:relative}.timeline-dot{border:2px solid var(--paper);background:var(--tomato);border-radius:50%;width:11px;height:11px;position:absolute;top:5px;right:-6px;box-shadow:0 0 0 1px #d9cfc2}.timeline-date{padding-top:0}.timeline-date strong{color:#403a34;font-family:var(--serif);font-size:15px;display:block}.timeline-date span{color:var(--muted);margin-top:4px;font-size:11px;display:block}.record-card{background:#fffdf9bd;border:1px solid #e2d9cd;border-radius:15px;overflow:hidden;box-shadow:0 5px 14px #46362308}.record-card-main{gap:16px;padding:17px;transition:background .16s;display:flex}.record-card-main:hover{background:#fbf3ebbd}.record-thumb{background:#c9785e;border-radius:10px;flex:none;width:105px;height:87px;position:relative;overflow:hidden}.record-thumb img{object-fit:cover;width:100%;height:100%}.record-thumb>span{color:#fff;background:#14141473;border-radius:5px;align-items:center;gap:3px;padding:3px 5px;font-size:9px;display:inline-flex;position:absolute;bottom:5px;right:5px}.record-thumb.no-image{background:linear-gradient(135deg,#d9b293,#a15a47);place-items:center;display:grid}.record-thumb.no-image span{color:#fff3dd;font-family:var(--serif);font-size:35px}.record-copy h2{font-family:var(--serif);margin:2px 0 6px;font-size:21px}.record-copy>p{color:#5f584f;margin:0;font-size:13px;line-height:1.7}.record-meta{color:var(--muted);flex-wrap:wrap;gap:8px 12px;margin-top:11px;font-size:10px;display:flex}.record-meta span{align-items:center;gap:4px;display:inline-flex}.rating-text{font-weight:800;color:var(--gold)!important}.next-note{background:#faf8f3;border-top:1px solid #eee7dd;gap:11px;padding:12px 17px;display:flex}.next-note p{color:#5d574e;margin:0;font-size:12px;line-height:1.55}.record-details{padding:0 17px 15px}.record-details summary{color:var(--muted);cursor:pointer;padding-top:13px;font-size:11px}.dish-recap{background:#fcfaf5;border-left:2px solid #d8c2a7;margin-top:12px;padding:10px}.dish-recap strong{font-size:11px}.dish-recap p{color:#665f56;gap:8px;margin:5px 0 0;font-size:11px;line-height:1.5;display:flex}.dish-recap p span{color:var(--tomato);font-weight:700}.empty-timeline,.empty-recipes{max-width:680px;color:var(--muted);text-align:center;background:#fffdf975;border:1px dashed #ccbfae;border-radius:18px;justify-items:center;padding:74px 30px;display:grid}.empty-calendar-icon,.recipe-book-icon{width:62px;height:62px;color:var(--tomato);background:#f4e5dc;border-radius:50%;place-items:center;margin-bottom:17px;display:grid}.empty-timeline h2,.empty-recipes h2{color:var(--ink);font-family:var(--serif);margin:0 0 10px;font-size:26px}.empty-timeline>p:not(.eyebrow),.empty-recipes>p:not(.eyebrow){max-width:385px;margin:0 0 22px;font-size:13px;line-height:1.8}.timeline-loading{border-radius:16px;height:380px}.record-detail-page{max-width:980px}.back-link{color:var(--muted);align-items:center;gap:6px;margin-bottom:27px;font-size:13px;font-weight:700;display:inline-flex}.back-link:hover{color:var(--tomato-dark)}.record-detail-heading{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.record-detail-heading h1,.record-missing h1{max-width:690px;font-family:var(--serif);letter-spacing:-.045em;margin:0 0 9px;font-size:clamp(34px,4.5vw,52px);line-height:1.12}.record-detail-heading>div>p:not(.eyebrow),.record-missing>p:not(.eyebrow){max-width:650px;color:var(--muted);margin:0;font-size:14px;line-height:1.75}.record-detail-actions{flex-wrap:wrap;flex:none;gap:9px;display:flex}.record-gallery{background:#eadfd2;border-radius:19px;gap:9px;min-height:260px;margin-bottom:23px;display:grid;overflow:hidden}.record-gallery.images-1{grid-template-columns:1fr}.record-gallery.images-2{grid-template-columns:repeat(2,1fr)}.record-gallery.images-3,.record-gallery.images-4{grid-template-rows:repeat(2,180px);grid-template-columns:repeat(2,1fr)}.record-gallery img{object-fit:cover;width:100%;height:100%;min-height:260px}.record-gallery.images-3 img:first-child{grid-row:span 2}.record-gallery.images-3 img:not(:first-child),.record-gallery.images-4 img{min-height:0}.record-detail-grid{grid-template-columns:minmax(230px,.58fr) minmax(360px,1fr);align-items:start;gap:18px;display:grid}.detail-panel{background:#fffdf9b8;border:1px solid #e0d7ca;border-radius:17px;padding:22px}.detail-panel h2{font-family:var(--serif);margin:0 0 14px;font-size:22px}.detail-summary{min-height:170px}.detail-meta{color:var(--muted);gap:10px;font-size:12px;display:grid}.detail-meta span{align-items:center;gap:6px;display:inline-flex}.detail-next{border-top:1px solid #ece5db;margin-top:22px;padding-top:16px}.detail-next span{color:var(--sage);letter-spacing:.1em;font-size:10px;font-weight:800}.detail-next p{color:#5b554d;margin:6px 0 0;font-size:13px;line-height:1.7}.detail-dishes{gap:11px;display:grid}.detail-dishes article{border-top:1px solid #eee7dd;grid-template-columns:25px 1fr;gap:9px;padding-top:12px;display:grid}.detail-dishes article>span{color:var(--tomato);letter-spacing:.08em;padding-top:2px;font-size:10px;font-weight:800}.detail-dishes h3{margin:0 0 6px;font-size:14px}.detail-dishes p{color:#635c53;gap:8px;margin:5px 0 0;font-size:12px;line-height:1.6;display:flex}.detail-dishes p b{color:var(--sage);flex:none;font-size:10px}.detail-dishes .muted-copy{color:var(--muted)}.private-note-panel{background:linear-gradient(135deg,#f5f0e6,#fcfaf4);grid-column:1/-1}.private-note-panel h2{margin-bottom:7px}.private-note-panel>p:last-child{color:#5c554c;white-space:pre-wrap;margin:0;font-size:13px;line-height:1.8}.record-danger-zone{background:#fff7f4b3;border:1px solid #ead4cb;border-radius:17px;justify-content:space-between;align-items:center;gap:24px;margin-top:21px;padding:22px;display:flex}.record-danger-zone h2{font-family:var(--serif);margin:3px 0 5px;font-size:20px}.record-danger-zone p:not(.eyebrow){max-width:530px;color:var(--muted);margin:0;font-size:12px;line-height:1.65}.danger-button{color:#933827;background:#fff5f1;border:1px solid #e5bdb2;border-radius:10px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 14px;font-size:12px;font-weight:800;display:inline-flex}.danger-button:hover{color:#fffaf6;background:#ad432f;border-color:#ad432f}.danger-button:disabled{cursor:wait;opacity:.65}.delete-confirm{gap:10px;max-width:390px;display:grid}.delete-confirm>div{justify-content:flex-end;gap:8px;display:flex}.record-detail-footnote{color:var(--muted);margin:15px 2px 0;font-size:11px}.record-missing{max-width:670px;padding:54px 0}.calendar-card{box-shadow:var(--shadow);background:#fffdf9bf;border:1px solid #e0d7ca;border-radius:18px;padding:24px}.calendar-toolbar{justify-content:space-between;align-items:center;max-width:330px;margin:0 auto 23px;display:flex}.calendar-toolbar h2{font-family:var(--serif);margin:0;font-size:22px}.calendar-weekdays,.calendar-grid{grid-template-columns:repeat(7,1fr);display:grid}.calendar-weekdays{color:var(--muted);text-align:center;margin-bottom:4px;font-size:11px}.calendar-grid{border-top:1px solid #ebe4da;border-left:1px solid #ebe4da;border-radius:10px;overflow:hidden}.calendar-day{min-height:100px;color:inherit;text-align:left;background:#ffffff38;border:1px solid #ebe4da;border-top:0;border-left:0;padding:8px;transition:background .15s;position:relative}.calendar-day:not(.outside):hover{background:#faf4ea}.calendar-day.selected{outline:2px solid var(--tomato);outline-offset:-2px;background:#f9eee8}.calendar-date{color:#645d54;font-size:12px}.calendar-day.has-records .calendar-date{color:var(--tomato-dark);font-weight:800}.calendar-markers{align-items:center;gap:3px;margin-top:10px;display:flex}.calendar-markers img,.calendar-markers i{object-fit:cover;background:#c98169;border:1px solid #fff;border-radius:50%;width:26px;height:26px}.calendar-markers i{background:#ca9d74;display:block}.calendar-markers b{color:var(--muted);font-size:10px}.calendar-selection{background:#fffdf9;border:1px solid #ded6c8;border-radius:15px;max-width:600px;margin-top:22px;padding:21px}.calendar-selection h2{font-family:var(--serif);margin:0 0 13px;font-size:22px}.selection-record{border-top:1px solid #eee7dd;grid-template-columns:43px 1fr;gap:3px 10px;padding:11px 0;display:grid}.selection-record>span{color:var(--sage);grid-row:span 2;padding-top:2px;font-size:10px;font-weight:800}.selection-record strong{font-size:13px}.selection-record p{color:var(--muted);grid-column:2;margin:0;font-size:11px}.recipe-layout{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:start;gap:23px;display:grid}.recipe-library{background:#fffdf999;border:1px solid #e2d9cc;border-radius:17px;padding:23px}.library-header{justify-content:space-between;align-items:baseline;margin-bottom:17px;display:flex}.library-header span{font-family:var(--serif);font-size:25px;font-weight:700}.library-header p{color:var(--muted);margin:0;font-size:11px}.recipe-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;display:grid}.recipe-card{color:inherit;text-align:left;background:#fffdf9;border:1px solid #e7ded2;border-radius:12px;padding:0;overflow:hidden}.recipe-card:hover,.recipe-card.active{border-color:#c38b78;box-shadow:0 7px 17px #583c2914}.recipe-card-art{color:#7d513b;height:124px;font-family:var(--serif);background:linear-gradient(135deg,#ead6b8,#c78062);place-items:center;font-size:39px;display:grid;position:relative;overflow:hidden}.recipe-card-art img{object-fit:cover;width:100%;height:100%}.recipe-status{font-family:var(--sans);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);border-radius:99px;padding:4px 7px;font-size:9px;font-style:normal;font-weight:800;position:absolute;top:8px;right:8px}.recipe-status.stable,.status-chip.stable{color:#456050;background:#e0ebdce8}.recipe-status.improving,.status-chip.improving{color:#845e25;background:#f8e8c5eb}.recipe-status.trial,.status-chip.trial{color:#8b5146;background:#f7e0daeb}.recipe-card>div:last-child{padding:13px}.recipe-card h2{font-family:var(--serif);margin:0 0 4px;font-size:18px}.recipe-card p{color:var(--muted);margin:0;font-size:10px;line-height:1.5}.recipe-archive{background:linear-gradient(145deg,#f7faf4,#fbf8f1);border:1px solid #d8d9c9;border-radius:17px;position:sticky;top:28px;overflow:hidden}.archive-top{border-bottom:1px solid #e0e3dc;padding:25px 25px 20px}.archive-top .status-chip{margin-bottom:12px;display:inline-flex}.status-chip{border-radius:999px;padding:4px 8px;font-size:10px;font-weight:800}.status-chip.planned{color:#795b2b;background:var(--gold-soft)}.status-chip.running{color:#496453;background:var(--sage-soft)}.status-chip.concluded{color:#795047;background:var(--rose-soft)}.archive-top h2{font-family:var(--serif);margin:0 0 7px;font-size:31px}.archive-top>p:last-child{color:var(--muted);margin:0;font-size:12px;line-height:1.7}.archive-stats{border-bottom:1px solid #e0e3dc;grid-template-columns:repeat(3,1fr);padding:15px 20px;display:grid}.archive-stats div{text-align:center;border-right:1px solid #dfe3da}.archive-stats div:last-child{border-right:0}.archive-stats strong,.archive-stats span{display:block}.archive-stats strong{font-family:var(--serif);font-size:22px}.archive-stats span{color:var(--muted);margin-top:2px;font-size:9px}.archive-section,.version-track{padding:19px 25px 0}.archive-section h3,.version-track h3{align-items:center;gap:7px;margin:0 0 9px;font-size:12px;display:flex}.archive-section>p,.archive-section li{color:#605b52;margin:0;font-size:12px;line-height:1.75}.archive-section.issue{padding-bottom:0}.archive-section ul{margin:0;padding-left:16px}.version-track{padding-bottom:24px}.version-event{grid-template-columns:37px 1fr;gap:9px;padding:4px 0 15px;display:grid;position:relative}.version-event:not(:last-child):before{content:"";background:#cbd6c8;width:1px;position:absolute;top:24px;bottom:-3px;left:16px}.version-event>span{z-index:1;color:#486150;background:#dfe9dd;border-radius:6px;place-items:center;width:33px;height:22px;font-size:9px;font-weight:800;display:grid;position:relative}.version-event strong{color:#625b52;font-size:10px;display:block}.version-event p{color:var(--muted);margin:3px 0 0;font-size:11px;line-height:1.55}.empty-recipes{max-width:720px}.sop-run-note{color:#5d584f;background:#f5f8f1;border:1px solid #d9e1d3;border-radius:12px;grid-template-columns:auto auto 1fr;align-items:center;gap:9px;max-width:760px;margin:-11px 0 22px;padding:11px 14px;font-size:12px;display:grid}.sop-run-note>span{color:#60745d;font-weight:800}.sop-run-note>strong{color:#385344;font-family:var(--serif);font-size:17px}.sop-run-note>p{color:var(--muted);margin:0;line-height:1.5}.recipe-status.frequent,.status-chip.frequent{color:#3e634e;background:#d7ecd7f0}.recipe-status.archived,.status-chip.archived{color:#6f6b66;background:#e8e5dff0}.sop-archive{max-height:calc(100vh - 56px);overflow-y:auto}.sop-actions{border-bottom:1px solid #e0e3dc;flex-wrap:wrap;gap:9px;padding:16px 20px;display:flex}.sop-actions .secondary-button{min-height:35px;font-size:11px}.text-action{min-height:35px;color:var(--tomato-dark);background:0 0;border:0;align-items:center;gap:6px;padding:0 5px;font-size:11px;font-weight:800;display:inline-flex}.sop-section{padding:19px 25px 0}.sop-section:last-child{padding-bottom:21px}.sop-section h3{color:#403b34;align-items:center;gap:7px;margin:0 0 10px;font-size:12px;display:flex}.sop-section-heading{justify-content:space-between;align-items:center;gap:10px;display:flex}.sop-section-heading span{color:#456050;background:var(--sage-soft);border-radius:99px;padding:3px 7px;font-size:9px;font-weight:800}.sop-change{color:#473f36;margin:0;font-size:13px;font-weight:700;line-height:1.6}.sop-key-points{color:#656056;margin:8px 0 0;font-size:12px;line-height:1.7}.sop-metrics{flex-wrap:wrap;gap:10px;margin-top:11px;display:flex}.sop-metrics span{color:#5d6e5a;align-items:center;gap:5px;font-size:11px;font-weight:700;display:inline-flex}.sop-list{border-top:1px dashed #d9ddd4;margin-top:16px;padding-top:14px}.sop-list h4{color:#6a6258;letter-spacing:.06em;margin:0 0 8px;font-size:10px}.sop-list ul,.sop-list ol{gap:7px;margin:0;padding:0;list-style:none;display:grid}.sop-list li{color:#5b554c;font-size:11px;line-height:1.55}.sop-list ul li{justify-content:space-between;gap:12px;display:flex}.sop-list ul strong{color:#474037}.sop-list ul span,.sop-list small{color:var(--muted)}.sop-list ol{counter-reset:sop-step}.sop-list ol li{counter-increment:sop-step;padding-left:23px;position:relative}.sop-list ol li:before{color:var(--tomato);content:counter(sop-step, decimal-leading-zero);font-size:9px;font-weight:800;position:absolute;left:0}.sop-list ol p{margin:0}.sop-list ol span{color:#60745d;margin:3px 5px 0 0;font-size:10px;font-weight:700;display:inline-block}.sop-list ol small{margin-top:2px;display:block}.sop-muted{color:var(--muted);margin:0;font-size:11px;line-height:1.65}.sop-empty{padding-bottom:6px}.practice-runs{padding-bottom:2px}.sop-run-list{gap:8px;display:grid}.sop-run-card{color:inherit;background:#ffffff85;border:1px solid #e3e7df;border-radius:10px;padding:10px 11px;display:block}.sop-run-card:hover{background:#fffefa;border-color:#becfbc}.sop-run-card>div{justify-content:space-between;gap:10px;display:flex}.sop-run-card strong{color:#574d42;font-size:11px}.sop-run-card span{color:#a3732e;font-size:10px;font-weight:800}.sop-run-card p{color:#5e584e;margin:5px 0 0;font-size:11px;line-height:1.5}.sop-run-card small{color:var(--muted);margin-top:4px;font-size:10px;line-height:1.45;display:block}.sop-version-track{border-top:1px solid #e0e3dc;margin-top:19px}.sop-editor{background:#fffaf4;border:1px solid #ddc7b9;border-radius:13px;gap:13px;margin:0 14px;padding:18px;display:grid}.sop-editor label,.sop-editor fieldset{color:#554b40;gap:6px;font-size:11px;font-weight:800;display:grid}.sop-editor input,.sop-editor textarea,.sop-editor select{width:100%;color:var(--ink);font:inherit;background:#fffefa;border:1px solid #ddd2c4;border-radius:8px;font-size:12px;font-weight:500}.sop-editor input,.sop-editor select{height:34px;padding:0 9px}.sop-editor textarea{resize:vertical;min-height:58px;padding:8px 9px;line-height:1.5}.sop-editor-heading{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.sop-editor-heading .eyebrow{margin:0 0 4px}.sop-editor-heading h3{font-family:var(--serif);margin:0;font-size:19px}.sop-editor-heading>p{max-width:170px;color:var(--muted);margin:1px 0 0;font-size:10px;line-height:1.55}.sop-editor-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.sop-editor .select-wrap{display:block;position:relative}.sop-editor .select-wrap select{appearance:none}.sop-editor .select-wrap svg{color:var(--muted);pointer-events:none;position:absolute;top:9px;right:8px}.sop-editor fieldset{border:0;border-top:1px dashed #dfd5c9;min-width:0;padding:12px 0 0}.sop-editor legend{color:#62574b;padding:0;font-size:11px;font-weight:800}.sop-ingredient-row,.sop-step-row{align-items:start;gap:6px;display:grid}.sop-ingredient-row{grid-template-columns:minmax(82px,1.2fr) 55px 42px minmax(85px,1fr) 24px}.sop-step-row{grid-template-columns:19px minmax(0,1.7fr) 67px minmax(74px,.9fr) 24px}.sop-step-row>span{color:var(--tomato);padding-top:9px;font-size:9px}.sop-editor .icon-button{width:24px;min-width:24px;height:34px;padding:0}.add-line-button{color:var(--tomato-dark);background:0 0;border:0;justify-self:start;padding:5px 0 0;font-size:11px;font-weight:800}.sop-editor-actions{flex-wrap:wrap;gap:8px;display:flex}.sop-editor-actions .primary-button,.sop-editor-actions .secondary-button{min-height:36px;font-size:11px}.quick-add-page{max-width:820px}.record-form{gap:16px;display:grid}.form-card,.experiment-form-card{background:#fffdf9c7;border:1px solid #ded6c9;border-radius:18px;padding:27px 30px;box-shadow:0 9px 23px #4636230a}.form-section-title{align-items:flex-start;gap:13px;margin-bottom:23px;display:flex}.step-number{width:27px;height:27px;color:var(--tomato-dark);background:#f5e3db;border-radius:8px;flex:none;place-items:center;font-size:11px;font-weight:800;display:grid}.form-section-title h2{font-family:var(--serif);margin:1px 0 4px;font-size:22px}.form-section-title p{color:var(--muted);margin:0;font-size:11px;line-height:1.55}label{color:#575148;gap:7px;font-size:12px;font-weight:700;display:grid}input,textarea,select{width:100%;color:var(--ink);background:#fffefa;border:1px solid #ddd4c6;border-radius:9px;outline:none;font-size:13px;font-weight:450;transition:border .15s,box-shadow .15s}input,select{height:42px;padding:0 11px}textarea{resize:vertical;min-height:65px;padding:10px 11px;line-height:1.6}input::placeholder,textarea::placeholder{color:#aaa196}input:focus,textarea:focus,select:focus{border-color:#c9806a;box-shadow:0 0 0 3px #b849341a}.two-fields{grid-template-columns:1fr 1fr;gap:14px;display:grid}.compact-fields{max-width:360px;margin-bottom:20px}.select-wrap{display:block;position:relative}.select-wrap select{appearance:none;padding-right:31px}.select-wrap svg{color:var(--muted);pointer-events:none;position:absolute;top:13px;right:10px}.dishes-editor{gap:11px;display:grid}.dish-editor{background:#fdfaf5;border:1px solid #e7ded3;border-radius:11px;padding:11px}.dish-editor-top{grid-template-columns:29px 1fr 31px;align-items:center;gap:8px;display:grid}.dish-index{color:#9a6a53;font-family:var(--serif);place-items:center;font-size:11px;display:grid}.dish-editor-top input{font-family:var(--serif);background:0 0;border-color:#0000;font-size:17px}.dish-editor-top input:focus{background:#fffefa;border-color:#d5a08c}.dish-editor details{margin:8px 0 0 37px}.dish-editor summary{color:var(--muted);cursor:pointer;font-size:10px}.dish-details{grid-template-columns:1fr 1fr;gap:9px;margin-top:10px;display:grid}.dish-details label{font-size:10px}.dish-details textarea{min-height:58px;font-size:11px}.add-dish-button{width:auto;color:var(--tomato-dark);background:#fffaf7;border:1px dashed #d3aa9b;border-radius:8px;justify-content:center;align-self:start;align-items:center;gap:6px;margin-top:12px;padding:8px 10px;font-size:11px;font-weight:800;display:inline-flex}.image-uploader{flex-wrap:wrap;gap:10px;display:flex}.image-drop,.image-preview{border-radius:10px;width:121px;height:101px}.image-drop{color:#8b7161;cursor:pointer;background:#fcf7f1;border:1px dashed #c9ae9e;place-content:center;justify-items:center;gap:5px;font-size:11px;display:grid}.image-drop:hover{color:var(--tomato-dark);border-color:var(--tomato)}.image-drop input{display:none}.image-drop small{color:#a3978b;font-size:9px;font-weight:500}.image-preview{background:#d9b394;position:relative;overflow:hidden}.image-preview img{object-fit:cover;width:100%;height:100%}.image-preview button{color:#fff;background:#1e191680;border:0;border-radius:7px;place-items:center;width:25px;height:25px;padding:0;display:grid;position:absolute;top:5px;right:5px}.rating-picker{color:#575148;align-items:center;gap:15px;margin:20px 0;font-size:12px;font-weight:700;display:flex}.rating-picker>div{gap:2px;display:flex}.star-button{color:#d5cbbd;background:0 0;border:0;place-items:center;padding:0;display:grid}.star-button.selected{color:#d0953b}.reflection-card label+label{margin-top:17px}.optional{color:#9a9085;font-size:10px;font-weight:500}.private-field textarea{background:#f8faf6;border-color:#d8dfd5}.form-actions{justify-content:space-between;align-items:center;gap:14px;padding:3px 2px;display:flex}.save-button{min-width:162px;min-height:47px}.form-actions p{color:var(--muted);align-items:center;gap:7px;margin:0;font-size:10px;display:flex}.form-actions .privacy-dot{margin-top:0}.form-error{color:#8b3329;background:#f8e5e1;border-radius:9px;margin:-3px 0 0;padding:10px 12px;font-size:12px}.workspace-page{max-width:1000px}.capture-card{box-shadow:var(--shadow);background:linear-gradient(135deg,#fffdf9,#fbf2e5);border:1px solid #e1d6c8;border-radius:17px;grid-template-columns:54px 1fr;gap:15px;padding:21px;display:grid}.capture-icon{color:#9b6a2a;background:#f4e3bd;border-radius:14px;place-items:center;width:47px;height:47px;display:grid}.capture-card textarea{min-height:55px;font-family:var(--serif);background:0 0;border:0;border-bottom:1px solid #dfd4c6;border-radius:0;font-size:18px}.capture-card textarea:focus{box-shadow:none;border-color:#bd8a5e}.capture-actions{justify-content:space-between;align-items:center;gap:10px;margin-top:12px;display:flex}.capture-actions .select-wrap{width:155px}.idea-board{grid-template-columns:repeat(3,1fr);gap:15px;margin-top:23px;display:grid}.idea-note{background:#fff7df;border:1px solid #e5d8bd;border-radius:3px 14px 9px;min-height:158px;padding:17px;transform:rotate(-.6deg);box-shadow:4px 6px #a8804214}.idea-note:nth-child(3n+2){background:#f2f7ec;border-color:#d7e0d0;transform:rotate(.5deg)}.idea-note:nth-child(3n){background:#f9e9e3;border-color:#e8d1c7;transform:rotate(-.2deg)}.idea-note>div{justify-content:space-between;align-items:center;display:flex}.idea-note>div span{color:#8b6a32;font-size:10px;font-weight:800}.idea-check{color:#fff;background:0 0;border:1px solid #b9aa8a;border-radius:50%;place-items:center;width:23px;height:23px;padding:0;display:grid}.idea-check.checked{border-color:var(--sage);background:var(--sage)}.idea-note p{font-family:var(--serif);margin:22px 0 12px;font-size:17px;line-height:1.55}.idea-note small{color:#8d8273;font-size:10px}.board-empty,.lab-empty{color:var(--muted);text-align:center;border:1px dashed #d4c7b6;border-radius:16px;grid-column:1/-1;justify-items:center;padding:70px 20px;display:grid}.board-empty h2,.lab-empty h2{color:var(--ink);font-family:var(--serif);margin:12px 0 7px;font-size:24px}.board-empty p,.lab-empty>p:not(.eyebrow){margin:0;font-size:13px}.experiment-form-card{max-width:700px;margin-bottom:22px}.experiment-form-card form{gap:15px;display:grid}.form-inline-actions{align-items:center;gap:10px;display:flex}.form-inline-actions .select-wrap{width:128px}.experiment-list{gap:14px;display:grid}.experiment-card{background:linear-gradient(120deg,#fbfcf9,#f1f6ee);border:1px solid #d6ddd3;border-radius:16px;grid-template-columns:112px 1fr auto;gap:20px;padding:22px;display:grid}.experiment-index{color:#70806d;font-family:var(--serif);font-size:14px}.experiment-content .status-chip{margin-bottom:11px;display:inline-block}.experiment-content h2{font-family:var(--serif);margin:0 0 13px;font-size:24px}.experiment-question,.experiment-conclusion{grid-template-columns:58px 1fr;gap:9px;font-size:12px;display:grid}.experiment-question span,.experiment-conclusion span,.conclusion-input>span{color:var(--sage);font-weight:800}.experiment-question p,.experiment-conclusion p{color:#5c625a;margin:0;line-height:1.7}.experiment-conclusion{margin-top:11px}.conclusion-input{grid-template-columns:1fr;gap:7px;margin-top:14px;font-size:11px;display:grid}.conclusion-input textarea{background:#fbfdf9;border-color:#cbd7c7;min-height:53px;font-size:11px}.experiment-status-button{color:#57715e;background:#e6eee4;border:1px solid #c6d4c3;border-radius:12px;align-self:start;place-items:center;gap:4px;width:49px;height:49px;padding:0;font-size:9px;font-weight:800;display:grid}.lab-empty{padding:80px 20px}.lab-empty .eyebrow{margin:13px 0 0}.lab-empty .text-button{margin-top:19px}.report-hero{color:#fffdf6;box-shadow:var(--shadow);background:linear-gradient(125deg,#6c7969,#9b896d);border-radius:20px;grid-template-columns:130px 1fr;align-items:center;gap:25px;padding:32px;display:grid}.report-month{background:#ffffff1a;border:1px solid #ffffff59;border-radius:50%;place-content:center;justify-items:center;width:100px;height:100px;display:grid}.report-month span{font-family:var(--serif);font-size:38px;line-height:1}.report-month small{letter-spacing:.1em;margin-top:4px;font-size:10px}.report-hero .eyebrow{color:#ecdbc7}.report-hero h2{font-family:var(--serif);margin:0 0 7px;font-size:29px}.report-hero p:not(.eyebrow){color:#fffc;margin:0;font-size:13px;line-height:1.7}.report-stat-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0;display:grid}.report-stat{background:#fffdf9;border:1px solid #e0d8cd;border-radius:14px;min-height:128px;padding:19px}.report-stat span,.report-stat strong{display:block}.report-stat span{color:var(--muted);font-size:11px}.report-stat strong{font-family:var(--serif);margin-top:17px;font-size:30px}.report-stat strong small{font-family:var(--sans);margin-left:3px;font-size:10px;font-weight:500}.report-stat.string strong{font-size:18px}.report-reflection{background:#fffdf9b8;border:1px solid #e0d8cd;border-radius:17px;grid-template-columns:.8fr 1.2fr;gap:25px;padding:30px;display:grid}.report-reflection h2{font-family:var(--serif);margin:0;font-size:27px;line-height:1.35}.report-observations{gap:15px;display:grid}.report-observations p{color:#5f584e;grid-template-columns:26px 1fr;gap:9px;margin:0;font-size:13px;line-height:1.8;display:grid}.report-observation-index{color:var(--tomato);font-size:11px;font-weight:800}.report-observation-copy{min-width:0}.publish-page{max-width:950px}.publish-gate{background:linear-gradient(130deg,#f8fbf6,#f6f0e9);border:1px solid #d8ded5;border-radius:18px;grid-template-columns:83px 1fr;gap:21px;padding:31px;display:grid}.gate-mark{color:#587060;background:#dce8d9;border-radius:50%;place-items:center;width:63px;height:63px;display:grid}.publish-gate h2{font-family:var(--serif);margin:0 0 9px;font-size:27px}.publish-gate>div>p:not(.eyebrow){color:#5e625b;max-width:610px;margin:0;font-size:13px;line-height:1.8}.gate-rule-list{color:#516855;flex-wrap:wrap;gap:9px 17px;margin-top:18px;font-size:11px;font-weight:700;display:flex}.gate-rule-list span{align-items:center;gap:5px;display:inline-flex}.publish-queue{background:#fffdf99e;border:1px solid #e2d8cc;border-radius:16px;grid-template-columns:1fr .9fr;align-items:center;gap:30px;margin-top:20px;padding:27px;display:grid}.publish-queue h2{font-family:var(--serif);margin:0;font-size:24px}.queue-note{color:var(--muted);gap:11px;font-size:12px;line-height:1.7;display:flex}.queue-note p{margin:0}.queue-note svg{color:#c1974c;flex:none}.publish-editor{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px;margin-top:20px;display:grid}.publish-source,.publish-form{background:#fffdf9c2;border:1px solid #e2d8cc;border-radius:16px;padding:23px}.publish-source h2{font-family:var(--serif);margin:0 0 16px;font-size:23px}.publish-record-list{gap:9px;max-height:525px;padding-right:3px;display:grid;overflow:auto}.publish-record{width:100%;color:var(--ink);text-align:left;background:#fffdf9;border:1px solid #e4dbd0;border-radius:11px;gap:4px;padding:13px;display:grid}.publish-record:hover,.publish-record.selected{background:#f1f6ed;border-color:#9eaf98}.publish-record span,.publish-record small{color:var(--muted);font-size:10px;line-height:1.45}.publish-record strong{font-family:var(--serif);text-overflow:ellipsis;white-space:nowrap;font-size:16px;overflow:hidden}.publish-record small{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.publish-form{align-content:start;gap:13px;display:grid}.publish-form>label{color:#61594e;gap:7px;font-size:12px;font-weight:700;display:grid}.publish-form textarea{resize:vertical}.publish-image-choice{grid-template-columns:18px 1fr;align-items:center;gap:8px!important;font-weight:600!important;display:flex!important}.publish-image-choice input{width:15px;height:15px;accent-color:var(--sage)}.publish-preview{background:#f6faf3;border:1px dashed #b8c9b5;border-radius:11px;gap:6px;padding:15px;display:grid}.publish-preview .eyebrow{margin:0}.publish-preview strong{font-family:var(--serif);font-size:19px}.publish-preview span,.publish-preview small{color:#687166;font-size:11px;line-height:1.65}.publish-message{color:#3f5f45;background:#e9f2e5;border-radius:9px;margin:0;padding:10px 12px;font-size:11px;line-height:1.65}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:1030px){.page{padding:44px 30px 72px}.metric-grid{grid-template-columns:repeat(2,1fr)}.recipe-layout{grid-template-columns:1fr}.recipe-archive{position:static}}@media (max-width:760px){body{background:var(--paper)}.sidebar{display:none}.main-content{margin-left:0;padding-bottom:68px}.mobile-header{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f6f2eacc;border-bottom:1px solid #dbd1c3bf;justify-content:space-between;align-items:center;height:61px;padding:0 19px;display:flex}.brand.compact{gap:8px;padding:0}.brand.compact .brand-mark{border-radius:9px 9px 9px 3px;width:29px;height:29px;font-size:17px}.brand.compact strong{font-size:17px}.local-badge{color:var(--sage);background:var(--sage-soft);border-radius:99px;padding:4px 7px;font-size:10px;font-weight:800}.local-badge.saving{color:#8b6328;background:var(--gold-soft)}.local-badge.failed{color:#9b4639;background:var(--rose-soft)}.page{padding:31px 17px 35px}.section-heading{margin-bottom:25px;display:block}.section-heading h1{font-size:31px}.section-description{font-size:13px}.heading-action,.desktop-quick-add{display:none}.mobile-nav{z-index:10;-webkit-backdrop-filter:blur(13px);backdrop-filter:blur(13px);background:#fffdf9f0;border-top:1px solid #e0d8cd;grid-template-columns:repeat(5,1fr);align-items:end;height:64px;padding:6px 8px 5px;display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-link{color:#81786d;place-items:center;gap:2px;height:47px;font-size:9px;display:grid}.mobile-link.active{color:var(--tomato);font-weight:800}.quick-add-button{color:#fffaf5;border:4px solid var(--paper);background:var(--tomato);border-radius:50%;place-self:start center;place-items:center;width:49px;height:49px;margin-top:-24px;display:grid;box-shadow:0 5px 15px #82352647}.latest-meal,.first-meal{border-radius:15px;grid-template-columns:1fr;min-height:0;margin-bottom:16px}.latest-visual{min-height:196px}.latest-copy{padding:23px 21px 24px}.latest-copy h2,.first-meal h2{font-size:26px}.first-meal{gap:22px;padding:27px 22px;display:flex}.first-meal-art{flex:none;width:77px;font-size:24px}.first-meal p:not(.eyebrow){font-size:12px}.metric-grid{gap:9px;margin-bottom:16px}.metric-card{border-radius:13px;min-height:112px;padding:14px}.metric-icon{width:27px;height:27px;margin-bottom:8px}.metric-card strong{font-size:26px}.metric-compact strong{font-size:16px}.dashboard-columns,.lower-columns{grid-template-columns:1fr;gap:16px}.lower-columns{margin-top:16px}.panel,.story-callout,.experiment-teaser{padding:19px}.story-callout{gap:12px}.record-view-switch{margin:-7px 0 18px}.timeline-entry{grid-template-columns:13px 1fr;gap:10px;padding-bottom:17px}.timeline-date,.record-card{grid-column:2}.record-card-main{gap:11px;padding:13px}.record-thumb{width:77px;height:72px}.record-copy h2{font-size:18px}.record-copy>p{font-size:12px}.record-detail-page{padding-top:23px}.back-link{margin-bottom:20px}.record-detail-heading{gap:18px;margin-bottom:20px;display:grid}.record-detail-heading h1,.record-missing h1{font-size:33px}.record-detail-actions{width:100%}.record-detail-actions>*{flex:1}.record-gallery{border-radius:14px;min-height:190px;margin-bottom:15px}.record-gallery img{min-height:190px}.record-gallery.images-3,.record-gallery.images-4{grid-template-rows:repeat(2,125px)}.record-gallery.images-3 img:not(:first-child),.record-gallery.images-4 img{min-height:0}.record-detail-grid{grid-template-columns:1fr;gap:12px}.detail-panel{border-radius:14px;padding:17px}.private-note-panel{grid-column:auto}.record-danger-zone{border-radius:14px;gap:15px;margin-top:14px;padding:18px;display:grid}.record-danger-zone>.danger-button{width:100%}.delete-confirm{max-width:none}.calendar-card{padding:14px 7px 7px}.calendar-toolbar{margin-bottom:17px}.calendar-day{min-height:66px;padding:5px}.calendar-markers{gap:1px;margin-top:7px}.calendar-markers img,.calendar-markers i{width:17px;height:17px}.recipe-library{padding:15px}.recipe-grid{gap:8px}.recipe-card-art{height:96px}.recipe-card>div:last-child{padding:10px}.recipe-card h2{font-size:16px}.recipe-archive{border-radius:14px}.sop-archive{max-height:none;overflow:visible}.sop-run-note{grid-template-columns:auto 1fr;margin-top:-7px}.sop-run-note>p{grid-column:1/-1}.sop-editor{margin:0 10px;padding:15px}.sop-editor-grid{grid-template-columns:1fr 1fr}.sop-editor-grid>label:last-child{grid-column:1/-1}.sop-ingredient-row{grid-template-columns:minmax(80px,1fr) 51px 39px 24px}.sop-ingredient-row input:nth-of-type(4){grid-column:1/-2}.sop-step-row{grid-template-columns:16px minmax(0,1fr) 24px}.sop-step-row input{grid-column:2}.sop-step-row>button{grid-area:1/3}.form-card,.experiment-form-card{border-radius:14px;padding:20px 16px}.form-section-title h2{font-size:20px}.two-fields{gap:10px}.dish-details{grid-template-columns:1fr}.dish-editor details{margin-left:0}.image-drop,.image-preview{width:calc(50% - 5px);height:120px}.form-actions{flex-direction:column;align-items:flex-start}.save-button{width:100%}.capture-card{grid-template-columns:1fr;gap:9px;padding:17px}.capture-icon{width:38px;height:38px}.capture-actions{flex-direction:column;align-items:stretch}.capture-actions .select-wrap{width:100%}.idea-board{grid-template-columns:1fr 1fr;gap:10px}.idea-note{min-height:145px;padding:13px}.idea-note p{margin:18px 0 10px;font-size:15px}.experiment-card{grid-template-columns:1fr auto;gap:13px;padding:18px}.experiment-index{grid-column:1/-1}.experiment-content{grid-column:1}.experiment-status-button{grid-area:2/2}.report-hero{grid-template-columns:76px 1fr;gap:14px;padding:22px 18px}.report-month{width:65px;height:65px}.report-month span{font-size:26px}.report-hero h2{font-size:22px}.report-stat-grid{grid-template-columns:1fr 1fr;gap:9px}.report-stat{min-height:105px;padding:14px}.report-stat strong{margin-top:12px;font-size:25px}.report-reflection,.publish-queue,.publish-editor{grid-template-columns:1fr;gap:17px;padding:21px}.publish-gate{grid-template-columns:1fr;gap:13px;padding:23px}}@media (max-width:385px){.metric-card{padding:11px}.metric-card strong{font-size:23px}.first-meal{padding:22px 17px}.first-meal-art{display:none}.idea-board{grid-template-columns:1fr}}.login-page{background:radial-gradient(circle at 80% 10%, #d9b89359, transparent 26rem), var(--paper);place-items:center;min-height:100vh;padding:22px;display:grid}.login-page section{width:min(100%,430px);box-shadow:var(--shadow);background:#fffdf9e8;border:1px solid #e1d6c8;border-radius:19px;padding:36px}.login-page h1{font-family:var(--serif);margin:0 0 10px;font-size:34px;line-height:1.3}.login-page section>p:not(.eyebrow){color:var(--muted);margin:0 0 23px;font-size:13px;line-height:1.75}.login-page form{gap:15px;display:grid}.login-page .primary-button{width:100%}.login-message{color:var(--sage);margin-top:15px;font-size:12px;line-height:1.6;display:block}.settings-page{max-width:820px}.password-settings-card{background:linear-gradient(130deg,#f8fbf6,#fdf9f3);border:1px solid #d8ded5;border-radius:18px;max-width:560px;padding:29px}.password-settings-card h2{font-family:var(--serif);margin:0;font-size:26px}.password-settings-card>p{color:var(--muted);margin:9px 0 22px;font-size:13px;line-height:1.7}.password-settings-form{gap:14px;display:grid}.password-settings-form label{color:#61594e;gap:7px;font-size:12px;font-weight:700;display:grid}.password-settings-form input{width:100%;min-height:42px;color:var(--ink);background:#fffdfa;border:1px solid #ded6c9;border-radius:9px;outline:none;padding:9px 11px}.password-settings-form input:focus{border-color:#bc735f;box-shadow:0 0 0 3px #b849341a}.password-settings-hint{color:var(--muted);margin:-2px 0 2px;font-size:11px;line-height:1.65}.mobile-header-actions{align-items:center;gap:9px;display:flex}.mobile-account-link{color:#746d63;border:1px solid var(--line);background:#ffffff70;border-radius:9px;place-items:center;width:30px;height:30px;display:grid}
