:root{--text:#96806f;--text-h:#4b2e1f;--bg:#f6f3ee;--bg-soft:#fbf7e9;--card:#fff;--border:#e9e1d4;--code-bg:#fbf7e9;--blue:#dcecef;--blue-ink:#4b2e1f;--yellow:#f4e6a6;--yellow-ink:#4b2e1f;--accent:#4b2e1f;--accent-ink:#f6f3ee;--accent-bg:#4b2e1f12;--accent-border:#4b2e1f47;--shadow:0 10px 24px -12px #4b2e1f29, 0 2px 6px #4b2e1f0d;--sans:"Inter", system-ui, "Segoe UI", Roboto, sans-serif;--heading:"Quicksand", system-ui, "Segoe UI", Roboto, sans-serif;--script:"Instrument Serif", Georgia, serif;font:300 16px/160% var(--sans);letter-spacing:.1px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--text:#c9b9a8;--text-h:#f6f3ee;--bg:#2b1c14;--bg-soft:#34241a;--card:#32221a;--border:#4a362a;--code-bg:#34241a;--blue:#2c4044;--blue-ink:#dcecef;--yellow:#4a3f22;--yellow-ink:#f4e6a6;--accent:#f4e6a6;--accent-ink:#2b1c14;--accent-bg:#f4e6a61f;--accent-border:#f4e6a666;--shadow:0 10px 24px -12px #00000080, 0 2px 6px #0000004d}}*{box-sizing:border-box}body{background:var(--bg);margin:0}h1,h2,h3{font-family:var(--heading);color:var(--text-h);margin:0 0 10px;font-weight:500}h1{letter-spacing:.2px;font-size:29px;font-weight:400}h2{letter-spacing:.2px;font-size:18px}h3{letter-spacing:.2px;font-size:14px}p{margin:0}a{color:var(--accent);font-weight:500}button{font:inherit;cursor:pointer}.muted{color:var(--text)}.small{font-size:14px}#app{flex-direction:column;max-width:1100px;min-height:100svh;margin:0 auto;display:flex}.app-header{background:var(--card);border-bottom:1px solid var(--border);align-items:center;gap:24px;padding:18px 20px;display:flex}.app-header .brand{font-family:var(--heading);color:var(--text-h);letter-spacing:.2px;font-size:18px;font-weight:500;text-decoration:none}.app-header nav{flex:1;gap:6px;display:flex}.app-header nav a{color:var(--text);border-radius:999px;padding:7px 16px;font-weight:400;text-decoration:none}.account a{color:var(--text);font-weight:400;text-decoration:none}.app-header nav a.router-link-exact-active{color:var(--text-h);background:var(--bg-soft);font-weight:500}.account{align-items:center;gap:14px;display:flex}.account-name{color:var(--text-h);font-weight:500}.cta{background:var(--accent);box-shadow:var(--shadow);border-radius:999px;padding:9px 20px;font-weight:500;transition:transform .15s;color:var(--accent-ink)!important}.cta:hover{transform:translateY(-1px)}.link-button{color:var(--accent);background:0 0;border:none;padding:0;font-weight:500;text-decoration:underline}.app-main{flex:1;padding:28px 20px 56px}.auth-view{background:var(--card);border:1px solid var(--border);max-width:380px;box-shadow:var(--shadow);border-radius:24px;margin:48px auto;padding:36px 30px;position:relative;overflow:hidden}.auth-view:before{content:"";background:var(--yellow);height:5px;position:absolute;top:0;left:0;right:0}.auth-view h1{margin-top:8px}.auth-view form{flex-direction:column;gap:14px;margin-top:16px;display:flex}.auth-view label{color:var(--text-h);flex-direction:column;gap:6px;font-size:14px;font-weight:400;display:flex}.auth-view input{font:inherit;border:1px solid var(--border);background:var(--bg-soft);color:var(--text-h);border-radius:14px;padding:11px 14px}.auth-view input:focus{border-color:var(--accent);outline:none}.auth-view button[type=submit]{background:var(--accent);color:var(--accent-ink);border:none;border-radius:999px;margin-top:4px;padding:12px 16px;font-weight:500}.auth-view button[disabled]{opacity:.6}.auth-switch{font-family:var(--script);color:var(--text);margin-top:18px;font-size:19px;font-style:italic}.form-error{color:#a8503f;font-size:14px;font-weight:400}.category-block{margin-bottom:30px}.category-block h2{align-items:center;gap:9px;display:inline-flex}.category-block h2:before{content:"";background:var(--yellow);border-radius:50%;width:8px;height:8px;display:inline-block}.my-list-head{justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.my-list-head .cta{border:none;font-weight:500}.add-form{border:1px solid var(--border);background:var(--card);max-width:560px;box-shadow:var(--shadow);border-radius:20px;margin-bottom:28px;padding:18px;position:relative;overflow:hidden}.add-form:before{content:"";background:var(--blue);height:5px;position:absolute;top:0;left:0;right:0}.add-form-grid{grid-template-columns:1fr 1fr;gap:12px;margin:12px 0 14px;display:grid}.add-form-grid .span-2{grid-column:1/-1}.add-form label{color:var(--text-h);flex-direction:column;gap:6px;font-size:14px;font-weight:400;display:flex}.add-form input,.add-form select{font:inherit;border:1px solid var(--border);background:var(--bg-soft);color:var(--text-h);border-radius:12px;padding:9px 12px}.add-form>button[type=submit]{background:var(--accent);color:var(--accent-ink);border:none;border-radius:999px;padding:11px 18px;font-weight:500}.add-form>button[disabled]{opacity:.6}.board-link{white-space:nowrap;background:var(--blue);color:var(--blue-ink);border-radius:999px;padding:5px 12px;font-size:13px;font-weight:500;text-decoration:none}.checklist{flex-direction:column;gap:10px;display:flex}.checklist-row{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:18px}.checklist-row-head{text-align:left;width:100%;color:var(--text-h);cursor:pointer;background:0 0;border:none;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 16px;display:flex}.checklist-row-name{min-width:160px;font-weight:500}.favorite-badge{color:var(--blue-ink);background:var(--blue);border-radius:999px;padding:4px 12px;font-size:13px;font-weight:500}.checklist-row-count{color:var(--text);margin-left:auto;font-size:13px}.chevron{transition:transform .15s}.chevron.open{transform:rotate(180deg)}.checklist-row-body{border-top:1px solid var(--border);flex-direction:column;gap:14px;padding:4px 16px 18px;display:flex}.option-list{flex-direction:column;gap:7px;margin:0;padding:0;list-style:none;display:flex}.option-list li{background:var(--bg-soft);border-radius:14px;flex-wrap:wrap;align-items:center;gap:10px;padding:9px 12px;font-size:14px;display:flex}.option-list li.favorite{background:var(--blue);color:var(--blue-ink)}.option-list li.favorite .option-info strong,.option-list li.favorite .muted{color:var(--blue-ink)}.favorite-toggle{color:var(--border);background:0 0;border:none;padding:0;font-size:18px;line-height:1}.favorite-toggle.active{color:var(--yellow-ink)}.option-info{flex-direction:column;min-width:120px;display:flex}.option-info strong{color:var(--text-h);font-weight:500}.option-price{color:var(--text-h);white-space:nowrap;margin-left:auto;font-weight:500}.add-option-form{border-top:1px dashed var(--border);padding-top:14px}.add-option-row{gap:8px;display:flex}.add-option-row input{font:inherit;border:1px solid var(--border);background:var(--bg-soft);color:var(--text-h);border-radius:12px;flex:1;padding:9px 12px}.add-option-row button{border:1px solid var(--accent-border);background:var(--accent-bg);color:var(--accent);white-space:nowrap;border-radius:999px;padding:9px 14px;font-weight:500}.add-option-grid{grid-template-columns:1fr 1fr 1fr 1fr;align-items:end;gap:8px;margin-top:10px;display:grid}.add-option-grid label{color:var(--text-h);flex-direction:column;gap:4px;font-size:13px;font-weight:400;display:flex}.add-option-grid input,.add-option-grid select{font:inherit;border:1px solid var(--border);background:var(--bg-soft);color:var(--text-h);border-radius:12px;padding:8px 10px}.icon-button{background:var(--bg-soft);color:var(--text);border:none;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:26px;min-width:26px;height:26px;font-size:12px;line-height:1;display:inline-flex}.icon-button.danger{color:#a8503f}.icon-button.danger:hover{background:#a8503f24}.qty-stepper{align-items:center;gap:10px;display:flex}.qty-stepper button{border:1px solid var(--border);background:var(--bg-soft);color:var(--text-h);border-radius:999px;width:28px;height:28px;font-weight:500}.budget-summary{background:var(--yellow);border:1px solid var(--border);border-radius:20px;max-width:320px;margin-top:28px;padding:20px 22px}.budget-summary h2{color:var(--yellow-ink)}.budget-summary .muted{color:var(--yellow-ink);opacity:.75}.budget-line{color:var(--yellow-ink);margin-top:6px;font-size:15px;font-weight:400}.budget-breakdown{max-width:420px;margin-top:28px}.budget-breakdown .option-list{margin-top:12px}
