:root{--font-family:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-size-sm:.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.375rem;--font-size-2xl:1.75rem;--font-size-3xl:2.25rem;--line-height:1.5;--color-bg:#f7f3ee;--color-surface:#fff;--color-surface-muted:#efe9e1;--color-text:#221c18;--color-text-muted:#6f655d;--color-border:#e2d9cf;--color-accent:#b8451f;--color-accent-strong:#933516;--color-accent-soft:#fbe9df;--color-on-accent:#fff;--color-success:#2e7d4f;--color-success-soft:#e3f3e8;--color-danger:#b42318;--color-danger-soft:#fdecec;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-pill:999px;--shadow-sm:0 1px 2px #221c180f, 0 1px 3px #221c1814;--shadow-md:0 6px 16px #221c181a;--page-max:1200px;--prose-max:68ch;--control-height:44px}*,:before,:after{box-sizing:border-box}:root{font-family:var(--font-family);font-size:16px;line-height:var(--line-height);color:var(--color-text);background:var(--color-bg);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-font-smoothing:antialiased;-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{min-height:100vh;margin:0}h1,h2,h3{letter-spacing:-.01em;overflow-wrap:anywhere;margin:0;font-weight:700;line-height:1.2}h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-lg)}p{margin:0 0 var(--space-3)}img{max-width:100%}button{font:inherit;min-height:var(--control-height);padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer;font-weight:600;transition:background-color .12s,box-shadow .12s}button:hover{background:var(--color-surface-muted)}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--color-accent-soft);outline-offset:0;border-color:var(--color-accent)}button:disabled{opacity:.5;cursor:default}button.primary{background:var(--color-accent);border-color:var(--color-accent);color:var(--color-on-accent)}button.primary:hover:not(:disabled){background:var(--color-accent-strong);border-color:var(--color-accent-strong)}input,select{font:inherit;min-height:var(--control-height);width:100%;padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text)}input[type=file]{padding:var(--space-2) var(--space-3);color:var(--color-text-muted)}input[type=checkbox]{width:22px;height:22px;min-height:0;accent-color:var(--color-accent);flex:none;margin:0;padding:0}label{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:600}form{gap:var(--space-2);flex-direction:column;display:flex}p[role=status]{color:var(--color-text-muted)}p[role=alert]{color:var(--color-danger);background:var(--color-danger-soft);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4)}@media (width>=900px){h1{font-size:var(--font-size-3xl)}h2{font-size:var(--font-size-xl)}}.ingredients h2{margin-bottom:var(--space-3)}.ingredients ul{margin:0;padding:0;list-style:none}.ingredients li{border-top:1px solid var(--color-border)}.ingredients li:first-child{border-top:0}.ingredient-line{width:100%;min-height:var(--control-height);padding:var(--space-2) 0;text-align:left;background:0 0;border:0;border-radius:0;font-weight:400;display:block}.ingredient-line:hover{background:0 0}.ingredient-line.crossed{color:var(--color-text-muted);text-decoration:line-through}.ingredient-prep{font-size:var(--font-size-sm);color:var(--color-text-muted);display:block}.recipe-map{margin-bottom:var(--space-5);border-radius:var(--radius-md);-webkit-overflow-scrolling:touch;overflow-x:auto}.recipe-map svg{display:block}.recipe-map g.segment{cursor:pointer}.recipe-map g.segment:focus{outline:none}.recipe-map g.segment[data-state=done]{opacity:.35}.recipe-map g.segment[data-state=next] text{font-weight:700}.recipe-map g.segment[data-state=current] rect:not(.hit){stroke:var(--color-accent-strong);stroke-width:2px}.recipe-map g.segment[data-here=true] rect:not(.hit),.recipe-map g.segment:focus-visible rect:not(.hit){stroke:var(--color-text);stroke-width:3px}.recipe-map g.segment[data-here=true] rect.hit{fill:var(--color-accent-soft);stroke:var(--color-accent-strong);stroke-width:2px}.recipe-map g.segment[data-here=true] text{font-weight:700}.cook-toolbar{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.cook-serve{color:var(--color-accent-strong);font-variant-numeric:tabular-nums;margin:0 0 0 auto;font-weight:600}.cook-warnings{margin:0 0 var(--space-4);padding:var(--space-3) var(--space-4) var(--space-3) var(--space-6);background:var(--color-danger-soft);color:var(--color-danger);border-radius:var(--radius-md)}.cook-columns{gap:var(--space-5);display:grid}.cook-tasks{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.cook-task{gap:var(--space-3);flex-direction:column;display:flex}.cook-task h2{font-size:var(--font-size-xl)}.cook-task.cook-task-next{border:2px solid var(--color-accent)}.cook-task-badge{padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--color-accent);color:var(--color-on-accent);font-size:var(--font-size-sm);align-self:flex-start;margin:0;font-weight:600}.cook-task-when{color:var(--color-text-muted);font-variant-numeric:tabular-nums;margin:0}.cook-task button{align-self:flex-start;min-width:140px}.cook-done{padding:var(--space-5);text-align:center;color:var(--color-success);background:var(--color-success-soft);border-radius:var(--radius-lg);font-weight:600}.cook-main>h2{margin:0 0 var(--space-3);font-size:var(--font-size-xl)}.cook-done-steps{padding:0 0 0 var(--space-5);gap:var(--space-2);margin:0;display:grid}.cook-side{gap:var(--space-4);align-content:start;display:grid}.cook-timers{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.cook-timer{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-accent-soft);color:var(--color-accent-strong);font-variant-numeric:tabular-nums;font-weight:600}.cook-timer-done{background:var(--color-success-soft);color:var(--color-success)}@media (width>=900px){.cook-columns{gap:var(--space-7);grid-template-columns:minmax(0,2fr) minmax(280px,1fr);align-items:start}.cook-side{position:sticky;top:80px}.cook-task h2{font-size:var(--font-size-2xl)}}.edit-recipe-note{margin:0 0 var(--space-4);color:var(--color-text-muted)}.edit-recipe-form{max-width:var(--prose-max)}.edit-recipe-form textarea{font:inherit;width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);resize:vertical;line-height:1.5}.edit-recipe-form textarea:focus-visible{outline:3px solid var(--color-accent-soft);outline-offset:0;border-color:var(--color-accent)}.edit-recipe-serves{width:6ch}.edit-recipe-categories{border:0;margin:0;padding:0}.edit-recipe-categories legend{margin-bottom:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-muted);padding:0;font-weight:600}.edit-recipe-category-list{gap:var(--space-2);margin:0 0 var(--space-3);flex-wrap:wrap;padding:0;list-style:none;display:flex}.edit-recipe-category-add{gap:var(--space-2);flex-wrap:wrap;display:flex}.edit-recipe-category-add input{flex:200px}.edit-recipe-form .actions{margin-top:var(--space-2)}.grocery h2{margin-bottom:var(--space-2)}.grocery ul{margin:0;padding:0;list-style:none}.grocery li+li{border-top:1px solid var(--color-border)}.grocery li{align-items:center;gap:var(--space-3);display:flex}.grocery-aisle h3{margin:var(--space-4) 0 var(--space-1);font-size:var(--font-size-sm);text-transform:capitalize;color:var(--color-text-muted);font-weight:600}.grocery label{align-items:center;gap:var(--space-3);min-height:var(--control-height);padding:var(--space-1) 0;font-size:var(--font-size-md);color:var(--color-text);cursor:pointer;flex:1;font-weight:500;display:flex}.grocery-ticked{color:var(--color-text-muted);text-decoration:line-through}.grocery-remove{min-height:var(--control-height);font-size:var(--font-size-sm)}.grocery-have{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:400}.groceries{gap:var(--space-4);display:grid}.groceries .page-header{margin-bottom:0}.groceries-add{gap:var(--space-2);flex-direction:column;display:flex}.groceries-list{gap:var(--space-4);display:grid}.groceries-order{align-items:center;gap:var(--space-2);display:flex}.groceries-order label{white-space:nowrap}.groceries-merge p{margin:0 0 var(--space-2)}.groceries-merge-actions{gap:var(--space-2);display:flex}@media (width>=900px){.groceries{grid-template-columns:320px 1fr;align-items:start}.groceries .page-header,.groceries [role=alert],.groceries .groceries-merge{grid-column:1/-1}}.groceries-hidden{font-size:var(--font-size-sm);color:var(--color-text-muted);margin-left:auto}.pantry-item{min-height:var(--control-height);font-size:var(--font-size-md);flex:1;align-items:center;font-weight:500;display:flex}.groceries-order label:has(input[role=switch]){align-items:center;gap:var(--space-2);min-height:var(--control-height);display:flex}.import-ways{gap:var(--space-3);margin-bottom:var(--space-4);display:grid}.import-ways h2{margin-bottom:var(--space-2);font-size:var(--font-size-lg)}.import-ways button[type=submit]{align-self:flex-start}.type-it-in textarea{font:inherit;width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);resize:vertical;line-height:1.5}.type-it-in textarea:focus-visible{outline:3px solid var(--color-accent-soft);outline-offset:0;border-color:var(--color-accent)}.type-it-in-serves{width:6ch}.bookmarklet-card{display:none}.bookmarklet{padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--color-accent);color:var(--color-on-accent);cursor:grab;align-self:flex-start;text-decoration:none;display:inline-block}@media (width>=900px){.bookmarklet-card{display:block}.import-ways{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr))}.import-ways .type-it-in{grid-column:1/-1}}.library-controls{gap:var(--space-2);margin-bottom:var(--space-4);display:grid}.recipe-grid{gap:var(--space-3);grid-template-columns:1fr;margin:0;padding:0;list-style:none;display:grid}.recipe-card{text-align:left;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);width:100%;min-height:0;box-shadow:var(--shadow-sm);flex-direction:row;align-items:stretch;padding:0;display:flex;overflow:hidden}.recipe-card:hover{background:var(--color-surface);box-shadow:var(--shadow-md)}.recipe-card-photo,.recipe-card-placeholder{background:var(--color-surface-muted);flex:0 0 96px;width:96px;min-height:96px}.recipe-card-photo{object-fit:cover;display:block}.recipe-card-placeholder{background:linear-gradient(135deg, var(--color-accent-soft), var(--color-surface-muted));color:var(--color-accent);font-size:var(--font-size-3xl);place-items:center;font-weight:800;display:grid}.recipe-card-body{justify-content:center;gap:var(--space-1);min-width:0;padding:var(--space-3);flex-direction:column;flex:auto;display:flex}.recipe-card-title{font-size:var(--font-size-md);overflow-wrap:anywhere;font-weight:600;line-height:1.3}.recipe-card-time{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:500}@media (width>=900px){.library-controls{margin-bottom:var(--space-5);grid-template-columns:minmax(0,1fr) 260px}.recipe-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.recipe-card{flex-direction:column}.recipe-card-photo,.recipe-card-placeholder{aspect-ratio:4/3;flex:none;width:100%;min-height:0}.recipe-card-body{padding:var(--space-4);justify-content:flex-start}}.add-groceries-hint{margin:0 0 var(--space-2);color:var(--color-text-muted)}.add-groceries .actions{margin-top:var(--space-4)}.menus{margin-top:var(--space-6);padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md)}.menus h2{margin:0 0 var(--space-3);font-size:var(--font-size-lg)}.menus-save,.menus-rename{align-items:flex-end;gap:var(--space-2);flex-flow:wrap;display:flex}.menus-save label{gap:var(--space-1);font-size:var(--font-size-sm);color:var(--color-text-muted);flex-direction:column;display:flex}.menus-replace{align-items:center;gap:var(--space-2);margin-top:var(--space-3);font-size:var(--font-size-sm);display:flex}.menus-hint{color:var(--color-text-muted);font-size:var(--font-size-sm)}.menus-list{margin:var(--space-3) 0 0;padding:0;list-style:none}.menus-item{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-3) 0;border-top:1px solid var(--color-border);flex-wrap:wrap;display:flex}.menus-name{flex-direction:column;font-weight:600;display:flex}.menus-count{font-weight:400;font-size:var(--font-size-sm);color:var(--color-text-muted)}.menus-controls{gap:var(--space-2);flex-wrap:wrap;display:flex}.recipe-search{gap:var(--space-3);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;display:flex}.recipe-search-header{justify-content:space-between;align-items:center;gap:var(--space-2);display:flex}.recipe-search-header h2{font-size:var(--font-size-md)}.recipe-search-results{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.recipe-search-results li{align-items:center;gap:var(--space-2);cursor:grab;display:flex}.recipe-search-open{text-align:left;white-space:normal;background:var(--color-surface-muted);border-color:var(--color-surface-muted);flex:1;justify-content:flex-start}.recipe-search-sheet{z-index:20;border-radius:var(--radius-lg) var(--radius-lg) 0 0;max-height:70vh;box-shadow:var(--shadow-md);animation:.18s ease-out recipe-search-slide-up;position:fixed;bottom:0;left:0;right:0}@keyframes recipe-search-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.meal-plan-nav{align-items:center;gap:var(--space-2);display:flex}.meal-plan-range{white-space:nowrap;font-weight:600}.meal-plan-views{gap:var(--space-1);display:flex}.meal-plan-views button[aria-pressed=true]{background:var(--color-accent-soft);border-color:var(--color-accent);color:var(--color-accent-strong)}.meal-plan-actions{margin-bottom:var(--space-4)}.meal-plan-days{align-items:flex-end;gap:var(--space-3);margin-bottom:var(--space-4);flex-flow:wrap;display:flex}.meal-plan-days label{gap:var(--space-1);font-size:var(--font-size-sm);color:var(--color-text-muted);flex-direction:column;display:flex}.meal-plan-household,.meal-people{align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);color:var(--color-text-muted);display:flex}.meal-plan-household{margin-bottom:var(--space-3)}.meal-plan-household input,.meal-people input{width:4.5em}.meal-people{grid-column:2}.week{margin:var(--space-4) 0 0;gap:var(--space-3);padding:0;list-style:none;display:grid}.day{gap:var(--space-3);padding:var(--space-3);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);flex-direction:column;display:flex}.day-today{border-color:var(--color-accent);box-shadow:0 0 0 3px var(--color-accent-soft)}.day h2{justify-content:space-between;align-items:baseline;gap:var(--space-2);font-size:var(--font-size-md);display:flex}.day-date{color:var(--color-text-muted);font-weight:500}.day-today h2{color:var(--color-accent-strong)}.meal{align-items:center;gap:var(--space-1) var(--space-2);grid-template-columns:88px minmax(0,1fr);display:grid}.meal-slot{font-size:var(--font-size-sm);color:var(--color-text-muted);font-weight:600}.meal-open{min-height:36px;padding:0 var(--space-3);font-size:var(--font-size-sm);background:var(--color-accent-soft);border-color:var(--color-accent-soft);color:var(--color-accent-strong);grid-column:2;justify-self:start}.month{margin:var(--space-4) 0 0;gap:var(--space-1);grid-template-columns:repeat(7,minmax(0,1fr));padding:0;list-style:none;display:grid}.month-day{gap:var(--space-1);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex-direction:column;min-height:52px;display:flex}.month-day-outside{opacity:.5}.month-day-open{justify-content:flex-start;align-items:center;gap:var(--space-1);padding:var(--space-1);background:0 0;border:none;flex-direction:column;flex:1;min-height:52px;display:flex}.month-date{font-size:var(--font-size-sm);font-weight:600}.month-dot{background:var(--color-accent);border-radius:50%;width:8px;height:8px}.meal-plan-held{align-items:center;gap:var(--space-2);flex-wrap:wrap;font-weight:600;display:flex}.meal-plan-here{min-height:36px;font-size:var(--font-size-sm);border-style:dashed;border-color:var(--color-accent);color:var(--color-accent-strong);grid-column:2;justify-self:start}@media (width>=900px){.meal-plan-body{align-items:start;gap:var(--space-4);grid-template-columns:minmax(0,1fr) 16rem;display:grid}.meal-plan-body .recipe-search{margin-top:var(--space-4);top:var(--space-8);max-height:calc(100vh - var(--space-8) - var(--space-4));position:sticky}.week{gap:var(--space-3);grid-template-columns:repeat(7,minmax(0,1fr))}.week-one-day{grid-template-columns:minmax(0,28rem)}.month{gap:var(--space-2)}.month-day{min-height:96px;padding:var(--space-2)}.month-meal{font-size:var(--font-size-sm)}.day h2{flex-direction:column;align-items:flex-start;gap:0}.meal{grid-template-columns:minmax(0,1fr)}.meal-people{flex-wrap:wrap;grid-column:1}.meal-open,.meal-plan-here{white-space:normal;text-align:left;padding:var(--space-1) var(--space-3);grid-column:1;justify-self:stretch}}.recipe-toolbar{margin-bottom:var(--space-3)}.recipe-hero{gap:var(--space-4);margin-bottom:var(--space-5);flex-direction:column;display:flex}.recipe-photo{aspect-ratio:16/10;object-fit:cover;border-radius:var(--radius-lg);background:var(--color-surface-muted);width:100%;display:block}.recipe-photo-placeholder{background:linear-gradient(135deg, var(--color-accent-soft), var(--color-surface-muted));color:var(--color-accent);font-size:var(--font-size-3xl);place-items:center;font-weight:800;display:grid}.recipe-hero-body{gap:var(--space-3);flex-direction:column;display:flex}.recipe-meta{color:var(--color-text-muted);margin:0}.recipe-serves{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.recipe-serves-label{font-weight:600}.recipe-serves button{min-width:44px;padding:var(--space-1) var(--space-2);font-size:var(--font-size-lg);line-height:1}.recipe-serves input{width:4.5ch;padding:var(--space-1) var(--space-2);text-align:center;font-size:var(--font-size-lg);font-weight:600}.recipe-serves-note{font-size:var(--font-size-sm);color:var(--color-text-muted)}.recipe-categories{border:0;margin:0;padding:0}.recipe-categories legend{margin-bottom:var(--space-2);padding:0;font-weight:600}.recipe-categories-list{gap:var(--space-2);margin:0 0 var(--space-3);flex-wrap:wrap;padding:0;list-style:none;display:flex}.recipe-category-chip{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);font-size:var(--font-size-sm);cursor:pointer;display:inline-flex}.recipe-category-chip.on{border-color:var(--color-accent);background:var(--color-accent-soft);color:var(--color-accent);font-weight:600}.recipe-category-chip input{margin:0}.recipe-category-add{gap:var(--space-2);flex-flow:wrap;display:flex}.recipe-category-add input{flex:200px}.recipe-columns{gap:var(--space-5);display:grid}.recipe-side{gap:var(--space-4);flex-direction:column;display:flex}.recipe-method h2{margin-bottom:var(--space-3)}.recipe-method{max-width:var(--prose-max)}.method-summary{font-weight:600}.method-steps{padding-left:var(--space-5);margin:0}.method-steps>li{padding:var(--space-2) 0 var(--space-2) var(--space-2)}.method-steps>li::marker{color:var(--color-accent);font-weight:700}.method-steps>li+li{border-top:1px solid var(--color-border)}.method-steps p{margin:0}.method-steps ul{margin:var(--space-1) 0 0;padding-left:var(--space-4);font-size:var(--font-size-sm);color:var(--color-text-muted)}.recipe-method h3{margin-top:var(--space-4);font-size:var(--font-size-md)}@media (width>=900px){.recipe-hero{align-items:flex-start;gap:var(--space-6);flex-direction:row}.recipe-photo{flex:none;width:360px}.recipe-hero-body{gap:var(--space-4);flex:1}.recipe-columns{gap:var(--space-7);grid-template-columns:minmax(260px,1fr) minmax(0,2fr);align-items:start}.recipe-side{position:sticky;top:80px}}.shared-recipe{max-width:var(--prose-max);padding:var(--space-5) var(--space-4) var(--space-7);font-family:var(--font-family);line-height:var(--line-height);color:var(--color-text);margin:0 auto}.shared-recipe h1{margin:0 0 var(--space-2);font-size:var(--font-size-2xl)}.shared-recipe-meta{margin:0 0 var(--space-4);color:var(--color-text-muted)}.shared-recipe-photo{object-fit:cover;border-radius:var(--radius-lg);width:100%;max-height:22rem;margin-bottom:var(--space-5);display:block}.shared-recipe h2{font-size:var(--font-size-lg);margin:var(--space-5) 0 var(--space-2)}.shared-recipe-ingredients ul{padding-left:var(--space-5);margin:0}.shared-recipe-prep{color:var(--color-text-muted)}.shared-recipe-status{max-width:var(--prose-max);margin:var(--space-7) auto;padding:0 var(--space-4);font-family:var(--font-family)}@page{size:A4;margin:14mm 15mm}@media print{.shared-recipe{max-width:none;padding:0;font-size:10pt;line-height:1.35}.shared-recipe h1{font-size:18pt}.shared-recipe h2{margin:4mm 0 2mm;font-size:12pt}.shared-recipe-photo{border-radius:0;max-height:60mm;margin-bottom:4mm}.shared-recipe-ingredients ul{columns:2;column-gap:8mm}.shared-recipe li{break-inside:avoid}.shared-recipe .method-steps{padding-left:8mm}.shared-recipe .method-steps>li{padding:1mm 0 1mm 1mm}.shared-recipe a{color:inherit;text-decoration:none}}.signin{gap:var(--space-4);width:100%;max-width:420px;margin:var(--space-6) auto 0;padding:var(--space-5);flex-direction:column;display:flex}.signin-brand{font-weight:800;font-size:var(--font-size-lg);letter-spacing:-.02em;color:var(--color-accent)}.signin-page{min-height:100vh;padding:var(--space-4)}@media (width>=900px){.signin{margin-top:var(--space-8);padding:var(--space-6)}}.app{flex-direction:column;min-height:100vh;display:flex}.app-nav{z-index:10;background:var(--color-surface);border-bottom:1px solid var(--color-border);position:sticky;top:0}.app-nav-inner{justify-content:space-between;align-items:center;gap:var(--space-1);height:56px;max-width:var(--page-max);padding:0 var(--space-3);margin:0 auto;display:flex;overflow-x:auto}.app-brand{font-weight:800;font-size:var(--font-size-lg);letter-spacing:-.02em;color:var(--color-accent);margin-right:auto;display:none}.app-nav button{min-height:36px;padding:0 var(--space-1);border-radius:var(--radius-pill);color:var(--color-text-muted);white-space:nowrap;background:0 0;border:0}.app-nav button:hover{background:var(--color-surface-muted);color:var(--color-text)}.app-nav button[aria-current]{background:var(--color-accent-soft);color:var(--color-accent-strong)}main{width:100%;max-width:var(--page-max);padding:var(--space-4) var(--space-4) var(--space-7);flex:1;margin:0 auto}.page-header{align-items:center;gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.page-header h1{margin-right:auto}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:var(--space-4)}.actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.empty{padding:var(--space-7) var(--space-4);text-align:center;color:var(--color-text-muted)}@media (width>=900px){.app-brand{display:inline}.app-nav-inner{height:64px;padding:0 var(--space-5);justify-content:flex-start;gap:var(--space-2)}.app-nav button{padding:0 var(--space-4)}main{padding:var(--space-6) var(--space-5) var(--space-8)}.page-header{margin-bottom:var(--space-5)}.card{padding:var(--space-5)}}
