@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600;700&display=swap";:root{color:#e9f3fb;font-synthesis:none;background:#050b12;font-family:DM Sans,Noto Sans SC,sans-serif}*{box-sizing:border-box}body{background:radial-gradient(circle at 70% 10%,#10283b 0,#0000 32%),#050b12;min-width:1100px;margin:0}button,input{font:inherit}main{grid-template-rows:auto auto 1fr auto;gap:14px;height:100vh;padding:24px 28px;display:grid}header{justify-content:space-between;align-items:center;display:flex}h1{letter-spacing:-1px;margin:4px 0 0;font-size:30px}.eyebrow{letter-spacing:2px;color:#65c8ef;font-size:11px}.refresh,.tabs button{color:#b9cbd8;cursor:pointer;background:#0b1723;border:1px solid #25394b;border-radius:10px;padding:10px 15px}.refresh:hover,.tabs button:hover{border-color:#55c8f5}.toolbar{background:#09131e;border:1px solid #182a3a;border-radius:16px;align-items:center;gap:12px;padding:10px;display:flex}.tabs{gap:6px;display:flex}.tabs button.active{color:#fff;background:#133b53;border-color:#42bde9}.toolbar input{color:#fff;background:#050d16;border:1px solid #213448;border-radius:10px;outline:none;flex:1;padding:11px 14px}.toolbar input:focus{border-color:#48bce6}.stat{border-left:1px solid #1b3142;flex-direction:column;min-width:86px;padding:0 12px;display:flex}.stat b{font-size:19px}.stat span{color:#71899a;font-size:11px}.workspace{grid-template-columns:1fr 320px;gap:14px;min-height:0;display:grid}.scene-wrap{min-height:0;position:relative}.scene{border:1px solid #1a2b3b;border-radius:18px;height:100%;min-height:0;overflow:hidden;box-shadow:inset 0 0 50px #34b3e80d}.series-tabs{z-index:2;gap:6px;display:flex;position:absolute;top:12px;left:14px}.series-tabs button,.view-tabs button{color:#8fa9ba;cursor:pointer;background:#07121ce0;border:1px solid #294357;border-radius:8px;padding:7px 10px;font-size:11px}.series-tabs button.active,.view-tabs button.active{color:#fff;background:#17617e;border-color:#42bde9}.view-tabs{z-index:2;gap:6px;display:flex;position:absolute;top:12px;right:14px}.mapping-note{z-index:2;color:#7fa4ba;pointer-events:none;background:#06111bdb;border:1px solid #264357;border-radius:8px;padding:7px 10px;font-size:11px;position:absolute;bottom:12px;left:14px}aside{background:linear-gradient(160deg,#0d1c29,#08121c);border:1px solid #1e3243;border-radius:18px;padding:24px;position:relative;overflow:auto}aside h2{word-break:break-all;margin:14px 0 24px;font-size:21px}.close{color:#7e95a6;cursor:pointer;background:0 0;border:0;font-size:25px;position:absolute;top:12px;right:15px}.status{color:#39d689;background:#103524;border:1px solid #1b744b;border-radius:999px;padding:5px 9px;font-size:12px;display:inline-block}.status.occupied{color:#ff967f;background:#3a1d1b;border-color:#7e3b30}dl{margin:0}dl div{border-bottom:1px solid #192b39;padding:13px 0}dt{color:#718a9d;text-transform:uppercase;margin-bottom:5px;font-size:11px}dd{color:#e4eef5;margin:0}.primary{color:#94b7c5;background:#1f5369;border:0;border-radius:11px;width:100%;margin-top:24px;padding:12px}.primary:disabled{cursor:not-allowed;opacity:.72}.hint{color:#667f90;font-size:11px;line-height:1.6}.empty{text-align:center;color:#698294;place-content:center;height:100%;display:grid}.empty span{color:#2c7594;font-size:40px}.error{color:#ffb2b7;background:#421b20;border:1px solid #7c3038;border-radius:10px;padding:10px 14px}footer{color:#6f8798;justify-content:flex-end;gap:22px;font-size:12px;display:flex}.dot{border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.dot.free{background:#35d07f}.dot.used{background:#ff745c}@media (width<=1200px){main{padding:16px}.workspace{grid-template-columns:1fr 285px}.tabs button{padding:9px}}.region-tabs{z-index:2;gap:6px;display:flex;position:absolute;top:12px;left:14px}.region-tabs button{color:#8fa9ba;cursor:pointer;background:#07121ce0;border:1px solid #294357;border-radius:8px;padding:7px 10px;font-size:11px}.region-tabs button.active{color:#fff;background:#17617e;border-color:#42bde9}.series-tabs{top:50px}.department-view-toggle{color:#cfc4ff;cursor:pointer;white-space:nowrap;background:#171331;border:1px solid #5d4bb2;border-radius:10px;padding:10px 12px;font-size:12px}.department-view-toggle:hover:not(:disabled){color:#fff;background:#27204f;border-color:#a18dff}.department-view-toggle.active{color:#fff;background:#6d52d4;border-color:#b5a7ff;box-shadow:0 0 0 2px #8d6cff29}.department-view-toggle:disabled{cursor:not-allowed;opacity:.46}.department-navigator{color:#c8bdff;white-space:nowrap;background:#100d29;border:1px solid #4d3e92;border-radius:10px;align-items:center;gap:5px;padding:5px 6px;font-size:11px;display:flex}.department-navigator span{padding:0 4px}.department-navigator button{color:#e3ddff;cursor:pointer;background:#211c47;border:1px solid #5a49a4;border-radius:7px;padding:5px 7px;font-size:10px}.department-navigator button:hover:not(:disabled){background:#443783}.department-navigator button:disabled{opacity:.45;cursor:not-allowed}.department-stat b{color:#b8a8ff}.department-stat span{color:#9f94df}.team-selector{color:#c8bdff;white-space:nowrap;background:#100d29;border:1px solid #4d3e92;border-radius:10px;align-items:center;gap:7px;padding:5px 9px;font-size:11px;display:flex}.team-selector select{color:#f0ecff;background:#211c47;border:1px solid #5a49a4;border-radius:7px;outline:none;max-width:150px;padding:5px 24px 5px 7px;font-size:11px}.team-selector select:focus{border-color:#b5a7ff;box-shadow:0 0 0 2px #8d6cff29}.control-hint{z-index:2;color:#7fa4ba;pointer-events:none;background:#06111bdb;border:1px solid #264357;border-radius:8px;padding:7px 10px;font-size:11px;position:absolute;bottom:12px;right:14px}.team-color-legend{z-index:3;color:#dbeaf2;pointer-events:none;background:#06111be6;border:1px solid #3a6880e0;border-radius:10px;flex-wrap:wrap;justify-content:center;align-items:center;gap:5px 9px;width:min(720px,100% - 500px);min-width:260px;padding:7px 10px;font-size:10px;line-height:1.2;display:flex;position:absolute;bottom:12px;left:50%;transform:translate(-50%);box-shadow:0 8px 28px #0000004d}.team-color-legend-title{color:#88b5c9;white-space:nowrap;font-weight:700}.team-color-key{white-space:nowrap;align-items:center;gap:4px;display:inline-flex}.team-color-key i{border:1px solid #ffffff8a;border-radius:2px;flex:none;width:8px;height:8px;box-shadow:0 0 0 1px #00000042}.global-search{flex:1;min-width:240px;position:relative}.global-search input{width:100%}.search-results{z-index:20;background:#081521;border:1px solid #284257;border-radius:12px;max-height:390px;padding:7px;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:auto;box-shadow:0 18px 50px #0000008c}.search-results button{text-align:left;color:#dceaf3;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #162b3a;border-radius:8px;align-items:center;gap:10px;width:100%;padding:10px;display:flex}.search-results button:last-child{border-bottom:0}.search-results button:hover{background:#112b3b}.result-type{color:#7ce2ff;background:#113b4b;border-radius:6px;flex:none;padding:4px 7px;font-size:10px}.result-type.meeting{color:#bd9cff;background:#30224a}.result-main{flex-direction:column;gap:3px;min-width:0;display:flex}.result-main b{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.result-main small{color:#7992a3}.no-results{color:#71899a;text-align:center;padding:16px;font-size:12px}.status.room{color:#bda1ff;background:#2e2148;border-color:#674d98}.result-type.person{color:#ffd39c;background:#52361d}.related-workstations dd{flex-wrap:wrap;gap:7px;display:flex}.related-workstations button{color:#dff5ff;cursor:pointer;background:#102a38;border:1px solid #2a6079;border-radius:8px;align-items:center;gap:7px;max-width:100%;padding:7px 8px;display:flex}.related-workstations button:hover{background:#16445a;border-color:#56d0f4}.related-workstations button.current{color:#c9ffe1;background:#123a2a;border-color:#35d07f}.related-workstations button span{font-size:11px;font-weight:700}.related-workstations button small{color:#83b6c8;font-size:10px}.related-workstations button.current small{color:#8ef0b6}@media (width<=900px){body{min-width:0}main{gap:10px;height:auto;min-height:100vh;padding:14px}header{align-items:flex-start}h1{font-size:24px}.eyebrow{font-size:9px}.refresh{padding:8px 10px}.toolbar{flex-wrap:wrap}.tabs{width:100%}.tabs button{flex:1;padding:9px 5px;font-size:12px}.global-search{flex-basis:100%;order:2}.stat{flex:1;order:3}.workspace{grid-template-rows:68vh auto;grid-template-columns:1fr}.scene-wrap{height:68vh}aside{min-height:260px}.region-tabs,.series-tabs{left:10px}.view-tabs{right:10px}.mapping-note{bottom:10px;left:10px}footer{flex-wrap:wrap;justify-content:flex-start}}.header-actions{align-items:center;gap:10px;display:flex}.login{color:#fff;cursor:pointer;background:#17617e;border:1px solid #42bde9;border-radius:10px;padding:10px 15px}.login:hover{background:#1b718f}.user-chip{background:#0b1723;border:1px solid #264357;border-radius:12px;align-items:center;gap:8px;padding:5px 7px 5px 5px;font-size:12px;display:flex}.user-chip img{object-fit:cover;border-radius:50%;width:28px;height:28px}.user-chip em{color:#8de6b7;background:#123828;border:1px solid #246d4a;border-radius:999px;padding:3px 6px;font-size:10px;font-style:normal}.user-chip button{color:#7895a8;cursor:pointer;background:0 0;border:0}.user-chip button:hover{color:#fff}.notice{z-index:80;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;min-width:340px;max-width:70vw;padding:12px 14px;display:flex;position:fixed;top:22px;left:50%;transform:translate(-50%);box-shadow:0 15px 45px #00000073}.notice.success{color:#a9f3cd;background:#103524;border:1px solid #1b744b}.notice.error{color:#ffc0c4;background:#421b20;border:1px solid #7c3038}.notice button{color:inherit;cursor:pointer;background:0 0;border:0;font-size:18px}.booking-controls{margin-top:20px}.booking-controls label{color:#7893a5;justify-content:space-between;align-items:center;font-size:12px;display:flex}.booking-controls select{color:#e8f4fb;background:#07131e;border:1px solid #294357;border-radius:8px;min-width:130px;padding:8px 10px}.booking-controls .primary{margin-top:12px}.primary.book,.primary.workstation-edit{color:#fff;cursor:pointer;background:#17617e}.primary.book:hover:not(:disabled),.primary.workstation-edit:hover:not(:disabled){background:#1d7596}.primary.book:disabled,.primary.workstation-edit:disabled{cursor:not-allowed;color:#8094a1;background:#243b48}.modal-backdrop{z-index:120;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#01070cc7;place-items:center;padding:28px;display:grid;position:fixed;inset:0}.workstation-editor{background:linear-gradient(155deg,#102b3d,#08131e 66%);border:1px solid #28536b;border-radius:20px;width:min(560px,100vw - 36px);max-height:min(720px,100vh - 36px);padding:28px;position:relative;overflow:auto;box-shadow:0 30px 90px #000000a6}.workstation-editor h2{margin:7px 38px 22px 0;font-size:24px}.editor-eyebrow{color:#66d4ff;letter-spacing:1.6px;font-size:10px}.editor-close{color:#85a1b3;cursor:pointer;background:0 0;border:0;font-size:28px;position:absolute;top:14px;right:18px}.current-assignee{background:#07131e;border:1px solid #234155;border-radius:12px;justify-content:space-between;gap:20px;margin-bottom:20px;padding:14px 16px;display:flex}.current-assignee span{color:#7894a7;font-size:12px}.current-assignee strong{color:#f3f9fc}.employee-search-label{color:#9eb6c6;margin-bottom:7px;font-size:12px;display:block}.employee-search-input{color:#fff;background:#050d16;border:1px solid #2b536a;border-radius:11px;outline:none;width:100%;padding:12px 14px}.employee-search-input:focus{border-color:#50c8f4;box-shadow:0 0 0 3px #50c8f41c}.employee-results{max-height:310px;margin-top:10px;overflow:auto}.employee-results>button{text-align:left;color:#e6f1f7;cursor:pointer;background:0 0;border:0;border-bottom:1px solid #173044;grid-template-columns:38px 1fr auto;align-items:center;gap:11px;width:100%;padding:10px;display:grid}.employee-results>button:hover{background:#123044;border-radius:9px}.employee-results img,.avatar-placeholder{object-fit:cover;border-radius:50%;width:36px;height:36px}.avatar-placeholder{color:#fff;background:#2187a6;place-items:center;font-weight:700;display:grid}.employee-results>button>span:nth-child(2){flex-direction:column;gap:3px;min-width:0;display:flex}.employee-results small{color:#648195;text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.employee-results>button>b{color:#73ddff;font-size:11px}.editor-message{text-align:center;color:#7893a5;padding:24px 10px;font-size:12px}.editor-message.error-text{color:#ff9a9f}.release-workstation{color:#ff9f8c;cursor:pointer;background:#341a19;border:1px solid #844038;border-radius:10px;width:100%;margin-top:18px;padding:11px}.release-workstation:hover:not(:disabled){background:#48201d}.editor-footnote{color:#638093;margin:14px 0 0;font-size:10px;line-height:1.6}@media (width<=900px){.header-actions{flex-direction:column;align-items:flex-end}.user-chip span{text-overflow:ellipsis;white-space:nowrap;max-width:80px;overflow:hidden}.user-chip em{display:none}.notice{min-width:calc(100vw - 28px);max-width:calc(100vw - 28px)}.modal-backdrop{padding:12px}.workstation-editor{width:100%;max-height:calc(100vh - 24px);padding:22px}}.scene canvas{display:block;width:100%!important;height:100%!important}.export-toggle{color:#d8f4ff;cursor:pointer;background:#102a38;border:1px solid #3a6d82;border-radius:10px;min-width:132px;padding:10px 15px}.export-toggle:hover:not(:disabled){background:#153849;border-color:#55c8f5}.export-toggle:disabled{cursor:wait;opacity:.7}body{min-width:320px}main{min-width:0;min-height:100dvh}@media (width<=1180px){main{height:auto;min-height:100dvh;padding:16px}.toolbar{flex-wrap:wrap}.global-search{flex-basis:100%;order:2}.stat{flex:1;order:3;min-width:0}.workspace{grid-template-columns:minmax(0,1fr) 285px;min-height:650px}.scene-wrap{min-width:0}.scene{min-height:650px}footer{flex-wrap:wrap}}@media (width<=900px){main{gap:10px;padding:12px}header{gap:16px}.header-actions{flex-direction:row;align-items:center}.toolbar{padding:8px}.workspace{min-height:0;display:block}.scene-wrap{height:clamp(500px,64dvh,720px)}.scene{min-height:0}aside{min-height:0;max-height:none;margin-top:10px;padding:20px;display:none}aside.open{display:block}.global-search{min-width:0}.search-results{max-height:45dvh}.region-tabs,.series-tabs{scrollbar-width:none;max-width:calc(100% - 20px);overflow-x:auto}.region-tabs::-webkit-scrollbar{display:none}.series-tabs::-webkit-scrollbar{display:none}.view-tabs{max-width:calc(100% - 20px)}footer{gap:10px 18px;padding:4px 2px 8px}.workstation-editor{max-height:calc(100dvh - 24px)}}@media (width<=600px){main{padding:10px}header{flex-direction:column;align-items:stretch;gap:10px;min-width:0}h1{font-size:22px}.header-actions{flex-wrap:wrap;align-items:center;width:100%;min-width:0;display:flex}.header-actions>.refresh,.header-actions>.login,.export-pdf{flex:1 1 0;min-width:0}.header-actions>.refresh,.header-actions>.login,.export-toggle{width:100%;padding:9px 7px}.user-chip{flex:1 0 100%;min-width:0}.user-chip span{text-overflow:ellipsis;white-space:nowrap;max-width:none;overflow:hidden}.toolbar{border-radius:13px;gap:8px}.tabs{scrollbar-width:none;width:100%;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tabs button{flex:none;min-width:108px;padding:9px 10px}.global-search{flex-basis:100%}.toolbar input{font-size:14px}.department-view-toggle{flex:auto}.team-selector{flex:180px;justify-content:space-between}.team-selector select{flex:1;max-width:calc(100vw - 150px)}.department-navigator{flex-basis:100%;order:1;justify-content:space-between}.stat{padding:0 8px}.stat b{font-size:17px}.stat span{font-size:10px}.scene-wrap{height:clamp(390px,56dvh,560px)}.region-tabs,.series-tabs{left:8px;right:8px}.region-tabs{top:8px}.series-tabs{top:42px}.region-tabs button,.series-tabs button,.view-tabs button{flex:none;padding:6px 8px;font-size:10px}.view-tabs{max-width:calc(100% - 16px);top:auto;bottom:8px;right:8px;overflow-x:auto}.mapping-note,.control-hint{display:none}aside{border-radius:15px;padding:18px}aside h2{margin-bottom:18px;font-size:19px}dl div{padding:10px 0}.primary{margin-top:18px}.booking-controls label{flex-direction:column;align-items:stretch;gap:7px}.booking-controls select{width:100%}.notice{min-width:calc(100vw - 20px);max-width:calc(100vw - 20px);top:10px}footer{grid-template-columns:repeat(2,minmax(0,1fr));font-size:10px;display:grid}.modal-backdrop{place-items:end center;padding:0}.workstation-editor{width:100%;max-height:92dvh;padding:20px 16px calc(18px + env(safe-area-inset-bottom));border-radius:20px 20px 0 0}.workstation-editor h2{font-size:20px}.current-assignee,.binding-type-control{gap:12px;padding:11px 12px}.binding-type-control{flex-direction:column;align-items:stretch;margin-top:-8px}.binding-type-control select{width:100%;min-width:0}.employee-results{max-height:34dvh}.employee-results>button{grid-template-columns:34px minmax(0,1fr);gap:9px}.employee-results>button>b{grid-column:2}.employee-results img,.avatar-placeholder{width:32px;height:32px}}main{grid-template-rows:auto auto auto minmax(0,1fr) auto}.status-strip{min-height:0}.status-strip:empty{height:0}.sync-warning{color:#f1ce7a;background:#5c43148c;border:1px solid #a17723b8;border-radius:8px;align-items:center;min-height:32px;padding:6px 10px;font-size:11px;line-height:1.35;display:flex}.sync-warning:before{content:"●";color:#e4ad3e;flex:none;margin-right:8px;font-size:8px}.booking-window{background:#1452692e;border:1px solid #245269;border-radius:9px;gap:5px;margin:0 0 12px;padding:10px 11px;display:grid}.booking-window span{color:#7fa5b9;letter-spacing:.5px;font-size:10px}.booking-window strong{color:#eaf8ff;font-size:12px;line-height:1.45}.booking-window.unavailable{background:#69362c38;border-color:#69453f}.booking-window.unavailable strong{color:#ffb0a1}.booking-controls select{min-width:180px}.booking-controls select:disabled{cursor:not-allowed;opacity:.64}@media (width<=600px){.booking-window{padding:9px 10px}.booking-window strong{font-size:11px}.booking-controls select{min-width:0}}@media (width<=900px){.team-color-legend{width:min(680px,100% - 28px);bottom:46px}}@media (width<=600px){.team-color-legend{gap:4px 7px;width:calc(100% - 16px);max-height:76px;padding:6px 8px;font-size:9px;bottom:48px;overflow:auto}}
