:where(:root){--row-x:12px}.ui-form{font-size:14px}.ui-form-card{background:var(--cream-bg);border:1px solid var(--cream-line);border-radius:var(--radius-sm);margin:8px 0;padding:10px 12px}.ui-row{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.ui-row+.ui-row{margin-top:8px}.ui-field{flex:170px;min-width:0}.ui-field.grow{flex:2 260px}.ui-label{color:var(--muted);letter-spacing:.01em;margin-bottom:4px;font-size:12px;font-weight:600;display:block}.ui-hint{color:var(--muted);margin-top:3px;font-size:12px}.ui-field input,.ui-field select,.ui-field textarea{border:1px solid var(--cream-line);border-radius:var(--radius-sm);background:var(--paper);width:100%;color:var(--ink);outline:none;padding:6px 9px;font-family:inherit;font-size:14px;transition:border-color .15s}.ui-field input:focus,.ui-field select:focus,.ui-field textarea:focus{border-color:var(--mint)}.ui-field textarea{resize:vertical;min-height:34px}.ui-field .csel-btn{height:auto;padding:6px 9px;font-size:14px}.ui-mb{margin-bottom:8px}.ui-note{color:var(--muted);font-size:13.5px;line-height:1.5}.ui-note.tone-sun{color:var(--warn-deep)}.ui-note.tone-rose{color:var(--rose-deep)}.ui-note.tone-mint{color:var(--mint-deep)}.ui-field input[type=number]{max-width:100%}.ui-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;margin-top:12px;display:flex}.ui-actions-left{align-items:center;gap:6px;margin-right:auto;display:flex}.ui-actions>.ui-note{text-align:right;flex:180px}.ui-seg{border:1px solid var(--cream-line);background:var(--paper);border-radius:20px;max-width:100%;display:inline-flex;overflow:hidden}.ui-seg-btn{color:var(--muted);border:none;border-right:1px solid var(--cream-line);cursor:pointer;white-space:nowrap;background:0 0;padding:6px 10px;font-family:inherit;font-size:12.5px;font-weight:600;transition:background .12s,color .12s}.ui-seg-btn:last-child{border-right:none}.ui-seg-btn:disabled{color:var(--cream-line);cursor:default}.ui-seg-btn:disabled:hover{background:0 0}.ui-seg-btn:hover{background:var(--mint-soft);color:var(--mint-deep)}.ui-seg-btn.on{background:var(--mint-deep);color:var(--on-accent)}.ui-seg-btn.on.tone-rose{background:var(--rose-deep)}.ui-seg-btn.on.tone-sun{background:var(--warn-deep)}.ui-seg-btn.on.tone-neutral{background:var(--neutral);color:var(--ink)}.ui-seg.sm .ui-seg-btn{padding:5px 10px;font-size:12.5px}.ui-chips{flex-wrap:wrap;gap:6px;display:flex}.ui-chip{border:1px solid var(--cream-line);background:var(--paper);color:var(--ink);cursor:pointer;border-radius:20px;padding:4px 10px;font-family:inherit;font-size:12.5px;font-weight:500;transition:background .12s,color .12s,border-color .12s}.ui-chip:hover{border-color:var(--mint)}.ui-chip.on{background:var(--mint-soft);border-color:var(--mint);color:var(--mint-deep);font-weight:600}.ui-chips.tone-rose .ui-chip.on,.ui-chip.on.tone-rose{background:var(--rose-soft);border-color:var(--rose);color:var(--rose-deep)}.ui-chip.on.tone-sun{background:var(--warn-soft);border-color:var(--warn);color:var(--warn-deep)}.ui-chip.on.tone-neutral{background:var(--neutral-soft);border-color:var(--neutral);color:var(--ink)}.ui-chips.sm .ui-chip{padding:3px 8px;font-size:12px}.ui-timefield{flex-wrap:wrap;align-items:center;gap:10px;display:inline-flex}.ui-timefield input[type=time],.ui-field .ui-timefield input[type=time]{width:auto;min-width:96px}.ui-timefield .ui-check{padding:0}.ui-stepper{border:1px solid var(--cream-line);background:var(--paper);border-radius:20px;align-items:center;height:32px;display:inline-flex;overflow:hidden}.ui-stepper-btn{width:28px;height:100%;color:var(--mint-deep);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:15px;line-height:1;transition:background .12s}.ui-stepper-btn:hover:not(:disabled){background:var(--mint-soft)}.ui-stepper-btn:disabled{color:var(--cream-line);cursor:default}.ui-stepper-input,.ui-field .ui-stepper-input{text-align:center;width:46px;height:100%;font:inherit;color:var(--ink);-moz-appearance:textfield;background:0 0;border:none;border-radius:0;padding:0;font-size:13.5px}.ui-stepper-input:focus,.ui-field .ui-stepper-input:focus{background:var(--cream-bg);border:none;outline:none}.ui-stepper-suffix{color:var(--muted);margin-right:2px;font-size:12px}.ui-stepper.sm{height:26px}.ui-stepper.sm .ui-stepper-btn{width:24px;font-size:14px}.ui-stepper.sm .ui-stepper-input,.ui-field .ui-stepper.sm .ui-stepper-input{width:38px;font-size:12.5px}.ui-check{color:var(--ink);cursor:pointer;white-space:nowrap;align-items:center;gap:7px;padding:6px 0;font-size:13.5px;display:inline-flex}.ui-check input{width:16px;height:16px;accent-color:var(--mint-deep);cursor:pointer;margin:0}.ui-check.bare{gap:0;padding:0}.ui-check.wrap{white-space:normal;align-items:flex-start}.ui-check.wrap input{flex-shrink:0;margin-top:2px}.ui-check-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.lrow{min-height:40px;padding:6px var(--row-x);flex-wrap:wrap;align-items:flex-start;gap:4px 10px;display:flex}.lrow-lead,.lrow-value,.lrow-actions{min-height:21px}.lrow-actions{margin-top:-2px}.lrow-lead{align-self:flex-start}.lrow.sm{min-height:36px;padding:4px var(--row-x)}.lrow-lead{font-variant-numeric:tabular-nums;flex:none;align-items:center;gap:6px;display:flex}.lrow-main{flex:1 1 0;min-width:0}.lrow-line{flex-wrap:wrap;align-items:baseline;gap:2px 8px;min-width:0;display:flex}.lrow-title{color:var(--ink);overflow-wrap:anywhere;font-size:14.5px;font-weight:600}.lrow-meta{color:var(--muted);overflow-wrap:anywhere;font-size:13px;font-weight:400}.lrow-grip{color:var(--cream-line);cursor:grab;display:inline-flex}.lrow:hover .lrow-grip{color:var(--muted)}.lrow-grip.is-off{visibility:hidden;cursor:default}.lrow-sub{color:var(--muted);overflow-wrap:anywhere;margin-top:1px;font-size:12.5px}.lrow-tags{flex-wrap:wrap;align-items:center;gap:4px;display:inline-flex}.lrow-value{text-align:right;flex:none;margin-left:auto}.lrow-val{white-space:nowrap;font-size:14.5px;font-weight:600}.lrow-val-meta{color:var(--muted);font-size:12px}.lrow-value.tone-mint .lrow-val{color:var(--mint-deep)}.lrow-value.tone-rose .lrow-val{color:var(--rose-deep)}.lrow-value.tone-sun .lrow-val{color:var(--warn-deep)}.lrow-actions{flex:none;align-items:center;gap:6px;margin-left:auto;display:flex}.lrow-value+.lrow-actions{margin-left:0}.lrow-body{flex:100%}.lrow-body .lrow{padding-right:0}.lrow-foot{padding:4px 0 2px}.lrow-list{background:var(--cream-card);border:1px solid var(--cream-line);border-radius:var(--radius-sm);overflow:hidden}.lrow-list>.lrow-foot{padding:6px var(--row-x) 8px}.lrow-list>.section-head{padding:6px var(--row-x);min-height:0;margin:0}.lrow-list+.lrow-list{margin-top:8px}.lrow-v-card.clickable:has(>.lrow-body:hover){background:var(--cream-card)}.lrow-v-line.clickable:has(>.lrow-body:hover){background:0 0}.lrow-v-line+.lrow-v-line,.dnd-move+.dnd-move>.lrow-v-line{border-top:1px solid var(--cream-line)}.lrow-list .lrow-v-line{border-top:1px solid var(--cream-line);margin-top:-1px}.lrow.xs{min-height:24px;padding:2px var(--row-x)}.lrow.xs .lrow-title{font-size:12.5px;font-weight:500}.lrow.xs .lrow-meta,.lrow.xs .lrow-sub{font-size:12px}.lrow-v-card{background:var(--cream-card);border:1px solid var(--cream-line);border-radius:var(--radius-sm);margin-bottom:6px}.lrow.clickable{cursor:pointer;transition:background .12s}.lrow.clickable:hover{background:var(--hover-bg)}.lrow.clickable:focus-visible{outline:2px solid var(--mint);outline-offset:-2px}.lrow.is-selected,.lrow.is-selected.clickable:hover{background:var(--mint-soft)}.lrow.is-muted .lrow-title{color:var(--muted);font-weight:500}.lrow-title-link{font:inherit;color:var(--ink);cursor:pointer;text-align:left;background:0 0;border:none;margin:0;padding:0;font-weight:600}.lrow-title-link:hover{color:var(--mint-deep);text-decoration:underline}.lrow.clickable:hover .g-tag:not(.clickable){box-shadow:0 0 0 1px var(--cream-card)}.lrow-head{background:var(--head-bg,var(--cream-bg))}.lrow.lrow-head.is-selected,.dnd-armed .lrow-head{background:var(--mint-soft)}.lrow-head .lrow-title,.lrow.lrow-head.xs .lrow-title,.lrow-head .lrow-title-link{font-weight:700}.lrow-head:not(:last-child){border-bottom:1px solid var(--cream-line)}.lrow-v-card>.lrow-head{border-radius:calc(var(--radius-sm) - 1px) calc(var(--radius-sm) - 1px) 0 0}.lrow-v-card>.lrow-head:last-child{border-radius:calc(var(--radius-sm) - 1px)}.lrow-group-body{margin-left:var(--group-rail-x,0px);padding-left:var(--group-indent,14px);border-left:var(--group-rail,4px) solid var(--head-bg,var(--cream-bg))}.lrow-group-body .lrow{padding-right:var(--row-x)}.lrow-group-body .lrow-body .lrow{padding-right:0}.lrow-group-body>.lrow-foot{padding:4px var(--row-x) 6px}.lrow-head .g-tag:not(a){box-shadow:0 0 0 1px var(--cream-card)}.lrow-head .g-tag:not(.tone-mint):not(.tone-rose):not(.tone-sun):not(a){background:var(--cream-card)}.lrow-thumb{background:var(--cream-bg) center / cover no-repeat;border:1px solid var(--cream-line);border-radius:6px;flex-shrink:0;display:block}.ui-menu-wrap{display:inline-flex;position:relative}.ui-menu-caret{opacity:.8;margin-left:5px;font-size:10px}.ui-menu-ico{vertical-align:middle;margin-right:6px;display:inline-flex}.ui-menu{z-index:60;flex-direction:column;min-width:180px;max-width:280px;display:flex;position:absolute;top:calc(100% + 4px);left:0}.ui-menu,.csel-panel{background:var(--cream-card);border:1px solid var(--cream-line);border-radius:var(--radius-sm);box-shadow:0 8px 24px rgba(var(--ink-rgb), .12);padding:4px}.ui-menu.right{left:auto;right:0}.ui-menu-item,.csel-opt{text-align:left;font:inherit;color:var(--ink);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-radius:6px;align-items:center;padding:6px 10px;font-size:13.5px;display:flex}.ui-menu-item:hover:not(:disabled),.csel-opt:hover{background:var(--mint-soft);color:var(--mint-deep)}.ui-menu-item:disabled{color:var(--muted);cursor:default;opacity:.7}.ui-menu-item.danger{color:var(--alert)}.ui-menu-item.danger:hover:not(:disabled){background:var(--rose-soft);color:var(--rose-deep)}.ui-menu-sep{background:var(--cream-line);height:1px;margin:4px 2px}.ui-unit{border:1px solid var(--cream-line);border-radius:var(--radius-sm);background:var(--paper);align-items:center;height:32px;padding-right:8px;display:inline-flex}.ui-unit:focus-within{border-color:var(--mint)}.ui-unit.is-invalid,.ui-unit.is-invalid:focus-within{border-color:var(--alert)}.ui-unit input,.ui-field .ui-unit input{text-align:right;height:100%;font:inherit;-moz-appearance:textfield;background:0 0;border:none;border-radius:0;padding:0 6px 0 9px;font-size:14px}.ui-unit input:focus,.ui-field .ui-unit input:focus{border:none;outline:none}.ui-unit-suffix{color:var(--muted);font-size:12.5px}.ui-props{flex-direction:column;margin:0;display:flex}.ui-prop{border-bottom:1px solid var(--cream-line);justify-content:space-between;align-items:baseline;gap:10px;padding:4px 0;font-size:13px;display:flex}.ui-prop:last-child{border-bottom:none}.ui-prop dt{color:var(--muted)}.ui-prop dd{text-align:right;margin:0;font-weight:600}.ui-prop.tone-mint dd{color:var(--mint-deep)}.ui-prop.tone-rose dd{color:var(--rose-deep)}.ui-prop.tone-sun dd{color:var(--warn-deep)}.ui-props.inline{flex-flow:wrap;gap:2px 14px}.ui-props.inline .ui-prop{border-bottom:none;gap:6px;padding:2px 0}.ui-action-grid{grid-template-columns:1fr 1fr;gap:6px;margin-top:10px;display:grid}.ui-action-grid .btn{width:100%}.notice.tone-rose{background:var(--rose-soft);border-color:var(--rose);color:var(--rose-deep)}.notice.tone-sun{background:var(--warn-soft);border-color:var(--warn);color:var(--warn-deep)}.notice.tone-mint{background:var(--mint-soft);border-color:var(--mint);color:var(--mint-deep)}.notice.tone-neutral{background:var(--cream-card);border-color:var(--cream-line);color:var(--ink)}.notice .notice-actions{vertical-align:middle;gap:6px;margin-left:10px;display:inline-flex}.print-wrap:focus{outline:none}.ui-print-bar{flex:auto;min-width:0}.ui-print-bar .toolbar{margin-bottom:0}.ui-print-bar .toolbar+.toolbar{margin-top:8px}.ui-print-actions{flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto;display:flex}.ui-toast-wrap{z-index:300;pointer-events:none;justify-content:center;padding:0 16px;display:flex;position:fixed;bottom:20px;left:0;right:0}.ui-toast{pointer-events:auto;background:var(--cream-card);border:1px solid var(--cream-line);border-radius:var(--radius-sm);max-width:560px;min-height:40px;box-shadow:0 8px 24px rgba(var(--ink-rgb), .14);color:var(--ink);align-items:center;gap:8px;padding:6px 8px 6px 14px;font-size:13.5px;line-height:1.4;display:flex}.ui-toast.tone-rose{border-color:var(--rose)}.ui-toast.tone-mint{border-color:var(--mint)}.ui-toast.tone-sun{border-color:var(--warn)}.ui-toast-text{overflow-wrap:anywhere;flex:auto;min-width:0}.ui-toast-actions{flex:none;align-items:center;gap:4px;display:flex}:root{--cream-bg:#faf5ec;--cream-card:#fffdf8;--cream-line:#dfd3bc;--head-bg:#f1eadc;--mint:#9cc5b0;--mint-soft:#d9ebe0;--mint-deep:#5e9a7c;--rose:#d4a5ad;--rose-soft:#f1dde0;--rose-deep:#b27680;--ink:#3d3a34;--ink-rgb:61, 58, 52;--muted:#8a857b;--paper:#fff;--on-accent:#fff;--ok:#6fa98c;--warn:#d9a65c;--warn-soft:#f7ead4;--warn-deep:#9a6f28;--alert:#c77b6e;--alert-rgb:199, 123, 110;--neutral-soft:#ede7dc;--neutral:#e2dac9;--print-ink:#000;--print-text:#111;--print-muted:#444;--print-note:#555;--print-num:#666;--print-line:#cfcfcf;--print-head-bg:#f4f2ee;--print-backdrop:#f2f0ec;--radius:12px;--radius-sm:8px;--shadow:0 1px 2px rgba(var(--ink-rgb), .04);--hover-bg:#9cc5b04d;--hover-line:#5e9a7c8c}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--cream-bg);color:var(--ink);-webkit-font-smoothing:antialiased;font-family:Montserrat,system-ui,sans-serif;font-size:14.5px;line-height:1.45}#root{min-height:100vh}button{cursor:pointer;font-family:inherit}input,select,textarea{color:var(--ink);font-family:inherit;font-size:14.5px}.login-wrap{justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:var(--cream-card);border:1px solid var(--cream-line);border-radius:var(--radius);box-shadow:var(--shadow);width:100%;max-width:380px;padding:34px 30px}.brand{align-items:center;gap:10px;margin-bottom:4px;display:flex}.brand-mark{background:linear-gradient(140deg, var(--mint-soft), var(--rose-soft));border:1px solid var(--cream-line);width:32px;height:32px;color:var(--mint-deep);border-radius:9px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.brand-name{letter-spacing:-.01em;font-size:22px;font-weight:700}.login-sub{color:var(--muted);margin:2px 0 24px;font-size:15px}.btn{border-radius:var(--radius-sm);border:none;padding:7px 13px;font-size:14px;font-weight:600;transition:filter .15s,background .15s}.btn:hover{filter:brightness(1.03)}.btn:active:not(:disabled){box-shadow:inset 0 1px 3px rgba(var(--ink-rgb), .22);filter:brightness(.97)}.btn-primary{background:var(--mint-deep);color:var(--on-accent)}.btn-ghost{color:var(--ink);border:1px solid var(--cream-line);background:0 0}.btn-ghost:hover{background:var(--paper)}.btn-danger{color:var(--alert);border:1px solid rgba(var(--alert-rgb), .5);background:0 0}.btn-danger:hover{background:rgba(var(--alert-rgb), .08);border-color:var(--alert)}.btn-sm{padding:5px 10px;font-size:13px}.btn-full{width:100%}.btn:disabled{opacity:.55;cursor:default}.notice{background:var(--rose-soft);border:1px solid var(--rose);color:var(--rose-deep);border-radius:var(--radius-sm);padding:9px 12px;font-size:13.5px;line-height:1.5}code{background:var(--paper);border:1px solid var(--cream-line);border-radius:5px;padding:1px 5px;font-size:14px}.shell{min-height:100vh;display:flex}.sidebar{background:var(--cream-card);border-right:1px solid var(--cream-line);flex-direction:column;flex-shrink:0;width:208px;height:100vh;padding:16px 12px;display:flex;position:sticky;top:0}.side-brand{padding:4px 8px 20px}.nav{flex-direction:column;flex:1;gap:3px;display:flex}.nav-item{border-radius:var(--radius-sm);text-align:left;color:var(--muted);background:0 0;border:none;align-items:center;gap:10px;width:100%;padding:7px 10px;font-size:14px;font-weight:500;transition:background .12s,color .12s;display:flex}.nav-item:hover{background:var(--cream-bg);color:var(--ink)}.nav-item.active{background:var(--mint-soft);color:var(--mint-deep);font-weight:600}.nav-item .ico{flex-shrink:0;justify-content:center;align-items:center;width:20px;display:inline-flex}.nav-item .ico svg{display:block}.nav-item .soon{color:var(--muted);margin-left:auto;font-size:11.5px;font-weight:500}.side-foot{border-top:1px solid var(--cream-line);padding-top:12px}.side-user{color:var(--muted);word-break:break-all;padding:0 8px 4px;font-size:14px}.side-ver{color:var(--mint-deep);padding:0 8px 8px;font-size:11px}.main{flex:1;min-width:0}.topbar{justify-content:space-between;align-items:flex-end;padding:18px 28px 0;display:flex}.page-title{letter-spacing:-.01em;font-size:21px;font-weight:700}.page-sub{color:var(--muted);margin-top:1px;font-size:13px}.content{padding:16px 28px 48px}.scen-picker{min-width:0;max-width:100%;color:var(--muted);cursor:pointer;align-items:center;gap:4px;font-size:12.5px;display:inline-flex}.scen-picker .lbl{color:var(--muted);white-space:nowrap;font-size:12.5px;font-weight:500}.scen-picker select,.scen-picker .scen-select{appearance:none;font:inherit;color:var(--scen-accent,var(--mint-deep));cursor:pointer;text-overflow:ellipsis;background:0 0;border:none;outline:none;min-width:0;max-width:100%;margin:0;padding:2px 14px 2px 2px;font-size:12.5px;font-weight:600}.scen-picker:after{content:"▾";color:var(--muted);pointer-events:none;margin-left:-12px;font-size:11px}.scen-picker select:focus{text-decoration:underline}.shell[data-scen-tone=mint]{--scen-accent:var(--mint-deep);--scen-soft:var(--mint-soft)}.shell[data-scen-tone=rose]{--scen-accent:var(--rose-deep);--scen-soft:var(--rose-soft)}.shell[data-scen-tone=sun]{--scen-accent:var(--warn-deep);--scen-soft:var(--warn-soft)}.main{border-top:3px solid var(--scen-soft,transparent)}.shell[data-scen-tone] .main{border-top-color:var(--scen-accent)}.clickable{cursor:pointer}.subtabs{border:1px solid var(--cream-line);border-radius:var(--radius-sm);background:var(--cream-card);margin-bottom:20px;display:inline-flex;overflow:hidden}.subtab{color:var(--muted);border:none;border-right:1px solid var(--cream-line);background:0 0;padding:9px 18px;font-size:15px;font-weight:600}.subtab:last-child{border-right:none}.subtab.active{background:var(--mint-soft);color:var(--mint-deep)}.csel{align-self:stretch;position:relative}.csel-btn{border:1px solid var(--cream-line);border-radius:var(--radius-sm);background:var(--paper);text-align:left;width:100%;height:43px;color:var(--ink);white-space:nowrap;align-items:center;padding:0 12px;font-size:16px;font-weight:500;display:flex;overflow:hidden}.csel-btn>span:first-child{text-overflow:ellipsis;overflow:hidden}.csel-btn.csel-empty{color:var(--muted);font-weight:400}.csel-btn:focus{border-color:var(--mint);outline:none}.csel-chev{color:var(--muted);margin-left:auto;font-size:12.5px}.csel-overlay{z-index:40;position:fixed;inset:0}.csel-panel{z-index:41;position:absolute;top:calc(100% + 4px);left:0;right:0}.csel-opt{width:100%}.csel-opt.sel{background:var(--mint-soft);color:var(--mint-deep);font-weight:600}.csel-custom{border-top:1px solid var(--cream-line);margin-top:4px;padding-top:6px}.csel-custom input{border:1px solid var(--cream-line);border-radius:7px;outline:none;width:100%;padding:7px 10px}.csel-custom input:focus{border-color:var(--mint)}.rooms-wrap{padding:10px var(--row-x) 12px 0;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));align-items:start;gap:10px;display:grid}@media print{.no-print,.sidebar,.topbar{display:none!important}.main,.content{padding:0!important}body{background:var(--paper)}.btn,.icon-btn{display:none!important}}.dash-wrap{background:var(--cream-card);border:1px solid var(--cream-line);border-radius:var(--radius);box-shadow:none;flex-wrap:wrap;align-items:center;gap:16px;margin-bottom:24px;padding:14px 16px;display:flex}.pie-legend{flex-direction:column;flex:1;gap:9px;min-width:220px;display:flex}.pie-legend .li{align-items:center;gap:9px;font-size:13.5px;display:flex}.pie-legend .dot{border-radius:4px;flex-shrink:0;width:13px;height:13px}.tip{cursor:help;align-items:center;gap:5px;display:inline-flex;position:relative}.tip-mark{border:1px solid var(--muted);width:16px;height:16px;color:var(--muted);text-align:center;cursor:help;background:0 0;border-radius:50%;flex-shrink:0;padding:0;font-family:inherit;font-size:11px;font-weight:700;line-height:14px}button.tip-mark:hover,button.tip-mark[aria-expanded=true]{border-color:var(--mint-deep);color:var(--mint-deep)}.tip-box{background:var(--ink);color:var(--on-accent);text-align:left;white-space:normal;z-index:60;width:270px;max-width:calc(100vw - 32px);box-shadow:0 8px 22px rgba(var(--ink-rgb), .25);text-transform:none;letter-spacing:0;border-radius:10px;padding:10px 13px;font-size:13px;font-weight:500;line-height:1.5}.tip-float{z-index:500;pointer-events:none;position:fixed}.tip-float:after{content:"";left:var(--tip-arrow,50%);border:6px solid #0000;position:absolute;transform:translate(-50%)}.tip-float.top:after{border-top-color:var(--ink);top:100%}.tip-float.bottom:after{border-bottom-color:var(--ink);bottom:100%}.two-col{grid-template-columns:1fr 1fr;align-items:start;gap:26px;display:grid}.two-col>div{min-width:0}@media (width<=1100px){.two-col{grid-template-columns:1fr}}.seat-layout{align-items:flex-start;gap:20px;display:flex}.seat-canvas-wrap{border:1px solid var(--cream-line);border-radius:var(--radius);background:var(--cream-card);min-width:0;box-shadow:var(--shadow);-webkit-user-select:none;user-select:none;flex:1;max-height:80vh;padding:12px;overflow:auto}.seat-canvas-wrap svg text{-webkit-user-select:none;user-select:none;pointer-events:none}.seat-side{flex-shrink:0;width:280px;position:relative}.dcol{border-radius:var(--radius);outline-offset:2px;outline:2px dashed #0000;flex-direction:column;padding:8px;transition:background .15s,outline-color .15s;display:flex}.dcol-fill{border-radius:var(--radius-sm);flex:1;min-height:60px}.two-col.equal{align-items:stretch}.modal-overlay{z-index:200;background:rgba(var(--ink-rgb), .34);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{background:var(--cream-card);border:1px solid var(--cream-line);border-radius:var(--radius);box-shadow:0 18px 50px rgba(var(--ink-rgb), .22);width:100%;max-width:430px;padding:20px 22px}.modal-title{margin-bottom:8px;font-size:16.5px;font-weight:700}.modal-body{color:var(--ink);white-space:pre-line;font-size:14px;line-height:1.55}.modal-input{border:1px solid var(--cream-line);border-radius:var(--radius-sm);background:var(--paper);outline:none;width:100%;margin-top:14px;padding:10px 12px}.modal-input:focus{border-color:var(--mint)}.modal-actions{justify-content:flex-end;gap:10px;margin-top:20px;display:flex}.btn-danger-solid{background:var(--alert);color:var(--on-accent)}.hero-preview{border-radius:var(--radius-sm);background:var(--cream-bg) center/cover no-repeat;border:1px solid var(--cream-line);height:150px;margin-bottom:12px}.map-preview{border:1px solid var(--cream-line);border-radius:var(--radius-sm);margin-top:10px;line-height:0;overflow:hidden}.map-preview iframe{border:0;width:100%;height:180px;display:block}.pal-group{margin-bottom:10px}.pal-label{color:var(--muted);margin-bottom:5px;font-size:12px;font-weight:600}.pal-row{flex-wrap:wrap;gap:8px;display:flex}.pal-dot{border:2px solid var(--cream-line);cursor:pointer;border-radius:8px;width:30px;height:30px;padding:0;transition:transform .12s,box-shadow .12s}.pal-dot:hover{transform:translateY(-2px)}.pal-dot.on{box-shadow:0 0 0 2px var(--cream-card), 0 0 0 4px var(--mint-deep)}.picked-row{flex-wrap:wrap;gap:8px;margin-bottom:14px;display:flex}.picked{background:var(--cream-bg);border:1px solid var(--cream-line);cursor:pointer;border-radius:20px;align-items:center;gap:7px;padding:5px 11px;font-size:13.5px;font-weight:600;display:inline-flex}.picked:hover{border-color:var(--alert);color:var(--alert)}.picked i{border:1px solid rgba(var(--ink-rgb), .15);border-radius:4px;width:14px;height:14px}.theme-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.theme-card{background:var(--cream-card);border:2px solid var(--cream-line);border-radius:var(--radius);text-align:left;border-width:1px;flex-direction:column;gap:5px;padding:10px;transition:border-color .15s,background .15s;display:flex}.theme-card:hover{border-color:var(--mint)}.theme-card.on{border-color:var(--mint-deep);background:var(--mint-soft)}.theme-swatch{background:var(--paper);border:1px solid var(--cream-line);border-radius:9px;justify-content:center;align-items:center;width:42px;height:42px;margin-bottom:3px;font-size:19px;display:inline-flex}.th-deco{letter-spacing:.04em;font-family:Montserrat,sans-serif;font-weight:700}.th-classic{font-family:Georgia,Times New Roman,serif}.th-romantic{font-family:Brush Script MT,Segoe Script,cursive;font-size:23px}.th-minimal{letter-spacing:.1em;font-family:Montserrat,sans-serif;font-weight:300}.theme-name{font-size:15px;font-weight:700}.toolbar select,.toolbar input,.csel-btn,.modal-input,.search{transition:border-color .12s,background .12s,box-shadow .12s}.toolbar select:hover,.toolbar input:hover,.csel-btn:hover,.modal-input:hover{border-color:var(--mint)}.toolbar select:focus,.toolbar input:focus,.modal-input:focus{border-color:var(--mint-deep);box-shadow:0 0 0 3px var(--mint-soft)}select,input[type=checkbox]{cursor:pointer}.subtab{transition:background .12s,color .12s}.subtab:not(.active):hover{background:var(--cream-bg);color:var(--ink)}.theme-card,.pal-dot{transition:transform .12s,border-color .12s,box-shadow .12s}.dnd-grab{cursor:grab;-webkit-touch-callout:none;touch-action:manipulation}.dnd-grab:active{cursor:grabbing}.dnd-armed{outline:2px solid var(--mint);outline-offset:-1px;border-radius:var(--radius-sm);background:var(--mint-soft)}.dnd-source{display:none!important}.dnd-ghost{z-index:400;pointer-events:none;border:2px solid var(--mint-deep);border-radius:var(--radius);background:var(--cream-card);box-shadow:0 14px 32px rgba(var(--ink-rgb), .28);position:fixed;overflow:hidden}.dnd-ghost>*{box-shadow:none!important;border-color:#0000!important;margin:0!important}.dnd-move{transition:transform .21s cubic-bezier(.2,.7,.3,1)}.dnd-zone{min-height:42px}.dnd-tail{transition:height .21s}.dnd-over{border-radius:var(--radius)}.edit-overlay{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:rgba(var(--ink-rgb), .3);align-items:flex-start;padding-top:max(24px,6vh)}.edit-modal{flex-direction:column;width:100%;max-width:760px;max-height:88vh;padding:20px 22px 14px;display:flex}.edit-modal.sm{max-width:560px}.edit-modal.wide{max-width:1180px}.edit-head{align-items:flex-start;gap:12px;margin-bottom:14px;display:flex}.edit-head .modal-title{margin-bottom:0}.edit-sub{color:var(--muted);margin-top:3px;font-size:13.5px}.edit-body{margin:0 -4px;padding:0 4px;overflow-y:auto}.edit-foot{border-top:1px solid var(--cream-line);color:var(--muted);text-align:center;margin-top:14px;padding-top:10px;font-size:12.5px}.seat-modal-body{flex:1;gap:18px;min-height:0;display:flex}.seat-modal-left{flex-direction:column;gap:12px;width:33%;min-width:320px;padding-right:4px;display:flex;overflow-y:auto}.seat-modal-canvas{background:var(--paper);border:1px solid var(--cream-line);border-radius:var(--radius);flex:1;min-width:0;overflow:auto}.sm-guests{flex-direction:column;flex:1;min-height:200px;display:flex}.sm-list{flex-direction:column;flex:1;gap:5px;display:flex;overflow-y:auto}.print-wrap{z-index:350;background:var(--print-backdrop);position:fixed;inset:0;overflow:auto}.print-bar{z-index:2;background:var(--cream-card);border-bottom:1px solid var(--cream-line);box-shadow:0 2px 10px rgba(var(--ink-rgb), .06);flex-wrap:wrap;align-items:center;gap:14px;padding:12px 20px;display:flex;position:sticky;top:0}.print-sheet{background:var(--paper);color:var(--print-text);max-width:1180px;box-shadow:0 6px 26px rgba(var(--ink-rgb), .14);margin:20px auto 60px;padding:26px 30px;font-family:Montserrat,sans-serif}.ps-head{border-bottom:1.5px solid var(--print-ink);margin-bottom:16px;padding-bottom:10px}.ps-head h2{margin:0;font-size:22px}.ps-meta{color:var(--print-muted);margin-top:4px;font-size:13px}.ps-block{break-inside:avoid;margin-top:18px}.ps-block h3{text-transform:uppercase;letter-spacing:.06em;margin:0 0 8px;font-size:15px}.ps-table{border-collapse:collapse;width:100%;font-size:12.5px}.ps-table th,.ps-table td{border:1px solid var(--print-line);text-align:left;padding:5px 8px}.ps-table th{background:var(--print-head-bg);font-weight:700}.ps-note{color:var(--print-note);margin-top:5px;font-size:11.5px}.ps-cols{columns:3 220px;column-gap:22px}.ps-tab{break-inside:avoid;margin-bottom:12px;font-size:12.5px}.ps-tab ol{margin:4px 0 0;padding-left:0;list-style:none}.ps-tab li{padding:1px 0}.ps-no{min-width:22px;color:var(--print-num);display:inline-block}.ps-warn{border:1px solid var(--print-ink);margin-top:12px;padding:8px 10px;font-size:12.5px}@media print{.print-wrap{background:var(--paper);position:static;overflow:visible}.print-sheet{box-shadow:none;max-width:none;margin:0;padding:0}body>:not(.print-wrap){display:none!important}.ps-cols{columns:2}}.toolbar{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.toolbar input,.toolbar select{border:1px solid var(--cream-line);border-radius:var(--radius-sm);background:var(--paper);outline:none;padding:6px 9px;font-size:13.5px}.toolbar input:focus,.toolbar select:focus{border-color:var(--mint)}.toolbar .search{flex:1;min-width:140px;max-width:260px}.g-tag{background:var(--neutral-soft);color:var(--muted);border-radius:20px;padding:1px 7px;font-size:11.5px;font-weight:500}.g-tag.tone-mint{background:var(--mint-soft);color:var(--mint-deep)}.g-tag.tone-rose{background:var(--rose-soft);color:var(--rose-deep)}.g-tag.tone-sun{background:var(--warn-soft);color:var(--warn-deep)}button.g-tag{cursor:pointer;border:none;font-family:inherit;line-height:1.5}button.g-tag:disabled{cursor:default}a.g-tag{color:var(--mint-deep);border:1px solid var(--mint);background:0 0;padding:0 6px;text-decoration:none}.g-tag.clickable{cursor:pointer;transition:filter .12s,box-shadow .12s}.g-tag.clickable:hover{filter:brightness(.95)}button.g-tag.clickable:hover,a.g-tag:hover{box-shadow:0 0 0 2px var(--cream-card), 0 0 0 3px var(--mint)}.icon-btn{border:1px solid var(--cream-line);background:var(--paper);width:26px;height:26px;color:var(--muted);border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;padding:0;font-size:13px;transition:border-color .12s,color .12s,background .12s;display:inline-flex}.icon-btn:hover{border-color:var(--mint);color:var(--mint-deep)}.icon-btn:not(:disabled):hover{background:var(--mint-soft)}.icon-btn.del:hover{border-color:var(--alert);color:var(--alert)}.icon-btn.del:not(:disabled):hover{background:var(--rose-soft)}.icon-btn:disabled{opacity:.55;cursor:default}.icon-btn:disabled:hover{border-color:var(--cream-line);color:var(--muted)}.icon-btn.active,.icon-btn[aria-pressed=true]{background:var(--mint-soft);color:var(--mint-deep);border-color:var(--mint)}.icon-btn.sm{border-radius:6px;width:22px;height:22px;font-size:12px}.icon-btn.lg{border-radius:var(--radius-sm);width:32px;height:32px}.empty{text-align:left;color:var(--muted);border-radius:var(--radius-sm);background:0 0;border:none;margin:0;padding:10px 2px;font-size:13.5px}.spinner{text-align:center;color:var(--muted);padding:40px;font-size:13.5px}.spinner.inline{text-align:left;padding:10px 2px}.lrow-list>.empty,.dnd-zone>.empty,.lrow-list>.spinner.inline{padding:8px var(--row-x);margin:0}.side-wedding{color:var(--ink);word-break:break-word;padding:0 8px 2px;font-size:14px;font-weight:700}.side-wedding-select{width:100%;color:var(--ink);border:1px solid var(--cream-line);border-radius:var(--radius-sm);background:var(--cream-card);outline:none;margin-bottom:6px;padding:6px 8px;font-weight:600}.side-wedding-select:focus{border-color:var(--mint)}.login-links{flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:14px;display:flex}.linklike{color:var(--mint-deep);text-underline-offset:3px;background:0 0;border:none;padding:0;font-size:14px;font-weight:500;text-decoration:underline}.linklike:hover{color:var(--ink)}.settings{flex-direction:column;gap:16px;max-width:860px;display:flex}.group-dot{vertical-align:middle;border:1px solid rgba(var(--ink-rgb), .12);border-radius:50%;margin-right:2px;display:inline-block}.swatch-btn{background:0 0;border:none;padding:2px;display:inline-flex}.palette{flex-wrap:wrap;align-items:center;gap:6px;width:100%;padding:4px 0 2px 28px;display:flex}.swatch{border:1px solid rgba(var(--ink-rgb), .12);cursor:pointer;border-radius:50%;width:22px;height:22px;padding:0;transition:transform .12s}.swatch:hover{transform:scale(1.12)}.swatch.on,.swatch-custom.on input{box-shadow:0 0 0 2px var(--cream-card), 0 0 0 4px var(--ink)}.swatch-custom{color:var(--muted);cursor:pointer;white-space:nowrap;align-items:center;gap:6px;margin-left:4px;font-size:12.5px;display:inline-flex}.swatch-custom:hover{color:var(--ink)}.swatch-custom input{border:1px solid var(--cream-line);background:var(--paper);cursor:pointer;border-radius:6px;width:26px;height:22px;padding:0}.swatch-custom input::-webkit-color-swatch-wrapper{padding:2px}.swatch-custom input::-webkit-color-swatch{border:none;border-radius:4px}.swatch-custom input::-moz-color-swatch{border:none;border-radius:4px}.btn-ghost.active{background:var(--mint-soft);color:var(--mint-deep);border-color:var(--mint)}.quickadd{grid-template-columns:minmax(280px,1fr) minmax(320px,1.2fr);align-items:start;gap:22px;display:grid}@media (width<=900px){.quickadd{grid-template-columns:1fr}}.qa-text{border:1px solid var(--cream-line);border-radius:var(--radius-sm);background:var(--paper);resize:vertical;outline:none;width:100%;padding:11px 13px;font-family:inherit;font-size:15px;line-height:1.5}.qa-text:focus{border-color:var(--mint)}.qa-right{max-height:60vh;padding-right:4px;overflow-y:auto}.qa-name{background:0 0;border:1px solid #0000;border-radius:7px;flex:1;padding:5px 8px;font-weight:700}.qa-name:hover,.qa-name:focus,.qa-gname:hover,.qa-gname:focus{border-color:var(--cream-line);background:var(--paper);outline:none}.qa-gname{background:0 0;border:1px solid #0000;border-radius:7px;flex:1;padding:4px 8px;font-size:14.5px}.orphan-target{border-radius:10px}.orphan-target.dnd-over{outline:2px dashed var(--mint-deep);outline-offset:-2px;background:var(--mint-soft)}.summary-strip{background:var(--cream-card);border:1px solid var(--cream-line);border-radius:var(--radius-sm);flex-wrap:wrap;align-items:center;gap:6px 18px;margin-bottom:12px;padding:7px 14px;display:flex}.summary-item{color:var(--muted);white-space:nowrap;align-items:baseline;gap:6px;font-size:12.5px;display:inline-flex}.summary-item .v{color:var(--ink);letter-spacing:-.01em;font-size:16px;font-weight:700}.summary-item.tone-mint .v{color:var(--mint-deep)}.summary-item.tone-rose .v{color:var(--rose-deep)}.summary-item.tone-sun .v{color:var(--warn-deep)}.summary-extra{flex-wrap:wrap;align-items:center;gap:6px;margin-left:auto;display:flex}.section-head{flex-wrap:wrap;align-items:center;gap:10px;min-height:28px;margin:14px 0 8px;display:flex}.section-head h3{margin:0;font-size:15px;font-weight:700}.section-head .total{color:var(--muted);font-size:13px}.section-head .actions{gap:6px;margin-left:auto;display:flex}.toolbar-filters{display:contents}.toolbar .right{flex-wrap:wrap;align-items:center;gap:6px;margin-left:auto;display:flex}.toolbar .meta{color:var(--muted);white-space:nowrap;font-size:12.5px}a.icon-btn,a.btn{text-decoration:none}.row-meta{color:var(--muted);margin-left:6px;font-size:13px;font-weight:400}.notice.sm{padding:6px 10px;font-size:12.5px}.only-mobile{display:none}.modal-close{flex-shrink:0;margin-left:auto}.icon-btn.modal-close{background:var(--cream-bg);color:var(--ink);border-color:#0000;border-radius:50%}.plan-canvas{border:1px solid var(--cream-line);border-radius:var(--radius);background:var(--cream-card);touch-action:none;-webkit-user-select:none;user-select:none;cursor:default;position:relative;overflow:hidden}.plan-canvas.is-panning{cursor:grabbing}.plan-canvas.is-grab{cursor:grab}.modal-overlay:not(.edit-overlay){z-index:450}.cols{grid-template-columns:repeat(auto-fit,minmax(380px,1fr));align-items:start;gap:16px;display:grid}
