:root{--olive:#4a5233;--olive-2:#3f462b;--olive-3:#353c25;--olive-line:#66704a;--cream:#fbf8f1;--paper:#fffdf8;--ink:#2a2c1c;--ink-2:#6b6a55;--on-olive:#f4efe0;--on-olive-2:#d6d1b8;--accent:#e7b26a;--border:#ddd3bd;--err-bg:#fbe9e5;--err-fg:#9a2f1f;--ok-bg:#e5efdc;--ok-fg:#2e6328;--warn-bg:#fbebd3;--warn-fg:#b5600f;--sem-verde:#2e6328;--sem-naranja:#b85c00;--sem-naranja-barra:#d97706;--sem-rojo:#c8102e;--f-border:#e2daca;--f-border-hover:#cfc4a8;--f-bg:#fffdf8;--f-bg-soft:#fbf8f1;--f-placeholder:#a9a48c;--f-ring:#e7b26a40;--f-hover:#f3ecdc;--serif:"EB Garamond", Georgia, serif;--sans:"Instrument Sans", system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{min-height:100%;margin:0}body{background:var(--cream);color:var(--ink);font:400 14px/1.45 var(--sans)}a{color:inherit}h1,h2{font-family:var(--serif);margin:0;font-weight:500}h1{font-size:30px}h2{font-size:20px}.muted{color:var(--ink-2)}.small{font-size:12px}.center-screen{place-items:center;min-height:100vh;display:grid}.shell{min-height:100vh;display:flex}.sidebar{background:var(--olive);width:236px;height:100vh;color:var(--on-olive);flex-direction:column;flex:0 0 236px;gap:22px;padding:18px 12px;transition:flex-basis .18s,width .18s;display:flex;position:sticky;top:0;overflow-y:auto}.is-collapsed .sidebar{flex-basis:64px;width:64px}.sidebar-top{justify-content:space-between;align-items:center;gap:8px;min-height:36px;padding-left:6px;display:flex}.sidebar-logo{color:var(--on-olive);text-decoration:none;display:flex}.sidebar-mark{font:500 18px var(--serif);letter-spacing:.12em}.sidebar-toggle{border:1px solid var(--olive-line);width:28px;height:28px;color:var(--on-olive-2);cursor:pointer;background:0 0;border-radius:7px;flex:none;place-items:center;display:grid}.sidebar-toggle:hover{color:var(--on-olive);background:var(--olive-2)}.is-collapsed .sidebar-top{flex-direction:column;padding-left:0}.nav{flex-direction:column;gap:2px;display:flex}.nav-item{color:var(--on-olive-2);border-radius:8px;align-items:center;gap:12px;min-width:0;padding:9px 10px;font-weight:500;text-decoration:none;display:flex}.nav-item .icon{flex:none}.nav-item:hover{background:var(--olive-2);color:var(--on-olive)}.nav-item.active{color:var(--on-olive);background:var(--olive-3);box-shadow:inset 3px 0 0 var(--accent)}.nav-label{white-space:nowrap;text-overflow:ellipsis;min-width:0;overflow:hidden}.is-collapsed .nav-label{display:none}.is-collapsed .nav-item{justify-content:center;padding:10px 0}.nav-sub{border-left:1px solid var(--olive-line);flex-direction:column;gap:1px;margin:2px 0 8px 21px;padding-left:10px;display:flex}.nav-subitem{color:var(--on-olive-2);border-radius:6px;padding:6px 10px;font-size:13px;text-decoration:none}.nav-subitem:hover{color:var(--on-olive);background:var(--olive-2)}.nav-subitem.active{color:var(--on-olive);background:var(--olive-3);font-weight:600}.nav-item:focus-visible,.nav-subitem:focus-visible,.sidebar-toggle:focus-visible,.sidebar-logo:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.nav-account{border-top:1px solid var(--olive-line);border-radius:0 0 8px 8px;margin-top:auto;padding-top:14px}.nav-account .nav-label{flex-direction:column;line-height:1.25;display:flex}.nav-account small{color:var(--on-olive-2);text-overflow:ellipsis;font-size:11px;font-weight:400;overflow:hidden}.is-collapsed .nav-account .nav-label{display:none}.avatar{background:var(--accent);color:#262a18;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:11px;font-weight:700;display:grid}@media (prefers-reduced-motion:reduce){.sidebar{transition:none}}.main{flex:auto;min-width:0}.banner{background:var(--accent);color:#262a18;padding:8px 24px;font-size:13px;font-weight:500}.page{flex-direction:column;gap:20px;max-width:1100px;padding:32px clamp(16px,4vw,48px);display:flex}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.back{color:var(--ink-2);font-size:13px;text-decoration:none}.btn-primary{background:var(--accent);color:#262a18;height:40px;font:600 14px var(--sans);cursor:pointer;border:none;border-radius:8px;padding:0 18px}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-ghost{border:1px solid var(--olive-line);height:30px;color:var(--on-olive);font:500 12px var(--sans);cursor:pointer;background:0 0;border-radius:7px;align-self:flex-start;padding:0 12px}.card-list{background:var(--paper);border:1px solid var(--border);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.wedding-row{border-bottom:1px solid #ece4d2;grid-template-columns:minmax(0,1.4fr) minmax(0,1.4fr) minmax(0,1fr) auto;align-items:center;gap:16px;padding:14px 18px;text-decoration:none;display:grid}.wedding-row:last-child{border-bottom:none}.wedding-row:hover{background:#f7f1e3}.wedding-couple{font:500 19px var(--serif)}.wedding-date,.cap{display:inline-block}.wedding-date:first-letter,.cap:first-letter,.pill:first-letter{text-transform:uppercase}.wedding-meta{color:var(--ink-2);font-size:13px}.pill{color:var(--ink-2);background:#ece4d2;border-radius:999px;place-self:flex-start start;padding:3px 10px;font-size:12px;font-weight:500;display:inline-block}.pill-confirmada{background:var(--ok-bg);color:var(--ok-fg)}.pill-prospecto{color:#7a4e0e;background:#f7e6c8}.module-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;display:grid}.module-card{background:var(--paper);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:8px;padding:18px;display:flex}.module-card p{color:var(--ink-2);margin:0}.table{border-collapse:collapse;width:100%;font-size:13px}.table th,.table td{text-align:left;border-bottom:1px solid #ece4d2;padding:5px 4px}.table th{color:var(--ink-2);letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:600}.login{background:var(--olive);place-items:center;min-height:100vh;padding:16px;display:grid}.login-card{background:var(--olive-2);width:100%;max-width:380px;color:var(--on-olive);border-radius:14px;flex-direction:column;gap:16px;padding:32px 28px;display:flex}.login-card .muted{color:var(--on-olive-2)}.field{color:var(--on-olive-2);flex-direction:column;gap:6px;font-size:12px;display:flex}.field input{background:var(--olive-3);height:40px;color:var(--on-olive);font:500 14px var(--sans);border:1px solid #6e7651;border-radius:7px;padding:0 10px}.note{border-radius:8px;margin:0;padding:8px 12px;font-size:13px}.note.ok{background:var(--ok-bg);color:var(--ok-fg)}.note.err{background:var(--err-bg);color:var(--err-fg)}.cal{flex-direction:column;gap:28px;display:flex}.cal-month-head span:last-child{font:500 12px var(--sans);color:var(--ink-2);letter-spacing:.04em;text-transform:uppercase}.cal-month{flex-direction:column;gap:10px;display:flex}.cal-month-head{font:500 21px var(--serif);align-items:baseline;gap:10px;margin:0;display:flex}.cal-weeks{flex-direction:column;gap:8px;display:flex}.cal-week{background:var(--paper);border:1px solid var(--border);border-radius:10px;flex-direction:column;display:flex;overflow:hidden}.cal-row{grid-template-columns:72px 92px minmax(0,1fr) 80px 190px;align-items:center;gap:16px;padding:10px 16px;text-decoration:none;display:grid}.cal-row+.cal-row{border-top:1px solid #ece4d2}.cal-row:hover{background:#f7f1e3}.cal-row:focus-visible{outline:2px solid var(--olive);outline-offset:-2px}.cal-date{font-variant-numeric:tabular-nums;flex-direction:column;align-items:center;gap:3px;display:flex}.cal-date b{font:500 30px/1 var(--serif)}.cal-date small{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);font-size:9.5px;font-weight:600}.cal-day{color:var(--ink-2);font-size:13px}.cal-day:first-letter{text-transform:uppercase}.cal-couple{font:500 18px var(--serif);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cal-guests{font-variant-numeric:tabular-nums;text-align:right}.cal-guests small{color:var(--ink-2);font-size:12px}.pay{color:var(--ink-2);font-variant-numeric:tabular-nums;align-items:center;gap:10px;font-size:12px;display:flex}.pay-track{background:#ece4d2;border-radius:3px;flex:0 0 64px;height:6px;overflow:hidden}.pay-fill{background:var(--sem-verde);border-radius:3px;height:100%;display:block}.pay-label{min-width:84px}.pay-verde .pay-label{color:var(--sem-verde)}.pay-naranja .pay-fill{background:var(--sem-naranja-barra)}.pay-naranja .pay-label{color:var(--sem-naranja);font-weight:600}.pay-rojo .pay-fill{background:var(--sem-rojo)}.pay-rojo .pay-label{color:var(--sem-rojo);font-weight:600}.pay-none{font-style:italic}.toolbar{background:var(--paper);border:1px solid var(--border);border-radius:10px;flex-wrap:wrap;align-items:flex-end;gap:12px 16px;padding:14px;display:flex}.search{flex:280px;display:flex;position:relative}.search svg{fill:none;width:16px;height:16px;stroke:var(--ink-2);stroke-width:1.8px;stroke-linecap:round;position:absolute;top:50%;left:11px;transform:translateY(-50%)}.search input,.filter select{border:1px solid var(--f-border);background:var(--f-bg);height:36px;color:var(--ink);font:500 13.5px var(--sans);border-radius:7px;outline:none}.search input:hover,.filter select:hover{border-color:var(--f-border-hover)}.search input:focus,.filter select:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--f-ring)}.search input::placeholder{color:var(--f-placeholder);font-style:italic}.search input{width:100%;padding:0 12px 0 34px}.filter{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);flex-direction:column;gap:4px;font-size:11px;font-weight:600;display:flex}.filter select{text-transform:none;letter-spacing:0;padding:0 30px 0 10px;font-weight:400}.search input:focus-visible,.filter select:focus-visible,.switch input:focus-visible+.switch-track,.btn-quiet:focus-visible,.btn-link:focus-visible{outline:2px solid var(--olive);outline-offset:2px}.switch{cursor:pointer;align-items:center;gap:8px;height:38px;font-size:13px;display:inline-flex;position:relative}.switch input{opacity:0;width:1px;height:1px;position:absolute}.switch-track{background:#d9cfb8;border-radius:10px;width:34px;height:20px;transition:background .15s;position:relative}.switch-track:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0003}.switch input:checked+.switch-track{background:var(--accent)}.switch input:checked+.switch-track:after{transform:translate(14px)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.pager{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding-top:4px;display:flex}.pager-btns{align-items:center;gap:12px;display:flex}.btn-quiet{border:1px solid var(--border);background:var(--paper);height:34px;color:var(--ink);font:500 13px var(--sans);cursor:pointer;border-radius:8px;padding:0 14px}.btn-quiet:hover:not(:disabled){background:#f7f1e3}.btn-quiet:disabled{opacity:.45;cursor:default}.btn-link{color:var(--olive);font:600 13px var(--sans);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.empty{text-align:center;background:var(--paper);border:1px dashed var(--border);border-radius:10px;flex-direction:column;align-items:center;gap:8px;padding:32px;display:flex}.empty p{color:var(--ink-2);margin:0}@media (prefers-reduced-motion:reduce){.switch-track,.switch-track:after{transition:none}}.eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2);margin:0 0 2px;font-size:11px;font-weight:600}.page-head .muted{max-width:60ch;margin:6px 0 0}a.btn-primary{align-items:center;text-decoration:none;display:inline-flex}.tabs{border-bottom:1px solid var(--border);gap:4px;display:flex;overflow-x:auto}.tab{color:var(--ink-2);white-space:nowrap;border-bottom:2px solid #0000;margin-bottom:-1px;padding:10px 14px;font-weight:500;text-decoration:none}.tab:hover{color:var(--ink)}.tab.active{color:var(--ink);border-bottom-color:var(--olive)}.tab:focus-visible{outline:2px solid var(--olive);outline-offset:-2px}.season{flex-direction:column;align-items:flex-end;gap:4px;display:flex}.season-label{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);font-size:11px;font-weight:600}.segmented{background:var(--f-hover);border:1px solid var(--f-border);border-radius:9px;gap:2px;padding:3px;display:inline-flex}.segmented button{white-space:nowrap;height:32px;color:var(--ink-2);font:600 13px var(--sans);font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:none;border-radius:7px;padding:0 14px}.segmented button.is-on{background:var(--accent);color:#262a18;font-weight:700}.segmented button:disabled{cursor:not-allowed;opacity:.55}.segmented button:focus-visible{outline:2px solid var(--olive);outline-offset:1px}.placeholder{background:var(--paper);border:1px dashed var(--border);border-radius:12px;flex-direction:column;align-items:flex-start;gap:12px;padding:24px;display:flex}.placeholder h2{font-size:22px}.placeholder-lead{color:var(--ink-2);max-width:65ch;margin:0}.placeholder-list{flex-direction:column;gap:6px;max-width:70ch;margin:0;padding-left:18px;display:flex}.existing{background:var(--cream);border-radius:10px;flex-direction:column;gap:8px;width:100%;max-width:520px;padding:14px 16px;display:flex}.existing h3{letter-spacing:.06em;text-transform:uppercase;color:var(--ink-2);margin:0;font-size:11px;font-weight:600}.existing p{margin:0}.account-card{background:var(--paper);border:1px solid var(--border);border-radius:12px;flex-direction:column;align-items:flex-start;gap:6px;max-width:420px;padding:20px;display:flex}.account-card p{margin:0}.account-email{font:500 18px var(--serif);margin-bottom:8px!important}.field-row{flex-direction:column;gap:5px;min-width:0;display:flex}.f-label{letter-spacing:.04em;text-transform:uppercase;color:var(--ink-2);font-size:11.5px;font-weight:600}.f-hint{color:var(--ink-2);font-size:12px}.in{box-sizing:border-box;border:1px solid var(--f-border);background:var(--f-bg);width:100%;height:34px;color:var(--ink);font:500 13.5px var(--sans);border-radius:7px;outline:none;padding:0 9px}.in:hover{border-color:var(--f-border-hover)}.in:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--f-ring)}.in::placeholder{color:var(--f-placeholder);font-style:italic;font-weight:400}.in-serif{font:500 17px var(--serif)}.in-money{text-align:right;font-variant-numeric:tabular-nums;padding-right:12px}.in-unit{align-items:center;gap:8px;display:flex}.in-unit .in{flex:auto;min-width:0}.in-unit-label{letter-spacing:.04em;color:var(--ink-2);flex:none;font-size:12px;font-weight:600}.in-money.is-negative{color:var(--ok-fg)}.in-money::placeholder{padding-right:2px}.in.is-invalid{border-color:var(--sem-naranja-barra);background:#fff8ec}.in-select{cursor:pointer;padding-right:26px}.in-area{resize:vertical;background:var(--f-bg-soft);height:auto;padding:10px 12px;font-weight:400;line-height:1.5}.stepper{align-items:center;gap:6px;display:flex}.step-btn{border:1px solid var(--f-border);background:var(--f-bg-soft);width:30px;height:34px;color:var(--olive);font:600 15px var(--sans);cursor:pointer;border-radius:7px;flex:none;padding:0}.step-btn:hover:not(:disabled){background:var(--f-hover);border-color:var(--f-border-hover)}.step-btn:disabled{opacity:.4;cursor:not-allowed}.step-val{border:1px solid var(--f-border);background:var(--f-bg);min-width:64px;height:34px;font:600 14px var(--sans);font-variant-numeric:tabular-nums;border-radius:7px;justify-content:center;align-items:center;display:flex}.sw{border:1px solid var(--f-border-hover);background:var(--f-hover);cursor:pointer;border-radius:999px;flex:none;justify-content:flex-start;align-items:center;width:44px;height:26px;padding:3px;transition:background .15s;display:flex}.sw-knob{background:#bdb99f;border-radius:50%;width:18px;height:18px;transition:transform .15s;display:block}.sw.is-on{background:var(--accent);border-color:var(--accent)}.sw.is-on .sw-knob{background:#262a18;transform:translate(18px)}.sw-sm{width:36px;height:22px}.sw-sm .sw-knob{width:14px;height:14px}.sw-sm.is-on .sw-knob{transform:translate(14px)}.setting-row{background:var(--f-bg-soft);border:1px solid var(--f-border);border-radius:10px;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;display:flex}.setting-text{flex-direction:column;gap:2px;min-width:0;display:flex}.setting-text span{font-size:13.5px;font-weight:500}.setting-text small{color:var(--ink-2);font-size:11.5px}.in:focus-visible,.step-btn:focus-visible,.sw:focus-visible,.btn-x:focus-visible,.btn-primary:focus-visible{outline:2px solid var(--olive);outline-offset:2px}.add-row{border:1px dashed var(--f-border-hover);width:100%;height:36px;color:var(--olive);font:600 13px var(--sans);text-align:left;cursor:pointer;background:0 0;border-radius:7px;align-items:center;gap:8px;margin:4px 0 2px;padding:0 10px;display:flex}.add-row:hover{background:var(--f-hover);border-style:solid}.add-row:focus-visible{outline:2px solid var(--olive);outline-offset:2px}.add-row-plus{background:var(--accent);color:#262a18;border-radius:50%;place-items:center;width:18px;height:18px;font-size:14px;line-height:1;display:grid}.btn-x{width:28px;height:28px;color:var(--ink-2);cursor:pointer;background:0 0;border:none;border-radius:6px;font-size:17px;line-height:1}.btn-x:hover{color:var(--err-fg)}.panel{background:var(--paper);border:1px solid var(--border);border-radius:12px;flex-direction:column;gap:16px;padding:20px;display:flex}.panel-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px 20px;display:flex}.panel-head h2{font-size:22px}.panel-head p{color:var(--ink-2);max-width:65ch;margin:4px 0 0}.form-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));align-content:start;gap:16px 18px;display:grid}.form-stack{flex-direction:column;gap:16px;width:100%;max-width:260px;display:flex}.calc{height:34px;font:500 20px var(--serif);font-variant-numeric:tabular-nums;align-items:center;display:flex}.note.warn{background:var(--warn-bg);color:#7a4a08;margin:0;padding:10px 14px 10px 30px}.warn-text{color:var(--sem-naranja);font-weight:600}.chip{border-radius:999px;padding:3px 10px;font-size:12px;font-weight:600;display:inline-block}.chip-publicada{background:var(--ok-bg);color:var(--ok-fg)}.chip-borrador{background:var(--warn-bg);color:#7a4a08}.chip-archivada{color:var(--ink-2);background:#ece4d2}@media (prefers-reduced-motion:reduce){.sw,.sw-knob{transition:none}}.cfg{flex-direction:column;gap:18px;padding-bottom:72px;display:flex}.cfg-status{flex-wrap:wrap;align-items:center;gap:10px 14px;display:flex}.season-ctl{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.pkg{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:24px;display:grid}.quote{border:1px solid var(--f-border);font-variant-numeric:tabular-nums;border-radius:10px;max-height:298px;font-size:13px;overflow-y:auto}.quote-head,.quote-row{grid-template-columns:48px 1fr 1fr;gap:8px;padding:5px 12px;display:grid}.quote-head{z-index:1;background:var(--f-hover);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);font-size:11px;font-weight:600;position:sticky;top:0}.quote-2 .quote-head,.quote-2 .quote-row{grid-template-columns:48px 1fr}.quote-row+.quote-row{border-top:1px solid #f0e9da}.quote-row span:not(:first-child),.quote-head span:not(:first-child){text-align:right}.sub-head{font:500 18px var(--serif);border-top:1px solid var(--f-border);margin:4px 0 -4px;padding-top:14px}.includes{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 18px;display:grid}.xt{flex-direction:column;display:flex;overflow-x:auto}.xt-row{grid-template-columns:minmax(220px,1fr) 150px 120px 64px 64px 36px;align-items:center;gap:10px;min-width:680px;padding:6px 0;display:grid}.xt-head{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);border-bottom:1px solid var(--f-border);font-size:11px;font-weight:600}.xt-head span:nth-child(n+4){text-align:center}.xt-group{letter-spacing:.05em;text-transform:uppercase;color:var(--olive);min-width:680px;padding:14px 0 4px;font-size:11.5px;font-weight:600}.xt .add-row{min-width:680px}.xt-row.is-off .xt-concept .in,.xt-row.is-off .in{color:var(--ink-2);background:var(--f-bg-soft)}.xt-concept{flex-direction:column;gap:2px;display:flex}.xt-concept small{color:var(--ink-2);padding-left:2px;font-size:11.5px}.xt-c{justify-content:center;display:flex}.savebar{background:var(--olive);color:var(--on-olive);border-radius:12px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex;position:sticky;bottom:16px;box-shadow:0 8px 24px #2a2c1c40}.savebar-btns{gap:8px;display:flex}.savebar .btn-quiet{color:var(--on-olive);border-color:var(--olive-line);background:0 0}.savebar .btn-quiet,.savebar .btn-primary{height:40px;padding:0 18px;font-size:14px}.savebar .btn-quiet:hover{background:var(--olive-2)}.dialog-backdrop{z-index:50;background:#2a2c1c73;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.dialog{background:var(--paper);border-radius:14px;flex-direction:column;gap:18px;width:100%;max-width:640px;max-height:calc(100vh - 32px);padding:24px;display:flex;overflow-y:auto;box-shadow:0 20px 50px #14160c59}.dialog-head h2{font-size:24px}.dialog-head p{margin:4px 0 0}.dialog-foot{justify-content:flex-end;gap:8px;display:flex}.cmp{border:1px solid var(--f-border);font-variant-numeric:tabular-nums;border-radius:10px;max-height:320px;font-size:13px;overflow-y:auto}.cmp-row{grid-template-columns:minmax(0,1fr) 100px 100px;gap:10px;padding:6px 12px;display:grid}.cmp-row+.cmp-row{border-top:1px solid #f0e9da}.cmp-row span:not(:first-child){text-align:right}.cmp-row span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.cmp-head{background:var(--f-hover);letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);font-size:11px;font-weight:600;position:sticky;top:0}@media (width<=1200px){.includes{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=1000px){.pkg,.includes{grid-template-columns:1fr}}.photo{flex:none;width:56px;height:56px;position:relative}.photo-box{border:1px dashed var(--f-border-hover);background:var(--f-bg-soft);width:56px;height:56px;color:var(--ink-2);cursor:pointer;border-radius:8px;place-items:center;font-size:11px;font-weight:600;display:grid;overflow:hidden}.photo-box:hover{background:var(--f-hover)}.photo-box.has-photo{border-style:solid;border-color:var(--f-border)}.photo-box img{object-fit:cover;width:100%;height:100%;display:block}.photo input:focus-visible+.photo-x,.photo-box:focus-within{outline:2px solid var(--olive);outline-offset:2px}.photo-x{border:1px solid var(--f-border);background:var(--paper);width:20px;height:20px;color:var(--ink-2);cursor:pointer;border-radius:50%;padding:0;font-size:13px;line-height:1;position:absolute;top:-7px;right:-7px}.photo-x:hover{color:var(--err-fg)}.field-row.is-wide{grid-column:span 2}.sw-line{align-items:center;height:34px;display:flex}.menus{grid-template-columns:190px minmax(0,1fr);align-items:start;gap:20px;display:grid}.menu-list{flex-direction:column;gap:14px;display:flex;position:sticky;top:16px}.menu-list-group{flex-direction:column;gap:2px;display:flex}.menu-list-title{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);padding:0 10px 4px;font-size:11px;font-weight:600}.menu-item{color:var(--ink);font:500 15px var(--serif);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;flex-direction:column;align-items:flex-start;gap:1px;padding:9px 12px;display:flex}.menu-item small{font:500 11.5px var(--sans);color:var(--ink-2)}.menu-item:hover{background:var(--f-hover)}.menu-item.is-on{background:var(--paper);box-shadow:inset 3px 0 0 var(--accent), 0 0 0 1px var(--f-border)}.menu-item:focus-visible{outline:2px solid var(--olive);outline-offset:1px}.menu-edit{flex-direction:column;gap:16px;min-width:0;display:flex}.course-head{flex-wrap:wrap;align-items:flex-end;gap:16px 18px;display:flex}.course-head .field-row{width:auto;min-width:240px}.dish-group{flex-direction:column;gap:6px;display:flex}.group-head{grid-template-columns:minmax(0,260px) 150px 32px;align-items:center;gap:10px;padding-top:6px;display:grid}.group-head .in:first-child{font:600 14px var(--sans)}.dishes{flex-direction:column;display:flex;overflow-x:auto}.dish-row{grid-template-columns:56px minmax(190px,1fr) 100px 100px 84px 58px 50px 28px;align-items:start;gap:10px;min-width:736px;padding:8px 0;display:grid}.dishes.is-included .dish-row{grid-template-columns:56px minmax(220px,1fr) 104px 84px 58px 50px 28px;min-width:660px}.dish-row>.xt-c{padding-top:6px}.dish-head{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-2);border-bottom:1px solid var(--f-border);align-items:end;padding:0 0 4px;font-size:11px;font-weight:600}.dish-head span:nth-last-child(-n+4){text-align:center}.dish-row:not(.dish-head)>:first-child{grid-row:span 2}.dish-name{min-width:0}.dish-name .in{font:500 16px var(--serif)}.dish-desc{grid-column:2/-1;min-width:0;margin-top:-4px}.dish-desc .in-area{width:100%;padding:6px 9px;font-size:12.5px}.dish-row.is-off .in{color:var(--ink-2)}.dishes .add-row{min-width:660px}@media (width<=1000px){.menus{grid-template-columns:1fr}.menu-list{position:static}}@media (width<=720px){.sidebar{flex-basis:56px;width:56px;padding:14px 8px}.sidebar .nav-label,.sidebar .nav-sub,.sidebar-toggle{display:none}.sidebar .nav-item{justify-content:center;padding:10px 0}.sidebar-top{justify-content:center;padding-left:0}.sidebar-logo svg{display:none}.sidebar-logo:after{content:"LO";font:500 16px var(--serif);letter-spacing:.12em}.season{align-items:flex-start}.wedding-row{grid-template-columns:1fr;gap:4px}.cal-row{grid-template-columns:64px minmax(0,1fr) auto;grid-template-areas:"date couple guests""date day pay";gap:2px 12px}.cal-date{grid-area:date}.cal-couple{grid-area:couple}.cal-guests{grid-area:guests}.cal-day{grid-area:day}.pay{grid-area:pay}}
