html,body{width:100%;height:100%}input::-ms-clear,input::-ms-reveal{display:none}*,*:before,*:after{box-sizing:border-box}html{font-family:sans-serif;line-height:1.15;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;border-bottom:0;cursor:help}address{margin-bottom:1em;font-style:normal;line-height:inherit}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-size:1em;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{padding-top:.75em;padding-bottom:.3em;text-align:left;caption-side:bottom}input,button,select,optgroup,textarea{margin:0;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner,[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner{padding:0;border-style:none}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{overflow:auto;resize:vertical}fieldset{min-width:0;margin:0;padding:0;border:0}legend{display:block;width:100%;max-width:100%;margin-bottom:.5em;padding:0;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}:root{--color-parchment: #ffffff;--color-ivory: #ffffff;--color-warm-sand: #ffffff;--color-border-cream: #dbe7f5;--color-near-black: #111827;--color-charcoal-warm: #1f2937;--color-olive-gray: #4b5563;--color-stone-gray: #6b7280;--color-terracotta: #144AA6;--color-focus-blue: #144AA6;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.6;font-weight:400;color:var(--color-near-black);background:var(--color-parchment);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html,body,#root{margin:0;min-width:320px;min-height:100%}body{min-height:100vh;background:var(--color-parchment);color:var(--color-near-black)}a{color:inherit;text-decoration:none}h1,h2,h3,h4,h5,h6,.ant-typography.ant-typography-h1,.ant-typography.ant-typography-h2,.ant-typography.ant-typography-h3,.ant-typography.ant-typography-h4,.ant-typography.ant-typography-h5{font-family:Georgia,Times New Roman,serif;font-weight:500;color:var(--color-near-black);letter-spacing:normal}.ant-typography{color:var(--color-near-black)}.ant-typography-secondary,.ant-typography.ant-typography-secondary{color:var(--color-olive-gray)!important}.app-gradient-layout{min-height:100vh;background:#fff}.eyebrow{display:none}.university-shift-usage-groups{width:100%}.university-shift-usage-group{overflow:hidden;border:1px solid #e4edf8;border-radius:16px;background:#fff;box-shadow:0 2px 10px rgba(20,74,166,.035)}.university-shift-usage-group-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;border-bottom:1px solid #e4edf8;background:#f7faff}.university-shift-usage-group .ant-table-wrapper{border-radius:0}.university-shift-usage-group .ant-table-container{border-start-start-radius:0!important;border-start-end-radius:0!important}.schedule-board-page{width:100%}.schedule-board-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.schedule-board-header .ant-typography{margin-bottom:0}.schedule-board-filter-card,.schedule-board-card{border:1px solid #e4edf8;box-shadow:0 2px 10px rgba(15,61,145,.035)}.schedule-board-filter-card .ant-card-body,.schedule-board-card .ant-card-body{padding:12px}.schedule-board-toolbar{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.schedule-board-toolbar-compact{padding:10px;border:0;border-radius:16px;background:#fff;box-shadow:none}.schedule-board-toolbar-row{display:flex;min-width:0;align-items:center;gap:10px}.schedule-board-filter-row{align-items:flex-start}.schedule-board-helper-row{justify-content:space-between;padding-top:8px;border-top:1px solid #e4edf8}.schedule-board-toolbar-title{flex:0 0 auto}.schedule-board-filter-controls{flex:1 1 auto;min-width:0;row-gap:8px!important}.schedule-board-window-controls,.schedule-board-quick-controls{min-width:0;align-items:center}.schedule-board-window-controls{display:inline-flex;flex-wrap:wrap;gap:6px 10px}.schedule-board-toolbar-compact .ant-picker,.schedule-board-toolbar-compact .ant-select-selector,.schedule-board-toolbar-compact .ant-input-affix-wrapper,.schedule-board-toolbar-compact .ant-input-search-btn{border-color:#d8e5f5!important;border-radius:10px!important}.schedule-board-toolbar-compact .ant-input-search .ant-input-affix-wrapper{border-start-start-radius:10px!important;border-end-start-radius:10px!important;border-start-end-radius:0!important;border-end-end-radius:0!important}.schedule-board-toolbar-compact .ant-input-search .ant-input-search-btn{border-start-start-radius:0!important;border-end-start-radius:0!important;border-start-end-radius:10px!important;border-end-end-radius:10px!important}.schedule-board-toolbar-compact .ant-btn:not(.ant-btn-primary){border-color:#b7cbe8;border-radius:10px;color:#0f3d91;font-weight:650}.schedule-board-toolbar-compact .ant-btn:disabled,.schedule-board-toolbar-compact .ant-btn.ant-btn-disabled,.schedule-board-toolbar-compact .ant-upload-disabled .ant-btn{border-color:#dbe7f5!important;background:#f7faff!important;color:#9aa9bd!important;opacity:.58;box-shadow:none!important;cursor:not-allowed}.schedule-board-toolbar-compact .ant-btn:disabled svg,.schedule-board-toolbar-compact .ant-btn.ant-btn-disabled svg,.schedule-board-toolbar-compact .ant-upload-disabled .ant-btn svg{opacity:.62}.schedule-board-window-label{display:inline-flex;align-items:center;min-height:34px;color:#4b5563;font-size:12px;font-weight:700}.schedule-board-window-segment{display:inline-grid;grid-template-columns:36px max-content 36px;align-items:center;overflow:hidden;border:1px solid #b7cbe8;border-radius:999px;background:#fff;box-shadow:0 2px 8px rgba(15,61,145,.043)}.schedule-board-window-segment .schedule-board-window-nav-button.ant-btn{width:36px;height:34px;border:0;border-radius:0;background:transparent;color:#0f3d91;box-shadow:none}.schedule-board-window-segment .schedule-board-window-nav-button.ant-btn:hover:not(:disabled),.schedule-board-window-segment .schedule-board-window-nav-button.ant-btn:focus-visible:not(:disabled){background:#f7faff;color:#0b2f73}.schedule-board-window-segment .schedule-board-window-nav-button.ant-btn:disabled{background:#f9fbff;color:#9ca3af}.schedule-board-visible-window-tag.ant-tag{display:inline-flex;align-items:center;justify-content:center;min-height:34px;margin-inline-end:0;padding:0 14px;border:0;border-inline:1px solid #d8e5f5;border-radius:0;background:#f7faff;color:#0f3d91;font-weight:750;letter-spacing:-.01em}.schedule-board-toolbar-actions{justify-content:space-between;padding-top:8px;border-top:1px solid #e4edf8}.schedule-board-toolbar-label{display:inline-flex;align-items:center;min-height:32px;min-width:max-content;color:#4b5563;font-size:12px;font-weight:700}.schedule-board-quick-controls .ant-checkbox-wrapper{min-height:30px;padding:5px 10px;border:1px solid #d8e5f5;border-radius:999px;background:#f7faff;color:#374151;font-weight:600}.schedule-board-repeat-pattern{display:none;justify-content:flex-end;min-width:0}.schedule-board-repeat-pattern.is-open{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1fr);gap:10px;width:100%;padding:10px;border:1px solid #d8e5f5;border-radius:14px;background:#fff}.schedule-board-repeat-toggle-group{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.schedule-board-repeat-toggle.ant-btn{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 10px;border:1px solid #d8e5f5;border-radius:999px;background:#fff;color:#0f3d91;font-size:12px;font-weight:700}.schedule-board-repeat-action-buttons{display:inline-flex;align-items:center;gap:6px;flex:none}.schedule-board-repeat-icon-button.ant-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;border-radius:10px}.schedule-board-repeat-icon-button.ant-btn-primary{box-shadow:0 2px 10px rgba(15,61,145,.12)}.schedule-board-repeat-toggle.ant-btn:hover,.schedule-board-repeat-toggle.ant-btn:focus-visible{border-color:#b7cbe8;background:#eef5ff;color:#0b2f73}.schedule-board-repeat-pattern.is-open .schedule-board-repeat-toggle.ant-btn{justify-self:flex-start}.schedule-board-repeat-form{display:grid;grid-template-columns:minmax(160px,1fr) minmax(138px,.8fr) minmax(160px,1fr) minmax(200px,1fr);gap:8px;align-items:end}.schedule-board-repeat-form .ant-form-item{margin-bottom:0}.schedule-board-repeat-form .ant-form-item-label{padding-bottom:3px}.schedule-board-repeat-form .ant-form-item-label>label{height:auto;color:#6b7280;font-size:11px;font-weight:650}.schedule-board-repeat-form .ant-picker,.schedule-board-repeat-form .ant-select{width:100%}.schedule-board-repeat-form .ant-picker,.schedule-board-repeat-form .ant-select-selector{border-color:#d8e5f5!important;border-radius:10px!important}.schedule-board-repeat-form .ant-select-multiple{display:flex;align-items:center}.schedule-board-repeat-form .ant-select-multiple .ant-select-selector{display:flex!important;align-items:center!important;min-height:34px!important;height:34px!important;padding-top:0!important;padding-bottom:0!important}.schedule-board-repeat-form .ant-select-multiple .ant-select-selection-wrap{align-self:center;width:100%;min-height:24px}.schedule-board-repeat-form .ant-select-multiple .ant-select-selection-overflow{align-items:center!important;min-height:24px}.schedule-board-repeat-form .ant-select-multiple .ant-select-selection-item{display:inline-flex;align-items:center;height:22px;line-height:20px;margin-top:0;margin-bottom:0}.schedule-board-repeat-form .ant-select-multiple .ant-select-selection-search{display:inline-flex;align-items:center;height:24px;margin:0}.schedule-board-repeat-form .ant-select-multiple .ant-select-selection-search-input{height:24px!important}.schedule-board-repeat-form .ant-select-multiple .ant-select-selection-placeholder{display:flex;align-items:center;height:24px;line-height:24px;inset-inline-start:0}.schedule-board-repeat-form .ant-btn{height:34px;border-radius:10px;font-weight:700}.schedule-board-import-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}.schedule-board-import-summary>div{padding:12px;border:1px solid #e4edf8;border-radius:14px;background:#f7faff}.schedule-board-import-summary .ant-typography{margin:0}.schedule-board-import-errors{display:grid;gap:6px;margin-bottom:12px;padding:10px 12px;border:1px solid #fecaca;border-radius:12px;background:#fff7f7}.schedule-board-import-preview{display:grid;gap:8px;max-height:320px;overflow:auto}.schedule-board-import-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid #e4edf8;border-radius:12px;background:#fff}.schedule-board-import-row>div{display:grid;gap:3px}.schedule-board-import-row.is-valid{border-color:#bbf7d0;background:#f0fdf4}.schedule-board-import-row.has-error{border-color:#fecaca;background:#fff7f7}.schedule-board-timetable-map{display:grid;gap:10px;padding:12px;border:1px solid #eadfd2;border-radius:16px;background:#fffaf3}.schedule-board-timetable-map-row{display:grid;grid-template-columns:120px minmax(0,1fr);gap:10px;align-items:center}.schedule-board-timetable-map-row .ant-select{width:100%}.schedule-board-excel-guide-modal{display:grid;gap:14px}.schedule-board-excel-guide-hero{display:flex;gap:14px;padding:16px;border:1px solid #e4edf8;border-radius:18px;background:#f7faff}.schedule-board-excel-guide-hero .ant-typography{margin:0}.schedule-board-excel-guide-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:46px;height:46px;border-radius:14px;background:#dbeafe;color:#0f3d91}.schedule-board-excel-guide-range{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #e4edf8;border-radius:14px;background:#fff}.schedule-board-excel-guide-range .ant-typography{flex:0 0 auto}.schedule-board-excel-guide-range .ant-picker{border-color:#d8e5f5!important;border-radius:10px!important}.schedule-board-excel-guide-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.schedule-board-excel-guide-steps>div{display:grid;grid-template-columns:auto 1fr;gap:4px 10px;padding:12px;border:1px solid #e4edf8;border-radius:14px;background:#fff}.schedule-board-excel-guide-steps>div>span:first-child{display:inline-flex;align-items:center;justify-content:center;grid-row:span 2;width:26px;height:26px;border-radius:999px;background:#0f3d91;color:#fff;font-weight:700;font-size:12px}.schedule-board-excel-guide-steps>div>.ant-typography{min-width:0;margin:0}.schedule-board-excel-guide-note{padding:12px 14px;border:1px solid #fde68a;border-radius:14px;background:#fffbeb;color:#92400e}@media(max-width:1100px){.schedule-board-toolbar-row,.schedule-board-toolbar-actions{align-items:flex-start;flex-direction:column}.schedule-board-helper-row{gap:8px}.schedule-board-excel-guide-range{align-items:flex-start;flex-direction:column}.schedule-board-excel-guide-steps,.schedule-board-repeat-pattern.is-open{grid-template-columns:1fr}.schedule-board-repeat-pattern{justify-content:flex-start}.schedule-board-repeat-form{grid-template-columns:1fr 1fr}}@media(max-width:760px){.schedule-board-repeat-form{grid-template-columns:1fr}}.schedule-board-table .ant-table,.schedule-board-table .ant-table-container,.schedule-board-table .ant-table-cell{border-color:#e4edf8!important}.schedule-board-custom-scrollbar{position:sticky;top:8px;z-index:8;height:20px;margin-bottom:10px;border:1px solid #b7cbe8;border-radius:999px;background:#f7faff;box-shadow:0 2px 10px rgba(15,61,145,.055);cursor:grab;user-select:none}.schedule-board-custom-scrollbar-thumb{position:absolute;top:3px;bottom:3px;left:0;width:100%;min-width:72px;border-radius:999px;background:#0f3d91;box-shadow:0 2px 6px rgba(15,61,145,.18);will-change:transform,width}.schedule-board-custom-scrollbar:hover,.schedule-board-custom-scrollbar:focus-visible{border-color:#0f3d91;outline:none}.schedule-board-custom-scrollbar:active{cursor:grabbing}.schedule-board-custom-scrollbar:hover .schedule-board-custom-scrollbar-thumb,.schedule-board-custom-scrollbar:focus-visible .schedule-board-custom-scrollbar-thumb{background:#0b2f73}.schedule-board-table-scroll{position:relative;width:100%;overflow-x:auto;overflow-y:hidden;padding-bottom:4px;overscroll-behavior-x:contain;scrollbar-width:none}.schedule-board-table-scroll::-webkit-scrollbar{display:none}.schedule-board-table{min-width:max-content}.schedule-board-table .ant-table-thead>tr>th{padding:5px 6px;background:#f7faff!important;color:#111827;font-weight:650}.schedule-board-table .ant-table-cell-fix-left,.schedule-board-table .ant-table-cell-fix-left-first,.schedule-board-table .ant-table-cell-fix-left-last{position:sticky!important;left:0!important;z-index:3;background:#fff!important}.schedule-board-table .ant-table-thead .ant-table-cell-fix-left,.schedule-board-table .ant-table-thead .ant-table-cell-fix-left-first,.schedule-board-table .ant-table-thead .ant-table-cell-fix-left-last{z-index:5;background:#f7faff!important}.schedule-board-table .ant-table-cell-fix-left-last:after{position:absolute;top:0;right:-1px;bottom:0;width:16px;pointer-events:none;content:"";box-shadow:8px 0 14px rgba(15,61,145,.08)}.schedule-board-table .ant-table-body{scrollbar-color:#b7cbe8 #f7faff;scrollbar-width:thin}.schedule-board-table .ant-table-body::-webkit-scrollbar{width:10px;height:10px}.schedule-board-table .ant-table-body::-webkit-scrollbar-track{background:#f7faff}.schedule-board-table .ant-table-body::-webkit-scrollbar-thumb{border:2px solid #f7faff;border-radius:999px;background:#b7cbe8}.schedule-board-table .ant-table-body::-webkit-scrollbar-thumb:hover{background:#0f3d91}.schedule-board-table .ant-table-tbody>tr>td{padding:5px 4px!important;vertical-align:middle}.schedule-board-table .ant-table-tbody>tr>td:not(.ant-table-cell-fix-left){position:relative;padding:0!important}.schedule-board-table .ant-table-tbody>tr>td.ant-table-cell-fix-start,.schedule-board-table .ant-table-tbody>tr>td.ant-table-cell-fix-left{padding:8px 10px!important}.schedule-board-table .ant-table-thead>tr:first-child>th:not(.ant-table-cell-fix-left){padding:6px 8px;background:#f8f4ee!important}.schedule-board-table .ant-table-thead>tr:nth-child(2)>th{padding:4px 3px;background:#fffaf3!important}.schedule-board-room-cell,.schedule-board-day-title,.schedule-board-shift-title,.schedule-board-shift-column-title{display:flex;flex-direction:column;gap:2px}.schedule-board-day-group-title{align-items:center;justify-content:center;min-height:100%;margin:-6px -8px;padding:6px 8px;text-align:center}.schedule-board-shift-column-title{align-items:center;justify-content:center;min-width:44px;min-height:100%;margin:-4px -3px;padding:4px 3px;color:#7c4a03}.schedule-board-slot-cell{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:stretch;justify-content:stretch;width:100%;min-height:100%;user-select:none}.schedule-board-room-title-row{display:grid;grid-template-columns:minmax(0,1fr) 20px;gap:6px;align-items:center;width:100%}.schedule-board-room-info-button{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;padding:0;border:1px solid #b7cbe8;border-radius:999px;background:#f7faff;color:#0f3d91;font-size:11px;font-weight:800;line-height:1;cursor:help}.schedule-board-room-info-button:hover,.schedule-board-room-info-button:focus-visible{border-color:#0f3d91;background:#dbeafe;outline:none}.schedule-board-room-meta,.schedule-board-shift-title .ant-typography,.schedule-board-day-title .ant-typography:last-child,.schedule-board-shift-column-title .ant-typography{font-size:11px}.schedule-board-quick-select.ant-checkbox-wrapper{align-self:flex-start;margin-top:2px;color:#0f3d91;font-size:11px;font-weight:650;line-height:1.25}.schedule-board-quick-select.ant-checkbox-wrapper:hover,.schedule-board-quick-select.ant-checkbox-wrapper:focus-within{color:#0b2f73}.schedule-board-quick-select .ant-checkbox-inner{border-color:#b7cbe8}.schedule-board-legend{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-start;gap:10px 14px;margin-bottom:10px;padding:8px 10px;border:1px solid #eadfd4;border-radius:12px;background:#fffaf3}.schedule-board-legend-section{display:flex;flex-direction:column;gap:6px;flex:1 1 420px;min-width:0}.schedule-board-shift-legend-list,.schedule-board-status-legend{display:flex;flex-wrap:wrap;gap:6px}.schedule-board-shift-legend-item,.schedule-board-status-legend-item{display:inline-flex;align-items:center;gap:8px;min-height:24px;padding:3px 8px;border-radius:999px;font-size:12px;line-height:1.2}.schedule-board-shift-legend-item{border:1px solid #eadfd4;background:#fff;color:#4b5563}.schedule-board-shift-legend-name{font-weight:700;white-space:nowrap}.schedule-board-shift-legend-time{font-size:11px;opacity:.85;white-space:nowrap}.schedule-board-status-legend{flex:0 0 auto}.schedule-board-status-legend-item{font-weight:650}.schedule-board-status-legend-item:before{content:"";width:8px;height:8px;border-radius:999px;background:currentColor;opacity:.6}.schedule-board-status-legend-item.is-empty{background:#fff;color:#6b7280;box-shadow:inset 0 0 0 1px #e5e7eb}.schedule-board-status-legend-item.is-approved{background:#dcfce7;color:#166534}.schedule-board-status-legend-item.is-pending{background:#ffedd5;color:#9a3412}.schedule-board-status-legend-item.is-selected{background:#e0edff;color:#0b2f73}.schedule-board-day-cell{display:flex;flex-wrap:wrap;align-content:flex-start;align-items:flex-start;gap:6px;padding:8px}.schedule-board-room-day-select{flex:1 0 100%;padding:4px 8px 6px;border:1px solid #e4edf8;border-radius:10px;background:#f7faff}.schedule-board-shift-slot{display:flex;flex:1 1 auto;justify-content:stretch;min-width:0;width:100%;min-height:100%}.schedule-board-shift-slot-content{min-width:0;display:flex;flex-direction:column;align-items:stretch;flex:1;min-height:100%}.schedule-board-shift-slot.is-empty{align-items:stretch}.schedule-board-shift-slot.is-empty.is-selected{background:#0f3d91;color:#fff;box-shadow:inset 0 0 0 1px #0b2f73}.schedule-board-shift-slot.is-empty:not(.is-selected):hover,.schedule-board-shift-slot.is-empty:not(.is-selected):focus-within{background:#f7faff}.schedule-board-cell{display:inline-flex;align-items:center;justify-content:center;min-height:24px;width:auto;min-width:32px;border:1px solid #e5e7eb;border-radius:999px;padding:3px 7px;background:#fff;color:#374151;cursor:pointer;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.schedule-board-shift-slot .schedule-board-cell{width:100%;min-width:0;min-height:100%;flex:1;border-radius:0;padding:0}.schedule-board-shift-slot.is-empty .schedule-board-cell-empty{border:0;background:transparent}.schedule-board-cell:hover,.schedule-board-cell:focus-visible{outline:none;transform:translateY(-1px);box-shadow:0 5px 12px rgba(17,24,39,.08)}.schedule-board-shift-slot.is-empty .schedule-board-cell-empty:hover,.schedule-board-shift-slot.is-empty .schedule-board-cell-empty:focus-visible{transform:none;box-shadow:none}.schedule-board-cell-icon{width:12px;height:12px;stroke-width:2.4}.schedule-board-cell-logo{width:100%;height:100%;border-radius:0;object-fit:cover;background:#fff}.schedule-board-cell-logo-fallback{display:inline-flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:0;background:#fff;color:#0f3d91;font-size:10px;font-weight:750;line-height:1}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.schedule-board-cell-empty{color:#4b5563}.schedule-board-cell-empty:disabled{border-color:#e5e7eb;background:#f3f4f6;color:#9ca3af;cursor:not-allowed;opacity:.6}.schedule-board-cell-empty:disabled:hover,.schedule-board-cell-empty:disabled:focus-visible{border-color:#e5e7eb;background:#f3f4f6;transform:none;box-shadow:none}.schedule-board-shift-slot.is-empty .schedule-board-cell-empty:disabled:hover,.schedule-board-shift-slot.is-empty .schedule-board-cell-empty:disabled:focus-visible{border-color:transparent;background:transparent}.schedule-board-cell-empty:not(:disabled):hover,.schedule-board-cell-empty:not(:disabled):focus-visible{border-color:#d5c7bb;background:#fffaf3}.schedule-board-shift-slot.is-empty .schedule-board-cell-empty:not(:disabled):hover,.schedule-board-shift-slot.is-empty .schedule-board-cell-empty:not(:disabled):focus-visible{border-color:transparent;background:transparent}.schedule-board-cell-empty.is-selected{border-color:#0b2f73;background:#0f3d91;color:#fff;box-shadow:0 0 0 2px rgba(15,61,145,.2),0 4px 10px rgba(15,61,145,.18),inset 0 -2px rgba(11,47,115,.42)}.schedule-board-shift-slot.is-empty .schedule-board-cell-empty.is-selected{border-color:transparent;background:transparent;box-shadow:none}.schedule-board-cell-empty.is-selected:hover,.schedule-board-cell-empty.is-selected:focus-visible{border-color:#08245b;background:#0b2f73;color:#fff}.schedule-board-shift-slot.is-empty .schedule-board-cell-empty.is-selected:hover,.schedule-board-shift-slot.is-empty .schedule-board-cell-empty.is-selected:focus-visible{border-color:transparent;background:transparent;color:#fff}.schedule-board-cell-filled{color:#14532d}.schedule-board-cell-filled.is-pending{border-color:#f97316;background:#fb923c;color:#fff}.schedule-board-cell-filled.is-approved{border-color:#16a34a;background:#22c55e;color:#fff}.schedule-board-cell-filled.is-pending:hover,.schedule-board-cell-filled.is-pending:focus-visible{background:#ea580c}.schedule-board-cell-filled.is-approved:hover,.schedule-board-cell-filled.is-approved:focus-visible{background:#16a34a}.schedule-board-loading-placeholder{padding:32px 12px;color:#6b7280;text-align:center}.schedule-booking-detail-modal .ant-modal-content{border:1px solid #e4edf8;border-radius:18px;box-shadow:0 12px 32px rgba(15,61,145,.12)}.schedule-booking-detail-modal .ant-modal-header{margin-bottom:12px}.schedule-booking-detail{display:flex;flex-direction:column;gap:14px}.schedule-booking-detail-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:16px;border:1px solid #e4edf8;border-radius:16px}.schedule-booking-detail-hero.is-approved{background:#ecfdf3}.schedule-booking-detail-hero.is-pending{background:#fff7ed}.schedule-booking-detail-hero .ant-typography{margin-bottom:0}.schedule-booking-detail-eyebrow.ant-typography{display:block;margin-bottom:4px;color:#0f3d91;font-size:12px;font-weight:650}.schedule-booking-detail-section .ant-descriptions-view{border-color:#e4edf8;border-radius:14px;overflow:hidden}.schedule-booking-detail-section .ant-descriptions-item-label{width:128px;background:#f7faff;color:#4b5563;font-weight:650}.schedule-booking-detail-section .ant-descriptions-item-content{color:#111827}.schedule-booking-session-section{border:1px solid #e4edf8;border-radius:16px;background:#fff;overflow:hidden}.schedule-booking-session-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid #e4edf8;background:#f7faff}.schedule-booking-session-section-header .ant-typography{margin:0}.schedule-booking-session-list{display:flex;flex-direction:column}.schedule-booking-session-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-bottom:1px solid #e4edf8}.schedule-booking-session-item:last-child{border-bottom:0}.schedule-booking-session-item>div:first-child{display:flex;flex-direction:column;gap:2px}.schedule-booking-detail-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:2px}@media(max-width:768px){.schedule-board-header{flex-direction:column}}.scope-room-tree-select.ant-select-multiple .ant-select-selector{min-height:44px;align-items:center;padding-block:5px}.scope-room-tree-select.ant-select-multiple .ant-select-selection-overflow{align-items:center;row-gap:6px}.scope-room-tree-select.ant-select-multiple .ant-select-selection-item{min-height:30px;line-height:28px;font-size:14px;border-radius:8px;padding-inline:10px 6px}.scope-room-tree-select.ant-select-multiple .ant-select-selection-item-content,.scope-room-tree-select.ant-select-multiple .ant-select-selection-item-remove{line-height:28px}.scope-permissions-table .ant-table-cell{overflow:visible}.scope-permissions-row>td{height:auto;vertical-align:top;padding-block:16px!important}.console-app-frame{height:100vh;overflow:hidden;display:flex;flex-direction:column}.console-shell{background:transparent;flex:1;min-height:0;overflow:hidden}.console-sider{position:relative;padding:18px 14px;border-right:1px solid rgba(255,255,255,.1);height:100%;overflow:visible;background:linear-gradient(180deg,#144aa6,#0758c7 48%,#004bb6)}.console-sider .ant-layout-sider-children{height:100%}.console-sider-content{height:100%;display:flex;flex-direction:column;gap:8px}.console-sidebar-brand{display:flex;min-height:54px;align-items:center;padding:0 4px 14px}.console-sidebar-brand-logo{display:block;width:100%;max-height:58px;object-fit:contain;object-position:left center}.console-sider.is-collapsed .console-sidebar-brand{justify-content:center;padding-inline:0}.console-sider.is-collapsed .console-sidebar-brand-logo{width:44px;height:44px;object-fit:cover;object-position:left center}.console-menu-slot{flex:1;min-height:0;padding-top:2px}.console-nav-menu{height:100%;overflow-y:auto;overflow-x:hidden;min-width:0;border-inline-end:none!important;background:transparent!important;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.42) transparent}.console-nav-menu::-webkit-scrollbar{width:8px}.console-nav-menu::-webkit-scrollbar-track{background:transparent;border-radius:999px}.console-nav-menu::-webkit-scrollbar-thumb{background:rgba(255,255,255,.34);border-radius:999px;border:2px solid transparent;background-clip:padding-box}.console-nav-menu:hover::-webkit-scrollbar-thumb{background:rgba(255,255,255,.56);background-clip:padding-box}.console-nav-menu .ant-menu-item,.console-nav-menu .ant-menu-submenu-title{height:auto;line-height:1.35;padding-block:10px;color:rgba(255,255,255,.86);font-weight:550}.console-nav-menu .ant-menu-item .ant-menu-item-icon,.console-nav-menu .ant-menu-submenu-title .ant-menu-item-icon,.console-nav-menu .ant-menu-submenu-title .ant-menu-submenu-arrow{color:rgba(255,255,255,.82)}.console-nav-menu .ant-menu-item:hover,.console-nav-menu .ant-menu-submenu-title:hover,.console-nav-menu .ant-menu-item:focus-visible,.console-nav-menu .ant-menu-submenu-title:focus-visible{color:#fff!important;font-weight:700;background:rgba(255,255,255,.12)!important}.console-nav-menu .ant-menu-item:hover .ant-menu-item-icon,.console-nav-menu .ant-menu-submenu-title:hover .ant-menu-item-icon,.console-nav-menu .ant-menu-submenu-title:hover .ant-menu-submenu-arrow,.console-nav-menu .ant-menu-item:focus-visible .ant-menu-item-icon,.console-nav-menu .ant-menu-submenu-title:focus-visible .ant-menu-item-icon,.console-nav-menu .ant-menu-submenu-title:focus-visible .ant-menu-submenu-arrow{color:#fff!important}.console-nav-menu .ant-menu-item-selected{color:#fff!important;font-weight:700;background:rgba(255,255,255,.18)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.24)}.console-nav-menu .ant-menu-item-selected .ant-menu-item-icon,.console-nav-menu .ant-menu-item-selected .console-menu-label-text{color:#fff!important;font-weight:700}.console-nav-menu .ant-menu-submenu-open>.ant-menu-submenu-title,.console-nav-menu .ant-menu-submenu-selected>.ant-menu-submenu-title{color:#fff!important;background:rgba(255,255,255,.12)!important;font-weight:700}.console-nav-menu .ant-menu-submenu-open>.ant-menu-submenu-title .ant-menu-item-icon,.console-nav-menu .ant-menu-submenu-open>.ant-menu-submenu-title .ant-menu-title-content,.console-nav-menu .ant-menu-submenu-open>.ant-menu-submenu-title .ant-menu-submenu-arrow,.console-nav-menu .ant-menu-submenu-selected>.ant-menu-submenu-title .ant-menu-item-icon,.console-nav-menu .ant-menu-submenu-selected>.ant-menu-submenu-title .ant-menu-title-content,.console-nav-menu .ant-menu-submenu-selected>.ant-menu-submenu-title .ant-menu-submenu-arrow{color:#fff!important}.console-menu-label-with-badge{padding-right:2px;display:flex;align-items:center;justify-content:space-between;min-width:0;gap:8px;width:100%}.console-menu-label-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-nav-menu .ant-menu-item,.console-nav-menu .ant-menu-title-content,.console-menu-label-with-badge,.console-menu-count-badge{overflow:visible}.console-menu-count-badge{flex:0 0 auto}.console-sider.is-collapsed .console-menu-label-with-badge{min-width:0;padding-right:10px;justify-content:center}.console-content{position:relative;padding:24px 28px 30px;height:100%;overflow-y:auto;overflow-x:hidden;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.16) 58%,#fff) top center / 100% 220px no-repeat,linear-gradient(90deg,rgba(255,255,255,.98),rgba(255,255,255,.86) 45%,rgba(255,255,255,.18)) top center / 100% 220px no-repeat,url(/bg-header.png) top center / 100% 220px no-repeat,#fff}.console-top-brand-banner{display:none}.console-top-brand-banner-inner{min-height:104px;display:flex;align-items:center;padding:14px 34px}.console-top-brand-logo{display:block;width:min(430px,42vw);max-height:76px;object-fit:contain;object-position:left center}.console-menu-collapse-row,.console-mobile-menu-header{display:flex;align-items:center;justify-content:flex-end}.console-menu-collapse-row{position:absolute;top:72px;right:-14px;z-index:5;min-height:0}.console-mobile-menu-header{justify-content:space-between;padding-bottom:10px;border-bottom:1px solid #e4edf8}.console-mobile-brand-logo{display:block;width:min(220px,72vw);max-height:54px;object-fit:contain;object-position:left center}.console-mobile-menu-header .console-collapse-button-right{position:static;top:auto;right:auto}@media(max-width:768px){.console-app-frame{height:auto;min-height:100vh;overflow:visible}.console-shell{height:auto;min-height:0;overflow:visible}.console-content{min-width:0;width:100%;height:auto;min-height:0;padding:16px;overflow:visible}.console-top-brand-banner{min-height:84px;background-size:cover}.console-top-brand-banner-inner{min-height:84px;padding:12px 58px 12px 16px}.console-top-brand-logo{width:min(320px,72vw);max-height:58px}.workspace-page{min-width:0;padding-top:48px}}@media(max-width:768px){.console-sider{display:none!important;width:0!important;min-width:0!important;max-width:0!important;flex:0 0 0!important;padding:0!important;overflow:hidden!important}.console-menu-collapse-row{display:none!important}}.console-mobile-menu-button{display:none}.console-mobile-menu-drawer .ant-drawer-content{background:#fff}.console-mobile-menu-drawer .ant-drawer-body{padding:24px 20px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(247,250,255,.98)),url(/bg-header.png) top center / cover no-repeat,#fff}.console-mobile-menu-drawer .ant-drawer-close{color:#0f3d91}.console-mobile-sider-content{min-height:100%}.console-mobile-nav-menu{max-height:calc(100vh - 240px);scrollbar-color:rgba(15,61,145,.25) transparent}.console-mobile-nav-menu .ant-menu-item,.console-mobile-nav-menu .ant-menu-submenu-title{color:#4b5563}.console-mobile-nav-menu .ant-menu-item .ant-menu-item-icon,.console-mobile-nav-menu .ant-menu-submenu-title .ant-menu-item-icon,.console-mobile-nav-menu .ant-menu-submenu-title .ant-menu-submenu-arrow,.console-mobile-nav-menu .ant-menu-title-content,.console-mobile-nav-menu .console-menu-label-text{color:inherit!important}.console-mobile-nav-menu .ant-menu-item:hover,.console-mobile-nav-menu .ant-menu-submenu-title:hover,.console-mobile-nav-menu .ant-menu-item:focus-visible,.console-mobile-nav-menu .ant-menu-submenu-title:focus-visible,.console-mobile-nav-menu .ant-menu-submenu-open>.ant-menu-submenu-title,.console-mobile-nav-menu .ant-menu-submenu-selected>.ant-menu-submenu-title{color:#0f3d91!important;background:#f7faff!important}.console-mobile-nav-menu .ant-menu-item-selected{color:#0f3d91!important;background:#dbeafe!important;box-shadow:inset 0 0 0 1px #b7cbe8}.console-mobile-nav-menu .ant-menu-item-selected .ant-menu-item-icon,.console-mobile-nav-menu .ant-menu-item-selected .console-menu-label-text,.console-mobile-nav-menu .ant-menu-submenu-open>.ant-menu-submenu-title .ant-menu-item-icon,.console-mobile-nav-menu .ant-menu-submenu-open>.ant-menu-submenu-title .ant-menu-title-content,.console-mobile-nav-menu .ant-menu-submenu-open>.ant-menu-submenu-title .ant-menu-submenu-arrow,.console-mobile-nav-menu .ant-menu-submenu-selected>.ant-menu-submenu-title .ant-menu-item-icon,.console-mobile-nav-menu .ant-menu-submenu-selected>.ant-menu-submenu-title .ant-menu-title-content,.console-mobile-nav-menu .ant-menu-submenu-selected>.ant-menu-submenu-title .ant-menu-submenu-arrow{color:#0f3d91!important}.console-mobile-nav-menu::-webkit-scrollbar-thumb{background:rgba(15,61,145,.22)}.console-mobile-nav-menu:hover::-webkit-scrollbar-thumb{background:rgba(15,61,145,.34)}.console-mobile-user-card{display:block;margin-top:20px}@media(max-width:768px){.console-mobile-menu-button{position:fixed;top:14px;left:14px;z-index:1000;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 3px 10px rgba(20,20,19,.05)}}.console-brand{margin-bottom:6px}.console-brand-top{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-right:40px}.console-brand-header{display:flex;align-items:center;gap:10px;min-width:0;flex:1}.console-brand-logo-wrap{position:relative;width:42px;height:42px;flex:0 0 auto}.console-brand-logo{width:42px;height:42px;border-radius:12px;object-fit:cover;box-shadow:0 0 0 1px #dbe7f5;transition:opacity .2s ease}.console-brand-title{margin:0!important;line-height:1.25;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.console-collapse-button{width:32px;height:44px;border:1px solid rgba(255,255,255,.38);border-radius:999px;color:#144aa6;background:#fff;box-shadow:0 8px 18px rgba(15,58,130,.2)}.console-collapse-button:hover,.console-collapse-button:focus-visible{color:#fff!important;background:#144aa6!important;border-color:#144aa6!important}.console-collapse-button-right{position:absolute;top:4px;right:0;margin-left:0;flex:0 0 auto}.console-collapse-button-overlay{position:absolute;top:0;right:0;bottom:0;left:0;width:42px;height:42px;border-radius:12px;opacity:0;pointer-events:none;transition:opacity .2s ease}.console-sider.is-collapsed .console-brand-logo-wrap:hover .console-brand-logo,.console-sider.is-collapsed .console-brand-logo-wrap:focus-within .console-brand-logo{opacity:0}.console-sider.is-collapsed .console-brand-logo-wrap:hover .console-collapse-button-overlay,.console-sider.is-collapsed .console-brand-logo-wrap:focus-within .console-collapse-button-overlay{opacity:1;pointer-events:auto}.console-user-card{min-width:0;max-width:100%;overflow:hidden;transition:all .2s ease;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)}.console-user-card .ant-card-body{min-width:0}.console-user-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;min-width:0}.console-user-identity{min-width:0;max-width:100%;flex:1 1 auto}.console-user-card .ant-space-item:last-child{min-width:0;flex:1 1 auto;overflow:hidden}.console-profile-settings-button{flex:0 0 auto;color:rgba(255,255,255,.86)}.console-profile-settings-button:hover{color:#fff!important;background:rgba(255,255,255,.14)!important}.console-user-meta{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}.console-user-meta .ant-typography{display:block;max-width:100%;margin:0!important;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.console-user-card .ant-typography,.console-user-card .console-user-meta .ant-typography{color:rgba(255,255,255,.76)!important}.console-user-card .console-user-meta .ant-typography strong,.console-user-card .console-user-meta .ant-typography.ant-typography strong,.console-user-card .console-user-meta .ant-typography:first-child{color:#fff!important;font-weight:700}.console-user-card .ant-avatar{color:rgba(255,255,255,.9);background:rgba(255,255,255,.18)}.console-user-card .console-logout-button.ant-btn{color:#fff;border-color:rgba(255,255,255,.34);background:rgba(255,255,255,.12);box-shadow:none}.console-user-card .console-logout-button.ant-btn:hover,.console-user-card .console-logout-button.ant-btn:focus-visible{color:#fff!important;border-color:rgba(255,255,255,.56)!important;background:rgba(255,255,255,.2)!important}.profile-info-modal .ant-modal-content,.requester-notifications-modal .ant-modal-content{border:1px solid #dbe7f5;border-radius:22px;background:#fff;box-shadow:0 4px 12px rgba(20,20,19,.035)}.requester-notifications-loading{min-height:180px}.requester-notifications-mini-list{max-height:420px;overflow-y:auto}.requester-notifications-mini-list .ant-list-item{margin-bottom:10px;padding:12px;border:1px solid #dbe7f5;border-radius:14px;background:#fff}.requester-notifications-mini-list .ant-list-item.is-unread{border-color:#9bb8df;background:#fff}.profile-info-summary{display:flex;align-items:center;gap:14px;padding:14px;border:1px solid #dbe7f5;border-radius:18px;background:rgba(255,255,255,.68)}.profile-info-summary .ant-typography{margin-bottom:0}.profile-info-grid{display:grid;gap:10px}.profile-info-field{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border:1px solid #dbe7f5;border-radius:16px;background:rgba(255,255,255,.76)}.profile-info-field .ant-typography{word-break:break-word}.auth-page{display:grid;place-items:center;min-height:100vh;padding:32px;background-image:linear-gradient(90deg,rgba(255,255,255,.36),rgba(255,255,255,.18)),url(/bg-login.png);background-position:center;background-size:cover;background-repeat:no-repeat}.auth-card{width:min(430px,100%);border:1px solid rgba(183,203,232,.9);border-radius:18px;box-shadow:0 18px 48px rgba(20,74,166,.16),0 0 0 1px rgba(255,255,255,.64) inset;background:rgba(255,255,255,.94);backdrop-filter:blur(10px)}.auth-card .ant-card-body{padding:32px 30px 28px}.auth-login-header{align-items:center;gap:10px;text-align:center}.auth-login-header .ant-typography.ant-typography-h2,.auth-login-header h2.ant-typography{margin-top:4px;margin-bottom:0;color:#111827;font-size:24px;line-height:1.22;font-weight:750}.auth-login-header .ant-typography-secondary{max-width:300px;margin-inline:auto;font-size:14px;line-height:1.55}.auth-login-brand{display:inline-flex;align-items:center;gap:10px;width:fit-content;border:1px solid #cbdcf0;background:#fff;border-radius:999px;padding:6px 12px 6px 8px}.auth-login-logo{display:block;width:164px;max-width:72%;height:auto;object-fit:contain}.auth-login-brand-text{color:#4b5563;font-size:13px;font-weight:500}.auth-login-form .ant-form-item{margin-bottom:14px}.auth-login-form .ant-form-item:last-child{margin-bottom:0}.auth-login-form .ant-form-item-label>label{color:#1f2937;font-weight:500}.auth-login-form .ant-input,.auth-login-form .ant-input-affix-wrapper{height:46px;min-height:46px;border-radius:10px!important;border-color:#dbe7f5!important;background:#eef5ff!important}.auth-login-form .ant-input{padding-block:0}.auth-login-form .ant-input-affix-wrapper{display:flex;align-items:center}.auth-login-form .ant-input-affix-wrapper .ant-input{height:100%;min-height:0;background:transparent!important}.auth-login-form .ant-input:focus,.auth-login-form .ant-input-focused,.auth-login-form .ant-input-affix-wrapper-focused{border-color:#144aa6!important;box-shadow:0 0 0 2px rgba(20,74,166,.12)!important;background:#fff!important}.auth-login-submit{height:48px;border-radius:10px;font-weight:700;box-shadow:0 10px 20px rgba(20,74,166,.16)}.auth-login-divider{margin:4px 0 0!important;border-color:#cbdcf0}.auth-login-note{display:block;text-align:center;font-size:13px;line-height:1.45}.auth-card-wide{width:min(980px,100%);border:1px solid #dbe7f5;box-shadow:rgba(20,20,19,.024) 0 3px 10px;background:#fff}.centered-state{min-height:calc(100vh - 120px);display:grid;place-items:center}.workspace-page{display:flex;flex-direction:column;gap:20px;width:100%}.workspace-header{display:flex;flex-direction:column;gap:10px}.workspace-header .ant-typography{margin:0!important}.workspace-card{border:1px solid #e4edf8;box-shadow:0 2px 10px rgba(20,74,166,.035);background:#fff}.public-room-page.auth-page{display:block;place-items:initial;padding:24px}.public-room-page .auth-card-wide{margin-inline:auto}.public-room-page .auth-card-wide .ant-card-body{padding:28px}.public-room-hero-actions{display:flex;flex-wrap:wrap;gap:12px}.public-room-timeline-item{padding:2px 0 16px}.public-room-session-card{width:100%;max-width:100%;background:#fff;border:1px solid #dbe7f5;border-radius:14px;padding:12px 14px;box-shadow:0 1px rgba(20,20,19,.024)}.public-room-session-icon{width:28px;height:28px;border-radius:999px;background:#dbe7f5;color:#144aa6;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.public-room-session-divider{height:1px;background:#dbe7f5}.public-room-page .workspace-card .ant-table-container{overflow-x:auto}@media(max-width:640px){.public-room-page.auth-page{padding:14px}.public-room-page .auth-card-wide .ant-card-body{padding:16px}.public-room-page .workspace-header h2.ant-typography,.public-room-page .workspace-header .ant-typography-h2{font-size:22px;line-height:1.2}}.public-building-page.auth-page{display:block;place-items:initial;min-height:100vh;padding:24px}.public-building-page-dark{position:relative;background:radial-gradient(circle at top left,rgba(34,211,238,.08),transparent 28%),radial-gradient(circle at top right,rgba(59,130,246,.1),transparent 34%),linear-gradient(180deg,#06111f,#08182b 42%,#06101c);overflow:hidden}.public-building-page-light{position:relative;background:radial-gradient(circle at top left,rgba(219,234,254,.8),transparent 26%),radial-gradient(circle at top right,rgba(191,219,254,.9),transparent 32%),linear-gradient(180deg,#f8fbff,#eef4fb 42%,#e8f0fa);overflow:hidden}.public-building-page-dark:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background-image:linear-gradient(rgba(148,163,184,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.035) 1px,transparent 1px);background-size:100% 38px,72px 100%;-webkit-mask-image:linear-gradient(180deg,rgba(0,0,0,.55),transparent 92%);mask-image:linear-gradient(180deg,rgba(0,0,0,.55),transparent 92%);opacity:.8}.public-building-page-dark:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(circle at 50% 0%,rgba(103,232,249,.12),transparent 36%),radial-gradient(circle at 50% 50%,rgba(59,130,246,.08),transparent 56%)}.public-building-dark-shell,.public-building-dark-shell-error{position:relative;z-index:1}.public-building-dark-shell{width:min(1480px,100%);margin:0 auto;display:flex;flex-direction:column;gap:22px}.public-building-dark-shell-error{max-width:720px;padding:28px;border-radius:28px;background:rgba(7,20,36,.9);border:1px solid rgba(103,232,249,.18);box-shadow:0 18px 48px rgba(0,0,0,.28)}.public-building-dark-hero{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.8fr);gap:24px;align-items:stretch}.public-building-dark-hero-copy{position:relative;overflow:hidden;padding:28px 32px;border-radius:30px;background:linear-gradient(135deg,rgba(8,26,44,.96),rgba(6,18,31,.94));border:1px solid rgba(96,165,250,.2);box-shadow:0 24px 50px rgba(0,0,0,.24)}.public-building-dark-hero-copy:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at top right,rgba(103,232,249,.18),transparent 24%);opacity:.85;pointer-events:none}.public-building-dark-hero-copy:after{content:"";position:absolute;inset:auto 0 0;height:2px;background:linear-gradient(90deg,transparent,rgba(251,191,36,.75),transparent);opacity:.8;pointer-events:none}.public-building-dark-hero-copy>*{position:relative;z-index:1}.public-building-code-chip{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;border-radius:999px;border:1px solid rgba(251,191,36,.38);background:rgba(251,191,36,.12);color:#fde68a;font-size:14px;font-weight:800;letter-spacing:.2em;text-transform:uppercase}.public-building-dark-eyebrow{display:inline-block;color:#fbbf24!important;font-size:clamp(24px,3.2vw,48px);font-weight:900;letter-spacing:.14em;text-transform:uppercase;text-shadow:0 0 24px rgba(251,191,36,.12)}.public-building-dark-title.ant-typography{margin:10px 0 0!important;color:#f8fbff;font-size:clamp(32px,4vw,56px);line-height:.96;letter-spacing:-.04em}.public-building-dark-subtitle.ant-typography{margin:12px 0 0!important;color:#c7d8ea;font-size:18px;line-height:1.35}.public-building-dark-hero-meta{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:18px}.public-building-dark-caption{display:inline-block;color:#86a5c2!important;font-size:13px;font-weight:700;letter-spacing:.24em;text-transform:uppercase}.public-building-dark-sidepanel{display:grid;gap:18px}.public-building-dark-clockbox,.public-building-dark-refreshbox{position:relative;display:flex;gap:14px;align-items:flex-start;padding:22px 24px;border-radius:24px;background:rgba(8,24,41,.92);border:1px solid rgba(103,232,249,.14);box-shadow:0 18px 40px rgba(0,0,0,.22);color:#a5f3fc}.public-building-dark-clockbox:after,.public-building-dark-refreshbox:after{content:"";position:absolute;inset:auto 18px 14px 18px;height:1px;background:linear-gradient(90deg,transparent,rgba(103,232,249,.45),transparent);opacity:.55}.public-building-dark-accent-bar{position:absolute;inset:0 auto 0 0;width:6px;background:linear-gradient(180deg,#67e8f9,#3b82f6);border-radius:30px 0 0 30px}.public-building-live-dot{width:12px;height:12px;margin-top:5px;border-radius:999px;background:#22d3ee;box-shadow:0 0 rgba(34,211,238,.55);animation:public-building-pulse 1.8s infinite}.public-building-dark-meta-label{display:block;color:#88a7c5!important;font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.public-building-dark-clock{display:block;margin-top:8px;color:#f8fbff!important;font-size:clamp(30px,3vw,44px);font-weight:800;line-height:1;letter-spacing:.04em}.public-building-dark-meta-value{display:block;margin-top:8px;color:#e6f2ff!important;font-size:16px;line-height:1.45}.public-building-board-panel{position:relative;display:flex;flex:1 1 auto;flex-direction:column;min-height:0;overflow:hidden;border:1px solid #334155;background:#0f172a;box-shadow:none}.public-building-board-shell{display:flex;flex-direction:column;height:calc(100vh - 48px);min-height:0;overflow:hidden}.public-building-board-header{display:flex;flex-direction:column;gap:18px;padding:24px 32px;border-bottom:2px solid #1d4ed8;background:linear-gradient(180deg,#0b1f4d,#0f2f73 58%,#0b1f4d);color:#e2e8f0;flex-shrink:0}.public-building-board-header-top{display:grid;grid-template-columns:minmax(220px,.85fr) minmax(0,1.3fr) minmax(240px,.9fr);align-items:center;gap:36px}.public-building-board-branding{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-width:0;text-align:center}.public-building-board-brand-copy{display:flex;flex-direction:column;align-items:center}.public-building-board-branding-left{align-items:flex-start;justify-content:flex-start}.public-building-board-brand-copy-left{align-items:flex-start;text-align:left;padding-right:16px}.public-building-board-brand-copy-center{align-items:center;text-align:center;padding:0 12px;min-width:0}.public-building-board-app-logo{height:82px;width:auto;object-fit:contain;flex-shrink:0}.public-building-page-light .public-building-board-header{border-bottom-color:#cbd5e1;background:#f8fbff;color:#0f172a}.public-building-board-eyebrow{display:block;margin-bottom:12px;color:#bfdbfe!important;font-size:clamp(14px,1.45vw,18px);font-weight:750;letter-spacing:.16em;text-transform:uppercase}.public-building-board-title{margin:0!important;color:#dbeafe!important;font-size:clamp(18px,2vw,28px);font-weight:780;letter-spacing:.06em;line-height:1.04}.public-building-board-building-name{display:block;margin-top:8px;color:#bfdbfe!important;font-size:18px;font-weight:700;letter-spacing:.08em}.public-building-page-light .public-building-board-building-name{color:#111827!important}.public-building-board-subtitle{display:block;margin-top:8px;color:#dbeafe!important;font-size:clamp(15px,1.55vw,21px);font-weight:720;letter-spacing:.06em;text-transform:uppercase}.public-building-board-subtitle-trigger{display:inline-flex;align-items:center;gap:10px;padding:0;border:0;background:transparent;cursor:pointer}.public-building-board-subtitle-trigger:hover,.public-building-board-subtitle-trigger:focus-visible{color:#fff!important}.public-building-picker-overlay .ant-popover-inner{background:#0f172a;border:1px solid rgba(191,219,254,.18);box-shadow:0 20px 40px rgba(15,23,42,.38)}.public-building-picker-popover{width:320px}.public-building-picker-search{margin-bottom:10px}.public-building-picker-search .ant-input{background:rgba(15,23,42,.72);border-color:rgba(191,219,254,.2);color:#e2e8f0}.public-building-picker-list{display:flex;max-height:280px;flex-direction:column;gap:8px;overflow-y:auto}.public-building-picker-item{display:flex;width:100%;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;border:1px solid rgba(191,219,254,.14);border-radius:12px;background:rgba(30,41,59,.96);color:#f8fafc;text-align:left;cursor:pointer;transition:border-color .18s ease,transform .18s ease,background .18s ease,color .18s ease}.public-building-picker-item:hover,.public-building-picker-item:focus-visible{border-color:rgba(96,165,250,.7);background:rgba(30,64,175,.42);color:#fff;transform:translateY(-1px)}.public-building-picker-item:hover .public-building-picker-item-code,.public-building-picker-item:focus-visible .public-building-picker-item-code{color:#fff}.public-building-picker-item:hover .public-building-picker-item-name,.public-building-picker-item:focus-visible .public-building-picker-item-name{color:#dbeafe}.public-building-picker-item.is-current,.public-building-picker-item:disabled{cursor:default;opacity:.65}.public-building-picker-item-code{color:#f8fafc;font-size:13px;font-weight:800;letter-spacing:.08em}.public-building-picker-item-name{font-size:13px;color:#bfdbfe}.public-building-picker-loading,.public-building-picker-empty{display:flex;min-height:88px;align-items:center;justify-content:center;color:#cbd5e1;font-size:13px;text-align:center}.public-building-page-light .public-building-board-subtitle{color:#475569!important}.public-building-board-clockblock{text-align:right;min-width:220px}.public-building-board-refresh-indicator{min-height:18px;color:rgba(250,204,21,0);font-size:11px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;transition:color .18s ease}.public-building-board-refresh-indicator.is-visible{color:rgba(191,219,254,.95)}.public-building-board-clock{color:#fff;font-size:clamp(42px,5vw,72px);font-weight:800;letter-spacing:.14em;line-height:1}.public-building-board-date{margin-top:8px;color:#94a3b8;font-size:16px;letter-spacing:.14em;text-transform:uppercase}.public-building-board-actions{display:flex;flex-direction:column;align-items:flex-end;gap:12px;position:relative}.public-building-board-secret-toggle{position:absolute;top:-8px;right:-6px;width:10px;height:10px;border:none;border-radius:999px;padding:0;background:rgba(191,219,254,.14);opacity:.2;cursor:pointer;transition:opacity .18s ease,transform .18s ease,background .18s ease,box-shadow .18s ease}.public-building-board-secret-toggle:hover,.public-building-board-secret-toggle:focus-visible{opacity:.82;transform:scale(1.15);background:rgba(191,219,254,.75);box-shadow:0 0 0 4px rgba(191,219,254,.18);outline:none}.public-building-board-secret-toggle.is-active{background:rgba(250,204,21,.85);opacity:.4}.public-building-board-theme-toggle{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 14px;border:1px solid currentColor;border-radius:999px;background:transparent;color:inherit;font-size:13px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.public-building-page-dark .public-building-board-theme-toggle{color:#facc15;border-color:rgba(250,204,21,.6);background:rgba(250,204,21,.08)}.public-building-board-main{flex:1;overflow:auto;background:#1e293b;padding:28px 32px 24px}.public-building-board-inner{min-width:960px}.public-building-board-panel:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(180deg,rgba(103,232,249,.06),transparent 16%)}.public-building-board-panel>*{position:relative;z-index:1}.public-building-board-panel-header{position:sticky;top:0;z-index:3;flex-shrink:0;padding:0 32px 12px;background:#0f172a;border-bottom:1px solid #475569}.public-building-page-light .public-building-board-panel-header{border-bottom-color:#d9e5f2}.public-building-board-columns,.public-building-board-grid{display:grid;grid-template-columns:160px 160px 92px minmax(0,1.4fr) 180px;gap:24px;align-items:center}.public-building-board-columns{color:#94a3b8;font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.public-building-page-light .public-building-board-columns{color:#64748b}.public-building-board-columns span{display:flex;flex-direction:column;gap:4px}.public-building-board-columns strong{color:#cbd5e1;font-size:12px;font-weight:800}.public-building-page-light .public-building-board-columns strong{color:#334155}.public-building-page-light .public-building-board-columns em{color:#64748b}.public-building-board-columns-sample .public-building-board-col-status,.public-building-board-row .public-building-board-cell-status{text-align:right;justify-content:flex-end}.public-building-board-row .public-building-board-cell-time,.public-building-board-row .public-building-board-cell-room,.public-building-board-row .public-building-board-cell-logo,.public-building-board-row .public-building-board-cell-subject{padding-right:12px}.public-building-dark-board-viewport{position:relative;flex:1 1 auto;min-height:0;overflow:hidden;scroll-behavior:auto}.public-building-dark-board-list{display:flex;flex-direction:column;opacity:1;transform:translateY(0);filter:blur(0);transition:opacity .26s ease,transform .26s ease,filter .26s ease}.public-building-dark-board-list.is-transitioning{opacity:.18;transform:translateY(10px);filter:blur(3px)}.public-building-board-row{padding:14px 32px;border-top:1px solid #334155;background:transparent;transition:background-color .22s ease,opacity .22s ease,transform .22s ease,border-color .22s ease}.public-building-page-light .public-building-board-row{border-top-color:#d9e5f2}.public-building-board-row:nth-child(2n){background:rgba(255,255,255,.02)}.public-building-page-light .public-building-board-row:nth-child(2n){background:rgba(15,61,145,.04)}.public-building-board-row.is-live{background:linear-gradient(90deg,rgba(15,61,145,.34),rgba(13,33,79,.92));box-shadow:inset 5px 0 #60a5fa,0 0 0 1px rgba(96,165,250,.22),0 10px 24px rgba(15,61,145,.22);transform:translateY(-1px)}.public-building-page.is-social-preview{min-height:100vh;background:radial-gradient(circle at top,#17346f,#09111f 55%,#050b14)}.public-building-page.is-social-preview .public-building-board-shell{width:1200px;min-height:630px;margin:0 auto;padding:22px 28px 18px}.public-building-page.is-social-preview .public-building-board-header{padding:24px 28px 18px;border-radius:28px 28px 0 0}.public-building-page.is-social-preview .public-building-board-panel{min-height:470px;border-radius:0 0 28px 28px}.public-building-page.is-social-preview .public-building-board-header-top{align-items:flex-start}.public-building-page.is-social-preview .public-building-board-app-logo{width:160px}.public-building-page.is-social-preview .public-building-board-eyebrow{font-size:16px}.public-building-page.is-social-preview .public-building-board-title{font-size:34px}.public-building-page.is-social-preview .public-building-board-subtitle{font-size:24px}.public-building-page.is-social-preview .public-building-board-subtitle-trigger{cursor:default;pointer-events:none}.public-building-page.is-social-preview .public-building-board-clock{font-size:54px}.public-building-page.is-social-preview .public-building-board-date{font-size:18px}.public-building-page.is-social-preview .public-building-board-panel-header{padding:0 24px 10px}.public-building-page.is-social-preview .public-building-board-columns,.public-building-page.is-social-preview .public-building-board-grid{grid-template-columns:152px 150px 84px minmax(0,1.5fr) 170px;gap:18px}.public-building-page.is-social-preview .public-building-board-row{padding:12px 24px}.public-building-page.is-social-preview .public-building-board-subject-title{font-size:20px}.public-building-page.is-social-preview .public-building-board-time-main,.public-building-page.is-social-preview .public-building-board-room-code{font-size:22px}.public-building-page.is-social-preview .public-building-board-status-badge{min-width:144px;font-size:12px}.public-building-page.is-social-preview .public-building-board-uni-logo{width:52px;height:52px}.public-building-page.is-social-preview .public-building-ticker{display:none}.public-building-page-light .public-building-board-row.is-live{background:rgba(34,197,94,.1)}.public-building-board-row.is-blink{background:rgba(250,204,21,.08)}.public-building-page-light .public-building-board-row.is-blink{background:rgba(250,204,21,.1)}.public-building-board-row.is-on-time{background:rgba(255,255,255,.02)}.public-building-page-light .public-building-board-row.is-on-time{background:rgba(15,61,145,.03)}.public-building-board-row.is-ended{opacity:.6;background:rgba(15,23,42,.75)}.public-building-page-light .public-building-board-row.is-ended{background:rgba(148,163,184,.08)}.public-building-dark-row:nth-child(2n){background:rgba(8,19,33,.72)}.public-building-dark-row.is-live{background:linear-gradient(90deg,rgba(34,211,238,.14),rgba(8,19,33,.76) 26%,rgba(8,19,33,.72));box-shadow:inset 4px 0 rgba(103,232,249,.8)}.public-building-dark-row.is-blink{box-shadow:inset 4px 0 rgba(251,191,36,.85)}.public-building-dark-row.is-on-time{box-shadow:inset 4px 0 rgba(103,232,249,.12)}.public-building-dark-row.is-muted{opacity:.78}.public-building-board-cell-time,.public-building-board-cell-room,.public-building-board-cell-logo,.public-building-board-cell-subject,.public-building-board-cell-status{min-width:0}.public-building-board-cell-time,.public-building-board-cell-room{display:flex;flex-direction:column;gap:4px}.public-building-board-time-main{color:#93c5fd;font-size:18px;font-weight:800;letter-spacing:.08em}.public-building-page-light .public-building-board-time-main{color:#0f3d91}.public-building-board-time-sub{color:#cbd5e1;font-size:12px;letter-spacing:.12em}.public-building-page-light .public-building-board-time-sub{color:#64748b}.public-building-board-room-code{color:#60a5fa;font-size:18px;font-weight:800;letter-spacing:.08em}.public-building-page-light .public-building-board-room-code{color:#0f3d91}.public-building-board-room-meta{color:#94a3b8;font-size:12px;letter-spacing:.06em}.public-building-page-light .public-building-board-room-meta{color:#64748b}.public-building-board-cell-logo{display:flex;align-items:center;justify-content:center}.public-building-board-cell-subject{display:flex;align-items:center;min-width:0;color:#e2e8f0;font-size:18px;font-weight:700;letter-spacing:.04em;overflow:hidden}.public-building-board-cell-subject span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.public-building-board-university-logo{width:52px;height:52px;flex-shrink:0;border-radius:10px;object-fit:contain;background:rgba(255,255,255,.92);padding:4px}.public-building-board-logo-placeholder{color:#64748b;font-size:20px;line-height:1}.public-building-page-light .public-building-board-cell-subject{color:#0f172a}.public-building-board-cell-status{display:flex;justify-content:flex-end}.public-building-board-status-pill{display:inline-flex;align-items:center;justify-content:center;min-width:136px;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.public-building-board-status-pill.is-live{color:#dbeafe;background:linear-gradient(135deg,rgba(37,99,235,.92),rgba(59,130,246,.78));box-shadow:0 0 18px rgba(59,130,246,.24)}.public-building-page-light .public-building-board-status-pill.is-live{background:rgba(34,197,94,.12)}.public-building-board-status-pill.is-blink{color:#facc15;background:rgba(250,204,21,.08)}.public-building-page-light .public-building-board-status-pill.is-blink{background:rgba(250,204,21,.12)}.public-building-board-status-pill.is-on-time{color:#e2e8f0;background:rgba(255,255,255,.04)}.public-building-page-light .public-building-board-status-pill.is-on-time{color:#0f172a;background:rgba(15,61,145,.08)}.public-building-board-status-pill.is-ended{color:#94a3b8;background:rgba(148,163,184,.08)}.public-building-page-light .public-building-board-status-pill.is-ended{color:#64748b;background:rgba(148,163,184,.12)}.public-building-dark-empty{padding:40px 20px}.public-building-dark-empty .ant-empty-description{color:#9ab3cb}.public-building-dark-empty .ant-empty .ant-empty-image{opacity:.82}.public-building-ticker{display:flex;align-items:center;min-height:56px;padding:0;border-top:2px solid rgba(55,65,81,.95);background:#0b1220;overflow:hidden}.public-building-page-light .public-building-ticker{border-top-color:#d9e5f2;background:#f8fbff}.public-building-ticker-badge{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:100%;padding:0 16px;background:#facc15;color:#111827;font-size:14px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}.public-building-page-light .public-building-ticker-badge{background:#0f3d91;color:#fff}.public-building-ticker-track{display:flex;min-width:0;flex:1;gap:64px;padding:0 18px;color:#facc15;font-size:16px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;overflow:hidden}.public-building-page-light .public-building-ticker-track{color:#0f3d91}.public-building-ticker-track span{animation:public-building-marquee 22s linear infinite}@media(max-width:1200px){.public-building-board-header{align-items:stretch;flex-direction:column}.public-building-board-header-top{grid-template-columns:1fr;gap:18px}.public-building-board-branding{align-items:center}.public-building-board-branding-left{align-items:center;justify-content:center}.public-building-board-brand-copy-left,.public-building-board-brand-copy-center{align-items:center;text-align:center;padding-right:0}.public-building-board-actions{align-items:flex-start}.public-building-board-columns,.public-building-board-grid{grid-template-columns:120px 130px 76px minmax(0,1fr) 150px;gap:14px}.public-building-board-panel-header,.public-building-board-row,.public-building-board-header,.public-building-board-main{padding-left:24px;padding-right:24px}.public-building-ticker{flex-wrap:wrap}.public-building-ticker-track{min-width:100%}}@media(max-width:820px){.public-building-page.auth-page{padding:0}.public-building-board-header,.public-building-board-main,.public-building-board-panel-header,.public-building-board-row{padding-left:16px;padding-right:16px}.public-building-board-header{gap:12px}.public-building-board-title{font-size:28px}.public-building-board-branding{flex-direction:column;gap:12px}.public-building-board-brand-copy{align-items:center}.public-building-board-app-logo{height:44px}.public-building-board-building-name{font-size:16px}.public-building-board-clock{font-size:34px}.public-building-board-actions{align-items:flex-start}.public-building-board-columns{display:none}.public-building-board-grid{grid-template-columns:1fr;gap:8px}.public-building-board-cell-status{justify-content:flex-start}.public-building-board-status-pill{min-width:0}.public-building-ticker{min-height:auto}}@keyframes public-building-pulse{0%{box-shadow:0 0 rgba(34,211,238,.45)}70%{box-shadow:0 0 0 10px rgba(34,211,238,0)}to{box-shadow:0 0 rgba(34,211,238,0)}}@keyframes public-building-blink{0%,to{opacity:1}50%{opacity:.45}}.public-building-board-status-pill.animate-blink{animation:public-building-blink 1.5s infinite}@keyframes flipIn{0%{transform:rotateX(-90deg);opacity:0}to{transform:rotateX(0);opacity:1}}@keyframes public-building-marquee{0%{transform:translate(0)}to{transform:translate(-100%)}}.flip-row{transform-origin:top;animation:flipIn .5s ease-out forwards;opacity:0}.requester-request-detail-hero-card,.requester-request-detail-card{border-width:1px;box-shadow:none}.workspace-card-dark{background:#30302e;border:1px solid #30302e}.workspace-card .ant-table{background:transparent;color:#111827}.workspace-card .ant-table-container{border:1px solid #e4edf8;border-radius:14px;overflow:hidden}.workspace-card .ant-table-thead>tr>th{background:#f7faff!important;color:#4b5563!important;border-bottom:1px solid #e4edf8!important;font-size:13px;font-weight:650}.workspace-card .ant-table-tbody>tr>td{background:#fff;border-bottom:1px solid #edf3fb;color:#374151}.workspace-card .ant-table-tbody>tr:hover>td{background:#f7faff!important}.workspace-card .ant-table-tbody>tr:last-child>td{border-bottom-color:transparent}.workspace-card .ant-table-summary>tr>td{background:#f7faff;border-top:1px solid #e4edf8;color:#111827;font-weight:650}.workspace-card .ant-table-pagination.ant-pagination{margin:14px 0 0}.workspace-card .ant-table .ant-tag,.workspace-card .ant-list .ant-tag,.workspace-card .ant-descriptions .ant-tag,.workspace-card .ant-timeline .ant-tag,.ant-modal .ant-tag{display:inline-flex;align-items:center;justify-content:center;min-height:28px;margin-inline-end:0;padding:3px 10px;border-radius:999px;border-width:1px;font-size:13px;font-weight:650;line-height:1.25;box-shadow:none}.workspace-card .ant-tag.ant-tag-success,.workspace-card .ant-tag.ant-tag-green,.ant-modal .ant-tag.ant-tag-success,.ant-modal .ant-tag.ant-tag-green{color:#047857!important;background:#dffcf0!important;border-color:#8ee6bd!important}.workspace-card .ant-tag.ant-tag-processing,.workspace-card .ant-tag.ant-tag-blue,.ant-modal .ant-tag.ant-tag-processing,.ant-modal .ant-tag.ant-tag-blue{color:#144aa6!important;background:#eaf3ff!important;border-color:#b7d5ff!important}.workspace-card .ant-tag.ant-tag-warning,.workspace-card .ant-tag.ant-tag-gold,.workspace-card .ant-tag.ant-tag-orange,.ant-modal .ant-tag.ant-tag-warning,.ant-modal .ant-tag.ant-tag-gold,.ant-modal .ant-tag.ant-tag-orange{color:#b45309!important;background:#fff4cf!important;border-color:#f8d56b!important}.workspace-card .ant-tag.ant-tag-error,.workspace-card .ant-tag.ant-tag-red,.workspace-card .ant-tag.ant-tag-volcano,.ant-modal .ant-tag.ant-tag-error,.ant-modal .ant-tag.ant-tag-red,.ant-modal .ant-tag.ant-tag-volcano{color:#b91c1c!important;background:#ffe8e8!important;border-color:#ffb8b8!important}.workspace-card .ant-tag.ant-tag-purple,.ant-modal .ant-tag.ant-tag-purple{color:#6d28d9!important;background:#f1edff!important;border-color:#cfc4ff!important}.workspace-card .ant-tag.ant-tag-default,.ant-modal .ant-tag.ant-tag-default{color:#4b5563!important;background:#f8fafc!important;border-color:#e4edf8!important}.requester-dashboard-page{--requester-card: #ffffff;--requester-border: #dbe7f5;--requester-border-strong: #9bb8df;--requester-text: #111827;--requester-muted: #4b5563;--requester-accent: #144aa6;--requester-accent-soft: rgba(20, 74, 166, .13);--requester-success: #4f7a65;--requester-success-soft: rgba(79, 122, 101, .12);--requester-warning: #b6782f;--requester-warning-soft: rgba(182, 120, 47, .14);--requester-danger: #b53333;--requester-danger-soft: rgba(181, 51, 51, .11)}.requester-dashboard-hero{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:18px;align-items:stretch;padding:28px;border:1px solid var(--requester-border);border-radius:28px;background:#fff;box-shadow:0 4px 14px rgba(20,20,19,.024);overflow:hidden}.requester-dashboard-hero-copy{display:flex;flex-direction:column;justify-content:center;gap:12px}.requester-dashboard-eyebrow{width:fit-content;padding:5px 10px;border-radius:999px;color:var(--requester-accent);background:var(--requester-accent-soft);font-size:12px;font-weight:700;letter-spacing:.16px}.requester-dashboard-hero h1.ant-typography{margin:0!important;color:var(--requester-text);font-size:clamp(30px,4vw,48px);line-height:1.08}.requester-dashboard-hero .ant-typography{max-width:720px;margin:0}.requester-dashboard-hero-actions{margin-top:6px}.requester-dashboard-hero-panel{display:flex;min-height:178px;flex-direction:column;justify-content:center;gap:12px;padding:22px;border:1px solid rgba(255,255,255,.22);border-radius:22px;background:radial-gradient(circle at 24px 24px,rgba(255,255,255,.16),transparent 32px),linear-gradient(145deg,#1857b8,#0f3d91 62%,#0b2f73);color:#fff;box-shadow:0 8px 22px rgba(15,61,145,.18)}.requester-dashboard-hero-panel .ant-typography,.requester-dashboard-hero-panel .ant-typography-secondary{color:rgba(255,255,255,.72)!important}.requester-dashboard-hero-panel strong{color:#fff;font-size:48px;line-height:.95;font-weight:750;letter-spacing:-1.4px}.requester-dashboard-hero-panel-icon{display:grid;width:46px;height:46px;place-items:center;border-radius:16px;background:rgba(255,255,255,.13);color:#fff}.requester-dashboard-hero-panel-label{color:#fff!important;font-size:12px;font-weight:700;letter-spacing:.08px}.requester-dashboard-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.requester-dashboard-kpi-card{border:1px solid var(--requester-border);border-radius:20px;background:var(--requester-card);box-shadow:0 0 0 1px #dbe7f5}.requester-dashboard-kpi-card .ant-card-body{min-height:148px;display:flex;flex-direction:column;gap:10px}.requester-dashboard-kpi-topline{display:flex;align-items:center;gap:8px;color:var(--requester-muted);font-size:13px;font-weight:600}.requester-dashboard-kpi-topline span:first-child{display:grid;width:32px;height:32px;place-items:center;border-radius:12px;background:#dbe7f5;color:var(--requester-muted)}.requester-dashboard-kpi-card strong{color:var(--requester-text);font-size:34px;font-weight:500;line-height:1}.requester-dashboard-kpi-card .ant-typography-secondary{font-size:12px;line-height:1.4}.requester-dashboard-kpi-card.is-primary .requester-dashboard-kpi-topline span:first-child{color:var(--requester-accent);background:var(--requester-accent-soft)}.requester-dashboard-kpi-card.is-success .requester-dashboard-kpi-topline span:first-child{color:var(--requester-success);background:var(--requester-success-soft)}.requester-dashboard-kpi-card.is-warning .requester-dashboard-kpi-topline span:first-child{color:var(--requester-warning);background:var(--requester-warning-soft)}.requester-dashboard-kpi-card.is-danger .requester-dashboard-kpi-topline span:first-child{color:var(--requester-danger);background:var(--requester-danger-soft)}.requester-dashboard-insights{display:grid;grid-template-columns:minmax(0,1fr);gap:16px;align-items:stretch}.requester-shift-statistics-page{width:100%}.requester-shift-statistics-filter-card,.requester-shift-statistics-summary-card,.requester-shift-statistics-table-card{border:1px solid #e4edf8;border-radius:18px;background:#fff;box-shadow:0 2px 10px rgba(15,61,145,.035)}.requester-shift-statistics-summary-head,.requester-shift-statistics-table-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:12px}.requester-shift-statistics-summary-head .ant-typography,.requester-shift-statistics-table-head .ant-typography{margin-bottom:0}.requester-shift-statistics-view-toggle{min-width:260px;border:1px solid #d9e6f5;border-radius:12px;background:#fff}.requester-shift-statistics-view-toggle .ant-segmented-group{gap:4px}.requester-shift-statistics-view-toggle .ant-segmented-item{border-radius:9px;color:#4b5563;font-weight:600}.requester-shift-statistics-view-toggle .ant-segmented-item-label{display:inline-flex;align-items:center;justify-content:center;padding:0 14px}.requester-shift-statistics-view-toggle .ant-segmented-thumb{border-radius:9px;background:#dbeafe;box-shadow:none}.requester-shift-statistics-view-toggle .ant-segmented-item-selected{color:#0f3d91}.requester-dashboard-insight-card{min-width:0;border:1px solid var(--requester-border);border-radius:22px;background:var(--requester-card);box-shadow:0 0 0 1px #dbe7f5;overflow:hidden}.requester-dashboard-insight-card .ant-card-head{border-color:var(--requester-border)}.requester-dashboard-insight-card .ant-card-head-title{color:var(--requester-text);font-size:20px;font-weight:500}.requester-dashboard-recent-item{width:100%;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #dbe7f5;border-radius:16px;background:#fff;color:var(--requester-text);text-align:left;cursor:pointer;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.requester-dashboard-recent-item:hover{transform:translateY(-1px);border-color:var(--requester-border-strong);box-shadow:0 4px 12px rgba(20,20,19,.03)}.requester-dashboard-calendar-card .ant-card-head{align-items:flex-start}.requester-dashboard-calendar-scroll{overflow-x:auto;padding-bottom:4px}.requester-dashboard-calendar-grid{display:grid;min-width:1080px;overflow:hidden;border:1px solid var(--requester-border);border-radius:18px;background:var(--requester-border);gap:1px}.requester-dashboard-calendar-corner,.requester-dashboard-calendar-day,.requester-dashboard-calendar-shift,.requester-dashboard-calendar-slot{background:#fff}.requester-dashboard-calendar-corner,.requester-dashboard-calendar-day,.requester-dashboard-calendar-shift{padding:12px}.requester-dashboard-calendar-corner{display:flex;align-items:center;color:var(--requester-muted);font-size:12px;font-weight:700}.requester-dashboard-calendar-day,.requester-dashboard-calendar-shift{display:flex;flex-direction:column;gap:3px}.requester-dashboard-calendar-day{background:#f7faff}.requester-dashboard-calendar-slot{display:flex;min-height:128px;flex-direction:column;gap:8px;padding:0;border:0;cursor:pointer;text-align:left}.requester-dashboard-calendar-empty{padding:10px;color:#9ca3af;font-size:12px}.requester-dashboard-calendar-booking{display:flex;width:100%;flex:1 1 auto;flex-direction:column;gap:5px;padding:9px;border:1px solid transparent;border-radius:0;background:#fff;color:var(--requester-text);text-align:left;transition:background .2s ease,transform .2s ease}.requester-dashboard-calendar-booking:hover{background:#f7faff;transform:translateY(-1px)}.requester-dashboard-calendar-booking.is-pending{background:rgba(217,119,6,.08)}.requester-dashboard-calendar-booking.is-approved{background:rgba(22,163,74,.08)}.requester-dashboard-calendar-booking.is-default,.requester-dashboard-calendar-booking.is-mine{background:rgba(20,74,166,.06)}.requester-dashboard-calendar-booking.is-mine.is-pending{background:rgba(217,119,6,.1)}.requester-dashboard-calendar-booking.is-mine.is-approved{background:rgba(22,163,74,.1)}.requester-dashboard-calendar-booking-title{display:flex;min-width:0;align-items:center;gap:6px}.requester-dashboard-calendar-mine-dot{width:7px;height:7px;flex:0 0 auto;border-radius:999px;background:var(--requester-accent);box-shadow:0 0 0 3px rgba(20,74,166,.14)}.requester-dashboard-calendar-booking.is-pending .requester-dashboard-calendar-mine-dot{background:#d97706;box-shadow:0 0 0 3px rgba(217,119,6,.14)}.requester-dashboard-calendar-booking.is-approved .requester-dashboard-calendar-mine-dot{background:#16a34a;box-shadow:0 0 0 3px rgba(22,163,74,.14)}.requester-dashboard-recent-main{min-width:0;display:flex;flex:1 1 auto;flex-direction:column;gap:4px}.requester-dashboard-recent-main .ant-typography{max-width:100%;margin:0}.requester-dashboard-recent-item .ant-tag{max-width:104px;flex:0 0 auto;overflow:hidden;text-overflow:ellipsis}.requester-dashboard-stats-module{padding:22px 24px 24px;border-radius:24px;border:1px solid var(--requester-border);background:#fff;box-shadow:0 2px 10px rgba(15,61,145,.035)}.requester-dashboard-stats-module-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.requester-dashboard-stats-module-head .ant-typography{margin-bottom:0}.requester-dashboard-stats-module-head h3.ant-typography{margin-bottom:6px;color:var(--requester-text);font-size:24px;line-height:1.2}.requester-dashboard-stats-module-filters{justify-content:flex-end}.requester-dashboard-stats-chart-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;margin-bottom:16px}.requester-dashboard-stats-chart-grid-primary,.requester-dashboard-stats-chart-grid-secondary{align-items:start}.requester-dashboard-mini-chart-card,.requester-dashboard-table-panel{border-radius:18px;background:#fff;box-shadow:0 0 0 1px rgba(219,231,245,.9)}.requester-dashboard-mini-chart-card{padding:16px 18px}.requester-dashboard-table-panel{overflow:hidden}.requester-dashboard-table-panel-main{margin-top:4px}.requester-dashboard-subsection-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px 0;color:var(--requester-text)}.requester-dashboard-mini-chart-head{display:flex;align-items:center;gap:8px;margin-bottom:14px;color:var(--requester-text)}.requester-dashboard-status-chart{display:flex;flex-direction:column;gap:12px}.requester-dashboard-status-chart-row{display:flex;flex-direction:column;gap:6px}.requester-dashboard-status-chart-label{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--requester-muted);font-size:13px}.requester-dashboard-status-chart-label strong{color:var(--requester-text)}.requester-dashboard-status-chart-bar-track{height:10px;border-radius:999px;background:#edf3fb;overflow:hidden}.requester-dashboard-status-chart-bar{height:100%;border-radius:999px;background:var(--requester-accent)}.requester-dashboard-status-chart-bar.is-success{background:#16a34a}.requester-dashboard-status-chart-bar.is-warning{background:#d97706}.requester-dashboard-status-chart-bar.is-danger{background:#dc2626}.requester-dashboard-donut-card{min-height:100%}.requester-dashboard-donut-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:18px;align-items:center}.requester-dashboard-donut-wrap{display:flex;align-items:center;justify-content:center}.requester-dashboard-donut-chart-shell{position:relative;width:190px;height:190px}.requester-dashboard-donut-chart-shell .recharts-surface{overflow:visible}.requester-dashboard-donut-center{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;pointer-events:none}.requester-dashboard-donut-center strong{font-size:30px;line-height:1;color:var(--requester-text)}.requester-dashboard-donut-center span{margin-top:4px;color:var(--requester-muted);font-size:12px}.requester-dashboard-donut-legend{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.requester-dashboard-donut-legend-item{display:grid;width:fit-content;grid-template-columns:12px auto auto;align-items:center;gap:10px}.requester-dashboard-donut-legend-dot{width:12px;height:12px;border-radius:999px}.requester-dashboard-donut-legend-item strong{color:var(--requester-text)}.requester-dashboard-room-chart-panel{min-height:100%}.requester-dashboard-subsection-head-compact{padding:0 0 10px}.requester-dashboard-room-chart-shell{padding:0}.requester-dashboard-room-chart-shell .recharts-cartesian-axis-tick-value{fill:#334155;font-size:12px;font-weight:600}.requester-dashboard-room-chart-shell .recharts-cartesian-axis-line,.requester-dashboard-room-chart-shell .recharts-cartesian-axis-tick-line{stroke:transparent}.requester-dashboard-room-chart-shell .recharts-tooltip-wrapper{outline:none}.requester-dashboard-room-chart-empty{padding:12px 0 0}.requester-dashboard-table-panel .ant-table-wrapper{padding:8px 10px 10px}.requester-dashboard-table-panel .ant-table{background:transparent}@media(max-width:1200px){.requester-dashboard-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.requester-dashboard-insights,.requester-dashboard-stats-chart-grid{grid-template-columns:1fr}}@media(max-width:900px){.requester-dashboard-stats-module-head{flex-direction:column}.requester-dashboard-donut-layout,.requester-dashboard-hero{grid-template-columns:1fr}.requester-dashboard-hero-panel{min-height:170px}}@media(max-width:640px){.requester-dashboard-hero{padding:20px;border-radius:22px}.requester-dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.requester-dashboard-kpi-card .ant-card-body{min-height:132px;padding:14px}.requester-dashboard-kpi-topline{align-items:flex-start;font-size:12px}.requester-dashboard-kpi-card strong{font-size:30px}.requester-dashboard-kpi-card .ant-typography-secondary{display:none}.requester-dashboard-insight-card .ant-card-head{padding-inline:16px}.requester-dashboard-insight-card .ant-card-body{padding:16px}.requester-dashboard-insight-card .ant-card-extra{margin-inline-start:8px}.requester-dashboard-stats-module{padding:18px 16px;border-radius:20px}.requester-dashboard-stats-headline strong{font-size:34px}.requester-dashboard-donut-chart-shell{width:168px;height:168px}.requester-dashboard-recent-item{align-items:flex-start;gap:8px;padding:12px}.requester-dashboard-recent-item .ant-tag{max-width:82px;margin-inline-end:0;white-space:nowrap}}.admin-dashboard-page{--admin-bg: #ffffff;--admin-card: #ffffff;--admin-card-strong: #ffffff;--admin-border: #e4edf8;--admin-border-strong: #b7cbe8;--admin-surface: #f7faff;--admin-text: #111827;--admin-muted: #4b5563;--admin-soft: #6b7280;--admin-accent: #144aa6;--admin-accent-strong: #0f3a82;--admin-accent-soft: rgba(20, 74, 166, .1);--admin-success: #16a34a;--admin-success-soft: rgba(22, 163, 74, .11);--admin-warning: #d97706}.admin-dashboard-card{background:var(--admin-card);border:1px solid rgba(228,237,248,.42);border-radius:18px;box-shadow:0 4px 16px rgba(15,61,145,.055)}.admin-dashboard-toolbar-card{overflow:visible;border-color:transparent;background:transparent!important;box-shadow:none}.admin-dashboard-toolbar-card .ant-card-body{padding:4px 0 2px;background:transparent}.admin-dashboard-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.admin-dashboard-hero-compact{display:block}.admin-dashboard-hero-main{display:flex;flex-direction:column;gap:14px;flex:1 1 auto}.admin-dashboard-header-copy{gap:4px}.admin-dashboard-header-copy .ant-typography{margin-bottom:0!important}.admin-dashboard-header-copy .ant-typography h2,.admin-dashboard-header-copy .ant-typography.ant-typography-h2,.admin-dashboard-header-copy h2.ant-typography{color:var(--admin-text);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:26px;font-weight:750;letter-spacing:-.02em}.admin-dashboard-header-copy .ant-typography-secondary,.admin-dashboard-header-copy .ant-typography.ant-typography-secondary{color:var(--admin-muted)!important;font-size:13px;line-height:1.45}.admin-dashboard-hero-actions{min-width:240px;display:flex;flex-direction:column;gap:14px;align-items:stretch}.admin-dashboard-hero-meta{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border-radius:18px;border:1px solid var(--admin-border);background:#fff;color:var(--admin-muted)}.admin-dashboard-hero-meta strong{color:var(--admin-text);font-size:16px}.admin-dashboard-hero-meta-label{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--admin-soft)}.admin-dashboard-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;flex-wrap:wrap}.admin-dashboard-toolbar-group{display:flex;flex-wrap:wrap;gap:10px}.admin-dashboard-toolbar-group-hero{gap:12px}.admin-dashboard-filter-chip{border:1px solid var(--admin-border-strong);border-radius:999px;background:rgba(255,255,255,.9);color:var(--admin-muted);padding:10px 15px;font-size:13px;line-height:1;box-shadow:0 0 0 1px rgba(255,255,255,.6) inset}.admin-dashboard-filter-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding-top:6px}.admin-dashboard-filter-control{min-width:210px}.admin-dashboard-filter-control .ant-select-selector,.admin-dashboard-date-filter{border-color:var(--admin-border)!important;background:#fff!important;box-shadow:0 1px 4px rgba(20,74,166,.024)}.admin-dashboard-date-filter{min-width:250px}.admin-dashboard-filter-actions{margin-left:auto}.admin-dashboard-primary-button.ant-btn,.admin-dashboard-secondary-button.ant-btn{min-width:108px;border-radius:999px;height:40px}.admin-dashboard-primary-button.ant-btn{background:var(--admin-accent);border-color:var(--admin-accent);color:#fff;font-weight:700}.admin-dashboard-primary-button.ant-btn:hover,.admin-dashboard-primary-button.ant-btn:focus-visible{background:#0f3a82!important;border-color:#0f3a82!important;color:#fff!important}.admin-dashboard-secondary-button.ant-btn{border-color:#7aa1d2;background:#fff;color:var(--admin-accent);font-weight:650}.admin-dashboard-secondary-button.ant-btn:hover,.admin-dashboard-secondary-button.ant-btn:focus-visible{border-color:var(--admin-accent)!important;background:#fff!important;color:var(--admin-accent)!important}.admin-dashboard-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;width:100%}.admin-dashboard-kpi-card{position:relative;height:100%;overflow:hidden;border-radius:18px;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease,background .16s ease}.admin-dashboard-kpi-card:after{content:"";position:absolute;right:-18px;bottom:-20px;width:82px;height:82px;border-radius:999px;background:currentColor;opacity:.045;pointer-events:none}button.admin-dashboard-kpi-card{border:1px solid rgba(228,237,248,.32);border-radius:18px;color:inherit;cursor:pointer;font:inherit;padding:15px 16px 14px;text-align:left}.admin-dashboard-kpi-card:hover{border-color:rgba(183,203,232,.38);box-shadow:0 10px 26px rgba(15,61,145,.086);transform:translateY(-2px)}.admin-dashboard-kpi-card.is-clickable:focus-visible{outline:2px solid rgba(20,74,166,.42);outline-offset:3px}.admin-dashboard-kpi-card .ant-card-body{position:relative;z-index:1;padding:15px 16px 14px;height:100%;display:flex;flex-direction:column}button.admin-dashboard-kpi-card{display:flex;flex-direction:column}.admin-dashboard-kpi-card .ant-statistic{min-height:unset;flex:1 1 auto}.admin-dashboard-kpi-card .ant-statistic-content{color:var(--admin-text);font-size:clamp(26px,2.05vw,32px);font-weight:780;letter-spacing:-.035em;line-height:1}.admin-dashboard-kpi-card.is-primary{color:#15803d;background:linear-gradient(135deg,#fff,#f1fbf5);border-color:rgba(22,163,74,.08);box-shadow:0 6px 18px rgba(22,163,74,.08)}.admin-dashboard-kpi-card.is-secondary{color:#6d28d9;background:linear-gradient(135deg,#fff,#f6f4ff);border-color:rgba(109,40,217,.08);box-shadow:0 6px 18px rgba(109,40,217,.075)}.admin-dashboard-kpi-card.is-warning{color:#b45309;background:linear-gradient(135deg,#fff,#fff8e7);border-color:rgba(217,119,6,.08);box-shadow:0 6px 18px rgba(217,119,6,.08)}.admin-dashboard-kpi-card.is-danger{color:#b91c1c;background:linear-gradient(135deg,#fff,#fff3f3);border-color:rgba(220,38,38,.08);box-shadow:0 6px 18px rgba(220,38,38,.08)}.admin-dashboard-kpi-header{position:relative;z-index:1;display:flex;align-items:center;gap:10px;margin-bottom:12px}.admin-dashboard-kpi-icon{display:inline-flex;width:34px;height:34px;align-items:center;justify-content:center;border-radius:12px;color:var(--admin-accent);background:rgba(20,74,166,.1);box-shadow:inset 0 0 0 1px rgba(255,255,255,.65);flex:0 0 auto}.admin-dashboard-kpi-icon svg{width:18px;height:18px;stroke-width:2.15}.admin-dashboard-kpi-label{color:var(--admin-muted);font-size:12px;font-weight:720;letter-spacing:0}.admin-dashboard-kpi-card.is-primary .admin-dashboard-kpi-label,.admin-dashboard-kpi-card.is-primary .admin-dashboard-kpi-icon{color:#15803d}.admin-dashboard-kpi-card.is-primary .admin-dashboard-kpi-icon{background:rgba(22,163,74,.12)}.admin-dashboard-kpi-card.is-warning .admin-dashboard-kpi-label,.admin-dashboard-kpi-card.is-warning .admin-dashboard-kpi-icon{color:#b45309}.admin-dashboard-kpi-card.is-warning .admin-dashboard-kpi-icon{background:rgba(217,119,6,.12)}.admin-dashboard-kpi-card.is-danger .admin-dashboard-kpi-label,.admin-dashboard-kpi-card.is-danger .admin-dashboard-kpi-icon{color:#b91c1c}.admin-dashboard-kpi-card.is-danger .admin-dashboard-kpi-icon{background:rgba(220,38,38,.12)}.admin-dashboard-kpi-card.is-secondary .admin-dashboard-kpi-icon{color:#6d28d9;background:rgba(109,40,217,.12)}.admin-dashboard-kpi-card.is-primary .ant-statistic-content{color:#166534}.admin-dashboard-kpi-card.is-warning .ant-statistic-content{color:#92400e}.admin-dashboard-kpi-card.is-danger .ant-statistic-content{color:#991b1b}.admin-dashboard-kpi-hint{position:relative;z-index:1;display:block;margin-top:8px;color:var(--admin-soft)!important;font-size:11.5px;line-height:1.35;min-height:32px}.admin-dashboard-panel-card .ant-card-head{min-height:52px;border-bottom:0}.admin-dashboard-panel-card .ant-card-head-title{color:var(--admin-text);font-size:16px;font-weight:700}.admin-dashboard-panel-card .ant-card-body{padding-top:16px}.admin-dashboard-panel-subtitle{margin-bottom:14px!important;color:var(--admin-soft)!important}.admin-dashboard-inline-link.ant-btn{color:var(--admin-accent);padding-inline:0}.admin-dashboard-inline-alert{border-radius:14px;margin-bottom:16px}.admin-dashboard-schedule-shell{padding-bottom:18px}.admin-dashboard-schedule-grid,.admin-dashboard-schedule-group{display:flex;flex-direction:column;gap:14px}.admin-dashboard-schedule-row{display:grid;grid-template-columns:118px minmax(0,1fr);gap:14px;align-items:start}.admin-dashboard-schedule-time{padding-top:22px;font-size:15px;font-weight:700;line-height:1.2;color:var(--admin-text)}.admin-dashboard-schedule-track{position:relative}.admin-dashboard-schedule-event{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;min-height:100px;padding:18px 18px 16px;border-radius:12px;border:1px solid rgba(232,230,220,.95);box-shadow:0 0 0 1px rgba(240,238,230,.55)}.admin-dashboard-schedule-event.is-normal{background:rgba(225,241,227,.92);border-left:3px solid #6cbf7b}.admin-dashboard-schedule-event.is-warning{background:rgba(255,244,224,.95);border-left:3px solid #d5a441}.admin-dashboard-schedule-event.is-critical{background:rgba(255,239,234,.96);border-left:3px solid var(--admin-accent)}.admin-dashboard-schedule-event-content{display:flex;flex-direction:column;gap:8px}.admin-dashboard-schedule-event-status{display:flex;align-items:flex-start}.admin-dashboard-schedule-now-row{display:grid;grid-template-columns:118px minmax(0,1fr);gap:14px;align-items:center;min-height:34px}.admin-dashboard-schedule-now-time{font-size:14px;font-weight:700;line-height:1.2;color:var(--admin-accent)}.admin-dashboard-schedule-now-track{display:flex;align-items:center}.admin-dashboard-schedule-now-label{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border-radius:999px;background:rgba(255,248,243,.98);border:1px solid rgba(20,74,166,.18);color:var(--admin-accent);font-size:12px;font-weight:600;white-space:nowrap}.admin-dashboard-lollipop-chart{padding:18px 16px 16px;border:1px solid rgba(228,237,248,.9);border-radius:18px;background:linear-gradient(90deg,rgba(15,61,145,.055) 1px,transparent 1px) 168px 0 / calc((100% - 246px)/4) 100% no-repeat,linear-gradient(180deg,#fff,#f7faff);box-shadow:0 2px 10px rgba(15,61,145,.035)}.admin-dashboard-lollipop-scale{display:grid;grid-template-columns:repeat(5,1fr);margin-left:128px;margin-right:78px;color:var(--admin-soft);font-size:12px}.admin-dashboard-lollipop-scale span{transform:translate(-50%)}.admin-dashboard-lollipop-scale span:first-child{transform:none}.admin-dashboard-lollipop-scale span:last-child{justify-self:end;transform:none}.admin-dashboard-lollipop-plot{display:flex;flex-direction:column;gap:18px;margin-top:16px}.admin-dashboard-lollipop-row{display:grid;grid-template-columns:112px minmax(0,1fr) 64px;gap:16px;align-items:center}.admin-dashboard-lollipop-label{display:flex;flex-direction:column;gap:5px}.admin-dashboard-lollipop-axis{position:relative;height:42px}.admin-dashboard-lollipop-gridline{position:absolute;top:50%;right:0;left:0;height:2px;border-radius:999px;background:#dbeafe;transform:translateY(-50%)}.admin-dashboard-lollipop-bar{position:absolute;top:50%;left:0;height:8px;min-width:7px;border-radius:999px;background:var(--admin-accent);transform:translateY(-50%);box-shadow:0 6px 14px rgba(15,61,145,.16)}.admin-dashboard-lollipop-dot{position:absolute;top:50%;width:26px;height:26px;border:4px solid #ffffff;border-radius:999px;background:var(--admin-accent);box-shadow:0 8px 18px rgba(15,61,145,.2);transform:translate(-50%,-50%)}.admin-dashboard-lollipop-dot span{position:absolute;top:-28px;left:50%;padding:2px 7px;border-radius:999px;background:#fff;color:var(--admin-text);font-size:12px;font-weight:750;white-space:nowrap;box-shadow:0 2px 8px rgba(15,61,145,.09);transform:translate(-50%)}.admin-dashboard-lollipop-row.is-medium .admin-dashboard-lollipop-bar,.admin-dashboard-lollipop-row.is-medium .admin-dashboard-lollipop-dot{background:var(--admin-accent);box-shadow:0 8px 18px rgba(15,61,145,.2)}.admin-dashboard-lollipop-row.is-high .admin-dashboard-lollipop-bar,.admin-dashboard-lollipop-row.is-high .admin-dashboard-lollipop-dot{background:#d97706;box-shadow:0 8px 18px rgba(217,119,6,.2)}.admin-dashboard-lollipop-summary{display:flex;flex-direction:column;align-items:flex-end;gap:3px;color:var(--admin-soft);font-size:12px}.admin-dashboard-lollipop-summary strong{color:var(--admin-text);font-size:16px;line-height:1}.admin-dashboard-room-type-chart-layout{display:flex;flex-direction:column;gap:14px}.admin-dashboard-room-type-donut{position:relative;display:grid;place-items:center;border-radius:999px;background:conic-gradient(var(--room-type-color) 0deg var(--room-type-rate),#dbeafe var(--room-type-rate) 360deg)}.admin-dashboard-room-type-donut:before{position:absolute;content:"";border-radius:inherit;background:#fff}.admin-dashboard-room-type-donut span{position:relative;z-index:1}.admin-dashboard-room-type-donut-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-dashboard-room-type-donut-card{min-width:0;padding:14px 10px 12px;border:1px solid rgba(228,237,248,.95);border-radius:18px;background:#fff;text-align:center;box-shadow:0 2px 10px rgba(15,61,145,.035)}.admin-dashboard-room-type-donut{width:108px;height:108px;margin:0 auto 12px;box-shadow:0 8px 20px rgba(15,61,145,.08)}.admin-dashboard-room-type-donut:before{top:17px;right:17px;bottom:17px;left:17px}.admin-dashboard-room-type-donut span{color:var(--admin-text);font-size:24px;font-weight:850;line-height:1}.admin-dashboard-room-type-donut-info{display:flex;min-width:0;flex-direction:column;align-items:center;gap:4px}.admin-dashboard-room-type-donut-info .ant-typography{max-width:100%;overflow:hidden;color:var(--admin-text);font-size:13px;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.admin-dashboard-room-type-donut-info small{padding:2px 8px;border-radius:999px;background:rgba(22,163,74,.1);color:#15803d;font-size:11px;font-weight:750}.admin-dashboard-room-type-donut-card.is-medium .admin-dashboard-room-type-donut-info small{background:rgba(15,61,145,.1);color:var(--admin-accent)}.admin-dashboard-room-type-donut-card.is-high .admin-dashboard-room-type-donut-info small{background:rgba(217,119,6,.12);color:#b45309}.admin-dashboard-room-type-donut-info span{color:var(--admin-soft);font-size:11px;font-weight:650}.admin-dashboard-approval-row{display:flex;justify-content:space-between;gap:16px;width:100%;align-items:flex-start}.admin-dashboard-approval-main{flex:1 1 auto}.admin-dashboard-approval-title{font-size:16px}.admin-dashboard-approval-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 14px;color:var(--admin-muted);font-size:13px}.admin-dashboard-status-layout{display:grid;grid-template-columns:180px minmax(0,1fr);gap:16px;align-items:center}.admin-dashboard-status-chart-wrap{display:flex;justify-content:center}.admin-dashboard-status-ring{position:relative;width:138px;height:138px;display:grid;place-items:center;border-radius:999px;background:conic-gradient(from 210deg,var(--status-ring-gradient, #dbe7f5 0deg 300deg),transparent 300deg 360deg);filter:saturate(.92)}.admin-dashboard-status-ring:before{content:"";position:absolute;top:16px;right:16px;bottom:16px;left:16px;border-radius:inherit;background:#fff;box-shadow:none}.admin-dashboard-status-ring:after{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:inherit;box-shadow:0 4px 12px rgba(20,20,19,.024);pointer-events:none}.admin-dashboard-status-ring-inner{position:relative;z-index:1;width:104px;height:104px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;column-gap:6px;border-radius:999px;background:#fff;color:var(--admin-text)}.admin-dashboard-status-ring-inner span{font-size:32px;font-weight:500;line-height:1}.admin-dashboard-status-ring-inner small{font-size:18px;color:var(--admin-muted)}.admin-dashboard-status-legend{display:flex;flex-direction:column;gap:12px}.admin-dashboard-status-row{display:grid;grid-template-columns:14px minmax(0,1fr) auto;gap:10px;align-items:center;color:var(--admin-text);padding:8px 10px;border-radius:12px;background:rgba(255,255,255,.7)}.admin-dashboard-status-label{color:var(--admin-muted)}.admin-dashboard-status-dot{width:10px;height:10px;border-radius:999px}.admin-dashboard-actions-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-dashboard-action-button{display:flex;align-items:center;gap:12px;border:1px solid rgba(228,237,248,.35);background:#fff;border-radius:16px;padding:13px 14px;color:var(--admin-text);cursor:pointer;box-shadow:0 3px 12px rgba(15,61,145,.04);transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease,background .2s ease;text-align:left}.admin-dashboard-action-button:hover{border-color:rgba(183,203,232,.45);box-shadow:0 7px 18px rgba(15,61,145,.07);transform:translateY(-1px);background:var(--admin-surface)}.admin-dashboard-action-icon{color:var(--admin-accent);display:inline-flex;width:34px;height:34px;border-radius:12px;align-items:center;justify-content:center;background:var(--admin-accent-soft);flex-shrink:0}.admin-dashboard-action-content{display:flex;flex-direction:column;gap:3px}.admin-dashboard-action-content small{color:var(--admin-soft)}.admin-dashboard-approval-item{padding-inline:0!important;padding-block:10px!important;border-radius:16px;padding-left:12px!important;padding-right:12px!important;margin-bottom:8px;background:rgba(255,255,255,.72)}.admin-dashboard-approval-item.is-conflict{background:rgba(20,74,166,.08);border:1px solid rgba(20,74,166,.14)}.admin-dashboard-table-card .ant-table-wrapper{margin-top:6px}.admin-dashboard-table-card .ant-table{background:transparent}.admin-dashboard-table-card .ant-table-thead>tr>th{background:var(--admin-surface);color:var(--admin-muted);font-size:13px;font-weight:650}.admin-dashboard-table-card .ant-table-tbody>tr>td{background:transparent}.approval-workspace{--approval-card: #ffffff;--approval-border: #dbe7f5;--approval-text: #111827;--approval-muted: #4b5563;--approval-accent: #144aa6}.incident-workspace-header{flex-direction:row;align-items:flex-start;justify-content:space-between}.incident-create-button.ant-btn-primary{width:auto;min-width:116px;height:40px;padding:0 18px;border-radius:12px;border-color:#0f3d91;background:#0f3d91;font-weight:650;box-shadow:0 2px 10px rgba(15,61,145,.08)}.incident-create-button.ant-btn-primary:hover,.incident-create-button.ant-btn-primary:focus{border-color:#0b2f73;background:#0b2f73}.incident-create-room-modal .ant-modal-content{overflow:hidden;border:1px solid #dbe7f5;border-radius:18px;background:#fff;box-shadow:0 4px 12px rgba(20,20,19,.035)}.incident-create-room-modal .ant-modal-header,.incident-create-room-modal .ant-modal-body{background:transparent}.incident-create-room-modal .ant-modal-header{padding:18px 22px 8px;border-bottom:0}.incident-create-room-modal .ant-modal-body{padding:0 22px 22px}.incident-create-room-modal .ant-modal-title{color:#111827;font-size:16px;font-weight:700}.incident-create-room-modal .ant-modal-close{top:14px;inset-inline-end:14px}.incident-create-room-fields{width:100%;display:grid;gap:10px}.incident-create-room-fields .ant-select{width:100%;height:40px;min-height:40px}.incident-create-room-fields .ant-select-selector{height:40px!important;min-height:40px!important;padding:0 11px!important;display:flex;align-items:center;border-radius:12px!important;border-color:#cbdcf0!important;background:#fff!important;box-shadow:none!important}.incident-create-room-fields .ant-select-single .ant-select-selection-wrap,.incident-create-room-fields .ant-select-single .ant-select-selection-item,.incident-create-room-fields .ant-select-single .ant-select-selection-placeholder{height:100%;display:flex;align-items:center;line-height:1.2!important}.incident-create-room-fields .ant-select-focused .ant-select-selector,.incident-create-room-fields .ant-select-selector:focus,.incident-create-room-fields .ant-select-selector:active{border-color:#144aa6!important;box-shadow:0 0 0 2px rgba(20,74,166,.12)!important;background:#fff!important}.incident-create-room-fields .ant-select-selection-placeholder{color:#8d8a80}.incident-create-room-fields .ant-select-arrow{top:50%;transform:translateY(-50%);inset-inline-end:12px;color:#94a3b8}.incident-report-modal .ant-modal-content{overflow:hidden;border:1px solid #dbe7f5;border-radius:18px;background:#fff;box-shadow:0 4px 12px rgba(20,20,19,.035)}.incident-report-modal .ant-modal-header,.incident-report-modal .ant-modal-body,.incident-report-modal .ant-modal-footer{background:transparent}.incident-report-modal .ant-modal-header{padding:14px 18px 6px;border-bottom:0}.incident-report-modal .ant-modal-body{padding:0 18px 8px}.incident-report-modal .ant-modal-footer{padding:10px 18px 14px;border-top:0}.incident-report-modal .ant-modal-title{color:#111827;font-size:16px;font-weight:700}.incident-report-modal .ant-modal-close{top:10px;inset-inline-end:10px}.incident-report-modal .ant-form-item{margin-bottom:10px}.incident-report-modal .ant-form-item-label>label{color:#4b5563;font-weight:650}.incident-report-modal .ant-input:not(textarea),.incident-report-modal .ant-select{height:40px;min-height:40px}.incident-report-modal .ant-input,.incident-report-modal .ant-select-selector{border-color:#cbdcf0!important;border-radius:12px!important;box-shadow:none!important;background:#fff!important}.incident-report-modal .ant-select-single:not(.ant-select-customize-input) .ant-select-selector{height:40px!important;min-height:40px!important;padding:0 11px!important;display:flex;align-items:center}.incident-report-modal .ant-select-single .ant-select-selection-wrap,.incident-report-modal .ant-select-single .ant-select-selection-item,.incident-report-modal .ant-select-single .ant-select-selection-placeholder{height:100%;display:flex;align-items:center;line-height:1.2!important}.incident-report-modal .ant-input::placeholder,.incident-report-modal .ant-select-selection-placeholder{color:#8d8a80}.incident-report-modal .ant-input:focus,.incident-report-modal .ant-input-focused,.incident-report-modal .ant-select-focused .ant-select-selector{border-color:#144aa6!important;box-shadow:0 0 0 2px rgba(20,74,166,.12)!important;background:#fff!important}.incident-report-modal .ant-input-textarea .ant-input{min-height:96px;resize:vertical;padding-top:10px}.incident-report-modal .ant-upload.ant-upload-select{width:auto}.incident-report-modal .ant-upload-list{margin-top:10px}.incident-report-modal .ant-upload-list-item{border-color:#dbe7f5;border-radius:12px}.incident-filter-panel{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.incident-filter-row{display:flex;align-items:center;gap:10px}.incident-filter-row-main{display:grid;grid-template-columns:minmax(280px,1fr) minmax(170px,220px) minmax(170px,240px) auto}.incident-filter-row-chips{flex-wrap:wrap}.incident-filter-panel .ant-input-affix-wrapper,.incident-filter-panel .ant-select-selector,.incident-filter-panel .ant-btn{border-radius:14px}.incident-filter-panel .ant-input-affix-wrapper,.incident-filter-panel .ant-select-selector,.incident-filter-panel .ant-btn{height:40px}.incident-filter-group{display:inline-flex;align-items:center;gap:8px;min-height:40px;max-width:100%;padding:4px;border:1px solid #dbe7f5;border-radius:16px;background:#fff;box-shadow:0 1px rgba(20,20,19,.03)}.incident-filter-label{flex:0 0 auto;padding-left:8px;color:#4b5563;font-size:12px;font-weight:600;white-space:nowrap}.incident-filter-group .ant-segmented{max-width:100%;border-radius:12px;background:transparent;color:#4b5563}.incident-filter-group .ant-segmented-group{flex-wrap:wrap;row-gap:4px}.incident-filter-group .ant-segmented-item{border-radius:10px}.incident-filter-group .ant-segmented-item-label{min-height:28px;padding-inline:10px;line-height:28px;white-space:nowrap}.incident-filter-group .ant-segmented-item-selected{color:#111827;background:#dbe7f5;box-shadow:0 0 0 1px #9bb8df}.incident-filter-status .ant-segmented-item-selected{color:#144aa6;background:#fff;box-shadow:0 0 0 1px #2563eb}.incident-filter-lock .ant-segmented-item-selected{color:#3d3d3a;background:#ebe8d8;box-shadow:0 0 0 1px #c2c0b6}@media(max-width:900px){.incident-workspace-header{flex-direction:column}.incident-create-button.ant-btn-primary{width:100%}.incident-filter-row-main{grid-template-columns:1fr 1fr}.incident-filter-row-main .ant-input-affix-wrapper,.incident-filter-row-main .ant-btn{grid-column:1 / -1}}@media(max-width:640px){.incident-filter-row-main{grid-template-columns:1fr}.incident-filter-row-main .ant-input-affix-wrapper,.incident-filter-row-main .ant-btn{grid-column:auto}.incident-filter-group{align-items:flex-start;flex-direction:column;gap:6px;width:100%}}.incident-detail-modal .ant-modal-content{border:1px solid #dbe7f5;border-radius:24px;background:#fff;box-shadow:0 4px 12px rgba(20,20,19,.035)}.incident-detail-modal .ant-modal-header,.incident-detail-modal .ant-modal-body,.incident-detail-modal .ant-modal-footer{background:transparent}.incident-detail-modal .ant-modal-footer .ant-btn-primary{border-color:#144aa6;background:#144aa6;box-shadow:0 0 0 1px #144aa6}.incident-detail-footer-actions{display:flex;justify-content:flex-end;gap:10px}.incident-footer-resolve-button.ant-btn-primary{border-color:#6f9b6e;background:#6f9b6e;box-shadow:0 0 0 1px #6f9b6e}.incident-detail-title{display:flex;align-items:center;gap:10px}.incident-detail-body{display:flex;flex-direction:column;gap:14px}.incident-detail-hero,.incident-detail-section{border:1px solid #dbe7f5;border-radius:18px;background:rgba(255,255,255,.72)}.incident-detail-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px}.incident-detail-hero .ant-typography{margin-bottom:0}.incident-detail-hero h4.ant-typography{margin-bottom:8px;color:#111827}.incident-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.incident-detail-section{padding:16px}.incident-detail-section-title{display:block;margin-bottom:12px;color:#3d3d3a;font-weight:700}.incident-detail-fields{display:grid;gap:12px}.incident-detail-fields div,.incident-status-field{display:grid;gap:5px}.incident-detail-fields span,.incident-status-field>span{color:#6b7280;font-size:13px}.incident-detail-fields strong{color:#111827;font-weight:600}.incident-resolution-note{display:grid;gap:8px}.incident-resolution-note>span{color:#3d3d3a;font-weight:700}.incident-attachment-grid{display:flex;flex-wrap:wrap;gap:10px}.incident-attachment-image{border-radius:14px;object-fit:cover}@media(max-width:720px){.incident-detail-grid{grid-template-columns:1fr}.incident-detail-hero{flex-direction:column}}.approval-stat-card{border-radius:20px;background:#fff}.approval-stat-card .ant-statistic-title{color:var(--approval-muted);font-size:13px}.approval-stat-card .ant-statistic-content{color:var(--approval-text);font-size:30px;line-height:1.1}.approval-table-card{border-radius:22px;overflow:hidden}.approval-filter-row{margin-bottom:16px}.approval-inbox-table .ant-table{background:transparent}.approval-inbox-table .ant-table-container{border-radius:14px}.approval-inbox-table .ant-table-tbody>tr>td{background:#fff}.approval-table-title-cell{max-width:360px}.approval-detail-modal .ant-modal-content{border:1px solid #dbe7f5;border-radius:22px;background:#fff;box-shadow:0 4px 12px rgba(20,20,19,.035)}.approval-detail-section{padding:16px;border:1px solid #dbe7f5;border-radius:18px;background:rgba(255,255,255,.68)}.approval-detail-section .ant-typography{margin-bottom:0}.approval-detail-section-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.approval-session-group-list{display:flex;flex-direction:column;gap:12px}.approval-session-group{border:1px solid #e4edf8;border-radius:14px;background:#fff;padding:14px 16px}.approval-session-group-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}.approval-session-group-room-code{display:block;color:#0f3d91}.approval-session-group-room-name{display:block;font-size:12px}.approval-session-group-count.ant-tag{margin:0;border-color:#b7cbe8;border-radius:999px;background:#f7faff;color:#0f3d91;font-weight:650}.approval-session-list{display:flex;flex-direction:column;gap:8px}.approval-session-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 2px;background:transparent}.approval-session-row+.approval-session-row{border-top:1px solid #eef3f9;margin-top:2px;padding-top:10px}.approval-session-row-date{min-width:92px}.approval-session-row-shift.ant-tag{margin:0}.approval-session-picker{display:grid;gap:10px;margin-top:14px}.approval-session-picker-row{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #e4edf8;border-radius:12px;background:#f7faff;cursor:pointer}.approval-session-picker-meta{display:flex;flex-direction:column;gap:2px}.approval-session-selection-dot{width:12px;height:12px;border-radius:999px;flex:0 0 auto}.approval-session-selection-dot.is-approved{background:#16a34a}.approval-session-selection-dot.is-rejected{background:#dc2626}.approval-session-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px}.approval-session-chip{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:12px 14px;border:1px solid #e7e2d6;border-radius:14px;background:#fbfaf7}.approval-session-chip .ant-tag{margin-inline-end:0}.approval-session-chip-room{display:block;margin-top:2px;color:#0f3d91!important;font-size:12px;font-weight:650}.shift-session-tag.ant-tag{display:inline-flex;align-items:center;margin-inline-end:0}.shift-session-tag-inner{display:inline-flex;align-items:center;gap:6px}.shift-session-tag-inner svg{flex-shrink:0}.approval-session-chip.is-shift-morning{border-color:#cbdcf0;background:#fffdf6}.approval-session-chip.is-shift-afternoon{border-color:#c5d8ef;background:#f7fbff}.approval-session-chip.is-shift-evening{border-color:#cfc0e5;background:#faf7ff}.approval-attachment-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;border:1px solid #e7e2d6;border-radius:14px;background:#fbfaf7}.approval-attachment-card>div{display:flex;min-width:0;flex-direction:column;gap:4px}.approval-attachment-card .ant-btn{flex:0 0 auto}.approval-detail-label{display:inline-flex;margin-bottom:8px;color:#6b7280;font-size:12px;letter-spacing:.04em;text-transform:uppercase}.approval-detail-field{display:flex;flex-direction:column;gap:6px;min-height:82px;padding:14px 16px;border:1px solid #dbe7f5;border-radius:16px;background:rgba(255,255,255,.76)}.catalog-toolbar{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.catalog-toolbar-search{display:flex;flex-direction:column;gap:8px;min-width:280px;flex:1 1 420px}.catalog-toolbar-actions{display:flex;gap:8px}.catalog-toolbar-filters{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.catalog-toolbar-filter{display:flex;flex-direction:column;gap:8px;min-width:220px}.catalog-toolbar-filter-compact{min-width:150px}.catalog-row-draggable{cursor:grab}.catalog-row-actions-compact .ant-btn{min-width:42px;padding-inline:8px}.catalog-drag-handle{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:8px;color:#8d8a80;font-size:16px;letter-spacing:-2px;line-height:1;background:#f1efe7;border:1px solid #e5e2d8}.catalog-row-draggable:hover .catalog-drag-handle{color:#144aa6;border-color:#7aa1d2;background:#fff}.catalog-row-dragging td{background:#f0ece3!important;opacity:.75}.catalog-row-drag-over td{border-top:2px solid #144aa6}.catalog-toolbar-label,.workspace-control-label,.workspace-card .ant-form-item .ant-form-item-label>label{color:#1f2937!important;font-size:13px;font-weight:500}.workspace-card .ant-input:not(textarea),.workspace-card .ant-input-affix-wrapper,.workspace-card .ant-input-number,.workspace-card .ant-select-selector,.workspace-card .ant-picker,.catalog-form-modal .ant-input:not(textarea),.catalog-form-modal .ant-input-affix-wrapper,.catalog-form-modal .ant-input-number,.catalog-form-modal .ant-select-selector,.catalog-form-modal .ant-picker{height:40px;min-height:40px;box-sizing:border-box;border-radius:12px!important;border-color:#cbdcf0!important;background:#fff!important;box-shadow:none!important}.workspace-card .ant-input-affix-wrapper .ant-input,.catalog-form-modal .ant-input-affix-wrapper .ant-input{height:100%;min-height:0}.workspace-card .ant-select,.catalog-form-modal .ant-select{height:40px;min-height:40px}.workspace-card .ant-select-single:not(.ant-select-customize-input) .ant-select-selector,.catalog-form-modal .ant-select-single:not(.ant-select-customize-input) .ant-select-selector{height:40px!important;min-height:40px!important;padding:0 11px!important;display:flex;align-items:center}.workspace-card .ant-select-single .ant-select-selection-wrap,.catalog-form-modal .ant-select-single .ant-select-selection-wrap{height:100%;display:flex;align-items:center}.workspace-card .ant-select-single .ant-select-selection-search,.workspace-card .ant-select-single .ant-select-selection-search-input,.catalog-form-modal .ant-select-single .ant-select-selection-search,.catalog-form-modal .ant-select-single .ant-select-selection-search-input{height:100%!important}.workspace-card .ant-select-single .ant-select-selection-item,.workspace-card .ant-select-single .ant-select-selection-placeholder,.catalog-form-modal .ant-select-single .ant-select-selection-item,.catalog-form-modal .ant-select-single .ant-select-selection-placeholder{height:100%;display:flex;align-items:center;line-height:1.2!important;margin:0}.workspace-card .ant-select .ant-select-arrow,.catalog-form-modal .ant-select .ant-select-arrow{top:50%;transform:translateY(-50%);inset-inline-end:12px}.workspace-card .ant-select-single .ant-select-selection-item,.catalog-form-modal .ant-select-single .ant-select-selection-item{padding-inline-end:18px}.workspace-card .ant-input-number,.catalog-form-modal .ant-input-number{width:100%}.workspace-card .ant-input-number-input,.catalog-form-modal .ant-input-number-input{height:38px}.workspace-card .ant-input::placeholder,.workspace-card .ant-input-number-input::placeholder,.workspace-card .ant-select-selection-placeholder,.workspace-card .ant-picker-input>input::placeholder,.catalog-form-modal .ant-input::placeholder,.catalog-form-modal .ant-input-number-input::placeholder,.catalog-form-modal .ant-select-selection-placeholder,.catalog-form-modal .ant-picker-input>input::placeholder{color:#8d8a80}.workspace-search-input{width:100%}.workspace-card .ant-input:focus,.workspace-card .ant-input-focused,.workspace-card .ant-input-number:focus-within,.workspace-card .ant-input-number-focused,.workspace-card .ant-select-focused .ant-select-selector,.workspace-card .ant-picker-focused,.workspace-card .ant-input-affix-wrapper-focused,.catalog-form-modal .ant-input:focus,.catalog-form-modal .ant-input-focused,.catalog-form-modal .ant-input-number:focus-within,.catalog-form-modal .ant-input-number-focused,.catalog-form-modal .ant-select-focused .ant-select-selector,.catalog-form-modal .ant-picker-focused,.catalog-form-modal .ant-input-affix-wrapper-focused{border-color:#144aa6!important;box-shadow:0 0 0 2px rgba(20,74,166,.12)!important;background:#fff!important}.workspace-card .ant-input-textarea .ant-input,.catalog-form-modal .ant-input-textarea .ant-input{min-height:96px;resize:vertical;padding-top:10px}.catalog-form-modal .ant-modal-content{border:1px solid #dbe7f5;border-radius:16px;background:#fff;box-shadow:0 0 0 1px #dbe7f5,rgba(20,20,19,.024) 0 3px 10px}.catalog-form-modal .ant-modal-header,.catalog-form-modal .ant-modal-body,.catalog-form-modal .ant-modal-footer{background:transparent}.catalog-form-modal .ant-modal-header{padding-bottom:8px}.catalog-form-modal .ant-modal-title{color:#111827;font-size:32px;line-height:1.2}.catalog-form-modal .ant-modal-close:hover{background:#dbe7f5}.catalog-form-field{display:flex;flex-direction:column;gap:8px}.catalog-form-label{color:#1f2937;font-size:13px;font-weight:500}.catalog-form-required{color:#b53333;margin-left:4px}.catalog-form-field .ant-switch{width:fit-content}.catalog-logo-empty{color:#6b7280}.catalog-logo-table-preview.ant-image{display:inline-flex;overflow:hidden;border:1px solid #d8e5f5;border-radius:8px;background:#fff;vertical-align:middle}.catalog-logo-table-preview img{object-fit:contain;padding:3px}.catalog-logo-upload-card{position:relative;display:inline-flex;align-items:center;padding:12px;border:1px solid #e4edf8;border-radius:14px;background:#f7faff}.catalog-logo-preview{position:relative;display:flex;align-items:center;justify-content:center;width:84px;height:84px;overflow:hidden;border:1px dashed #b7cbe8;border-radius:14px;background:#fff;color:#6b7280;font-size:12px;text-align:center}.catalog-logo-upload-trigger{padding:0;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.catalog-logo-upload-trigger:hover,.catalog-logo-upload-trigger:focus-visible{border-color:#0f3d91;background:#f7faff;box-shadow:0 0 0 3px rgba(15,61,145,.14);outline:none}.catalog-logo-upload-trigger:disabled{cursor:wait;opacity:.72}.catalog-logo-upload-placeholder,.catalog-logo-upload-overlay{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:10px;color:#0f3d91;font-weight:650;line-height:1.25}.catalog-logo-upload-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:rgba(15,61,145,.72);color:#fff;opacity:0;transition:opacity .18s ease}.catalog-logo-upload-trigger:hover .catalog-logo-upload-overlay,.catalog-logo-upload-trigger:focus-visible .catalog-logo-upload-overlay,.catalog-logo-upload-trigger:disabled .catalog-logo-upload-overlay{opacity:1}.catalog-logo-preview .ant-image,.catalog-logo-preview img{width:100%;height:100%}.catalog-logo-preview img{object-fit:contain;padding:6px}.catalog-logo-remove-action{position:absolute;right:5px;bottom:5px;display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:1px solid #d8e5f5;border-radius:999px;background:#fff;color:#dc2626;cursor:pointer;box-shadow:0 2px 8px rgba(15,61,145,.12);transition:border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}.catalog-logo-remove-action:hover,.catalog-logo-remove-action:focus-visible{border-color:#fecaca;background:#fff1f2;color:#b91c1c;outline:none;box-shadow:0 0 0 3px rgba(220,38,38,.12)}.room-form-layout{gap:14px!important}.room-form-section{border:1px solid #cbdcf0;border-radius:14px;padding:14px;background:#fff;box-shadow:inset 0 0 0 1px rgba(255,255,255,.45)}.room-form-section-header{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}.room-form-section-header .ant-typography:first-child{color:#2f2f2c}.room-form-section-header .ant-typography:last-child{font-size:12px;line-height:1.45}.room-form-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px;row-gap:12px}.room-form-grid>.catalog-form-field,.room-form-span-2{min-width:0}.room-form-span-2{grid-column:1 / -1}.room-capacity-input-wrapper{position:relative;width:100%}.room-capacity-input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#8d8a80;font-size:15px;z-index:1;pointer-events:none}.workspace-card .room-capacity-input-number .ant-input-number-input,.catalog-form-modal .room-capacity-input-number .ant-input-number-input{padding-left:36px}@media(max-width:767px){.room-form-section{padding:12px}.room-form-grid{grid-template-columns:1fr}.room-form-span-2{grid-column:auto}}.console-sider.is-collapsed{padding:16px 10px}.console-sider.is-collapsed .console-brand-top{justify-content:center;padding-right:0}.console-sider.is-collapsed .console-brand-header{justify-content:center}.console-user-compact{border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.14);box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);border-radius:20px;padding:14px 10px;display:flex;flex-direction:column;align-items:center;gap:14px}.console-user-icon-button{width:40px;height:40px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:rgba(255,255,255,.9)}.console-user-icon-button:hover,.console-user-icon-button:focus-visible{color:#fff!important;background:rgba(255,255,255,.14)!important}.console-sider.is-collapsed .console-user-card{display:none}.console-sider.is-collapsed .console-user-compact{display:flex}.room-selection-modal .ant-modal-content{border:1px solid #dbe7f5;border-radius:20px;background:#fff;box-shadow:0 0 0 1px #dbe7f5,rgba(20,20,19,.024) 0 3px 10px}.room-selection-modal .ant-modal-header,.room-selection-modal .ant-modal-body,.room-selection-modal .ant-modal-footer{background:transparent}.room-selection-modal .ant-modal-header{padding-bottom:8px}.room-selection-modal .ant-modal-body{padding-top:8px}.room-selection-modal .ant-modal-footer{margin-top:20px;padding-top:16px;border-top:1px solid #dbe7f5}.room-selection-modal .ant-modal-title{color:#111827;font-size:28px;line-height:1.2}.room-selection-room-list{max-height:420px;overflow:auto}.room-selection-room-card{cursor:pointer;border:1px solid #e6e2d8;border-radius:12px;box-shadow:0 0 0 1px #dbe7f5;background:#fff;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.room-selection-room-card .ant-card-body{padding:12px}.room-selection-room-card:hover{border-color:#7aa1d2;box-shadow:0 0 0 1px #7aa1d2;transform:translateY(-1px)}.room-selection-room-card.is-selected{border-color:#144aa6;box-shadow:0 0 0 1px rgba(20,74,166,.28);background:#fff}.room-selection-timeline-layout{display:grid;grid-template-columns:minmax(0,2.1fr) 340px;gap:16px;align-items:start}.room-selection-timeline-main,.room-selection-sidebar{display:flex;flex-direction:column;gap:16px}.room-selection-context-card .ant-card-body,.room-selection-board-card .ant-card-body,.room-selection-sidebar-card .ant-card-body{padding:16px}.room-selection-context-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.room-selection-context-room{display:flex;flex-direction:column;gap:4px}.room-selection-timeline-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:8px}.room-selection-timeline-board{display:flex;flex-direction:column;gap:14px}.room-selection-timeline-legend{display:flex;flex-wrap:wrap;gap:6px}.room-selection-timeline-legend-tag{margin-inline-end:0!important;border-radius:999px;font-size:12px;border:1px solid #dbe7f5;background:#fff;color:#1f2937}.room-selection-timeline-legend-tag.is-available{border-color:#d8d3c6;background:#f6f3eb}.room-selection-timeline-legend-tag.is-soft-conflict{border-color:#e5c27e;background:#fff3dc;color:#8f6414}.room-selection-timeline-legend-tag.is-hard-conflict{border-color:#d8b1ab;background:#f7e4e1;color:#9f3b34}.room-selection-timeline-legend-tag.is-selected{border-color:#0d5a99;background:#156fb8;color:#fff!important}.room-selection-timeline-grid-wrap{width:100%;overflow-x:hidden;border-radius:16px;border:1px solid #e6e2d8;background:#f8f6f0;padding:8px}.room-selection-timeline-grid{display:grid;grid-template-columns:118px repeat(7,minmax(0,1fr));gap:6px;min-width:0}.room-selection-timeline-cell{border:1px solid #e3dfd4;border-radius:10px;background:#fff;min-height:74px}.room-selection-timeline-header{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;background:#fff;color:#1f2937;min-height:56px;padding:6px 4px}.room-selection-timeline-header.is-past-column{background:#ebe8e0;color:#9a968c}.room-selection-timeline-shift-header{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:10px 9px;font-weight:600;color:#1f2937;gap:6px}.room-selection-timeline-shift-title{display:flex;align-items:center;gap:8px}.room-selection-timeline-shift-icon{display:inline-flex;align-items:center;justify-content:center;color:#6f6b62}.room-selection-timeline-shift-header small{font-size:11px;color:#6b7280}.room-selection-timeline-slot{width:100%;min-height:74px;border-radius:10px;border:1px solid #dbe7f5;background:#fff;color:#1f2937;cursor:pointer;padding:6px;display:flex;justify-content:center;align-items:center;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.room-selection-timeline-slot:hover:not(:disabled){border-color:#9bb8df;background:#fff;box-shadow:0 0 0 1px rgba(20,74,166,.16)}.room-selection-timeline-slot-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;font-size:18px;line-height:1;color:currentColor}.room-selection-timeline-slot.is-selected{border-color:#0d5a99;background:#156fb8;color:#fff}.room-selection-timeline-slot.is-selected .room-selection-timeline-slot-icon{color:#fff}.room-selection-timeline-slot.is-selected:hover:not(:disabled){border-color:#0a4d82;background:#1a7dca;color:#fff;box-shadow:0 0 0 1px rgba(21,111,184,.28)}.room-selection-timeline-slot.is-selected:hover:not(:disabled) .room-selection-timeline-slot-icon{color:#fff}.room-selection-timeline-slot.is-soft-conflict{border-color:#e1ba70;background:#fff2da;color:#efb11d}.room-selection-timeline-slot.is-selected.is-soft-conflict{border-color:#0d5a99;background:#156fb8;color:#fff}.room-selection-timeline-slot.is-selected.is-soft-conflict .room-selection-timeline-slot-icon{color:#fff}.room-selection-timeline-slot.is-selected.is-soft-conflict:hover:not(:disabled){border-color:#0a4d82;background:#1a7dca;color:#fff;box-shadow:0 0 0 1px rgba(21,111,184,.28)}.room-selection-timeline-slot.is-hard-conflict{border-color:#dfb3ab;background:#fae8e5;color:#d36b62;cursor:not-allowed}.room-selection-timeline-slot:disabled{opacity:.95}.room-selection-timeline-slot.is-past{cursor:not-allowed;background:#ebe8e0;border-color:#dcd8cf;color:#a8a49a}.room-selection-timeline-slot.is-past .room-selection-timeline-slot-icon{color:#a8a49a}.room-selection-timeline-tip{border:1px solid #cbdcf0;border-radius:12px;background:#fff;color:#4b5563;padding:12px 14px;font-size:14px}.room-selection-sidebar-card .ant-card-head{min-height:52px}.room-selection-sidebar-card .ant-form-item{margin-bottom:16px}.room-selection-sidebar-card .ant-form-item:last-child{margin-bottom:0}.room-selection-sidebar-card .ant-select-multiple .ant-select-selector,.room-selection-sidebar-card .ant-input-number{min-height:52px!important;border-radius:16px!important;padding-inline:14px!important}.room-selection-sidebar-card .ant-select-multiple .ant-select-selector{height:auto!important;padding-block:8px!important;display:flex;align-items:flex-start}.room-selection-sidebar-card .ant-input-number{height:52px!important;display:flex;align-items:center}.room-selection-sidebar-card .ant-select-multiple .ant-select-selection-wrap{min-height:100%;align-items:flex-start}.room-selection-sidebar-card .ant-select-multiple .ant-select-selection-overflow{align-items:flex-start;flex-wrap:wrap;gap:6px}.room-selection-sidebar-card .ant-select-multiple .ant-select-selection-overflow-item{display:flex;max-width:100%;align-items:center;margin-inline-end:0!important}.room-selection-sidebar-card .ant-select-multiple .ant-select-selection-item{height:32px;display:inline-flex;align-items:center;border-radius:10px;padding-inline:10px 8px;margin-inline-end:0}.room-selection-sidebar-card .ant-select-multiple .ant-select-selection-item-content,.room-selection-sidebar-card .ant-select-multiple .ant-select-selection-item-remove{display:inline-flex;align-items:center}.room-selection-sidebar-card .ant-select .ant-select-arrow{inset-inline-end:14px}.room-selection-sidebar-card .ant-input-number-input{height:50px;padding-inline:0}.room-selection-selected-session-list{max-height:280px;overflow-y:auto;padding-right:4px}.room-selection-selected-session-card{border-radius:12px;border-color:#cbdcf0;background:#fff}.room-selection-selected-session-card.is-shift-morning{border-color:#cbdcf0;background:#fffdf6}.room-selection-selected-session-card.is-shift-afternoon{border-color:#c5d8ef;background:#f7fbff}.room-selection-selected-session-card.is-shift-evening{border-color:#cfc0e5;background:#faf7ff}.room-selection-selected-session-card .ant-card-body{padding:10px 12px}.room-selection-selected-session-item{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.room-selection-selected-session-item>div{display:flex;flex-direction:column;gap:2px}.room-selection-selected-session-title{display:inline-flex;align-items:center;gap:8px}.room-selection-selected-session-title-icon{flex-shrink:0;color:#6b6560}.room-selection-selected-session-card.is-shift-morning .room-selection-selected-session-title-icon{color:#a67c00}.room-selection-selected-session-card.is-shift-afternoon .room-selection-selected-session-title-icon{color:#1d6bb8}.room-selection-selected-session-card.is-shift-evening .room-selection-selected-session-title-icon{color:#5c3d8c}@media(max-width:1100px){.room-selection-timeline-layout{grid-template-columns:1fr}}.booking-room-browser{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px;align-items:start;transition:grid-template-columns .2s ease}.booking-room-browser.is-location-collapsed{grid-template-columns:64px minmax(0,1fr)}.booking-location-panel{position:sticky;top:0;display:flex;flex-direction:column;gap:14px;min-height:520px;padding:18px;border:1px solid #e4edf8;border-radius:18px;background:#fff;box-shadow:0 2px 10px rgba(20,74,166,.035)}.booking-location-panel-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.booking-location-panel-body{display:contents}.booking-location-panel.is-collapsed{min-height:120px;padding:12px;align-items:center}.booking-location-panel.is-collapsed .booking-location-panel-head{writing-mode:vertical-rl}.booking-location-panel.is-collapsed .booking-location-panel-head .ant-space,.booking-location-panel.is-collapsed .booking-location-panel-body{display:none}.booking-location-expand-button.ant-btn{width:40px;height:40px;border-radius:12px}.booking-location-search .ant-input-affix-wrapper,.booking-location-search .ant-input-group-addon .ant-btn{border-color:#e4edf8}.booking-location-tree.ant-tree{flex:1;min-height:0;overflow-y:auto;padding:2px 4px 2px 0;background:transparent;color:#4b5563;font-size:13px;font-weight:600}.booking-location-tree.ant-tree .ant-tree-list-holder-inner{gap:3px}.booking-location-tree.ant-tree .ant-tree-treenode{width:100%;padding:1px 0}.booking-location-tree.ant-tree .ant-tree-indent-unit{width:14px}.booking-location-tree.ant-tree .ant-tree-switcher{display:inline-flex;width:24px;align-items:center;justify-content:center;color:#6b7280}.booking-location-tree.ant-tree .ant-tree-switcher:hover{color:#144aa6}.booking-location-tree.ant-tree .ant-tree-node-content-wrapper{display:inline-flex;flex:1;min-height:34px;align-items:center;padding:6px 10px;border-radius:12px;color:#4b5563;line-height:20px;transition:background .16s ease,color .16s ease,box-shadow .16s ease}.booking-location-tree.ant-tree .ant-tree-node-content-wrapper:hover{background:#f7faff;color:#144aa6}.booking-location-tree.ant-tree .ant-tree-treenode-level-0>.ant-tree-node-content-wrapper{color:#144aa6;font-weight:750}.booking-location-tree.ant-tree .ant-tree-treenode-level-1>.ant-tree-node-content-wrapper{color:#1f2937;font-weight:700}.booking-location-tree.ant-tree .ant-tree-node-selected,.booking-location-tree.ant-tree .ant-tree-node-selected:hover{background:#dbeafe!important;color:#144aa6!important;box-shadow:inset 0 0 0 1px #b7cbe8;font-weight:750}.booking-location-tree.ant-tree .ant-tree-treenode-selected .ant-tree-switcher{color:#144aa6}.booking-room-main-card{min-width:0}.booking-room-filter-panel{margin-bottom:18px;padding:16px;border:1px solid #dbe7f5;border-radius:16px;background:#fff;box-shadow:0 0 0 1px rgba(219,231,245,.7)}.booking-room-filter-label.ant-typography{display:block;margin-bottom:7px;color:#1f2937;font-size:13px;font-weight:700}.booking-room-filter-control{width:100%}.booking-room-code-line{--room-status-color: #6b7280;display:inline-flex;align-items:center;gap:8px;width:fit-content}.booking-room-status-dot{display:inline-block;width:9px;height:9px;flex:0 0 auto;border-radius:999px;background:var(--room-status-color);box-shadow:0 0 0 1px color-mix(in srgb,var(--room-status-color) 24%,transparent);cursor:help}.booking-room-info-meta{color:#4b5563}.booking-room-info-meta-item{display:inline-flex;align-items:center;gap:6px;color:#4b5563;font-size:14px;font-weight:500}.booking-room-info-meta-item svg{color:#6b7280}.booking-room-card{border:1px solid #ece7dc;border-radius:18px;background:#fff;box-shadow:0 0 0 1px #dbe7f5,0 4px 12px rgba(20,20,19,.024);overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.booking-room-card:hover{border-color:#7aa1d2;box-shadow:0 0 0 1px rgba(20,74,166,.22),0 4px 14px rgba(20,20,19,.035);transform:translateY(-2px)}.booking-room-card.is-selected{border-color:#144aa6;box-shadow:0 0 0 1px rgba(20,74,166,.28);background:#fff}.booking-room-card .ant-card-body{padding:0}.booking-room-card-shell{position:relative;display:flex;min-height:100%;flex-direction:column}.booking-room-card-image-wrapper{position:relative;width:100%;height:220px;overflow:hidden;background:#fff}.booking-room-card-image-preview,.booking-room-card-image-preview .ant-image{display:block;width:100%;height:100%}.booking-room-card-image-preview .ant-image-img,.booking-room-card-image{display:block;width:100%;height:100%;object-fit:cover;object-position:center;background:#fff}.booking-room-card-image-indicator{position:absolute;right:14px;bottom:14px;padding:7px 12px;border-radius:999px;background:rgba(20,20,19,.74);color:#fff;font-size:14px;font-weight:700;line-height:1.1;box-shadow:0 3px 10px rgba(20,20,19,.1)}.booking-room-card-image-empty{display:flex;width:100%;height:220px;align-items:center;justify-content:center;border-bottom:1px dashed #cbdcf0;background:#fff;color:#6b7280;overflow:hidden}.booking-room-card-content{display:flex;flex:1;flex-direction:column;gap:16px;padding:20px}.booking-room-card-heading{display:flex;flex-direction:column;gap:6px}.booking-room-card-title.ant-typography{display:flex;flex-wrap:wrap;gap:8px;align-items:baseline;margin:0;color:#111827;font-size:23px;line-height:1.25}.booking-room-card-title span:first-child{color:#144aa6;font-weight:800;letter-spacing:.2px}.booking-room-card-title strong{font-weight:750}.booking-room-card-meta{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;padding-bottom:16px;border-bottom:1px solid #dbe7f5;color:#4b5563;font-size:15px;font-weight:600}.booking-room-card-meta-item{display:inline-flex;min-width:0;align-items:center;gap:9px}.booking-room-card-meta-item svg{flex:0 0 auto;color:#1f2937}.booking-room-card-meta-separator{width:1px;height:24px;background:#dbe7f5}.booking-room-card-equipment-section{display:flex;flex-direction:column;gap:10px}.booking-room-card-equipment-title.ant-typography{color:#111827;font-size:16px}.booking-room-card-tags{display:flex;flex-wrap:wrap;gap:10px}.booking-room-card-equipment-chip{display:inline-flex;min-height:38px;align-items:center;gap:9px;padding:8px 14px;border:1px solid #dbe7f5;border-radius:10px;background:#fff;color:#1f2937;font-size:14px;font-weight:650;line-height:1.2;box-shadow:0 0 0 1px rgba(240,238,230,.72)}.booking-room-card-equipment-chip svg{flex:0 0 auto;color:#4b5563}.booking-room-card-equipment-chip.condition-2{border-color:#ead6a2;background:#fff9e8}.booking-room-card-equipment-chip.condition-3,.booking-room-card-equipment-chip.condition-4{border-color:#e6b7ad;background:#fff0ec}.booking-room-card-equipment-chip.is-loading,.booking-room-card-equipment-chip.is-muted{color:#6b7280}.booking-room-card-action.ant-btn{margin-top:auto;height:42px;border-radius:12px;font-weight:700}.booking-room-card-note{line-height:1.5}.booking-room-floor-list{display:flex;flex-direction:column;gap:14px}.booking-room-floor-section{overflow:hidden;border:1px solid #e4edf8;border-radius:16px;background:#fff}.booking-room-floor-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;border-bottom:1px solid #e4edf8;background:#f7faff}.booking-room-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(172px,1fr));gap:10px;padding:10px}.booking-room-card-compact{border-color:#e4edf8;border-radius:12px;box-shadow:none}.booking-room-card-compact:hover{transform:none}.booking-room-card-compact .ant-card-body{padding:0}.booking-room-card-image-empty-compact{display:none}.booking-room-card-content-compact{gap:6px;padding:9px;font-size:12px}.booking-room-heading{display:grid;min-width:0;gap:3px}.booking-room-card-title-line{display:flex;min-width:0;align-items:center;gap:7px}.booking-room-card-content-compact .booking-room-status-dot{width:8px;height:8px}.booking-room-card-content-compact .ant-typography{font-size:12px;line-height:1.35}.booking-room-card-meta-line{display:grid;min-width:0;gap:3px}.booking-room-stat-row{display:flex;min-width:0;align-items:center;gap:10px}.booking-room-card-content-compact .booking-room-capacity-text.ant-typography,.booking-room-card-content-compact .booking-room-area-text.ant-typography,.booking-room-card-content-compact .booking-room-type-text.ant-typography{font-size:11px;line-height:1.15}.booking-room-card-content-compact .booking-room-capacity-text.ant-typography,.booking-room-card-content-compact .booking-room-area-text.ant-typography{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.booking-room-card-content-compact .booking-room-type-text.ant-typography{width:fit-content;max-width:100%;padding:1px 6px;border-radius:999px;background:#f7faff;color:#144aa6;font-size:10px;font-weight:650;line-height:1.25}.booking-room-shift-chips{display:flex;flex-wrap:wrap;align-items:center;gap:4px;max-width:100%}.booking-room-shift-chip{display:inline-flex;min-width:32px;width:auto;height:18px;flex:0 0 auto;align-items:center;justify-content:center;padding:0 5px;border-radius:4px;font-size:10px;font-weight:750;line-height:1;white-space:nowrap}.booking-room-shift-chip.is-available{background:#dcfce7;color:#15803d}.booking-room-shift-chip.is-booked{background:#fee2e2;color:#dc2626}.booking-room-detail-modal .ant-modal-content{overflow:hidden;border:1px solid #e4edf8;border-radius:20px;background:#fff;box-shadow:0 8px 24px rgba(15,61,145,.08)}.booking-room-detail-modal .ant-modal-body,.booking-room-detail-modal .ant-modal-footer{background:transparent}.booking-room-detail-modal .ant-modal-body{max-height:min(72vh,760px);overflow-y:auto;padding:20px 20px 16px}.booking-room-detail-modal .ant-modal-footer{margin-top:0;padding:14px 20px 18px;border-top:1px solid #e4edf8}.booking-room-detail-shell{display:flex;flex-direction:column;gap:14px}.booking-room-detail-hero,.booking-room-detail-section{border:1px solid #e4edf8;background:#fff;box-shadow:0 2px 10px rgba(15,61,145,.035)}.booking-room-detail-hero{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:16px;border-radius:18px}.booking-room-detail-code{display:block;margin-bottom:4px;color:#6b7280!important;font-size:12px;font-weight:650}.booking-room-detail-title.ant-typography{margin:0 0 8px!important;color:#111827;font-size:24px;font-weight:750;letter-spacing:-.02em}.booking-room-detail-stats{display:flex;gap:8px;flex:0 0 auto}.booking-room-detail-stat{min-width:88px;padding:12px 13px;border-radius:14px;background:#f7faff;color:#0f3d91;border:1px solid #e4edf8}.booking-room-detail-stat svg{display:block;margin-bottom:8px}.booking-room-detail-stat strong{display:inline-block;margin-right:4px;color:#111827;font-size:20px;line-height:1}.booking-room-detail-stat span{color:#6b7280;font-size:12px;font-weight:650}.booking-room-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.booking-room-detail-section{padding:14px 16px 16px;border-radius:18px}.booking-room-detail-section-title{margin-bottom:10px;color:#111827;font-size:14px;font-weight:720}.booking-room-detail-info-list{display:grid;gap:8px}.booking-room-detail-info-list>div{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;border-radius:12px;background:#f7faff}.booking-room-detail-info-list span{color:#6b7280;font-size:12px;font-weight:650}.booking-room-detail-info-list strong{color:#111827;font-size:13px;font-weight:700;text-align:right}.booking-room-detail-image-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:10px}.booking-room-detail-image{width:100%;aspect-ratio:4 / 3;border:1px solid #e4edf8;border-radius:14px;object-fit:cover;background:#f7faff}.booking-room-detail-equipment-list .ant-list-item{padding-inline:0;border-block-end-color:#e4edf8!important}.booking-room-detail-equipment-item{display:flex;flex-direction:column;gap:2px}.booking-room-detail-footer{display:flex;justify-content:flex-end;gap:10px}.booking-room-detail-icon-button.ant-btn{position:absolute;top:8px;right:8px;z-index:3;width:34px;height:34px;border:1px solid #b7cbe8;border-radius:999px;background:rgba(255,255,255,.96);color:#0f3d91;box-shadow:0 3px 10px rgba(15,61,145,.12)}.booking-room-detail-icon-button.ant-btn:hover{border-color:#0f3d91;background:#f7faff;color:#0f3d91}.booking-room-card-actions-compact{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;width:100%}.booking-room-card-actions-compact .ant-btn-sm{width:100%;min-width:0;padding-inline:8px}.booking-room-card-actions-compact .ant-btn-sm>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.booking-room-card-content-compact .ant-btn-sm{height:26px;border-radius:8px;font-size:12px;font-weight:700}.booking-room-compact-meta{display:flex;justify-content:space-between;gap:6px;color:#4b5563;font-size:11px;font-weight:650}.booking-room-status-legend{display:flex;flex-wrap:wrap;gap:12px 18px;margin-top:14px;padding:10px 4px 0;color:#4b5563;font-size:13px;font-weight:600}.booking-room-status-legend-item{--room-status-color: #6b7280;display:inline-flex;align-items:center;gap:8px}@media(max-width:1024px){.booking-room-browser{grid-template-columns:1fr}.booking-location-panel{position:static;min-height:auto}}@media(max-width:640px){.booking-room-card-image-wrapper,.booking-room-card-image-empty{height:190px}.booking-room-card-content{padding:16px}.booking-room-card-title.ant-typography{font-size:20px}.booking-room-card-meta-separator{display:none}}.booking-request-modal .ant-modal-content{border-radius:20px;padding:0;overflow:hidden;background:#fff}.booking-request-modal .ant-modal-close{top:18px;right:18px;border-radius:999px;color:#6f6b62}.booking-request-shell{padding:28px;background:#fff}.booking-request-header{padding-right:48px;margin-bottom:18px}.booking-request-eyebrow{display:inline-flex;margin-bottom:8px;padding:4px 10px;border-radius:999px;background:#fff;color:#144aa6;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}.booking-request-header .ant-typography{margin:0}.booking-request-header h3.ant-typography{color:#2f2d29;font-size:28px;line-height:1.2}.booking-request-alert{margin-bottom:16px;border-radius:14px}.booking-request-room-strip{display:flex;align-items:center;gap:14px;padding:16px;margin-bottom:16px;border:1px solid #e6e0d3;border-radius:18px;background:#fff}.booking-request-room-icon{display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center;border-radius:14px;background:#efe4da;color:#b45f3d;flex:0 0 auto}.booking-request-room-main{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}.booking-request-room-name{color:#2f2d29;font-size:16px;font-weight:700}.booking-request-room-meta{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:#f3efe7;color:#5c574e;font-weight:600;white-space:nowrap}.booking-request-content-grid{display:grid;grid-template-columns:1fr;gap:16px}.booking-request-form-card,.booking-request-summary-card{border:1px solid #cbdcf0;border-radius:20px;background:#fff;box-shadow:none}.booking-request-form-card .ant-card-head,.booking-request-summary-card .ant-card-head{border-bottom-color:#eee8dc;min-height:52px}.booking-request-form-card .ant-card-head-title,.booking-request-summary-card .ant-card-head-title{color:#111827;font-weight:700}.booking-request-form .ant-form-item-label>label{color:#1f2937!important;font-size:13px;font-weight:500}.booking-request-form .ant-input:not(textarea),.booking-request-form .ant-input-affix-wrapper,.booking-request-form .ant-input-number{height:40px;min-height:40px;box-sizing:border-box;border-radius:12px!important;border-color:#cbdcf0!important;background:#fff!important;box-shadow:none!important}.booking-request-form .ant-input-affix-wrapper{padding-inline:11px}.booking-request-form .ant-input-affix-wrapper .ant-input{height:100%;min-height:0}.booking-request-form .ant-input::placeholder,.booking-request-form .ant-input-number-input::placeholder{color:#8d8a80}.booking-request-form .ant-input:focus,.booking-request-form .ant-input-focused,.booking-request-form .ant-input-number:focus-within,.booking-request-form .ant-input-number-focused,.booking-request-form .ant-input-affix-wrapper-focused{border-color:#144aa6!important;box-shadow:0 0 0 2px rgba(20,74,166,.12)!important;background:#fff!important}.booking-request-form textarea.ant-input{min-height:96px;padding:10px 11px;border-radius:12px!important;border-color:#cbdcf0!important;background:#fff!important;resize:vertical}.booking-request-counter{display:grid;grid-template-columns:40px minmax(0,1fr) 40px;gap:10px}.booking-request-counter .ant-btn{height:40px;border-radius:12px;background:#fff;border-color:#cbdcf0;box-shadow:none}.booking-request-counter .ant-input-number{width:100%;height:40px}.booking-request-counter .ant-input-number-input{height:38px;text-align:center;font-weight:700}.booking-request-upload-zone{display:flex;width:100%;align-items:center;gap:12px;padding:12px;border:1px dashed #cbdcf0;border-radius:12px;background:#fff;color:#144aa6;transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.booking-request-upload-zone:hover{border-color:#144aa6;background:#fff;box-shadow:0 0 0 1px rgba(20,74,166,.16)}.booking-request-upload-zone>div{display:flex;min-width:0;flex-direction:column;gap:2px;text-align:left}.booking-request-upload-zone .ant-typography{margin:0}.booking-request-remove-file{margin-top:8px;color:#144aa6}.booking-request-timeline-panel{display:flex;max-width:100%;align-items:stretch;border:1px solid #cbdcf0;border-radius:14px;background:#fbfaf7;overflow:hidden;box-shadow:0 1px rgba(255,255,255,.65) inset}.booking-request-timeline-panel-body{display:flex;min-width:0;flex:1;flex-direction:column;justify-content:center;padding:12px 14px}.booking-request-timeline-empty{display:flex;align-items:flex-start;gap:12px}.booking-request-timeline-empty-icon{display:flex;flex-shrink:0;align-items:center;justify-content:center;width:44px;height:44px;border-radius:12px;border:1px solid #cbdcf0;background:#fff;color:#144aa6}.booking-request-timeline-empty-text{min-width:0;flex:1}.booking-request-timeline-empty-title{display:block;margin-bottom:4px;color:#3a3834;font-size:15px}.booking-request-timeline-empty-desc{margin:0!important;font-size:13px;line-height:1.45;color:#8d8a80!important}.booking-request-timeline-filled{display:flex;flex-direction:column;gap:10px}.booking-request-timeline-filled-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:8px 12px}.booking-request-timeline-count{font-size:15px;color:#3a3834}.booking-request-timeline-range{font-size:13px}.booking-request-timeline-room-list{display:flex;max-height:240px;flex-direction:column;gap:10px;overflow-y:auto;padding:2px 4px 4px 0}.booking-request-timeline-room-group{border:1px solid #e4edf8;border-radius:12px;background:#fff;padding:10px}.booking-request-timeline-room-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}.booking-request-timeline-room-code{display:block;color:#0f3d91;font-size:14px;line-height:1.25}.booking-request-timeline-room-name{display:block;font-size:12px;line-height:1.35}.booking-request-timeline-room-count.ant-tag{margin:0;border-color:#b7cbe8;border-radius:999px;background:#f7faff;color:#0f3d91;font-weight:650}.booking-request-timeline-chip-list{display:flex;flex-wrap:wrap;align-content:flex-start;gap:8px}.booking-request-timeline-chip{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border:1px solid #e7e2d6;border-radius:11px;background:#fff}.booking-request-timeline-chip.is-shift-morning{border-color:#cbdcf0;background:#fff}.booking-request-timeline-chip.is-shift-afternoon{border-color:#c5d8ef;background:#f7fbff}.booking-request-timeline-chip.is-shift-evening{border-color:#cfc0e5;background:#faf7ff}.booking-request-timeline-chip-date{font-size:13px;color:#1f2937}.booking-request-timeline-chip-tag.ant-tag{margin:0;font-size:12px;line-height:1.35;padding:2px 8px;border-radius:999px}.booking-request-timeline-overflow{display:block;font-size:12px}.booking-request-timeline-cta.ant-btn{display:inline-flex!important;flex-shrink:0;flex-direction:column;align-items:center;align-self:stretch;justify-content:center;gap:6px;min-width:124px;max-width:140px;height:auto!important;padding:14px 10px!important;border-radius:0!important;border:none!important;border-left:1px solid #0f3a82!important;margin:0!important;background:#144aa6!important;box-shadow:none!important;white-space:normal;line-height:1.3;font-weight:600}.booking-request-timeline-cta.ant-btn .ant-btn-icon{margin-inline-end:0!important;line-height:0}.booking-request-timeline-cta.ant-btn:hover,.booking-request-timeline-cta.ant-btn:focus-visible{background:#0f3a82!important;border-left-color:#144aa6!important;color:#fff!important}.booking-request-conflict-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.booking-request-conflict-item{display:flex;flex-direction:column;gap:4px;padding:12px;border-radius:14px;background:#fff}.booking-request-conflict-item span{color:#4b5563;font-size:12px}.booking-request-conflict-item strong{color:#111827;font-size:18px}.booking-request-result-tag{width:fit-content;border-radius:999px;padding:4px 10px;background:#fff;border-color:#cbdcf0;color:#144aa6}.booking-request-session-list{display:flex;max-height:180px;overflow-y:auto;flex-direction:column;gap:8px;padding-right:4px}.booking-request-session-item{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:10px;border-radius:12px;background:#fff;color:#1f2937}.booking-request-session-item span{font-weight:650}.booking-request-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:18px;margin-top:18px;border-top:1px solid #cbdcf0}.booking-request-footer .ant-btn{border-radius:12px;height:42px}.booking-request-footer .ant-btn-primary{background:#144aa6;box-shadow:0 3px 10px rgba(20,74,166,.1)}.requester-notification-row-unread td,.requester-notification-row-unread:hover td{background:#fff!important}.zalo-zns-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.zalo-zns-summary-card .ant-card-body{display:flex;min-height:132px;flex-direction:column;justify-content:space-between;gap:14px}.zalo-zns-summary-card strong{color:#111827;font-size:38px;font-weight:500;line-height:1}.zalo-zns-summary-card.is-warning{background:#fff8ea;border-color:#ead6a2}.zalo-zns-summary-card.is-danger{background:#fff0ec;border-color:#e6b7ad}@media(max-width:1280px){.admin-dashboard-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:991px){.booking-request-shell{padding:22px}.booking-request-content-grid{grid-template-columns:1fr}.booking-request-room-strip{align-items:stretch;flex-direction:column}.booking-request-footer{align-items:center;flex-direction:row}.booking-request-timeline-panel{flex-direction:column}.booking-request-timeline-cta.ant-btn{max-width:none;min-height:48px;border-left:none!important;border-top:1px solid #0f3a82!important}.booking-request-room-meta{width:fit-content}.booking-request-footer .ant-btn{min-width:132px}.console-content{padding:16px}.admin-dashboard-hero{flex-direction:column}.admin-dashboard-hero-actions,.admin-dashboard-filter-actions{min-width:100%;margin-left:0}.admin-dashboard-filter-control,.admin-dashboard-date-filter{width:100%}.admin-dashboard-status-layout{grid-template-columns:1fr;justify-items:center}.admin-dashboard-lollipop-chart{padding:14px;background:linear-gradient(180deg,#fff,#f7faff)}.admin-dashboard-lollipop-scale{display:none}.admin-dashboard-lollipop-row{grid-template-columns:1fr;gap:8px;padding-bottom:12px;border-bottom:1px solid rgba(228,237,248,.75)}.admin-dashboard-lollipop-row:last-child{padding-bottom:0;border-bottom:0}.admin-dashboard-lollipop-summary{align-items:flex-start}.admin-dashboard-approval-row{flex-direction:column}.admin-dashboard-approval-meta-grid{grid-template-columns:1fr}.admin-dashboard-schedule-row{grid-template-columns:1fr;gap:10px}.admin-dashboard-schedule-time{padding-top:0}.admin-dashboard-schedule-event{grid-template-columns:1fr}.admin-dashboard-schedule-event-status{justify-content:flex-start}.admin-dashboard-schedule-now-row{grid-template-columns:1fr;gap:8px}.admin-dashboard-schedule-hours{display:none}.admin-dashboard-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-dashboard-actions-grid,.zalo-zns-summary-grid{grid-template-columns:1fr}.console-sider,.auth-page{padding:16px}}
