:root{font-family:DM Sans,sans-serif;color:#22332c;background:#f5f6f2;font-synthesis:none;text-rendering:optimizeLegibility;--green: #173d32;--green-2: #315e4d;--green-3: #4f8069;--gold: #c2a36b;--ink: #26362f;--muted: #7d8880;--line: #e7e9e4;--surface: #fff;--cream: #f6f5ef;--rose: #b85e54;--shadow: 0 8px 24px rgba(31, 53, 42, .045)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f5f6f2}button,input,select,textarea{font:inherit}button{cursor:pointer}a{color:inherit}.boot-screen{height:100vh;display:grid;place-content:center;justify-items:center;gap:12px;color:var(--green);font-size:13px;letter-spacing:.12em;text-transform:uppercase}.brand-logo{display:block;flex:0 0 auto;object-fit:contain;background:#fff}.boot-logo{width:104px;height:114px;border-radius:3px}.guest-shell{min-height:100vh;color:#26352e;background:#f7f6f0}.guest-top{height:78px;padding:0 max(26px,calc((100vw - 1210px)/2));display:flex;align-items:center;justify-content:space-between;background:#fff;border-bottom:1px solid #ecebe4}.guest-brand{display:flex;gap:12px;align-items:center;color:var(--green)}.guest-logo{width:68px;height:68px;border-radius:3px}.guest-brand span{display:block;color:#9e9277;font-size:8px;letter-spacing:.18em}.guest-admin-link{display:inline-flex;align-items:center;gap:8px;color:#738078;border:0;background:transparent;font-size:12px;transition:color .2s}.guest-admin-link:hover{color:var(--green)}.guest-body{width:min(1170px,calc(100% - 56px));margin:0 auto;display:grid;grid-template-columns:minmax(280px,.82fr) minmax(540px,1.2fr);gap:78px;padding:72px 0 30px;align-items:start}.guest-intro{padding-top:46px;position:sticky;top:80px}.eyebrow{display:inline-flex;align-items:center;gap:8px;color:#a48a59;font-size:9px;letter-spacing:.16em;line-height:1.5;font-weight:700}.eyebrow>span{width:17px;height:1px;background:var(--gold)}.guest-intro h1{margin:20px 0 17px;color:var(--green);font:500 clamp(38px,4vw,54px)/1.14 "Playfair Display",serif;letter-spacing:-.025em}.guest-intro h1 em{color:#ac9260;font-weight:500}.guest-intro p{max-width:340px;margin:0;color:#777f78;font-size:14px;line-height:1.8}.intro-signature{display:flex;align-items:center;gap:11px;margin-top:33px;color:#56685d;font:italic 13px Playfair Display,serif}.signature-line{width:35px;height:1px;background:#c1a978}.guest-card{background:#fff;border:1px solid #ecebe5;border-radius:7px;box-shadow:0 18px 46px #2f38290f;min-width:0;overflow:hidden}.guest-card-heading{display:flex;justify-content:space-between;align-items:center;padding:27px 31px 21px;border-bottom:1px solid #f0f0eb}.guest-card-heading h2{margin:7px 0 0;color:var(--green);font:500 22px Playfair Display,serif}.step-chip{color:var(--green);font:600 14px DM Sans,sans-serif;letter-spacing:.04em}.step-chip span{color:#9ca39c;font-size:11px;font-weight:400}.choice-grid{padding:24px 31px 29px}.choice-card{display:flex;align-items:center;text-align:left;gap:15px;width:100%;margin-bottom:12px;padding:16px;color:var(--ink);background:#fff;border:1px solid #e9ece7;border-radius:5px;transition:.2s ease}.choice-card:hover{border-color:#91aa9a;box-shadow:0 4px 14px #24453214;transform:translateY(-1px)}.choice-icon{flex:0 0 auto;width:43px;height:43px;display:grid;place-items:center;color:var(--green-2);background:#eef3ef;border-radius:4px}.choice-card strong{display:block;color:#24372e;font-size:14px;font-weight:600}.choice-card span{display:block;margin-top:4px;color:#818981;font-size:11px}.choice-arrow{margin-left:auto;color:#98a69b;transition:transform .2s}.choice-card:hover .choice-arrow{transform:translate(3px);color:var(--green)}.privacy-note{display:flex;gap:9px;align-items:flex-start;margin-top:21px;padding-top:16px;border-top:1px solid #f0f0eb;color:#838c85;font-size:10px;line-height:1.6}.privacy-note svg{flex-shrink:0;color:#76917e}.guest-form{padding:17px 31px 27px}.back-link{display:inline-flex;align-items:center;gap:7px;padding:0;margin-bottom:16px;border:0;color:#78847c;background:none;font-size:11px}.back-link:hover{color:var(--green)}.form-context{display:flex;gap:11px;align-items:center;padding:12px;margin-bottom:18px;border-radius:4px;background:#f6f7f3}.choice-icon.small{width:35px;height:35px}.form-context strong{display:block;color:#2b3d33;font-size:12px}.form-context span{display:block;margin-top:3px;color:#849087;font-size:10px}.change-type{margin-left:auto;border:0;color:#648272;background:transparent;font-size:10px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:15px;color:#59675e;font-size:11px;font-weight:600}.field>span>small{color:#939c95;font-weight:400}.field input,.field select,.field textarea,.points-rule input{width:100%;min-height:41px;padding:9px 11px;color:#2c3b33;outline:none;border:1px solid #e1e5df;border-radius:3px;background:#fff;font-size:12px;transition:border .15s,box-shadow .15s}.field input:focus,.field select:focus,.field textarea:focus{border-color:#7a9b84;box-shadow:0 0 0 3px #46785714}.field input:disabled,.field input:read-only{color:#6c776f;background:#f7f8f6}.field textarea{resize:vertical;line-height:1.55}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.rating-title{display:flex;justify-content:space-between;align-items:end;margin:16px 0 11px}.rating-title h3{margin:5px 0 0;color:#283a30;font:500 17px Playfair Display,serif}.required-hint{color:#929a93;font-size:9px}.rating-legend{display:flex;flex-wrap:wrap;gap:5px 10px;margin:0 0 7px;padding:7px 8px;border-radius:3px;background:#f8f9f6;color:#879188;font-size:7px}.rating-legend span{white-space:nowrap}.rating-legend b{color:#607964;font-size:8px}.section-divider{display:flex;align-items:center;gap:7px;margin:11px 0 1px;color:#8f997f;font-size:8px;letter-spacing:.13em;font-weight:700}.section-divider svg{color:#b39a67}.divider-line{height:1px;flex:1;margin-left:3px;background:#eceee8}.facilities-divider{margin-top:13px;padding-top:12px;border-top:1px solid #f0f1ed}.rating-row{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid #f1f2ee}.rating-aspect{min-width:0;display:flex;align-items:center;gap:10px}.rating-aspect-copy{min-width:0;display:grid;gap:3px}.aspect-index{color:#b1b9af;font:500 9px DM Sans,sans-serif}.rating-aspect strong{color:#435148;font-size:13px;line-height:1.35;font-weight:600}.rating-aspect-label{color:#87928a;font-size:11px;line-height:1.3}.rating-controls{display:flex;gap:4px;align-items:center;flex-shrink:0}.rating-choice,.na-choice{width:27px;height:27px;display:grid;place-items:center;padding:0;border:1px solid #e2e7e1;border-radius:3px;color:#718078;background:#fff;font-size:10px;transition:.16s}.rating-choice{width:34px;height:34px;border-radius:50%;font-size:21px;line-height:1}.rating-choice:hover{border-color:#91ac98;color:var(--green)}.rating-choice.selected{border-color:var(--green);color:#fff;background:var(--green);box-shadow:0 2px 5px #1c3d2d2e}.na-choice{width:38px;margin-left:3px;font-size:9px}.na-choice:hover,.na-choice.selected-na{border-color:#d6bf8f;color:#805f23;background:#faf6e8}.guest-form-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:19px;padding-top:16px;border-top:1px solid #eeefea}.score-preview{display:flex;align-items:center;flex-wrap:wrap;gap:5px 7px;color:#818b83;font-size:9px}.score-preview b{color:var(--green);font-size:12px;font-weight:600}.score-preview b small{color:#9aa29b;font-size:9px;font-weight:400}.score-separator{height:15px;width:1px;margin:0 4px;background:#e3e7e0}.btn{min-height:39px;display:inline-flex;justify-content:center;align-items:center;gap:8px;padding:0 15px;border-radius:3px;font-size:11px;font-weight:600;transition:.18s ease;white-space:nowrap}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{color:#fff;border:1px solid var(--green);background:var(--green);box-shadow:0 3px 8px #1c3e301a}.btn-primary:hover:not(:disabled){background:#245442;border-color:#245442;transform:translateY(-1px)}.btn-outline{color:#38594a;border:1px solid #dce4dc;background:#fff}.btn-outline:hover{border-color:#98b09d;background:#f9fbf8}.submit-review{min-width:157px}.thankyou-state{min-height:410px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:36px 40px;text-align:center}.success-icon{width:56px;height:56px;display:grid;place-items:center;margin-bottom:19px;border-radius:50%;color:#fff;background:var(--green-2);box-shadow:0 0 0 7px #eff4ef}.thankyou-state h2{margin:12px 0 10px;color:var(--green);font:500 29px/1.25 Playfair Display,serif}.thankyou-state p{max-width:320px;margin:0 0 22px;color:#818b83;font-size:12px;line-height:1.7}.guest-footnote{width:100%;grid-column:1 / -1;display:flex;justify-content:space-between;padding-top:18px;color:#9ba199;font-size:9px}.guest-footnote span:first-child{color:#778879;font-size:8px;letter-spacing:.15em}.app-shell{min-height:100vh}.sidebar{width:248px;position:fixed;z-index:20;inset:0 auto 0 0;display:flex;flex-direction:column;padding:0 14px;color:#d8e1da;background:#173d32;box-shadow:3px 0 14px #142d2314}.brand-lockup{height:76px;display:flex;align-items:center;gap:10px;padding:0 10px;background:transparent}.brand-mark{width:58px;height:32px;flex:0 0 58px;overflow:hidden;border-radius:3px;background:#fff}.sidebar-logo{display:block;width:58px;height:auto;object-fit:cover;object-position:top center}.brand-name{display:flex;flex-direction:column;align-items:flex-start;line-height:1}.brand-name span{color:#d2bf91;font-size:7px;font-weight:700;letter-spacing:.2em}.brand-name strong{margin-top:2px;color:#f5f2e9;font:500 18px/.95 Playfair Display,serif;letter-spacing:.025em}.brand-name small{margin-top:3px;color:#d2bf91;font-size:7px;font-weight:600;letter-spacing:.21em}.brand-lockup .mobile-close{color:#526359}.side-caption{padding:25px 12px 9px;color:#8ca194;font-size:8px;letter-spacing:.16em;font-weight:700}.side-nav{display:flex;flex:1;flex-direction:column;gap:3px;overflow-y:auto;padding-bottom:12px}.nav-link{width:100%;min-height:39px;display:flex;align-items:center;gap:12px;padding:0 11px;border:0;border-radius:4px;color:#c4d1c7;background:transparent;text-align:left;font-size:11px;transition:.16s}.nav-link:hover{color:#fff;background:#ffffff12}.nav-link.active{color:#fff;background:#ffffff21;box-shadow:inset 2px 0 #d0b476}.nav-link.active svg{color:#d6bd86}.nav-dot{width:5px;height:5px;margin-left:auto;border-radius:50%;background:#c1ab78}.calendar-emoji,.qr-glyph{width:18px;color:currentColor;text-align:center;font-size:20px;line-height:1}.side-footer{min-height:68px;display:flex;align-items:center;gap:9px;padding:0 9px;border-top:1px solid rgba(239,244,238,.12)}.profile-avatar{width:33px;height:33px;display:grid;place-items:center;flex-shrink:0;border:1px solid #d2bf91;border-radius:50%;color:#f2e3bc;background:#ffffff14;font:500 14px Playfair Display,serif}.profile-brand-avatar{width:38px;height:38px;overflow:hidden;padding:2px;background:#fff}.profile-brand-avatar img{display:block;width:100%;height:100%;border-radius:50%;object-fit:contain;object-position:center}.profile-data{min-width:0;flex:1}.profile-data strong,.profile-data span{display:block;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-data strong{color:#f2f4ed;font-size:10px;font-weight:600}.profile-data span{margin-top:3px;color:#aab9ad;font-size:9px}.icon-btn{width:32px;height:32px;display:inline-grid;place-items:center;padding:0;color:#66766c;border:0;border-radius:4px;background:transparent}.icon-btn:hover{color:var(--green);background:#1a2717}.logout-btn{color:#aab8ad}.logout-btn:hover{color:#fff;background:#ffffff1a}.main-area{min-height:100vh;margin-left:248px}.topbar{height:58px;display:flex;align-items:center;justify-content:space-between;padding:0 31px;border-bottom:1px solid #e9ebe5;background:#ffffffe3}.crumb{display:flex;align-items:center;gap:10px;color:#8b958d;font-size:10px}.crumb strong{color:#43574b;font-weight:600}.crumb-slash{color:#ccd1ca}.topbar-right{display:flex;align-items:center;gap:20px}.live-badge{display:flex;align-items:center;gap:6px;color:#597761;font-size:9px}.live-badge i,.matching-badge i,.status-pill i{width:6px;height:6px;display:inline-block;border-radius:50%;background:#6fa17a}.date-label{color:#88928a;font-size:10px}.page-wrap{max-width:1440px;padding:28px 31px 50px;margin:auto}.page-heading{min-height:75px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.page-heading h1{margin:4px 0 3px;color:#27392f;font:500 26px/1.25 Playfair Display,serif}.page-heading p{margin:0;color:#879188;font-size:11px}.page-heading .eyebrow{font-size:8px}.page-heading .btn{min-height:36px}.filter-bar{display:flex;align-items:flex-start;gap:14px;margin:0 0 16px;padding:12px 14px;border:1px solid #e8ebe5;border-radius:5px;background:#fff;box-shadow:0 3px 12px #1f352a06}.filter-label{display:flex;align-items:center;gap:6px;flex-shrink:0;padding-top:9px;color:#526c5a;font-size:10px;font-weight:600}.filter-controls{display:flex;flex:1;flex-wrap:wrap;align-items:center;gap:8px}.filter-controls select,.filter-date input{height:30px;min-width:97px;padding:0 8px;color:#55645a;border:1px solid #e5e8e2;border-radius:3px;background:#fff;outline:none;font-size:9px}.filter-controls select{flex:1}.filter-controls select:focus,.filter-date input:focus{border-color:#9cb29f}.filter-date{display:flex;align-items:center;gap:5px;color:#929b93;font-size:9px}.filter-date input{width:119px;min-width:115px}.clear-filters{padding:6px 3px;border:0;color:#768c7d;background:none;font-size:9px}.clear-filters:hover{color:var(--green)}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:15px}.metric-card{min-height:129px;position:relative;display:flex;flex-direction:column;padding:15px 17px 13px;border:1px solid #e8ebe5;border-radius:5px;background:#fff;box-shadow:0 3px 12px #1f352a05;overflow:hidden}.metric-card:after{content:"";position:absolute;right:-19px;bottom:-37px;width:91px;height:91px;border:1px solid rgba(49,94,77,.07);border-radius:50%}.metric-icon{width:31px;height:31px;display:grid;place-items:center;margin-bottom:7px;color:#47715b;background:#edf3ee;border-radius:4px}.accent-gold .metric-icon{color:#9d7e42;background:#f7f3e8}.accent-blue .metric-icon{color:#507993;background:#edf4f6}.accent-rose .metric-icon{color:#aa665d;background:#f8efed}.alert-icon{animation:none}.metric-label{color:#7f8b81;font-size:9px}.metric-value{margin-top:1px;color:#263c30;font:600 23px DM Sans,sans-serif;letter-spacing:-.03em}.metric-foot{margin-top:3px;color:#a0a8a0;font-size:8px}.dashboard-grid{display:grid;grid-template-columns:1.45fr 1fr;gap:14px;margin-bottom:14px}.dashboard-grid.second-grid{grid-template-columns:1.15fr 1fr}.panel{min-width:0;padding:17px 18px;border:1px solid #e8ebe5;border-radius:5px;background:#fff;box-shadow:0 3px 12px #1f352a05}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:15px}.panel-head h2{margin:0;color:#32453a;font:500 15px Playfair Display,serif}.panel-head p{margin:5px 0 0;color:#939c94;font-size:9px}.legend-pill{display:flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid #e8eee8;border-radius:10px;color:#738478;font-size:8px}.legend-pill i{width:7px;height:7px;border-radius:50%;background:#4f8069}.trend-head-actions{display:flex;align-items:center;gap:7px}.trend-switch{display:flex;padding:2px;border-radius:10px;background:#f2f4f0}.trend-switch button{padding:4px 7px;border:0;border-radius:9px;color:#889389;background:transparent;font-size:8px}.trend-switch button.active{color:#44644d;background:#fff;box-shadow:0 1px 3px #203d291c}.trend-chart{height:230px;position:relative;display:flex;padding-left:30px;flex-direction:column}.trend-chart svg{width:100%;height:195px;overflow:visible}.chart-y-labels{position:absolute;inset:4px auto 25px 0;display:flex;flex-direction:column;justify-content:space-between;color:#a2aaa2;font-size:8px}.chart-x-labels{display:flex;justify-content:space-between;padding-top:6px;color:#a2aaa2;font-size:8px}.aspect-panel{min-height:278px}.aspect-bars{display:flex;flex-direction:column;gap:13px}.aspect-bar-row>div:first-child{display:flex;justify-content:space-between;gap:8px;margin-bottom:5px;color:#728077;font-size:9px}.aspect-bar-row b{color:#435e4c;font-weight:600}.bar-track{height:5px;overflow:hidden;border-radius:5px;background:#eef1ec}.bar-track i{height:100%;display:block;border-radius:inherit;background:#5c896d}.bar-track .bar-tone-1{background:#83a783}.bar-track .bar-tone-2{background:#c3ab71}.bar-track .bar-tone-3{background:#75969a}.performance-list,.staff-performance{display:flex;flex-direction:column}.performance-row{min-height:43px;display:flex;align-items:center;gap:9px;border-top:1px solid #f0f1ed}.performance-avatar{width:29px;height:29px;display:grid;place-items:center;color:#64806c;background:#f0f4ef;border-radius:4px}.performance-name{min-width:0;display:flex;flex:1;flex-direction:column;gap:3px}.performance-name strong{overflow:hidden;color:#435349;font-size:9px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.performance-name span{color:#9aa39b;font-size:8px}.tiny-progress{width:74px;height:4px;overflow:hidden;border-radius:4px;background:#edf0eb}.tiny-progress i{height:100%;display:block;border-radius:inherit;background:#8bac91}.performance-score{width:31px;color:#45634f;text-align:right;font-size:10px}.staff-performance-row{min-height:43px;display:flex;align-items:center;gap:9px;border-top:1px solid #f0f1ed}.rank{width:19px;color:#a7aea7;font:500 9px DM Sans,sans-serif}.rank-1{color:#b29552}.rank-2{color:#8e9c91}.rank-3{color:#ad805e}.small-avatar{width:28px;height:28px;color:#436b52;background:#eff4ef;border:0;font-size:11px}.staff-points{display:flex;align-items:baseline;gap:4px;color:#56725e}.staff-points b{font-size:10px}.staff-points span{color:#a1aaa2;font-size:8px}.text-button{display:inline-flex;align-items:center;gap:5px;padding:4px 0;border:0;color:#4c735c;background:transparent;font-size:9px;font-weight:600}.text-button:hover{color:#1d4834}.text-button.subtle{color:#999}.recent-panel{padding-bottom:3px}.table-wrap{width:100%;overflow:auto;border:1px solid #e8ebe5;border-radius:5px;background:#fff}.table-wrap table{width:100%;border-collapse:collapse;text-align:left;white-space:nowrap}.table-wrap th{height:35px;padding:0 13px;color:#8a958b;border-bottom:1px solid #e8ebe5;background:#fafbf9;font-size:8px;font-weight:700;letter-spacing:.04em}.table-wrap td{height:54px;padding:8px 13px;color:#5d6b61;border-bottom:1px solid #f0f1ed;font-size:9px}.table-wrap tbody tr:last-child td{border-bottom:0}.table-wrap td b{color:#405247;font-weight:600}.click-row{cursor:pointer;transition:background .13s}.click-row:hover{background:#fafcf9}.table-sub{display:block;margin-top:4px;color:#9da69e;font-size:8px}.eval-id{color:#567961!important;font-size:9px}.type-pill{display:inline-flex;align-items:center;padding:4px 7px;border-radius:3px;font-size:8px}.room-pill{color:#4c6d59;background:#eef4ee}.area-pill{color:#687f86;background:#eff4f4}.other-task-pill{color:#866d36;background:#f7f3e8}.attitude-pill{color:#795f82;background:#f4eff7}.score-value{color:#375745;font-weight:700;font-size:10px}.out-of-five{margin-left:2px;color:#abb2ab;font-size:8px}.matching-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border-radius:12px;font-size:8px}.matching-badge.matched{color:#52765c;background:#eff6f0}.matching-badge.matched i{background:#76a47d}.matching-badge.needs{color:#a36f33;background:#fbf4e8}.matching-badge.needs i{background:#d0a65a}.row-open{width:26px;height:26px;color:#7f9084}.muted{color:#98a198!important}.table-summary{display:flex;justify-content:space-between;align-items:center;margin:10px 0;color:#98a098;font-size:9px}.table-summary b{color:#48644f;font-size:12px}.table-search{width:208px;display:flex;align-items:center;gap:7px;padding:0 9px;border:1px solid #e5e9e3;border-radius:3px;color:#9ca59c;background:#fff}.table-search input{width:100%;height:31px;padding:0;color:#526057;border:0;outline:0;font-size:9px}.table-search input::placeholder{color:#a6ada6}.compact-table{border:0}.compact-table th:first-child,.compact-table td:first-child{padding-left:0}.compact-table th:last-child,.compact-table td:last-child{padding-right:0}.compact-table th{background:#fff}.empty-mini{padding:26px 12px;color:#969f97;text-align:center;font-size:10px}.empty-chart{height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#99a39a}.empty-chart-icon{width:40px;height:40px;display:grid;place-items:center;margin-bottom:2px;border-radius:50%;color:#72917b;background:#f0f5f0}.empty-chart b{color:#68786c;font-size:10px}.empty-chart span{font-size:9px}.page-loading{display:flex;align-items:center;justify-content:center;gap:10px;min-height:240px;color:#849088;font-size:11px}.inline-loading{display:flex;min-height:70px;align-items:center;justify-content:center;gap:9px;color:#879289;font-size:10px}.spinner{width:16px;height:16px;border:2px solid #dce6dc;border-top-color:#426b52;border-radius:50%;animation:spin .75s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.schedule-info,.config-notice{display:flex;align-items:center;gap:11px;margin-bottom:14px;padding:13px 15px;border:1px solid #e1e9e1;border-radius:4px;color:#748276;background:#f4f8f3}.schedule-info p,.config-notice p{margin:0;font-size:10px;line-height:1.6}.schedule-info b,.config-notice b{color:#496650}.info-icon{width:29px;height:29px;display:grid;place-items:center;flex-shrink:0;color:#648168;background:#e8f0e7;border-radius:4px}.status-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border-radius:10px;font-size:8px}.status-pill.on{color:#54745b;background:#eff6ef}.status-pill.off{color:#969e96;background:#f3f4f2}.status-pill.off i{background:#a9b0a9}.row-actions{display:flex;align-items:center;gap:11px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:20px;background:#182b226e;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.form-modal,.login-modal{width:min(445px,100%);max-height:calc(100vh - 40px);overflow:auto;padding:23px 25px;border:1px solid #e6ebe5;border-radius:6px;background:#fff;box-shadow:0 20px 70px #132a1e30}.modal-head{display:flex;align-items:flex-start;justify-content:space-between;margin:0 0 20px}.modal-head h2{margin:4px 0 0;color:#2d4034;font:500 20px Playfair Display,serif}.modal-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:22px;padding-top:15px;border-top:1px solid #eef0eb}.schedule-modal{width:min(555px,100%)}.schedule-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.bulk-schedule-modal{width:min(700px,100%)}.bulk-intro{margin:-9px 0 16px;color:#7f8b81;font-size:10px;line-height:1.55}.location-option input{accent-color:#315e4d}.picker-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}.location-search{min-height:35px;display:flex;align-items:center;gap:8px;padding:0 9px;margin-top:7px;border:1px solid #e6eae4;border-radius:4px;color:#8a968c;background:#fff}.location-search:focus-within{border-color:#9bb39d;box-shadow:0 0 0 2px #46785712}.location-search input{width:100%;min-width:0;padding:7px 0;border:0;outline:0;color:#435148;background:transparent;font-size:10px}.location-picker{max-height:220px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:7px;overflow:auto;padding:8px;margin-top:7px;border:1px solid #e6eae4;border-radius:4px}.location-option{min-height:38px;width:100%;min-width:0;display:grid;grid-template-columns:minmax(0,1fr);align-content:start;gap:5px;padding:6px;color:#536258;border-radius:3px;background:#f8f9f7;font-size:9px}.location-option-label{min-width:0;min-height:26px;display:flex;align-items:center;gap:7px;cursor:pointer}.location-option-label span{min-width:0;overflow-wrap:anywhere}.room-code-select{grid-column:1 / -1;width:100%;min-width:0;min-height:30px;padding:4px 5px;border:1px solid #dfe6df;border-radius:3px;color:#4f6255;background:#fff;font-size:10px}.location-option:hover{background:#f0f5ef}.location-option.selected{color:#365743;background:#edf5ed}.location-picker .picker-empty{grid-column:1 / -1}.picker-empty{width:100%;padding:12px;color:#939c95;font-size:9px;text-align:center}.bulk-summary{display:flex;flex-direction:column;gap:4px;padding:10px 12px;border:1px solid #e1e9e1;border-radius:4px;color:#526a58;background:#f4f8f3}.bulk-summary b{font-size:10px}.bulk-summary span{color:#7c897e;font-size:9px;line-height:1.5}.segmented{display:flex;gap:4px;padding:3px;margin-bottom:15px;border-radius:4px;background:#f0f3ef}.segmented button{min-height:30px;flex:1;border:0;border-radius:3px;color:#839087;background:transparent;font-size:10px}.segmented button.active{color:#365b43;background:#fff;box-shadow:0 1px 4px #1f36291a;font-weight:600}.staff-picker-heading{display:flex;align-items:center;justify-content:space-between;margin:15px 0 8px}.staff-picker-heading div b,.staff-picker-heading div span{display:block}.staff-picker-heading div b{color:#506056;font-size:10px}.staff-picker-heading div span{margin-top:3px;color:#9ba39c;font-size:8px}.staff-picker-heading>strong{color:#bd7d40;font-size:12px}.staff-picker-heading>strong.allocation-valid{color:#4b7956}.staff-picker{max-height:155px;overflow:auto;margin-bottom:14px;border:1px solid #e6eae4;border-radius:4px}.form-error,.form-hint{margin:0 0 9px;padding:8px 10px;border-radius:4px;font-size:9px;line-height:1.45}.form-error{color:#8b4037;border:1px solid #ead0ca;background:#fff5f2}.form-hint{color:#647168;border:1px solid #e1e7e0;background:#f4f6f3}.staff-pick-row{min-height:42px;display:flex;justify-content:space-between;align-items:center;padding:5px 10px;border-bottom:1px solid #f0f2ee}.staff-pick-row.is-unavailable{color:#727b75;background:#eef0ef}.staff-pick-row.is-unavailable b,.staff-pick-row.is-unavailable small{color:#727b75}.staff-pick-row:last-child{border-bottom:0}.staff-pick-row>span:first-child{display:flex;align-items:center;gap:8px}.staff-pick-row input[type=checkbox],.candidate-row input{accent-color:#315e4d}.staff-pick-row b{display:block;color:#506057;font-size:9px}.staff-pick-row small{display:block;margin-top:2px;color:#9ca49d;font-size:8px}.percent-input{display:flex;align-items:center;gap:3px;color:#7c8a7d;font-size:9px}.percent-input input{width:45px;height:27px;padding:3px 5px;color:#526a58;border:1px solid #e4e9e2;border-radius:3px;text-align:right;outline:0;font-size:9px}.task-status{padding:4px 7px;border-radius:9px;font-size:8px}.task-status.completed{color:#54745b;background:#eff6ef}.task-status.planned{color:#75809a;background:#f1f3f8}.task-status.in_progress{color:#9a793c;background:#faf5e9}.task-status.cancelled{color:#a2655c;background:#f8eeee}.schedule-staff{display:flex;flex-direction:column;gap:3px}.schedule-staff span{color:#526457}.schedule-staff small{margin-left:3px;color:#9aa49b}.schedule-board-panel{margin-bottom:15px}.schedule-print-meta,.schedule-print-room-value,.schedule-print-status{display:none}.screenshot-preview-modal{width:min(1050px,100%)}.screenshot-preview-scroll{max-height:min(65vh,760px);overflow:auto;border:1px solid #e1e7e0;border-radius:4px;background:#f4f6f3}.screenshot-preview-scroll img{display:block;width:100%;height:auto}.schedule-board-heading{align-items:center;margin-bottom:12px}.schedule-board-heading h2{margin:0;color:#32453a;font:500 17px Playfair Display,serif}.schedule-board-heading p{margin:5px 0 0;color:#879188;font-size:11px}.schedule-board-date{display:flex;align-items:center;gap:8px;color:#647267;font-weight:600}.schedule-board-date input{min-height:36px;padding:5px 9px;border:1px solid #dfe6df;border-radius:4px;color:#415247;background:#fff}.schedule-board-search{display:flex;align-items:center;gap:8px;padding:11px 0 16px}.schedule-board-search-input{display:flex;flex:1 1 290px;align-items:center;gap:9px;min-width:180px;min-height:39px;padding:0 11px;border:1px solid #dfe6df;border-radius:4px;color:#6d7d71;background:#fff}.schedule-board-search-input:focus-within{border-color:#668b73;box-shadow:0 0 0 2px #668b731f}.schedule-board-search-input input{width:100%;min-width:0;padding:8px 0;border:0;outline:0;color:#33483a;background:transparent;font:inherit}.schedule-board-search-input input::placeholder{color:#98a39a}.schedule-board-search>select{min-height:39px;max-width:175px;padding:0 10px;border:1px solid #dfe6df;border-radius:4px;color:#415247;background:#fff}.schedule-board-search .btn{min-height:39px}.schedule-search-result-count{color:#607369;font-size:12px;white-space:nowrap}.schedule-search-reset{white-space:nowrap}.schedule-search-feedback{display:flex;align-items:center;gap:9px;margin:-5px 0 14px;padding:9px 12px;border:1px solid #d9e6da;border-radius:4px;color:#4c7156;background:#f5faf5;font-size:13px}.schedule-search-feedback.is-empty{border-color:#efd8d2;color:#9b5147;background:#fff8f6}.schedule-board-section+.schedule-board-section{margin-top:19px}.schedule-board-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:7px}.schedule-board-section-heading h3{margin:0;color:#405247;font-size:15px;font-weight:650}.schedule-board-section-heading>span{color:#879188;font-size:12px}.schedule-board-scroll{width:100%;overflow:auto;border:1px solid #25372e;background:#fff}.schedule-board-table{width:100%;border-collapse:collapse;table-layout:fixed;text-align:center}.schedule-board-table th,.schedule-board-table td{border:1px solid #25372e}.schedule-board-table th{min-height:42px;padding:8px 10px;font-size:15px;font-weight:750;text-transform:uppercase}.schedule-staff-heading-name{display:block}.schedule-staff-day-status{display:block;width:100%;min-height:23px;margin-top:5px;border:1px solid rgba(20,44,34,.28);border-radius:3px;color:#26352e;background:#ffffffd1;font:650 12px DM Sans,sans-serif;text-align:center;cursor:pointer}.schedule-staff-day-status.is-off{border-color:#aeb6b0;color:#46514a;background:#e3e6e4}.schedule-staff-day-status:disabled{cursor:default}.schedule-board-table .schedule-board-legend-heading{width:190px;color:#26352e;background:#fff}.schedule-board-table td{height:43px;padding:6px 9px;font-size:14px}.schedule-board-table .schedule-board-room-cell{font-size:17px;font-weight:750}.room-status-controls{display:grid;grid-template-columns:minmax(38px,1fr) auto auto;align-items:center;gap:4px}.room-status-inline{display:block;width:100%;min-height:24px;padding:1px 3px;border:1px solid currentColor;border-radius:3px;color:inherit;background:#ffffff2e;font:inherit;text-align:center;cursor:pointer}.room-ready-toggle{min-height:24px;padding:1px 5px;border:1px solid currentColor;border-radius:3px;color:inherit;background:#ffffff59;font:inherit;font-size:10px;font-weight:700;line-height:1;cursor:pointer}.room-ready-toggle.is-ready{color:#111;border-color:#b8c2b9;background:#fff}.room-ready-toggle:disabled{cursor:default;opacity:.7}.room-delete-toggle{display:grid;width:25px;min-height:24px;padding:2px;place-items:center;border:1px solid currentColor;border-radius:3px;color:#783d32;background:#ffffffb8;cursor:pointer}.room-delete-toggle:disabled{cursor:default;opacity:.65}.room-status-inline:disabled{border-color:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:default}.room-status-number{display:block;margin-top:3px}.schedule-board-table .schedule-board-blank,.schedule-board-table .schedule-board-task-cell,.schedule-board-table .schedule-board-legend-cell{background:#fff}.schedule-board-table td.schedule-board-off-column,.schedule-board-table th.schedule-board-off-column{color:#46514a!important;background:#dfe2e0!important}.schedule-board-table .schedule-board-task-cell{color:#405247;overflow-wrap:anywhere}.schedule-board-task-cell b,.schedule-board-task-cell small{display:block}.schedule-board-task-cell small{margin-top:3px;color:#89958c;font-size:11px}.schedule-board-table .public-area-board-cell{color:#17251d;font-weight:650}.public-area-board-item{display:flex;align-items:center;justify-content:space-between;gap:10px;text-align:left}.public-area-board-item>div{min-width:0;overflow-wrap:anywhere}.public-area-board-item b,.public-area-board-item small{display:block}.public-area-board-item small{margin-top:4px;color:#69766d;font-size:11px;font-weight:500}.schedule-public-area-table th{color:#26352e;background:#f3f6f2}.schedule-board-legend-item{display:flex;align-items:center;gap:7px;text-align:left;white-space:nowrap}.schedule-board-legend-item i{width:16px;height:16px;flex:0 0 auto;border:1px solid}.schedule-board-legend-item b{min-width:31px;color:#33483b}.schedule-board-legend-item>span{color:#59675d;font-size:12px}.schedule-board-empty{padding:15px;border:1px dashed #dfe6df;color:#879188;background:#fff;font-size:13px;text-align:center}.public-floor-picker{display:flex;gap:7px;margin-bottom:11px}.public-floor-picker button{min-height:35px;padding:0 15px;border:1px solid #d7dfd8;border-radius:5px;color:#526459;background:#fff;font:650 13px DM Sans,sans-serif;cursor:pointer}.public-floor-picker button.active{border-color:#1b493b;color:#fff;background:#1b493b}.settings-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.settings-panel{padding:16px}.weight-total{padding:5px 8px;border-radius:3px;font-size:10px;font-weight:600}.total-ok{color:#4d7656;background:#eff6ef}.total-warn{color:#ac6a3d;background:#fbf3e8}.weight-list{display:flex;flex-direction:column}.weight-row{min-height:41px;display:flex;align-items:center;gap:10px;border-top:1px solid #f0f1ed}.weight-disabled{opacity:.55}.weight-label{min-width:0;flex:1;color:#647168;font-size:9px}.weight-input{width:67px;display:flex;align-items:center;gap:4px;color:#8b988c}.weight-input input{width:45px;height:27px;padding:3px 5px;color:#536a58;border:1px solid #e4e9e2;border-radius:3px;text-align:right;outline:0;font-size:9px}.toggle-check input{position:absolute;opacity:0}.toggle-check span{width:27px;height:15px;position:relative;display:block;border-radius:10px;background:#d9ded8;transition:.15s}.toggle-check span:after{content:"";position:absolute;top:2px;left:2px;width:11px;height:11px;border-radius:50%;background:#fff;transition:.15s;box-shadow:0 1px 2px #0002}.toggle-check input:checked+span{background:#6e9475}.toggle-check input:checked+span:after{transform:translate(12px)}.toggle-check input:disabled+span{cursor:not-allowed}.weight-footer{display:flex;justify-content:space-between;margin-top:6px;padding-top:11px;border-top:1px solid #e9ece7;color:#8e9990;font-size:9px}.weight-footer b{font-size:9px}.green-text{color:#4f7956}.rose-text{color:#b77044}.points-panel{padding-bottom:13px}.points-tables{display:grid;grid-template-columns:1fr 1fr;gap:20px}.points-table-title{margin-bottom:8px;color:#54675b;font-size:10px;font-weight:600}.points-rule-head{display:flex;justify-content:space-between;padding:7px 9px;color:#929b93;background:#f8f9f7;font-size:8px}.points-rule{display:grid;grid-template-columns:1fr 25px 1fr;align-items:center;gap:5px;padding:5px 7px;border-bottom:1px solid #f0f1ed;text-align:center;color:#929b93;font-size:9px}.points-rule input{min-height:29px;padding:5px 8px;text-align:right;font-size:9px}.points-footnote{display:flex;align-items:center;gap:7px;margin-top:14px;padding-top:12px;border-top:1px solid #eff1ed;color:#78887b;font-size:9px}.points-footnote svg{color:#67876e}.export-banner{display:flex;align-items:center;gap:15px;padding:19px;border:1px solid #e3eae1;border-radius:5px;background:linear-gradient(110deg,#f3f7f1,#fbfaf6)}.export-emblem{width:44px;height:44px;display:grid;flex-shrink:0;place-items:center;border-radius:5px;color:#477253;background:#e5eee4}.export-banner>div:nth-child(2){flex:1}.export-banner h2{margin:0 0 5px;color:#405846;font:500 16px Playfair Display,serif}.export-banner p{max-width:540px;margin:0;color:#7f8d81;font-size:9px;line-height:1.55}.export-actions{display:flex;gap:8px}.report-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin:15px 0}.report-kpis .metric-card{min-height:115px}.report-preview{margin-top:14px}.log-count{display:flex;align-items:center;gap:6px;color:#829185;font-size:9px}.activity-panel{padding:5px 17px}.activity-item{min-height:70px;display:flex;align-items:center;gap:12px;border-bottom:1px solid #eff1ed}.activity-item:last-child{border:0}.activity-icon{width:31px;height:31px;display:grid;place-items:center;flex-shrink:0;border-radius:4px;color:#67836c;background:#f0f5ef}.activity-icon.verify{color:#977743;background:#faf5e8}.activity-icon.export{color:#557e89;background:#eff5f5}.activity-copy{flex:1;display:flex;flex-direction:column;gap:3px}.activity-copy b{color:#4d5f53;font-size:9px;font-weight:600}.activity-copy span,.activity-copy small{color:#909b91;font-size:8px}.activity-item time{color:#929b94;font-size:8px}.role-explainer{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:14px}.role-explainer>div{display:grid;grid-template-columns:22px 1fr;gap:3px 7px;padding:11px;border:1px solid #e9ece6;border-radius:4px;background:#fff}.role-explainer svg{grid-row:span 2;color:#739077}.role-explainer b{color:#536458;font-size:9px}.role-explainer span{color:#939d94;font-size:8px;line-height:1.4}.access-denied{min-height:300px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#66816c}.access-denied h2{margin:12px 0 4px;color:#405747;font:500 22px Playfair Display,serif}.access-denied p{color:#8b978d;font-size:10px}.login-modal{width:min(395px,100%);position:relative;padding:30px 32px 25px;text-align:center}.modal-close{position:absolute;top:12px;right:12px}.login-emblem{display:flex;justify-content:center;margin-bottom:14px}.login-logo{width:86px;height:94px;border-radius:3px}.login-modal h2{margin:5px 0;color:var(--green);font:500 23px Playfair Display,serif}.login-modal>p{margin:0 0 21px;color:#8a948b;font-size:10px}.login-modal form{text-align:left}.login-submit{width:100%;margin-top:5px}.secure-note{display:flex;justify-content:center;align-items:center;gap:5px;margin-top:16px;color:#8a968c;font-size:8px}.secure-note svg{color:#6e8d72}.inline-error{display:flex;align-items:center;gap:6px;padding:9px 10px;margin-bottom:12px;border:1px solid #f0d9d5;border-radius:3px;color:#a05e54;background:#fcf4f2;font-size:9px}.drawer-backdrop{justify-content:flex-end;padding:0}.drawer{width:min(570px,100%);height:100%;display:flex;flex-direction:column;background:#fff;box-shadow:-14px 0 46px #1023182b}.drawer-head{min-height:73px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;border-bottom:1px solid #e9ece6}.drawer-head h2{margin:3px 0 0;color:#304438;font:500 19px Playfair Display,serif}.drawer-scroll{flex:1;overflow-y:auto;padding:19px 22px 28px}.detail-summary{display:flex;justify-content:space-between;align-items:center}.detail-badge span,.detail-badge b{display:block}.detail-badge span{margin-bottom:4px;color:#8a998b;font-size:8px}.detail-badge b{color:#3d5745;font-size:12px}.detail-metric-row{display:grid;grid-template-columns:repeat(2,1fr);gap:0;margin:16px 0 22px;border:1px solid #e9ede7;border-radius:4px}.detail-metric-row>div{min-height:66px;display:flex;flex-direction:column;gap:4px;padding:10px;border-right:1px solid #e9ede7;border-bottom:1px solid #e9ede7}.detail-metric-row>div:nth-child(2n){border-right:0}.detail-metric-row>div:nth-child(n+3){border-bottom:0}.detail-metric-row span,.detail-metric-row small{color:#929c94;font-size:8px}.detail-metric-row b{color:#425d49;font-size:11px}.detail-section-title{display:flex;align-items:center;gap:7px;margin:19px 0 8px;color:#53685a;font-size:10px;font-weight:700}.detail-score-list{border-top:1px solid #edf0eb}.detail-score-list>div{display:flex;justify-content:space-between;padding:8px 2px;border-bottom:1px solid #edf0eb;color:#758178;font-size:9px}.detail-score-list b{color:#4c6653;font-size:9px}.comment-box{min-height:40px;padding:10px;border:1px solid #edf0eb;border-radius:3px;color:#68776b;background:#fafbf9;font-size:9px;line-height:1.6}.detail-staff-list>div{display:flex;align-items:center;gap:8px;padding:7px 0;border-bottom:1px solid #f0f2ee}.detail-staff-list b,.detail-staff-list span{display:block}.detail-staff-list b{color:#4c5f51;font-size:9px}.detail-staff-list span{margin-top:2px;color:#98a198;font-size:8px}.detail-staff-list strong{margin-left:auto;color:#59775f;font-size:9px}.verify-box{margin-top:19px;padding:13px;border:1px solid #eee3cc;border-radius:4px;background:#fcf9f0}.verify-box h3{display:flex;align-items:center;gap:7px;margin:0;color:#8a713e;font:600 11px DM Sans,sans-serif}.verify-box p{margin:7px 0 10px;color:#927e57;font-size:8px;line-height:1.5}.candidate-group{margin-bottom:10px;padding:8px;border:1px solid #eee7d9;border-radius:3px;background:#fff}.candidate-group>span{display:block;margin-bottom:4px;color:#9a8a66;font-size:8px}.candidate-row{min-height:34px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #f4f0e6;color:#627064;font-size:9px}.candidate-row>span{display:flex;align-items:center;gap:7px}.verify-submit{width:100%}.no-candidates{padding:9px;margin-bottom:12px;border:1px dashed #dbcba9;color:#94784d;background:#fffdf7;font-size:8px;line-height:1.6}.history-list>div{display:flex;gap:8px;padding:7px 0}.history-list i{width:6px;height:6px;margin:4px 0 0 1px;flex-shrink:0;border-radius:50%;background:#8dab8d}.history-list b,.history-list span,.history-list small{display:block}.history-list b{color:#596a5d;font-size:8px;text-transform:capitalize}.history-list span,.history-list small{margin-top:3px;color:#9aa39b;font-size:8px}.history-empty{padding:8px 0;font-size:9px}.allocation-summary{display:flex;justify-content:space-between;margin:8px 0 12px;padding:8px 3px;border-top:1px solid #efe8d9;color:#9a7849;font-size:8px}.allocation-summary b{font-size:9px}.allocation-summary.valid{color:#54755c}.correction-area{margin-top:14px;padding-top:12px;border-top:1px solid #e9ece7}.correction-area>.btn{width:100%}.correction-area .field{margin-bottom:10px}.correction-hint{margin:-3px 0 12px;color:#8c978e;font-size:8px;line-height:1.5}.correction-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px}.qr-layout{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(320px,1.1fr);gap:14px}.qr-form .btn{margin-top:3px}.qr-static-note{display:flex;align-items:flex-start;gap:10px;padding:13px;border:1px solid #dfe9df;border-radius:4px;color:#58745f;background:#f4f8f3;font-size:10px;line-height:1.6}.qr-static-note svg{flex:0 0 auto;margin-top:1px;color:#638c6b}.qr-preview{display:flex;flex-direction:column;align-items:stretch}.qr-preview .panel-head{width:100%}.qr-print{align-self:center;display:grid;place-items:center;margin:4px 0 17px;padding:11px;border:1px solid #edf0eb;border-radius:5px;background:#fff}.qr-token-url{display:flex;flex-direction:column;gap:5px;padding:10px;border:1px solid #edf0eb;border-radius:3px;background:#fafbf9}.qr-token-url span{color:#99a39a;font-size:8px;letter-spacing:.08em}.qr-token-url a{overflow:hidden;color:#4e7658;font-size:8px;text-overflow:ellipsis;white-space:nowrap}.qr-ops{display:flex;gap:8px;margin-top:12px}.qr-empty{min-height:290px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;color:#a0a9a0;font-size:9px}.qr-import-button{width:100%}.qr-checkout-fields{display:flex;flex-direction:column;gap:12px;margin:7px 0}.checkout-room-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;color:#405247}.checkout-room-heading span{color:#89948b;font-size:12px}.checkout-room-list{display:flex;flex-direction:column;gap:7px;max-height:270px;overflow-y:auto;padding:2px 3px 2px 1px}.checkout-room-option{display:grid;grid-template-columns:62px minmax(0,1fr);gap:3px 12px;width:100%;padding:11px 12px;border:1px solid #e5eae3;border-radius:4px;color:#405247;background:#fff;text-align:left}.checkout-room-option:hover,.checkout-room-option.selected{border-color:#64896d;background:#f6f9f5}.checkout-room-number{grid-row:span 2;align-self:center;color:#315e4d;font-size:17px;font-weight:700}.checkout-room-option.already-used .checkout-room-number{color:#bf5148}.checkout-room-meta{color:#738078;font-size:12px}.checkout-room-option.already-used .checkout-room-meta{color:#a3453d}.checkout-expiry{color:#8a958b;font-size:11px}.checkout-room-empty{padding:15px;border:1px dashed #d9e0d8;border-radius:4px;color:#839087;font-size:13px;line-height:1.55;text-align:center}.qr-generated-for{display:flex;flex-direction:column;align-items:center;gap:5px;margin:0 0 13px;color:#405247;font-weight:600;text-align:center}.qr-generated-for span{color:#7f8b81;font-size:12px;font-weight:400}.qr-placeholder{width:88px;height:88px;display:grid;place-items:center;border:1px dashed #bdcabe;border-radius:5px;color:#9aaf9c;font-size:48px}.toast{position:fixed;z-index:100;right:21px;bottom:20px;display:flex;align-items:center;gap:9px;max-width:min(390px,calc(100vw - 30px));padding:12px 15px;border:1px solid #d7e5d8;border-radius:4px;color:#416449;background:#fff;box-shadow:0 10px 35px #1d34252b;font-size:10px;animation:toast-in .22s ease-out}.toast-icon{display:grid;color:#68a072}.toast-error{color:#92594f;border-color:#efd8d2}.toast-error .toast-icon{color:#b56a5d}@keyframes toast-in{0%{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}.mobile-menu,.mobile-close,.scrim{display:none}@media(max-width:1180px){.metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.sidebar{width:220px}.main-area{margin-left:220px}.page-wrap{padding-right:22px;padding-left:22px}.topbar{padding:0 22px}.filter-bar{align-items:flex-start}.filter-controls{gap:6px}.filter-controls select{min-width:85px}.guest-body{gap:42px}}@media(max-width:950px){.settings-columns{grid-template-columns:1fr}.guest-body{grid-template-columns:.72fr 1.2fr;gap:25px}.guest-intro h1{font-size:42px}.dashboard-grid,.dashboard-grid.second-grid{grid-template-columns:1fr 1fr}.filter-bar{display:block}.filter-label{padding:0 0 9px}.topbar-right .date-label{display:none}}@media(max-width:760px){.sidebar{transform:translate(-100%);transition:transform .23s ease;width:255px}.sidebar.sidebar-open{transform:translate(0)}.scrim{position:fixed;z-index:19;top:0;right:0;bottom:0;left:0;display:block;border:0;background:#0e1e165c}.mobile-menu{display:inline-grid;color:#617268}.mobile-close{display:inline-grid;margin-left:auto;color:#c6d1c8}.brand-lockup{padding:0 8px}.main-area{margin-left:0}.topbar{height:54px;padding:0 15px}.crumb{gap:7px;font-size:9px}.topbar-right{display:none}.page-wrap{padding:20px 15px 36px}.page-heading{min-height:auto;align-items:flex-end;margin-bottom:15px}.page-heading h1{font-size:24px}.page-heading p{max-width:470px;font-size:10px;line-height:1.5}.page-heading .btn{min-height:33px;padding:0 10px;font-size:9px}.bulk-schedule-modal{max-height:calc(100vh - 24px)}.metric-grid{grid-template-columns:repeat(2,1fr);gap:9px}.metric-card{min-height:119px;padding:12px}.metric-value{font-size:21px}.dashboard-grid,.dashboard-grid.second-grid{grid-template-columns:1fr;gap:10px}.panel{padding:14px}.trend-chart{height:200px}.trend-chart svg{height:166px}.filter-controls select{min-width:calc(33.3% - 5px);flex:1 1 30%}.filter-date{flex:1 1 40%}.filter-date input{width:100%}.filter-controls{gap:7px}.settings-columns,.points-tables,.qr-layout{grid-template-columns:1fr}.export-banner{align-items:flex-start;flex-wrap:wrap}.export-actions{width:100%;margin-left:59px}.report-kpis{grid-template-columns:repeat(3,1fr);gap:7px}.report-kpis .metric-card{padding:10px}.report-kpis .metric-foot{font-size:7px}.role-explainer{grid-template-columns:1fr}.role-explainer>div{min-height:54px}.page-heading .log-count{display:none}.guest-top{height:65px;padding:0 18px}.guest-body{width:min(570px,calc(100% - 28px));display:flex;flex-direction:column;gap:15px;padding:30px 0 21px}.guest-intro{position:static;padding:0 3px}.guest-intro h1{margin:12px 0 8px;font-size:35px}.guest-intro p{max-width:470px;font-size:11px;line-height:1.55}.intro-signature{display:none}.guest-intro .eyebrow{font-size:8px}.guest-card{width:100%}.guest-card-heading{padding:20px 19px 16px}.guest-card-heading h2{font-size:20px}.choice-grid{padding:19px}.guest-form{padding:14px 19px 20px}.rating-row{min-height:52px}.rating-aspect strong{font-size:9px}.rating-choice{width:29px;height:30px;font-size:18px}.field-grid{gap:9px}.guest-footnote{order:3;flex-direction:column;gap:7px;padding:7px 3px 0;text-align:center}.guest-footnote span:first-child{display:none}}.guest-shell .guest-intro p{font-size:16px}.guest-shell .eyebrow{font-size:11px}.guest-shell .guest-card-heading h2{font-size:24px}.guest-shell .choice-card strong{font-size:16px}.guest-shell .choice-card span,.guest-shell .form-context span,.guest-shell .change-type,.guest-shell .back-link,.guest-shell .required-hint,.guest-shell .score-preview,.guest-shell .privacy-note{font-size:13px}.guest-shell .form-context strong{font-size:15px}.guest-shell .field{font-size:14px}.guest-shell .field input,.guest-shell .field select,.guest-shell .field textarea{font-size:15px}.guest-shell .rating-title h3{font-size:20px}.guest-shell .rating-legend{font-size:11px}.guest-shell .rating-legend b{font-size:12px}.guest-shell .section-divider{font-size:10px}.guest-shell .aspect-index{font-size:11px}.guest-shell .rating-aspect strong{font-size:14px}.guest-shell .rating-aspect-label{font-size:12px}.guest-shell .rating-choice,.guest-shell .na-choice{min-height:38px;font-size:12px}.guest-shell .rating-choice{width:38px;height:38px;font-size:22px}.guest-shell .score-preview b{font-size:15px}.guest-shell .btn{font-size:14px}.guest-shell .receptionist-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(124px,1fr));gap:10px}.guest-shell .receptionist-choice{min-width:0;display:flex;flex-direction:column;align-items:center;gap:7px;padding:12px 8px;border:1px solid #e2e7e1;border-radius:10px;color:#173d32;background:#fff;cursor:pointer;transition:border-color .16s,box-shadow .16s,background .16s}.guest-shell .receptionist-choice:hover,.guest-shell .receptionist-choice.selected{border-color:#b39a67;background:#fbfaf5;box-shadow:0 0 0 2px #b39a6720}.guest-shell .receptionist-choice-photo{width:76px;height:76px;display:grid;place-items:center;overflow:hidden;border-radius:50%;color:#547565;background:#edf3ee}.guest-shell .receptionist-choice-photo img{width:100%;height:100%;object-fit:cover}.guest-shell .receptionist-choice strong{text-align:center;font-size:13px;line-height:1.3}.guest-shell .receptionist-choice small{color:#7e8c82;font-size:11px}.guest-shell .receptionist-empty{padding:14px;border:1px dashed #d8dfd8;border-radius:8px;color:#718078;background:#f8faf7}.guest-shell .receptionist-select-prompt{padding:14px 16px;border:1px solid #e7dcc2;border-radius:8px;color:#6f5b32;background:#fbf8f0;font-weight:600}.receptionist-performance-panel{margin-bottom:22px}.receptionist-performance-list{display:grid;gap:8px}.receptionist-performance-row{min-width:0;display:flex;align-items:center;gap:12px;padding:10px 0;border-bottom:1px solid #eef0ec}.receptionist-performance-row:last-child{border-bottom:0}.receptionist-performance-photo{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;overflow:hidden;border-radius:50%;color:#547565;background:#edf3ee}.receptionist-performance-photo img{width:100%;height:100%;object-fit:cover}.receptionist-performance-score{display:flex;align-items:center;gap:5px;color:#a98434;white-space:nowrap}@media(max-width:760px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guest-shell .guest-intro p{font-size:15px}.guest-shell .guest-card-heading h2{font-size:22px}.guest-shell .rating-row{display:grid;grid-template-columns:minmax(0,1fr);justify-content:stretch;gap:8px;padding:11px 0}.guest-shell .rating-aspect strong{max-width:none;font-size:15px}.guest-shell .rating-aspect-label{font-size:12px}.guest-shell .rating-controls{width:100%;justify-content:space-between;gap:6px}.guest-shell .rating-choice{width:42px;height:42px}.guest-shell .na-choice{width:48px}}@media(max-width:480px){.guest-shell .field-grid{grid-template-columns:minmax(0,1fr)}.guest-shell .field{font-size:13px}.guest-shell .guest-brand span{font-size:8px}.guest-shell .rating-controls{gap:4px}.guest-shell .rating-choice{width:36px;height:40px}.guest-shell .na-choice{width:40px}}@media(max-width:480px){.page-heading{align-items:flex-start}.schedule-heading-actions{flex-direction:column;align-items:stretch}.schedule-heading-actions .btn{width:100%}.page-heading .btn{gap:5px;font-size:8px}.page-heading p{max-width:260px}.filter-controls select{min-width:calc(50% - 5px)}.filter-date{flex-basis:44%}.clear-filters{margin-left:auto}.table-search{width:157px}.table-summary{gap:8px}.table-wrap th,.table-wrap td{padding-right:9px;padding-left:9px}.report-kpis .metric-card{min-height:105px}.report-kpis .metric-label{font-size:7px}.report-kpis .metric-value{font-size:18px}.report-kpis .metric-icon{width:26px;height:26px}.export-actions{margin-left:0}.export-actions .btn{flex:1;padding:0 8px}.export-banner{padding:14px}.export-emblem{width:37px;height:37px}.export-banner h2{font-size:14px}.guest-admin-link{font-size:0}.guest-admin-link svg{width:18px;height:18px}.guest-brand span{font-size:7px}.guest-body{width:calc(100% - 22px);padding-top:22px}.guest-intro h1{font-size:31px}.guest-intro p{font-size:10px}.guest-card-heading h2{font-size:18px}.guest-form{padding-right:14px;padding-left:14px}.field-grid{grid-template-columns:1fr 1fr;gap:8px}.field{font-size:10px}.rating-row{gap:5px}.rating-aspect{gap:6px}.rating-aspect strong{max-width:145px;font-size:8.5px}.rating-controls{gap:3px}.rating-choice{width:27px;height:28px;font-size:17px}.na-choice{width:33px;margin-left:1px;font-size:8px}.guest-form-footer{align-items:stretch;flex-direction:column}.score-preview{min-height:25px}.submit-review{width:100%}.drawer-scroll{padding:16px}.drawer-head{padding:0 16px}.drawer-head h2{font-size:17px}.modal-backdrop{padding:12px}.form-modal,.login-modal{padding:19px}.schedule-modal{max-height:calc(100vh - 24px)}.field-grid{grid-template-columns:1fr 1fr}}.reception-performance-panel{margin-bottom:14px}.reception-performance-content{display:grid;grid-template-columns:minmax(190px,.8fr) minmax(260px,1.2fr);align-items:center;gap:28px}.reception-summary{display:flex;align-items:center;gap:18px}.reception-score{min-width:105px;padding-right:18px;border-right:1px solid #e8ebe5}.reception-score>span,.reception-aspects h3{color:#7f8b81;font-size:10px;font-weight:500}.reception-score div{display:flex;align-items:baseline;gap:4px;margin-top:4px}.reception-score strong{color:#263c30;font-size:28px;font-weight:600}.reception-score small{color:#8d998f;font-size:11px}.reception-note b{color:#435349;font-size:11px}.reception-note p{max-width:300px;margin:5px 0 0;color:#89948b;font-size:10px;line-height:1.55}.reception-aspects h3{margin:0 0 12px;color:#435349;font-size:11px;font-weight:600}.reception-aspects .aspect-bars{gap:10px}@media(max-width:760px){.reception-performance-content{grid-template-columns:1fr;gap:22px}.reception-summary{align-items:flex-start}.reception-note p{max-width:none}}#root .app-shell *{font-size:14px}#root .app-shell .page-heading h1{font-size:32px}#root .app-shell h2,#root .app-shell .panel-head h2,#root .app-shell .modal-head h2,#root .app-shell .drawer-head h2{font-size:21px}#root .app-shell h3{font-size:18px}#root .app-shell .metric-value,#root .app-shell .reception-score strong{font-size:30px}#root .app-shell .brand-name strong{font-size:20px}#root .app-shell .brand-name span,#root .app-shell .brand-name small{font-size:9px}#root .app-shell .checkout-room-number{font-size:18px}#root .app-shell .checkout-room-meta,#root .app-shell .checkout-room-heading span{font-size:12px}#root .app-shell .checkout-expiry,#root .app-shell .qr-generated-for span{font-size:11px}#root .app-shell .checkout-room-empty{font-size:13px}#root .app-shell .schedule-board-table th{font-size:15px}#root .app-shell .schedule-board-table td{font-size:14px}#root .app-shell .schedule-board-table .schedule-board-room-cell{font-size:17px}#root .app-shell .schedule-board-task-cell small,#root .app-shell .schedule-board-legend-item>span{font-size:12px}#root .app-shell .location-option-label,#root .app-shell .room-code-select{font-size:12px}@media(max-width:760px){.location-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.schedule-board-panel{padding:14px}.schedule-board-heading{align-items:flex-start;flex-direction:column}.schedule-board-date{width:100%;justify-content:space-between}.schedule-board-date input{flex:1;max-width:230px}.schedule-board-search{flex-wrap:wrap}.schedule-board-search-input{flex-basis:100%}.schedule-board-search>select{flex:1;max-width:none}}@media(max-width:480px){.location-picker{grid-template-columns:minmax(0,1fr)}.schedule-board-table th{padding:7px}}@media(min-width:1600px)and (min-height:800px){.sidebar{width:280px;padding-right:16px;padding-left:16px}.main-area{margin-left:280px}.topbar{height:68px;padding-right:42px;padding-left:42px}.page-wrap{max-width:1900px;padding:36px 42px 60px}#root .app-shell *{font-size:15px}#root .app-shell .nav-link{min-height:45px;font-size:14px}#root .app-shell .side-caption{font-size:10px}#root .app-shell .brand-name strong{font-size:22px}#root .app-shell .page-heading{min-height:90px;margin-bottom:23px}#root .app-shell .page-heading h1{font-size:36px}#root .app-shell h2,#root .app-shell .panel-head h2,#root .app-shell .modal-head h2,#root .app-shell .drawer-head h2{font-size:24px}#root .app-shell h3{font-size:20px}#root .app-shell .schedule-board-panel{padding:26px}#root .app-shell .schedule-board-heading h2{font-size:24px}#root .app-shell .schedule-board-search-input,#root .app-shell .schedule-board-search>select,#root .app-shell .schedule-board-search .btn{min-height:46px}#root .app-shell .schedule-board-section-heading h3{font-size:21px}#root .app-shell .schedule-board-section-heading>span,#root .app-shell .schedule-search-result-count{font-size:14px}#root .app-shell .schedule-board-table th{padding:12px 14px;font-size:17px}#root .app-shell .schedule-board-table td{height:54px;padding:9px 12px;font-size:16px}#root .app-shell .schedule-board-table .schedule-board-room-cell{font-size:19px}#root .app-shell .schedule-staff-day-status,#root .app-shell .room-status-inline,#root .app-shell .room-ready-toggle{min-height:32px;font-size:14px}#root .app-shell .schedule-board-task-cell small,#root .app-shell .schedule-board-legend-item>span{font-size:14px}}.staff-month-card{display:grid;grid-template-columns:minmax(220px,.85fr) minmax(260px,1.15fr);align-items:center;gap:14px 22px;padding:18px 20px;margin:15px 0;border-color:#e9dfc5;background:linear-gradient(115deg,#fffdf7,#f7f8f3)}.staff-month-intro,.staff-month-winner,.staff-month-stats,.staff-photo-field{display:flex;align-items:center}.staff-month-intro{gap:12px}.staff-month-emblem{width:46px;height:46px;display:grid;flex:0 0 auto;place-items:center;border-radius:50%;color:#a8843c;background:#f4eddc}.staff-month-intro .eyebrow{color:#a8843c}.staff-month-intro h2{margin:3px 0;color:#334d3d;font:500 20px Playfair Display,serif}.staff-month-intro p,.staff-month-note{margin:0;color:#7e8b80;font-size:12px}.staff-month-winner{min-width:0;gap:14px;justify-self:end}.staff-month-photo{width:78px;height:78px;display:grid;flex:0 0 auto;place-items:center;overflow:hidden;border:2px solid #e5d6ac;border-radius:50%;color:#64806c;background:#edf2eb}.staff-month-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 25%}.staff-table-photo{width:44px;height:44px;display:grid;place-items:center;overflow:hidden;border:1px solid #e2e9e0;border-radius:50%;color:#879187;background:#f0f4ef}.staff-table-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center 25%}.staff-table-photo span{color:#879187}.staff-month-details h3{margin:0 0 2px;color:#314b3b;font-size:19px}.staff-month-code{color:#879187;font-size:12px}.staff-month-stats{gap:13px;flex-wrap:wrap;margin-top:8px;color:#5c745f}.staff-month-stats span{display:inline-flex;align-items:center;gap:5px;font-size:13px}.staff-month-stats span:first-child{color:#a8843c;font-weight:700}.staff-month-empty{margin:0;color:#77847a;line-height:1.6}.staff-month-note{grid-column:1 / -1;padding-top:10px;border-top:1px solid #eee8d9;line-height:1.5}.staff-photo-field{gap:12px}.staff-photo-preview{width:66px;height:66px;display:grid;flex:0 0 auto;place-items:center;overflow:hidden;border:1px solid #e2e9e0;border-radius:50%;color:#77907c;background:#f2f6f0}.staff-photo-preview img{width:100%;height:100%;object-fit:cover}.staff-photo-field input[type=file]{min-width:0}@media(max-width:760px){.staff-month-card{grid-template-columns:1fr;padding:15px}.staff-month-winner{justify-self:start}.staff-month-note{grid-column:1}}.guest-search-input{min-height:43px;display:flex;align-items:center;gap:9px;padding:0 11px;border:1px solid #e1e5df;border-radius:3px;color:#78907c;background:#fff}.guest-search-input:focus-within{border-color:#7a9b84;box-shadow:0 0 0 3px #46785714}.guest-search-input input,.guest-shell .field .guest-search-input input{width:100%;min-width:0;min-height:40px;padding:0;border:0;border-radius:0;outline:0;color:#2c3b33;background:transparent;box-shadow:none}.guest-search-input input:focus,.guest-shell .field .guest-search-input input:focus{border:0;box-shadow:none}.guest-search-results{max-height:190px;overflow-y:auto;margin:-8px 0 15px;border:1px solid #e1e8df;border-radius:3px;background:#fff;box-shadow:0 7px 18px #26352e14}.guest-search-result{width:100%;min-height:43px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 12px;border:0;border-bottom:1px solid #eff2ed;color:#344f3d;background:#fff;text-align:left;cursor:pointer}.guest-search-result:last-child{border-bottom:0}.guest-search-result:hover,.guest-search-result:focus-visible{outline:0;background:#f3f7f1}.guest-search-result span{font-size:14px;font-weight:600}.guest-search-result small{flex:0 0 auto;color:#849187;font-size:12px}.guest-search-empty{margin:0;padding:12px;color:#89958c;font-size:13px}@media print{@page{size:A4 portrait;margin:9mm}html,body,#root{width:100%!important;min-width:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important;background:#fff!important}body.print-schedule-mode #root>.app-shell>*{display:none!important}body.print-schedule-mode #root>.app-shell>.main-area{display:block!important;width:100%!important;min-height:0!important;margin:0!important;padding:0!important}body.print-schedule-mode #root>.app-shell>.main-area>*{display:none!important}body.print-schedule-mode #root>.app-shell>.main-area>.page-wrap{display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important}body.print-schedule-mode .page-wrap>*{display:none!important}body.print-schedule-mode #schedule-board-capture{display:block!important;width:100%!important;max-width:none!important;min-height:0!important;margin:0!important;padding:0!important;overflow:visible!important;border:0!important;border-radius:0!important;box-shadow:none!important;color:#17251d!important;background:#fff!important;font-size:10pt!important}#schedule-board-capture,#schedule-board-capture *{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}#schedule-board-capture .schedule-board-heading{margin:0 0 5mm!important;padding:0 0 3mm!important;border-bottom:1px solid #89938b!important}#schedule-board-capture .schedule-board-search{display:none!important}#schedule-board-capture .schedule-board-heading h2{color:#173d32!important;font-size:18pt!important}#schedule-board-capture .schedule-board-heading p,#schedule-board-capture .schedule-board-date,#schedule-board-capture .schedule-staff-day-status,#schedule-board-capture .room-status-controls,#schedule-board-capture .public-area-board-item button{display:none!important}#schedule-board-capture .schedule-print-meta{display:block!important;margin:0 0 5mm!important;color:#405247!important;font-size:11pt!important;font-weight:700!important}#schedule-board-capture .schedule-board-section{width:100%!important;margin:0 0 6mm!important;break-inside:auto;page-break-inside:auto}#schedule-board-capture .schedule-board-section-heading{margin:0 0 2mm!important;break-after:avoid-page;page-break-after:avoid}#schedule-board-capture .schedule-board-section-heading h3{color:#173d32!important;font-size:12pt!important}#schedule-board-capture .schedule-board-section-heading>span{color:#526457!important;font-size:8pt!important}#schedule-board-capture .schedule-board-scroll{width:100%!important;max-width:none!important;overflow:visible!important;border:0!important}#schedule-board-capture .schedule-board-table{width:100%!important;min-width:0!important;table-layout:fixed!important;border-collapse:collapse!important}#schedule-board-capture .schedule-board-table thead{display:table-header-group}#schedule-board-capture .schedule-board-table tr{break-inside:avoid-page;page-break-inside:avoid}#schedule-board-capture .schedule-board-table th,#schedule-board-capture .schedule-board-table td{height:auto!important;min-height:0!important;padding:2mm 1.5mm!important;border:1px solid #536057!important;font-size:9pt!important;overflow-wrap:anywhere}#schedule-board-capture .schedule-board-table th{font-size:9pt!important}#schedule-board-capture .schedule-board-table .schedule-board-legend-heading{width:auto!important}#schedule-board-capture .schedule-board-table td.schedule-board-room-cell{font-size:10pt!important}#schedule-board-capture .room-status-number{display:none!important}#schedule-board-capture .schedule-print-room-value{display:block!important;color:inherit!important;font-size:9pt!important;font-weight:750!important}#schedule-board-capture .schedule-print-status{display:block!important;margin-top:1mm!important;color:#405247!important;font-size:8pt!important;font-weight:700!important}#schedule-board-capture .schedule-board-table .schedule-board-off-column{color:#46514a!important;background:#dfe2e0!important}}
