@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.\!fixed{position:fixed!important}.fixed{position:fixed}.static{position:static}.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.block{display:block}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a), 0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--navy:#17243f;--navy-2:#213252;--ink:#17243f;--muted:#5f6b7a;--line:#d8e0e8;--paper:#fffdf8;--canvas:#f1f4f7;--cream:#f8f2e8;--coral:#ff6b5e;--coral-dark:#e95247;--mint:#22a78d;--yellow:#ffca58;--success:#16866f;--warning:#a56a12;--danger:#c94c42;--focus:#2f77c5;--surface:#fff;--surface-soft:#f6f8fa;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow:0 14px 38px #19263c1a;--shadow-sm:0 3px 12px #19263c14}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--canvas);color:var(--ink);text-rendering:optimizelegibility;margin:0;font-family:Pretendard,Noto Sans KR,Apple SD Gothic Neo,Malgun Gothic,system-ui,sans-serif;line-height:1.5}button,input,textarea{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--focus)}@supports (color:color-mix(in lab, red, red)){button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:3px solid color-mix(in srgb, var(--focus) 28%, transparent)}}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline-offset:2px}button:disabled,input:disabled,select:disabled,textarea:disabled{cursor:not-allowed}input::placeholder,textarea::placeholder{color:#929ba7;opacity:1}::selection{background:#22a78d33}.app{min-height:100dvh}.info-page{box-sizing:border-box;max-width:820px;min-height:100vh;margin:0 auto;padding:clamp(36px,7vw,86px) clamp(22px,5vw,48px)}.info-page-back,.info-page footer a{color:#1e7d83;font-size:13px;font-weight:850}.info-page-eyebrow{color:var(--coral-dark);letter-spacing:.11em;margin:38px 0 8px;font-size:12px;font-weight:900}.info-page h1{letter-spacing:-.06em;margin:0;font-size:clamp(31px,5vw,48px);line-height:1.12}.info-page-lead{color:#536175;margin:20px 0 34px;font-size:17px;line-height:1.75}.info-page section{border-top:1px solid #dce3e8;padding:24px 0}.info-page h2{letter-spacing:-.03em;margin:0 0 10px;font-size:20px}.info-page section p,.info-page li{color:#566477;font-size:15px;line-height:1.75}.info-page ul{gap:7px;margin:0;padding-left:20px;display:grid}.info-page footer{border-top:1px solid #dce3e8;padding-top:24px}.topbar{background:var(--navy);color:#fff;justify-content:space-between;align-items:center;height:72px;padding:0 clamp(18px,3vw,46px);display:flex}.brand{color:#fff;cursor:default;background:0 0;border:0;align-items:center;gap:11px;padding:0;text-decoration:none;display:flex}.brand-mark{background:var(--coral);border-radius:13px 13px 13px 4px;justify-content:center;align-items:center;width:41px;height:41px;font-size:20px;font-weight:900;display:flex;transform:rotate(-3deg);box-shadow:3px 3px #ffca58e6}.brand>span:last-child{gap:1px;display:grid}.brand strong{letter-spacing:-.06em;font-size:20px}.brand small{color:#b8c5d9;letter-spacing:.05em;font-size:10px}.top-actions,.button-row{align-items:center;gap:9px;display:flex}.save-state{color:#c7d1df;align-items:center;gap:7px;margin-right:6px;font-size:12px;display:flex}.live-seat-state{color:#dce5f1;white-space:nowrap;align-items:center;gap:7px;font-size:11px;display:flex}.live-seat-state b{color:#9fadc0;font-size:10px}.save-state i,.live-dot{background:#55d6a8;border-radius:999px;width:7px;height:7px;display:inline-block;box-shadow:0 0 0 4px #55d6a81f}.button{cursor:pointer;border:0;border-radius:10px;justify-content:center;align-items:center;min-height:42px;padding:0 17px;font-size:13px;font-weight:750;transition:all .16s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button.compact{min-height:38px;padding-inline:14px}.button.primary{background:var(--navy);color:#fff;flex:1}.button.secondary{color:var(--navy);background:#fff}.button.ghost{color:#fff;background:0 0;border:1px solid #ffffff38}.panel-section .button.ghost{border-color:var(--line);color:var(--ink)}.workspace{--sidebar-width:370px;grid-template-columns:minmax(310px, var(--sidebar-width)) minmax(0, 1fr);min-height:calc(100dvh - 72px);display:grid;position:relative}.control-panel{background:var(--paper);border-right:1px solid #d9e0e7;flex-direction:column;align-self:stretch;min-width:0;height:calc(100dvh - 72px);min-height:calc(100dvh - 72px);max-height:calc(100dvh - 72px);display:flex;position:sticky;top:72px;overflow:hidden}.intro{background:radial-gradient(circle at 92% 12%, #ffca582e 0 70px, transparent 71px), var(--cream);border-bottom:1px solid #eae2d5;padding:28px 30px 24px}.eyebrow{letter-spacing:.08em;text-transform:uppercase;font-weight:850;color:var(--coral-dark)!important;margin:0 0 7px!important;font-size:11px!important}.intro h1{letter-spacing:-.055em;margin:0 0 11px;font-size:clamp(27px,2.3vw,34px);line-height:1.13}.intro p:last-child{color:#626b78;margin:0;font-size:13px;line-height:1.55}.step-tabs{border-bottom:1px solid var(--line);background:#fff;grid-template-columns:repeat(3,1fr);padding:0 22px;display:grid}.sidebar-view-controls{border-bottom:1px solid var(--line);background:#fff;align-items:center;gap:6px;padding:8px 22px;display:flex}.sidebar-view-controls button{color:#405064;cursor:pointer;background:#f3f6f8;border:1px solid #dae2e8;border-radius:8px;min-height:30px;padding:0 9px;font-size:10px;font-weight:800}.sidebar-view-controls button:first-child{color:#147d6d;background:#ecf7f4;border-color:#bee4da}.sidebar-resizer{cursor:col-resize;bottom:0;left:calc(var(--sidebar-width) - 6px);z-index:35;background:0 0;border:0;width:13px;padding:0;display:block;position:absolute;top:0}.sidebar-resizer:after{border:3px solid var(--canvas);content:"";background:#cbd5df;border-radius:999px;width:4px;height:50px;transition:background .16s,height .16s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.sidebar-resizer:hover:after,.sidebar-resizer:focus-visible:after{background:var(--teal);height:80px}.workspace.settings-focus .control-panel{z-index:60;border:1px solid #d6dfe7;border-radius:16px;width:calc(100vw - 32px);height:calc(100dvh - 88px);min-height:0;max-height:calc(100dvh - 88px);position:fixed;top:80px;left:16px;transform:none;box-shadow:0 24px 70px #17243f40}.workspace.settings-focus .intro{display:none}.workspace.settings-focus .preview-area{filter:blur(2px)brightness(.78);pointer-events:none;-webkit-user-select:none;user-select:none}.workspace.settings-focus .sidebar-resizer{display:none}.workspace.settings-focus .panel-section{padding-inline:clamp(28px,4vw,64px)}.step-tabs button{color:#8b95a4;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:15px 4px 12px;font-size:12px;font-weight:750}.step-tabs button b{background:#edf0f4;border-radius:99px;justify-content:center;align-items:center;width:20px;height:20px;margin-right:4px;font-size:10px;display:inline-flex}.step-tabs button.active{border-color:var(--coral);color:var(--ink)}.step-tabs button.active b{background:var(--coral);color:#fff}.panel-section{overscroll-behavior:contain;scrollbar-gutter:stable;flex:1;min-height:0;padding:23px 28px 20px;overflow-y:auto}.sidebar-accordion{gap:9px;display:grid}.sidebar-accordion details{background:#fff;border:1px solid #dce3e9;border-radius:13px;transition:border-color .16s,box-shadow .16s;overflow:clip}.sidebar-accordion details[open]{border-color:#b9d9d2;box-shadow:0 6px 18px #17243f0f}.sidebar-accordion summary{cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:space-between;align-items:center;gap:12px;min-height:58px;padding:11px 13px;list-style:none;display:flex}.sidebar-accordion summary::-webkit-details-marker{display:none}.sidebar-accordion summary:after{color:#667585;content:"+";background:#eef2f5;border-radius:999px;flex:none;justify-content:center;align-items:center;width:28px;height:28px;font-size:17px;font-weight:700;transition:background .16s,color .16s,transform .16s;display:inline-flex}.sidebar-accordion details[open]>summary:after{color:#117565;content:"−";background:#e4f5f1}.sidebar-accordion summary:hover,.sidebar-accordion summary:focus-visible{background:#f8fafb;outline:none}.sidebar-accordion summary:focus-visible{box-shadow:inset 0 0 0 3px #22a78d33}.sidebar-accordion summary>span{gap:3px;min-width:0;display:grid}.sidebar-accordion summary strong{color:var(--ink);font-size:13px}.sidebar-accordion summary small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;line-height:1.4;overflow:hidden}.accordion-content{border-top:1px solid #e6ebef;padding:4px 13px 14px}.accordion-content>.history-rule-list,.accordion-content>.rule-board,.accordion-content>.gender-rule,.accordion-content>.empty-seat-picker{margin-top:10px;margin-bottom:0}.roster-actions{margin-top:9px}.control-panel .sidebar-accordion,.control-panel .sidebar-accordion details,.control-panel .sidebar-accordion .accordion-content{display:contents}.control-panel .sidebar-accordion summary{display:none}.panel-expand-button{color:#147665;cursor:pointer;background:#ecf7f4;border:1px solid #b9ded5;border-radius:9px;flex:none;justify-content:center;align-items:center;width:34px;height:34px;padding:0;font-size:20px;font-weight:650;line-height:1;display:inline-flex}.panel-expand-button:hover,.panel-expand-button:focus-visible{background:#dff2ed;border-color:#75bdae;outline:none}.panel-expand-backdrop{cursor:default;z-index:221;background:#0f192b94;border:0;padding:0;position:fixed;inset:0}.control-panel.panel-overlay-open{z-index:220;overflow:visible}.control-panel .panel-section.panel-expanded{background:var(--paper);z-index:222;border:1px solid #d6dfe7;border-radius:18px;width:auto;height:calc(100dvh - 64px);max-height:none;padding:26px clamp(24px,3vw,48px) 32px;position:fixed;inset:32px;overflow-y:auto;box-shadow:0 28px 80px #0f192b4d}.workspace.settings-focus .sidebar-accordion,.control-panel .panel-expanded .sidebar-accordion{align-items:start;gap:clamp(16px,2vw,28px);display:grid}.workspace.settings-focus .roster-settings-grid,.control-panel .panel-expanded .roster-settings-grid{grid-template-columns:minmax(280px,.78fr) minmax(420px,1.22fr)}.workspace.settings-focus .layout-settings-grid,.control-panel .panel-expanded .layout-settings-grid{grid-template-columns:minmax(300px,.78fr) minmax(480px,1.22fr)}.workspace.settings-focus .rule-settings-grid,.control-panel .panel-expanded .rule-settings-grid{grid-template-columns:repeat(3,minmax(280px,1fr))}.workspace.settings-focus .sidebar-accordion details,.control-panel .panel-expanded .sidebar-accordion details{background:#fff;border:1px solid #dce3e9;border-radius:14px;min-width:0;display:block;overflow:hidden}.workspace.settings-focus .sidebar-accordion summary,.control-panel .panel-expanded .sidebar-accordion summary{cursor:default;pointer-events:none;background:#f7f9fa;border-bottom:1px solid #e2e8ed;display:flex}.workspace.settings-focus .sidebar-accordion summary:after,.control-panel .panel-expanded .sidebar-accordion summary:after{display:none}.workspace.settings-focus .sidebar-accordion .accordion-content,.control-panel .panel-expanded .sidebar-accordion .accordion-content{border:0;padding:8px 16px 18px;display:block}.workspace.settings-focus .roster-input,.control-panel .panel-expanded .roster-input{height:clamp(220px,34vh,420px);max-height:420px}@media (min-width:761px) and (max-height:860px){.intro{padding:13px 22px 12px}.intro .eyebrow,.intro p:last-child{display:none}.intro h1{margin:0;font-size:22px;line-height:1.08}.step-tabs button{padding-block:10px 8px}.sidebar-view-controls{padding-block:5px}.panel-section{padding-block:14px 12px}.control-panel .roster-panel .roster-input,.control-panel .roster-panel .roster-input:focus{flex:none;height:118px;min-height:118px}.panel-footer{padding-block:10px 9px}.reveal-settings-button{min-height:44px;margin-bottom:8px;padding-block:7px}.draw-button{min-height:50px}.group-draw-button{min-height:36px;margin-top:7px}}.section-heading{justify-content:space-between;align-items:center;margin-bottom:19px;display:flex}.section-heading>div{align-items:baseline;gap:9px;display:flex}.section-heading span{color:var(--muted);font-size:12px}.section-heading strong{font-size:18px}.text-button,.reset-button{color:var(--coral-dark);cursor:pointer;background:0 0;border:0;padding:4px;font-size:11px;font-weight:750}.field-label{margin:14px 0 7px;font-size:12px;font-weight:800;display:block}.split-label{justify-content:space-between;align-items:center;display:flex}.split-label span{color:#8d96a3;font-size:10px;font-weight:500}.text-input,.roster-input,.pair-input{color:var(--ink);background:#fff;border:1px solid #d8dfe7;border-radius:10px;outline:none;width:100%;transition:all .15s}.text-input{height:42px;padding:0 12px}.roster-input{resize:vertical;height:190px;padding:11px 12px;line-height:1.6}.roster-panel{flex-direction:column;display:flex}.roster-panel .roster-input{flex:190px;height:auto;min-height:190px;max-height:420px}.roster-panel .roster-input:focus{height:min(600px,65vh);max-height:600px}.pair-input{resize:vertical;height:72px;padding:9px 11px;line-height:1.5}.text-input:focus,.roster-input:focus,.pair-input:focus{border-color:var(--mint);box-shadow:0 0 0 3px #22a78d1f}.input-help{color:#8b94a1;margin:6px 0 14px;font-size:10px}.roster-mode-picker{background:#edf1f4;border-radius:10px;grid-template-columns:1fr 1fr;gap:4px;margin-top:15px;padding:4px;display:grid}.roster-mode-picker button{color:#718090;cursor:pointer;background:0 0;border:0;border-radius:7px;min-height:36px;font-size:11px;font-weight:850}.roster-mode-picker button.selected{color:var(--ink);background:#fff;box-shadow:0 2px 8px #1c2c451a}.roster-mode-picker small{background:var(--coral);color:#fff;border-radius:99px;margin-left:4px;padding:2px 4px;font-size:7px}.number-only-settings{background:#f6f8f9;border:1px solid #dde3e8;border-radius:11px;gap:11px;margin-top:12px;padding:13px;display:grid}.number-only-settings label{gap:6px;display:grid}.number-only-settings label span{font-size:11px;font-weight:800}.number-only-settings input{font:inherit;background:#fff;border:1px solid #d4dce4;border-radius:8px;min-height:40px;padding:0 10px}.number-only-settings p{color:#7f8a97;margin:0;font-size:9px;line-height:1.45}.button-row .button{flex:1}.counter{border-bottom:1px solid #edf0f3;justify-content:space-between;align-items:center;padding:13px 0;display:flex}.counter>div:first-child,.toggle-row>span{gap:3px;display:grid}.counter strong,.toggle-row strong{font-size:13px}.counter span,.toggle-row small{color:#87909e;font-size:10px}.counter-control{background:#f1f4f6;border-radius:9px;align-items:center;display:flex;overflow:hidden}.counter-control button{cursor:pointer;background:0 0;border:0;width:34px;height:34px;font-size:19px}.counter-control button:disabled{color:#c8cdd3;cursor:default}.counter-control output{text-align:center;width:25px;font-size:13px;font-weight:850}.desk-choice{border:0;grid-template-columns:1fr 1fr;gap:8px;margin:20px 0 0;padding:0;display:grid}.desk-choice legend{margin-bottom:8px;font-size:12px;font-weight:800}.desk-choice button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:9px;height:38px;font-size:12px;font-weight:700}.desk-choice button.selected{border-color:var(--mint);color:#0b7c69;background:#eaf8f5}.tip-box{background:#edf6ff;border-radius:10px;align-items:center;gap:11px;margin-top:18px;padding:12px;display:flex}.tip-box>span{color:#4081bc;background:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:34px;height:34px;font-size:18px;display:flex}.tip-box p{gap:2px;margin:0;font-size:10px;line-height:1.45;display:grid}.tip-box strong{font-size:11px}.capacity{border-radius:99px;padding:5px 8px;font-weight:750}.capacity.good{color:#14806b;background:#e8f8f2}.capacity.bad{color:#cc473d;background:#fff0ed}.toggle-row{cursor:pointer;border-bottom:1px solid #edf0f3;align-items:center;min-height:57px;padding:10px 0;display:flex;position:relative}.toggle-row>span{padding-right:55px}.toggle-row input{opacity:0;width:1px;height:1px;position:absolute}.toggle-row i{background:#cdd4dc;border-radius:999px;width:43px;height:25px;margin-left:auto;transition:all .18s;position:relative}.toggle-row i:after{content:"";background:#fff;border-radius:50%;width:19px;height:19px;transition:all .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.toggle-row input:checked+i{background:var(--mint)}.toggle-row input:checked+i:after{transform:translate(18px)}.toggle-row input:focus-visible+i{outline:3px solid #22a78d40}.history-rule-list{background:#f6f8fa;border:1px solid #e1e6eb;border-radius:13px;margin-bottom:14px;padding:4px 12px}.history-rule-row{border-bottom:1px solid #e4e9ee;justify-content:space-between;align-items:center;gap:10px;min-height:62px;padding:8px 0;display:flex}.history-rule-row:last-child{border-bottom:0}.history-rule-row>label{cursor:pointer;align-items:center;gap:9px;min-width:0;display:flex}.history-rule-row>label input{accent-color:var(--mint);width:17px;height:17px}.history-rule-row>label span{gap:2px;display:grid}.history-rule-row strong{font-size:12px}.history-rule-row small{color:#7c8795;font-size:9px;line-height:1.35}.lookback-select{background:#fff;border:1px solid #d7dee5;border-radius:9px;flex:none;align-items:center;gap:5px;padding:3px 6px 3px 8px;display:flex}.lookback-select span{color:#87909e;font-size:8px;font-weight:800}.lookback-select select{color:var(--ink);background:0 0;border:0;outline:0;padding:3px 0;font-size:10px;font-weight:800}.rule-board{background:#f4f6f7;border:1px solid #dde3e8;border-radius:16px;margin-bottom:14px;padding:12px}.rule-board-heading{justify-content:space-between;align-items:center;margin-bottom:10px;display:flex}.rule-board-heading>span{gap:2px;display:grid}.rule-board-heading strong{font-size:13px}.rule-board-heading small{color:#7f8995;font-size:9px}.rule-board-heading>b{background:var(--navy);color:#fff;border-radius:99px;padding:5px 8px;font-size:8px}.rule-card-grid{grid-template-columns:1fr 1fr;gap:7px;display:grid}.rule-card{--rule-color:#687587;--rule-soft:#edf0f3;cursor:pointer;text-align:left;background:#fff;border:1px solid #e0e5e9;border-radius:12px;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:60px;padding:8px;transition:border-color .15s,box-shadow .15s,transform .15s;display:grid}.rule-card:last-child{grid-column:1/-1}.rule-card:hover{border-color:var(--rule-color)}@supports (color:color-mix(in lab, red, red)){.rule-card:hover{border-color:color-mix(in srgb, var(--rule-color) 45%, #dbe1e6)}}.rule-card:hover{transform:translateY(-1px)}.rule-card.selected{border-color:var(--rule-color);box-shadow:0 0 0 2px var(--rule-color)}@supports (color:color-mix(in lab, red, red)){.rule-card.selected{box-shadow:0 0 0 2px color-mix(in srgb, var(--rule-color) 13%, transparent)}}.rule-card-apart{--rule-color:#df6257;--rule-soft:#fff0ed}.rule-card-spread{--rule-color:#3d7ec0;--rule-soft:#eaf4ff}.rule-card-front{--rule-color:#bd8428;--rule-soft:#fff5df}.rule-card-notBack{--rule-color:#7763b5;--rule-soft:#f1edff}.rule-card-notAlone{--rule-color:#188a76;--rule-soft:#e6f7f2}.rule-card>i{background:var(--rule-soft);color:var(--rule-color);border-radius:9px;justify-content:center;align-items:center;width:32px;height:32px;font-size:17px;font-style:normal;font-weight:900;display:flex}.rule-card>span{gap:2px;min-width:0;display:grid}.rule-card>span small{color:#89929d;text-overflow:ellipsis;white-space:nowrap;font-size:7px;overflow:hidden}.rule-card>b{background:var(--rule-soft);color:var(--rule-color);border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:8px;display:flex}.rule-editor{--rule-color:#df6257;--rule-soft:#fff0ed;background:#fff;border:1px solid #dfe4e8;border-radius:13px;margin-top:9px;padding:0 11px 12px;overflow:hidden}.rule-editor-spread{--rule-color:#3d7ec0;--rule-soft:#eaf4ff}.rule-editor-front{--rule-color:#bd8428;--rule-soft:#fff5df}.rule-editor-notBack{--rule-color:#7763b5;--rule-soft:#f1edff}.rule-editor-notAlone{--rule-color:#188a76;--rule-soft:#e6f7f2}.rule-editor>header{align-items:center;gap:9px;padding:11px 0;display:flex}.rule-editor>header>i{background:var(--rule-soft);color:var(--rule-color);border-radius:8px;flex:none;justify-content:center;align-items:center;width:30px;height:30px;font-size:14px;font-style:normal;font-weight:900;display:flex}.rule-editor>header>span{gap:2px;display:grid}.rule-editor>header small{color:#7b8693;font-size:8px;line-height:1.35}.rule-editor .toggle-row{border-top:1px solid #edf0f2;min-height:50px}.pair-builder{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;gap:5px;display:grid}.pair-builder select{background:#f7f8f9;border:1px solid #d7dee4;border-radius:8px;min-width:0;min-height:34px;padding:0 6px;font-size:9px}.pair-builder>span{color:#99a1aa;font-size:10px;font-weight:900}.pair-builder>button{background:var(--rule-color,var(--navy));color:#fff;cursor:pointer;border:0;border-radius:8px;min-height:34px;padding:0 9px;font-size:9px;font-weight:850}.pair-builder>button:disabled{cursor:not-allowed;opacity:.42}.pair-rule-editor{border-top:1px solid #edf0f2;padding-top:10px}.pair-rule-list{gap:5px;margin-top:9px;display:grid}.pair-rule-list>div{background:#f8f9fa;border:1px solid #e5e9ec;border-radius:9px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;gap:6px;min-height:34px;padding:5px 7px;display:grid}.pair-rule-list>div>span{text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:800;overflow:hidden}.pair-rule-list>div>b{background:var(--rule-soft);color:var(--rule-color);border-radius:99px;padding:4px 6px;font-size:7px}.pair-rule-list>div>button{color:#9aa2ab;cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:15px}.pair-rule-empty{color:#98a0a9;text-align:center;margin:10px 0 0;font-size:8px}.rule-student-list{flex-wrap:wrap;gap:5px;max-height:145px;display:flex;overflow:auto}.rule-student-list button{cursor:pointer;background:#f7f8f9;border:1px solid #dce2e7;border-radius:99px;min-height:29px;padding:0 9px;font-size:9px;font-weight:800}.rule-student-list button.selected{background:var(--navy);border-color:var(--navy);color:#fff}.gender-rule{border:1px solid #dfe4e9;border-radius:14px;margin-top:13px;overflow:hidden}.gender-rule-heading{gap:10px;padding:13px;display:grid}.gender-rule-heading>span{gap:2px;display:grid}.gender-rule-heading strong{font-size:12px}.gender-rule-heading small{color:#7e8995;font-size:9px}.compact-segment{background:#eef1f3;border-radius:9px;grid-template-columns:repeat(3,1fr);gap:3px;padding:3px;display:grid}.compact-segment button{cursor:pointer;background:0 0;border:0;border-radius:7px;min-height:31px;font-size:9px;font-weight:800}.compact-segment button.selected{background:#fff;box-shadow:0 2px 7px #17243f17}.gender-student-list{border-top:1px solid #e5e9ed;max-height:220px;padding:6px 12px;overflow:auto}.gender-student-list>div{border-bottom:1px solid #eef1f3;justify-content:space-between;align-items:center;min-height:39px;display:flex}.gender-student-list>div:last-child{border-bottom:0}.gender-student-list>div>span{font-size:10px;font-weight:750}.gender-student-list>div>div{gap:3px;display:flex}.gender-student-list button{color:#7b8591;cursor:pointer;background:#f1f3f5;border:0;border-radius:7px;min-width:31px;min-height:25px;font-size:8px;font-weight:850}.gender-student-list button.selected{color:var(--ink);background:#e4e8ed}.gender-student-list button.male.selected{color:#2868a9;background:#e4f0ff}.gender-student-list button.female.selected{color:#b34e78;background:#ffe8f1}.panel-footer{border-top:1px solid var(--line);background:#fff;flex:none;margin-top:auto;padding:18px 28px 16px}.reveal-settings-button{color:var(--ink);cursor:pointer;text-align:left;background:#f2f5f7;border:1px solid #dce2e8;border-radius:11px;justify-content:space-between;align-items:center;width:100%;margin-bottom:12px;padding:10px 12px;display:flex}.reveal-settings-button:hover{background:#edf5f2;border-color:#aac5bd}.group-draw-button{color:#116f60;cursor:pointer;background:#edf7f4;border:1px solid #b9ddd4;border-radius:11px;justify-content:center;align-items:center;gap:7px;width:100%;min-height:40px;margin-top:9px;font-size:11px;font-weight:850;display:flex}.group-draw-button small{color:#54837a;background:#fff;border-radius:99px;padding:4px 6px;font-size:7px}.group-draw-button:disabled{cursor:default;opacity:.55}.teacher-backdrop,.group-backdrop{z-index:120}.teacher-panel header small{color:var(--mint);letter-spacing:.14em;font-size:9px;font-weight:900}.teacher-panel{background:#f4f6f8;border:1px solid #ffffff47;border-radius:22px;width:min(100vw - 28px,920px);max-height:min(760px,100vh - 28px);padding:17px;overflow:auto;box-shadow:0 30px 100px #030a1866}.teacher-panel>header{justify-content:space-between;align-items:center;padding:5px 4px 16px;display:flex}.teacher-panel>header h2{letter-spacing:-.04em;margin:3px 0 0;font-size:20px}.teacher-panel>header>button{cursor:pointer;background:#fff;border:0;border-radius:50%;width:34px;height:34px;font-size:20px}.teacher-workspace-tabs{background:#e9edf1;border-radius:12px;grid-template-columns:repeat(2,1fr);gap:4px;margin-bottom:10px;padding:4px;display:grid}.teacher-workspace-tabs button{color:#6f7a88;cursor:pointer;background:0 0;border:0;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:39px;font-size:10px;font-weight:850;display:flex}.teacher-workspace-tabs button b{background:#d8dee5;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:8px;display:flex}.teacher-workspace-tabs button.selected{color:var(--ink);background:#fff;box-shadow:0 2px 8px #17243f14}.teacher-workspace-tabs button.selected b{background:var(--navy);color:#fff}.teacher-workspace{background:#fff;border:1px solid #e0e5e9;border-radius:15px;max-height:570px;padding:14px;overflow:auto}.teacher-workspace-intro{background:#f2f5f7;border-radius:11px;justify-content:space-between;align-items:center;margin-bottom:11px;padding:10px 12px;display:flex}.teacher-workspace-intro>span{gap:2px;display:grid}.teacher-workspace-intro strong{font-size:11px}.teacher-workspace-intro small{color:#7c8793;font-size:8px}.teacher-workspace-intro>b{background:var(--navy);color:#fff;border-radius:99px;padding:5px 8px;font-size:8px}.teacher-pair-grid{grid-template-columns:1fr 1fr;gap:9px;display:grid}.teacher-rule-card{--rule-color:#df6257;--rule-soft:#fff0ed;border:1px solid #e1e5e9;border-radius:12px;padding:10px}.teacher-rule-card.spread{--rule-color:#3d7ec0;--rule-soft:#eaf4ff}.teacher-rule-card>header,.teacher-student-rule>header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.teacher-rule-card>header>span,.teacher-student-rule>header>span{gap:2px;display:grid}.teacher-rule-card>header strong,.teacher-student-rule>header strong{font-size:10px}.teacher-rule-card>header small,.teacher-student-rule>header small{color:#7f8994;font-size:8px}.teacher-rule-card>header>b,.teacher-student-rule>header>b{background:var(--rule-soft,#edf1f4);color:var(--rule-color,var(--navy));border-radius:50%;justify-content:center;align-items:center;width:23px;height:23px;font-size:8px;display:flex}.teacher-rule-card .pair-rule-editor{border:0;padding:0}.teacher-student-rule-grid{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:9px;display:grid}.teacher-student-rule{border:1px solid #e1e5e9;border-radius:12px;min-width:0;padding:10px}.teacher-student-rule>select{background:#f6f8f9;border:1px solid #dce2e7;border-radius:8px;width:100%;min-height:33px;padding:0 7px;font-size:9px}.teacher-student-rule>div{flex-wrap:wrap;gap:4px;min-height:23px;margin-top:7px;display:flex}.teacher-student-rule>div button{cursor:pointer;background:#edf2f5;border:0;border-radius:99px;min-height:24px;padding:0 7px;font-size:8px;font-weight:800}.teacher-student-rule>div>small{color:#9aa2aa;margin:auto 0;font-size:8px}.teacher-rule-options{grid-template-columns:1fr;gap:8px;margin-top:9px;display:grid}.teacher-history-option,.teacher-gender-option{background:#f6f8f9;border:1px solid #e1e5e9;border-radius:11px;justify-content:space-between;align-items:center;gap:8px;min-height:57px;padding:8px 9px;display:flex}.teacher-history-option>label{align-items:center;gap:7px;display:flex}.teacher-history-option input{accent-color:var(--mint)}.teacher-history-option label span,.teacher-gender-option>span{gap:2px;display:grid}.teacher-history-option strong,.teacher-gender-option strong{font-size:9px}.teacher-history-option small,.teacher-gender-option small{color:#89929d;font-size:7px}.teacher-gender-option select{border:1px solid #d6dde3;border-radius:8px;min-height:31px;font-size:8px}.teacher-gender-students{background:#f8fafb;border:1px solid #e1e5e9;border-radius:12px;margin-top:9px;overflow:hidden}.teacher-gender-students>header{padding:10px 12px}.teacher-gender-students>header>span{gap:2px;display:grid}.teacher-gender-students>header strong{font-size:10px}.teacher-gender-students>header small{color:#89929d;font-size:8px}.teacher-seat-toolbar{grid-template-columns:1fr auto;align-items:end;gap:8px;margin-bottom:10px;display:grid}.teacher-seat-toolbar label{gap:4px;display:grid}.teacher-seat-toolbar label span{font-size:9px;font-weight:850}.teacher-seat-toolbar select{border:1px solid #d7dee4;border-radius:9px;min-height:39px;padding:0 9px}.teacher-seat-toolbar button{color:#9d5148;cursor:pointer;background:#fff2ef;border:1px solid #f0c6bf;border-radius:9px;min-height:39px;padding:0 11px;font-size:9px;font-weight:850}.teacher-seat-toolbar button:disabled{cursor:default;opacity:.45}.teacher-seat-actions{gap:6px;display:flex}.teacher-seat-actions .cancel-selection{color:#326b9f;background:#eef5ff;border-color:#bfd4ec}.teacher-seat-mode{background:#f4f7f8;border:1px solid #e0e6e9;border-radius:10px;align-items:center;gap:9px;min-height:48px;margin-bottom:8px;padding:8px 10px;display:flex}.teacher-seat-mode>span{color:#697784;background:#dfe6ea;border-radius:50%;flex:none;justify-content:center;align-items:center;width:27px;height:27px;font-size:10px;display:flex}.teacher-seat-mode>div{gap:2px;min-width:0;display:grid}.teacher-seat-mode strong{font-size:10px}.teacher-seat-mode small{color:#788491;font-size:8px}.teacher-seat-mode.assigning{background:#edf5ff;border-color:#b9d3ee}.teacher-seat-mode.assigning>span{color:#fff;background:#3977b4}.teacher-seat-legend{flex-wrap:wrap;justify-content:flex-end;gap:10px;margin:1px 2px 7px;display:flex}.teacher-seat-legend span{color:#76818d;align-items:center;gap:4px;font-size:7.5px;font-weight:800;display:flex}.teacher-seat-legend i{background:#f7f9fa;border:1px solid #dfe4e8;border-radius:3px;width:12px;height:9px}.teacher-seat-legend i.private{background:#fff5e5;border-color:#eabf72}.teacher-seat-legend i.public{border-color:#89b7ad;box-shadow:inset 0 0 0 1px #c9e4de}.teacher-seat-legend i.empty{background:#e8ebee;border-color:#d3d8dc}.teacher-mini-desk{background:var(--navy);color:#fff;text-align:center;border-radius:7px;width:max-content;margin:7px auto;padding:5px 18px;font-size:8px;font-weight:900;display:block}.teacher-seat-map{gap:7px;display:grid}.teacher-seat-row{grid-template-columns:repeat(var(--sections), minmax(0, 1fr));gap:9px;display:grid}.teacher-seat-section{grid-template-columns:repeat(var(--section-seats), minmax(0, 1fr));gap:4px;display:grid}.teacher-seat-cell{min-width:0;position:relative}.teacher-seat-main{cursor:pointer;background:#f7f9fa;border:1px solid #dfe4e8;border-radius:8px;gap:2px;width:100%;min-height:48px;padding:22px 5px 6px;display:grid;position:relative}.teacher-seat-main small{color:#99a1aa;font-size:7px}.teacher-seat-main strong{text-overflow:ellipsis;white-space:nowrap;font-size:8px;overflow:hidden}.teacher-seat-main.fixed{background:#fff5e5;border-color:#eabf72}.teacher-seat-main.publicly-fixed:not(.fixed){border-color:#89b7ad;box-shadow:inset 0 0 0 1px #c9e4de}.teacher-seat-main.can-assign:not(.blocked):hover{background:#edf5ff;border-color:#79a9d7;box-shadow:0 0 0 2px #3977b41f}.teacher-seat-main.selected-student{background:#e8f3ff;border-color:#3977b4;box-shadow:inset 0 0 0 1px #3977b4}.teacher-seat-main.blocked{color:#929aa3;cursor:default;background:#e8ebee}.teacher-seat-fix{color:#8a95a1;cursor:pointer;z-index:2;background:#fff;border:1px solid #d7dee5;border-radius:5px;justify-content:center;align-items:center;width:38px;height:20px;padding:0;font-size:6.5px;font-weight:950;display:flex;position:absolute;top:3px;left:3px}.teacher-seat-fix.fixed{color:#fff;background:#e98345;border-color:#cf7137}.teacher-seat-fix:disabled{opacity:.25}.teacher-fixed-list{flex-wrap:wrap;gap:5px;margin-top:10px;display:flex}.teacher-fixed-list button{color:#8c6728;cursor:pointer;background:#fff5e5;border:1px solid #e7c98d;border-radius:99px;align-items:center;gap:5px;min-height:26px;padding:0 8px;font-size:8px;font-weight:800;display:inline-flex}.teacher-fixed-list button b{color:#6f501f;font-size:8px}.teacher-fixed-list button i{margin-left:1px;font-size:10px;font-style:normal}.teacher-panel>footer{justify-content:space-between;align-items:center;margin-top:13px;padding:0 3px;display:flex}.teacher-panel>footer span{color:#818b97;font-size:8px}.teacher-panel>footer button{color:#a34d48;cursor:pointer;background:0 0;border:0;font-size:9px;font-weight:850}.group-dialog{background:#f7f8fa;border-radius:22px;flex-direction:column;width:min(100vw - 30px,960px);max-height:calc(100vh - 32px);display:flex;overflow:hidden;box-shadow:0 30px 100px #030a1866}.group-dialog>header{background:var(--navy);color:#fff;justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.group-dialog>header span{color:#aebbd0;font-size:9px}.group-dialog>header h2{letter-spacing:-.05em;margin:3px 0 0;font-size:23px}.group-dialog>header>button{color:#fff;cursor:pointer;background:#ffffff1f;border:0;border-radius:50%;width:35px;height:35px;font-size:21px}.group-config{background:#fff;border-bottom:1px solid #e1e5e9;max-height:min(52vh,440px);padding:12px 18px;overflow-y:auto}.group-setting-title{color:#667180;letter-spacing:.08em;text-transform:uppercase;font-size:8px;font-weight:900}.group-mode-options{grid-template-columns:repeat(3,1fr);gap:7px;display:grid}.group-mode-options>.group-setting-title{grid-column:1/-1}.group-mode-options button{cursor:pointer;text-align:left;background:#f5f7f8;border:1px solid #e0e5e9;border-radius:10px;gap:3px;min-height:52px;padding:8px 10px;display:grid}.group-mode-options button strong{font-size:10px}.group-mode-options button small{color:#838d98;font-size:8px}.group-mode-options button.selected{background:#eaf8f4;border-color:#68bca8;box-shadow:0 0 0 2px #22a78d17}.group-setting-grid{grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:7px;margin-top:8px;display:grid}.group-setting-grid>label{background:#f7f8f9;border:1px solid #e2e6e9;border-radius:9px;align-items:center;gap:7px;min-height:46px;padding:7px 9px;display:flex}.group-sizing-control{background:#f7f8f9;border:1px solid #e2e6e9;border-radius:9px;grid-column:span 2;gap:6px;padding:8px 9px;display:grid}.group-sizing-control>span{font-size:9px;font-weight:850}.group-sizing-control>div{background:#e9edf0;border-radius:7px;grid-template-columns:1fr 1fr;gap:3px;padding:3px;display:grid}.group-sizing-control button{color:#6f7a86;cursor:pointer;background:0 0;border:0;border-radius:6px;min-height:27px;font-size:8px;font-weight:850}.group-sizing-control button.selected{color:var(--ink);background:#fff;box-shadow:0 2px 7px #17243f17}.group-sizing-control select{width:100%;max-width:none}.group-setting-grid>label:not(.group-check){justify-content:space-between}.group-setting-grid>label>span{gap:2px;font-size:9px;font-weight:850;display:grid}.group-setting-grid select{background:#fff;border:1px solid #d5dce2;border-radius:7px;max-width:105px;min-height:30px;font-size:8px}.group-setting-grid input{accent-color:var(--mint)}.group-setting-grid small{color:#7d8792;font-size:7px;font-weight:500}.group-rule-section{--rule-color:#7357b6;--rule-soft:#eee9fa;background:#faf9fd;border:1px solid #e4def2;border-radius:12px;margin-top:9px;padding:11px}.group-rule-section>header{justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:10px;display:flex}.group-rule-section>header>div{gap:3px;display:grid}.group-rule-section>header strong{font-size:10px}.group-rule-section>header>small{color:#7d758d;text-align:right;font-size:8px}.group-rule-section .pair-rule-editor{border-color:#e7e1f0}.group-rule-section .pair-rule-list{grid-template-columns:repeat(2,minmax(0,1fr))}.group-import-seat-rules{background:#fff;border:1px solid #e5e0ee;border-radius:9px;align-items:center;gap:8px;min-height:42px;margin-top:9px;padding:7px 9px;display:flex}.group-import-seat-rules input{accent-color:#7357b6}.group-import-seat-rules>span{gap:2px;display:grid}.group-import-seat-rules strong{font-size:9px}.group-import-seat-rules small{color:#7d758d;font-size:7px}.group-ready-stage,.group-shuffle-stage{text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;min-height:310px;padding:28px;display:flex}.group-ready-stage>span{color:var(--mint);background:#e7f6f1;border-radius:18px;justify-content:center;align-items:center;width:68px;height:68px;font-size:26px;display:flex;transform:rotate(45deg)}.group-ready-stage h3,.group-shuffle-stage h3{letter-spacing:-.04em;margin:18px 0 4px;font-size:18px}.group-ready-stage p,.group-shuffle-stage p{color:#7c8793;margin:0;font-size:10px}.group-shuffle-stage{color:#fff;background:radial-gradient(circle,#22a78d1f,#0000 52%),#101a2d;min-height:420px;position:relative;overflow:hidden}.group-shuffle-stage>span:first-child{color:#63dbc1;letter-spacing:.22em;font-size:9px;font-weight:900}.group-shuffle-stage p{color:#a8b6c9}.group-shuffle-orbit{width:150px;height:150px;margin-top:18px;position:relative}.group-shuffle-orbit:before,.group-shuffle-orbit:after{content:"";border:1px solid #63dbc159;border-radius:50%;animation:2s linear infinite group-orbit-spin;position:absolute;inset:13px}.group-shuffle-orbit:after{animation-direction:reverse;inset:35px}.group-shuffle-orbit>b{background:var(--coral);border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;font-size:32px;display:flex;position:absolute;top:39px;left:39px;box-shadow:0 0 35px #ff6b5e8c}.group-shuffle-orbit>i{color:var(--navy);background:#fff;border-radius:50%;justify-content:center;align-items:center;width:26px;height:26px;font-size:8px;font-style:normal;font-weight:900;animation:.7s ease-in-out infinite alternate group-number-pulse;display:flex;position:absolute;top:0;left:62px}.group-shuffle-orbit>i:nth-child(2){top:20px;left:112px}.group-shuffle-orbit>i:nth-child(3){top:62px;left:124px}.group-shuffle-orbit>i:nth-child(4){top:108px;left:108px}.group-shuffle-orbit>i:nth-child(5){top:124px;left:62px}.group-shuffle-orbit>i:nth-child(6){top:108px;left:16px}.group-shuffle-orbit>i:nth-child(7){top:62px;left:0}.group-shuffle-orbit>i:nth-child(8){top:20px;left:16px}@keyframes group-orbit-spin{to{transform:rotate(360deg)}}@keyframes group-number-pulse{to{transform:scale(1.18)}}.group-shuffle-meter{background:#ffffff1a;border-radius:99px;width:min(280px,70vw);height:5px;margin-top:20px;display:block;overflow:hidden}.group-shuffle-meter i{background:linear-gradient(90deg, var(--mint), var(--yellow));border-radius:inherit;width:45%;height:100%;animation:1.2s ease-in-out infinite group-meter;display:block}@keyframes group-meter{0%{transform:translate(-110%)}to{transform:translate(330%)}}.group-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;padding:16px 18px;display:grid;overflow:auto}.group-grid article{background:#fff;border:1px solid #dde3e8;border-radius:13px;animation:.62s cubic-bezier(.16,1,.3,1) both group-card-reveal;overflow:hidden;box-shadow:0 4px 12px #17243f0d}@keyframes group-card-reveal{0%{opacity:0;transform:translateY(24px)scale(.92)}65%{transform:translateY(-3px)scale(1.02)}to{opacity:1;transform:translateY(0)scale(1)}}.group-reveal-all article{animation-delay:0s!important}.group-grid article>header{background:#eef7f4;align-items:center;gap:7px;padding:9px 11px;display:flex}.group-grid article>header b{background:var(--mint);color:#fff;border-radius:7px;justify-content:center;align-items:center;width:23px;height:23px;font-size:9px;display:flex}.group-grid article>header strong{font-size:11px}.group-grid article>header span{color:#6e817d;margin-left:auto;font-size:8px}.group-grid ol{margin:0;padding:6px 11px 10px;list-style:none}.group-grid li{border-bottom:1px solid #edf0f2;align-items:center;gap:8px;min-height:34px;display:flex}.group-grid li:last-child{border-bottom:0}.group-grid li>span{color:#8a929c;min-width:18px;font-size:9px}.group-grid li>strong{font-size:10px}.group-grid li>i{border-radius:99px;margin-left:auto;padding:3px 5px;font-size:7px;font-style:normal}.group-grid li>i.male{color:#2868a9;background:#e4f0ff}.group-grid li>i.female{color:#b34e78;background:#ffe8f1}.group-seat-result{flex:1;padding:16px 20px;overflow:auto}.group-seat-result-heading{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:13px;display:flex}.group-seat-result-heading>span{gap:3px;display:grid}.group-seat-result-heading strong{font-size:13px}.group-seat-result-heading small{color:#7c8793;font-size:8px}.group-seat-result-heading>div{flex-wrap:wrap;justify-content:flex-end;gap:4px;display:flex}.group-seat-result-heading i{background:var(--group-soft);border:1px solid var(--group)}@supports (color:color-mix(in lab, red, red)){.group-seat-result-heading i{border:1px solid color-mix(in srgb, var(--group) 30%, white)}}.group-seat-result-heading i{color:var(--group);border-radius:99px;padding:4px 7px;font-size:7px;font-style:normal;font-weight:850}.group-result-desk{background:var(--navy);color:#fff;text-align:center;border-radius:7px;width:max-content;margin:8px auto;padding:5px 24px;font-size:8px;font-weight:900;display:block}.group-seat-map{gap:8px;min-width:580px;display:grid}.group-seat-row{grid-template-columns:repeat(var(--sections), minmax(0, 1fr));gap:18px;display:grid}.group-seat-section{grid-template-columns:repeat(var(--section-seats), minmax(0, 1fr));gap:6px;display:grid}.group-seat-section article{background:var(--group-soft,#edf0f3);border:1px solid var(--group,#8893a0);animation:.62s cubic-bezier(.16,1,.3,1) both group-card-reveal}@supports (color:color-mix(in lab, red, red)){.group-seat-section article{border:1px solid color-mix(in srgb, var(--group,#8893a0) 38%, white)}}.group-seat-section article{border-radius:9px;gap:1px;min-height:57px;padding:6px 7px;display:grid;position:relative}.group-seat-section article b{color:var(--group,#78838f);font-size:7px}.group-seat-section article strong{color:#1d2b43;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.group-seat-section article small{color:#7f8995;font-size:7px}.group-seat-section article.empty{color:#9aa2aa;justify-content:center;align-items:center;font-size:8px;display:flex}.group-color-1{--group:#d9574e;--group-soft:#ffebe8}.group-color-2{--group:#337bb8;--group-soft:#e7f3ff}.group-color-3{--group:#16856f;--group-soft:#e3f6f1}.group-color-4{--group:#9a6a17;--group-soft:#fff3d8}.group-color-5{--group:#7459b4;--group-soft:#f0eaff}.group-color-6{--group:#bd4f83;--group-soft:#ffe9f3}.group-color-7{--group:#287f8e;--group-soft:#e2f5f8}.group-color-8{--group:#b15f2c;--group-soft:#fff0e5}.group-color-9{--group:#5369b5;--group-soft:#eaf0ff}.group-color-10{--group:#58822b;--group-soft:#eef7e5}.group-color-11{--group:#a44a50;--group-soft:#fce9ea}.group-color-12{--group:#5f6b78;--group-soft:#edf0f3}.group-dialog>footer{background:#fff;border-top:1px solid #e1e5e9;justify-content:space-between;align-items:center;padding:13px 18px;display:flex}.group-dialog>footer>span{color:#7e8894;font-size:9px}.group-dialog>footer .button{flex:none;min-width:130px}.group-start-button{color:#fff;box-shadow:0 8px 22px #e952473d;background:linear-gradient(135deg, var(--coral), #f04f70)!important}.configuration-conflict-notice{color:#6f4a18;background:#fff5e8;border:1px solid #efc98f;border-radius:12px;align-items:flex-start;gap:9px;margin-bottom:10px;padding:10px 12px;display:flex}.configuration-conflict-notice>span{color:#fff;background:#e99035;border-radius:50%;flex:none;justify-content:center;align-items:center;width:23px;height:23px;font-size:10px;font-weight:950;display:flex}.configuration-conflict-notice strong{margin-bottom:4px;font-size:10px;display:block}.configuration-conflict-notice ul{gap:2px;margin:0;padding:0;list-style:none;display:grid}.configuration-conflict-notice li{font-size:8px;line-height:1.45}.configuration-conflict-notice li:before{content:"•";margin-right:5px}.configuration-conflict-notice.is-info{color:#245f53;background:#eef8f5;border-color:#a8d9cc}.configuration-conflict-notice.is-info>span{background:var(--teal)}@media (max-width:700px){.history-rule-row{flex-direction:column;align-items:flex-start;gap:6px}.lookback-select{margin:0 0 6px 26px}.pair-builder{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.pair-builder>button{grid-column:1/-1}.group-mode-options,.group-setting-grid{grid-template-columns:1fr}.group-sizing-control{grid-column:auto}.group-rule-section>header{flex-direction:column;align-items:flex-start;gap:3px}.group-rule-section>header>small{text-align:left}.group-rule-section .pair-rule-list,.group-grid{grid-template-columns:1fr}.group-seat-result-heading{flex-direction:column}.group-seat-result-heading>div{justify-content:flex-start}.group-dialog>footer{flex-direction:column;align-items:stretch;gap:9px}.teacher-pair-grid,.teacher-student-rule-grid,.teacher-rule-options{grid-template-columns:1fr}.teacher-workspace-tabs button b{display:none}.teacher-history-option{flex-wrap:wrap}.teacher-seat-toolbar{grid-template-columns:1fr}.teacher-seat-main{min-height:42px}}.reveal-settings-button>span{flex-direction:column;gap:3px;display:flex}.reveal-settings-button b{font-size:11px}.reveal-settings-button small{color:#7b8693;font-size:9px}.reveal-settings-button>strong{color:var(--mint-dark);font-size:10px}.reveal-settings-button:disabled{cursor:default;opacity:.55}.draw-button{background:var(--coral);color:#fff;cursor:pointer;letter-spacing:-.03em;border:0;border-radius:13px;justify-content:center;align-items:center;gap:9px;width:100%;height:55px;font-size:17px;font-weight:900;transition:all .14s;display:flex;box-shadow:0 7px #d94e45,0 13px 22px #e9524738}.draw-button:hover{background:#ff786d;transform:translateY(-1px)}.draw-button:active{transform:translateY(4px);box-shadow:0 3px #d94e45}.draw-button:disabled{cursor:wait;opacity:.82}.draw-button span{color:var(--yellow);font-size:22px}.reset-button{color:#949ca7;margin:10px auto 0;display:block}.preview-area{flex-direction:column;min-width:0;padding:clamp(16px,2.5vw,34px);display:flex}.top-actions button:disabled{cursor:default;opacity:.42}.classroom{background:linear-gradient(90deg, #17243f05 1px, transparent 1px), linear-gradient(#17243f05 1px, transparent 1px), var(--paper);box-shadow:var(--shadow);background-size:28px 28px;border:1px solid #dae1e8;border-radius:16px;flex-direction:column;flex:1;justify-content:center;min-height:610px;padding:clamp(24px,4vw,58px);display:flex;position:relative;overflow:hidden}.print-heading{justify-content:space-between;align-items:flex-start;display:none}.print-roster{display:none}.seat-map{z-index:2;flex-direction:column;gap:clamp(10px,1.5vw,18px);width:100%;margin:auto 0;display:flex;position:relative}.seat-row{grid-template-columns:repeat(var(--sections), minmax(0, 1fr));gap:clamp(20px,4vw,72px);display:grid}.seat-section{grid-template-columns:repeat(var(--section-seats), minmax(0, 1fr));gap:clamp(7px,.9vw,13px);min-width:0;display:grid}.seat-shell{min-width:0;position:relative}.seat{appearance:none;cursor:grab;background:#fff;border:1px solid #dce2e8;border-radius:11px;justify-content:center;align-items:stretch;width:100%;min-width:0;height:clamp(64px,7.1vw,92px);padding:0;transition:transform .16s,border-color .16s,box-shadow .16s;display:flex;position:relative;box-shadow:0 4px #d8dee5}.seat:before{background:var(--seat-accent,var(--mint));content:"";border-radius:11px 11px 0 0;height:5px;position:absolute;top:-1px;left:-1px;right:-1px}.seat:hover{border-color:#9bb8b0;transform:translateY(-2px)}.seat:active{cursor:grabbing}.seat-shell:nth-child(2n) .seat{--seat-accent:#4a7db7}.seat-fix-button{color:#83909d;cursor:pointer;opacity:.72;z-index:8;background:#ffffffeb;border:1px solid #d4dce4;border-radius:6px;justify-content:center;align-items:center;width:20px;height:20px;padding:0;font-size:8px;font-weight:950;line-height:1;display:flex;position:absolute;top:7px;left:5px}.seat-fix-button:hover{color:#b7651e;opacity:1;border-color:#e3a15f}.seat-fix-button.fixed{color:#fff;opacity:1;background:#e98345;border-color:#cf7137}.seat-fix-button:disabled{cursor:default;opacity:.22}.seat-gender-button{color:#83909d;cursor:pointer;opacity:.72;z-index:8;background:#ffffffeb;border:1px solid #d4dce4;border-radius:6px;justify-content:center;align-items:center;height:20px;padding:0 5px;font-size:7px;font-weight:950;line-height:1;display:flex;position:absolute;top:7px;right:5px}.seat-gender-button:hover{color:#53687d;opacity:1;border-color:#98a9ba}.seat-gender-button.male{color:#fff;opacity:1;background:#3977b4;border-color:#2c659e}.seat-gender-button.female{color:#fff;opacity:1;background:#d65f8c;border-color:#ba4772}.seat-gender-button:disabled{cursor:default;opacity:.22}.seat-content{flex-direction:column;justify-content:center;align-items:center;width:100%;min-width:0;padding:10px 5px 6px;display:flex}.seat-number{color:#7c8794;font-size:clamp(9px,.9vw,12px);font-weight:750}.seat-name{letter-spacing:-.045em;text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:clamp(11px,1.45vw,19px);overflow:hidden}.seat-name.number-only{letter-spacing:-.04em;font-size:clamp(17px,2.4vw,31px)}.seat.empty{box-shadow:none;cursor:default;background:#eef2f59e;border-style:dashed}.seat.empty:before{display:none}.seat.selected{border-color:var(--coral);transform:translateY(-3px);box-shadow:0 0 0 4px #ff6b5e2e,0 4px #ed6b60}.seat.fixed{cursor:not-allowed;border-color:#e99a43;box-shadow:0 4px #d9822b,0 0 0 2px #ffca584d}.seat.fixed:before{background:#e99a43}.desk{z-index:2;flex-direction:column;align-items:center;gap:3px;width:min(270px,36%);margin:clamp(22px,3vw,42px) auto 0;display:flex;position:relative}.desk-side-top .desk{margin:0 auto clamp(22px,3vw,42px)}.desk>span{background:var(--navy);border:5px solid #fff;border-radius:10px;width:100%;height:18px;box-shadow:0 0 0 1px #cfd7e1,0 6px #aeb8c7}.desk strong{letter-spacing:.18em;margin-top:4px;font-size:13px}.desk small{color:#8a94a2;font-size:9px}.desk:after{color:var(--coral-dark);content:"▲";font-size:9px;position:absolute;top:-14px}.desk-side-top .desk:after{top:auto;bottom:-15px;transform:rotate(180deg)}.is-shuffling .seat{cursor:default}.seat.unrevealed{color:#fff;background:linear-gradient(135deg,#ffffff1a,#0000),#273650;border-color:#334763;transform:scale(.96);box-shadow:0 4px #18243a}.seat.unrevealed:before{background:#526986}.hidden-seat-mark{color:#ffffff8c;font-size:clamp(19px,2.3vw,30px);font-weight:900}.seat.revealed{animation:.46s cubic-bezier(.18,.85,.25,1) seatReveal}.seat.revealing-current{border-color:var(--yellow);z-index:2;animation:.68s ease-in-out infinite alternate suspenseSeat;transform:translateY(-6px)scale(1.045);box-shadow:0 0 0 5px #ffca5833,0 8px 28px #ff6b5e47,0 4px #d7ad48}.theme-heartbeat .seat.revealing-current{border-color:#ff6379;animation-name:heartbeatSeat;box-shadow:0 0 0 7px #ff3d5826,0 0 46px #ff274685,0 5px #a9233a}.theme-spotlight.is-last-stretch .seat:not(.revealing-current){filter:brightness(.38)saturate(.3);opacity:.5}.theme-spotlight .seat.revealing-current{border-color:#fff0af;box-shadow:0 0 0 9px #ffefaa26,0 0 72px 18px #ffe17b66,0 6px #bd9234}.theme-broadcast .seat.revealing-current{border-color:#43e9ff;animation-name:broadcastSeat;box-shadow:0 0 0 6px #2ce4ff24,0 0 44px #21d6ff7a,4px 0 #ef4265,-4px 0 #31ddf4}.phase-revealing.active-seat-style-spotlight .seat:not(.revealing-current){filter:brightness(.28)saturate(.25);opacity:.44;transform:scale(.92)}.seat.revealing-current.reveal-style-spotlight{z-index:4;border-color:#fff0af;animation:.98s ease-in-out infinite alternate spotlightSeat;box-shadow:0 0 0 10px #ffefb021,0 0 86px 24px #ffde7070,0 7px #bb8f31}.seat.revealing-current.reveal-style-shadow.unrevealed{background:#05070c;border-color:#6c7482;animation:1.15s ease-in-out infinite alternate shadowSuspense;box-shadow:0 0 0 999px #05080f21,0 0 46px #000000b8}.seat.revealing-current.reveal-style-shadow.revealed{animation:.78s cubic-bezier(.12,.9,.22,1) both shadowReveal}.seat.revealing-current.reveal-style-zoom{z-index:5;animation:.82s ease-in-out infinite alternate zoomSuspense}.seat.revealing-current.reveal-style-zoom.revealed{animation:.74s cubic-bezier(.16,.85,.2,1) both zoomReveal}.seat.revealing-current.reveal-style-flip{backface-visibility:hidden;transform-style:preserve-3d;z-index:4;animation:1.1s ease-in-out infinite alternate flipSuspense}.seat.revealing-current.reveal-style-flip.revealed{animation:.82s cubic-bezier(.2,.82,.2,1) both flipReveal}.seat-shell.unrevealed{transform:scale(.96)}.seat-shell.revealed{animation:.46s cubic-bezier(.18,.85,.25,1) seatReveal}.seat-shell.revealing-current{z-index:4;animation:.68s ease-in-out infinite alternate suspenseSeat;transform:translateY(-6px)scale(1.045)}.theme-heartbeat .seat-shell.revealing-current{animation-name:heartbeatSeat}.theme-broadcast .seat-shell.revealing-current{animation-name:broadcastSeat}.seat-shell.revealing-current.reveal-style-spotlight{animation:.98s ease-in-out infinite alternate spotlightSeat}.seat-shell.revealing-current.reveal-style-shadow.unrevealed{animation:1.15s ease-in-out infinite alternate shadowSuspense}.seat-shell.revealing-current.reveal-style-shadow.revealed{animation:.78s cubic-bezier(.12,.9,.22,1) both shadowReveal}.seat-shell.revealing-current.reveal-style-zoom{animation:.82s ease-in-out infinite alternate zoomSuspense}.seat-shell.revealing-current.reveal-style-zoom.revealed{animation:.74s cubic-bezier(.16,.85,.2,1) both zoomReveal}.seat-shell.revealing-current.reveal-style-flip{backface-visibility:hidden;transform-style:preserve-3d;animation:1.1s ease-in-out infinite alternate flipSuspense}.seat-shell.revealing-current.reveal-style-flip.revealed{animation:.82s cubic-bezier(.2,.82,.2,1) both flipReveal}.seat-shell.unrevealed>.seat,.seat-shell.revealed>.seat,.seat-shell.revealing-current>.seat,.is-shuffling .seat:hover{animation:none;transform:none}.theme-heartbeat .reveal-burst{background:radial-gradient(circle,#fff0f2f5 0 4%,#ff304fa3 15%,#81081f38 38%,#0000 69%)}.theme-spotlight .reveal-burst{background:radial-gradient(circle,#ffffeffa 0 7%,#ffe07e8a 20%,#0000 64%)}.theme-broadcast .reveal-burst{background:repeating-linear-gradient(90deg,#0000 0 34px,#30e5ff38 35px 37px),radial-gradient(circle,#fffffff0,#2adeff61 18%,#0000 64%)}@keyframes suspenseSeat{0%{filter:brightness(.88);transform:translateY(-3px)scale(1.015)}to{filter:brightness(1.28);transform:translateY(-7px)scale(1.065)}}@keyframes spotlightSeat{0%{filter:brightness(.82);transform:translateY(-4px)scale(1.03)}to{filter:brightness(1.35);transform:translateY(-10px)scale(1.09)}}@keyframes shadowSuspense{0%{filter:brightness(.28);transform:scale(.94)}to{filter:brightness(.62);transform:scale(1.035)}}@keyframes shadowReveal{0%{filter:brightness(0);opacity:0;transform:scale(.76)}55%{filter:brightness(1.7);opacity:1;transform:scale(1.12)}to{filter:brightness();transform:scale(1.045)}}@keyframes zoomSuspense{0%{filter:brightness(.72);transform:scale(.88)}to{filter:brightness(1.22);transform:translateY(-8px)scale(1.14)}}@keyframes zoomReveal{0%{filter:blur(8px)brightness(2);opacity:0;transform:scale(1.55)}68%{filter:blur()brightness(1.35);opacity:1;transform:scale(.96)}to{filter:brightness();transform:scale(1.045)}}@keyframes flipSuspense{0%{filter:brightness(.62);transform:perspective(600px)rotateY(72deg)}to{filter:brightness(1.08);transform:perspective(600px)rotateY(108deg)}}@keyframes flipReveal{0%{opacity:0;transform:perspective(600px)rotateY(180deg)scale(.9)}72%{opacity:1;transform:perspective(600px)rotateY(-10deg)scale(1.08)}to{transform:perspective(600px)rotateY(0)scale(1.045)}}@keyframes heartbeatSeat{0%,42%,to{filter:brightness(.9);transform:translateY(-3px)scale(1.01)}12%{filter:brightness(1.3);transform:translateY(-7px)scale(1.09)}25%{transform:translateY(-5px)scale(1.035)}33%{transform:translateY(-7px)scale(1.07)}}@keyframes broadcastSeat{0%,84%,to{filter:brightness(.9);transform:translateY(-4px)scale(1.025)}87%{filter:brightness(1.35);transform:translate(-4px,-5px)scale(1.065)}91%{transform:translate(4px,-5px)scale(1.055)}}@keyframes seatReveal{0%{filter:brightness(1.45);opacity:0;transform:rotateX(70deg)scale(.88)}to{filter:brightness();opacity:1;transform:rotateX(0)scale(1)}}@keyframes seatPulse{to{border-color:var(--coral);transform:translateY(-5px)rotate(.8deg)scale(1.015);box-shadow:0 6px #ff6b5e52,0 0 18px #ff6b5e33}}.draw-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;z-index:10;background:radial-gradient(circle,#3f5886ad,#0000 48%),#0c1527ed;flex-direction:column;justify-content:center;align-items:center;gap:17px;display:flex;position:absolute;inset:0}.draw-overlay:before{content:"";background:repeating-conic-gradient(#ffca5824 0deg 7deg,#0000 7deg 18deg);border-radius:50%;width:min(92vw,860px);height:min(92vw,860px);animation:3.8s linear infinite arenaSpin;position:absolute}.draw-overlay:after{content:"";background:linear-gradient(#0000,#ffffff14,#0000);height:25%;animation:1.1s linear infinite scanline;position:absolute;top:-25%;left:0;right:0}.draw-overlay>*{z-index:1;position:relative}.draw-overlay strong{letter-spacing:-.04em;text-shadow:0 3px 18px #00000061;font-size:clamp(17px,2.2vw,28px)}.reveal-overlay{background:radial-gradient(circle at 50% 45%,#5674a673,#0000 38%),#0d1729f0}.reveal-atmosphere{pointer-events:none;z-index:1;background:radial-gradient(circle,#0000 34%,#0f192c2e 100%),linear-gradient(110deg,#0000 25%,#ffca5814 46%,#0000 64%);position:absolute;inset:0;overflow:hidden}.reveal-atmosphere:before{content:"";background:linear-gradient(90deg,#0000,#ffffff29,#0000);width:28%;animation:3.6s ease-in-out infinite atmosphereSweep;position:absolute;inset:0 auto 0 -32%;transform:skew(-18deg)}.reveal-atmosphere i{background:var(--yellow);height:3px;left:var(--x);opacity:.18;top:var(--y);border-radius:50%;width:3px;animation:2.2s ease-in-out infinite atmosphereParticle;position:absolute;box-shadow:0 0 12px #ffca58a6}.reveal-atmosphere i:nth-child(2n){animation-delay:-.7s}.reveal-atmosphere i:nth-child(3n){animation-delay:-1.4s}.impact-lines{opacity:0;position:absolute;inset:0}.impact-lines b{transform-origin:0;background:linear-gradient(90deg,#0000,#ffe184cc);width:44%;height:2px;position:absolute;top:50%;left:50%}.impact-lines b:first-child{transform:rotate(0)}.impact-lines b:nth-child(2){transform:rotate(30deg)}.impact-lines b:nth-child(3){transform:rotate(60deg)}.impact-lines b:nth-child(4){transform:rotate(90deg)}.impact-lines b:nth-child(5){transform:rotate(120deg)}.impact-lines b:nth-child(6){transform:rotate(150deg)}.impact-lines b:nth-child(7){transform:rotate(180deg)}.impact-lines b:nth-child(8){transform:rotate(210deg)}.impact-lines b:nth-child(9){transform:rotate(240deg)}.impact-lines b:nth-child(10){transform:rotate(270deg)}.impact-lines b:nth-child(11){transform:rotate(300deg)}.impact-lines b:nth-child(12){transform:rotate(330deg)}.is-revealed .impact-lines{animation:.78s ease-out both impactLines}.is-last-stretch .seat.unrevealed:not(.revealing-current){filter:brightness(.58)saturate(.65);opacity:.68;transform:scale(.92)}.is-last-stretch .seat.revealing-current{animation-duration:.48s;box-shadow:0 0 0 7px #ffca583d,0 0 48px #ff6b5e85,0 7px #d7ad48}.theme-heartbeat .reveal-atmosphere{background:radial-gradient(circle,#b3193133,#0000 52%),linear-gradient(#22060f33,#22060f8a)}.theme-heartbeat .reveal-atmosphere i{background:#ff4c64;box-shadow:0 0 14px #ff304ccc}.theme-spotlight .reveal-atmosphere{background:radial-gradient(at 50% 40%,#0000 14%,#040810c4 72%),#03070e6b}.theme-broadcast .reveal-atmosphere{background:repeating-linear-gradient(0deg,#20e5ff09 0 1px,#0000 1px 5px),radial-gradient(circle,#0000 30%,#02121d8c)}.theme-broadcast .reveal-atmosphere i{background:#31e7ff;border-radius:0;box-shadow:0 0 12px #31e7ffc7}@keyframes impactLines{0%{opacity:.9;transform:scale(.05)}75%{opacity:.36}to{opacity:0;transform:scale(1.7)}}@keyframes atmosphereSweep{50%,to{left:112%}}@keyframes atmosphereParticle{50%{opacity:.7;transform:translateY(-12px)scale(1.8)}}.shuffle-cards{width:150px;height:112px;position:relative}.shuffle-cards i{transform-origin:50% 120%;background:linear-gradient(145deg,#fff,#dce5ef);border:3px solid #ffffffbf;border-radius:10px;width:58px;height:86px;animation:.78s cubic-bezier(.55,0,.2,1) infinite shuffleCard;position:absolute;top:12px;left:47px;box-shadow:0 15px 30px #00000047}.shuffle-cards i:nth-child(2){animation-delay:-120ms}.shuffle-cards i:nth-child(3){animation-delay:-240ms}.shuffle-cards i:nth-child(4){animation-delay:-360ms}.shuffle-cards i:nth-child(5){animation-delay:-480ms}@keyframes shuffleCard{0%{transform:translate(-48px)rotate(-18deg)scale(.92)}48%{transform:translate(48px)rotate(18deg)scale(1.04)}to{transform:translate(-48px)rotate(-18deg)scale(.92)}}.reveal-status{color:#fff;z-index:15;background:#131f34ed;border:1px solid #ffffff24;border-radius:999px;align-items:center;gap:14px;padding:9px 15px;display:flex;position:absolute;top:14px;left:50%;transform:translate(-50%)}.reveal-status span{font-size:11px;font-weight:800}.reveal-controls{color:#fff;z-index:16;background:#131f34f5;border:1px solid #ffffff24;border-radius:13px;align-items:center;gap:6px;max-width:calc(100% - 24px);padding:7px;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 16px 42px #00000040}.reveal-controls button,.reveal-controls label{color:#fff;white-space:nowrap;background:#ffffff14;border:0;border-radius:8px;align-items:center;gap:6px;min-height:34px;padding:7px 10px;font-size:10px;font-weight:800;display:flex}.reveal-controls button{cursor:pointer}.reveal-controls button:hover{background:#ffffff29}.reveal-controls button.skip{background:var(--coral)}.reveal-controls select{color:#fff;font:inherit;background:#263751;border:1px solid #52637c;border-radius:6px;padding:4px 6px}.reveal-controls kbd{color:#cbd4e1;background:#ffffff1f;border:1px solid #ffffff29;border-radius:4px;padding:2px 4px;font-size:8px}.completion-banner{background:var(--navy);color:#fff;z-index:8;border-radius:999px;align-items:center;gap:10px;padding:7px 8px 7px 14px;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%);box-shadow:0 12px 36px #111e3433}.completion-banner span{font-size:10px;font-weight:850}.completion-banner button{color:var(--navy);cursor:pointer;background:#fff;border:0;border-radius:999px;padding:7px 10px;font-size:9px;font-weight:850}.dramatic-kicker{color:var(--yellow);letter-spacing:.14em;font-size:clamp(10px,1.1vw,13px);font-weight:900}@keyframes arenaSpin{to{transform:rotate(360deg)}}@keyframes scanline{to{transform:translateY(500%)}}.countdown-ring{background:var(--coral);border:5px solid #ffffffe6;border-radius:50%;justify-content:center;align-items:center;width:clamp(130px,17vw,190px);height:clamp(130px,17vw,190px);font-size:clamp(56px,8vw,100px);font-weight:950;animation:.52s cubic-bezier(.2,.8,.2,1) countdownPop;display:flex;position:relative;box-shadow:0 0 0 17px #ff6b5e29,0 0 55px #ffca584d}.countdown-ring:before,.countdown-ring:after{content:"";border:2px solid #ffffff52;border-radius:50%;position:absolute;inset:-27px}.countdown-ring:after{border-color:var(--yellow) transparent transparent;animation:1s linear infinite countdownOrbit;inset:-42px}@keyframes countdownPop{0%{opacity:0;transform:scale(.45)rotate(-8deg)}to{opacity:1;transform:scale(1)rotate(0)}}.stage-pips{gap:8px;display:flex}.stage-pips i{background:#fff3;border-radius:99px;width:32px;height:5px;transition:all .18s}.stage-pips i.active{background:var(--coral);box-shadow:0 0 14px #ff6b5ecc}@keyframes countdownOrbit{to{transform:rotate(360deg)}}.roulette-core{background:#ffffff12;border:3px solid #ffffffb3;border-radius:50%;justify-content:center;align-items:center;width:clamp(130px,17vw,190px);height:clamp(130px,17vw,190px);display:flex;position:relative;box-shadow:0 0 0 18px #ff6b5e1f,0 0 70px #ffca5857}.roulette-core>i{border:7px solid #0000;border-left-color:var(--coral);border-right-color:var(--yellow);border-radius:50%;animation:.56s linear infinite rouletteSpin;position:absolute;inset:9px}.roulette-core>b{color:#fff;font-size:clamp(60px,8vw,98px);animation:.42s ease-in-out infinite alternate questionBeat}.shuffle-meter{background:#ffffff21;border-radius:99px;width:min(280px,52vw);height:6px;overflow:hidden}.shuffle-meter i{background:linear-gradient(90deg, var(--coral), var(--yellow), var(--mint));border-radius:inherit;width:45%;height:100%;animation:1.05s ease-in-out infinite meterRush;display:block}.visual-roulette{width:clamp(165px,21vw,235px);height:clamp(165px,21vw,235px)}.visual-roulette .wheel-ring.outer{border-width:8px;animation-duration:.43s;inset:8px}.visual-roulette .wheel-ring.inner{border-bottom-color:var(--mint);border-width:3px;border-top-color:#ffffffbf;border-left-color:#0000;border-right-color:#0000;animation-duration:.76s;animation-direction:reverse;inset:31px}.wheel-numbers{animation:1.2s linear infinite reverse rouletteSpin;position:absolute;inset:0}.wheel-numbers i{color:#ffffffd1;font-size:clamp(10px,1.3vw,15px);font-style:normal;font-weight:900;position:absolute;top:47%;left:47%}.wheel-numbers i:first-child{transform:rotate(0)translateY(-92px)}.wheel-numbers i:nth-child(2){transform:rotate(45deg)translateY(-92px)}.wheel-numbers i:nth-child(3){transform:rotate(90deg)translateY(-92px)}.wheel-numbers i:nth-child(4){transform:rotate(135deg)translateY(-92px)}.wheel-numbers i:nth-child(5){transform:rotate(180deg)translateY(-92px)}.wheel-numbers i:nth-child(6){transform:rotate(225deg)translateY(-92px)}.wheel-numbers i:nth-child(7){transform:rotate(270deg)translateY(-92px)}.wheel-numbers i:nth-child(8){transform:rotate(315deg)translateY(-92px)}.heartbeat-core,.spotlight-stage{justify-content:center;align-items:center;width:clamp(165px,21vw,235px);height:clamp(165px,21vw,235px);display:flex;position:relative}.heartbeat-core{border:2px solid #ff70808c;border-radius:50%;box-shadow:0 0 0 20px #ff2d4614,0 0 85px #ff203e6b}.heartbeat-core>b{color:#ff4962;filter:drop-shadow(0 0 22px #ff3750b8);font-size:clamp(70px,10vw,112px);line-height:1;animation:.92s ease-in-out infinite heartThump}.heart-orbit{border:2px solid #ff687847;border-radius:50%;animation:1.85s linear infinite heartbeatOrbit;position:absolute;inset:15px}.heart-orbit.two{border-color:#ff415c #0000;animation-duration:1.15s;animation-direction:reverse;inset:32px}.ecg-line{width:78%;height:28px;display:flex;position:absolute;bottom:17px;left:11%}.ecg-line i{transform-origin:0;background:#ff8392;width:15%;height:2px;margin-left:-1px;animation:.92s ease-in-out infinite ecgGlow;display:block;box-shadow:0 0 8px #ff4962cc}.ecg-line i:first-child,.ecg-line i:nth-child(7){transform:rotate(0)}.ecg-line i:nth-child(2){transform:rotate(-24deg)}.ecg-line i:nth-child(3){transform:rotate(62deg)}.ecg-line i:nth-child(4){transform:rotate(-76deg)}.ecg-line i:nth-child(5){transform:rotate(42deg)}.ecg-line i:nth-child(6){transform:rotate(-12deg)}.spotlight-stage{background:radial-gradient(circle,#fff5c933,#0000 60%);border:1px solid #ffedae66;border-radius:50%;box-shadow:0 0 95px #ffe18247}.spotlight-stage>b{color:#fff1af;filter:drop-shadow(0 0 28px #ffe78ff2);z-index:2;font-size:clamp(44px,6vw,70px);animation:1.35s ease-in-out infinite alternate spotlightTarget}.candidate-dots{grid-template-columns:repeat(4,1fr);gap:13px;display:grid;position:absolute;inset:22px}.candidate-dots i{background:#ffeeb3b8;border-radius:50%;justify-self:center;width:9px;height:9px;animation:2.4s ease-in-out infinite candidateEliminate;box-shadow:0 0 12px #ffe593ad}.candidate-dots i:nth-child(2n){animation-delay:.25s}.candidate-dots i:nth-child(3n){animation-delay:.5s}.candidate-dots i:nth-child(4n){animation-delay:.75s}.candidate-dots i:nth-child(5n){animation-delay:1s}.aperture-ring{border:4px double #ffeeb28c;border-radius:50%;animation:2.2s ease-in-out infinite apertureClose;position:absolute;inset:48px}.broadcast-stage{background:repeating-linear-gradient(0deg,#2ae5ff09 0 2px,#0000 2px 7px),#031e2bb8;border:2px solid #34e4ffa3;flex-direction:column;justify-content:center;align-items:center;width:clamp(210px,29vw,330px);height:clamp(165px,21vw,235px);display:flex;position:relative;box-shadow:0 0 0 10px #26deff0f,inset 0 0 50px #16d2ff1f,0 0 72px #12c9ff40}.broadcast-stage>b{color:#fff;letter-spacing:.12em;text-shadow:3px 0 #ff3f64,-3px 0 #27e8ff,0 0 24px #ffffff59;font-size:clamp(31px,4.5vw,52px);animation:1.15s step-end infinite broadcastGlitch}.broadcast-live{color:#fff;letter-spacing:.12em;background:#f23656;border-radius:3px;padding:5px 7px;font-size:10px;font-weight:950;position:absolute;top:13px;left:14px}.broadcast-corners{position:absolute;inset:9px}.broadcast-corners i{border-style:solid;border-color:#45eaff;width:19px;height:19px;position:absolute}.broadcast-corners i:first-child{border-width:2px 0 0 2px;top:0;left:0}.broadcast-corners i:nth-child(2){border-width:2px 2px 0 0;top:0;right:0}.broadcast-corners i:nth-child(3){border-width:0 0 2px 2px;bottom:0;left:0}.broadcast-corners i:nth-child(4){border-width:0 2px 2px 0;bottom:0;right:0}.broadcast-wave{align-items:center;gap:4px;height:20px;display:flex;position:absolute;bottom:18px}.broadcast-wave i{background:#3de8ff;width:3px;height:5px;animation:.58s ease-in-out infinite alternate broadcastWave;box-shadow:0 0 7px #3de8ffc7}.broadcast-wave i:nth-child(2n){animation-delay:-180ms}.broadcast-wave i:nth-child(3n){animation-delay:-360ms}.broadcast-wave i:nth-child(4n){animation-delay:-460ms}@keyframes rouletteSpin{to{transform:rotate(360deg)}}@keyframes heartThump{0%,42%,to{transform:scale(.88)}12%{transform:scale(1.12)}24%{transform:scale(.94)}32%{transform:scale(1.05)}}@keyframes heartbeatOrbit{to{transform:rotate(360deg)scale(1.08)}}@keyframes ecgGlow{0%,to{opacity:.35}24%{opacity:1}}@keyframes candidateEliminate{0%,18%{opacity:1;transform:scale(1)}45%,78%{opacity:.08;transform:scale(.35)}to{opacity:1;transform:scale(1)}}@keyframes spotlightTarget{to{transform:scale(1.35)}}@keyframes apertureClose{0%,to{opacity:.4;transform:rotate(0)scale(1)}55%{opacity:1;transform:rotate(135deg)scale(.68)}}@keyframes broadcastGlitch{0%,84%,to{transform:translate(0)}86%{transform:translate(-4px,1px)skew(-4deg)}89%{transform:translate(5px,-1px)skew(3deg)}92%{transform:translate(-2px)}}@keyframes broadcastWave{to{height:20px}}@keyframes questionBeat{to{filter:drop-shadow(0 0 20px #ffca58b8);transform:scale(1.1)}}@keyframes meterRush{0%{transform:translate(-105%)}to{transform:translate(235%)}}.reveal-burst{pointer-events:none;z-index:11;background:radial-gradient(circle,#fffffffa 0 4%,#ffca5899 14%,#ff6b5e2e 35%,#0000 68%);animation:.9s ease-out both revealBurst;position:absolute;inset:-30%}.reveal-burst:not(.finale){opacity:.55}.reveal-burst.finale{filter:saturate(1.35);animation-duration:1.15s}.is-revealed{animation:.62s cubic-bezier(.36,.07,.19,.97) revealShake}@keyframes revealBurst{0%{opacity:1;transform:scale(.1)}to{opacity:0;transform:scale(1.35)}}@keyframes revealShake{0%,to{transform:translate(0)}18%{transform:translate(-7px)}34%{transform:translate(6px)}52%{transform:translate(-4px)}70%{transform:translate(3px)}}.confetti{pointer-events:none;z-index:12;position:absolute;inset:0;overflow:hidden}.confetti.intermission{opacity:.55}.confetti.finale{filter:saturate(1.25)}.confetti i{animation:confettiFall 2.15s cubic-bezier(.2, .7, .3, 1) var(--delay) both;background:hsl(calc(var(--i) * 47deg) 82% 62%);height:12px;left:var(--x);transform:rotate(calc(var(--i) * 19deg));border-radius:2px;width:7px;position:absolute;top:-20px}.confetti i:nth-child(3n){border-radius:50%;width:10px;height:10px}.confetti i:nth-child(4n){width:5px;height:17px}@keyframes confettiFall{0%{opacity:0;transform:translateY(-20px)rotate(0)}12%{opacity:1}to{opacity:0;transform:translateY(760px) translateX(calc((var(--i) - 24) * 2px)) rotate(760deg)}}.status-bar{color:#667281;align-items:center;gap:8px;min-height:42px;padding:10px 4px 0;font-size:11px;display:flex}.status-bar p{flex:1;margin:0}.status-bar button{color:#4479a9;cursor:pointer;background:0 0;border:0;font-size:10px;font-weight:750}.unseated{color:#a84239;background:#fff0ed;border-radius:9px;gap:3px;margin-top:16px;padding:10px 12px;font-size:10px;display:grid}.visually-hidden{white-space:nowrap;clip:rect(0 0 0 0);width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.heading-actions{align-items:center;gap:7px;display:flex}.empty-seat-picker{background:#f5f7f8;border:1px solid #dce2e8;border-radius:12px;margin-top:17px;padding:12px}.empty-seat-picker-heading,.empty-seat-picker-footer{justify-content:space-between;align-items:center;display:flex}.empty-seat-picker-heading>div{gap:2px;display:grid}.empty-seat-picker-heading strong{font-size:14px}.empty-seat-picker-heading span,.empty-seat-picker-footer span{color:#84909e;font-size:10px}.empty-seat-picker-heading b{color:#a84c43;background:#fff0ed;border:1px solid #f1c2bc;border-radius:99px;padding:6px 9px;font-size:11px}.empty-picker-map{flex-direction:column;gap:5px;margin:9px 0;display:flex}.empty-picker-row{grid-template-columns:repeat(var(--sections,3), minmax(0, 1fr));gap:8px;display:grid}.empty-picker-section{grid-template-columns:repeat(var(--section-seats), minmax(0, 1fr));gap:3px;display:grid}.empty-picker-section button{color:#667281;cursor:pointer;background:#fff;border:1px solid #cfd7df;border-radius:7px;flex-direction:column;justify-content:center;align-items:center;min-width:0;height:40px;padding:0;font-size:12px;font-weight:850;display:flex}.empty-picker-section button:hover{border-color:var(--coral);color:var(--coral-dark)}.empty-picker-section button.blocked{border-color:var(--coral);color:#b9433a;background:#fff0ed;box-shadow:inset 0 0 0 1px #ff6b5e26}.empty-picker-section button:disabled{cursor:default;opacity:.55}.empty-picker-desk{background:var(--navy);color:#fff;text-align:center;border-radius:4px;width:fit-content;margin:7px auto;padding:3px 16px;font-size:8px;font-weight:850;display:block}.empty-seat-picker-footer{align-items:flex-start;gap:8px}.empty-seat-picker-footer span{flex:1;line-height:1.45}.empty-picker-actions{flex:none;gap:5px;display:flex}.empty-picker-actions button{color:#a64a43;cursor:pointer;background:#fff;border:1px solid #d5a29e;border-radius:6px;flex:none;min-height:30px;padding:0 7px;font-size:9px;font-weight:850}.round-badge{color:#fff;letter-spacing:.08em;background:#ffffff1f;border:1px solid #ffffff40;border-radius:99px;padding:7px 12px;font-size:10px;font-weight:850;top:27px;left:50%;transform:translate(-50%);position:absolute!important}.effect-heartbeat{background:radial-gradient(circle,#9119288c,#0000 48%),#180810f2}.effect-roulette{background:radial-gradient(circle at 50% 45%,#df93264d,#0000 42%),linear-gradient(135deg,#101c35fa,#261833f5)}.effect-roulette:before{background:repeating-conic-gradient(from 0deg, #ffd05f24 0 5deg, transparent 5deg 15deg);animation-duration:2.4s}.effect-roulette .countdown-ring{background:linear-gradient(145deg,#ff735f,#d94351);box-shadow:0 0 0 17px #ff6b5e2b,0 0 72px #ffc9547a}.effect-heartbeat:before{background:repeating-radial-gradient(circle,#0000 0 42px,#ff4b5b29 43px 45px);animation:1.15s ease-in-out infinite heartbeatArena}.effect-heartbeat .dramatic-kicker{color:#ff8994}.effect-heartbeat .roulette-core{background:#9d172b42;border-color:#ff8b96;box-shadow:0 0 0 18px #dc233d21,0 0 80px #ff3a5470}.effect-heartbeat .roulette-core i{border-left-color:#ff3b55;border-right-color:#ff9ca5;animation:.76s ease-in-out infinite heartbeatRing}.effect-heartbeat .roulette-core b{color:#ff5268;text-shadow:0 0 28px #ff324ea6}.effect-spotlight{background:radial-gradient(at 50% 42%,#ffefb62e,#0000 32%),#04080ff7}.effect-spotlight:before{background:conic-gradient(from 235deg at 50% 0%, transparent 0 40deg, #fff0ba3d 58deg, transparent 76deg 360deg);transform-origin:50% 0;border-radius:0;width:110%;height:130%;animation:2.8s ease-in-out infinite alternate spotlightSweep}.effect-spotlight .dramatic-kicker{color:#ffe6a1}.effect-spotlight .roulette-core{background:radial-gradient(circle,#fff9de 0 12%,#ffdc75 13% 20%,#0000 55%);border-color:#ffeeb6cc;box-shadow:0 0 90px #ffe2847a}.effect-spotlight .roulette-core i{border-left-color:#fff0b8;border-right-color:#0000;animation-duration:1.3s}.effect-spotlight .roulette-core b{color:#fff5c8;font-size:clamp(36px,5vw,64px)}.effect-broadcast{background:repeating-linear-gradient(0deg,#2ce4ff0b 0 1px,#0000 1px 5px),radial-gradient(circle,#0d709152,#0000 52%),#02111df7}.effect-broadcast:before{background-color:#0000;background-image:linear-gradient(#2ce5ff1c 1px,#0000 1px),linear-gradient(90deg,#2ce5ff1c 1px,#0000 1px);background-position:0 0,0 0;background-repeat:repeat,repeat;background-size:42px 42px;background-attachment:scroll,scroll;background-origin:padding-box,padding-box;background-clip:border-box,border-box;border-radius:0;width:150%;height:150%;animation:2.4s linear infinite broadcastGrid;transform:perspective(400px)rotateX(62deg)}.effect-broadcast .dramatic-kicker{color:#42eaff}.effect-broadcast .countdown-ring{color:#fff;text-shadow:3px 0 #f33c62,-3px 0 #29dff7;background:#052f44;border-color:#46edff;border-radius:12px;box-shadow:0 0 0 10px #31e5ff17,0 0 64px #21dcff70}.effect-heartbeat .countdown-ring{background:#a81532;border-color:#ff8796;animation:.92s ease-in-out infinite heartThump;box-shadow:0 0 0 18px #ff304e1a,0 0 72px #ff304e7a}.effect-spotlight .countdown-ring{color:#171208;background:radial-gradient(circle,#fff8d6 0 8%,#dfae39 9% 54%,#7a5414 100%);border-color:#fff0b6;box-shadow:0 0 95px #ffe07e94}@keyframes broadcastGrid{to{background-position:0 42px,42px 0}}@keyframes heartbeatArena{0%,45%,to{opacity:.45;transform:scale(.92)}15%{opacity:1;transform:scale(1.02)}28%{opacity:.7;transform:scale(.97)}}@keyframes heartbeatRing{0%,45%,to{transform:scale(.9)rotate(0)}15%{transform:scale(1.08)rotate(45deg)}28%{transform:scale(.98)rotate(90deg)}}@keyframes spotlightSweep{0%{transform:rotate(-18deg)}to{transform:rotate(18deg)}}.history-backdrop,.modal-backdrop{-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);z-index:100;background:#0a1323ad;justify-content:center;align-items:center;padding:22px;display:flex;position:fixed;inset:0}.constraint-conflict-backdrop{z-index:180}.print-options-backdrop{z-index:190}.print-options-dialog{background:#fff;border-radius:20px;width:min(500px,100vw - 28px);overflow:hidden;box-shadow:0 30px 100px #030a186b}.print-options-dialog>header{background:var(--navy);color:#fff;justify-content:space-between;align-items:center;padding:22px 24px;display:flex}.print-options-dialog>header small{color:var(--yellow);letter-spacing:.12em;font-size:9px;font-weight:900}.print-options-dialog>header h2{letter-spacing:-.04em;margin:4px 0 0;font-size:20px}.print-options-dialog>header>button{color:#fff;cursor:pointer;background:0 0;border:0;font-size:28px}.print-options-body{padding:24px}.print-options-body label{cursor:pointer;background:#f5f8fa;border:1px solid #dce3e8;border-radius:14px;align-items:center;gap:14px;padding:17px;display:flex}.print-options-body input{accent-color:var(--mint);width:21px;height:21px}.print-options-body label span{gap:4px;display:grid}.print-options-body label strong{font-size:14px}.print-options-body label small{color:#6f7b88;font-size:11px}.print-options-dialog>footer{background:#f5f7f9;border-top:1px solid #e2e6ea;justify-content:flex-end;gap:9px;padding:14px 18px;display:flex}.print-options-dialog>footer .button.ghost{color:#586574;border:1px solid #ccd3da}.constraint-conflict-dialog{background:#fff;border-radius:20px;width:min(760px,100vw - 28px);max-height:min(760px,100vh - 28px);overflow:auto;box-shadow:0 30px 100px #030a186b}.constraint-conflict-dialog>header{color:#fff;background:linear-gradient(135deg,#172743,#24385a);align-items:center;gap:12px;padding:20px 22px;display:flex}.constraint-conflict-dialog>header>span{background:#f19a42;border-radius:50%;flex:none;justify-content:center;align-items:center;width:38px;height:38px;font-size:16px;font-weight:950;display:flex}.constraint-conflict-dialog header small{color:#ffd594;letter-spacing:.1em;font-size:8px;font-weight:900}.constraint-conflict-dialog h2{letter-spacing:-.04em;margin:3px 0 0;font-size:19px}.constraint-conflict-dialog>p{color:#657080;margin:0;padding:17px 22px 10px;font-size:10px;line-height:1.55}.constraint-conflict-dialog>ul{gap:7px;margin:0;padding:0 22px 19px;list-style:none;display:grid}.constraint-conflict-dialog>ul li{color:#764716;background:#fff4e8;border:1px solid #f1cfaa;border-radius:10px;align-items:flex-start;gap:8px;min-height:39px;padding:8px 10px;display:flex}.constraint-conflict-dialog>ul li span{color:#fff;background:#e98345;border-radius:50%;flex:none;justify-content:center;align-items:center;width:18px;height:18px;font-size:8px;display:flex}.constraint-conflict-dialog>ul li strong{font-size:10px}.constraint-conflict-list>li>div{flex:1;gap:4px;min-width:0;display:grid}.constraint-conflict-list>li>div>header{justify-content:space-between;align-items:center;gap:8px;display:flex}.constraint-conflict-list>li>div>header b{background:#f6d3ad;border-radius:999px;flex:none;padding:3px 7px;font-size:9px}.constraint-conflict-list>li>div>p,.constraint-conflict-list>li>div>small{margin:0}.constraint-conflict-list>li>div>p{color:#6f461c;font-size:10px;font-weight:750;line-height:1.45}.constraint-conflict-list>li>div>small{color:#8e6943;font-size:9px;line-height:1.45}.constraint-conflict-list>li>label{flex:0 0 92px;gap:3px;display:grid}.constraint-conflict-list>li>label>span{color:#8c663c;background:0 0;width:auto;height:auto;font-size:8px;display:block}.constraint-conflict-list select{color:#5e3b19;font:inherit;background:#fff;border:1px solid #e2b981;border-radius:8px;min-height:32px;padding:0 7px;font-size:10px;font-weight:800}.rule-priority-list{gap:7px;display:grid}.rule-priority-list>p{color:#46736d;background:#eef7f5;border-radius:9px;margin:0 0 3px;padding:9px 10px;font-size:9px;line-height:1.55}.rule-priority-list>label{background:#f8fafb;border:1px solid #e0e6ea;border-radius:10px;justify-content:space-between;align-items:center;gap:10px;padding:9px 10px;display:flex}.rule-priority-list>label>span{gap:2px;display:grid}.rule-priority-list strong{color:var(--navy);font-size:10px}.rule-priority-list small{color:#7d8995;font-size:8px}.rule-priority-list select{color:var(--navy);font:inherit;background:#fff;border:1px solid #cad4dc;border-radius:8px;flex:0 0 78px;min-height:32px;padding:0 7px;font-size:9px;font-weight:800}.constraint-conflict-dialog>footer{background:#f5f7f9;border-top:1px solid #e2e6ea;justify-content:flex-end;gap:8px;padding:13px 16px;display:flex}.constraint-conflict-dialog>footer .button{min-height:40px;padding-inline:12px;font-size:11px}.constraint-conflict-dialog .button.ghost{color:#586574;border-color:#ccd3da}.constraint-conflict-dialog .button.danger{color:#fff;background:#e96354}@media (max-width:520px){.constraint-conflict-list>li{flex-wrap:wrap}.constraint-conflict-list>li>label{flex-basis:100%;grid-template-columns:1fr 120px}.constraint-conflict-dialog>footer{flex-direction:column}.constraint-conflict-dialog>footer .button{width:100%}}.reveal-settings-dialog{background:#f5f7f9;border-radius:18px;width:min(760px,96vw);max-height:92vh;overflow:auto;box-shadow:0 28px 90px #00000057}.reveal-settings-dialog>header{background:var(--navy);color:#fff;justify-content:space-between;align-items:center;padding:21px 24px;display:flex}.reveal-settings-dialog>header span{color:var(--yellow);letter-spacing:.12em;font-size:9px;font-weight:850}.reveal-settings-dialog>header h2{letter-spacing:-.045em;margin:3px 0 0;font-size:21px}.reveal-settings-dialog>header>button{color:#fff;cursor:pointer;background:#ffffff1a;border:0;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:23px;display:flex}.reveal-mode-options{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:20px 20px 8px;display:grid}.reveal-mode-options button{cursor:pointer;text-align:left;background:#fff;border:1px solid #dce2e8;border-radius:13px;min-height:126px;padding:15px;transition:all .16s}.reveal-mode-options button:hover{border-color:#9fb8b1;transform:translateY(-2px)}.reveal-mode-options button.selected{border-color:var(--mint-dark);background:#edf6f3;box-shadow:0 0 0 3px #438f7e1f}.reveal-mode-options span{font-size:15px;font-weight:900;display:block}.reveal-mode-options small{color:var(--coral-dark);margin-top:3px;font-size:9px;font-weight:850;display:block}.reveal-mode-options p{color:#747f8d;margin:12px 0 0;font-size:10px;line-height:1.55}.reveal-theme-section{padding:10px 20px 4px}.reveal-section-title{justify-content:space-between;align-items:baseline;margin-bottom:9px;display:flex}.reveal-section-title strong{font-size:12px}.reveal-section-title span{color:#8893a0;font-size:9px}.reveal-theme-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.theme-card{cursor:pointer;text-align:left;background:#fff;border:1px solid #dce2e8;border-radius:11px;align-items:center;gap:11px;min-height:67px;padding:10px 12px;display:flex}.theme-card>i{color:var(--yellow);background:#182941;border-radius:9px;flex:none;justify-content:center;align-items:center;width:46px;height:40px;font-size:17px;font-style:normal;font-weight:950;display:flex}.theme-card>span{gap:3px;display:grid}.theme-card strong{font-size:11px}.theme-card small{color:#7e8997;font-size:8px;line-height:1.35}.theme-card-heartbeat>i{color:#ff6d81;background:#641326}.theme-card-spotlight>i{color:#ffe59a;background:#18150d}.theme-card-broadcast>i{color:#3be9ff;background:#042d42;font-size:9px}.theme-card:hover{border-color:#9fb8b1;transform:translateY(-1px)}.theme-card.selected{border-color:var(--mint-dark);background:#edf6f3;box-shadow:0 0 0 3px #438f7e1f}.reveal-setting-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:12px 20px;display:grid}.reveal-setting-grid label{flex-direction:column;gap:7px;display:flex}.reveal-setting-grid label>span{color:#53606f;font-size:10px;font-weight:850}.reveal-setting-grid label>small{color:#8b96a3;font-size:8px;line-height:1.45}.reveal-setting-grid select{color:var(--ink);font:inherit;background:#fff;border:1px solid #d7dee6;border-radius:9px;min-height:40px;padding:0 10px;font-size:11px}.reveal-toggle-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:4px 20px 18px;display:grid}.reveal-toggle-row label{cursor:pointer;background:#fff;border:1px solid #dce2e8;border-radius:10px;align-items:center;gap:10px;padding:12px;display:flex}.reveal-toggle-row input{accent-color:var(--mint-dark);width:17px;height:17px}.reveal-toggle-row label>span{flex-direction:column;gap:2px;display:flex}.reveal-toggle-row strong{font-size:11px}.reveal-toggle-row small{color:#84909e;font-size:9px}.reveal-settings-dialog>footer{background:#fff;border-top:1px solid #dfe4ea;justify-content:flex-end;gap:8px;padding:14px 20px;display:flex}.reveal-settings-dialog>footer .button.ghost{color:var(--ink);border-color:#d6dde5}.settings-save-note{color:#718077;margin-right:auto;font-size:9px;font-weight:750}.history-dialog{background:#f4f6f8;border:1px solid #ffffff3d;border-radius:17px;flex-direction:column;width:min(1120px,96vw);max-width:1120px;height:min(820px,92vh);display:flex;overflow:hidden;box-shadow:0 30px 90px #00000052}.history-header{background:var(--navy);color:#fff;justify-content:space-between;align-items:center;padding:20px 25px 18px;display:flex}.history-header span{color:var(--yellow);letter-spacing:.12em;font-size:9px;font-weight:850}.history-header h2{letter-spacing:-.045em;margin:3px 0 0;font-size:22px}.history-header button{color:#fff;cursor:pointer;background:#ffffff1a;border:0;border-radius:50%;justify-content:center;align-items:center;width:36px;height:36px;font-size:24px;display:flex}.history-tabs{border-bottom:1px solid var(--line);background:#fff;gap:4px;padding:0 24px;display:flex}.history-tabs button{color:#7b8695;cursor:pointer;background:0 0;border:0;border-bottom:3px solid #0000;padding:14px 12px 11px;font-size:12px;font-weight:800}.history-tabs button.active{border-color:var(--coral);color:var(--ink)}.history-tabs b{background:#eef1f4;border-radius:99px;margin-left:4px;padding:2px 6px;font-size:9px}.history-body{flex:1;min-height:0;overflow:auto}.record-layout{grid-template-columns:220px 1fr;min-height:100%;display:grid}.record-list{background:#eef1f4;border-right:1px solid #d8dee5;padding:10px;overflow:auto}.record-list button{cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:9px;gap:2px;width:100%;margin-bottom:6px;padding:10px;display:grid}.record-list button.selected{background:#fff;border-color:#cbd4de;box-shadow:0 4px 12px #1e2d4612}.record-list span{color:var(--coral-dark);font-size:8px;font-weight:850}.record-list strong{font-size:12px}.record-list small{color:#808b98;font-size:9px}.record-detail{background:var(--paper);padding:24px clamp(20px,4vw,45px);overflow:auto}.record-detail-heading{justify-content:space-between;align-items:center;margin-bottom:22px;display:flex}.record-detail-heading span{color:#7b8694;font-size:10px}.record-detail-heading h3{margin:3px 0 0;font-size:19px}.record-detail-actions{gap:7px;display:flex}.record-detail-actions button{background:var(--navy);color:#fff;cursor:pointer;border:0;border-radius:8px;min-height:34px;padding:0 12px;font-size:10px;font-weight:800}.record-detail-actions button.danger{color:#ad3e36;background:#fff;border:1px solid #e4aaa5}.mini-seat-map{gap:9px;display:grid}.mini-seat-row{gap:6px;display:grid}.mini-seat-row span{text-overflow:ellipsis;white-space:nowrap;background:#fff;border:1px solid #d8dfe6;border-radius:6px;justify-content:center;align-items:center;min-width:0;min-height:38px;padding:3px;font-size:clamp(8px,1vw,11px);font-weight:750;display:flex;overflow:hidden}.mini-seat-row span.blocked{color:#8a939f;background:#e6e9ed;border-style:dashed}.mini-desk{background:var(--navy);color:#fff;text-align:center;border-radius:5px;width:min(180px,38%);margin:16px auto;padding:7px 28px;font-size:9px;font-weight:850}.history-empty{color:#788492;text-align:center;flex-direction:column;justify-content:center;align-items:center;height:100%;min-height:350px;display:flex}.history-empty>span{color:var(--coral);font-size:56px}.history-empty h3{color:var(--ink);margin:3px 0 6px;font-size:17px}.history-empty p{margin:0;font-size:11px}.stats-view{gap:17px;padding:20px;display:grid}.stats-summary{grid-template-columns:.7fr 1.5fr .7fr;gap:10px;display:grid}.stats-summary article,.stats-section{background:#fff;border:1px solid #dfe4ea;border-radius:11px}.stats-summary article{gap:7px;padding:15px;display:grid}.stats-summary span{color:#7b8693;font-size:9px}.stats-summary strong{letter-spacing:-.035em;font-size:clamp(14px,1.7vw,20px)}.stats-summary small{margin-left:2px;font-size:10px}.fun-stats{background:linear-gradient(135deg,#fff9e8f5,#eff9f6f5);border:1px solid #e2dcc8;border-radius:12px;overflow:hidden}.fun-stats-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:11px;display:grid}.fun-stats-grid article{background:#ffffffd9;border:1px solid #dadcd6e6;border-radius:9px;gap:3px;min-height:92px;padding:10px;display:grid}.fun-stats-grid i{background:var(--navy);color:var(--yellow);border-radius:50%;justify-content:center;align-items:center;width:23px;height:23px;margin-bottom:3px;font-size:10px;font-style:normal;display:flex}.fun-stats-grid span{color:#7c837f;font-size:8px;font-weight:750}.fun-stats-grid strong{letter-spacing:-.035em;font-size:11px}.fun-stats-grid small{color:#89908d;font-size:8px}.stats-section{overflow:hidden}.stats-title{border-bottom:1px solid #e7ebef;justify-content:space-between;align-items:baseline;padding:13px 15px;display:flex}.stats-title h3{margin:0;font-size:13px}.stats-title span{color:#8b95a2;font-size:9px}.stats-table-wrap{max-height:260px;overflow:auto}.stats-table{border-collapse:collapse;width:100%;font-size:10px}.stats-table th,.stats-table td{text-align:center;border-bottom:1px solid #eef1f4;padding:8px 12px}.stats-table th{color:#747f8d;background:#f8f9fa;font-size:9px;position:sticky;top:0}.stats-table th:nth-child(2),.stats-table td:nth-child(2){text-align:left}.stats-table b{color:var(--coral-dark)}.relation-grid{grid-template-columns:1fr 1fr;gap:14px;display:grid}.relation-list{max-height:240px;margin:0;padding:7px 14px 10px;list-style:none;overflow:auto}.relation-list li{border-bottom:1px solid #eef1f4;justify-content:space-between;align-items:center;padding:8px 2px;font-size:10px;display:flex}.relation-list strong{color:var(--coral-dark)}.history-footer{border-top:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;padding:12px 20px;display:flex}.history-footer>span{color:#818c99;font-size:9px}.history-footer>div{gap:7px;display:flex}.history-footer button{cursor:pointer;background:#fff;border:1px solid #cfd7df;border-radius:7px;min-height:30px;padding:0 9px;font-size:9px;font-weight:800}.history-footer button.danger{color:#b9433a}.history-footer button:disabled{cursor:default;opacity:.4}body,.app{background:linear-gradient(to right, var(--paper) 0 370px, var(--canvas) 370px 100%)}.topbar{z-index:20;border-bottom:1px solid #ffffff14;position:sticky;top:0;box-shadow:0 4px 18px #111d341f}.brand,.button,.step-tabs button,.text-button,.reset-button,.roster-mode-picker button,.desk-choice button,.rule-card,.rule-student-list button,.compact-segment button,.draw-button,.group-draw-button{-webkit-tap-highlight-color:transparent}.button,.text-input,.number-only-settings input,.pair-builder select,.pair-builder>button,.teacher-student-rule>select,.teacher-seat-toolbar select,.reveal-setting-grid select{min-height:44px}.button:active,.text-button:active,.step-tabs button:active{transform:translateY(0)}.button:disabled,.draw-button:disabled,.group-draw-button:disabled{box-shadow:none;opacity:.48;transform:none}.button.primary:hover,.draw-button:hover{filter:brightness(1.04)}.button.secondary:hover,.panel-section .button.ghost:hover{background:#f4f7f9;border-color:#bfcbd6}.control-panel{border-color:var(--line)}.intro{padding:30px 30px 26px}.intro p:last-child,.input-help,.toggle-row small,.history-rule-row small,.rule-board-heading small,.rule-editor>header small,.gender-rule-heading small{color:var(--muted)}.panel-section{padding:26px 28px 24px}.field-label{margin-bottom:8px;font-size:13px}.text-input,.roster-input,.pair-input,.number-only-settings input,.pair-builder select,.teacher-student-rule>select,.teacher-seat-toolbar select,.reveal-setting-grid select{border-color:#cfd8e2;box-shadow:0 1px #17243f05}.text-input:hover,.roster-input:hover,.pair-input:hover,.number-only-settings input:hover,.pair-builder select:hover,.teacher-student-rule>select:hover,.teacher-seat-toolbar select:hover,.reveal-setting-grid select:hover{border-color:#aebdca}.text-input:focus,.roster-input:focus,.pair-input:focus,.number-only-settings input:focus,.pair-builder select:focus,.teacher-student-rule>select:focus,.teacher-seat-toolbar select:focus,.reveal-setting-grid select:focus{border-color:var(--focus);box-shadow:0 0 0 3px #2f77c521}.input-help{font-size:11px;line-height:1.55}.roster-mode-picker,.counter-control,.compact-segment{border:1px solid #e0e6ec}.roster-mode-picker button,.desk-choice button{min-height:40px}.roster-mode-picker button.selected,.desk-choice button.selected,.compact-segment button.selected{box-shadow:0 0 0 1px #17243f0a, var(--shadow-sm)}.history-rule-list,.rule-board,.number-only-settings,.tip-box{background:var(--surface-soft);border-color:var(--line);border-radius:var(--radius-md)}.history-rule-row{min-height:68px}.history-rule-row strong,.rule-board-heading strong,.gender-rule-heading strong{font-size:13px}.history-rule-row small,.rule-board-heading small,.gender-rule-heading small{font-size:10px;line-height:1.45}.lookback-select{min-height:38px}.lookback-select span{font-size:9px}.lookback-select select{font-size:11px}.rule-card{grid-template-columns:36px minmax(0,1fr) auto;gap:9px;min-height:70px;padding:10px}.rule-card>i{width:36px;height:36px}.rule-card>span strong{font-size:11px}.rule-card>span small{font-size:9px;line-height:1.35}.rule-card.selected{background:var(--rule-soft)}@supports (color:color-mix(in lab, red, red)){.rule-card.selected{background:color-mix(in srgb, var(--rule-soft) 58%, white)}}.rule-card.selected{box-shadow:inset 3px 0 0 var(--rule-color), 0 0 0 2px var(--rule-color)}@supports (color:color-mix(in lab, red, red)){.rule-card.selected{box-shadow:inset 3px 0 0 var(--rule-color), 0 0 0 2px color-mix(in srgb, var(--rule-color) 13%, transparent)}}.rule-editor{border-color:var(--line);border-radius:var(--radius-md);padding-inline:13px}.rule-editor>header{padding-block:13px}.rule-editor>header strong{font-size:12px}.rule-editor>header small{font-size:10px}.pair-builder{gap:7px}.pair-builder select,.pair-builder>button{font-size:11px}.pair-rule-list>div{min-height:40px}.pair-rule-list>div>span{font-size:10px}.pair-rule-empty{font-size:10px;line-height:1.5}.rule-student-list{gap:7px;max-height:180px;padding-block:2px}.rule-student-list button{min-height:34px;padding-inline:11px;font-size:10px}.rule-student-list button.selected{box-shadow:0 0 0 2px #fff,0 0 0 4px #17243f2e}.compact-segment button{min-height:36px;font-size:10px}.gender-student-list>div{min-height:46px}.gender-student-list>div>span{font-size:11px}.gender-student-list button{border:1px solid #0000;min-width:38px;min-height:32px;font-size:9px}.gender-student-list button.selected{border-color:currentColor}.panel-footer{box-shadow:0 -8px 24px #17243f0b}.reveal-settings-button{min-height:54px}.group-draw-button{min-height:44px;font-size:12px}.draw-button{border-radius:var(--radius-md);min-height:62px;box-shadow:0 6px #d95046,0 10px 22px #e9524733}.preview-area{gap:0}.classroom{border-radius:var(--radius-lg);border-color:#d3dce5}.seat{border-color:#d3dce5;border-radius:10px}.seat:focus-visible{outline-color:var(--focus);outline-offset:3px}.seat-name{line-height:1.25}.seat.empty{color:#6f7c8b}.empty-label{color:#778493;font-size:11px}.status-bar{min-height:45px}.status-bar p,.status-bar button{font-size:11px}.site-guide{border:1px solid var(--line);border-radius:var(--radius-lg);box-sizing:border-box;background:#fff;align-self:center;width:100%;max-width:970px;margin-top:26px;padding:clamp(24px,3vw,40px)}.site-guide>header{max-width:690px}.site-guide>header>span{color:var(--teal);letter-spacing:.08em;font-size:11px;font-weight:900}.site-guide h2{letter-spacing:-.05em;margin:8px 0 10px;font-size:clamp(23px,2.4vw,31px)}.site-guide p{color:#59677a;margin:0;font-size:13px;line-height:1.7}.site-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:25px;display:grid}.site-guide-grid article{background:#f7f9fa;border:1px solid #e2e8ec;border-radius:13px;min-width:0;padding:16px}.site-guide-grid b{background:var(--navy);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:23px;height:23px;font-size:10px;display:inline-flex}.site-guide-grid h3{margin:10px 0 5px;font-size:15px}.site-guide-grid p{font-size:12px}.site-guide-faq{border-top:1px solid #e4e9ed;gap:0;margin-top:24px;display:grid}.site-guide-faq details{border-bottom:1px solid #e4e9ed;padding:13px 0}.site-guide-faq summary{color:var(--ink);cursor:pointer;font-size:13px;font-weight:800}.site-guide-faq details p{margin-top:9px}.site-guide footer{gap:14px;margin-top:19px;display:flex}.site-guide footer a{color:#2c7280;font-size:12px;font-weight:800}.modal-backdrop button:focus-visible,.history-backdrop button:focus-visible{outline-color:#77b5ff}@media (max-width:1100px) and (min-width:761px){.save-state{display:none}.top-actions{gap:6px}.top-actions .button{padding-inline:9px;font-size:10px}}@media (max-width:900px) and (min-width:761px){.live-seat-state{display:none}}@media (max-width:980px){body,.app{background:linear-gradient(to right, var(--paper) 0 320px, var(--canvas) 320px 100%)}.workspace{grid-template-columns:320px 1fr}.sidebar-resizer{display:none}.preview-area{padding:18px}.classroom{min-height:570px;padding:28px 22px}.seat-row{gap:18px}.seat-section{gap:6px}.seat{height:64px}}@media (max-width:760px){body,.app{background:var(--canvas)}.reveal-mode-options,.reveal-theme-options,.reveal-setting-grid,.reveal-toggle-row{grid-template-columns:1fr}.reveal-mode-options button{min-height:auto}.reveal-settings-dialog>footer{flex-wrap:wrap}.reveal-settings-dialog>footer .button{flex:130px}.reveal-controls{flex-wrap:wrap;justify-content:center;width:calc(100% - 24px)}.reveal-controls kbd{display:none}.topbar{flex-wrap:wrap;align-items:flex-start;gap:9px;height:auto;padding:10px 14px 11px;position:relative;top:auto}.save-state,.live-seat-state{display:none}.top-actions{order:2;grid-template-columns:repeat(2,minmax(0,1fr));width:calc(100% + 4px);margin-inline:-2px;padding:2px;display:grid}.top-actions .button{width:100%;min-height:42px;padding-inline:10px;display:inline-flex}.top-actions .button:last-child{grid-column:1/-1}.workspace{flex-direction:column;display:flex}.workspace.settings-focus .control-panel{box-shadow:none;border-radius:0;width:auto;height:auto;min-height:0;max-height:none;position:static;top:auto;left:auto;transform:none}.workspace.settings-focus .preview-area{filter:none;pointer-events:auto;-webkit-user-select:auto;user-select:auto}.control-panel{border-right:0;height:auto;min-height:0;max-height:none;position:static;top:auto;overflow:visible}.sidebar-view-controls{padding-inline:16px}.sidebar-view-controls button:first-child{display:none}.intro{padding:23px 22px 19px}.intro h1{font-size:28px}.panel-section{scrollbar-gutter:auto;min-height:auto;padding:20px 22px;overflow:visible}.control-panel .panel-section.panel-expanded{border-radius:12px;height:calc(100dvh - 16px);padding:18px 16px 24px;inset:8px;overflow-y:auto}.workspace.settings-focus .roster-settings-grid,.workspace.settings-focus .layout-settings-grid,.workspace.settings-focus .rule-settings-grid,.control-panel .panel-expanded .roster-settings-grid,.control-panel .panel-expanded .layout-settings-grid,.control-panel .panel-expanded .rule-settings-grid{grid-template-columns:minmax(0,1fr)}.roster-panel .roster-input{flex:none;height:160px;min-height:160px;max-height:none}.panel-footer{margin-top:0;padding:16px 22px}.preview-area{min-height:650px;padding:18px 12px 30px}.classroom{border-radius:12px;min-height:560px;padding:24px 14px;overflow-x:auto}.site-guide{margin-top:20px;padding:22px 18px}.site-guide-grid{grid-template-columns:1fr}.seat-map{min-width:470px}.seat-row{gap:16px}.seat{height:60px}.seat-name{font-size:12px}.desk{min-width:180px}.status-bar{padding-inline:6px}.history-backdrop,.modal-backdrop{align-items:flex-end;padding:0}.reveal-settings-dialog{border-radius:16px 16px 0 0;width:100%;max-height:94vh}.history-dialog{border-radius:16px 16px 0 0;width:100%;height:94vh}.history-header{padding:16px 18px}.history-tabs{padding-inline:12px}.history-footer{flex-direction:column;align-items:stretch}.history-footer>div{grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.history-footer button{padding-inline:5px}.record-layout{flex-direction:column;display:flex}.record-list{border-bottom:1px solid #d8dee5;border-right:0;flex:none;gap:7px;max-height:105px;display:flex;overflow-x:auto}.record-list button{flex:0 0 145px;margin:0}.record-detail{padding:18px 13px 24px}.record-detail-heading{align-items:flex-start;gap:10px}.record-detail-actions{flex-direction:column}.stats-view{padding:12px}.stats-summary{grid-template-columns:1fr 1fr}.stats-summary article:nth-child(2){grid-area:2/span 2}.relation-grid{grid-template-columns:1fr}.fun-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.history-footer{gap:9px;padding:10px 12px}.history-footer>span{max-width:none}}@media (max-width:420px){.brand small{display:none}.top-actions .button{padding-inline:10px;font-size:11px}.intro h1 br{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media print{@page{margin:9mm;size:A4 landscape}:root{--ink:#111827}body{-webkit-print-color-adjust:exact;print-color-adjust:exact;background:#fff}.no-print{display:none!important}.app,.workspace,.preview-area{min-height:0;padding:0;display:block}.classroom{box-shadow:none;background:#fff;border:0;border-radius:0;height:188mm;min-height:0;padding:0 7mm 3mm;display:flex}.classroom.print-with-roster{padding-right:51mm}.print-roster{box-sizing:border-box;border-left:.35mm solid #cfd5dc;flex-direction:column;width:46mm;padding:2mm 1.5mm 1mm 3mm;display:flex;position:absolute;top:0;bottom:0;right:0}.print-roster h3{letter-spacing:-.04em;border-bottom:.35mm solid #1f2937;margin:0 0 1.5mm;padding-bottom:1.5mm;font-size:11pt}.print-roster ol{gap:0;min-height:0;margin:0;padding:0;list-style:none;display:grid}.print-roster li{border-bottom:.2mm solid #e1e5e9;grid-template-columns:6mm minmax(0,1fr);align-items:center;gap:1.5mm;min-height:5mm;font-size:7.5pt;display:grid}.print-roster li span{color:#667085;text-align:center}.print-roster li strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.print-roster ol.dense li{grid-template-columns:4.5mm minmax(0,1fr);min-height:4.2mm;font-size:6.5pt}.print-heading{border-bottom:1px solid #d9dee5;margin-bottom:4mm;padding:0 0 3mm;display:flex}.print-heading p{color:#6b7280;margin:0 0 1mm;font-size:8pt}.print-heading h2{letter-spacing:-.04em;margin:0;font-size:17pt}.desk-side-top .print-heading>div,.desk-side-top .print-roster{transform:rotate(180deg)}.seat-map{gap:3.2mm;margin:auto 0}.seat-row{gap:13mm}.seat-section{gap:2.3mm}.seat{height:min(22mm, calc((145mm - (var(--rows,4) - 1) * 3mm) / var(--rows,4)));page-break-inside:avoid;border-color:#9ea8b5;border-radius:2.5mm;box-shadow:0 1.2mm #c8ced6}.seat:before{border-radius:2.5mm 2.5mm 0 0;height:1.2mm}.seat-number{font-size:7.5pt}.seat-name{font-size:12pt}.desk{width:68mm;margin:5mm auto 0}.desk-side-top .desk{margin:0 auto 5mm}.desk>span{border-width:1mm;border-radius:2mm;height:4.5mm;box-shadow:0 0 0 .3mm #aab3bf,0 1.2mm #b7c0cb}.desk strong{font-size:9pt}.desk small{font-size:6.5pt}.desk-side-top .seat-content{transform:rotate(180deg)}}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
