/* Sysimple One virtual office: shared theme tokens, fictional prototype. */
#virtual-office,.vo-preview-header,.vo-dialog{box-sizing:border-box;font-family:var(--adm-font,Segoe UI,sans-serif);font-size:13px;color:var(--adm-text,#263238)}
#virtual-office *,#virtual-office *::before,#virtual-office *::after,.vo-dialog *{box-sizing:border-box}
#virtual-office{background:var(--adm-bg,#f3f5f7);min-height:calc(100vh - 66px);padding:20px 22px}
.vo-preview-header{display:flex;align-items:center;gap:22px;min-height:64px;padding:8px 24px;border-bottom:1px solid var(--adm-border);background:var(--adm-surface);font-weight:600}
.vo-preview-header label{margin-left:auto;display:flex;align-items:center;gap:10px;font-size:12px;color:var(--adm-text-soft)}
.vo-brand{display:flex;flex-direction:column;line-height:1;text-decoration:none;color:var(--adm-primary,#3c8dbc);min-width:54px}.vo-brand b{font-size:26px;letter-spacing:-1.5px}.vo-brand small{font-size:8px;letter-spacing:2.2px;margin-top:4px}
.vo-app{max-width:1900px;margin:0 auto}.vo-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px}.vo-heading h1{margin:3px 0 6px;font-size:25px;letter-spacing:-.6px;font-weight:650}.vo-heading p{margin:0;line-height:1.6;color:var(--adm-text-soft)}
.vo-eyebrow{color:var(--adm-text-soft);font-size:10px;text-transform:uppercase;font-weight:700;letter-spacing:1.6px}.vo-tag,.vo-pill{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--adm-border);background:var(--adm-surface-2);padding:5px 8px;border-radius:3px;font-size:11px;white-space:nowrap;font-weight:500}
.vo-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:14px}.vo-tabs{display:flex;gap:3px;flex-wrap:wrap;padding:3px;border:1px solid var(--adm-border);border-radius:4px;background:var(--adm-surface)}
#virtual-office button,.vo-dialog button{font:inherit;min-height:34px;padding:7px 11px;color:var(--adm-text);border:1px solid var(--adm-border);border-radius:3px;background:var(--adm-surface);cursor:pointer;transition:background .15s,border-color .15s}#virtual-office button:hover,.vo-dialog button:hover{background:var(--adm-surface-2);border-color:var(--adm-primary)}
#virtual-office :focus-visible,.vo-dialog :focus-visible,.vo-preview-header :focus-visible{outline:3px solid var(--adm-primary,#3c8dbc);outline-offset:3px}
.vo-tabs button{border-color:transparent!important;background:transparent!important}.vo-tabs button[aria-pressed="true"]{background:var(--adm-primary-soft)!important;color:var(--adm-primary);font-weight:650}
.vo-search{display:flex;align-items:center;gap:8px;margin-left:auto;color:var(--adm-text-soft);font-size:12px}.vo-search input{width:235px}
.vo-search input,.vo-form input,.vo-form select,.vo-form textarea,.vo-preview-header select{min-height:35px;background:var(--adm-input-bg,var(--adm-surface));border:1px solid var(--adm-border);border-radius:3px;padding:8px 10px;color:var(--adm-text);font:inherit}.vo-search input::placeholder,.vo-form input::placeholder,.vo-form textarea::placeholder{color:var(--adm-text-soft);opacity:1}
.vo-layout{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:14px;align-items:start}.vo-main{min-width:0}.vo-map-panel,.vo-sidebar,.vo-queue{background:var(--adm-surface);border:1px solid var(--adm-border);border-radius:5px;overflow:hidden}.vo-map-tools{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid var(--adm-border);font-size:12px;color:var(--adm-text-soft)}.vo-map-tools strong{color:var(--adm-text);font-weight:600}.vo-map-scroll{overflow:auto;background:var(--adm-bg-2,var(--adm-bg));scrollbar-color:var(--adm-border) transparent}.vo-map{display:block;width:100%;min-width:690px;min-height:460px}.vo-map svg{display:block;width:100%;min-width:690px}
.vo-map .room-floor{fill:var(--adm-surface);stroke:var(--adm-border);stroke-width:1.2}.vo-map .room-wall{fill:var(--adm-surface-2);stroke:var(--adm-border)}.vo-map .room-label{fill:var(--adm-text);font-weight:650;font-size:13px;pointer-events:none}.vo-map .room-caption{fill:var(--adm-text-soft);font-size:9px;pointer-events:none}.vo-map .room-hit{cursor:pointer;outline:none}.vo-map .room-hit:hover .room-floor,.vo-map .room-hit:focus-visible .room-floor,.vo-map .is-selected .room-floor{stroke:var(--adm-primary,#3c8dbc);stroke-width:2.8;fill:var(--adm-primary-soft)}.vo-map .desk-hit{cursor:pointer;outline:none}.vo-map .desk-top{fill:var(--adm-surface-2);stroke:var(--adm-border);stroke-width:1}.vo-map .desk-screen{fill:#41667b;stroke:#244858;stroke-width:1}.vo-map .desk-name{fill:var(--adm-text);font-size:10px;font-weight:600;pointer-events:none}.vo-map .desk-role{fill:var(--adm-text-soft);font-size:8px;pointer-events:none}.vo-map .desk-hit:hover .desk-top,.vo-map .desk-hit:focus-visible .desk-top,.vo-map .desk-hit.is-selected .desk-top{stroke:#3c8dbc;stroke-width:2.5;fill:var(--adm-primary-soft)}.vo-map .avatar{stroke:var(--adm-surface);stroke-width:2}.vo-map .is-muted{opacity:.2}.vo-map .vo-lounge{fill:var(--adm-surface-2);stroke:var(--adm-border);stroke-dasharray:4 4}.vo-map .vo-plant{fill:#739585;stroke:#4d7866}
.vo-sidebar{max-height:78vh;overflow:auto;padding:16px;scrollbar-color:var(--adm-border) transparent}.vo-section-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px}.vo-section-head h2,.vo-sidebar h2{font-size:17px;margin:0;line-height:1.3}.vo-section-head h3,.vo-sidebar h3{font-size:13px;margin:18px 0 10px}.vo-subtitle{color:var(--adm-text-soft);line-height:1.6;margin:8px 0 16px}.vo-card{padding:12px;border:1px solid var(--adm-border);background:var(--adm-surface-2);border-radius:4px;margin:10px 0}.vo-card p{margin:6px 0;line-height:1.6}.vo-list{display:grid;gap:7px}.vo-person{width:100%;display:flex;align-items:center;text-align:left;gap:10px}.vo-person>span:not(.vo-avatar){min-width:0;flex:1}.vo-person strong,.vo-person small{display:block}.vo-person small{font-size:11px;color:var(--adm-text-soft);margin-top:4px}.vo-avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;font-size:11px;font-weight:700;background:var(--adm-primary-soft);color:var(--adm-primary)}.vo-status{font-size:10px;display:inline-flex;align-items:center;gap:4px;color:var(--adm-text-soft);line-height:1.5}.vo-task{padding:11px 0;border-bottom:1px solid var(--adm-border)}.vo-task:last-child{border-bottom:0}.vo-task-title{display:block;font-weight:600;line-height:1.5}.vo-task-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;margin-top:7px;font-size:11px;color:var(--adm-text-soft)}.vo-activity{border-left:2px solid var(--adm-primary);padding:4px 0 4px 10px;margin:12px 0;line-height:1.5}.vo-activity small{display:block;color:var(--adm-text-soft);margin-top:3px}.vo-empty{padding:24px 14px;text-align:center;color:var(--adm-text-soft);line-height:1.6}
.vo-sector-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}.vo-sector{display:flex!important;flex-direction:column;text-align:left;gap:10px;padding:16px!important;min-height:135px!important}.vo-sector strong{font-size:14px}.vo-sector p,.vo-sector small{margin:0;line-height:1.6;color:var(--adm-text-soft)}.vo-sector.is-selected{border-color:var(--adm-primary)!important;background:var(--adm-primary-soft)!important}.vo-queue{margin-top:14px}.vo-queue-head{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--adm-border)}.vo-queue-head h2{font-size:14px;margin:0}.vo-request{width:100%;text-align:left;display:flex;align-items:center;justify-content:space-between;gap:12px;border:0!important;border-radius:0!important;border-bottom:1px solid var(--adm-border)!important;padding:12px 14px!important}.vo-request strong,.vo-request small{display:block}.vo-request small{color:var(--adm-text-soft);font-size:11px;line-height:1.5;margin-top:4px}.vo-request:last-child{border-bottom:0!important}.vo-footnote{font-size:11px;color:var(--adm-text-soft);line-height:1.6;margin-top:12px}.vo-notice{background:var(--adm-primary-soft);border:1px solid var(--adm-border);border-left:3px solid #3c8dbc;padding:10px 12px;margin:12px 0;line-height:1.6}#vo-feedback{font-size:12px;color:var(--adm-text);line-height:1.5}#vo-feedback:not(:empty){padding:10px 12px;background:var(--adm-primary-soft);border-left:3px solid var(--adm-primary);margin:10px 0}
.vo-dialog{width:calc(100% - 32px);max-width:600px;max-height:88vh;overflow:auto;background:var(--adm-surface);border:1px solid var(--adm-border);padding:20px;border-radius:5px;box-shadow:var(--adm-shadow)}.vo-dialog::backdrop{background:rgba(10,20,30,.6)}.vo-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.vo-dialog-head h2{font-size:19px;margin:0}.vo-form{display:grid;gap:14px}.vo-form label{display:grid;gap:6px;font-size:12px;font-weight:600}.vo-form input,.vo-form select,.vo-form textarea{width:100%;font-weight:400}.vo-form textarea{resize:vertical;min-height:90px}.vo-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.vo-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:16px}.vo-primary{background:#3c8dbc!important;border-color:#3c8dbc!important;color:#fff!important}.vo-primary:hover{background:#30779f!important}.vo-dialog p{line-height:1.6;color:var(--adm-text-soft)}
@media(min-width:1700px){.vo-layout{grid-template-columns:minmax(0,1fr) 380px}.vo-heading h1{font-size:28px}}
@media(max-width:1100px){.vo-layout{grid-template-columns:minmax(0,1fr) 310px}#virtual-office{padding:16px}.vo-search{margin-left:0}.vo-toolbar{align-items:flex-start}.vo-search input{width:210px}}
@media(max-width:850px){.vo-layout{grid-template-columns:minmax(0,1fr)}.vo-sidebar{max-height:none}.vo-preview-header{padding:9px 14px;gap:12px;flex-wrap:wrap}.vo-preview-header>.vo-tag{display:none}.vo-preview-header label{font-size:11px}.vo-heading{align-items:flex-start}.vo-heading h1{font-size:22px}.vo-map{min-height:0}.vo-sector-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){#virtual-office{padding:12px}.vo-preview-header>span:not(.vo-tag){font-size:11px}.vo-preview-header label{margin-left:0;flex:1;justify-content:flex-end}.vo-preview-header select{max-width:110px}.vo-heading{flex-wrap:wrap;gap:9px}.vo-toolbar{display:block}.vo-tabs{margin-bottom:10px}.vo-tabs button{flex:1}.vo-search{display:grid;gap:5px}.vo-search input{width:100%}.vo-map-tools{align-items:flex-start;flex-wrap:wrap}.vo-sector-grid{grid-template-columns:minmax(0,1fr)}.vo-form-grid{grid-template-columns:1fr}.vo-request{align-items:flex-start;flex-wrap:wrap}.vo-queue-head{flex-wrap:wrap}#virtual-office button,.vo-dialog button{min-height:40px}.vo-actions{flex-wrap:wrap}.vo-tag{white-space:normal}}
@media(prefers-reduced-motion:reduce){#virtual-office button,.vo-dialog button{transition:none}}
/* Actual SVG and control markup: preserve the illustrated floor and desk surfaces. */
body:has(>.vo-preview-header){margin:0}
.vo-map .room-floor{fill:revert;stroke:#d8d2c7;stroke-width:1.2}
.vo-map .room-wall{fill:none;stroke:#d6d3c9;stroke-width:7}
.vo-map .vo-room.is-selected .room-floor{fill:revert;stroke:#3c8dbc;stroke-width:5}
.vo-map .room-hit:hover~.room-caption{fill:#175f88}
.vo-map .room-hit:hover .room-label,.vo-map .room-hit:focus-visible .room-label{fill:#175f88;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:4px}
.vo-map .room-hit:focus-visible>rect{fill:rgba(60,141,188,.12);stroke:#3c8dbc;stroke-width:3}
.vo-map .room-hit:hover>rect{fill:rgba(60,141,188,.10)}
.vo-map .desk-hit:hover .desk-outline,.vo-map .desk-hit:focus-visible .desk-outline{stroke:#3c8dbc;fill:rgba(60,141,188,.08);stroke-width:3}
.vo-map .desk-hit.is-selected .desk-outline{stroke:#3c8dbc;stroke-width:3}
.vo-map .desk-name,.vo-map .room-label{fill:#263238}
.vo-map .room-caption{fill:#566267}
.vo-map .desk-top{fill:#c1a782;stroke:#ad9470}
.vo-map .vo-lounge{fill:revert;stroke:none;stroke-dasharray:none}
html[data-theme="dark"] .vo-map .room-floor,html[data-theme="sysimple"] .vo-map .room-floor{filter:brightness(.91)}
.vo-map-tools{flex-wrap:wrap;align-items:flex-end;justify-content:flex-start;gap:12px}
.vo-map-tools .vo-search{display:grid;gap:5px;margin:0;flex:1 1 230px;min-width:0;max-width:380px;font-size:11px;line-height:1.5}
.vo-map-tools .vo-search input{width:100%;min-width:0}
#virtual-office #vo-family-label{display:grid;gap:5px;flex:0 1 175px;font-size:11px;line-height:1.5;min-width:0}
#virtual-office #vo-family-label[hidden],#virtual-office #vo-zoom[hidden]{display:none}
#vo-zoom{display:flex;align-items:center;gap:8px;margin-left:auto;flex-shrink:0;min-height:35px}
#vo-zoom-value{min-width:40px;text-align:center;font-size:11px}
#virtual-office select{font:inherit;min-height:35px;max-width:100%;min-width:0;padding:7px 8px;background:var(--adm-input-bg,var(--adm-surface));color:var(--adm-text);border:1px solid var(--adm-border);border-radius:3px}
.vo-sidebar>label,.vo-availability,.vo-task-filter,.vo-task-status{display:grid;gap:6px;font-size:11px;color:var(--adm-text-soft);line-height:1.5;margin:12px 0}
.vo-sidebar>label select,.vo-availability select,.vo-task-filter select,.vo-task-status select{width:100%;color:var(--adm-text)}
.vo-sidebar{overflow-wrap:anywhere;min-width:0;position:sticky;top:14px}
.vo-sidebar p{line-height:1.65}.vo-sidebar>.vo-tabs{margin-top:14px}.vo-sidebar>.vo-person+.vo-person{margin-top:7px}.vo-sidebar>[data-action="open-department"]{margin:0 5px 6px 0}
.vo-metrics{display:grid;grid-template-columns:1fr 1fr;border:1px solid var(--adm-border);border-radius:4px;background:var(--adm-surface-2);margin:16px 0}
.vo-metrics>div{padding:14px 12px;display:flex;flex-direction:column;gap:6px}.vo-metrics>div+div{border-left:1px solid var(--adm-border)}.vo-metrics strong{font-size:27px;font-weight:600;line-height:1}.vo-metrics span{font-size:11px;color:var(--adm-text-soft);line-height:1.5}
.vo-sector-intro{padding:18px 18px 0}.vo-sector-intro h2{margin:0 0 8px;font-size:20px}.vo-sector-intro p{color:var(--adm-text-soft);line-height:1.6;margin:0 0 16px}.vo-sector-grid{padding:0 18px 18px}.vo-sector-number{font-size:11px;letter-spacing:1px;color:var(--adm-text-soft)}.vo-sector-open{color:var(--adm-primary);font-size:11px;font-weight:600;margin-top:auto;padding-top:4px}.vo-sector>span:not(.vo-sector-open):not(.vo-sector-number){line-height:1.6;color:var(--adm-text-soft)}
.vo-map-hint{font-size:11px;line-height:1.6;color:var(--adm-text-soft);margin:0;padding:10px 14px;border-top:1px solid var(--adm-border);background:var(--adm-surface)}
footer.vo-footnote{display:flex;justify-content:space-between;flex-wrap:wrap;gap:5px 20px;padding:4px 0 0}
.vo-task-title{width:100%;text-align:left}.vo-task-status{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;margin:9px 0 0}.vo-task-meta{line-height:1.5}.vo-activity p{margin:6px 0 2px}.vo-request>span:nth-child(2){flex:1;min-width:0}.vo-request.is-selected{background:var(--adm-primary-soft)!important;box-shadow:inset 3px 0 var(--adm-primary)}
.vo-queue>.vo-tabs{margin:10px 14px}.vo-queue>.vo-list,#vo-content>.vo-list{gap:0}.vo-queue>h3{padding:0 14px}.vo-queue>.vo-card{margin:10px 14px}.vo-queue .vo-request .vo-pill{font-size:10px}.vo-queue-head h2{margin-top:5px}.vo-section-head h3{margin:4px 0}.vo-form #vo-form-error{margin:0;color:var(--adm-danger);font-size:12px}.vo-dialog .vo-notice{margin:0}
@media(max-width:1100px){.vo-map-tools .vo-search{flex-basis:100%;max-width:none}.vo-map-tools #vo-family-label{flex:1}.vo-map-tools #vo-zoom{margin-left:auto}}
@media(max-width:850px){.vo-sidebar{position:static}.vo-map-tools .vo-search{flex-basis:230px}.vo-map-tools #vo-family-label{flex:0 1 175px}.vo-request>span:nth-child(2){flex-basis:40%}}
@media(max-width:520px){#virtual-office #vo-family-label{flex:1 1 150px}.vo-map-tools .vo-search{flex-basis:100%}.vo-sector-grid{padding:0 12px 12px}.vo-sector-intro{padding:14px 12px 0}.vo-request>span:nth-child(2){flex-basis:calc(100% - 95px)}.vo-task-status select,#virtual-office select{min-height:40px}.vo-preview-header{max-width:100%}.vo-preview-header>span:not(.vo-tag){flex:1}.vo-preview-header label{flex:0 1 auto;min-width:0}.vo-heading h1{overflow-wrap:anywhere}}
/* SVG paint servers are explicit so CSS never flattens the floor texture. */
.vo-map{min-height:0}
.vo-map .desk-role{fill:#566267;font-size:8.5px}
/* Keep local navigation states visible above the shared neutral-button reset. */
#virtual-office button,.vo-dialog button{transition:border-color .15s}
#virtual-office .vo-tabs button[aria-pressed="true"]{background:var(--adm-primary-soft)!important;color:var(--adm-primary)!important;border-color:var(--adm-primary)!important}
#virtual-office .vo-primary,.vo-dialog .vo-primary{background:var(--action-blue-fill,#2f739b)!important;border-color:var(--action-blue-fill,#2f739b)!important;color:var(--action-on-fill,#fff)!important}
#virtual-office .vo-primary:hover,.vo-dialog .vo-primary:hover{background:var(--action-blue-fill,#2f739b)!important;filter:brightness(.96)}
.vo-map .room-floor,.vo-map .vo-room.is-selected .room-floor{fill:url(#floor-0)}
.vo-map .vo-room:nth-of-type(even) .room-floor,.vo-map .vo-room:nth-of-type(even).is-selected .room-floor{fill:url(#floor-1)}
.vo-map .room-hit:hover .room-floor,.vo-map .room-hit:focus-visible .room-floor{fill:url(#floor-0)}
