:root{--bg:#f4f5f7;--surface:#fff;--border:#e3e6ea;--border-strong:#cfd4da;--text:#1f2329;--muted:#6b7280;--accent:#2f6fed;--accent-hover:#255cd0;--accent-weak:#eaf1fe;--lock:#d97706;--lock-weak:#fff4e0;--danger:#dc2626;--male:#e8f0fb;--male-strong:#3b6fd1;--female:#fbe9ee;--female-strong:#d2567e;--neutral:#f1f2f4;--radius:10px;--radius-sm:6px;--shadow:0 1px 2px #1018280f;--shadow-lg:0 10px 30px #1018281f;color:var(--text);background:var(--bg);font-family:Noto Sans TC,PingFang TC,Microsoft JhengHei,system-ui,sans-serif;font-size:14px;line-height:1.5}*{box-sizing:border-box}body{background:var(--bg);min-height:100vh;margin:0}h1,h2,h3,p{margin:0}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 1rem;display:flex}.card-head h2{font-size:.95rem;font-weight:700}.card-body{padding:1rem}.btn{border-radius:var(--radius-sm);border:1px solid var(--border-strong);background:var(--surface);white-space:nowrap;justify-content:center;align-items:center;gap:.35rem;height:32px;padding:0 .85rem;font-weight:500;transition:background .15s,border-color .15s,transform .15s,box-shadow .15s;display:inline-flex}.btn:hover:not(:disabled){background:#f8f9fb;border-color:#b9c0c8}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.btn-lg{height:40px;padding:0 1.25rem;font-size:.95rem}.btn-sm{height:26px;padding:0 .6rem;font-size:.8rem}.btn-text{color:var(--muted);background:0 0;border-color:#0000}.btn-text:hover:not(:disabled){background:var(--neutral);color:var(--text);border-color:#0000}.btn-text.danger:hover:not(:disabled){color:var(--danger)}.input{border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);height:32px;padding:0 .6rem;transition:border-color .15s,box-shadow .15s}.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-weak);outline:none}.input.num{text-align:center;width:4.5rem}textarea.input{resize:vertical;height:auto;padding:.5rem .6rem}.field{color:var(--muted);align-items:center;gap:.5rem;display:inline-flex}.seg{background:var(--neutral);border-radius:var(--radius-sm);gap:2px;padding:2px;display:inline-flex}.seg button{height:26px;color:var(--muted);background:0 0;border:none;border-radius:4px;padding:0 .7rem;font-weight:500;transition:background .15s,color .15s,box-shadow .15s}.seg button.active{background:var(--surface);color:var(--text);box-shadow:var(--shadow)}.badge{background:var(--neutral);height:24px;color:var(--muted);border-radius:999px;align-items:center;gap:.35rem;padding:0 .6rem;font-size:.8rem;font-weight:500;display:inline-flex}.badge.accent{background:var(--accent-weak);color:var(--accent)}.badge.lock{background:var(--lock-weak);color:var(--lock)}.hint{color:var(--muted);font-size:.85rem}.fade-enter-active,.fade-leave-active{transition:opacity .2s}.fade-enter-from,.fade-leave-to{opacity:0}.print-only{display:none}@media print{body{background:#fff}body *{visibility:hidden}#seating-print,#seating-print *{visibility:visible}#seating-print{width:100%;box-shadow:none;border:none;padding:0;position:absolute;top:0;left:0}#seating-print *{opacity:1!important;box-shadow:none!important;transition:none!important;animation:none!important}.print-only{display:block!important}}.exporting,.exporting *{opacity:1!important;transition:none!important;animation:none!important}.exporting .print-only{display:block}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}:root[data-theme=kon]{--bg:#f3f4f8;--border:#e1e4ec;--border-strong:#c9cedb;--text:#1c2340;--muted:#646b85;--accent:#2b3a8c;--accent-hover:#1f2c70;--accent-weak:#e8ebf7;--lock:#b8860b;--lock-weak:#fbf3dc;--neutral:#eceef4;--male:#e4e9f7;--male-strong:#34499c;--female:#f6e6ec;--female-strong:#b84d78}:root[data-theme=matcha]{--bg:#f4f6f1;--border:#e0e5da;--border-strong:#c6cfbc;--text:#232a1f;--muted:#6b7463;--accent:#5c8a3c;--accent-hover:#4a7230;--accent-weak:#e9f1e1;--lock:#c47d1c;--lock-weak:#fbf0dc;--neutral:#eaeee5;--male:#e3ebe0;--male-strong:#4f7fb0;--female:#f5e8e3;--female-strong:#c0607a}:root[data-theme=shu]{--bg:#faf6f3;--border:#ece3dd;--border-strong:#d8cac1;--text:#2b2320;--muted:#7a6b64;--accent:#c8423c;--accent-hover:#ad332e;--accent-weak:#fae8e6;--lock:#b7791f;--lock-weak:#fbf1dc;--neutral:#f0e9e4;--male:#e8ecf2;--male-strong:#4a6fb3;--female:#f8e4e4;--female-strong:#c8423c}:root[data-theme=sakura]{--bg:#fbf6f7;--border:#efe2e6;--border-strong:#ddc8cf;--text:#2d2226;--muted:#7d6a70;--accent:#d2698a;--accent-hover:#b9526f;--accent-weak:#fbe9ef;--lock:#b7791f;--lock-weak:#fbf1dc;--neutral:#f3e9ec;--male:#e6ecf5;--male-strong:#5677c2;--female:#fae3ea;--female-strong:#d2698a}:root[data-theme=sumi]{--bg:#15171b;--surface:#1e2127;--border:#2b2f37;--border-strong:#3a3f49;--text:#e6e8eb;--muted:#9aa1ad;--accent:#7aa2ff;--accent-hover:#93b4ff;--accent-weak:#263452;--lock:#e0b352;--lock-weak:#3d3418;--neutral:#272b33;--male:#243044;--male-strong:#8fb3ff;--female:#3d2a33;--female-strong:#f08fb0;--shadow:0 1px 2px #0006;--shadow-lg:0 10px 30px #00000080}:root[data-theme=sumi] .seat .eye{background:var(--accent);color:#0f1115}body,.card,.btn,.input,.badge,.seg,.topbar{transition:background-color .3s,border-color .3s,color .3s}.pressable:active:not(:disabled){transform:scale(.96)}.btn-primary:hover:not(:disabled){box-shadow:0 6px 16px color-mix(in srgb, var(--accent) 35%, transparent);transform:translateY(-1px)}.btn-primary:active:not(:disabled){box-shadow:none;transform:translateY(0)}.tab-enter-active{transition:opacity .25s,transform .25s}.tab-enter-from{opacity:0;transform:translateY(6px)}.tab-leave-active{display:none}.toast{z-index:50;background:var(--text);color:var(--bg);box-shadow:var(--shadow-lg);border-radius:999px;padding:.5rem 1rem;font-size:.85rem;position:fixed;bottom:1.5rem;left:50%;transform:translate(-50%)}.toast-enter-active,.toast-leave-active{transition:opacity .25s,transform .25s}.toast-enter-from,.toast-leave-to{opacity:0;transform:translate(-50%,8px)}@keyframes pop-in{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-3px)}75%{transform:translate(3px)}}body.dragging-seat{cursor:grabbing;-webkit-user-select:none;user-select:none}body.dragging-seat *{cursor:grabbing!important}.stack[data-v-eb6e1ace]{flex-direction:column;gap:1rem;max-width:560px;display:flex}.form[data-v-eb6e1ace]{flex-direction:column;gap:.75rem;display:flex}.row[data-v-eb6e1ace]{grid-template-columns:6rem 1fr;align-items:center;gap:.75rem;font-size:.88rem;display:grid}.row span[data-v-eb6e1ace]{color:var(--muted)}.actions[data-v-eb6e1ace]{justify-content:flex-end;display:flex}.between[data-v-eb6e1ace]{justify-content:space-between;align-items:center;gap:1rem;display:flex}.error[data-v-eb6e1ace]{color:var(--danger);font-size:.85rem}.version[data-v-eb6e1ace]{text-align:right;font-size:.75rem}@media (width<=520px){.row[data-v-eb6e1ace]{grid-template-columns:1fr;gap:.3rem}}.brand-logo[data-v-f48d14a5]{flex:none;display:block}.editor[data-v-ed85325f]{flex-direction:column;gap:.9rem;display:flex}.toolbar[data-v-ed85325f]{flex-wrap:wrap;align-items:center;gap:.9rem;display:flex}.room[data-v-ed85325f]{flex-direction:column;align-items:center;gap:.9rem;width:max-content;max-width:100%;margin:0 auto;display:flex}.stage[data-v-ed85325f]{text-align:center;width:100%;min-width:240px;color:var(--muted);background:var(--neutral);border-radius:999px 999px 4px 4px;padding:.3rem;font-size:.8rem}.grid[data-v-ed85325f]{gap:8px;display:grid}.cell[data-v-ed85325f]{border:1px solid var(--border-strong);background:var(--surface);border-radius:6px 6px 3px 3px;width:40px;height:40px;padding:0;transition:background .15s,border-color .15s,transform .15s}.cell[data-v-ed85325f]:active{transform:scale(.9)}.cell[data-v-ed85325f]:hover{border-color:var(--accent);transform:translateY(-1px)}.cell.aisle[data-v-ed85325f]{border-style:dashed;border-color:var(--border);background:0 0}.legend[data-v-ed85325f]{color:var(--muted);gap:1rem;font-size:.8rem;display:flex}.legend span[data-v-ed85325f]{align-items:center;gap:.35rem;display:inline-flex}.legend i[data-v-ed85325f]{border-radius:3px;width:14px;height:14px;display:inline-block}.login[data-v-d6d813fa]{flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:100vh;padding:1.5rem;display:flex}.logo[data-v-d6d813fa]{color:var(--accent);margin:0 auto .5rem}.version[data-v-d6d813fa]{font-size:.75rem}.panel[data-v-d6d813fa]{flex-direction:column;gap:.9rem;width:min(380px,100%);padding:1.75rem 1.5rem;animation:.3s ease-out rise-d6d813fa;display:flex}.panel.shake[data-v-d6d813fa]{animation:.3s shake}.head[data-v-d6d813fa]{text-align:center}.brand[data-v-d6d813fa]{letter-spacing:.08em;font-size:1.25rem;font-weight:700}.form[data-v-d6d813fa]{flex-direction:column;gap:.9rem;display:flex}.field[data-v-d6d813fa]{flex-direction:column;align-items:stretch;gap:.3rem;font-size:.85rem;display:flex}.field .input[data-v-d6d813fa]{height:36px}.info[data-v-d6d813fa]{border-radius:var(--radius-sm);background:var(--accent-weak);color:var(--accent);padding:.6rem .8rem;font-size:.85rem}.error[data-v-d6d813fa]{color:var(--danger);font-size:.85rem}.links[data-v-d6d813fa]{justify-content:space-between;gap:.5rem;display:flex}.link[data-v-d6d813fa]{color:var(--muted);text-underline-offset:3px;background:0 0;border:none;padding:0;font-size:.85rem;text-decoration:underline}.link[data-v-d6d813fa]:hover{color:var(--accent)}@keyframes rise-d6d813fa{0%{opacity:0;transform:translateY(8px)}}.editor[data-v-eb1df006]{flex-direction:column;gap:.9rem;display:flex}.toolbar[data-v-eb1df006]{flex-wrap:wrap;align-items:center;gap:.9rem;display:flex}.add[data-v-eb1df006]{margin-left:auto}.room[data-v-eb1df006]{flex-direction:column;align-items:center;gap:.9rem;width:max-content;max-width:100%;margin:0 auto;display:flex}.stage[data-v-eb1df006]{text-align:center;width:100%;min-width:240px;color:var(--muted);background:var(--neutral);border-radius:999px 999px 4px 4px;padding:.3rem;font-size:.8rem}.groups[data-v-eb1df006]{align-items:start;gap:.75rem;display:grid}.group[data-v-eb1df006]{border:1px solid var(--border);border-radius:var(--radius-sm);background:#fafbfc;flex-direction:column;gap:.5rem;padding:.6rem;animation:.25s ease-out pop-in;display:flex}.head[data-v-eb1df006]{align-items:center;gap:.3rem;display:flex}.name[data-v-eb1df006]{background:0 0;border:1px solid #0000;border-radius:4px;width:6rem;height:26px;padding:0 .4rem;font-weight:700}.name[data-v-eb1df006]:hover{border-color:var(--border)}.name[data-v-eb1df006]:focus{border-color:var(--accent);background:var(--surface);outline:none}.seats[data-v-eb1df006]{gap:8px;display:grid}.cell[data-v-eb1df006]{border:1px solid var(--border-strong);background:var(--surface);border-radius:6px 6px 3px 3px;width:40px;height:40px;padding:0;transition:border-color .15s,transform .15s}.cell[data-v-eb1df006]:active{transform:scale(.9)}.cell[data-v-eb1df006]:hover{border-color:var(--accent);transform:translateY(-1px)}.cell.off[data-v-eb1df006]{border-style:dashed;border-color:var(--border);background:0 0}.size[data-v-eb1df006]{color:var(--muted);align-items:center;gap:.5rem;font-size:.85rem;display:flex}.size .btn[data-v-eb1df006]{width:26px;padding:0}.picker[data-v-a6ec4f85]{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.6rem;display:grid}.option[data-v-a6ec4f85]{text-align:left;border:1px solid var(--border-strong);border-radius:var(--radius-sm);background:var(--surface);align-items:flex-start;gap:.65rem;padding:.7rem .85rem;transition:border-color .15s,box-shadow .15s,background .15s;display:flex}.option[data-v-a6ec4f85]:hover{border-color:#b9c0c8}.option.active[data-v-a6ec4f85]{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-weak)}.radio[data-v-a6ec4f85]{border:1.5px solid var(--border-strong);border-radius:50%;flex:none;width:16px;height:16px;margin-top:2px;transition:border-color .15s,box-shadow .15s}.option.active .radio[data-v-a6ec4f85]{border-color:var(--accent);box-shadow:inset 0 0 0 4px var(--accent)}.text[data-v-a6ec4f85]{flex-direction:column;gap:.1rem;display:flex}.text small[data-v-a6ec4f85]{color:var(--muted)}.backdrop[data-v-c5781230]{z-index:100;background:#11182766;justify-content:center;align-items:center;padding:1rem;animation:.15s fade-c5781230;display:flex;position:fixed;inset:0}.dialog[data-v-c5781230]{width:min(520px,100%);max-height:80vh;box-shadow:var(--shadow-lg);flex-direction:column;animation:.2s ease-out rise-c5781230;display:flex}.card-body[data-v-c5781230]{flex-direction:column;gap:.75rem;display:flex;overflow:hidden}.search[data-v-c5781230]{width:100%}.people[data-v-c5781230]{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.4rem;padding:2px;display:grid;overflow-y:auto}.person[data-v-c5781230]{border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);text-align:left;justify-content:space-between;align-items:center;gap:.4rem;height:34px;padding:0 .7rem;transition:border-color .15s,background .15s;display:flex}.person[data-v-c5781230]:hover{border-color:var(--accent);background:var(--accent-weak)}.person.locked[data-v-c5781230]{color:var(--muted)}.tag[data-v-c5781230]{color:var(--lock);font-size:.7rem}.none[data-v-c5781230]{text-align:center;grid-column:1/-1;padding:1rem}@keyframes fade-c5781230{0%{opacity:0}}@keyframes rise-c5781230{0%{opacity:0;transform:translateY(8px)}}.figure-svg[data-v-87f9bdb3]{width:48px;height:68px;stroke:var(--ink,var(--text));stroke-width:2.2px;stroke-linecap:round;stroke-linejoin:round;fill:none;filter:drop-shadow(0 6px 8px #0000002e);overflow:visible}.head[data-v-87f9bdb3]{fill:var(--skin,var(--surface))}.hair[data-v-87f9bdb3]{fill:var(--ink,var(--text))}.torso[data-v-87f9bdb3],.cloth[data-v-87f9bdb3]{fill:var(--cloth,var(--neutral))}.legs[data-v-87f9bdb3]{transform-origin:24px var(--hip)}.arms[data-v-87f9bdb3]{transform-origin:24px 29px}.arm-l[data-v-87f9bdb3],.arm-r[data-v-87f9bdb3],.leg-l[data-v-87f9bdb3],.leg-r[data-v-87f9bdb3]{transform-origin:inherit}.pose-hang[data-v-87f9bdb3]{transform-origin:50% 12px;animation:1.1s ease-in-out infinite alternate sway-87f9bdb3}.pose-hang .legs[data-v-87f9bdb3]{animation:.7s ease-in-out infinite alternate dangle-87f9bdb3}.pose-hang .arms[data-v-87f9bdb3]{animation:.9s ease-in-out infinite alternate-reverse dangle-87f9bdb3}.pose-walk[data-v-87f9bdb3]{animation:.36s ease-in-out infinite alternate bob-87f9bdb3}.pose-walk .leg-l[data-v-87f9bdb3],.pose-walk .arm-r[data-v-87f9bdb3]{transform-origin:24px var(--hip);animation:.36s ease-in-out infinite alternate step-87f9bdb3}.pose-walk .leg-r[data-v-87f9bdb3],.pose-walk .arm-l[data-v-87f9bdb3]{transform-origin:24px var(--hip);animation:.36s ease-in-out infinite alternate-reverse step-87f9bdb3}.pose-walk .arm-l[data-v-87f9bdb3],.pose-walk .arm-r[data-v-87f9bdb3]{transform-origin:24px 29px}@keyframes sway-87f9bdb3{0%{transform:rotate(-4deg)}to{transform:rotate(4deg)}}@keyframes dangle-87f9bdb3{0%{transform:rotate(-6deg)}to{transform:rotate(6deg)}}@keyframes step-87f9bdb3{0%{transform:rotate(-22deg)}to{transform:rotate(22deg)}}@keyframes bob-87f9bdb3{0%{transform:translateY(0)}to{transform:translateY(-2px)}}.figure[data-v-7f6d31c8]{z-index:200;pointer-events:none;margin:-16px 0 0 -24px;position:fixed;top:0;left:0}.inner[data-v-7f6d31c8]{transform-origin:50% 30%;--ink:var(--text);--skin:var(--surface);--cloth:var(--neutral);flex-direction:column;align-items:center;gap:2px;animation:.3s cubic-bezier(.2,.8,.3,1.3) both lift-7f6d31c8;display:flex}.inner.male[data-v-7f6d31c8]{--ink:var(--male-strong);--cloth:var(--male)}.inner.female[data-v-7f6d31c8]{--ink:var(--female-strong);--cloth:var(--female)}.label[data-v-7f6d31c8]{background:var(--ink);color:#fff;white-space:nowrap;box-shadow:var(--shadow-lg);border-radius:999px;padding:2px 8px;font-size:.78rem;font-weight:500}.body[data-v-7f6d31c8]{transform-origin:50% 8px;transition:transform .12s ease-out}.hint[data-v-7f6d31c8]{background:var(--surface);border:1px solid var(--border-strong);color:var(--muted);white-space:nowrap;box-shadow:var(--shadow);border-radius:999px;padding:2px 8px;font-size:.74rem}.hint.swap[data-v-7f6d31c8]{border-color:var(--accent);color:var(--accent);font-weight:500}.hint-enter-active[data-v-7f6d31c8],.hint-leave-active[data-v-7f6d31c8]{transition:opacity .15s,transform .15s}.hint-enter-from[data-v-7f6d31c8],.hint-leave-to[data-v-7f6d31c8]{opacity:0;transform:translateY(-4px)}@keyframes lift-7f6d31c8{0%{opacity:0;transform:scale(.6)translateY(10px)}}.walker[data-v-edd9aa35]{z-index:200;pointer-events:none;--ink:var(--text);--skin:var(--surface);--cloth:var(--neutral);flex-direction:column;align-items:center;gap:2px;margin:-48px 0 0 -24px;transition-property:transform;transition-timing-function:ease-in-out;display:flex;position:fixed;top:0;left:0}.walker.male[data-v-edd9aa35]{--ink:var(--male-strong);--cloth:var(--male)}.walker.female[data-v-edd9aa35]{--ink:var(--female-strong);--cloth:var(--female)}.label[data-v-edd9aa35]{background:var(--ink);color:#fff;white-space:nowrap;box-shadow:var(--shadow);border-radius:999px;padding:1px 7px;font-size:.72rem;transition:opacity .2s}.body[data-v-edd9aa35]{transition:transform .2s}.sitter[data-v-edd9aa35]{transform-origin:50% 100%}.walker.pose-sit .sitter[data-v-edd9aa35]{animation:.32s ease-in forwards sit-edd9aa35}.walker.pose-sit .label[data-v-edd9aa35]{opacity:0}@keyframes sit-edd9aa35{0%{opacity:1;transform:none}60%{opacity:1;transform:translateY(6px)scale(.92)}to{opacity:0;transform:translateY(10px)scale(.85)}}.seat[data-v-c76d55a9]{border:1px solid var(--border-strong);background:var(--surface);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;border-radius:8px 8px 4px 4px;justify-content:center;align-items:center;width:100%;min-height:60px;padding:1.05rem .3rem .4rem;transition:transform .15s,box-shadow .15s,border-color .2s,background-color .3s;animation:.35s cubic-bezier(.2,.8,.3,1.2) both enter-c76d55a9;display:flex;position:relative}.seat[data-v-c76d55a9]:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.seat.pressed[data-v-c76d55a9]{transition-duration:80ms;transform:scale(.94)}.seat.male[data-v-c76d55a9]{background:var(--male)}.seat.female[data-v-c76d55a9]{background:var(--female)}.seat.neutral[data-v-c76d55a9]{background:var(--neutral)}.seat.locked[data-v-c76d55a9]{border-color:var(--lock);box-shadow:0 0 0 2px var(--lock-weak);animation:.35s cubic-bezier(.2,.8,.3,1.2) both enter-c76d55a9,.5s ease-out pulse-c76d55a9}.no[data-v-c76d55a9]{color:var(--muted);font-size:.68rem;position:absolute;top:3px;left:6px}.lock[data-v-c76d55a9]{width:13px;height:13px;color:var(--lock);position:absolute;top:3px;right:4px}.lock-enter-active[data-v-c76d55a9]{transition:opacity .25s,transform .3s cubic-bezier(.2,.8,.3,1.3)}.lock-leave-active[data-v-c76d55a9]{transition:opacity .15s,transform .15s}.lock-enter-from[data-v-c76d55a9]{opacity:0;transform:translateY(-6px)scale(1.4)}.lock-leave-to[data-v-c76d55a9]{opacity:0;transform:scale(.6)}.eye[data-v-c76d55a9]{background:var(--text);color:var(--surface);border-radius:3px;padding:0 3px;font-size:.62rem;line-height:1.3;position:absolute;top:2px;right:4px}.name[data-v-c76d55a9]{word-break:break-all;font-size:.92rem;font-weight:500;line-height:1.2}@keyframes enter-c76d55a9{0%{opacity:0;transform:translateY(8px)scale(.9)}to{opacity:1;transform:translateY(0)scale(1)}}@keyframes pulse-c76d55a9{0%{box-shadow:0 0 0 0 var(--lock)}to{box-shadow:0 0 0 2px var(--lock-weak)}}.board[data-v-fa96234e]{flex-direction:column;align-items:center;gap:1rem;display:flex}.stage[data-v-fa96234e]{text-align:center;letter-spacing:.2em;width:70%;max-width:560px;color:var(--muted);background:var(--neutral);border-radius:999px 999px 6px 6px;padding:.35rem;font-size:.8rem}.grid[data-v-fa96234e]{justify-content:center;gap:8px;display:grid}.groups[data-v-fa96234e]{justify-content:center;align-items:start;gap:1rem;display:grid}.group[data-v-fa96234e]{border:1px solid var(--border);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--surface) 70%, var(--neutral));padding:.5rem}.group-name[data-v-fa96234e]{text-align:center;color:var(--muted);margin-bottom:.4rem;font-size:.78rem;font-weight:500}.group-seats[data-v-fa96234e]{gap:8px;display:grid}.slot[data-v-fa96234e]{touch-action:none;border-radius:8px 8px 4px 4px;transition:transform .15s,opacity .15s;position:relative}.slot.drag-source[data-v-fa96234e]{opacity:.35}.slot.vacated[data-v-fa96234e] .seat{opacity:.15;transition:opacity .2s}.slot.drop-target[data-v-fa96234e]{box-shadow:0 0 0 2px var(--accent);transform:scale(1.06)}.slot.drop-target[data-v-fa96234e] .seat{border-color:var(--accent)}.empty[data-v-fa96234e],.aisle[data-v-fa96234e]{border-radius:8px 8px 4px 4px;min-height:60px}.empty[data-v-fa96234e]{border:1px dashed var(--border-strong);background:0 0;width:100%;transition:border-color .15s,background .15s,transform .15s,box-shadow .15s}.empty[data-v-fa96234e]:hover,.empty.drop-target[data-v-fa96234e]{border-color:var(--accent);background:var(--accent-weak)}.aisle[data-v-fa96234e]{background:0 0}.legend[data-v-fa96234e]{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:1rem;font-size:.78rem;display:flex}.legend span[data-v-fa96234e]{align-items:center;gap:.35rem;display:inline-flex}.legend i[data-v-fa96234e]{border:1px solid var(--border-strong);border-radius:4px 4px 2px 2px;width:14px;height:12px;display:inline-block}.legend .male[data-v-fa96234e]{background:var(--male)}.legend .female[data-v-fa96234e]{background:var(--female)}.legend .neutral[data-v-fa96234e]{background:var(--neutral)}.legend .locked[data-v-fa96234e]{border-color:var(--lock);box-shadow:0 0 0 2px var(--lock-weak);background:var(--surface)}.legend .empty-i[data-v-fa96234e]{background:0 0;border-style:dashed}.editor[data-v-4c5bb8c6]{flex-direction:column;gap:.9rem;display:flex}.toolbar[data-v-4c5bb8c6]{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.actions[data-v-4c5bb8c6]{gap:.4rem;margin-left:auto;display:flex}.import[data-v-4c5bb8c6]{border:1px dashed var(--border-strong);border-radius:var(--radius-sm);background:#fafbfc;flex-direction:column;gap:.5rem;padding:.75rem;display:flex}.import-actions[data-v-4c5bb8c6]{gap:.4rem;display:flex}.table[data-v-4c5bb8c6]{border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.thead[data-v-4c5bb8c6],.row[data-v-4c5bb8c6]{grid-template-columns:4.2rem 9rem 6.2rem 3rem 6.5rem 5rem 3.5rem;align-items:center;gap:.5rem;padding:.35rem .6rem;display:grid}.thead[data-v-4c5bb8c6]{border-bottom:1px solid var(--border);color:var(--muted);background:#fafbfc;font-size:.78rem;font-weight:500}.tbody[data-v-4c5bb8c6]{max-height:60vh;overflow-y:auto}.student[data-v-4c5bb8c6]{border-bottom:1px solid var(--border);transition:background .15s}.student[data-v-4c5bb8c6]:last-child{border-bottom:none}.student[data-v-4c5bb8c6]:hover,.student.open[data-v-4c5bb8c6]{background:#fafbfc}.row .input[data-v-4c5bb8c6]{height:28px}.c-no[data-v-4c5bb8c6]{text-align:center}.c-eye[data-v-4c5bb8c6]{justify-self:center}.check[data-v-4c5bb8c6]{width:18px;height:18px;display:inline-flex;position:relative}.check input[data-v-4c5bb8c6]{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.check span[data-v-4c5bb8c6]{border:1px solid var(--border-strong);background:var(--surface);border-radius:4px;width:18px;height:18px;transition:background .15s,border-color .15s}.check input:checked+span[data-v-4c5bb8c6]{background:var(--accent);border-color:var(--accent)}.check input:checked+span[data-v-4c5bb8c6]:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:4px;height:9px;position:absolute;top:2px;left:6px;transform:rotate(45deg)}.height[data-v-4c5bb8c6]{color:var(--muted);align-items:center;gap:.3rem;font-size:.8rem;display:flex}.height .input[data-v-4c5bb8c6]{text-align:center;width:4.2rem}.c-rules[data-v-4c5bb8c6]{gap:.3rem}.c-rules.has-rules[data-v-4c5bb8c6]{border-color:var(--accent);color:var(--accent)}.count[data-v-4c5bb8c6]{background:var(--accent);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:16px;height:16px;padding:0 4px;font-size:.7rem;display:inline-flex}.c-del[data-v-4c5bb8c6]{justify-self:end}.panel[data-v-4c5bb8c6]{border-top:1px dashed var(--border);flex-direction:column;gap:.5rem;padding:.5rem .6rem .75rem 4.8rem;display:flex}.rule[data-v-4c5bb8c6]{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.rule-label[data-v-4c5bb8c6]{min-width:5rem;color:var(--muted);font-size:.85rem}.chips[data-v-4c5bb8c6]{flex-wrap:wrap;align-items:center;gap:.3rem;display:flex}.chip[data-v-4c5bb8c6]{background:var(--accent-weak);height:24px;color:var(--accent);border-radius:999px;align-items:center;gap:.2rem;padding:0 .25rem 0 .55rem;font-size:.8rem;font-weight:500;display:inline-flex}.chip button[data-v-4c5bb8c6]{color:inherit;background:0 0;border:none;border-radius:999px;padding:0 .3rem;font-size:.95rem;line-height:1}.chip button[data-v-4c5bb8c6]:hover{background:#2f6fed26}.picker[data-v-4c5bb8c6]{height:26px;color:var(--muted);font-size:.8rem}.empty[data-v-4c5bb8c6]{text-align:center;padding:1.5rem}.list-enter-active[data-v-4c5bb8c6],.list-leave-active[data-v-4c5bb8c6]{transition:opacity .2s,transform .2s}.list-enter-from[data-v-4c5bb8c6],.list-leave-to[data-v-4c5bb8c6]{opacity:0;transform:translateY(-4px)}@media (width<=760px){.thead[data-v-4c5bb8c6]{display:none}.row[data-v-4c5bb8c6]{grid-template-columns:3.5rem 1fr 6.2rem;grid-auto-rows:auto}.panel[data-v-4c5bb8c6]{padding-left:.6rem}}.topbar[data-v-e9f51752]{z-index:10;background:var(--surface);border-bottom:1px solid var(--border);position:sticky;top:0}.inner[data-v-e9f51752]{align-items:center;gap:2rem;max-width:1200px;height:52px;margin:0 auto;padding:0 1.25rem;display:flex}.brand[data-v-e9f51752]{letter-spacing:.04em;color:var(--accent);align-items:center;gap:.5rem;font-weight:700;display:inline-flex}.tabs[data-v-e9f51752]{gap:.25rem;height:100%;display:flex}.tabs button[data-v-e9f51752]{color:var(--muted);background:0 0;border:none;padding:0 .9rem;font-weight:500;transition:color .15s;position:relative}.tabs button[data-v-e9f51752]:hover{color:var(--text)}.tabs button.active[data-v-e9f51752]{color:var(--accent)}.tabs button.active[data-v-e9f51752]:after{content:"";background:var(--accent);border-radius:2px 2px 0 0;height:2px;position:absolute;bottom:0;left:.9rem;right:.9rem}.who[data-v-e9f51752]{align-items:center;gap:.6rem;margin-left:auto;font-size:.85rem;display:flex}.class-name[data-v-e9f51752]{font-weight:700}.save-state[data-v-e9f51752]{color:var(--muted);min-width:3.5rem;font-size:.75rem;transition:color .2s}.save-state.error[data-v-e9f51752]{color:var(--danger)}.themes[data-v-e9f51752]{gap:.4rem;margin-left:0;display:flex}.swatch[data-v-e9f51752]{width:18px;height:18px;box-shadow:0 0 0 1px var(--border-strong);border:2px solid #0000;border-radius:50%;padding:0;transition:transform .15s,box-shadow .15s}.swatch[data-v-e9f51752]:hover{transform:scale(1.2)}.swatch.active[data-v-e9f51752]{border-color:var(--surface);box-shadow:0 0 0 2px var(--text);transform:scale(1.1)}.map .card-body[data-v-e9f51752]{transition:opacity .25s,filter .25s}.map.arranging .card-body[data-v-e9f51752]{opacity:.35;filter:blur(1px)}.page[data-v-e9f51752]{max-width:1200px;margin:0 auto;padding:1.25rem}.stack[data-v-e9f51752],.stack-sm[data-v-e9f51752]{flex-direction:column;gap:1rem;display:flex}.seating[data-v-e9f51752]{grid-template-columns:260px 1fr;align-items:start;gap:1rem;display:grid}.panel[data-v-e9f51752]{position:sticky;top:68px}.stats[data-v-e9f51752]{grid-template-columns:repeat(3,1fr);gap:.5rem;display:grid}.stats div[data-v-e9f51752]{border-radius:var(--radius-sm);background:var(--neutral);flex-direction:column;padding:.5rem .6rem;display:flex}.stats .label[data-v-e9f51752]{color:var(--muted);font-size:.75rem}.stats strong[data-v-e9f51752]{font-size:1.15rem;font-weight:700}.section[data-v-e9f51752]{border-top:1px solid var(--border);flex-direction:column;gap:.45rem;padding-top:.9rem;display:flex}.section-title[data-v-e9f51752]{color:var(--muted);justify-content:space-between;align-items:center;font-size:.8rem;font-weight:700;display:flex}.toggle[data-v-e9f51752]{cursor:pointer;align-items:center;gap:.55rem;font-size:.88rem;display:flex}.toggle input[data-v-e9f51752]{opacity:0;width:0;height:0;position:absolute}.switch[data-v-e9f51752]{background:var(--border-strong);border-radius:999px;flex:none;width:30px;height:18px;transition:background .15s;position:relative}.switch[data-v-e9f51752]:after{content:"";width:14px;height:14px;box-shadow:var(--shadow);background:#fff;border-radius:50%;transition:transform .15s;position:absolute;top:2px;left:2px}.toggle input:checked+.switch[data-v-e9f51752]{background:var(--accent)}.toggle input:checked+.switch[data-v-e9f51752]:after{transform:translate(12px)}.toggle input:not(:checked)~span[data-v-e9f51752]:last-child{color:var(--muted)}.actions[data-v-e9f51752]{flex-direction:row}.actions .btn[data-v-e9f51752]{flex:1}.map .card-body[data-v-e9f51752]{overflow-x:auto}.print-head[data-v-e9f51752]{text-align:center;margin-bottom:1rem;font-size:1.1rem;font-weight:700}.notice[data-v-e9f51752]{border-radius:var(--radius-sm);margin-top:1rem;padding:.7rem .9rem;font-size:.88rem}.notice p[data-v-e9f51752]{margin:0 0 .25rem;font-weight:500}.notice ul[data-v-e9f51752]{margin:0;padding-left:1.2rem}.notice.warn[data-v-e9f51752]{background:var(--lock-weak);color:#92400e}.notice.error[data-v-e9f51752]{color:#991b1b;background:#fee2e2;margin:0 0 1rem}@media (width<=900px){.seating[data-v-e9f51752]{grid-template-columns:1fr}.panel[data-v-e9f51752]{position:static}.inner[data-v-e9f51752]{gap:1rem;padding:0 .75rem}.tabs button[data-v-e9f51752]{padding:0 .6rem}}
