/* RESTA Campus: a calm, accessible blue workspace. */
:root{--bg:#f3f6fc;--white:#fff;--ink:#172b49;--muted:#667792;--line:#e0e7f2;--green:#2861e7;--green-light:#edf3ff;--gold:#bd8d47;--radius:18px;font-family:Inter,-apple-system,BlinkMacSystemFont,'Hiragino Sans','Yu Gothic',sans-serif;color:var(--ink);font-size:14px}
body{font-size:14px;line-height:1.6;background:var(--bg)}button,input,select,textarea,a{font:inherit}button,input,select,textarea{color:inherit}input,select,textarea{min-width:0}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #78a8ff;outline-offset:3px}button:disabled{cursor:not-allowed;opacity:.5}button{touch-action:manipulation}a{text-underline-offset:3px}h1,h2,h3{letter-spacing:-.02em}p{overflow-wrap:anywhere}.icon{vertical-align:middle}.eyebrow{color:#6d81a0;font-size:11px;letter-spacing:1.6px;font-weight:700;margin-bottom:9px}.subtle,.micro{color:var(--muted)}.micro{font-size:12px;line-height:1.7}.workspace{background:radial-gradient(ellipse at 100% 0,#e9f0ff 0,transparent 550px),var(--bg)}.sidebar{width:232px;padding:32px 18px 20px;background:#101f39;color:#dbe7ff;border:0;gap:26px;position:sticky;top:0;height:100dvh;overflow-y:auto;scrollbar-width:thin}.brand{color:white;font-size:23px;letter-spacing:1.6px;gap:12px;margin:0 10px}.brand-mark{background:#346ff5;color:#fff;border-radius:14px 14px 14px 5px;box-shadow:0 6px 18px #10255c26}.brand-sub{font-size:12px;letter-spacing:3px;font-weight:500}.campus-name{font-size:13px;border-color:#2b3c58;background:#172842;color:#e2eaff;border-radius:12px;padding:13px 12px}.campus-name small{font-size:10px;color:#8299ba;letter-spacing:1.3px;padding-left:14px}.online-dot{background:#31bfa2;box-shadow:0 0 0 3px #30b49718;width:7px;height:7px}.sidebar-section .eyebrow{color:#879bbc;font-size:11px;letter-spacing:1px;margin:0 12px 10px}.nav-item{color:#adbeda;font-size:14px;line-height:1.6;padding:12px 13px;border-radius:9px;gap:12px;margin:5px 0;white-space:normal;min-height:46px}.nav-item .icon{width:19px;height:19px;color:#91a9cf}.nav-item:hover{background:#203454;color:white}.nav-item.active{background:#2861e7;color:white;box-shadow:0 5px 14px #07163140;font-weight:600}.nav-item.active .icon{color:#fff}.management-navigation{margin-top:26px}.sidebar-message{margin:0 12px;color:#c1d2ed;border-top:1px solid #293a55;padding-top:19px}.sidebar-message-icon{font-size:23px;color:#81a6fa}.sidebar-message p{font-size:16px;line-height:1.85;letter-spacing:0;margin:7px 0}.sidebar-message small{font-size:11px;color:#92a8c9}.profile-card{background:#192c48;color:#edf3ff;display:grid;grid-template-columns:44px 1fr;text-align:left;gap:0 10px;padding:14px 12px;border:1px solid #2b3e5c;border-radius:12px}.profile-card>div{width:42px;height:48px;grid-row:span 2}.profile-card strong{font-size:14px;font-weight:600;margin:0;align-self:end;overflow-wrap:anywhere}.profile-card .subtle{font-size:11px;color:#98afcf;margin:0;align-self:start}.profile-card .button{grid-column:1 / -1;margin-top:12px;background:#223959;border:1px solid #375275;color:#dfeaff;font-size:12px;padding:7px}.profile-card .button:hover{background:#304c75}.sidebar-footer{font-size:10px;color:#8da3c5}.sidebar-footer span{font-size:9px;letter-spacing:.6px}.topbar{height:76px;padding:0 36px;gap:20px;background:#ffffffd9;backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.breadcrumb{font-size:13px;color:#7385a0}.breadcrumb [data-tenant-name]{color:#7385a0;margin:0}.breadcrumb span{color:#c0cbdc;margin:0 12px}.breadcrumb b{font-weight:600;color:#233f65}.account-controls{gap:17px}.sync-state{font-size:12px;color:#a47a2c}.sync-state.connected{color:#19846e}.account-controls .text-button{font-size:12px}.account-controls .button{font-size:12px}.workspace main{padding:32px 36px 28px;max-width:1640px;outline:none}.page-heading{margin-bottom:26px;gap:20px}.page-heading h1{font-size:30px;letter-spacing:-.8px;font-weight:700;line-height:1.5;color:#172e50}.page-heading p:not(.eyebrow){font-size:14px;color:#6d7e97;margin-top:8px;letter-spacing:0}.capacity{background:white;border:1px solid var(--line);padding:13px 18px;border-radius:12px;gap:14px;min-width:158px;box-shadow:0 3px 12px #1d418704}.capacity .icon{color:#648ddd;width:27px;height:27px}.capacity strong{font-size:28px;font-weight:700}.capacity strong b{font-weight:700}.capacity strong span{font-size:13px}.capacity small{font-size:11px;color:#72829b}.office-layout{grid-template-columns:minmax(0,1fr) 264px;gap:20px}.floor-card{border:1px solid #dde6f3;box-shadow:0 5px 20px #233d6c06;border-radius:16px}.floor-toolbar{height:64px;padding:0 21px}.floor-toolbar h2{font-size:15px;font-weight:650;gap:3px}.location-pill{font-size:12px;color:#2b5fbd;background:#edf3ff;border:1px solid #dce8ff;padding:5px 10px}.floor-card #floor{margin:0 13px;border:1px solid #e2eaf5;border-radius:12px;background:#f0f5fc}.floor-controls{padding:15px 18px 13px;gap:12px}.movement-help{font-size:12px;color:#465f80}.movement-help .icon{color:#6a90c9}.movement-help small{font-size:11px;color:#7789a2;margin-top:2px}.direction-pad button{background:#f2f6fe;border-color:#dce6f7;box-shadow:0 2px 0 #d9e3f3;width:30px;height:26px;font-size:15px;color:#4d6790}.floor-note{border-color:#e8edf5;color:#7185a0;font-size:11px;gap:7px;flex-wrap:wrap;padding:12px 0 15px;margin:0 18px}.self-marker{border-color:#4b7cee;width:10px;height:10px}.my-status{font-size:12px;color:#526b8e}.my-status select{font-size:12px;border:1px solid #dce5f3;padding:5px 8px;background:#f6f9ff}.room-panel{border-color:#dce6f4;border-radius:16px;box-shadow:0 5px 20px #233d6c06}.room-panel-head{padding:22px;background:linear-gradient(135deg,#edf4ff,#e8f0ff)}.room-panel-head .eyebrow{font-size:10px;color:#738db3;letter-spacing:1.4px}.room-symbol{color:#3971db;border-color:#dae6fb;background:white;width:40px;height:40px;border-radius:11px;margin:6px 0 12px}.room-panel h2{font-size:20px;letter-spacing:-.3px;color:#24426b}.room-panel-head p{font-size:12px;line-height:1.85;color:#687f9e;margin-top:7px}.room-connection{padding:21px}.connection-label{margin-bottom:15px}.connection-badge{color:#647995;border:1px solid #dce5f2;font-size:11px;padding:3px 8px;background:#f7f9fc}.connection-badge.linked{color:#2864bd;background:#eaf2ff;border-color:#d5e5ff}.room-connection h3{font-size:13px;font-weight:650}.room-connection p{font-size:12px;color:#6a7e99;line-height:1.85;margin:9px 0 17px;min-height:0}.room-connection>.text-button{font-size:12px;margin-top:5px}.button{font-size:14px;padding:10px 15px;min-height:42px;border-radius:9px;gap:8px;font-weight:600;line-height:1.5;transition:background .15s,box-shadow .15s}.button.primary{background:#2861e7;color:white;border:1px solid #2861e7;box-shadow:0 3px 8px #2861e71a}.button.primary:hover{background:#1e50ce;border-color:#1e50ce;box-shadow:0 4px 10px #2861e729}.button.secondary{color:#445e83;background:#fff;border:1px solid #d7e1ee}.button.secondary:hover{background:#f0f5ff;border-color:#b9cdeb}.button.small{font-size:12px;padding:8px 12px;min-height:36px}.button.danger{color:#ba3c47;background:#fff8f9;border-color:#f0ced4}.text-button{font-size:12px;color:#4e74ac;padding:8px 0;min-height:36px}.external-link{color:#3c6bb3;font-size:12px;padding:12px 0 3px}.sharing-note{background:#f6f9ff;border-color:#e7eef9;color:#7994b7;padding:17px 19px}.sharing-note strong{font-size:12px;color:#4e6c93}.sharing-note p{font-size:11px;line-height:1.8;color:#7286a3}.section-heading{gap:14px;margin-bottom:14px}.section-heading h2{font-size:16px;font-weight:650;color:#294364}.section-heading>span{font-size:12px;color:#7486a0}.members-section,.spaces-section{margin-top:27px}.live-members{gap:10px;padding-bottom:8px}.live-member{border:1px solid #e0e7f2;border-radius:11px;min-width:164px;padding:10px 12px;gap:10px}.live-member:hover{background:#edf4ff;border-color:#bdcff0}.live-member strong{font-size:13px;font-weight:600;color:#334e72}.live-member small{font-size:11px;color:#7486a0;margin-top:3px}.live-member strong small{font-size:10px}.presence-dot{background:#2eae92}.presence-dot.focus{background:#b78229}.presence-dot.break{background:#6190d0}.presence-dot.away{background:#99a6b9}.room-shortcuts{gap:12px}.room-shortcut{border-color:#dce5f2;padding:15px 12px;gap:10px;border-radius:12px}.room-shortcut[aria-pressed=true]{border-color:#a6c3fa;background:#edf4ff}.room-shortcut:hover{background:#f2f6fd}.room-shortcut strong{font-size:12px;color:#3d587b}.room-shortcut small{font-size:11px;color:#7c8da5;margin-top:4px}.room-shortcut .arrow{color:#8da3c3}.room-shortcut .shortcut-symbol{width:36px;height:36px;border-radius:10px}.demo-info{color:#8c9eba;margin-top:21px;gap:8px}.demo-info p,.demo-info p span{font-size:11px;color:#8293ab;line-height:1.8}.demo-info p span{margin-left:6px}.app-footer{margin:0 36px 20px;border-color:#e0e8f3;color:#8b9cb6;font-size:10px;letter-spacing:1.2px}.toast{background:#173763;border:1px solid #284d80;box-shadow:0 8px 30px #183a7233;font-size:14px;max-width:min(90%,620px);z-index:1800}dialog{border-color:#d9e4f4;border-radius:18px;color:#263e5c;max-height:calc(100dvh - 40px);box-shadow:0 28px 90px #0c21474d}dialog::backdrop{background:#0b1c395c;backdrop-filter:blur(4px)}.dialog-header{padding:24px 27px 19px;gap:15px}.dialog-header h2{font-size:22px;font-weight:700;letter-spacing:-.4px}.dialog-header .eyebrow{font-size:10px}.icon-button{background:#eff4fc;color:#677f9e;font-size:25px;min-width:36px;height:36px;border-radius:10px}.dialog-description{font-size:14px;color:#6d809b;line-height:1.8;padding:0 27px 20px}.dialog-footer{padding:18px 27px;gap:15px;background:#fbfcff;border-color:#e3ebf6}.field-label{font-size:13px;font-weight:600;color:#415a7c;margin-bottom:18px}.field-label input,.field-label select,.field-label textarea{font-size:14px;color:#294260;border:1px solid #d5e0ef;border-radius:9px;background:#fff;padding:11px 12px;margin-top:7px;display:block;width:100%;min-height:44px;line-height:1.6}.field-label input::placeholder,.field-label textarea::placeholder{color:#95a4b9}.field-label small{font-size:12px;line-height:1.7;color:#7e90ab;font-weight:400}.optional{font-size:11px;color:#8a9ab0}.check-line{font-size:13px;color:#637a98;gap:10px;align-items:flex-start;line-height:1.7}.check-line input{accent-color:#2861e7;width:16px;height:16px;flex-shrink:0;margin:3px 0 0}.settings-tabs{gap:6px}.settings-tabs button{background:#f0f5fd;color:#647d9f;font-size:12px;padding:9px 11px}.settings-tabs button[aria-selected=true]{background:#e2edff;color:#2b60ba;font-weight:600}.settings-body{padding:24px 27px 12px}.setup-note{background:#eff5ff;color:#6384b4;border:1px solid #deebff}.setup-note strong{font-size:13px;color:#426a9e}.setup-note p,.setup-note span#sdk-readiness{font-size:12px;color:#6a83a3;line-height:1.8}.form-error{font-size:13px;color:#bf3c47;line-height:1.7;min-height:0;margin-top:10px}.form-error:empty{display:none}.avatar-stage{background:radial-gradient(ellipse at 50% 58%,#d9e7ff,#f0f6ff 70%);border-color:#dce7f7}.avatar-stage p{font-size:15px}.avatar-stage small{font-size:12px;color:#7890af}.avatar-fields legend{font-size:13px}.swatch{width:27px;height:27px}.swatch[aria-pressed=true]{box-shadow:0 0 0 2px #2861e7}.avatar-mode{background:#edf3fc}.avatar-mode button{font-size:14px;color:#758baa;padding:9px 24px}.avatar-mode button[aria-pressed=true]{color:#2861e7}.photo-picker{border-color:#91b2eb;background:#f0f6ff;color:#3c6db7;font-size:14px}.photo-help,.photo-privacy{font-size:12px;color:#798da9}.photo-range{font-size:12px;color:#627e9e}.photo-range input{accent-color:#2861e7}.photo-empty>span{background:#e5efff;border-color:#b2cbef;color:#82a4d5}.member-view{font-size:14px;color:#6682a4}.meeting-panel{border-color:#d8e4f5;box-shadow:0 14px 80px #10295655}.meeting-header h2{font-size:16px}.meeting-header #meeting-state,.meeting-footnote{font-size:12px;color:#7087a6}#meeting-message{font-size:14px;color:#536e91}.meeting-message-action{color:#2861e7}.admin-tabs button{font-size:14px;color:#7890ad}.admin-tabs button[aria-pressed=true]{color:#2861e7;border-color:#2861e7}.admin-summary{font-size:14px;color:#6c829d}.create-user-form{background:#f6f9ff;border-color:#e1eaf7}.create-user-form h3{font-size:15px}.form-grid .field-label{font-size:13px}.admin-user{border-color:#e4ebf6}.admin-user strong{font-size:14px}.admin-user small{font-size:12px;color:#7a8ca7}.audit-row{font-size:13px;border-color:#e2eaf5}.audit-row time,.audit-row span{color:#7a8da9}
/* New application views */
.campus-view .page-heading{align-items:flex-start}.heading-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin-top:12px}.view-heading-meta{display:flex;align-items:center;gap:9px;font-size:12px;color:#8092ad;margin-top:8px}.view-heading-meta .dot{width:5px;height:5px;background:#7698c7;border-radius:50%}.view-banner{display:flex;align-items:center;justify-content:space-between;gap:22px;background:linear-gradient(112deg,#1947b5,#3278ed);color:white;border-radius:16px;padding:25px 29px;margin-bottom:25px;position:relative;overflow:hidden}.view-banner:after{content:'';width:210px;height:210px;border:35px solid #ffffff0b;border-radius:50%;position:absolute;right:35px;top:-50px;pointer-events:none}.view-banner h2{font-size:20px;color:white;position:relative;z-index:1}.view-banner p{font-size:13px;color:#dae8ff;margin-top:7px;position:relative;z-index:1}.banner-mark{font-size:36px;color:#c2d9ff;position:relative;z-index:1;padding-right:8px}.surface-card{background:white;border:1px solid #dfe7f3;border-radius:15px;box-shadow:0 3px 12px #1f3e7003}.surface-card-header{padding:20px 23px;border-bottom:1px solid #e6edf7;display:flex;align-items:center;justify-content:space-between;gap:16px}.surface-card-header h2{font-size:17px}.surface-card-header p{font-size:12px;color:#7a8eaa;margin-top:4px}.surface-card-body{padding:23px}.view-toolbar{display:flex;align-items:end;gap:14px;flex-wrap:wrap;margin-bottom:22px}.view-toolbar .field-label{margin:0;min-width:150px}.view-toolbar .field-label.grow{flex:1;max-width:420px}.view-toolbar .field-label input,.view-toolbar .field-label select{height:44px}.view-toolbar .toolbar-spacer{flex:1}.segmented-control{display:flex;background:#e8effa;border:1px solid #dce6f5;border-radius:10px;padding:4px;align-self:end;height:44px}.segmented-control button{background:transparent;color:#7487a3;border-radius:7px;padding:5px 14px;font-size:13px}.segmented-control button[aria-pressed=true]{background:#fff;color:#315c9f;box-shadow:0 2px 6px #2a4b7c0d;font-weight:650}.period-navigation{display:flex;align-items:center;gap:8px}.period-navigation button{font-size:18px;min-width:38px;min-height:38px}.period-navigation time{font-size:15px;font-weight:600;color:#47678d}.schedule-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:25px}.summary-item{padding:20px 22px;background:white;border:1px solid #dfe7f3;border-radius:13px;display:flex;align-items:center;gap:16px}.summary-icon{width:43px;height:43px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#ebf2ff;color:#4175d7}.summary-icon .icon{width:22px;height:22px}.summary-item:nth-child(2) .summary-icon{background:#f1edff;color:#8565c4}.summary-item:nth-child(3) .summary-icon{background:#eaf7f4;color:#409b8a}.summary-item p{font-size:12px;color:#8092aa;margin-bottom:2px}.summary-item strong{font-size:23px;color:#274870}.summary-item strong span{font-size:12px;font-weight:500;margin-left:6px;color:#8092aa}.schedule-day{padding:0}.schedule-day+.schedule-day{border-top:1px solid #e2eaf5}.schedule-day-heading{padding:16px 22px;background:#f9fbff;border-bottom:1px solid #e9eef7;display:flex;align-items:center;justify-content:space-between;gap:12px}.schedule-day-heading h3{font-size:14px;color:#496b95}.schedule-day-heading span{font-size:12px;color:#7e93b0}.event-row{display:grid;grid-template-columns:93px minmax(0,1fr) auto;gap:18px;align-items:center;padding:23px;border-bottom:1px solid #edf1f8}.event-row:last-child{border-bottom:0}.event-time{font-size:17px;font-weight:700;color:#274a7b;line-height:1.6;border-right:1px solid #e4ebf6;align-self:stretch;display:flex;flex-direction:column;justify-content:center}.event-time small{font-size:12px;font-weight:400;color:#8da0bb}.event-details{min-width:0}.event-details h3{font-size:16px;font-weight:650;color:#2c4b72;overflow-wrap:anywhere}.event-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:#7a8eaa;margin-top:7px}.event-meta .icon{width:14px;height:14px}.event-type{font-size:11px;font-weight:600;color:#5074b1;background:#edf3ff;border-radius:5px;padding:2px 7px;margin-bottom:6px;display:inline-block}.event-type.appointment{color:#8565bd;background:#f3effc}.event-type.cancelled{color:#8a94a5;background:#edf0f4}.event-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end;max-width:240px}.event-actions .text-button{padding:6px 2px;font-size:12px}.event-row.is-cancelled{opacity:.65}.empty-state{padding:48px 23px;text-align:center;color:#8597b0;display:flex;align-items:center;flex-direction:column}.empty-state-icon{width:62px;height:62px;display:flex;align-items:center;justify-content:center;background:#edf3fd;border-radius:19px;color:#91afd9;margin-bottom:17px}.empty-state-icon .icon{width:28px;height:28px}.empty-state h3{font-size:16px;color:#57759a;font-weight:650;margin-bottom:8px}.empty-state p{font-size:13px;line-height:1.85;max-width:460px}.empty-state .button{margin-top:18px}.loading-line{padding:45px 23px;color:#8397b3;display:flex;align-items:center;justify-content:center;gap:12px}.loading-spinner{width:18px;height:18px;border:2px solid #dfe9f8;border-top-color:#4179df;border-radius:50%;animation:campus-spin .9s linear infinite}@keyframes campus-spin{to{transform:rotate(360deg)}}.inline-notice{padding:14px 16px;background:#eef4ff;border:1px solid #dfe9fa;color:#6381aa;font-size:12px;border-radius:10px;line-height:1.8;display:flex;gap:10px;align-items:flex-start}.inline-notice .icon{flex-shrink:0;margin-top:2px}.inline-notice.warning{background:#fffbf2;border-color:#f2e6ce;color:#927741}.inline-notice.error{background:#fff4f5;border-color:#f2d9de;color:#ae5866}.split-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}.booking-guide{padding:24px}.booking-guide h2{font-size:17px;margin-bottom:20px}.guide-steps{counter-reset:steps;list-style:none;margin:0;padding:0}.guide-steps li{display:flex;gap:13px;padding:0 0 21px;position:relative}.guide-steps li:before{counter-increment:steps;content:counter(steps);width:27px;height:27px;flex-shrink:0;background:#edf3ff;color:#4b7bd0;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.guide-steps li strong{font-size:13px;color:#49668b;display:block;margin:2px 0 4px}.guide-steps li p{font-size:12px;line-height:1.8;color:#8293ac}.guide-steps li:last-child{padding-bottom:0}.booking-guide .inline-notice{margin-top:21px}.booking-list{display:grid;gap:11px}.slot-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:19px 21px;background:white;border:1px solid #dfe7f3;border-radius:12px;align-items:center}.slot-card h3{font-size:15px;color:#365780}.slot-date{color:#3b69ad;font-size:14px;font-weight:650;margin-bottom:7px}.slot-card .event-meta{font-size:12px;margin-top:5px}.slot-card .event-actions{gap:8px;max-width:200px}.slots-day-label{font-size:13px;color:#7189aa;padding:13px 2px 3px;font-weight:600}.slots-day-label:first-child{padding-top:0}.booking-sections{display:grid;gap:25px}.manager-section{margin-top:26px}.manager-section details{border:1px solid #dee7f4;background:#fff;border-radius:14px;overflow:hidden}.manager-section summary{padding:18px 22px;cursor:pointer;font-weight:600;color:#40658e;list-style:none;display:flex;align-items:center;gap:10px;font-size:14px}.manager-section summary:after{content:'+';margin-left:auto;color:#7f9ec5;font-size:22px}.manager-section details[open] summary:after{content:'−'}.manager-section details[open] summary{border-bottom:1px solid #e4ebf5}.manager-section summary::-webkit-details-marker{display:none}.manager-section .surface-card-body{padding:22px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.form-row .field-label{min-width:0}.form-actions{display:flex;align-items:center;gap:12px;justify-content:flex-end;margin-top:6px}.form-actions .micro{margin-right:auto}.booking-confirm-card{padding:21px;background:#f1f6ff;border:1px solid #dfeafa;border-radius:12px}.booking-confirm-card h3{font-size:18px;margin-bottom:13px;color:#365b8d}.booking-confirm-card dl{margin:0;display:grid;grid-template-columns:78px minmax(0,1fr);gap:9px 14px;font-size:14px}.booking-confirm-card dt{color:#7b90ae}.booking-confirm-card dd{margin:0;color:#3e608b;overflow-wrap:anywhere}.campus-modal-body{padding:0 27px 24px}.campus-modal-body .inline-notice{margin-top:18px}.campus-modal-body>.dialog-description{padding:0;margin-bottom:18px}.campus-dialog{width:min(590px,calc(100vw - 32px))}.campus-dialog.wide{width:min(740px,calc(100vw - 32px))}.campus-dialog .field-label textarea{min-height:100px;resize:vertical}.dialog-footer .button{white-space:nowrap}.content-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.content-card{display:flex;flex-direction:column;overflow:hidden;min-width:0;transition:box-shadow .15s,border-color .15s}.content-card:hover{box-shadow:0 7px 24px #244b8911;border-color:#b4caef}.content-card-header{height:126px;background:linear-gradient(130deg,#eaf2ff,#dceaff);display:flex;align-items:center;justify-content:center;position:relative;color:#668fde;overflow:hidden}.content-card-header:before{content:'';position:absolute;width:150px;height:150px;border-radius:50%;border:24px solid #ffffff44;right:-30px;top:-60px}.content-card-header .icon{width:42px;height:42px;stroke-width:1.3;position:relative;z-index:1}.content-card.video .content-card-header{background:linear-gradient(130deg,#f0edff,#e4e4ff);color:#9382cf}.content-card.document .content-card-header{background:linear-gradient(130deg,#e7f6fb,#e2f0f5);color:#65a2bd}.content-card-body{padding:20px 21px;display:flex;flex-direction:column;flex:1}.content-card h2{font-size:17px;font-weight:650;color:#2f4f78;line-height:1.65;overflow-wrap:anywhere}.content-card .content-description{font-size:13px;line-height:1.9;color:#7c8faa;white-space:pre-line;margin:9px 0 17px;flex:1}.content-kind{font-size:11px;color:#7390b5;margin-bottom:6px;display:flex;gap:6px;align-items:center}.content-card .button{margin-top:auto}.content-manage-actions{display:flex;justify-content:flex-end;gap:14px;border-top:1px solid #e8eef6;margin-top:15px;padding-top:4px}.content-manage-actions button{font-size:12px}.content-domain{font-size:11px;color:#91a3bb;overflow-wrap:anywhere;margin:10px 0 0}.search-field{position:relative}.search-field input{padding-left:37px!important}.search-field .icon{position:absolute;left:12px;bottom:13px;width:18px;height:18px;color:#8fa6c7}.checkbox-list{border:1px solid #dce6f4;border-radius:10px;max-height:210px;overflow:auto;padding:8px 12px;margin-top:8px;background:#fafcff}.checkbox-list .check-line{margin:0;padding:7px 0;color:#597493;font-size:13px}.checkbox-list:empty{padding:18px;font-size:13px;color:#8396b1}.group-list{display:grid;gap:10px;margin-bottom:21px}.group-item{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:13px 15px;background:#f6f9ff;border:1px solid #e3ebf7;border-radius:10px}.group-item strong{font-size:14px;color:#47688e}.group-item small{display:block;font-size:12px;color:#7e94b0;margin-top:3px}.audit-filters{padding:22px;display:grid;grid-template-columns:1fr 1fr 1.2fr 1.3fr;gap:16px;border-bottom:1px solid #e5edf8}.audit-filters .field-label{margin:0}.audit-filters .filter-actions{grid-column:1/-1;display:flex;justify-content:flex-end;gap:10px}.audit-table-wrap{overflow:auto}.audit-table{border-collapse:collapse;width:100%;font-size:13px;text-align:left;min-width:640px}.audit-table th{font-weight:600;color:#6f87a8;background:#f7faff;border-bottom:1px solid #e6edf7;padding:14px 20px;font-size:12px}.audit-table td{padding:16px 20px;border-bottom:1px solid #edf2f9;color:#526f94;vertical-align:top;max-width:260px;overflow-wrap:anywhere}.audit-table td:first-child{font-size:12px;color:#7a91af;white-space:nowrap}.audit-table tr:last-child td{border-bottom:0}.audit-pagination{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:17px 22px;border-top:1px solid #e3ebf7;font-size:12px;color:#7c92af}.audit-pagination>div{display:flex;gap:8px;align-items:center}.policy-form{display:flex;align-items:flex-end;gap:15px;flex-wrap:wrap}.policy-form .field-label{margin:0;min-width:190px;flex:1}.policy-form .field-label input{max-width:280px}.policy-form .check-line{width:100%;margin-bottom:0}.policy-status{margin-top:14px;color:#7f93af;font-size:12px}.skeleton-block{min-height:220px}.session-label{font-size:12px;color:#7e93b1}.campus-role-note{font-size:12px;color:#8496ae;margin-top:11px}.error-state .empty-state-icon{background:#fff0f2;color:#c9828c}.error-state h3{color:#ac5e6b}.modal-done-icon{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#2861e7;background:#edf4ff;margin:0 auto 16px;font-size:25px}.success-message{text-align:center;margin-bottom:22px}.success-message h3{font-size:20px;margin-bottom:8px;color:#315787}.success-message p{font-size:14px;color:#7f92ac}
/* Sign-in has its own visual rhythm, without outside image or font dependencies. */
.login-screen{background:#f7f9fe;grid-template-columns:1.08fr 1fr}.login-intro{background:radial-gradient(ellipse at 85% 90%,#2961c7 0,transparent 45%),linear-gradient(145deg,#0d2147,#173c7b 75%);padding:clamp(38px,6vw,90px);color:white;min-height:100dvh}.login-intro>.brand-mark{background:#3b77f7;margin-bottom:52px;width:54px;height:58px}.login-intro .eyebrow{color:#8babdf;letter-spacing:2.5px;font-size:11px;margin-bottom:17px}.login-intro h1{font-size:clamp(28px,3.2vw,47px);letter-spacing:-1px;line-height:1.65;font-weight:700;color:white}.login-intro>p:not(.eyebrow){font-size:14px;line-height:2;color:#a6bfe5;margin-top:22px;position:relative;z-index:1}.login-art{width:300px;height:270px;opacity:1;right:-45px;bottom:-35px;pointer-events:none}.login-art>.login-orbit{border:1px solid #6089d94d;width:300px;height:300px;left:0;bottom:-15px;transform:rotate(-25deg);border-radius:34px;background:#5c90f710;box-shadow:0 0 0 35px #78a2ea08,0 0 0 70px #78a2ea06}.login-art>i{width:170px;height:170px;border-radius:24px;background:linear-gradient(145deg,#72a1ff33,#3773da22);border:1px solid #8eaff632;bottom:75px;right:10px;transform:rotate(14deg)}.login-art>.login-float-card{width:235px;height:auto;bottom:100px;left:-30px;padding:20px;background:#ffffff0e;border:1px solid #96b6ed44;backdrop-filter:blur(10px);border-radius:14px;display:flex;align-items:center;gap:13px;font-size:12px;line-height:1.8;color:#c2d7f6;box-shadow:0 10px 30px #091d5033}.login-float-card strong{font-size:14px;color:#e5f0ff}.login-card-dot{width:28px;height:28px;border-radius:9px;background:#5b8fe4;border:5px solid #8eb5f444;flex-shrink:0}.login-card{width:min(400px,calc(100% - 70px));padding:50px 0}.login-card .eyebrow{font-size:11px;color:#547bcc;letter-spacing:1.8px;margin-bottom:12px}.login-card h2{font-size:29px;font-weight:700;letter-spacing:-.6px;color:#203c62}.login-lead{font-size:14px;line-height:1.9;color:#8191aa;margin:16px 0 30px}.login-card .field-label{font-size:13px;margin-bottom:20px;color:#4f698a}.login-card input{padding:13px;background:white;min-height:49px;border-color:#dce5f2}.login-card .button{font-size:14px;padding:14px;margin-top:13px;min-height:49px}.login-help{font-size:12px;color:#899bb4;line-height:1.9;margin-top:21px}.pilot-label{font-size:11px;color:#9eacc1;border-color:#e0e8f5;margin-top:34px;padding-top:23px;letter-spacing:.5px}
@media(min-width:1500px){.office-layout{grid-template-columns:minmax(0,1fr) 300px}.room-panel-head,.room-connection{padding:25px}.room-panel-head p{font-size:13px}.room-connection p{font-size:13px}.sidebar{width:250px;padding:34px 22px}.workspace main{padding:36px 42px}.topbar{padding:0 42px}.content-card-header{height:145px}}
@media(max-width:1200px){.sidebar{width:215px;padding:27px 14px}.brand{font-size:22px;gap:10px;margin:0 8px}.nav-item{font-size:13px;padding:12px 10px;gap:10px}.workspace main{padding:28px 26px}.topbar{padding:0 26px}.office-layout{grid-template-columns:minmax(0,1fr) 240px;gap:16px}.room-panel-head,.room-connection{padding:19px}.room-panel h2{font-size:18px}.room-shortcuts{gap:9px}.room-shortcut strong{font-size:11px}.room-shortcut small{font-size:10px}.content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.split-layout{grid-template-columns:minmax(0,1fr) 260px;gap:18px}.app-footer{margin:0 26px 20px}.account-controls{gap:12px}.page-heading h1{font-size:27px}.audit-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.event-row{grid-template-columns:78px minmax(0,1fr);gap:14px}.event-actions{grid-column:2;justify-content:flex-start;max-width:100%}.slot-card .event-actions{grid-column:auto}.schedule-summary{gap:12px}.summary-item{padding:16px;gap:12px}.summary-icon{width:38px;height:38px}.summary-item strong{font-size:21px}}
@media(max-width:1000px){.sidebar{width:205px;padding:26px 12px}.sidebar-message{margin:0 10px}.sidebar-message p{font-size:15px}.nav-item{font-size:13px}.nav-item .icon{width:18px}.brand{font-size:21px}.brand-sub{font-size:11px}.topbar{padding:14px 24px;height:auto;min-height:76px;gap:9px;flex-wrap:wrap}.account-controls .button{font-size:12px}.workspace main{padding:27px 24px}.office-layout{display:block}.room-panel{display:grid;grid-template-columns:1fr 1.15fr;margin-top:18px}.room-panel-head{grid-row:span 2;padding:23px}.room-panel-head p{font-size:12px}.room-panel h2{font-size:19px}.room-connection{padding:21px}.room-connection h3{font-size:13px}.room-connection>.text-button{font-size:12px}.sharing-note{display:none}.floor-controls{padding:14px 17px}.capacity{display:none}.room-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}.room-shortcut{padding:14px}.room-shortcut strong{font-size:13px}.room-shortcut small{font-size:11px}.room-shortcut .shortcut-symbol{width:35px;height:35px}.split-layout{grid-template-columns:1fr}.booking-guide{display:none}.summary-item{display:block;padding:16px}.summary-icon{width:33px;height:33px;border-radius:9px;margin-bottom:10px}.summary-item p{font-size:11px}.schedule-summary{gap:10px}.view-banner{padding:23px}.view-banner h2{font-size:18px}.event-row{padding:20px}.login-intro{padding:45px 40px;min-height:100dvh}.login-intro h1{font-size:33px}.login-art{right:-100px}.page-heading{flex-wrap:wrap;gap:8px}.heading-actions{margin-top:4px}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:relative;width:100%;height:auto;padding:18px 20px 13px;overflow:visible;display:flex;flex-wrap:wrap;flex-direction:row;align-items:center;gap:16px;justify-content:space-between}.sidebar .campus-name,.sidebar-message,.sidebar-footer,.profile-card,.sidebar-section .eyebrow{display:none}.brand{margin:0;font-size:21px;letter-spacing:1.5px;gap:10px}.brand-mark{width:36px;height:39px;font-size:30px;letter-spacing:-5px}.brand-mark span{font-size:24px}.brand-sub{font-size:11px;margin-top:5px}.sidebar-section.campus-navigation{display:flex;flex-wrap:wrap;gap:4px;width:100%;order:2;margin:0}.sidebar-section .nav-item{max-width:none;white-space:nowrap;display:flex!important;flex:1;font-size:12px;padding:10px 9px;justify-content:center;gap:6px;min-height:43px;margin:0}.sidebar-section .nav-item[hidden]{display:none!important}.sidebar-section .nav-item .icon{width:17px;height:17px;display:block}.management-navigation{width:100%;margin-top:7px;border-top:1px solid #2b3e5b;padding-top:9px;display:flex;gap:5px}.management-navigation .nav-item{font-size:11px;color:#a4b9d8;padding:7px;min-height:34px}.management-navigation .nav-item .icon{width:15px}.topbar{padding:11px 20px;min-height:62px;gap:9px;background:#fff}.breadcrumb{font-size:12px;width:auto}.breadcrumb b{font-size:12px}.account-controls{gap:13px;width:auto;margin-left:auto}.account-controls .button{font-size:11px;padding:7px 10px;min-height:34px}.topbar .text-button{font-size:11px}.sync-state{font-size:11px;margin-right:0}.workspace main{padding:25px 20px}.page-heading{margin-bottom:22px}.page-heading h1{font-size:27px;letter-spacing:-.7px}.page-heading .eyebrow{font-size:10px;margin-bottom:8px}.page-heading p:not(.eyebrow){font-size:13px;line-height:1.8;margin-top:7px}.floor-toolbar{height:59px;padding:0 16px;gap:10px}.floor-toolbar h2{font-size:14px}.floor-card #floor{margin:0 9px}.location-pill{font-size:11px;padding:4px 8px}.floor-controls{padding:14px 15px;gap:10px}.floor-note{font-size:10px;margin:0 15px;padding:11px 0 14px}.movement-help{font-size:12px}.movement-help small{font-size:10px}.my-status{font-size:11px}.my-status select{font-size:11px;margin-left:4px}.room-panel-head{padding:23px}.room-connection{padding:21px}.room-panel-head p{font-size:12px}.room-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.room-shortcut{display:flex;padding:15px 13px;gap:11px;text-align:left}.room-shortcut .shortcut-symbol{margin:0}.room-shortcut strong{font-size:13px}.room-shortcut small{font-size:11px}.room-shortcut .arrow{display:block}.section-heading h2{font-size:15px}.section-heading>span{font-size:11px}.live-member{min-width:156px}.app-footer{margin:0 20px 18px;font-size:9px}.demo-info p,.demo-info p span{font-size:11px}.demo-info p span{margin:0;display:block}.login-screen{grid-template-columns:1fr}.login-intro{min-height:350px;padding:34px 33px}.login-intro>.brand-mark{margin-bottom:25px;width:43px;height:47px}.login-intro .eyebrow{font-size:10px;margin-bottom:10px}.login-intro h1{font-size:30px;line-height:1.5;letter-spacing:-.5px}.login-intro>p:not(.eyebrow){font-size:12px;margin-top:15px}.login-art{width:230px;height:230px;right:-45px;bottom:-40px}.login-art>.login-float-card{display:none}.login-intro h1 br:nth-of-type(2){display:none}.login-card{padding:36px 0;width:min(430px,calc(100% - 48px))}.login-card h2{font-size:26px}.login-lead{font-size:13px;margin:14px 0 25px}.login-card .field-label{font-size:13px}.login-help{font-size:12px}.pilot-label{font-size:10px;margin-top:25px}.form-grid{gap:0 15px}.admin-user-actions{gap:5px}.admin-user-actions .text-button{font-size:12px}.admin-user-actions .button{font-size:11px}.audit-row{font-size:13px}.content-grid{gap:15px}.content-card-header{height:105px}.content-card-body{padding:17px}.content-card h2{font-size:16px}.content-card .content-description{font-size:12px}.view-toolbar{gap:12px}.view-toolbar .field-label{min-width:140px}.view-banner{padding:21px}.view-banner h2{font-size:17px}.view-banner p{font-size:12px}.banner-mark{display:none}.view-toolbar .toolbar-spacer{display:none}.audit-pagination{padding:15px}.view-heading-meta{font-size:11px}}
@media(max-width:470px){.sidebar{padding:17px 13px 12px;gap:14px}.sidebar-section .nav-item{font-size:11px;padding:9px 5px;flex-direction:column;gap:5px;min-height:59px}.sidebar-section .nav-item .icon{width:19px;height:19px}.management-navigation .nav-item{flex-direction:row;font-size:10px;white-space:normal;padding:6px 4px;min-height:35px}.management-navigation .nav-item .icon{width:13px;height:13px}.topbar{padding:11px 15px}.breadcrumb{width:100%;font-size:11px}.breadcrumb span{margin:0 8px}.breadcrumb b{font-size:11px}.account-controls{width:100%;justify-content:flex-end;gap:12px}.sync-state{margin-right:auto}.workspace main{padding:23px 14px}.page-heading h1{font-size:25px}.page-heading p:not(.eyebrow){font-size:12px}.floor-toolbar h2{font-size:13px}.floor-toolbar{padding:0 12px}.location-pill{font-size:10px}.movement-help{font-size:11px;gap:6px}.movement-help .icon{width:16px}.movement-help small{font-size:10px}.floor-controls{padding:12px}.floor-note{margin:0 12px;font-size:10px}.floor-note>span:nth-child(2){flex:1}.my-status{margin-left:0;width:100%;padding-left:15px}.room-panel{display:block}.room-panel-head{padding:18px 20px;display:grid;grid-template-columns:40px 1fr;gap:3px 12px}.room-panel-head .eyebrow{grid-column:1 / -1;font-size:9px;margin-bottom:8px}.room-symbol{margin:0;grid-row:span 2}.room-panel h2{font-size:18px;align-self:end}.room-panel-head p{font-size:11px;margin:0;white-space:normal}.room-connection{padding:20px}.room-connection p{font-size:12px}.room-connection .button{font-size:14px;min-height:43px;padding:10px}.room-connection .button .icon{width:18px}.connection-badge{font-size:11px}.room-shortcut{padding:13px 10px;gap:8px}.room-shortcut strong{font-size:12px}.room-shortcut small{font-size:10px}.room-shortcut .shortcut-symbol{width:31px;height:31px}.room-shortcut .arrow{display:none}.section-heading{gap:10px;align-items:flex-start}.section-heading>span{font-size:10px;text-align:right;max-width:45%}.section-heading h2{font-size:14px}.app-footer{margin:0 14px 18px}.avatar-editor{gap:17px;padding:5px 20px 23px}.avatar-fields fieldset{margin:15px 12px 0 0}.swatch{width:25px;height:25px}.avatar-mode{margin:0 20px 15px}.avatar-mode button{font-size:13px;padding:8px 22px}.dialog-header{padding:21px 20px 17px}.dialog-header h2{font-size:19px}.dialog-description{padding:0 20px 18px;font-size:13px}.dialog-footer{padding:15px 20px;flex-wrap:wrap}.dialog-footer .micro{font-size:11px}.dialog-footer .button{font-size:13px;flex:1}.settings-body{padding:20px}.settings-tabs{margin:0 20px;gap:5px}.settings-tabs button{font-size:11px;padding:8px 9px}.form-grid{grid-template-columns:1fr}.field-label{font-size:13px}.create-user-form{padding:17px}.admin-user-list{padding:0 20px 20px}.admin-user{gap:8px}.admin-user small{font-size:11px}.audit-row{font-size:12px}.meeting-panel{right:8px;bottom:8px;width:calc(100vw - 16px);height:calc(100dvh - 16px)}.meeting-header h2{font-size:14px}.meeting-header{padding:14px}.view-banner{padding:19px;border-radius:13px}.view-banner h2{font-size:17px}.view-banner p{font-size:12px;line-height:1.8}.heading-actions{width:100%;gap:8px;margin-top:9px}.heading-actions .button{font-size:12px;padding:9px 11px;flex:1}.view-toolbar .field-label{min-width:0;flex:1}.view-toolbar .field-label.grow{flex-basis:100%;max-width:none}.view-toolbar .segmented-control{margin-left:auto}.view-toolbar .period-navigation{width:100%;justify-content:space-between}.schedule-summary{gap:7px;margin-bottom:20px}.summary-item{padding:13px 10px}.summary-icon{width:30px;height:30px;margin-bottom:8px}.summary-icon .icon{width:17px;height:17px}.summary-item p{font-size:10px}.summary-item strong{font-size:19px}.summary-item strong span{font-size:10px;margin-left:3px}.surface-card-header{padding:18px}.surface-card-header h2{font-size:16px}.surface-card-body{padding:18px}.schedule-day-heading{padding:14px 16px}.event-row{padding:18px 15px;grid-template-columns:68px minmax(0,1fr);gap:12px}.event-time{font-size:15px}.event-time small{font-size:11px}.event-details h3{font-size:15px}.event-meta{font-size:11px;gap:6px}.event-actions{gap:10px;grid-column:2}.event-actions .button{font-size:11px;padding:8px 11px}.event-actions .text-button{font-size:11px}.slot-card{padding:17px;grid-template-columns:1fr;gap:12px}.slot-card h3{font-size:14px}.slot-date{font-size:13px}.slot-card .event-actions{justify-content:flex-end;max-width:none;grid-column:1}.slot-card .event-actions .button{font-size:12px}.form-row{grid-template-columns:1fr}.manager-section .surface-card-body{padding:18px}.manager-section summary{padding:17px;font-size:13px}.form-actions{flex-wrap:wrap}.form-actions .micro{width:100%}.form-actions>.button{width:100%}.content-grid{grid-template-columns:1fr;gap:17px}.content-card-header{height:100px}.content-card-body{padding:20px}.content-card h2{font-size:17px}.content-card .content-description{font-size:13px}.content-card .button{font-size:13px}.audit-filters{padding:17px;gap:12px}.audit-filters .field-label:nth-of-type(n+3){grid-column:1 / -1}.audit-filters .filter-actions{flex-wrap:wrap}.audit-filters .filter-actions .button{flex:1;font-size:12px}.audit-pagination{padding:15px;align-items:flex-start;flex-wrap:wrap}.audit-pagination>div{margin-left:auto}.campus-modal-body{padding:0 20px 21px}.booking-confirm-card{padding:18px}.booking-confirm-card h3{font-size:17px}.booking-confirm-card dl{font-size:13px;grid-template-columns:66px 1fr;gap:8px}.policy-form{gap:12px}.policy-form .button{width:100%}.policy-form .field-label input{max-width:none}.empty-state{padding:35px 20px}.empty-state p{font-size:12px}.empty-state h3{font-size:15px}.view-heading-meta{font-size:11px}.login-intro{padding:30px;min-height:340px}.login-intro h1{font-size:29px}.login-card{width:calc(100% - 48px)}.login-card h2{font-size:25px}.login-art{right:-100px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important;animation:none!important}.loading-spinner{border-color:#a9c4ef;border-top-color:#4179df}}

/* Keep the menu control available when the sidebar is hidden. */
.topbar{height:auto;min-height:76px;padding-top:14px;padding-bottom:14px;flex-wrap:wrap}
.topbar-leading{display:flex;align-items:center;gap:16px;flex:1;min-width:0}
.topbar-leading .breadcrumb{flex:1;min-width:0;width:auto;overflow-wrap:anywhere}
.sidebar-toggle{display:inline-flex;align-items:center;justify-content:center;gap:8px;flex-shrink:0;min-height:44px;padding:9px 12px;border:1px solid #cbdaf1;border-radius:10px;background:#f4f7ff;color:#2d528c;font-size:12px;font-weight:600;white-space:nowrap}
.sidebar-toggle:hover{background:#e7efff;border-color:#9db9e9}
.sidebar-toggle svg{width:20px;height:20px;flex-shrink:0}
.sidebar-toggle[aria-expanded="false"] .sidebar-toggle-arrow{transform:translateX(29px) scaleX(-1)}
@media(max-width:1000px){.topbar-leading{flex-basis:100%;gap:12px}.topbar .account-controls{margin-left:auto}}
@media(max-width:470px){.topbar-leading{flex-wrap:wrap;gap:9px}.topbar-leading .breadcrumb{flex-basis:100%}.sidebar-toggle{font-size:12px;min-height:44px}}
