@import "https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;600;700&family=Roboto+Mono:wght@500&display=swap";:root{color:#19211d;font-synthesis:none;--ink:#19211d;--muted:#69736e;--line:#dce2df;--surface:#fff;--surface-soft:#f7f9f8;--brand:#126b4e;--brand-strong:#0b4d38;--brand-soft:#e5f3ec;--gold:#b9893f;--danger:#b53a3a;--warning:#a36516;--shadow:0 16px 44px #132b2014;background:#f3f5f4;font-family:Noto Sans SC,system-ui,sans-serif}*{box-sizing:border-box}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}.btn{border:1px solid var(--line);min-height:38px;color:var(--ink);background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:7px;padding:0 15px;text-decoration:none;transition:all .16s;display:inline-flex}.btn.primary{color:#fff;background:var(--brand);border-color:var(--brand)}.btn.primary:hover{background:var(--brand-strong)}.btn.danger{color:var(--danger);background:snow;border-color:#e9bcbc}.btn.ghost{background:0 0;border-color:#0000}.btn:disabled{opacity:.55;cursor:not-allowed}.field,.select,.textarea{border:1px solid var(--line);width:100%;min-height:42px;color:var(--ink);background:#fff;border-radius:8px;outline:none;padding:9px 12px}.textarea{resize:vertical;min-height:88px}.field:focus,.select:focus,.textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px #126b4e1a}.label{color:#4e5954;gap:7px;font-size:13px;display:grid}.label>span:first-child{font-weight:600}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:0 1px 2px #142a2005}.pill{border-radius:999px;align-items:center;padding:4px 9px;font-size:12px;font-weight:600;display:inline-flex}.pill.green{color:#0b6746;background:#e3f4eb}.pill.amber{color:#8c5512;background:#fff1d7}.pill.red{color:#a12f2f;background:#fee7e7}.pill.gray{color:#626b67;background:#edf0ef}.pill.blue{color:#185b8f;background:#e3f0fb}.empty{text-align:center;color:var(--muted);padding:48px 20px}.spinner{border:3px solid #d9e8e1;border-top-color:var(--brand);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.loading{place-items:center;min-height:240px;display:grid}.error-banner{color:#8f2f2f;background:#fff4f4;border:1px solid #ecc3c3;border-radius:8px;padding:12px 14px}.toast{z-index:90;color:#fff;box-shadow:var(--shadow);background:#1e2924;border-radius:8px;padding:10px 16px;position:fixed;bottom:30px;left:50%;transform:translate(-50%)}@media (width<=640px){.btn{min-height:42px}}.wecom-app{min-height:100vh}.room-summary{position:relative}.favorite-room{z-index:2;color:#8b8793;cursor:pointer;background:#fff;border:1px solid #ded9e8;border-radius:8px;place-items:center;width:30px;height:30px;padding:0;display:grid;position:absolute;top:12px;right:12px}.favorite-room.active{color:#5b4a8a;background:#f0ecf8;border-color:#bfb5d4}.room-identity{padding-right:36px}.room-primary-actions{display:contents}.booking-shortcuts{background:#faf8fd;border:1px solid #e2ddec;border-radius:10px;align-items:end;gap:8px;padding:10px 12px;display:flex}.booking-shortcuts label{color:#706b79;gap:4px;min-width:220px;font-size:12px;display:grid}.booking-shortcuts select{background:#fff;border:1px solid #d9d4e3;border-radius:7px;height:34px;padding:0 10px}.booking-slot-grid button.conflict{background:#df6b65;box-shadow:inset 0 0 0 1px #b94742}.booking-slot-grid button:focus-visible{outline-offset:2px;outline:3px solid #5b4a8a59}.recent-people{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px;display:flex}.recent-people>small{color:#77717f;margin-right:4px}.recent-people button{color:#5b4a8a;background:#fff;border:1px solid #d8cfea;border-radius:999px;min-height:30px;padding:4px 10px}.recent-people button.selected{color:#fff;background:#5b4a8a}.approval-people{gap:7px;margin:10px 0;display:grid}.approval-people>span{background:#faf9fc;border:1px solid #e2ddec;border-radius:8px;justify-content:space-between;align-items:center;padding:8px 10px;display:flex}.approval-people>span.approved small{color:#1c7b58}.approval-people>span.rejected small,.approval-rejection-reason{color:#ae3e39}.approval-rejection-reason{background:#fff5f4;border:1px solid #efc5c2;border-radius:8px;gap:3px;margin-bottom:10px;padding:9px 10px;display:grid}@media (width<=640px){.booking-shortcuts{flex-direction:column;align-items:stretch}.booking-shortcuts label{min-width:0}.favorite-room{align-self:flex-end;width:40px;height:34px;position:static}.favorite-room svg{width:16px;height:16px}.room-identity{padding-right:0}.room-primary-actions{flex-direction:column;grid-area:1/2;align-self:start;gap:7px;display:flex}}.session-gate{text-align:center;place-content:center;justify-items:center;gap:12px;min-height:100vh;padding:24px;display:grid}.session-gate h1,.session-gate p{margin:0}.session-gate p{max-width:420px;color:var(--muted)}.session-loading{background:radial-gradient(#f2eef9 0%,#f8f7fa 65%);gap:8px;min-height:100svh}.session-loading h1{color:#51465f;font-size:15px;font-weight:500;line-height:1.6}.session-loading p{color:#797180;font-size:12px;line-height:1.6}.session-loading-mark{background:#fff;border-radius:18px;place-items:center;width:56px;height:56px;margin-bottom:12px;display:grid;position:relative;box-shadow:0 6px 22px #5b4a8a12}.session-loading-ring{border:2px solid #5b4a8a;border-color:#5b4a8a #b5a5d0 #ebe5f4 #ebe5f4;border-radius:50%;width:28px;height:28px;animation:1.1s linear infinite spin}.session-loading-dot{background:#5b4a8a;border-radius:50%;width:5px;height:5px;position:absolute}@media (prefers-reduced-motion:reduce){.session-loading-ring{animation:none}}.topbar{border-bottom:1px solid var(--line);z-index:30;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff5;align-items:center;gap:44px;height:72px;padding:0 max(24px,50vw - 620px);display:flex;position:sticky;top:0}.brand-mark{color:#fff;background:var(--brand-strong);letter-spacing:.08em;border-radius:8px 2px;place-items:center;width:38px;height:38px;font:600 12px Roboto Mono;display:grid}.topbar nav{align-self:stretch;display:flex}.topbar nav button{color:#5d6762;background:0 0;border:0;border-bottom:2px solid #0000;padding:0 20px}.topbar nav button.active{color:var(--brand-strong);border-bottom-color:var(--brand);font-weight:600}main{max-width:1240px;margin:0 auto;padding:42px 24px 72px}.page-heading{justify-content:space-between;align-items:end;margin-bottom:26px;display:flex}.page-heading.compact{margin-bottom:20px}.eyebrow{letter-spacing:.14em;color:var(--gold);margin:0 0 7px;font:600 11px Roboto Mono}.page-heading h1{letter-spacing:-.04em;margin:0;font-size:clamp(26px,3vw,38px)}.page-heading div>span{color:var(--muted);margin-top:8px;display:block}.mobile-tabs{display:none}.segment{background:#e9edeb;border-radius:9px;margin-bottom:18px;padding:4px;display:inline-flex}.segment button{color:var(--muted);background:0 0;border:0;border-radius:7px;padding:9px 20px}.segment button.active{color:var(--brand);background:#fff;font-weight:600;box-shadow:0 1px 4px #14281e14}.meeting-list{gap:10px;display:grid}.meeting-card{grid-template-columns:150px 1fr auto;align-items:center;gap:24px;padding:18px 20px;display:grid}.meeting-date{border-right:1px solid var(--line);gap:3px;padding-right:20px;display:grid}.meeting-date b{font-size:16px}.meeting-date span{color:var(--muted);font-size:12px}.meeting-title-row{align-items:center;gap:10px;display:flex}.meeting-title-row h2{margin:0;font-size:17px}.meeting-main p{color:var(--muted);align-items:center;gap:5px;margin:8px 18px 0 0;font-size:12px;display:inline-flex}.profile-avatar{background:#ffffff29;border:1px solid #ffffff4d;border-radius:50%;place-items:center;width:86px;height:86px;font-size:34px;font-weight:700;display:grid}.dialog-backdrop{z-index:60;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0d1c157a;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.dialog{background:#fff;border-radius:14px;width:min(660px,100%);max-height:min(800px,100vh - 30px);padding:26px;overflow:auto;box-shadow:0 30px 80px #07181040}.dialog-head{justify-content:space-between;align-items:start;gap:20px;display:flex}.dialog-head h2{margin:0;font-size:24px}.icon-btn{border:1px solid var(--line);background:#fff;border-radius:8px;place-items:center;width:38px;height:38px;display:grid}.icon-btn svg{width:18px}.approval-note{color:#805318;background:#fff6e5;border:1px solid #f0dbb5;border-radius:8px;align-items:start;gap:9px;margin:20px 0;padding:12px;font-size:13px;display:flex}.form-grid{grid-template-columns:1fr 1fr;gap:16px;margin-top:22px;display:grid}.form-grid .wide{grid-column:1/-1}.slot-editor{gap:8px;display:grid}.slot-row{grid-template-columns:1.35fr 1fr auto 1fr 38px;align-items:center;gap:7px;display:grid}.slot-row>span{color:var(--muted);font-size:12px}.icon-btn.compact{width:38px;height:42px;color:var(--danger)}.add-slot{color:var(--brand);justify-self:start;padding:0 4px}.people-picker{border:1px solid var(--line);background:var(--surface-soft);border-radius:8px;flex-wrap:wrap;gap:7px;min-height:45px;padding:8px;display:flex}.people-picker button{text-align:left;color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:7px;gap:1px;padding:6px 9px;display:grid}.people-picker button.selected{color:var(--brand-strong);background:var(--brand-soft);border-color:#8fc2aa}.people-picker small,.picker-error,.muted-copy{color:var(--muted);font-size:11px}.compact-picker{max-height:132px;overflow:auto}.need-picker{background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;gap:8px;padding:10px;display:flex}.need-picker label{align-items:center;gap:5px;font-size:12px;display:flex}.file-field{position:relative}.file-field>input{opacity:0;width:1px;height:1px;position:absolute}.file-trigger{min-height:42px;color:var(--brand);background:var(--brand-soft);cursor:pointer;border:1px dashed #91b9a7;border-radius:8px;align-items:center;gap:7px;padding:0 12px;display:flex}.file-list,.meeting-slots{gap:4px;display:grid}.file-list span{color:var(--muted);font-size:11px}.file-item{justify-content:space-between;align-items:center;gap:8px;display:flex}.capacity-tip{color:var(--muted);align-items:center;gap:6px;font-size:12px;display:flex}.dialog-actions{justify-content:flex-end;gap:9px;margin-top:22px;display:flex}.room-schedule-list{gap:6px;display:grid}.room-schedule-list>div{background:var(--surface-soft);border-radius:7px;grid-template-columns:120px 1fr;gap:12px;padding:8px 10px;font-size:12px;display:grid}.room-schedule-list .closed{color:#8f5b16;background:#fff4e2}.detail-description{white-space:pre-wrap;margin:0 0 8px;font-size:13px;line-height:1.7}.cancel-reason{margin-top:18px}.detail-section{border-top:1px solid var(--line);margin-top:18px;padding:18px 0 0}.detail-section h3{margin:0 0 12px;font-size:14px}.detail-section dl{grid-template-columns:1fr 1fr;gap:14px;margin:0;display:grid}.detail-section dl div{gap:4px;display:grid}.detail-section dt{color:var(--muted);font-size:12px}.detail-section dd{margin:0;font-size:14px}.people{flex-wrap:wrap;gap:7px;display:flex}.people span{background:var(--surface-soft);border-radius:6px;padding:6px 9px;font-size:12px}.attachment-list{gap:7px;display:grid}.attachment-row{grid-template-columns:minmax(0,1fr) auto;gap:7px;display:grid}.attachment-list button{text-align:left;width:100%;min-height:50px;color:var(--ink);background:var(--surface-soft);border:1px solid var(--line);border-radius:8px;align-items:center;gap:10px;padding:8px 10px;display:flex}.attachment-list button>span:nth-child(2){flex:1;gap:2px;display:grid}.attachment-list small,.attachment-list button>span:last-child{color:var(--muted);font-size:11px}.attachment-list .attachment-delete{width:44px;min-height:50px;color:var(--danger);justify-content:center}.timeline{gap:13px;display:grid}.timeline>div{gap:10px;display:flex}.timeline i{background:var(--brand);width:8px;height:8px;box-shadow:0 0 0 4px var(--brand-soft);border-radius:50%;flex:none;margin-top:5px}.timeline p{gap:3px;margin:0;display:grid}.timeline span{color:var(--muted);font-size:12px}@media (width<=900px){.topbar{gap:16px}.topbar nav{margin-left:auto}}@media (width<=640px){.topbar{height:58px;padding:0 15px}.brand-mark{width:32px;height:32px}.topbar nav{display:none}main{padding:24px 14px 94px}.page-heading{align-items:start}.page-heading h1{font-size:26px}.page-heading div>span{font-size:13px}.mobile-tabs{z-index:40;height:calc(65px + env(safe-area-inset-bottom));padding-bottom:env(safe-area-inset-bottom);border-top:1px solid var(--line);background:#fffffff7;grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.mobile-tabs button{color:#7a8580;background:0 0;border:0;place-content:center;justify-items:center;gap:3px;font-size:11px;display:grid}.mobile-tabs button.active{color:var(--brand)}.mobile-tabs svg{width:20px;height:20px}.meeting-card{grid-template-columns:1fr auto;gap:12px}.meeting-date{border-right:0;border-bottom:1px solid var(--line);grid-column:1/-1;gap:8px;padding:0 0 10px;display:flex}.meeting-main{min-width:0}.meeting-title-row{flex-direction:column;align-items:start}.meeting-title-row h2{font-size:16px}.profile-avatar{width:64px;height:64px;font-size:26px}.dialog-backdrop{place-items:end center;padding:0}.dialog{width:100%;max-height:92vh;padding:20px 16px calc(20px + env(safe-area-inset-bottom));border-radius:16px 16px 0 0}.form-grid,.detail-section dl{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.slot-row{grid-template-columns:1fr 1fr 38px}.slot-row>input:first-child{grid-column:1/-1}.slot-row>span{display:none}}.mobile-date-strip,.room-timeline>strong,.mobile-schedule-hours{display:none}.room-identity{grid-column:1/-1;grid-template-columns:74px minmax(0,1fr);align-items:center;gap:11px;min-width:0;display:grid}.room-detail-trigger{color:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0}.room-detail-trigger:focus-visible{outline:2px solid var(--brand);outline-offset:4px;border-radius:8px}.room-identity>img{object-fit:cover;border-radius:9px;width:74px;height:62px;display:block}.room-summary h2{margin:0 0 7px;font-size:17px;line-height:1.15}.room-tags{flex-wrap:wrap;gap:4px;display:flex}.room-summary .room-tags>span{color:#635a73;background:#fff;border:1px solid #d8cfea;border-radius:999px;margin:0;padding:3px 7px;font-size:10px;line-height:1.15}.room-availability{color:#8a6100;text-overflow:ellipsis;white-space:nowrap;background:#fff7df;border:1px solid #f2ce67;border-radius:999px;align-items:center;min-width:0;padding:0 9px;font-size:10px;font-weight:700;display:inline-flex;overflow:hidden}.room-availability.approval{color:#237657;background:#f4faf8;border-color:#a9dec9}.reserve-pill{align-self:stretch;min-height:32px;padding:0 12px;box-shadow:0 5px 12px #5b4a8a29}.room-timeline{min-width:0}.schedule-cells{grid-template-rows:repeat(2,15px);grid-template-columns:repeat(26,minmax(18px,1fr));grid-auto-flow:column;gap:4px;padding:0 10px 0 5px}.schedule-cells span{height:15px}.schedule-cells span:nth-child(4n+3),.schedule-cells span:nth-child(4n+4){margin-right:3px}@media (width<=640px){body{background:#f4f5f6}.topbar{display:none}main{width:100%;max-width:none;padding:8px 12px 94px}.prototype-filterbar{border-radius:16px;grid-template-rows:48px;grid-template-columns:minmax(0,1fr) 48px 48px;gap:10px;min-height:68px;margin-bottom:12px;padding:10px}.prototype-control{border-radius:11px;min-width:0;min-height:46px;padding:0 14px}.type-control{grid-area:1/1}.type-control>span,.date-control{display:none}.type-control select{width:100%;font-size:16px}button.overview-control,button.filter-trigger{justify-content:center;align-items:center;gap:0;width:48px;min-width:48px;height:46px;min-height:46px;padding:0;font-size:0;line-height:0}.overview-control{color:#5b4a8a;background:#f6f3fa;border-color:#d8cfea;grid-area:1/2}.filter-trigger{border-radius:13px;grid-area:1/3}.overview-control svg,.filter-trigger svg{flex:0 0 22px;width:22px;height:22px;margin:0}.mobile-date-strip{min-height:104px;box-shadow:var(--shadow);background:#fff;border:1px solid #e1e3e7;border-radius:16px;grid-template-columns:64px repeat(7,minmax(0,1fr));align-items:center;gap:3px;margin-bottom:14px;padding:12px 10px;display:grid;overflow:hidden}.mobile-date-strip .date-strip-home{color:#3c485b;cursor:pointer;gap:6px}.mobile-date-strip .date-strip-home:disabled{cursor:default;opacity:1}.mobile-date-strip .date-strip-home strong{font-size:31px;line-height:1}.mobile-date-strip .date-strip-home span{color:#5b4a8a;font-size:11px;font-weight:700}.mobile-date-strip button{color:#666;background:0 0;border:0;place-items:center;gap:5px;min-width:0;padding:0;display:grid}.mobile-date-strip button:focus,.mobile-date-strip button:focus-visible{outline:none}.mobile-date-strip button:focus-visible b{box-shadow:0 0 0 2px #5b4a8a4d}.mobile-date-strip b{white-space:nowrap;border-radius:12px;place-items:center;width:38px;height:38px;font-size:19px;line-height:1;display:grid}.mobile-date-strip span{white-space:nowrap;font-size:12px}.mobile-date-strip button.active{color:#5b4a8a;font-weight:700}.mobile-date-strip button.active b{color:#fff;background:#5b4a8a;box-shadow:0 5px 12px #5b4a8a29}.room-board{box-shadow:none;background:0 0;border:0;border-radius:0;gap:12px;display:grid;overflow:visible}.matrix-header{display:none}.room-schedule-row{background:#fff;border:1px solid #e1e3e7;border-radius:16px;grid-template-columns:1fr;gap:12px;min-width:0;min-height:0;padding:14px;display:grid;box-shadow:0 8px 22px #1f2a370d}.room-summary{grid-template-rows:auto 30px;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:0;display:grid}.room-identity{grid-area:1/1;grid-template-columns:70px minmax(0,1fr);gap:10px}.room-identity>img{border-radius:10px;width:70px;height:56px}.room-summary h2{margin-bottom:7px;font-size:18px}.room-summary .room-tags{max-height:none;overflow:visible}.room-summary .room-tags>span{padding:3px 7px;font-size:11px}.room-availability{box-sizing:border-box;grid-area:2/1/auto/-1;justify-content:flex-start;width:100%;min-height:30px;padding:0 10px;font-size:12px}.reserve-pill{align-self:start;width:70px;min-height:38px;padding:0 11px;font-size:12px}.room-timeline{background:#f8fafc;border:1px solid #e1e3e7;border-radius:14px;padding:10px;overflow:hidden}.room-timeline>strong{color:#6a6a6f;margin-bottom:9px;font-size:12px;display:block}.mobile-schedule-hours{color:#666;text-align:center;grid-template-columns:repeat(14,minmax(0,1fr));margin:0 0 7px;font-size:10px;font-weight:700;display:grid}.schedule-cells{grid-template-rows:repeat(2,12px);grid-template-columns:repeat(24,minmax(0,1fr));gap:2px;padding:0}.schedule-cells span{border-radius:4px;height:12px}.schedule-cells span:nth-child(-n+4){display:none}.schedule-cells span:nth-child(4n+3),.schedule-cells span:nth-child(4n+4){margin-right:0}.mobile-tabs{background:#fffffffa;border-top-color:#eceaf0;height:62px;padding:6px 10px 7px}.mobile-tabs button{border-radius:12px}}:root{--ink:#333;--muted:#6f6f76;--line:#e3e1e8;--surface:#fff;--surface-soft:#f7f6f9;--brand:#5b4a8a;--brand-strong:#46366f;--brand-soft:#f0ecf8;--gold:#5b4a8a;--shadow:0 12px 30px #332a4d14;background:#f5f5f5}body{background:#f5f5f5}.btn{border-radius:7px;min-height:34px}.btn:hover{background:#faf8fd;border-color:#bfb5d4}.field:focus,.select:focus,.textarea:focus{box-shadow:0 0 0 3px #5b4a8a1a}.card{border-radius:10px;box-shadow:0 1px 3px #332a4d0a}.topbar{background:#fff;border-bottom-color:#eceaf0;justify-content:center;height:52px;padding:0}.topbar nav{justify-content:center;gap:36px}.topbar nav button{color:#4f4f54;min-width:92px;padding:0 12px;font-size:13px}.topbar nav button.active{color:#5b4a8a;border-bottom-color:#5b4a8a}main{max-width:1420px;padding:16px 20px 72px}.prototype-filterbar{box-shadow:var(--shadow);background:#fff;border:1px solid #e6e3eb;border-radius:10px;grid-template-columns:minmax(300px,1fr) 240px 150px 104px;align-items:center;gap:10px;margin-bottom:12px;padding:10px;display:grid}.prototype-control{color:#606066;background:#fbfbfc;border:1px solid #e1dfe6;border-radius:8px;align-items:center;gap:8px;min-height:42px;padding:0 12px;display:flex}.prototype-control>span{color:#8a8990;flex:none;font-size:12px}.prototype-control select,.prototype-control input{color:#333;background:0 0;border:0;outline:0;flex:1;min-width:0;height:38px;font-weight:600}button.prototype-control{cursor:pointer;justify-content:center}.filter-trigger{min-height:42px}.room-board{min-width:0;overflow-x:auto}.matrix-header,.room-schedule-row{grid-template-columns:310px minmax(780px,1fr);min-width:1180px;display:grid}.matrix-header{border-bottom:1px solid #e8e6eb;align-items:end;min-height:68px}.matrix-title{grid-template-columns:auto 1fr;gap:3px 8px;padding:13px 16px 11px;display:grid}.matrix-title strong{font-size:15px}.matrix-title>span,.matrix-title small{color:#8a8990;font-size:11px}.matrix-title small{grid-column:1/-1;align-items:center;gap:5px;display:flex}.matrix-title i,.slot-picker-head i{background:#eceef3;border-radius:3px;width:10px;height:10px;display:inline-block}.matrix-title i.busy-dot,.slot-picker-head i.busy{background:#efc158}.room-schedule-row{border-bottom:1px solid #eceaf0;align-items:center;min-height:102px}.room-schedule-row:last-child{border-bottom:0}.room-summary{cursor:pointer;grid-template-columns:66px minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 14px;display:grid}.room-summary>img{object-fit:cover;border-radius:7px;width:66px;height:52px}.room-summary h2{margin:0 0 4px;font-size:15px}.room-summary p{color:#74737a;align-items:center;gap:4px;margin:0;font-size:11px;display:flex}.room-summary div>span{color:#7b5b17;background:#fff4d6;border-radius:999px;margin-top:6px;padding:3px 7px;font-size:10px;display:inline-block}.reserve-pill{color:#fff;background:#5b4a8a;border:1px solid #5b4a8a;border-radius:999px;justify-content:center;align-items:center;gap:5px;min-height:30px;padding:0 11px;font-size:11px;display:inline-flex}.schedule-cells{grid-template-columns:repeat(24,minmax(24px,1fr));gap:4px;padding:0 10px 0 5px;display:grid}.schedule-cells span{background:#eceef3;border-radius:5px;height:15px}.schedule-cells span.busy{background:#efc158}.prototype-empty{text-align:center;color:#77757d;place-content:center;justify-items:center;gap:8px;min-width:820px;min-height:360px;display:grid}.prototype-empty h3,.prototype-empty p{margin:0}.prototype-empty p{max-width:420px;font-size:13px}.meetings-page,.mine-page{max-width:1120px;margin:0 auto}.meetings-page .page-heading{display:none}.segment{background:#fff;border:1px solid #ded9e8;border-radius:9px;width:min(520px,100%);margin:0 auto 14px;padding:3px;display:flex}.segment button{flex:1;padding:8px 14px}.segment button.active{color:#fff;box-shadow:none;background:#5b4a8a}.meeting-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.meeting-card{grid-template-columns:105px minmax(0,1fr) auto;gap:13px;min-height:102px;padding:13px 14px}.meeting-date{padding-right:12px}.meeting-title-row h2{font-size:14px}.meeting-main p{margin:6px 0 0;display:flex}.meeting-card>.btn{color:#5b4a8a;min-height:34px;box-shadow:none;background:0 0;border-color:#0000;padding:0 8px;font-size:12px;font-weight:400;line-height:1.5}.meeting-card>.btn:hover{background:#f5f2fa}.meeting-card>.btn:focus-visible{outline-offset:2px;outline:2px solid #8d7bb4}.mine-page{gap:12px;display:grid}.mine-card{background:#fff;border:1px solid #e3e1e8;border-radius:10px;padding:18px 20px}.mine-card h2{margin:0 0 10px;font-size:15px}.mine-overview{justify-content:space-between;align-items:center;display:flex}.mine-user{align-items:center;gap:13px;display:flex}.profile-avatar{color:#fff;background:#5b4a8a;border-radius:50%;place-items:center;width:54px;height:54px;font-size:22px;font-weight:700;display:grid}.mine-user h1{margin:0 0 4px;font-size:19px}.mine-user p,.mine-room p{color:#7a7880;margin:0;font-size:12px}.mine-stats{gap:34px;display:flex}.mine-stats div{justify-items:center;min-width:88px;display:grid}.mine-stats span{color:#7b7980;font-size:11px}.mine-stats strong{color:#5b4a8a;font:600 25px Roboto Mono}.mine-room,.mine-link{border-top:1px solid #eceaf0;justify-content:space-between;align-items:center;gap:12px;min-height:58px;display:flex}.mine-room:first-child,.mine-link:first-child{border-top:0}.mine-room .reserve-pill{white-space:nowrap;width:auto;min-width:84px;height:36px;min-height:36px;box-shadow:none;border-radius:8px;flex:none;align-self:center;gap:6px;padding:0 14px;font-size:13px;font-weight:500;line-height:1}.mine-room .reserve-pill:hover{background:#4d3d78}.mine-room .reserve-pill:focus-visible{outline-offset:3px;outline:2px solid #8e7ab8}.mine-link>span:first-child{flex:1;gap:3px;display:grid}.mine-link small{color:#85838b}.mine-link>svg,.mine-link>span:last-child:not(.pill){color:#8b8990;font-size:12px}.mine-link-button{width:100%;color:inherit;text-align:left;font:inherit;cursor:pointer;background:0 0;border-bottom:0;border-left:0;border-right:0;padding:0}.mine-link-button:hover{color:#4e3d7c;background:#faf9fd}.mine-link-button:focus-visible{z-index:1;outline-offset:2px;border-radius:6px;outline:2px solid #6d57a5;position:relative}.compact-select{width:auto;min-width:128px;padding:7px 28px 7px 10px}.notification-toggle{cursor:pointer}.notification-toggle>input{accent-color:#65509a;width:38px;height:22px}.mine-info-dialog{width:min(580px,100%)}.mine-info-heading{align-items:center;gap:12px;display:flex}.mine-info-heading p{color:#7a7880;margin:5px 0 0;font-size:13px}.mine-info-icon{color:#5b4a8a;background:#f1edf9;border-radius:10px;flex:none;place-items:center;width:42px;height:42px;display:grid}.mine-info-icon svg{width:21px}.mine-info-list{border-top:1px solid #eceaf0;gap:0;margin:22px 0 0;padding:0;list-style:none;display:grid}.mine-info-list li{border-bottom:1px solid #eceaf0;gap:5px;padding:15px 0;display:grid}.mine-info-list strong{font-size:14px}.mine-info-list span{color:#737079;font-size:13px;line-height:1.65}.dialog-backdrop{background:#2720376b}.dialog{border-radius:11px;box-shadow:0 24px 70px #251d3738}.booking-dialog{flex-direction:column;width:min(1080px,100%);padding:0;display:flex;overflow:hidden}.booking-dialog-body{min-height:0;padding:20px 20px 0;overflow:auto}.booking-dialog .dialog-head{margin-bottom:16px}.booking-dialog .booking-shortcuts>.btn{gap:5px;min-height:30px;padding:5px 10px;font-size:12px;line-height:18px}.booking-dialog .booking-shortcuts>.btn svg{width:14px;height:14px}.booking-dialog .dialog-head h2{font-size:20px}.booking-dialog .dialog-head .eyebrow{display:none}.booking-dialog .form-grid{gap:10px 12px;margin-top:12px}.booking-dialog .form-grid .wide{grid-column:auto}.booking-dialog .form-grid>.label{align-content:start}.booking-dialog .booking-subject-field .field,.booking-dialog .textarea{height:58px;min-height:58px}.booking-dialog .people-picker{max-height:86px;overflow:auto}.booking-dialog .selected-participants{align-content:flex-start;align-items:center}.booking-dialog .selected-participants>button{border-radius:16px;flex:none;align-items:center;gap:6px;max-width:100%;min-height:32px;padding:5px 10px;font-size:12px;line-height:20px;display:inline-flex}.booking-dialog .selected-participants>button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.booking-dialog .selected-participants>button svg{flex-shrink:0;width:14px;height:14px}.booking-dialog .need-picker,.booking-dialog .file-trigger{min-height:45px}.booking-dialog .slot-row{border:1px solid #0000;border-radius:10px;grid-template-columns:1.2fr .8fr auto .8fr 34px;padding:6px}.booking-dialog .slot-row.active{background:#f5f1fb;border-color:#b5a3d7}.active-slot-toolbar{color:#5b4a8a;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:16px;font-size:12px;display:flex}.active-slot-toolbar label{flex-wrap:wrap;align-items:center;gap:8px;font-weight:600;display:flex}.active-slot-toolbar .field{width:155px;min-height:34px;padding:5px 8px;font-size:13px}.booking-slot-grid [data-slot]{touch-action:none;-webkit-user-select:none;user-select:none}.slot-summary-chip{color:#6e6878;font:inherit;background:#fff;border:1px solid #ddd6ea;border-radius:999px;padding:5px 9px}.slot-summary-chip.active{color:#5b4a8a;background:#f0ecf8;border-color:#b5a3d7}.booking-dialog .slot-row .field,.booking-dialog .icon-btn.compact{height:36px;min-height:36px}.booking-dialog .capacity-tip{margin:10px 0 0}.booking-dialog .dialog-actions{background:#fffffffa;border-top:1px solid #eceaf0;flex:none;margin-top:12px;padding:12px 20px;box-shadow:0 -8px 22px #332a4d0d}.meeting-list>.empty{text-align:center;grid-column:1/-1}.booking-error-overlay{z-index:2000;background:#1f183047;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.booking-error-dialog{text-align:center;background:#fff;border-radius:16px;width:min(360px,100%);padding:24px;box-shadow:0 12px 40px #251b4933}.booking-error-dialog h3{margin:0 0 12px;font-size:17px}.booking-error-dialog p{color:#a33b47;margin:0 0 20px;font-size:14px;line-height:1.6}.meeting-list .empty .btn{margin-top:8px}.dialog-head p{color:#77757d;margin:4px 0 0;font-size:12px}.visual-slot-picker{background:#faf9fc;border:1px solid #e4e0eb;border-radius:9px;margin-top:18px;padding:15px}.slot-picker-head{justify-content:space-between;align-items:end;gap:16px;display:flex}.slot-picker-head>div:first-child{gap:3px;display:grid}.slot-picker-head span,.slot-picker-head>div:last-child{color:#807e86;font-size:11px}.slot-picker-head>div:last-child{align-items:center;gap:5px;display:flex}.slot-picker-head i.selected{background:#5b4a8a}.booking-hour-head{grid-template-columns:repeat(var(--booking-hours,14), minmax(0, 1fr));color:#69676f;column-gap:6px;margin-top:14px;font-size:10px;display:grid}.mobile-booking-hour-head{display:none}.booking-hour-head>span,.mobile-booking-hour-head>span{text-align:center;white-space:nowrap}.booking-slot-grid{grid-template-columns:repeat(var(--booking-hours,14), minmax(0, 1fr));touch-action:pan-y;-webkit-user-select:none;user-select:none;grid-template-rows:repeat(4,24px);gap:2px 6px;margin-top:6px;display:grid}.booking-slot-grid button{grid-column:var(--hour-column);grid-row:var(--quarter-row);background:#e8e9ef;border:0;border-radius:4px;height:24px;padding:0}.booking-slot-grid button.busy{background:#efc158}.booking-slot-grid button.selected{background:#5b4a8a}.selected-slot-summary{color:#797780;flex-wrap:wrap;align-items:center;gap:7px;margin-top:10px;font-size:11px;display:flex}.slot-chip-group{align-items:center;max-width:100%;padding:8px 10px 8px 0;display:inline-flex;position:relative}.slot-chip-remove{color:#797280;cursor:pointer;background:#fff;border:1px solid #e3deeb;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;padding:0;display:inline-flex;position:absolute;top:0;right:0}.slot-chip-remove:hover{color:#5b4a8a;background:#f0ecf8;border-color:#b5a3d7}.slot-chip-remove:focus-visible{outline-offset:2px;outline:2px solid #5b4a8a}.booking-time-results{background:#faf8fd;border:1px solid #e3deeb;border-radius:10px;gap:8px;padding:12px;font-size:14px;line-height:1.5;display:grid}.booking-time-result{color:#514a60;font-variant-numeric:tabular-nums;background:#fff;border:1px solid #e3deeb;border-left:3px solid #7965a5;border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:10px 12px;display:flex}.booking-time-result strong{color:#5b4a8a;white-space:nowrap;font-size:16px;font-weight:600}.booking-time-results small{color:#6e6878;font-size:12px}.booking-time-result small{white-space:nowrap;background:#f0ecf8;border-radius:999px;padding:2px 8px}.selected-slot-summary b{color:#5b4a8a;background:#f0ecf8;border:1px solid #d8cfea;border-radius:999px;padding:5px 9px}.people-picker button.selected,.file-trigger{color:#5b4a8a;background:#f0ecf8;border-color:#d8cfea}.subpage-backdrop{z-index:58;background:#f5f5f5;padding:18px;position:fixed;inset:0;overflow:auto}.subpage-shell{width:min(1180px,100%);min-height:calc(100vh - 36px);margin:0 auto}.subpage-head{background:#fff;border:1px solid #e3e1e8;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;min-height:70px;margin-bottom:12px;padding:12px 16px;display:flex}.subpage-head>div{grid-template-columns:auto 1fr;align-items:center;gap:2px 10px;display:grid}.subpage-head .icon-btn{grid-row:1/3}.subpage-head h2,.subpage-head p{margin:0}.subpage-head h2{font-size:19px}.subpage-head p{color:#7d7b83;font-size:12px}.detail-grid,.meeting-detail-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px;display:grid}.detail-card,.meeting-detail-grid>div{background:#fff;border:1px solid #e3e1e8;border-radius:10px;padding:18px}.detail-card h3{margin:0 0 14px;font-size:14px}.room-gallery{grid-template-columns:1fr;gap:7px;padding:7px;display:grid}.room-gallery img{object-fit:cover;border-radius:7px;width:100%;height:100%;display:block}.room-gallery>div{grid-template-rows:1fr 1fr;gap:7px;display:grid}.gallery-main{min-height:300px}.fact-grid{grid-template-columns:1fr 1fr;gap:10px;margin:0 0 22px;display:grid}.fact-grid div{background:#f8f7fa;border-radius:8px;padding:12px}.fact-grid dt{color:#85838b;font-size:11px}.fact-grid dd{margin:4px 0 0;font-size:13px;font-weight:600}.booking-notes>div{gap:9px;display:grid}.booking-notes span{background:#f8f7fa;border-radius:8px;grid-template-columns:auto 1fr;align-items:center;gap:2px 9px;min-height:56px;padding:9px;display:grid}.booking-notes svg{color:#5b4a8a;grid-row:1/3;width:18px}.booking-notes small{color:#7f7d85}.subpage-actions{background:#fff;border:1px solid #e3e1e8;border-radius:10px;justify-content:flex-end;gap:9px;padding:14px 16px;display:flex}.meeting-detail-grid .detail-section:first-child{border-top:0;margin-top:0;padding-top:0}.result-backdrop{place-items:center;display:grid}.result-card{text-align:center;width:min(620px,100%);box-shadow:var(--shadow);background:#fff;border:1px solid #e3e1e8;border-radius:12px;padding:32px}.result-icon{color:#5b4a8a;background:#f0ecf8;border-radius:50%;place-items:center;width:66px;height:66px;margin:0 auto 12px;display:grid}.result-icon svg{width:34px;height:34px}.result-card h2,.result-card>p{margin:0}.result-card>p{color:#77757d;margin-top:7px}.result-card dl{text-align:left;border-top:1px solid #eceaf0;margin:22px 0 0}.result-card dl div{border-bottom:1px solid #eceaf0;grid-template-columns:110px 1fr;gap:12px;padding:11px 4px;display:grid}.result-card dt{color:#85838b}.result-card dd{margin:0;font-weight:600}.overview-dialog{width:min(760px,100%)}.overview-grid{grid-template-columns:1fr 1fr;gap:8px;margin-top:18px;display:grid}.overview-grid button{text-align:left;color:#333;background:#fff;border:1px solid #e3e1e8;border-radius:8px;align-items:center;gap:10px;min-height:72px;padding:11px;display:flex}.overview-grid button>span{flex:1;gap:3px;display:grid}.overview-grid small{color:#85838b}@media (width<=900px){.prototype-filterbar{grid-template-columns:1fr 1fr}.type-control{grid-column:1/-1}.meeting-list,.detail-grid,.meeting-detail-grid{grid-template-columns:1fr}.matrix-header,.room-schedule-row{grid-template-columns:280px minmax(760px,1fr)}}@media (width<=640px){.topbar{height:48px}.topbar nav{display:none}main{padding:10px 10px 82px}.prototype-filterbar{grid-template-columns:1fr auto;gap:7px;padding:7px}.type-control,.date-control{grid-column:1/-1}.overview-control{min-width:0}.room-board{border-radius:8px}.matrix-header,.room-schedule-row{grid-template-columns:250px 710px;min-width:960px}.room-summary{grid-template-columns:54px minmax(0,1fr) auto;padding:9px}.room-summary>img{width:54px;height:48px}.meeting-list{grid-template-columns:1fr}.meeting-card{grid-template-columns:minmax(0,1fr) auto;align-items:start;column-gap:10px}.meeting-main{grid-column:1}.meeting-card>.btn{white-space:nowrap;grid-column:2;place-self:start end;width:auto;min-width:64px;min-height:44px}.mine-overview{flex-direction:column;align-items:start}.mine-stats{justify-content:space-around;width:100%}.dialog-backdrop{padding:0}.booking-dialog{border-radius:14px 14px 0 0}.visual-slot-picker{min-width:0}.slot-picker-head{flex-wrap:wrap;gap:8px;min-width:0}.booking-hour-head{display:none}.booking-slot-grid{grid-template-columns:repeat(var(--mobile-booking-hours,7), minmax(0, 1fr));grid-template-rows:auto repeat(4,30px);grid-auto-rows:30px;gap:2px 6px;min-width:0}.mobile-booking-hour-head{grid-column:1/-1;grid-template-columns:repeat(var(--mobile-booking-hours,7), minmax(0, 1fr));color:#69676f;column-gap:6px;margin-top:10px;font-size:10px;display:grid}.booking-slot-grid button{grid-column:var(--mobile-hour-column);grid-row:var(--mobile-quarter-row);height:30px}.booking-dialog .dialog-head{margin-bottom:14px}.booking-shortcuts>.btn{min-height:34px;font-size:12px}.selected-slot-summary b{overflow-wrap:anywhere;max-width:100%}.subpage-backdrop{padding:0}.subpage-shell{min-height:100vh}.subpage-head,.detail-card,.meeting-detail-grid>div,.subpage-actions{border-radius:0}.room-gallery{grid-template-columns:1fr}.room-gallery>div{grid-template-rows:120px;grid-template-columns:1fr 1fr}.gallery-main{min-height:220px}.overview-grid,.fact-grid{grid-template-columns:1fr}}.matrix-header,.room-schedule-row{grid-template-columns:minmax(280px,320px) minmax(0,1fr);min-width:0}.room-schedule-row{min-height:132px}.room-summary{grid-template-rows:auto 32px;grid-template-columns:minmax(0,1fr) 98px;gap:8px 10px;padding:14px 16px}@media (width>=641px){.room-summary .room-tags{box-sizing:border-box;padding-right:48px}.favorite-room{top:14px;right:16px}}.room-availability{box-sizing:border-box;letter-spacing:.01em;justify-content:flex-start;place-self:center start;width:max-content;max-width:100%;min-height:30px;padding:0 12px;font-size:12px;line-height:1.2}.schedule-cells{grid-template-rows:1fr;grid-template-columns:repeat(14,minmax(0,1fr));grid-auto-flow:row;gap:6px;padding-inline:5px}.room-schedule-hours{color:#6a6a6f;text-align:center;white-space:nowrap;grid-template-columns:repeat(14,minmax(0,1fr));gap:6px;margin-bottom:7px;padding-inline:5px;font-size:10px;line-height:1.4;display:grid}.schedule-hour{grid-template-rows:repeat(4,12px);grid-template-columns:minmax(0,1fr);grid-auto-flow:row;gap:2px;min-width:0;display:grid}.schedule-cells .schedule-hour>span.closed,.matrix-title i.closed-dot{opacity:.55;background:#d4d6dd}.schedule-hour>span,.schedule-cells .schedule-hour>span:nth-child(n){width:100%;height:12px;margin:0;display:block}@media (width<=640px){.topbar{display:none}main{width:100%;max-width:none;padding:8px 12px 94px}.prototype-filterbar{border-radius:16px;grid-template-rows:48px;grid-template-columns:minmax(0,1fr) 48px 48px;gap:10px;min-height:68px;margin-bottom:12px;padding:10px}.type-control{grid-area:1/1}.type-control>span,.date-control{display:none}.overview-control{grid-area:1/2}.filter-trigger{grid-area:1/3}.room-board{box-shadow:none;background:0 0;border:0;border-radius:0;grid-template-columns:1fr;gap:12px;display:grid;overflow:visible}.room-board>.room-loading-region>.room-loading-content{gap:12px;display:grid}.matrix-header{display:none}.room-schedule-row{background:#fff;border:1px solid #e1e3e7;border-radius:16px;grid-template-rows:auto auto;grid-template-columns:minmax(0,1fr);gap:12px;min-width:0;min-height:0;padding:14px;display:grid;box-shadow:0 8px 22px #1f2a370d}.room-summary{grid-template-rows:auto 30px;grid-template-columns:minmax(0,1fr) auto;gap:10px;width:auto;padding:0;display:grid}.room-identity{grid-area:1/1;grid-template-columns:70px minmax(0,1fr)}.room-availability{grid-area:2/1/auto/-1;justify-self:stretch;width:100%;min-height:32px;padding-inline:12px}.reserve-pill{width:70px}.room-timeline{width:auto;min-width:0;padding:10px}.schedule-cells{grid-template-columns:repeat(14,minmax(0,1fr));gap:4px;min-width:0;padding:0}.schedule-hour{grid-template-rows:repeat(4,12px);grid-template-columns:minmax(0,1fr);gap:2px}.room-schedule-hours{gap:4px;padding:0;font-size:9px}.schedule-hour>span,.schedule-cells .schedule-hour>span:nth-child(n){height:12px;margin:0;display:block}.mobile-schedule-hours{grid-template-columns:repeat(14,minmax(0,1fr));gap:4px}.mobile-tabs button.active{color:#5b4a8a;background:#f0ecf8}}@media (width>=641px) and (width<=900px){.topbar nav{margin-inline:auto}.filter-trigger{grid-column:1/-1;width:100%}}@media (width<=640px){.mobile-date-strip{grid-template-columns:56px repeat(7,minmax(0,1fr));gap:2px;min-height:92px;padding:10px 8px}.mobile-date-strip .date-strip-home strong{font-size:26px}.mobile-date-strip b{border-radius:10px;width:34px;height:34px;font-size:15px}.mobile-date-strip span{font-size:11px}.booking-dialog{padding:0}.booking-dialog-body{padding:20px 16px 0}.booking-dialog .dialog-actions{width:100%;padding:12px 16px calc(12px + env(safe-area-inset-bottom));margin:10px 0 0}.booking-dialog .dialog-actions .btn{flex:1}}.booking-slot-grid button.conflict,.booking-slot-grid button.conflict.selected{background:#df6b65;box-shadow:inset 0 0 0 1px #b94742}.overview-bookings{gap:12px;display:grid}.overview-date-filter{align-items:center;gap:8px;margin-bottom:16px;display:flex}.overview-date-filter label{align-items:center;gap:8px;min-width:0;font-size:12px;display:flex}.overview-date-filter .field{width:160px;min-width:0;min-height:36px;padding:6px 8px;font-size:12px}.overview-date-filter .btn{white-space:nowrap;min-height:36px;padding:6px 12px;font-size:12px}.overview-dialog>.dialog-head h2{font-size:18px;line-height:1.4}.overview-dialog>.dialog-head{align-items:flex-start;margin-bottom:20px}.overview-dialog>.dialog-head p{margin:6px 0 0;font-size:12px;line-height:1.6}.overview-device-tags{flex-wrap:wrap;justify-content:flex-end;gap:6px;min-width:0;display:flex}.overview-device-tags>span{color:#726582;overflow-wrap:anywhere;background:#fff;border:1px solid #e0d8ed;border-radius:6px;padding:2px 6px;font-size:12px;font-weight:400;line-height:1.5}.overview-room{border:1px solid #e4e1ec;border-radius:14px;overflow:hidden}.overview-room header{background:#f8f6fc;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px;display:flex}.overview-room header button{color:#5c4b8c;text-align:left;overflow-wrap:anywhere;background:0 0;border:0;min-width:0;padding:4px 0;font-size:13px;font-weight:600;line-height:1.5}.overview-columns,.overview-booking{overflow-wrap:anywhere;grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr) minmax(0,1.4fr) 110px minmax(0,1.4fr);gap:10px;padding:8px 12px;font-size:12px;line-height:1.5;display:grid}.overview-columns{color:#777;background:#fafafa}.overview-refresh{margin-left:auto}.overview-cancel-confirm{background:#fff8f8;border:1px solid #e2ced2;border-radius:10px;margin-bottom:14px;padding:14px;font-size:13px}.overview-cancel-confirm .field{width:100%;margin:10px 0;display:block}.overview-cancel{color:#a33b47;white-space:nowrap;font-size:12px}@media (width>=641px){.overview-manageable .overview-columns,.overview-manageable .overview-booking{grid-template-columns:minmax(0,1.4fr) minmax(0,.8fr) minmax(0,1.4fr) 110px minmax(0,1.4fr) 70px}}.overview-booking{border-top:1px solid #eeecf2}.overview-booking b{font-weight:500}.overview-empty{color:#777;margin:0;padding:8px 12px;font-size:12px}.participant-directory{gap:10px;display:grid}@media (width<=640px){.overview-columns{display:none}.overview-booking{grid-template-columns:minmax(0,1fr) auto}.overview-booking b{grid-column:1/-1}.overview-participants{grid-area:3/1/auto/-1}.overview-owner:before{content:"预订人：";color:#777}.overview-participants:before{content:"参会人：";color:#777}.overview-booking>span:last-child{color:#777;grid-column:1/-1}.overview-room header{flex-wrap:wrap;align-items:flex-start}.overview-device-tags{justify-content:flex-start}}.room-loading-region{position:relative}.room-loading-region.is-loading{min-height:320px}.room-loading-region.is-loading .room-loading-content{opacity:.35}.room-loading-overlay{z-index:3;text-align:center;border-radius:inherit;cursor:progress;background:#faf8fd73;padding:24px 12px;position:absolute;inset:0}.room-loading-label{color:#5b4a8a;background:#fff;border:1px solid #e8e1f2;border-radius:12px;align-items:center;gap:10px;padding:10px 16px;font-size:12px;display:inline-flex;position:sticky;top:100px;box-shadow:0 3px 12px #5b4a8a0f}.room-loading-label .spinner{border-width:2px;border-color:#5b4a8a #e8e1f2 #e8e1f2;width:18px;height:18px}@media (prefers-reduced-motion:reduce){.room-loading-label .spinner{animation:none}}.room-gallery>div{flex-wrap:wrap;gap:8px;display:flex}.room-gallery-thumb{background:0 0;border:1px solid #0000;border-radius:8px;width:80px;padding:2px}.room-gallery-thumb[aria-pressed=true]{border-color:#5b4a8a}.room-gallery-thumb img{object-fit:cover;border-radius:6px;width:100%;height:56px}.org-picker{width:100%;min-width:0;font-size:14px;position:relative}.org-selection{background:#faf9fc;border:1px solid #e1ddea;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;min-height:44px;padding:8px;display:flex}.org-picker button{font:inherit;cursor:pointer}.org-picker .org-chip{color:#5b4a8a;background:#f0ecf8;border:1px solid #d8ccec;border-radius:20px;align-items:center;gap:8px;padding:5px 10px;display:inline-flex}.org-picker .org-trigger{color:#5b4a8a;background:0 0;border:0;flex:1;justify-content:space-between;align-items:center;gap:16px;min-height:32px;padding:6px 10px;display:flex}.org-chevron{flex-shrink:0;transition:transform .16s}.org-trigger[aria-expanded=true] .org-chevron{transform:rotate(180deg)}.org-dropdown{z-index:100;box-sizing:border-box;background:#fff;border:1px solid #d8ccec;border-radius:12px;flex-direction:column;width:100%;margin-top:8px;padding:12px;scroll-margin-block:16px;display:flex;position:relative;overflow:hidden;box-shadow:0 8px 28px #33294f26}.org-dropdown>input{box-sizing:border-box;width:100%;font:inherit;border:1px solid #ddd;border-radius:8px;flex-shrink:0;padding:10px}.org-tree{overscroll-behavior:contain;flex:auto;min-height:0;max-height:260px;margin:8px 0;overflow:auto}.org-tree summary{cursor:pointer;padding:9px 4px;font-weight:600}.org-branch{border-left:1px solid #eee;margin-left:16px;padding-left:8px}.org-picker .org-person{cursor:pointer;align-items:center;gap:10px;padding:8px;display:flex}.org-person input{accent-color:#5b4a8a;width:16px;height:16px}.org-person small{color:#85818b;font-size:12px;display:block}.org-footer{border-top:1px solid #eee;flex-shrink:0;justify-content:space-between;align-items:center;padding-top:8px;display:flex}@media (width<=600px){.org-dropdown>input{font-size:16px}.org-dropdown{padding:10px}.org-tree summary{min-height:24px}}@media (prefers-reduced-motion:reduce){.org-chevron{transition:none}}.org-footer button{color:#fff;background:#5b4a8a;border:0;border-radius:6px;padding:6px 14px}.org-picker button:focus-visible,.org-tree summary:focus-visible{outline-offset:2px;outline:2px solid #7965a5}
