@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/manrope-cyrillic-ext-wght-normal.d1990364.woff2) format("woff2-variations");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/manrope-cyrillic-wght-normal.2ffcac4f.woff2) format("woff2-variations");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/manrope-greek-wght-normal.6b69666c.woff2) format("woff2-variations");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/manrope-vietnamese-wght-normal.383b32a0.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/manrope-latin-ext-wght-normal.f5cc7610.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/_next/static/media/manrope-latin-wght-normal.fedf4c92.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/fraunces-vietnamese-wght-normal.9ea1ffad.woff2) format("woff2-variations");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/fraunces-latin-ext-wght-normal.df252a37.woff2) format("woff2-variations");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Fraunces Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_next/static/media/fraunces-latin-wght-normal.7d78925e.woff2) format("woff2-variations");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}:root{--font-roomkeeping:"Manrope Variable",Manrope,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--color-primary:#1f4a3d;--color-primary-dark:#143a2e;--color-primary-light:#2a6152;--color-on-primary:#ffffff;--color-accent:#8a6222;--color-accent-light:#b08243;--color-secondary:#2a6152;--color-background:#faf7f2;--color-surface:#ffffff;--color-surface-muted:#f5f0e8;--color-surface-hover:#efe8dd;--color-foreground:#1a1614;--color-text-secondary:#5d5348;--color-text-muted:#8b8074;--color-muted:var(--color-text-secondary);--color-destructive:#a4342a;--color-destructive-light:#f9e3df;--color-warning:#8a5a12;--color-warning-light:#f7e8cf;--color-success:#1f6f4f;--color-success-light:#dcefe4;--color-info:#155e68;--color-info-light:#dbecee;--color-ready:#1f6f4f;--color-ready-bg:#dcefe4;--color-dirty:#a94a1c;--color-dirty-bg:#f8e2d2;--color-cleaning:#155e68;--color-cleaning-bg:#dbecee;--color-inspection:#7a3b6b;--color-inspection-bg:#f3e2ef;--color-border:#e3dbcd;--color-border-light:#efe8dd;--color-ring:#2a6152;--shadow-sm:0 1px 3px rgba(52,38,22,0.08),0 1px 2px rgba(52,38,22,0.04);--shadow-md:0 4px 8px rgba(52,38,22,0.1),0 2px 4px rgba(52,38,22,0.06);--shadow-lg:0 12px 24px rgba(52,38,22,0.12),0 6px 12px rgba(52,38,22,0.08);--shadow-xl:0 24px 48px rgba(52,38,22,0.14),0 12px 24px rgba(52,38,22,0.1);--shadow-glass:none;--shadow-glass-strong:none;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--transition-fast:150ms cubic-bezier(0.4,0,0.2,1);--transition-base:250ms cubic-bezier(0.4,0,0.2,1);--transition-slow:350ms cubic-bezier(0.4,0,0.2,1);--font-display:var(--font-roomkeeping),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--glass-bg:var(--color-surface);--glass-bg-strong:var(--color-surface);--glass-tile:var(--color-surface);--glass-border:var(--color-border);--glass-border-inner:var(--color-border-light);--glass-blur:0px}[data-theme=dark]{--color-background:#12100e;--color-surface:#1c1916;--color-surface-muted:#272220;--color-surface-hover:#332c27;--color-foreground:#f7f3ec;--color-text-secondary:#cfc5b8;--color-text-muted:#9a8f81;--color-muted:var(--color-text-secondary);--color-primary:#69b294;--color-primary-dark:#4e9782;--color-primary-light:#9fd3bf;--color-accent:#d2a76a;--color-accent-light:#e2c091;--color-destructive:#f0a79f;--color-destructive-light:#4a201b;--color-warning:#e0ad5c;--color-warning-light:#40300f;--color-success:#5fc294;--color-success-light:#123a2b;--color-info:#5cbcc7;--color-info-light:#0f3a40;--color-ready:#5fc294;--color-ready-bg:#123a2b;--color-dirty:#e0975a;--color-dirty-bg:#43230f;--color-cleaning:#5cbcc7;--color-cleaning-bg:#0f3a40;--color-inspection:#dda6cd;--color-inspection-bg:#40203a;--color-border:#39322c;--color-border-light:#2b2521;--shadow-sm:0 2px 4px rgba(0,0,0,0.4),0 1px 2px rgba(0,0,0,0.3);--shadow-md:0 6px 12px rgba(0,0,0,0.5),0 3px 6px rgba(0,0,0,0.4);--shadow-lg:0 16px 32px rgba(0,0,0,0.6),0 8px 16px rgba(0,0,0,0.5);--shadow-xl:0 32px 64px rgba(0,0,0,0.7),0 16px 32px rgba(0,0,0,0.6);--shadow-glass:none;--shadow-glass-strong:none}*{box-sizing:border-box}body{margin:0;background:var(--color-background);color:var(--color-foreground);font-family:var(--font-roomkeeping),-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--transition-base),color var(--transition-base)}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;line-height:1.2;letter-spacing:-.02em}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer;color:inherit}.app-shell{min-height:100vh}.topbar{position:-webkit-sticky;position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-6);background:rgba(255,255,255,.85);border-bottom:1px solid var(--color-border);transition:all var(--transition-base)}[data-theme=dark] .topbar{background:rgba(17,40,33,.85)}.topbar:hover{background:rgba(255,255,255,.95);box-shadow:var(--shadow-sm)}[data-theme=dark] .topbar:hover{background:rgba(17,40,33,.95)}.brand{display:flex;align-items:center;gap:var(--space-3);font-family:Poppins,sans-serif;font-weight:700;font-size:18px;color:var(--color-foreground)}.brand-mark{width:40px;height:40px;display:grid;place-items:center;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary);box-shadow:var(--shadow-md)}.nav{display:flex;align-items:center;gap:var(--space-2);flex-wrap:wrap}.nav a{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--color-muted);font-size:14px;font-weight:500;transition:all var(--transition-fast)}.nav a:hover{background:var(--color-surface-muted);color:var(--color-foreground);transform:translateY(-1px)}.page{width:min(1180px,calc(100% - 32px));margin:0 auto;padding:var(--space-8) 0 var(--space-12)}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-5);margin-bottom:var(--space-6)}.eyebrow{margin:0 0 var(--space-2);color:var(--color-accent);font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.05em}h1,h2,h3,p{margin-top:0}h2{font-size:20px;font-weight:600;margin-bottom:var(--space-4)}h1,h2{color:var(--color-foreground)}h1{margin-bottom:var(--space-2);font-size:38px;font-weight:700;letter-spacing:-.02em}.muted{color:var(--color-text-muted);font-size:15px}.grid{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.grid.metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.grid.two{grid-template-columns:1.15fr .85fr}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-5);transition:all var(--transition-base);box-shadow:var(--shadow-sm)}.card:hover{border-color:var(--color-primary-light);box-shadow:var(--shadow-md),0 0 0 1px var(--color-border);transform:translateY(-2px)}.metric{min-height:120px;background:var(--color-surface);border:1px solid var(--color-border);position:relative;overflow:hidden;box-shadow:var(--shadow-sm)}.metric:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(42,97,82,.04),rgba(78,151,130,.02));opacity:0;transition:opacity var(--transition-base)}.metric:hover{border-color:var(--color-primary-light);box-shadow:var(--shadow-lg),0 0 0 1px var(--color-border);transform:translateY(-4px)}.metric:hover:before{opacity:1}.metric-label{display:flex;align-items:center;justify-content:space-between;color:var(--color-muted);font-size:14px;font-weight:500;position:relative;z-index:1}.metric-label span:last-child{width:36px;height:36px;display:grid;place-items:center;border-radius:var(--radius-sm);background:var(--color-primary);color:var(--color-on-primary);box-shadow:var(--shadow-sm)}.metric-value{margin-top:var(--space-4);font-size:42px;font-weight:800;font-family:Poppins,sans-serif;letter-spacing:-.03em;color:var(--color-foreground);position:relative;z-index:1}.metric-trend{margin-top:var(--space-2);font-size:13px;font-weight:600;display:flex;align-items:center;gap:var(--space-1)}.metric-description{margin-top:var(--space-2);font-size:12px;color:var(--color-text-muted);font-weight:500}.metric-trend.positive{color:var(--color-success)}.metric-trend.negative{color:var(--color-destructive)}.floor{margin-bottom:22px}.stats-bar{box-shadow:var(--shadow-sm)}.room-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));grid-gap:var(--space-4);gap:var(--space-4)}.room-tile{min-height:120px;border-radius:var(--radius-md);padding:var(--space-5);border:1px solid var(--color-border);background:var(--color-surface);transition:all var(--transition-base);cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.room-tile:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--color-border);transition:background var(--transition-base)}.room-tile-ready:before{background:var(--color-ready)}.room-tile-dirty:before{background:var(--color-dirty)}.room-tile-in_cleaning:before{background:var(--color-cleaning)}.room-tile-pending_inspection:before{background:var(--color-inspection)}.room-tile:hover{border-color:var(--color-primary-light);box-shadow:var(--shadow-md);transform:translateY(-4px)}.room-number{font-size:28px;font-weight:800;font-family:Poppins,sans-serif;letter-spacing:-.03em}.status{display:inline-flex;align-items:center;gap:var(--space-2);margin-top:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:12px;font-weight:600;letter-spacing:.02em;transition:all var(--transition-fast)}.status.READY{background:var(--color-ready-bg);color:var(--color-ready)}.status.DIRTY,.status.REJECTED{background:var(--color-dirty-bg);color:var(--color-dirty)}.status.IN_CLEANING,.status.IN_PROGRESS{background:var(--color-cleaning-bg);color:var(--color-cleaning)}.status.PENDING_INSPECTION{background:var(--color-inspection-bg);color:var(--color-inspection)}.task-list{display:grid;grid-gap:var(--space-3);gap:var(--space-3)}.task-row{display:grid;grid-template-columns:92px 1fr auto;align-items:center;grid-gap:var(--space-4);gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);transition:all var(--transition-fast);cursor:pointer}.task-row:hover{border-color:var(--color-primary-light);background:linear-gradient(135deg,var(--color-surface) 0,var(--color-surface-muted) 100%);box-shadow:var(--shadow-md);transform:translateX(4px)}.task-row strong{font-family:Poppins,sans-serif;font-weight:600;font-size:16px;color:var(--color-foreground)}.task-row-meta{color:var(--color-text-secondary);font-size:14px}.danger-btn,.primary-btn,.secondary-btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);border-radius:var(--radius-md);padding:0 var(--space-4);font-weight:600;font-size:15px;transition:all var(--transition-fast);cursor:pointer;border:none}.primary-btn{background:var(--color-primary);color:var(--color-on-primary);box-shadow:var(--shadow-md),0 0 0 1px rgba(42,97,82,.1)}.primary-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg),0 0 0 1px rgba(42,97,82,.2)}.primary-btn:active{transform:translateY(0)}.secondary-btn{background:var(--color-surface-muted);color:var(--color-foreground)}.secondary-btn:hover{background:var(--color-border);transform:translateY(-1px)}.danger-btn{background:var(--color-destructive-light);color:var(--color-destructive)}.danger-btn:hover{background:#f8d3d0;transform:translateY(-1px)}.form-grid{display:grid;grid-gap:12px;gap:12px}.field{display:grid;grid-gap:6px;gap:6px}.field label{color:var(--color-muted);font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.field input,.field select,.field textarea{width:100%;min-height:44px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:var(--space-3);transition:all var(--transition-fast);font-size:15px;color:var(--color-foreground)}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(78,151,130,.1)}.field input::placeholder,.field textarea::placeholder{color:var(--color-text-muted)}.field input[type=file]{padding:var(--space-2);cursor:pointer}.photo-upload-grid{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--space-3);gap:var(--space-3);margin-top:var(--space-3)}.photo-upload-item{aspect-ratio:1;border-radius:var(--radius-md);border:2px dashed var(--color-border);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);cursor:pointer;transition:all var(--transition-fast);background:var(--color-surface-muted);position:relative;overflow:hidden}.photo-upload-item:hover{border-color:var(--color-primary);background:var(--color-surface-hover)}.photo-upload-item.has-photo{border-style:solid;border-color:var(--color-success)}.photo-upload-item.disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.photo-upload-item img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.photo-upload-placeholder{text-align:center;padding:var(--space-4)}.photo-upload-placeholder svg{color:var(--color-text-muted);margin-bottom:var(--space-2)}.photo-upload-placeholder span{font-size:12px;color:var(--color-text-muted)}.photo-remove-btn{position:absolute;top:var(--space-2);right:var(--space-2);width:32px;height:32px;border-radius:var(--radius-full);background:rgba(0,0,0,.6);color:white;border:none;display:grid;place-items:center;cursor:pointer;transition:all var(--transition-fast);z-index:1}[data-theme=dark] .photo-remove-btn{background:rgba(255,255,255,.2)}.photo-remove-btn:hover{background:var(--color-destructive);transform:scale(1.1)}.photo-counter{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-radius:var(--radius-full);font-size:12px;font-weight:600;margin-top:var(--space-2)}.photo-counter.valid{background:var(--color-success-light);color:var(--color-success)}.photo-counter.invalid{background:var(--color-warning-light);color:var(--color-warning)}.checklist{display:grid;grid-gap:var(--space-2);gap:var(--space-2)}.checklist label{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);transition:all var(--transition-fast);cursor:pointer}.checklist label:hover{border-color:var(--color-primary-light);background:var(--color-surface-muted)}.checklist input[type=checkbox]{width:20px;height:20px;accent-color:var(--color-primary)}.mobile-stack{max-width:520px;margin:0 auto}@media (max-width:860px){.page-header,.topbar{align-items:flex-start;flex-direction:column}.grid.metrics,.grid.two,.task-row{grid-template-columns:1fr}h1{font-size:32px}.metric-value{font-size:36px}.nav{width:100%;justify-content:space-between;flex-wrap:nowrap;overflow-x:auto}.nav a{white-space:nowrap;padding:var(--space-2) var(--space-3);font-size:13px}.toast-container{top:var(--space-20);right:var(--space-4);left:var(--space-4)}.toast{min-width:auto;max-width:none}}@media (max-width:480px){.page{width:calc(100% - 16px);padding:var(--space-6) 0}.grid.metrics{grid-template-columns:repeat(2,1fr)}.photo-upload-grid{grid-template-columns:1fr}.topbar{padding:var(--space-3) var(--space-4)}.brand span:last-child{font-size:16px}.grid>.card{min-width:100%}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.grid.metrics>.card{animation:scaleIn var(--transition-slow) ease-out backwards}.grid.metrics>.card:first-child{animation-delay:0s}.grid.metrics>.card:nth-child(2){animation-delay:50ms}.grid.metrics>.card:nth-child(3){animation-delay:.1s}.grid.metrics>.card:nth-child(4){animation-delay:.15s}.grid.two>.card{animation:fadeInUp var(--transition-slow) ease-out backwards;animation-delay:.2s}.task-row{animation:slideInRight var(--transition-base) ease-out backwards}.task-row:first-child{animation-delay:.25s}.task-row:nth-child(2){animation-delay:.3s}.task-row:nth-child(3){animation-delay:.35s}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.task-list>div>div{padding:var(--space-3);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-surface-muted);transition:all var(--transition-fast)}.task-list>div>div:hover{background:var(--color-surface);border-color:var(--color-border)}.task-list>div>div strong{font-family:Poppins,sans-serif;font-weight:600;color:var(--color-foreground);font-size:14px}.task-list>div>div p{margin:var(--space-1) 0 0;font-size:13px;color:var(--color-muted)}.theme-toggle{width:44px;height:44px;display:grid;place-items:center;border-radius:var(--radius-full);background:var(--color-surface-muted);border:1px solid var(--color-border);cursor:pointer;transition:all var(--transition-fast)}.theme-toggle:hover{background:var(--color-surface-hover);border-color:var(--color-primary);transform:scale(1.05)}.theme-toggle:active{transform:scale(.95)}.toast-container{position:fixed;top:var(--space-16);right:var(--space-6);z-index:1000;flex-direction:column;pointer-events:none}.toast,.toast-container{display:flex;gap:var(--space-3)}.toast{min-width:320px;max-width:400px;padding:var(--space-4);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);align-items:flex-start;pointer-events:all;animation:slideInRight var(--transition-base) ease-out}.toast.removing{animation:slideOutRight var(--transition-base) ease-out forwards}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}.toast-icon{width:24px;height:24px;display:grid;place-items:center;border-radius:var(--radius-full);flex-shrink:0}.toast.success .toast-icon{background:var(--color-success-light);color:var(--color-success)}.toast.error .toast-icon{background:var(--color-destructive-light);color:var(--color-destructive)}.toast.warning .toast-icon{background:var(--color-warning-light);color:var(--color-warning)}.toast.info .toast-icon{background:var(--color-info-light);color:var(--color-info)}.toast-content{flex:1 1;min-width:0}.toast-title{font-weight:600;font-size:14px;margin-bottom:var(--space-1);color:var(--color-foreground)}.toast-message{font-size:13px;color:var(--color-text-secondary);line-height:1.4}.toast-close{width:24px;height:24px;display:grid;place-items:center;border:none;background:transparent;color:var(--color-text-muted);cursor:pointer;border-radius:var(--radius-sm);transition:all var(--transition-fast);flex-shrink:0}.toast-close:hover{background:var(--color-surface-muted);color:var(--color-foreground)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.live-indicator{display:inline-flex;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);background:var(--color-success-light);color:var(--color-success);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.live-indicator:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--color-success);animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.spinner{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}button:disabled{opacity:.6;cursor:not-allowed}button:disabled:hover{transform:none}.task-row.active{border-color:var(--color-primary);background:linear-gradient(135deg,rgba(78,151,130,.05),rgba(78,151,130,.02))}.flow-header{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-4);margin-bottom:var(--space-4)}.flow-header-right{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.timer-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-full);background:var(--color-cleaning-bg);color:var(--color-cleaning);font-family:Poppins,sans-serif;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600;font-size:14px;letter-spacing:.02em}.stepper{list-style:none;margin:0 0 var(--space-5);padding:0;display:flex;align-items:flex-start}.stepper-seg{flex:1 1;display:flex;flex-direction:column;align-items:center;gap:6px;position:relative;text-align:center}.stepper-seg:not(:first-child):before{content:"";position:absolute;top:15px;right:50%;height:2px;width:100%;background:var(--color-border);z-index:0;transition:background var(--transition-base)}.stepper-dot{width:30px;height:30px;border-radius:var(--radius-full);display:grid;place-items:center;background:var(--color-surface-muted);color:var(--color-text-muted);border:2px solid var(--color-border);z-index:1;transition:all var(--transition-fast)}.stepper-seg.active .stepper-dot{background:var(--color-primary);border-color:var(--color-primary);color:var(--color-on-primary);box-shadow:0 0 0 4px rgba(42,97,82,.12)}.stepper-seg.done .stepper-dot{background:var(--color-success);border-color:var(--color-success);color:#fff}.stepper-seg.active:not(:first-child):before,.stepper-seg.done:not(:first-child):before{background:var(--color-primary)}.stepper-label{font-size:12px;font-weight:600;color:var(--color-text-muted);transition:color var(--transition-fast)}.stepper-seg.active .stepper-label,.stepper-seg.done .stepper-label{color:var(--color-foreground)}.step-body{min-height:200px}.step-meta{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.step-title{margin:0;font-size:15px;font-weight:600}.progress-pill{display:inline-flex;align-items:center;padding:4px 12px;border-radius:var(--radius-full);font-size:13px;font-weight:700;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;background:var(--color-surface-muted);color:var(--color-text-secondary)}.progress-pill.valid{background:var(--color-success-light);color:var(--color-success)}.progress-pill.invalid{background:var(--color-warning-light);color:var(--color-warning)}.required-mark{color:var(--color-destructive);font-weight:700;margin-left:2px}.checklist label.checklist-required{border-color:var(--color-warning);background:var(--color-warning-light)}.checklist label.checklist-required input{accent-color:var(--color-warning)}.step-nav{display:flex;gap:var(--space-3);margin-top:var(--space-5)}.info-note{display:flex;align-items:center;gap:8px;padding:12px;background:var(--color-info-light);border-radius:var(--radius-md);margin-top:var(--space-3);font-size:13px}.info-note svg{color:var(--color-info);flex-shrink:0}.info-note span{color:var(--color-text-secondary)}.modal-overlay{position:fixed;inset:0;z-index:1100;background:rgba(17,40,33,.55);display:grid;place-items:center;padding:var(--space-4);animation:fadeIn var(--transition-fast) ease-out}.modal-card{width:min(440px,100%);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);padding:var(--space-6);text-align:center;animation:scaleIn var(--transition-base) ease-out}[data-theme=dark] .modal-overlay{background:rgba(0,0,0,.65)}.modal-icon{width:52px;height:52px;border-radius:var(--radius-full);display:grid;place-items:center;margin:0 auto var(--space-4);background:var(--color-warning-light);color:var(--color-warning)}.summary-list{list-style:none;margin:var(--space-4) 0 0;padding:0;display:grid;grid-gap:8px;gap:8px;text-align:left}.summary-list li{display:flex;align-items:center;gap:var(--space-3);padding:10px 12px;border-radius:var(--radius-md);background:var(--color-surface-muted);font-size:13px;font-weight:500;color:var(--color-text-secondary)}.summary-list li svg{color:var(--color-primary);flex-shrink:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.inspection-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,340px),1fr));grid-gap:var(--space-4);gap:var(--space-4)}.inspection-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-3)}.inspection-head,.inspection-section{margin-bottom:var(--space-4)}.inspection-subtitle{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);font-size:14px;font-weight:600;margin:0 0 var(--space-2);color:var(--color-foreground)}.inspection-stats{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:12px;gap:12px;margin-bottom:var(--space-4)}.inspection-stat{padding:12px;text-align:center;border-radius:var(--radius-md);border:1px solid var(--color-border);background:var(--color-surface-muted);display:flex;flex-direction:column;align-items:center;gap:2px}.inspection-stat-value{font-size:18px;font-weight:700;font-family:Poppins,sans-serif}.inspection-stat-label{font-size:11px;color:var(--color-text-muted)}.evidence-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));grid-gap:8px;gap:8px}.evidence-thumb{aspect-ratio:1;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-sm);overflow:hidden;cursor:pointer;background:var(--color-surface-muted);transition:transform var(--transition-fast),border-color var(--transition-fast)}.evidence-thumb img{width:100%;height:100%;object-fit:cover;display:block}.evidence-thumb:hover{transform:scale(1.05);border-color:var(--color-primary-light)}.evidence-thumb:disabled{cursor:default}.evidence-thumb:disabled:hover{transform:none;border-color:var(--color-border)}.evidence-thumb:active{transform:scale(.97)}.photo-unavailable{width:100%;height:100%;min-height:64px;display:grid;place-items:center;grid-gap:4px;gap:4px;padding:8px;color:var(--color-text-muted);font-size:11px;text-align:center}.photo-unavailable-inline{display:inline-flex;align-items:center;gap:4px}.report-stack{display:flex;flex-direction:column;gap:8px}.report-item{display:flex;align-items:center;gap:8px;padding:8px 12px;border-radius:var(--radius-sm)}.report-item-column{align-items:stretch;flex-direction:column}.report-item-row{display:flex;align-items:center;gap:8px}.report-item-warning{background:var(--color-warning-light)}.report-item-danger{background:var(--color-destructive-light)}.report-item-title{flex:1 1;font-size:13px;color:var(--color-foreground)}.report-item-meta{font-size:11px;color:var(--color-text-muted)}.report-item-btn{min-height:36px;padding:4px 10px;font-size:11px}.report-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(64px,88px));grid-gap:8px;gap:8px}.inspection-actions{display:flex;gap:12px;flex-wrap:wrap}.inspection-actions>button{flex:1 1;min-width:140px}.summary-bar{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));grid-gap:var(--space-3);gap:var(--space-3);padding:var(--space-4) var(--space-6)!important}.rooms-summary{margin-bottom:var(--space-6)}.summary-stat{text-align:center}.summary-stat-value{font-size:24px;font-weight:800;font-family:Poppins,sans-serif;line-height:1.1}.summary-stat-label{font-size:11px;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-top:2px}@media (max-width:480px){.summary-bar{padding:var(--space-3) var(--space-4)!important;gap:var(--space-2)}}.floor-head{display:flex;align-items:center;gap:12px;margin-bottom:16px}.floor-badge{width:40px;height:40px;border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-on-primary);display:grid;place-items:center;font-weight:700;font-family:Poppins,sans-serif;box-shadow:var(--shadow-md);flex-shrink:0}.room-tile-head{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-2);margin-bottom:8px}.room-tile-hint{font-size:12px;color:var(--color-text-muted);text-align:center;padding:10px 4px;border:1px dashed var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-muted)}.dash{position:relative;min-height:100vh;overflow:hidden}.dash-bg{position:fixed;inset:0;z-index:0;pointer-events:none;background:var(--color-background)}.dash-canvas{position:relative;z-index:1;width:min(1240px,calc(100% - 40px));margin:0 auto;padding:var(--space-10) 0 var(--space-16)}@media (max-width:600px){.dash-canvas{width:calc(100% - 24px);padding:var(--space-8) 0 var(--space-12)}}.glass{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-glass)}.dash-top{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-5);margin-bottom:var(--space-8);flex-wrap:wrap}.dash-eyebrow{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-display);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--color-accent);margin:0 0 var(--space-2)}.dot-pulse{width:7px;height:7px;border-radius:50%;background:var(--color-success);box-shadow:0 0 0 0 rgba(38,163,97,.5);animation:dotPulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes dotPulse{0%{box-shadow:0 0 0 0 rgba(38,163,97,.5)}70%{box-shadow:0 0 0 6px rgba(38,163,97,0)}to{box-shadow:0 0 0 0 rgba(38,163,97,0)}}.dash-h1{font-family:var(--font-display);font-size:clamp(30px,4.2vw,46px);font-weight:600;letter-spacing:-.03em;line-height:1.04;margin:0 0 var(--space-2);color:var(--color-foreground)}.dash-sub{margin:0;max-width:54ch;font-size:15px;line-height:1.55;color:var(--color-text-secondary)}.dash-top-actions{display:flex;align-items:center;gap:var(--space-3)}.dash-clock{display:inline-flex;align-items:center;gap:10px;padding:10px 16px;border-radius:var(--radius-full);background:var(--glass-bg-strong);border:1px solid var(--glass-border);color:var(--color-text-secondary)}.dash-clock svg{color:var(--color-accent);flex-shrink:0}.dash-clock-time{font-family:var(--font-display);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:600;font-size:15px;color:var(--color-foreground);letter-spacing:.01em}.dash-clock-date{font-size:12px;color:var(--color-text-muted)}@media (max-width:480px){.dash-clock-date{display:none}}.dash-btn-primary{display:inline-flex;align-items:center;gap:8px;height:44px;padding:0 20px;border-radius:var(--radius-full);background:var(--color-primary);color:var(--color-on-primary);font-weight:600;font-size:14px;border:none;cursor:pointer;box-shadow:var(--shadow-md);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.dash-btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:var(--shadow-lg)}.dash-btn-primary:disabled{opacity:.65;cursor:not-allowed}.dash-hero{display:grid;grid-template-columns:.85fr 1.5fr;grid-gap:var(--space-8);gap:var(--space-8);align-items:center;padding:var(--space-8);margin-bottom:var(--space-5);animation:fadeInUp var(--transition-slow) ease-out backwards}.hero-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-secondary)}.hero-value{font-family:var(--font-display);font-size:clamp(52px,8vw,80px);font-weight:600;letter-spacing:-.04em;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--color-foreground);margin:6px 0 4px;display:flex;align-items:baseline;gap:4px}.hero-value .pct{font-size:.42em;font-weight:500}.hero-sub,.hero-value .pct{color:var(--color-text-muted)}.hero-sub{font-size:14px}.hero-sub b{color:var(--color-text-secondary);font-weight:600}.seg-wrap{display:flex;flex-direction:column;gap:var(--space-4)}.seg-bar{display:flex;height:14px;gap:3px;padding:3px;border-radius:var(--radius-full);background:var(--color-surface-muted);overflow:hidden}[data-theme=dark] .seg-bar{background:rgba(17,40,33,.5)}.seg{height:100%;min-width:0;border-radius:var(--radius-full);transition:flex var(--transition-slow)}.seg-ready{background:var(--color-ready)}.seg-dirty{background:var(--color-dirty)}.seg-cleaning{background:var(--color-cleaning)}.seg-inspection{background:var(--color-inspection)}.seg-legend{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:var(--space-2) var(--space-4);gap:var(--space-2) var(--space-4)}.seg-legend-item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text-secondary)}.seg-dot{width:10px;height:10px;border-radius:3px;flex-shrink:0}.seg-count{margin-left:auto;font-family:var(--font-display);font-weight:600;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--color-foreground)}.dash-metrics{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:var(--space-4);gap:var(--space-4);margin-bottom:var(--space-5)}.kpi{padding:var(--space-5);display:flex;flex-direction:column;gap:var(--space-4);transition:transform var(--transition-base),box-shadow var(--transition-base);animation:scaleIn var(--transition-slow) ease-out backwards}.kpi:hover{transform:translateY(-2px);box-shadow:var(--shadow-glass-strong)}.kpi-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.kpi-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-secondary)}.kpi-chip{width:40px;height:40px;display:grid;place-items:center;border-radius:var(--radius-md);flex-shrink:0}.tone-primary{background:rgba(42,97,82,.1);color:var(--color-primary)}.tone-cleaning{background:var(--color-cleaning-bg);color:var(--color-cleaning)}.tone-warning{background:var(--color-warning-light);color:var(--color-warning)}.tone-inspection{background:var(--color-inspection-bg);color:var(--color-inspection)}.kpi-value{font-family:var(--font-display);font-size:clamp(34px,4vw,44px);font-weight:600;letter-spacing:-.03em;line-height:1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--color-foreground)}.kpi-unit{font-size:.4em;font-weight:500;color:var(--color-text-muted);margin-left:4px;letter-spacing:0}@media (max-width:900px){.dash-metrics{grid-template-columns:repeat(2,1fr)}.dash-hero{grid-template-columns:1fr;gap:var(--space-6)}}@media (max-width:420px){.dash-metrics{grid-template-columns:1fr}}.dash-grid{display:grid;grid-template-columns:1.3fr 1fr;grid-gap:var(--space-5);gap:var(--space-5)}@media (max-width:900px){.dash-grid{grid-template-columns:1fr}}.panel{padding:var(--space-6);display:flex;flex-direction:column;animation:fadeInUp var(--transition-slow) ease-out backwards}.dash-grid .panel:nth-child(2){animation-delay:90ms}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-5)}.panel-title{font-family:var(--font-display);font-size:18px;font-weight:600;margin:0;letter-spacing:-.01em;color:var(--color-foreground)}.op-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:var(--space-4);gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--glass-tile);border:1px solid var(--glass-border-inner);transition:transform var(--transition-fast),box-shadow var(--transition-fast);animation:slideInRight var(--transition-base) ease-out backwards}.op-row+.op-row{margin-top:var(--space-3)}.op-row:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.op-room{font-family:var(--font-display);font-size:22px;font-weight:600;letter-spacing:-.02em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--color-foreground);min-width:48px}.op-meta{min-width:0}.op-floor{font-size:14px;font-weight:500;color:var(--color-foreground)}.op-sub{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-muted);margin-top:2px}.op-duration{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.feed{display:flex;flex-direction:column}.feed-item{position:relative;padding:var(--space-2) 0 var(--space-2) var(--space-4);border-left:2px solid var(--color-border)}.feed-item+.feed-item{margin-top:var(--space-1)}.feed-item:before{content:"";position:absolute;left:-5px;top:14px;width:8px;height:8px;border-radius:50%;background:var(--color-accent)}.feed-item:before,[data-theme=dark] .feed-item:before{box-shadow:0 0 0 3px var(--color-surface)}.feed-top{display:flex;align-items:baseline;justify-content:space-between;gap:var(--space-3)}.feed-actor{font-size:13px;font-weight:600;color:var(--color-foreground)}.feed-time{font-size:11px;color:var(--color-text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;flex-shrink:0}.feed-msg{font-size:13px;line-height:1.45;color:var(--color-text-secondary);margin-top:1px}.dash-empty{text-align:center;padding:var(--space-10) var(--space-5);display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.dash-empty,.dash-empty svg{color:var(--color-text-muted)}.dash-empty svg{opacity:.7}.dash-loading{display:flex;align-items:center;justify-content:center;gap:12px;padding:var(--space-20);color:var(--color-text-secondary)}.dash-metrics .kpi:first-child{animation-delay:0s}.dash-metrics .kpi:nth-child(2){animation-delay:60ms}.dash-metrics .kpi:nth-child(3){animation-delay:.12s}.dash-metrics .kpi:nth-child(4){animation-delay:.18s}@media (prefers-reduced-motion:reduce){.dash-hero,.kpi,.op-row,.panel{animation:none}}.hotel-switch{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:var(--radius-sm);background:var(--color-surface-muted)}.hotel-switch select{background:transparent;border:0;font:inherit;font-size:13px;font-weight:500;color:var(--color-foreground);cursor:pointer;max-width:160px}.user-menu{display:inline-flex;align-items:center;gap:6px;margin-left:var(--space-1)}.user-avatar{width:32px;height:32px;border-radius:var(--radius-full);display:grid;place-items:center;background:var(--color-primary);color:var(--color-on-primary);font-weight:700;font-size:13px;font-family:Poppins,sans-serif}.icon-btn{width:36px;height:36px;display:grid;place-items:center;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);cursor:pointer;transition:all var(--transition-fast)}.icon-btn:hover{background:var(--color-surface-muted);color:var(--color-foreground)}@media (max-width:860px){.hotel-switch select{max-width:110px}}.login-page{min-height:100vh;display:grid;place-items:center;padding:var(--space-6);background:var(--color-background)}.login-card{width:min(400px,100%);display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-8);text-align:center}.login-logo{width:56px;height:56px;border-radius:var(--radius-lg);display:grid;place-items:center;margin:0 auto var(--space-1);background:var(--color-primary);color:var(--color-on-primary);box-shadow:var(--shadow-md)}.login-title{font-size:24px;margin:0}.login-error{background:var(--color-destructive-light);color:var(--color-destructive);padding:10px 12px;border-radius:var(--radius-md);font-size:13px;font-weight:500}.settings-tabs{display:flex;gap:var(--space-1);flex-wrap:wrap;margin-bottom:var(--space-6);border-bottom:1px solid var(--color-border)}.settings-tab{display:inline-flex;align-items:center;gap:8px;padding:10px 14px;background:transparent;color:var(--color-text-secondary);font-weight:600;font-size:14px;cursor:pointer;border:0;border-bottom:2px solid transparent;border-radius:var(--radius-sm) var(--radius-sm) 0 0;transition:all var(--transition-fast)}.settings-tab:hover{color:var(--color-foreground);background:var(--color-surface-muted)}.settings-tab.active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.settings-stack{display:grid;grid-gap:var(--space-4);gap:var(--space-4)}.settings-form{display:flex;gap:var(--space-3);align-items:flex-end;flex-wrap:wrap}.settings-form .field{flex:1 1;min-width:140px}.settings-list{display:grid;grid-gap:var(--space-2);gap:var(--space-2);margin-top:var(--space-4)}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.settings-row-actions{display:flex;align-items:center;gap:var(--space-2);flex-shrink:0}.checklist-edit-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:var(--space-3);gap:var(--space-3);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface)}.checklist-edit-input{width:100%;min-height:40px;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:0 var(--space-3);font-size:14px;background:var(--color-surface);color:var(--color-foreground)}.checklist-edit-input:focus{outline:none;border-color:var(--color-primary)}@media (max-width:640px){.settings-form .field{min-width:100%}.settings-form>button{width:100%}}.input-affix{display:flex;align-items:stretch}.input-affix input{flex:1 1;min-width:0;border-radius:var(--radius-md) 0 0 var(--radius-md)}.input-affix-suffix{display:inline-flex;align-items:center;padding:0 14px;border:1px solid var(--color-border);border-left:0;border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--color-surface-muted);color:var(--color-text-muted);font-size:14px;font-weight:600;white-space:nowrap;cursor:not-allowed;-webkit-user-select:none;-moz-user-select:none;user-select:none}.notif-bell{position:relative}.notif-badge{position:absolute;top:-2px;right:-2px;background:var(--color-destructive);color:#fff;font-size:10px;font-weight:700;min-width:16px;height:16px;border-radius:var(--radius-full);display:grid;place-items:center;padding:0 4px}.notif-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:min(360px,calc(100vw - 32px));max-height:420px;overflow-y:auto;z-index:50;padding:0}.notif-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--color-border);position:-webkit-sticky;position:sticky;top:0;background:var(--color-surface);border-radius:var(--radius-xl) var(--radius-xl) 0 0}.notif-list{display:flex;flex-direction:column}.notif-item{padding:12px 16px;border-bottom:1px solid var(--color-border-light)}.notif-item.unread{background:var(--color-info-light)}.assign-modal{width:min(640px,100%);text-align:left}.assign-floors{display:grid;grid-gap:var(--space-5);gap:var(--space-5);max-height:52vh;overflow-y:auto;padding-right:4px}.assign-floor-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-2)}.assign-floor-all{min-height:32px;padding:4px 12px;font-size:12px}.assign-floor .room-grid{grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:var(--space-2)}.assign-tile{min-height:58px;border-radius:var(--radius-md);border:2px solid var(--color-border);background:var(--color-surface);cursor:pointer;font-weight:700;font-size:18px;font-family:Poppins,sans-serif;color:var(--color-foreground);transition:transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast),color var(--transition-fast)}.assign-tile:hover{border-color:var(--color-primary-light);transform:translateY(-1px)}.assign-tile.selected{border-color:var(--color-primary);background:var(--color-primary);color:var(--color-on-primary)}.reassign-select,.staff-role-select{max-width:100%;min-height:34px;padding:4px 8px;border:1px solid var(--color-border);border-radius:var(--radius-sm);color:var(--color-foreground);background:var(--color-surface);font:inherit;font-size:13px}.reassign-select:disabled{opacity:.6}@media (max-width:720px),(pointer:coarse){.reassign-select,.staff-role-select{min-height:44px;font-size:16px}}