:root{--bg: #f6f7f9;--panel: #ffffff;--ink: #16181d;--muted: #6b7280;--line: #e3e6ea;--line-strong: #cbd2da;--accent: #1f5fa9;--accent-soft: #e8f0fb;--occupied: #dbeafe;--occupied-line: #93b7e8;--selected: #f59e0b;--blocked: #d7dbe0;--women: #f3e8f6;--women-line: #cba7d6;--danger: #b42318;--radius: 8px;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans Hebrew", "Arial Hebrew", Arial, sans-serif}*{box-sizing:border-box}body{margin:0;font-family:var(--font);background:var(--bg);color:var(--ink);font-size:14px}button,input,select,textarea{font:inherit;color:inherit}.app{display:flex;flex-direction:column;height:100vh}.topbar{display:flex;align-items:center;gap:12px;padding:8px 14px;background:var(--panel);border-bottom:1px solid var(--line);flex:none}.topbar h1{font-size:15px;margin:0;font-weight:650;letter-spacing:-.01em}.topbar .spacer{flex:1}.tabs{display:flex;gap:2px}.tab{padding:6px 12px;border:0;background:transparent;border-radius:6px;cursor:pointer;color:var(--muted);font-weight:550}.tab:hover{background:var(--bg);color:var(--ink)}.tab[aria-selected=true]{background:var(--accent-soft);color:var(--accent)}.btn.active{background:var(--accent);border-color:var(--accent);color:#fff}.save-badge{font-size:11.5px;font-weight:600;color:var(--muted);padding:3px 9px;border-radius:999px;background:var(--bg);border:1px solid var(--line);white-space:nowrap}.save-badge.error{background:#fdeceb;border-color:#f0c9c5;color:var(--danger)}.menu{position:relative}.menu-items{position:absolute;inset-inline-end:0;top:calc(100% + 4px);background:var(--panel);border:1px solid var(--line-strong);border-radius:8px;box-shadow:0 8px 24px #00000024;padding:4px;min-width:190px;z-index:30;display:none}.menu:hover .menu-items,.menu:focus-within .menu-items{display:block}.menu-items button{display:block;width:100%;text-align:start;padding:7px 10px;border:0;background:transparent;border-radius:5px;cursor:pointer}.menu-items button:hover{background:var(--bg)}.main{flex:1;min-height:0;overflow:hidden}.btn{padding:6px 11px;border:1px solid var(--line-strong);background:var(--panel);border-radius:6px;cursor:pointer;font-weight:550;white-space:nowrap}.btn:hover{background:var(--bg)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn.primary:hover{filter:brightness(1.08)}.btn.danger{color:var(--danger);border-color:#f0c9c5}.btn.sm{padding:3px 8px;font-size:12px}.field{display:flex;flex-direction:column;gap:3px}.field>label{font-size:11px;color:var(--muted);font-weight:600;text-transform:uppercase;letter-spacing:.04em}input[type=text],input[type=number],input[type=search],select,textarea{padding:6px 8px;border:1px solid var(--line-strong);border-radius:6px;background:var(--panel);min-width:0}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-soft);border-color:var(--accent)}.row{display:flex;gap:8px;align-items:center}.wrap{flex-wrap:wrap}.muted{color:var(--muted)}.small{font-size:12px}.pill{display:inline-block;padding:1px 7px;border-radius:999px;background:var(--bg);border:1px solid var(--line);font-size:11px;font-weight:600;color:var(--muted)}.pill.men{background:var(--occupied);border-color:var(--occupied-line);color:#1c4e8a}.pill.women{background:var(--women);border-color:var(--women-line);color:#6b2d7e}.notice{padding:8px 11px;border-radius:var(--radius);background:#fff8e6;border:1px solid #f0dca6;color:#7a5a10;font-size:12.5px}.split{display:flex;height:100%;min-height:0}.people-pane{width:330px;flex:none;display:flex;flex-direction:column;border-right:1px solid var(--line);background:var(--panel);min-height:0}.people-head{padding:10px;border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:8px;flex:none}.people-list{overflow-y:auto;flex:1}.selected-foot{border-top:1px solid var(--line);padding:10px;flex:none}.field.grow{flex:1;min-width:190px}.options{margin-top:12px;padding-top:12px;border-top:1px solid var(--line)}.table-scroll{overflow:auto;max-height:56vh;margin-top:12px;border:1px solid var(--line);border-radius:6px}.preview-box{overflow:auto;max-height:200px;margin-top:12px;border:1px solid var(--line);border-radius:6px}.modal.wide{width:min(1000px,100%)}.print-title{margin-bottom:8px}.print-title h1{font-size:16px;margin:0}.person{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:7px 10px;border:0;border-bottom:1px solid var(--line);background:transparent;cursor:pointer}.person:hover{background:var(--bg)}.person[aria-selected=true]{background:#fff4e0;box-shadow:inset 3px 0 0 var(--selected)}.person .nm{flex:1;min-width:0}.person .nm b{display:block;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.person .nm span{display:block;font-size:11.5px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.person .count{font-size:11px;font-weight:700;color:var(--muted);background:var(--bg);border-radius:999px;padding:2px 7px;flex:none}.person.done .count{background:#dcfce7;color:#166534}.person.partial .count{background:#fef3c7;color:#92400e}.map-pane{flex:1;overflow:auto;padding:16px;min-width:0}.floor{margin-bottom:26px}.floor>h2{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0 0 10px;font-weight:700}.floor-sections{display:grid;grid-auto-columns:max-content;grid-auto-rows:max-content;align-items:end;justify-content:start;gap:18px}.section-slot{min-width:0}.map-viewport{overflow:auto}.map-content{transform:scale(var(--map-scale, 1));transform-origin:top left}.zoom-bar{display:flex;align-items:center;gap:6px;margin-bottom:10px;position:sticky;top:0;z-index:5}.section-card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:12px}.section-card>header{display:flex;align-items:baseline;gap:8px;margin-bottom:10px}.section-card>header h3{margin:0;font-size:14px;font-weight:650}.section-card.editing{outline:2px dashed var(--selected);outline-offset:3px}.section-controls{display:flex;align-items:center;gap:8px;margin-inline-start:auto}.stepper{display:flex;align-items:center;gap:3px}.stepper-label{font-size:10px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700;margin-inline-end:2px}.marker{text-align:center;font-weight:700;font-size:11.5px;color:var(--muted);background:var(--bg);border:1px dashed var(--line-strong);border-radius:5px;padding:3px 8px;margin-bottom:8px}.marker.bottom{margin:8px 0 0}.grid-wrap{display:flex;align-items:stretch;gap:6px}.side-marker{writing-mode:vertical-rl;text-orientation:mixed;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px;color:var(--muted);background:var(--bg);border:1px dashed var(--line-strong);border-radius:5px;padding:6px 3px}.seat-grid{display:grid;gap:2px}.seat-head,.row-head{display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--muted);padding:2px}.seat{border:1px solid var(--line-strong);border-radius:4px;background:var(--panel);cursor:pointer;padding:2px 3px;min-height:30px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:10px;line-height:1.15;overflow:hidden;word-break:break-word}.seat:hover{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-soft)}.seat.taken{background:var(--occupied);border-color:var(--occupied-line)}.seat.women.taken{background:var(--women);border-color:var(--women-line)}.seat.blocked{background:transparent;border-color:transparent;cursor:default;color:transparent;box-shadow:none}.seat.blocked:hover{box-shadow:none;border-color:transparent}.section-card.editing .seat.blocked{background:var(--blocked);border-color:var(--line-strong);border-style:dashed;cursor:pointer}.section-card.editing .seat.blocked:hover{border-color:var(--accent)}.seat.mine{outline:2px solid var(--selected);outline-offset:-2px}.seat.dim{opacity:.42}.seat .seat-num{display:none;font-size:8.5px;color:var(--muted)}.section-card.editing .seat .seat-num{display:block}.panel-page{padding:18px;overflow-y:auto;height:100%}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:14px;margin-bottom:16px}.panel>h2{margin:0 0 12px;font-size:14px;font-weight:650}.panel-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}table.data{width:100%;border-collapse:collapse;font-size:13px}table.data th{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);padding:6px 8px;border-bottom:1px solid var(--line-strong);position:sticky;top:0;background:var(--panel)}table.data td{padding:5px 8px;border-bottom:1px solid var(--line)}table.data tr:hover td{background:var(--bg)}table.data input{width:100%;border-color:transparent;background:transparent;padding:3px 5px}table.data input:hover{border-color:var(--line)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#10121673;display:flex;align-items:center;justify-content:center;z-index:50;padding:20px}.modal{background:var(--panel);border-radius:10px;padding:18px;width:min(760px,100%);max-height:88vh;overflow-y:auto;box-shadow:0 20px 50px #00000040}.modal h2{margin:0 0 12px;font-size:16px}.toast{position:fixed;bottom:18px;left:50%;transform:translate(-50%);background:#16181d;color:#fff;padding:9px 16px;border-radius:999px;font-size:13px;z-index:100;box-shadow:0 6px 20px #00000040}.sheet-scroll{background:#55585e;padding:20px;border-radius:var(--radius);overflow:auto}.sheet-frame{margin:0 auto 16px}.sheet{background:#fff;position:relative;transform-origin:top left;box-shadow:0 3px 14px #0000004d}.label{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;overflow:hidden;padding:1mm}.label .l-primary{font-weight:650;line-height:1.15;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.label .l-secondary{color:#444;line-height:1.1;width:100%;overflow:hidden;text-overflow:ellipsis}.label .l-seat{color:#666;line-height:1.1;width:100%;overflow:hidden;text-overflow:ellipsis}.label .l-logo{object-fit:contain;margin-bottom:.5mm;flex:none}.label.outlined{outline:.2mm dashed #b9bec5;outline-offset:-.1mm}@media (max-width: 900px){.topbar{flex-wrap:wrap;row-gap:6px;padding:8px 10px}.topbar .spacer{display:none}.selected-foot{max-height:30vh;overflow-y:auto}.split{flex-direction:column}.people-pane{width:100%;max-height:40vh;border-right:0;border-bottom:1px solid var(--line-strong)}.map-pane{padding:12px}.seat{min-height:36px}.btn{padding:7px 12px}.btn.sm{padding:5px 10px}.modal,.modal.wide{width:100%;max-height:100vh;border-radius:0;padding:14px}.modal-backdrop{padding:0;align-items:stretch}.table-scroll{max-height:none}.panel-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr))}.field.grow{flex-basis:100%}.sheet-scroll{padding:10px}}@media (max-width: 560px){.people-pane{max-height:34vh}.topbar{gap:6px}.save-badge{display:none}}.print-only{display:none}@media print{body{background:#fff}.app,.split{display:block;height:auto}.people-pane{display:none!important}.map-pane{overflow:visible!important;height:auto!important;padding:0!important}.app>.topbar,.no-print{display:none!important}.main{overflow:visible!important;height:auto!important}.panel-page,.map-pane{overflow:visible!important;height:auto!important;padding:0!important}.print-only{display:block}.floor{page-break-inside:auto;margin:0}.floor>h2{display:none}.floor-sections{display:block}.map-viewport{overflow:visible!important}.map-content{transform:none!important}.section-slot{width:calc(var(--natural-width) * var(--print-scale) * 1px);height:calc(var(--natural-height) * var(--print-scale) * 1px);page-break-inside:avoid;break-inside:avoid;page-break-after:always}.section-fit{transform:scale(var(--print-scale));transform-origin:top left}.print-map .section-card{display:block;width:max-content;border-color:#999}.floor:last-child .section-slot:last-child{page-break-after:auto}.seat .seat-num{display:block}.seat{min-height:24px}.sheet-scroll{background:none;padding:0;border-radius:0;overflow:visible}.sheet-frame{width:auto!important;height:auto!important;margin:0}.sheet{box-shadow:none;margin:0;page-break-after:always;transform:none!important}.sheet:last-child{page-break-after:auto}.label.outlined{outline:none}.label.outlined.keep-outline{outline:.2mm dashed #999}}@page{size:A4 landscape;margin:8mm}
