:root{--bg: #f7f4ef;--surface: #fffdfa;--surface-2: #f0ebe3;--text: #24211d;--text-2: #6c655b;--line: #e5dfd5;--accent: #3d6a54;--accent-hover: #335a47;--accent-ink: #ffffff;--accent-soft: #e2ece5;--qty: #2c5a43;--qty-bg: #e5efe8;--active-bg: #f3ead7;--danger: #a3412d;--danger-soft: #f8e6e1;--shadow: 0 1px 2px rgba(36, 33, 29, .05), 0 6px 20px rgba(36, 33, 29, .06);--radius: 16px;--radius-sm: 10px;--tap: 48px;--serif: ui-serif, "New York", "Iowan Old Style", Georgia, "Times New Roman", serif;--sans: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--safe-b: env(safe-area-inset-bottom, 0px);--safe-t: env(safe-area-inset-top, 0px);--safe-l: env(safe-area-inset-left, 0px);--safe-r: env(safe-area-inset-right, 0px);color-scheme:light dark}@media(prefers-color-scheme:dark){:root{--bg: #171614;--surface: #211f1c;--surface-2: #2b2925;--text: #efebe4;--text-2: #a8a095;--line: #36332e;--accent: #7fb59a;--accent-hover: #93c4ab;--accent-ink: #11201a;--accent-soft: #23332b;--qty: #9fd0b6;--qty-bg: #233229;--active-bg: #3a3222;--danger: #e58a76;--danger-soft: #3a2420;--shadow: 0 1px 2px rgba(0, 0, 0, .3), 0 6px 20px rgba(0, 0, 0, .25)}}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);font-size:17px;line-height:1.5;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}html.is-cooking,html.is-cooking body{overflow:hidden;overscroll-behavior:none}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:default}a{color:inherit}:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 55%,transparent);outline-offset:2px}.icon{flex:none;display:block}.muted{color:var(--text-2)}.small{font-size:.85rem}.center{text-align:center}code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.88em;background:var(--surface-2);padding:.05em .35em;border-radius:5px}.page{max-width:1120px;margin:0 auto;padding:calc(16px + var(--safe-t)) calc(16px + var(--safe-r)) calc(40px + var(--safe-b)) calc(16px + var(--safe-l))}@media(min-width:768px){.page{padding-left:calc(32px + var(--safe-l));padding-right:calc(32px + var(--safe-r))}}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:8px 0 16px}.eyebrow{margin:0;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--text-2)}.page-title{font-family:var(--serif);font-weight:600;font-size:clamp(1.7rem,4vw + .6rem,2.4rem);line-height:1.15;margin:0;letter-spacing:-.01em}.section-title{font-size:.8rem;font-weight:650;text-transform:uppercase;letter-spacing:.08em;color:var(--text-2);margin:0 0 10px}.lead{color:var(--text-2);margin:8px 0 0}.topbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.topbar-title{font-size:1.05rem;margin:0;font-weight:600}.topbar-actions{display:flex;gap:4px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 16px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--text);font-weight:550;text-decoration:none;white-space:nowrap;transition:background .15s,border-color .15s,transform .08s}.btn:active:not(:disabled){transform:scale(.98)}.btn:disabled{opacity:.5}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-quiet{background:transparent;border-color:transparent;color:var(--text-2)}.btn-lg{min-height:52px;padding:0 22px;font-size:1.05rem}.icon-btn{display:inline-flex;align-items:center;justify-content:center;width:var(--tap);height:var(--tap);border-radius:999px;border:0;background:transparent;color:var(--text);text-decoration:none}.icon-btn:hover:not(:disabled){background:var(--surface-2)}.icon-btn:disabled{opacity:.3}.icon-btn.sm{width:36px;height:36px}.link-btn{border:0;background:none;color:var(--accent);font-weight:600;padding:6px 4px;font-size:.9rem}.search{display:flex;align-items:center;gap:10px;padding:0 14px;background:var(--surface);border:1px solid var(--line);border-radius:999px;color:var(--text-2)}.search input{flex:1;min-width:0;border:0;background:transparent;height:48px;outline:none;color:var(--text);font-size:16px}.chips{display:flex;gap:8px;overflow-x:auto;padding:12px 0 4px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.chips::-webkit-scrollbar{display:none}.chip{flex:none;min-height:36px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--text-2);font-size:.9rem;font-weight:550}.chip.is-on{background:var(--text);color:var(--bg);border-color:var(--text)}.card-grid{list-style:none;padding:0;margin:16px 0 0;display:grid;gap:14px;grid-template-columns:1fr}@media(min-width:600px){.card-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1000px){.card-grid{grid-template-columns:repeat(3,1fr)}}.card{display:flex;gap:14px;height:100%;padding:12px;text-decoration:none;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);transition:transform .12s,box-shadow .12s}.card:active{transform:scale(.99)}@media(min-width:600px){.card{flex-direction:column;padding:0;overflow:hidden}}.card-thumb{width:88px;height:88px;border-radius:12px}@media(min-width:600px){.card-thumb{width:100%;height:150px;border-radius:0}}.card-body{min-width:0;display:flex;flex-direction:column;gap:4px}@media(min-width:600px){.card-body{padding:4px 16px 16px}}.card-title{font-family:var(--serif);font-size:1.2rem;font-weight:600;margin:0;line-height:1.25}.thumb{display:block;object-fit:cover;flex:none;background:var(--surface-2)}.thumb-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,hsl(var(--h) 32% 86%),hsl(calc(var(--h) + 25) 30% 78%));color:hsl(var(--h) 25% 30%);font-family:var(--serif);font-size:2rem;font-weight:600}@media(prefers-color-scheme:dark){.thumb-placeholder{background:linear-gradient(135deg,hsl(var(--h) 18% 26%),hsl(calc(var(--h) + 25) 18% 20%));color:hsl(var(--h) 30% 75%)}}.meta{display:flex;flex-wrap:wrap;gap:4px 14px;margin:6px 0 0;color:var(--text-2);font-size:.9rem}.meta>span{display:inline-flex;align-items:center;gap:5px}.meta .icon{width:16px;height:16px}.tags{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0}.tag{font-size:.78rem;padding:2px 9px;border-radius:999px;background:var(--surface-2);color:var(--text-2)}.badge{display:inline-block;vertical-align:middle;margin-left:8px;font-family:var(--sans);font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:2px 7px;border-radius:6px;background:var(--active-bg);color:#8a5a12}@media(prefers-color-scheme:dark){.badge{color:#e7c27c}}.empty{text-align:center;padding:48px 16px;color:var(--text-2);display:grid;justify-items:center;gap:12px}.demo-note{margin-top:32px;padding:16px;border-radius:var(--radius);background:var(--surface-2);color:var(--text-2);font-size:.9rem;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.demo-note p{margin:0;flex:1 1 280px}.demo-note .badge{margin:0 2px}.recipe-hero{display:grid;gap:16px;margin:4px 0 16px}.hero-img{width:100%;max-height:38vh;border-radius:var(--radius)}@media(min-width:900px){.recipe-hero:has(.hero-img){grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);align-items:center}.hero-img{max-height:340px}}.recipe-actions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding:12px;margin-bottom:16px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius)}.recipe-actions .btn-primary{flex:1 1 180px;max-width:320px}.recipe-columns{display:grid;gap:16px}@media(min-width:900px){.recipe-columns{grid-template-columns:minmax(280px,1fr) 2fr;align-items:start}.recipe-columns>:first-child{position:sticky;top:16px}}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px}.stepper{display:inline-flex;align-items:center;background:var(--surface-2);border-radius:999px;padding:3px}.stepper-btn{width:44px;height:44px;border-radius:999px;border:0;background:var(--surface);display:grid;place-items:center;box-shadow:0 1px 2px #0000000f}.stepper-btn:disabled{opacity:.35}.stepper-val{border:0;background:none;min-width:7.2em;padding:0 6px;text-align:center;white-space:nowrap;line-height:1.1}.stepper-val b{font-size:1.15rem;font-variant-numeric:tabular-nums}.stepper-val small{color:var(--text-2);font-size:.85rem}.stepper-val.is-changed b{color:var(--accent)}.stepper.is-compact .stepper-btn{width:44px;height:44px}.stepper.is-compact .stepper-val{min-width:4.4em}.ing-list{list-style:none;margin:0;padding:0}.ing-list li+li{border-top:1px solid var(--line)}.ing-row{display:grid;grid-template-columns:5.2em 1fr;align-items:baseline;gap:10px;width:100%;padding:10px 2px;text-align:left;border:0;background:none;border-radius:8px}button.ing-row{grid-template-columns:26px 4.6em minmax(0,1fr);align-items:center;min-height:var(--tap);padding:6px 8px}.ing-row{grid-template-columns:4.6em minmax(0,1fr)}.ing-qty{font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}.ing-name{min-width:0;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.ing-note{color:var(--text-2)}.check{width:26px;height:26px;border-radius:8px;border:2px solid var(--line);display:grid;place-items:center;background:var(--surface);color:var(--accent-ink);transition:background .12s,border-color .12s}.check .icon{width:18px;height:18px;stroke-width:3}.ing-row.is-active{background:var(--active-bg)}.ing-row.is-checked .check{background:var(--accent);border-color:var(--accent)}.ing-row.is-checked .ing-qty,.ing-row.is-checked .ing-name{color:var(--text-2);text-decoration:line-through;text-decoration-color:color-mix(in srgb,var(--text-2) 60%,transparent)}.ing-row.is-checked{opacity:.7}.step-list{list-style:none;margin:0;padding:0;display:grid;gap:4px}.step-item{display:grid;grid-template-columns:34px 1fr;gap:12px;padding:12px 10px;border-radius:12px}.step-list.is-static .step-item{padding:10px 0}.step-num{width:30px;height:30px;border-radius:999px;display:grid;place-items:center;flex:none;background:var(--surface-2);color:var(--text-2);font-weight:700;font-size:.9rem;font-variant-numeric:tabular-nums}.step-text{margin:0}.qty{background:var(--qty-bg);color:var(--qty);border-radius:6px;padding:.05em .3em;-webkit-box-decoration-break:clone;box-decoration-break:clone}.qty strong{font-weight:700}.qty.is-partial{box-shadow:inset 0 -2px color-mix(in srgb,var(--qty) 45%,transparent)}.cook{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;height:100vh;height:100dvh;background:var(--bg);padding:var(--safe-t) var(--safe-r) 0 var(--safe-l)}.cook-bar{flex:none;display:flex;align-items:center;gap:6px;padding:6px 8px 6px 4px;border-bottom:1px solid var(--line);background:var(--bg)}.cook-title{flex:1;min-width:0;margin:0;font-family:var(--serif);font-size:1.1rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cook-body{flex:1;min-height:0;display:flex;flex-direction:column}.cook-ings{flex:none;display:flex;flex-direction:column;max-height:38%;background:var(--surface);border-bottom:1px solid var(--line);box-shadow:0 4px 12px #0000000a}@media(max-height:640px){.cook:not(.is-wide) .cook-ings{max-height:34%}}.cook-ings-head{flex:none;display:flex;align-items:baseline;gap:10px;padding:10px 16px 2px}.cook-ings-head .section-title{margin:0}.cook-ings-head .link-btn{margin-left:auto}.cook-ings-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:0 8px 8px;mask-image:linear-gradient(to bottom,#000 calc(100% - 18px),transparent);-webkit-mask-image:linear-gradient(to bottom,#000 calc(100% - 18px),transparent)}.cook-steps{flex:1;min-height:0;display:flex;flex-direction:column}.cook-steps-scroll{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;padding:16px 18px;touch-action:pan-y}.step-focus{display:flex;flex-direction:column;gap:14px}.step-label{margin:0;font-weight:700;font-size:.85rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}.step-label .muted{font-weight:600}.step-text-lg{font-size:1.28rem;line-height:1.55}@media(max-width:360px){.step-text-lg{font-size:1.15rem}}.step-next{display:grid;gap:2px;text-align:left;border:1px dashed var(--line);background:transparent;border-radius:12px;padding:10px 12px;color:var(--text-2);font-size:.95rem;margin-top:4px}.step-next-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.step-next .qty{background:transparent;color:inherit;padding:0}.step-nav{flex:none;display:flex;align-items:center;gap:10px;padding:10px 12px calc(10px + var(--safe-b));border-top:1px solid var(--line);background:var(--surface)}.nav-btn{flex:1 1 0;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:56px;border-radius:16px;border:1px solid var(--line);background:var(--surface-2);font-weight:650;font-size:1.05rem}.nav-btn:disabled{opacity:.35}.nav-btn.is-primary{flex-grow:1.6;background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.nav-btn:active:not(:disabled){transform:scale(.98)}.flip{display:inline-flex;transform:scaleX(-1)}.step-dots{flex:none;display:flex;gap:5px;align-items:center;justify-content:center;max-width:30%;flex-wrap:wrap;color:var(--text-2)}.step-count{font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}.step-jump{position:relative;flex:none;display:flex;align-items:center;justify-content:center;min-width:64px;min-height:48px;padding:0 8px;border-radius:12px;color:var(--text-2)}.step-jump .step-count{border-bottom:1px dashed currentColor}.step-jump select{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;font-size:16px;cursor:pointer}.step-jump:focus-within{outline:3px solid color-mix(in srgb,var(--accent) 55%,transparent)}.dot{width:7px;height:7px;border-radius:99px;background:var(--line)}.dot.is-done{background:color-mix(in srgb,var(--accent) 45%,var(--line))}.dot.is-on{width:18px;background:var(--accent)}@media(max-width:374px){.step-dots{display:none}}.cook.is-wide .cook-body{flex-direction:row}.cook.is-wide .cook-ings{max-height:none;width:clamp(300px,40%,440px);border-bottom:0;border-right:1px solid var(--line);box-shadow:none}.cook.is-wide .cook-ings-head{padding:16px 20px 4px}.cook.is-wide .cook-ings-scroll{padding:0 12px calc(16px + var(--safe-b));mask-image:none;-webkit-mask-image:none}.cook.is-wide button.ing-row{min-height:52px;font-size:1.05rem}.cook.is-wide .cook-steps-scroll{padding:20px 24px}.cook.is-wide .step-item{font-size:1.15rem;line-height:1.55;padding:14px 16px;border:1px solid transparent;transition:background .15s,border-color .15s,opacity .15s}.cook.is-wide .step-item.is-selectable{cursor:pointer}.cook.is-wide .step-item.is-done{opacity:.55}.cook.is-wide .step-item.is-current{background:var(--surface);border-color:var(--line);box-shadow:var(--shadow);opacity:1}.cook.is-wide .step-item.is-current .step-num{background:var(--accent);color:var(--accent-ink)}.cook.is-wide .step-nav{padding-left:24px;padding-right:24px}.cook.is-wide .nav-btn{max-width:260px}.cook.is-wide .step-nav{justify-content:space-between}@media(min-width:1024px){.cook.is-wide .step-item{font-size:1.25rem}}@media(max-height:540px){.cook.is-wide .cook-ings-head{padding-top:8px}.cook.is-wide .cook-steps-scroll{padding:12px 16px}.cook.is-wide .step-item{font-size:1.05rem;padding:10px 12px}.cook.is-wide .nav-btn{min-height:46px}.cook.is-wide .step-nav{padding-top:6px;padding-bottom:calc(6px + var(--safe-b))}.cook-bar{padding-top:2px;padding-bottom:2px}}.page-edit{max-width:820px}.page-edit .topbar{position:sticky;top:0;z-index:5;background:var(--bg);padding:calc(6px + var(--safe-t)) 0 6px;margin-top:calc(-16px - var(--safe-t))}.page-edit .panel{margin-bottom:16px}.form{display:grid;gap:14px}.field{display:grid;gap:6px;min-width:0}.field>span{font-size:.85rem;font-weight:600;color:var(--text-2)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}input:not([type=file]):not([type=search]):not([type=checkbox]),textarea{width:100%;min-height:46px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--bg);font-size:16px}textarea{resize:vertical;line-height:1.45;field-sizing:content;min-height:5.2em}input:focus,textarea:focus{outline:2px solid color-mix(in srgb,var(--accent) 50%,transparent);outline-offset:0;border-color:var(--accent)}.image-field{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.image-preview{width:96px;height:72px;object-fit:cover;border-radius:10px}.ing-edit-list,.step-edit-list{list-style:none;margin:0;padding:0;display:grid;gap:10px}.ing-edit{display:grid;gap:6px;padding:10px;border-radius:12px;background:var(--surface-2);grid-template-columns:74px 84px 1fr;grid-template-areas:"amount unit name" "note note actions"}.in-amount{grid-area:amount}.in-unit{grid-area:unit}.in-name{grid-area:name}.in-note{grid-area:note}.ing-edit .row-actions{grid-area:actions}@media(min-width:720px){.ing-edit{grid-template-columns:80px 90px 1.3fr 1fr auto;grid-template-areas:"amount unit name note actions";align-items:center}}.row-actions{display:flex;align-items:center;justify-content:flex-end;gap:2px}.step-edit{display:grid;gap:8px;padding:10px;border-radius:12px;background:var(--surface-2)}.step-edit-head{display:flex;align-items:center;justify-content:space-between}.insert-chips{padding:0;flex-wrap:wrap}.insert-chips .chip{background:var(--qty-bg);color:var(--qty);border-color:transparent}.step-preview{margin:0;font-size:.95rem}.inline-errors{margin:0;padding-left:18px;color:var(--danger);font-size:.88rem}.error-box{background:var(--danger-soft);color:var(--danger);border-radius:var(--radius);padding:14px 16px;margin-bottom:16px}.error-box ul{margin:6px 0 0;padding-left:18px}.error-box p{margin:6px 0}.notice{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 14px;margin-bottom:16px;border-radius:var(--radius);background:var(--active-bg);font-size:.92rem}.edit-footer{display:flex;justify-content:flex-end;gap:10px;padding:8px 0}.toasts{position:fixed;left:0;right:0;bottom:calc(16px + var(--safe-b));display:grid;justify-items:center;gap:8px;pointer-events:none;z-index:50;padding:0 16px}html.is-cooking .toasts{bottom:calc(96px + var(--safe-b))}.toast{pointer-events:auto;display:flex;align-items:center;gap:12px;max-width:520px;width:max-content;padding:10px 8px 10px 16px;border-radius:14px;background:var(--text);color:var(--bg);box-shadow:0 8px 30px #0003;font-size:.95rem}.toast.is-error{background:var(--danger);color:#fff}.toast-action{border:0;background:none;color:inherit;font-weight:700;text-decoration:underline;padding:6px}.toast-close{border:0;background:none;color:inherit;opacity:.7;font-size:1.3rem;line-height:1;width:32px;height:32px}.page-backup{max-width:820px}.page-backup .panel{margin-bottom:16px}.page-backup p{margin:0}.topbar-spacer{width:var(--tap);flex:none}.btn-row{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.page-backup .btn-row{justify-content:flex-start}.import-preview .btn-row{justify-content:flex-end}.file-btn{justify-self:start}.import-preview{display:grid;gap:12px}.import-summary{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px}.import-summary .is-bad{color:var(--danger)}.import-list{list-style:none;margin:0;padding:0;display:grid;gap:6px;max-height:50vh;overflow-y:auto;overscroll-behavior:contain}.import-item{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border-radius:12px;background:var(--surface-2)}.import-item.is-skip,.import-item.is-off{opacity:.6}.import-text{display:grid;gap:2px;min-width:0;overflow-wrap:anywhere}.import-badge{flex:none;min-width:6.5em;text-align:center;font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:3px 8px;border-radius:6px;background:var(--surface);color:var(--text-2)}.import-badge.is-add{background:var(--accent-soft);color:var(--accent)}.import-badge.is-copy{background:var(--active-bg);color:#8a5a12}.import-badge.is-bad{background:var(--danger-soft);color:var(--danger)}@media(prefers-color-scheme:dark){.import-badge.is-copy{color:#e7c27c}}.check-field{display:flex;align-items:center;gap:10px;min-height:44px}.check-field input{width:22px;height:22px;accent-color:var(--accent)}.app-footer{margin-top:24px;display:flex;justify-content:center}.collection-line{margin:0 0 12px;font-size:.95rem}.collection-line a{font-weight:600}.sync-badge{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:4px 12px;margin:0 0 12px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--text);font:inherit;font-size:.85rem;font-weight:600;cursor:pointer}.sync-dot{width:10px;height:10px;border-radius:50%;background:var(--text-2);flex:none}.sync-badge.sync-ok .sync-dot{background:var(--accent)}.sync-badge.sync-info .sync-dot{background:#3b6ea5}.sync-badge.sync-warn .sync-dot{background:#c58a1e}.sync-badge.sync-error{border-color:var(--danger);color:var(--danger)}.sync-badge.sync-error .sync-dot{background:var(--danger)}.page-sync .panel{margin-bottom:16px}.sync-status.sync-error{border-color:var(--danger)}.sync-status.sync-warn{border-color:#c58a1e}.sync-list{list-style:none;margin:0;padding:0;display:grid;gap:14px}.sync-list>li{padding-bottom:12px;border-bottom:1px solid var(--line)}.sync-list>li:last-child{border-bottom:0;padding-bottom:0}.conflict-diff ul{margin:4px 0 0;padding-left:18px}.conflict-diff li{margin:2px 0;overflow-wrap:anywhere}.conflict-leaf{display:grid;gap:6px;margin:8px 0;padding:10px 12px;border-radius:12px;background:var(--surface-2)}.btn-danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn-danger:disabled{opacity:.5}.test-banner{margin:0 0 10px;padding:6px 12px;border-radius:10px;background:var(--active-bg);font-size:.82rem;font-weight:600;text-align:center}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:calc(16px + var(--safe-t)) calc(16px + var(--safe-r)) calc(16px + var(--safe-b)) calc(16px + var(--safe-l));background:#14120f8c;overflow-y:auto;overscroll-behavior:contain}.dialog{width:100%;max-width:440px;display:grid;gap:14px;padding:20px;border-radius:20px;background:var(--surface);border:1px solid var(--line);box-shadow:0 20px 60px #00000059}.dialog-title{margin:0;font-family:var(--serif);font-size:1.35rem;font-weight:600}.dialog p{margin:0}.dialog-alert{padding:10px 12px;border-radius:12px;background:var(--surface-2);font-size:.95rem}.dialog-alert.is-error{background:var(--danger-soft);color:var(--danger)}.dialog-alert.is-warning{background:var(--active-bg)}.dialog-alert details{margin-top:6px}.dialog-alert summary{cursor:pointer;font-size:.85rem}.dialog-actions{display:flex;flex-wrap:wrap-reverse;justify-content:flex-end;gap:10px}.dialog-actions .btn{flex:1 1 140px}
