:root{--ink:#22312e;--muted:#75817e;--green:#17674f;--line:#e3e9e6;--bg:#f5f7f6;--purple:#744eb0}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:15px/1.5 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #a29bd8;outline-offset:3px}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1{font-size:36px;line-height:1.2;letter-spacing:-1px;margin-bottom:12px}h2{font-size:19px;line-height:1.4;margin-bottom:8px}h3{font-size:15px}a{color:var(--green)}.topbar{min-height:88px;padding:15px 4%;background:white;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;gap:12px;align-items:center;color:var(--ink);text-decoration:none;font-weight:650;font-size:19px}.brand small{display:block;font-size:12px;color:var(--muted);font-weight:400}.brand-icon{display:grid;place-items:center;background:var(--green);color:white;width:40px;height:40px;border-radius:12px;font-size:24px}.topbar nav{display:flex;gap:8px}.nav{border:0;background:transparent;padding:12px;border-radius:8px;color:#697772;white-space:nowrap}.nav.active{background:#edf4f0;color:var(--green)}.account{display:flex;gap:12px;align-items:center;max-width:350px}.account span{overflow-wrap:anywhere;font-size:13px}main{max-width:1530px;margin:0 auto;padding:40px 4% 48px;min-height:calc(100vh - 166px)}.eyebrow{font-size:11px;letter-spacing:1.8px;font-weight:650;color:var(--muted);margin-bottom:12px}.subtitle{color:var(--muted);font-size:16px;margin-bottom:0}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:32px}.date-picker{display:flex;align-items:center;background:white;border:1px solid var(--line);border-radius:12px;padding:8px;gap:12px}.date-picker label{font-size:11px;color:var(--muted)}.date-picker input{display:block;padding:0;border:0;font-size:16px;font-weight:600;background:white;color:var(--ink);min-width:140px}.icon-button{border:0;background:transparent;width:32px;height:40px;font-size:25px;color:var(--green)}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 295px;gap:24px;align-items:start}.plan-panel,.selection,.surface{background:white;border:1px solid var(--line);border-radius:16px}.plan-panel{overflow:hidden}.plan-top{display:flex;align-items:flex-start;justify-content:space-between;padding:24px 26px 12px;gap:10px}.plan-top h2{font-size:17px}.plan-top p{margin:0;font-size:13px}.muted{color:var(--muted);font-weight:400}.legend{display:flex;gap:20px;flex-wrap:wrap;padding:10px 26px 0;font-size:12px;color:var(--muted)}.legend span{display:flex;gap:7px;align-items:center}.legend i{width:11px;height:11px;border-radius:3px;display:inline-block}.free-dot{background:#eff6f4;border:1px solid #97b6a9}.busy-dot{background:#e5e8ec;border:1px solid #b9c0c9}.mine-dot{background:#17674f}.selected-dot{background:#e2d7f4;border:1px solid #744eb0}#map{padding:10px;overflow-x:auto;min-height:380px}#map svg{display:block;width:100%;height:auto;min-width:630px}#map g[data-seat-id]{cursor:pointer}#map g[data-seat-id]:hover .desk,#map g[data-seat-id]:focus .desk{stroke:#744eb0;stroke-width:3}#map g[data-seat-id]:focus{outline:none}#map .occupied .desk{fill:#e5e8ec;stroke:#bec6cf}#map .occupied .label{fill:#7d8792}#map .mine .desk{fill:#17674f;stroke:#17674f}#map .mine .label{fill:white}#map .selected .desk{fill:#e2d7f4;stroke:#744eb0;stroke-width:3}#map .selected .label{fill:#492975}.plan-foot{font-size:11px;color:var(--muted);padding:0 26px 20px;margin:0}.selection{padding:25px}.selection h2{font-size:27px;margin-bottom:12px}.selection p{font-size:14px}.selection #seat-date{border-top:1px solid var(--line);margin-top:22px;padding-top:18px;font-size:14px;margin-bottom:22px}.primary,.secondary,.danger{border-radius:9px;padding:11px 17px;border:1px solid transparent;font-weight:550}.primary{background:var(--green);color:white}.primary:hover{background:#12533f}.secondary{background:white;border-color:#d8e1dc;color:var(--ink)}.danger{background:#fff6f4;border-color:#e9cbc4;color:#a44030;margin-top:12px}.wide{width:100%}.text-button{border:0;padding:4px 0;background:transparent;color:var(--green);font-size:13px}.aside-note{padding:24px 10px;color:var(--muted);font-size:13px}.aside-note h3{color:var(--ink);margin-bottom:8px}.booking-summary{background:#edf5f0;border-radius:8px;padding:12px;color:var(--green)}.surface{padding:28px;margin-bottom:24px}.surface h2:not(:first-child){margin-top:30px}.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:left;padding:13px 12px;border-bottom:1px solid var(--line);vertical-align:middle;overflow-wrap:anywhere}th{font-size:12px;color:var(--muted);font-weight:500}td button{margin-right:8px;font-size:12px}.assignment-form{display:flex;align-items:end;flex-wrap:wrap;gap:16px;margin:20px 0 24px}label{display:block;font-size:13px}input,select{display:block;margin-top:6px;padding:11px 12px;border:1px solid #d8e1dc;border-radius:8px;background:white;color:var(--ink);width:100%;min-width:0}input[type=checkbox]{width:auto;display:inline;margin:0 5px 0 0}fieldset{border:0;margin:0;padding:0}legend{font-size:13px;padding:0;margin-bottom:10px}.weekday-options{display:flex;gap:10px;flex-wrap:wrap}.weekday-options label{display:flex;align-items:center}.assignment-item{display:flex;justify-content:space-between;gap:16px;border-top:1px solid var(--line);padding:14px 0;align-items:center}.assignment-item p{margin:0;font-size:13px}footer{max-width:1530px;margin:0 auto;padding:24px 4%;color:var(--muted);font-size:12px;display:flex;justify-content:space-between;border-top:1px solid var(--line)}dialog{border:1px solid var(--line);border-radius:20px;padding:36px;width:430px;max-width:calc(100% - 32px);box-shadow:0 25px 100px #1f3c3030;color:var(--ink)}dialog::backdrop{background:#172f2955;backdrop-filter:blur(3px)}dialog h2{font-size:27px}.close{position:absolute;top:12px;right:16px;border:0;background:transparent;font-size:26px;color:var(--muted)}#auth-form label{margin:18px 0}.auth-links{display:flex;align-items:flex-start;flex-direction:column;gap:9px;margin-top:20px}.auth-policy{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:18px;margin-top:20px}.error{color:#ac3428;font-size:13px}#auth-message{color:var(--green);font-size:13px}#notice{padding:14px 18px;border-radius:10px;background:#e5f2e9;color:#215a3d;margin-bottom:24px;overflow-wrap:anywhere}#notice.error{background:#fff0ec;color:#a33c2b}#admin-cancel-area{margin-top:24px;border-top:1px solid var(--line);padding-top:20px}@media(min-width:1500px){#map svg{min-height:540px}}@media(max-width:1100px){.workspace{grid-template-columns:minmax(0,1fr) 260px}.topbar{gap:12px}.topbar nav{gap:0}.nav{padding:10px;font-size:13px}.selection{padding:20px}}@media(max-width:800px){.topbar{flex-wrap:wrap}.topbar nav{order:3;flex-basis:100%;overflow-x:auto}.account{max-width:55%}main{padding-top:28px}.workspace{grid-template-columns:1fr}.page-heading{align-items:flex-start;flex-direction:column}h1{font-size:30px}.date-picker{width:100%;justify-content:space-between}.plan-top{padding:20px 16px 10px}.legend{padding-left:16px;gap:13px}.selection{padding:24px}.aside-note{padding-top:20px}footer{gap:16px;flex-wrap:wrap}.surface{padding:20px}.assignment-form{align-items:stretch;flex-direction:column}.assignment-form button{align-self:flex-start}.table-scroll{margin:0 -8px}.selection #seat-date{margin-top:12px}.plan-top h2{font-size:15px}}
:root{--free:#edf6f0;--busy:#e2e7ed;--own:#17674f}
.plan-controls{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:8px 26px 14px}.view-toggle{display:flex;padding:3px;background:#f1f5f2;border-radius:9px;gap:4px}.view-toggle button{border:0;background:transparent;color:var(--muted);padding:8px 14px;border-radius:7px;font-size:13px}.view-toggle button.active{background:white;color:var(--green);box-shadow:0 1px 3px #23452a14}.zoom-controls{display:flex;gap:5px;align-items:center}.zoom-controls button{background:white;border:1px solid var(--line);border-radius:6px;padding:5px 10px;color:var(--muted);font-size:12px}.zoom-controls button:first-child,.zoom-controls button:last-child{font-size:18px;line-height:20px;min-width:30px}#week-strip{display:flex;gap:5px;margin:0 26px 12px;padding:4px 1px 8px;overflow-x:auto;scrollbar-width:thin}.week-tile{display:flex;flex-direction:column;gap:2px;align-items:center;border:1px solid var(--line);background:white;min-width:49px;flex:1;padding:8px 4px;border-radius:8px;color:var(--ink)}.week-tile span{font-size:10px;color:var(--muted)}.week-tile strong{font-size:15px}.week-tile small{font-size:9px;color:var(--muted);white-space:nowrap}.week-tile.chosen{border-color:var(--purple);box-shadow:0 0 0 1px var(--purple);background:#f4effc}.week-tile:disabled{background:#f4f5f6;opacity:.55}.future-panel{margin-top:16px;padding:20px}.future-panel h3{font-size:14px;margin-bottom:6px}.future-panel p{font-size:12px}.calendar-week-title{margin:14px 0 8px;color:var(--muted);font-size:10px!important}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.calendar-weekday{text-align:center;font-size:10px;color:var(--muted)}.calendar-day{height:31px;min-width:0;border-radius:6px;border:1px solid transparent;font-size:12px;padding:3px;color:var(--ink);position:relative}.calendar-day.available{background:var(--free);border-color:#a9c9b6}.calendar-day.occupied{background:var(--busy);border-color:#bdc7d3}.calendar-day.mine{background:var(--own);color:white}.calendar-day.unavailable{background:#f4f5f6;color:#aab0b7}.calendar-day.chosen{outline:2px solid var(--purple);outline-offset:1px}.calendar-day:hover:not(:disabled){box-shadow:inset 0 0 0 2px var(--purple)}#weeks-overview{margin:16px 20px 20px;max-height:690px;overflow:auto;overscroll-behavior:contain}.weeks-table{min-width:760px;table-layout:fixed}.weeks-table th,.weeks-table td{padding:5px 4px;text-align:center;font-size:11px;white-space:nowrap;overflow:visible}.weeks-table thead th{position:sticky;top:0;z-index:2;background:white;padding:9px 4px;border-bottom:1px solid var(--line)}.weeks-table thead th span,.weeks-table thead th strong{display:block}.weeks-table thead th span{font-weight:400;font-size:10px}.weeks-table thead th strong{font-size:14px;color:var(--ink)}.weeks-table th:first-child{position:sticky;left:0;z-index:1;background:white;width:78px}.weeks-table thead th:first-child{z-index:3}.weeks-table thead th.chosen{background:#eee6fa}.weeks-table .selected-row th{background:#f5f0fc}.weeks-table .overview-cell{width:100%;min-width:33px;height:35px;font-size:16px}.seat-row-label{background:transparent;border:0;color:var(--ink);font-size:12px;font-weight:600;padding:6px 0;width:100%}.weeks-table tr.selected-row .seat-row-label{color:var(--purple)}@media(max-width:1100px){.plan-controls{padding:8px 16px 12px;flex-wrap:wrap}.week-tile{min-width:44px}#week-strip{margin-left:16px;margin-right:16px}.future-panel{padding:16px}.calendar-grid{gap:4px}}@media(max-width:800px){.plan-controls{gap:8px}.zoom-controls button{padding:5px 8px}#week-strip{margin-bottom:10px}.week-tile{min-width:46px}.future-panel{padding:24px}.calendar-day{height:38px;font-size:14px}.calendar-grid{gap:7px}.calendar-weekday{font-size:12px}#weeks-overview{margin:14px 12px;max-height:560px}.weeks-table{min-width:730px}#map{min-height:0;max-height:550px;overscroll-behavior:contain}.topbar nav{scrollbar-width:thin}.plan-top .text-button{white-space:nowrap}}
.quick-seat-label{display:none}@media(max-width:800px){.quick-seat-label{display:block;margin:0 16px 12px;color:var(--muted);font-size:12px}.quick-seat-label select{padding:10px;font-size:15px}.plan-controls{padding-bottom:10px}}
