:root{color-scheme:light;--app-bg: #f1f1f1;--surface: #ffffff;--surface-sunken: #f1f1f1;--surface-hover: #f0ebd2;--surface-translucent: rgb(255 255 255 / .96);--text-primary: #181818;--text-secondary: #616b63;--text-tertiary: #949494;--text-inverse: #ffffff;--text-disabled: #9ba6aa;--border-subtle: #e0e7ea;--border-default: #c8c8c8;--border-strong: #9ba6aa;--border-focus: #829c70;--brand: #3f5242;--brand-hover: #616b63;--brand-fg: #ffffff;--brand-ink: #3f5242;--brand-panel: #3f5242;--brand-subtle: #f0ebd2;--brand-accent: #616b63;--sage: #829c70;--success-fg: #3f5242;--success-bg: #f0ebd2;--success-border: #aed095;--success-solid: #829c70;--warning-fg: #5f3e02;--warning-bg: #fbf3e0;--warning-border: #e4a201;--warning-solid: #a96404;--warning-fill: #8c4b02;--danger-fg: #8e030f;--danger-bg: #fef1ee;--danger-border: #fe8f7d;--danger-solid: #ba0517;--danger-hatch: rgb(186 5 23 / .1);--info-fg: #3f5242;--info-bg: #f1f1f1;--info-border: #829c70;--info-solid: #616b63;--sidebar-bg: #3f5242;--sidebar-fg: #f0ebd2;--sidebar-fg-muted: #aed095;--sidebar-fg-strong: #ffffff;--sidebar-border: rgb(255 255 255 / .1);--sidebar-item-hover: rgb(255 255 255 / .07);--sidebar-item-active: #616b63;--sidebar-item-active-fg: #ffffff;--sidebar-rail: #f0ebd2;--chart-track: #e0e7ea;--chart-fill: #829c70;--chart-grid: #c8c8c8;--overlay: rgb(24 24 24 / .58);--focus-glow: rgb(130 156 112 / .25);--shadow-sm: 0 1px 2px rgb(24 24 24 / .08);--shadow-md: 0 4px 14px rgb(24 24 24 / .12);--shadow-lg: 0 18px 48px rgb(24 24 24 / .24);--radius-sm: 4px;--radius: 8px;--radius-lg: 16px;--radius-xl: 24px;--radius-pill: 999px;--font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--text-2xs: 11px;--text-xs: 12px;--text-sm: 13px;--text-base: 14px;--text-md: 16px;--text-lg: 18px;--text-xl: 20px;--text-2xl: 24px;--text-3xl: 32px;--text-display: clamp(42px, 5vw, 64px);--text-display-sm: clamp(30px, 3.5vw, 44px);--leading-tight: 1.25;--leading-normal: 1.5;--leading-relaxed: 1.6;--tracking-wide: .04em;--tracking-tight: -.01em;--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;--control-height: 36px;--control-height-sm: 30px;--control-height-lg: 44px;--control-height-xl: 52px;--row-height: 48px;--toolbar-height: 72px;--badge-height: 22px;--page-gutter: 32px;--header-height: 64px;--global-header-height: 64px;--sidebar-width: 112px;--motion-fast: .14s;--motion-base: .18s;--motion-slow: .42s;--ease: cubic-bezier(.2, 0, .2, 1);--z-sticky: 20;--z-header: 30;--z-header-global: 31;--z-drawer-backdrop: 39;--z-drawer: 40;--z-popover: 80;--z-modal: 100;--z-toast: 200;--green: var(--brand);--green-hover: var(--brand-hover);--mid: var(--text-secondary);--ink: var(--text-primary);--canvas: var(--app-bg);--paper: var(--surface);--line: var(--border-default);--line-strong: var(--border-strong);--accent: var(--brand-accent);--surface-muted: var(--surface-sunken);--surface-green: var(--surface-hover);--danger: var(--danger-solid);--danger-soft: var(--danger-bg);--amber: var(--warning-solid);--amber-soft: var(--warning-bg);--info: var(--info-solid);font-family:var(--font-sans);font-synthesis:none;color:var(--text-primary);background:var(--app-bg)}*{box-sizing:border-box;font-variant-numeric:tabular-nums}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.admin-layout{min-height:100vh;display:flex}.sidebar{flex:none;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column}.brand strong{font-size:var(--text-md);color:var(--sidebar-fg-strong)}.brand span{font-size:var(--text-sm);margin-top:4px}.sidebar nav{display:flex;flex-direction:column;overflow-y:auto}.sidebar nav a{border-left:3px solid transparent;display:flex;align-items:center;text-decoration:none}.sidebar svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.main-column{min-width:0;flex:1}.page-header{display:flex;justify-content:space-between}.page-header h1{line-height:1.25}.page-header p{margin:4px 0 0}.branch-select{position:relative}.outline-button,.primary-button{border:1px solid var(--mid)}.branch-select>.outline-button{display:flex;align-items:center;gap:10px;background:var(--canvas);white-space:nowrap}.branch-select small{color:var(--mid);font-size:var(--text-sm)}.branch-menu{position:absolute;right:0;z-index:var(--z-header);border:1px solid var(--mid)}.branch-menu button{width:100%;border-bottom:1px solid var(--border-default);display:flex}.branch-menu small{margin-left:16px}.toolbar{display:flex;align-items:center;justify-content:space-between}.toolbar>div{display:flex;flex-direction:column}.table-head,.table-row{display:grid;align-items:center;gap:20px;border-bottom:1px solid var(--line)}.table-row>div:first-child{display:flex;flex-direction:column;min-width:0}.table-row strong{font-weight:500}.table-row small{font-size:var(--text-sm);color:var(--mid);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:3px}.branch-table .table-head,.branch-table .table-row{grid-template-columns:minmax(260px,1.7fr) minmax(130px,.8fr) 100px 110px 140px}.employee-table .table-head,.employee-table .table-row{grid-template-columns:minmax(230px,1.3fr) 150px minmax(160px,1fr) 130px 170px}.row-actions{display:flex!important;flex-direction:row!important}.row-actions button{text-underline-offset:3px}.danger-link{color:var(--danger)}.badge{display:inline-flex;width:max-content;align-items:center}.date-note{display:block!important}.pagination{display:flex;align-items:center;justify-content:flex-end;gap:16px}.pagination button{border:1px solid var(--mid)}.screen-state,.empty-state,.error-state,.forbidden{text-align:center}.empty-state p,.error-state p{margin:8px auto 18px}.forbidden span{font-family:var(--font-mono);font-size:var(--text-base)}.forbidden h1{color:var(--brand-ink);margin:8px}.forbidden p{margin:0}.error-state .outline-button{margin-top:10px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center;padding:24px}.modal{width:min(620px,100%);max-height:calc(100vh - 48px);overflow:auto}.modal>header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.modal h2{margin:0}.modal>header button{border:0;background:none;font-size:var(--text-2xl);font-weight:400}.modal-body{padding:22px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.form-field{display:flex;flex-direction:column}.form-field:has(textarea),.form-field:has(.checkbox-list){grid-column:1/-1}.form-field input,.form-field textarea,.form-field select{width:100%;padding:10px 11px;font-weight:400}.form-field input,.form-field select{height:var(--control-height-lg)}.currency-input{position:relative;width:100%}.currency-input>span{position:absolute;z-index:1;left:11px;top:50%;translate:0 -50%;color:var(--mid);font-weight:500;pointer-events:none}.form-field .currency-input input,.extra-row .currency-input input{padding-left:38px}.field-error,.inline-error,.form-errors{color:var(--danger);font-size:var(--text-sm);font-weight:500}.form-errors{display:grid;gap:4px}.form-grid>.form-errors,.report-filters>.form-errors,.note-composer>.form-errors{grid-column:1 / -1}.form-errors p{margin:0;color:inherit}.check-field{display:flex;align-items:center;gap:8px;font-size:var(--text-base)}.checkbox-list{border:1px solid var(--line);background:var(--paper)}.checkbox-list label{min-height:42px;display:grid;grid-template-columns:22px 1fr auto;column-gap:12px;align-items:center;padding:0 14px;border-bottom:1px solid var(--border-default)}.checkbox-list label:last-child{border:0}.checkbox-list small{color:var(--mid)}.modal-actions{border-top:1px solid var(--line);display:flex;justify-content:flex-end}.toast-area{position:fixed;right:24px;bottom:24px;z-index:var(--z-toast);display:flex;flex-direction:column;gap:8px}.toast{padding:13px 16px;font-size:var(--text-base)}.login-page{min-height:100vh;display:grid}.login-intro{display:flex;flex-direction:column;justify-content:space-between}.login-intro h1{line-height:1}.login-intro div>p:last-child{max-width:410px;line-height:1.5}.login-intro small{color:var(--sage)}.login-panel{display:flex;align-items:center;justify-content:center}.login-panel form{display:flex;flex-direction:column;gap:18px}.login-heading h2{margin:10px 0 6px}.login-heading p{margin:0 0 18px;color:var(--mid)}.login-panel label{display:flex;flex-direction:column;gap:8px;font-size:var(--text-base);font-weight:500}.login-panel input{padding:0 13px}.inline-error{padding:0;background:transparent;border:0;white-space:pre-line}.login-submit{margin-top:2px}.dashboard{padding:28px 32px}.foundation-strip{display:grid;grid-template-columns:1fr 1.2fr;gap:32px;padding:24px;background:var(--paper);border:1px solid var(--line)}.foundation-strip div{display:flex;flex-direction:column;gap:7px}.foundation-strip small,.deferred-note small{font-family:var(--font-mono);color:var(--mid);font-size:var(--text-xs);letter-spacing:.08em}.foundation-strip strong{font-size:var(--text-xl)}.foundation-strip p{margin:0;color:var(--mid);line-height:1.6}.section-heading h2{font-size:var(--text-xl)}.section-heading p{margin:4px 0 0;color:var(--mid);font-size:var(--text-base)}.module-list a{min-height:76px;display:grid;grid-template-columns:50px 1fr 30px;align-items:center;text-decoration:none;border-bottom:1px solid var(--line)}.module-list>a>span{font-family:var(--font-mono);color:var(--mid)}.module-list div{display:flex;flex-direction:column}.module-list p{font-size:var(--text-base);color:var(--mid);margin:3px 0}.module-list b{font-size:var(--text-xl)}.deferred-note{margin-top:34px;border-left:3px solid var(--amber);padding:4px 0 4px 16px;max-width:760px}.deferred-note p{line-height:1.55;color:var(--mid);margin:8px 0}.mobile-shell{min-height:100vh;margin:auto;display:flex;flex-direction:column}.mobile-shell>header{display:flex;align-items:center;justify-content:space-between}.mobile-shell>header div{display:flex;flex-direction:column}.mobile-shell main{flex:1}.mobile-shell main>p:not(.eyebrow){color:var(--mid);line-height:1.5}.mobile-message{margin-top:34px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:22px 0}.mobile-message p{color:var(--mid);font-size:var(--text-base)}.mobile-shell nav{align-items:center}.mobile-shell nav span{font-size:var(--text-sm);color:var(--mid)}.mobile-shell nav .active{color:var(--brand-ink);font-weight:600}.toolbar-actions{display:flex!important;flex-direction:row!important}.toolbar-actions select,.toolbar-actions input{padding:0 11px}.link-button{display:inline-flex;align-items:center;justify-content:center}.mono{font-family:var(--font-mono)}.muted{color:var(--mid)}.settings-head,.settings-row,.room-list-head,.room-list-row,.reservation-list-head,.reservation-list-row,.tenant-list-head,.tenant-list-row{display:grid;align-items:center;gap:18px;border-bottom:1px solid var(--line)}.settings-head,.settings-row{grid-template-columns:90px minmax(220px,1.3fr) 180px 100px 60px}.settings-row>div,.tenant-list-row>div{display:flex;flex-direction:column}.settings-row small,.tenant-list-row small{color:var(--mid);margin-top:3px}.room-list-head,.room-list-row{margin:0 32px}.room-list-row>div{display:flex;gap:8px;align-items:center}.room-list-row a,.reservation-list-row a,.tenant-list-row a{text-underline-offset:3px}.detail-page,.detail-hero,.detail-columns,.invoice-section{margin-left:32px;margin-right:32px}.detail-top,.detail-hero{border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-end;gap:24px}.detail-top h2,.detail-hero h2{font-size:var(--text-3xl);margin:12px 0 3px}.detail-top p,.detail-hero p{margin:0;color:var(--mid)}.detail-grid,.detail-columns{display:grid;grid-template-columns:1fr 1fr}.detail-grid h3,.detail-section h3,.invoice-section h3{margin:0;font-size:var(--text-lg)}.detail-grid dl,.detail-section dl{margin:18px 0}.detail-grid dl>div,.detail-section dl>div{display:flex;justify-content:space-between;gap:24px;padding:11px 0;border-bottom:1px solid var(--line)}dt{color:var(--mid)}dd{margin:0;text-align:right}.section-title{display:flex;justify-content:space-between;align-items:center}.upload-button{position:relative;overflow:hidden}.upload-button input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.room-gallery-hint{margin:5px 0 0;color:var(--mid);font-size:var(--text-sm);line-height:1.4}.room-upload-progress{margin:14px 0 0;padding:10px 12px;border:1px solid var(--line);background:var(--paper);color:var(--mid);font-size:var(--text-sm)}.room-photo-list{display:grid;gap:12px;margin-top:18px}.room-photo-card{display:grid;grid-template-columns:116px minmax(110px,1fr);gap:14px;padding:10px;border:1px solid var(--line);background:var(--paper)}.room-photo-preview{position:relative;grid-row:span 2;min-height:86px;background:var(--canvas);overflow:hidden}.room-photo-preview img,.room-photo-loading{display:block;width:100%;height:100%;min-height:86px;object-fit:cover}.room-photo-preview>span{position:absolute;left:7px;top:7px;padding:4px 7px;background:var(--brand-panel);color:var(--brand-fg);font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.06em;text-transform:uppercase}.room-photo-meta{min-width:0;align-self:end;display:flex;flex-direction:column;gap:3px}.room-photo-meta small{overflow:hidden;color:var(--mid);text-overflow:ellipsis;white-space:nowrap}.room-photo-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.room-photo-actions .outline-button{min-height:32px;padding:5px 9px}.room-photo-actions .room-cover-button{min-width:112px}.room-photo-delete{min-height:32px;padding:5px 7px;border:0;background:none;color:var(--danger);text-decoration:underline}.room-photo-delete:disabled{opacity:.45}.photo-list{margin-top:18px}.photo-list>div{min-height:58px;display:grid;grid-template-columns:72px 60px 1fr 60px;align-items:center;border-bottom:1px solid var(--line)}.photo-list img{width:58px;height:46px;object-fit:cover;border:1px solid var(--line)}.photo-list span{font-family:var(--font-mono);font-size:var(--text-2xs)}.photo-list button{border:0;background:none;text-decoration:underline;color:var(--danger)}.detail-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.detail-section header,.invoice-section>header{padding-bottom:14px;border-bottom:1px solid var(--line)}.detail-section>a{font-size:var(--text-base)}.money-row{display:flex;justify-content:space-between;align-items:center;min-height:58px;border-bottom:1px solid var(--line)}.money-row span{display:flex;flex-direction:column}.money-row small{color:var(--mid)}.cancellation-note{border-left:3px solid var(--danger);padding-left:12px;display:flex;flex-direction:column;color:var(--mid)}.invoice-section header p{margin:4px 0 0;color:var(--mid);font-size:var(--text-base)}.invoice-list>div{display:grid;grid-template-columns:1fr 1fr 160px 110px;gap:16px;align-items:center;min-height:60px;border-bottom:1px solid var(--line);font-size:var(--text-base)}.invoice-list>div>span:nth-child(2){color:var(--mid)}.reservation-list-head,.reservation-list-row{grid-template-columns:160px minmax(160px,1fr) 75px minmax(200px,1.2fr) 150px 115px 55px}.tenant-list-head,.tenant-list-row{grid-template-columns:minmax(230px,1.4fr) 170px minmax(120px,.8fr) 90px 55px}.tenant-toolbar input{min-width:240px}.occupancy-strip{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.occupancy-strip>div{min-height:128px;padding:20px;border-right:1px solid var(--line);display:flex;flex-direction:column}.occupancy-strip>div:last-child{border:0}.occupancy-strip small,.review-grid small,.selected-record small{font-family:var(--font-mono);font-size:var(--text-2xs);letter-spacing:.06em;color:var(--mid)}.occupancy-strip strong{font-family:var(--font-mono);font-size:var(--text-3xl);margin:9px 0 4px}.occupancy-strip span{font-size:var(--text-sm);color:var(--mid)}.availability-toolbar input{width:148px}.availability-view-switch{height:var(--control-height-lg);display:inline-flex;border:1px solid var(--mid);border-radius:var(--radius-sm);overflow:hidden}.availability-view-switch button{min-width:82px;border:0;border-right:1px solid var(--mid);background:var(--canvas);padding:0 12px;color:var(--mid);font-weight:600}.availability-view-switch button:last-child{border-right:0}.availability-view-switch button.active{background:var(--green);color:var(--brand-fg)}.availability-board{overflow-x:auto}.availability-head,.availability-row{display:grid;grid-template-columns:150px minmax(900px,1fr)}.availability-year-view .availability-head,.availability-year-view .availability-row{grid-template-columns:150px minmax(1050px,1fr)}.availability-year-view .availability-days span{min-width:86px;letter-spacing:.04em}.availability-head{position:sticky;top:0;z-index:3;background:var(--green);color:var(--brand-fg)}.availability-room-label{min-height:50px;padding:8px 12px;border-right:1px solid var(--line);display:flex;flex-direction:column;justify-content:center}.availability-room-label small{color:var(--mid);margin-top:2px}.availability-head .availability-room-label{color:var(--sage);font-size:var(--text-xs);font-weight:600}.availability-days{display:grid;grid-auto-flow:column;grid-auto-columns:1fr}.availability-days span{display:flex;align-items:center;justify-content:center;border-right:1px solid var(--mid);font-family:var(--font-mono);font-size:var(--text-2xs)}.availability-row{min-height:64px;border-bottom:1px solid var(--line);content-visibility:auto;contain-intrinsic-size:64px}.availability-track{position:relative;min-height:64px;cursor:crosshair;background-image:linear-gradient(to right,var(--line) 1px,transparent 1px);background-size:calc(100% / 31) 100%}.availability-track.maintenance{cursor:not-allowed;background-color:var(--surface-sunken);background-image:repeating-linear-gradient(135deg,transparent,transparent 8px,var(--danger-hatch) 8px,var(--danger-hatch) 16px)}.maintenance-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;padding-left:14px;color:var(--danger);font-weight:600}.reservation-bar{position:absolute;top:10px;height:44px;z-index:2;min-width:35px;background:var(--green);color:var(--brand-fg);border-left:3px solid var(--sage);padding:5px 8px;text-decoration:none;overflow:hidden;display:flex;flex-direction:column;white-space:nowrap}.reservation-bar.expiring{background:var(--warning-fill);border-left-color:var(--warning-border)}.reservation-bar b{font-size:var(--text-xs);overflow:hidden;text-overflow:ellipsis}.reservation-bar small{font-size:var(--text-2xs);color:var(--sage)}.reservation-form{max-width:960px;margin:28px auto;padding:0 32px}.stepper{list-style:none;margin:0 0 22px;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.stepper li{padding:0 12px;display:flex;align-items:center;gap:8px;border-right:1px solid var(--line);font-size:var(--text-sm);color:var(--mid)}.stepper li:last-child{border:0}.stepper li span{width:25px;height:25px;border:1px solid var(--mid);border-radius:50%;display:grid;place-items:center;font-family:var(--font-mono);font-size:var(--text-2xs)}.stepper li.active span,.stepper li.done span{border-color:var(--sage)}.form-panel{border:1px solid var(--line)}.form-panel>header{padding:22px;border-bottom:1px solid var(--line)}.form-panel>header h2{margin:0}.form-panel>header p{margin:5px 0 0;color:var(--mid);font-size:var(--text-base)}.form-panel>.tenant-search,.form-panel>.search-results,.form-panel>.selected-record,.form-panel>.review-grid,.form-panel>.invoice-preview,.form-panel>.availability-conflict,.form-panel>.field-error,.form-panel>.form-subheading,.form-panel>.extra-heading,.form-panel>.extra-row{margin-left:22px;margin-right:22px}.form-panel>.form-grid{padding:22px 0}.availability-conflict{padding:0;background:transparent;border:0;color:var(--danger);font-weight:500;margin-bottom:22px;white-space:pre-line}.tenant-search{padding-top:22px;display:flex;gap:8px}.tenant-search input{height:var(--control-height-lg);flex:1;border:1px solid var(--mid);background:var(--canvas);padding:0 12px}.search-results{border:1px solid var(--line);border-top:0}.search-results button{width:100%;min-height:55px;padding:8px 12px;border:0;border-bottom:1px solid var(--line);background:var(--canvas);display:flex;flex-direction:column;text-align:left}.search-results button:hover{background:var(--surface-hover)}.search-results span{font-size:var(--text-xs);color:var(--mid)}.selected-record{margin-top:22px;padding:16px;border:1px solid var(--mid);display:grid;grid-template-columns:1fr auto;gap:4px}.selected-record small,.selected-record strong,.selected-record span{grid-column:1}.selected-record-actions{grid-column:2;grid-row:1/4;display:flex;flex-direction:column;justify-content:center;align-items:flex-end;gap:8px}.selected-record-actions button{border:0;background:none;text-decoration:underline}.inline-notice{margin-top:12px;border-left:3px solid var(--accent);background:var(--surface-hover);padding:11px 13px;color:var(--ink);font-size:var(--text-sm);line-height:1.5}.form-subheading{font-size:var(--text-md);margin-top:24px;margin-bottom:0;padding-top:18px;border-top:1px solid var(--line)}.extra-heading{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:18px}.extra-heading h3{font-size:var(--text-md)}.extra-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) minmax(130px,.65fr) minmax(120px,.55fr) 40px;gap:10px;margin-bottom:10px;align-items:stretch}.extra-row input,.extra-row select{height:42px;width:100%;min-width:0;max-width:100%;box-sizing:border-box;border:1px solid var(--mid);background:var(--canvas);padding:0 8px}.extra-row .currency-input,.extra-row .currency-input input{height:42px;width:100%;min-width:0;max-width:100%;box-sizing:border-box}.extra-row button{width:40px;min-height:42px;border:0;background:none;font-size:var(--text-2xl);display:inline-flex;align-items:center;justify-content:center;padding:0}.review-grid{display:grid;grid-template-columns:repeat(3,1fr);padding:22px 0}.review-grid>div{padding:0 18px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:5px}.review-grid>div:first-child{padding-left:0}.review-grid>div:last-child{border:0}.invoice-preview{border-top:1px solid var(--line);margin-bottom:22px}.invoice-preview>div{min-height:48px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between}.form-navigation{padding:16px 22px;border-top:1px solid var(--line);display:flex;justify-content:space-between}.tenant-profile{grid-template-columns:.8fr 1.2fr}.history-row{min-height:63px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr 80px;align-items:center;gap:14px;text-decoration:none}.history-row>span:first-child{display:flex;flex-direction:column}.history-row small{color:var(--mid)}.history-row b{text-align:right;font-size:var(--text-xs)}.history-row:hover{background:var(--surface-hover)}@media(max-width:960px){.brand strong{font-size:var(--text-sm)}.brand span,.sidebar nav a span{display:none}.employee-table .table-head,.employee-table .table-row,.branch-table .table-head,.branch-table .table-row{grid-template-columns:1.4fr 1fr 100px}.table-head>*:nth-child(4),.table-row>*:nth-child(4){display:none}.employee-table .table-head>*:nth-child(3),.employee-table .table-row>*:nth-child(3){display:none}.row-actions{min-width:130px}.login-intro{display:none}.occupancy-strip{grid-template-columns:1fr 1fr}.reservation-list-head,.reservation-list-row{min-width:980px}.detail-columns,.detail-grid,.tenant-profile{grid-template-columns:1fr}.extra-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}.extra-row>button{grid-column:1 / -1;justify-self:end}.review-grid{grid-template-columns:1fr}.review-grid>div{padding:12px 0;border-right:0;border-bottom:1px solid var(--line)}}@media(max-width:700px){.sidebar{height:62px}.brand{border:0}.brand span{display:block}.main-column{margin:0}.toolbar{align-items:flex-start;flex-direction:column}.toolbar-actions{width:100%;flex-wrap:wrap}.toolbar-actions input,.toolbar-actions select{max-width:100%;flex:1}.table-head{display:none}.table-row{display:flex;align-items:flex-start;flex-wrap:wrap;gap:8px;padding:14px 0}.table-row>div:first-child{width:100%}.table-row>span{margin-right:12px}.row-actions{margin-left:auto}.form-grid{grid-template-columns:1fr}.form-field{grid-column:1}.modal-backdrop{padding:10px}.dashboard{padding:20px 18px}.foundation-strip,.occupancy-strip{grid-template-columns:1fr}.occupancy-strip>div{border-right:0;border-bottom:1px solid var(--line)}.toast-area{left:18px;right:18px}.detail-page,.detail-hero,.detail-columns,.invoice-section{margin-left:18px;margin-right:18px}.detail-hero,.detail-top{align-items:flex-start;flex-direction:column}.invoice-list>div{grid-template-columns:1fr auto;padding:10px 0}.reservation-form{padding:0 18px}.stepper{grid-template-columns:1fr 1fr}.stepper li{font-size:var(--text-2xs)}.availability-view-switch{width:100%}.availability-view-switch button{flex:1}.tenant-toolbar input{min-width:100%}}@media(prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}.filter-row,.tabs,.toolbar-actions,.section-heading,.section-heading>div:last-child,.ticket-meta,.row-actions{display:flex;align-items:center;gap:10px}.filter-row{border-bottom:1px solid var(--line);flex-wrap:wrap}.filter-row label{display:flex;align-items:center;gap:7px;font-size:var(--text-xs)}.tabs{margin-right:auto}.tabs button{padding:9px 14px;border:0;border-bottom:2px solid transparent;background:transparent}.tabs button.active{border-color:var(--brand-ink);font-weight:600}.payment-list-head,.payment-list-row{display:grid;grid-template-columns:minmax(190px,1.4fr) 1.2fr .8fr .8fr .7fr minmax(120px,auto);gap:16px;align-items:center;padding:13px 16px}.payment-list-row{border-top:1px solid var(--line)}.payment-list-row>span:first-child,.compact-row>span,.notification-list>div>span:first-child{display:flex;flex-direction:column;gap:4px}.payment-list-row small,.compact-row small,.notification-list small{color:var(--text-secondary)}.row-actions{justify-content:flex-end}.row-actions button,.row-actions a,.notification-list button{border:0;background:transparent;text-decoration:underline;font-size:var(--text-xs)}.payment-modal textarea{min-height:88px}.ticket-board{display:grid;grid-template-columns:repeat(3,minmax(230px,1fr));gap:16px;align-items:start}.ticket-column{border-top:3px solid var(--green);min-height:280px}.ticket-column.diproses{border-color:var(--amber)}.ticket-column.selesai{border-color:var(--sage)}.ticket-column>header{padding:13px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between}.ticket-column h3{margin:0}.ticket-card{width:calc(100% - 20px);margin:10px;padding:14px;border:1px solid var(--line);text-align:left;display:flex;flex-direction:column;gap:7px}.ticket-card small{font:11px var(--font-mono);color:var(--mid)}.ticket-card footer{padding-top:9px;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:var(--text-2xs)}.ticket-meta{font:12px var(--font-mono)}.ticket-detail dl{display:grid;gap:8px}.ticket-detail dl div{display:grid;grid-template-columns:130px 1fr}.template-workspace{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:600px}.template-list{border-right:1px solid var(--line)}.template-list header,.template-list button{padding:16px}.template-list h3{margin:0 0 4px}.template-list button{width:100%;border:0;border-top:1px solid var(--line);background:transparent;text-align:left;display:flex;flex-direction:column;gap:4px;text-transform:capitalize}.template-list button.active{background:var(--green);color:var(--brand-fg)}.template-editor{padding:24px}.section-heading{justify-content:space-between;margin-bottom:20px}.section-heading h2{margin:4px 0}.variable-tray{display:flex;flex-wrap:wrap;align-items:center;gap:7px;margin:10px 0 18px}.variable-tray button{border:1px solid var(--sage);background:var(--surface-hover);padding:5px 7px;font:11px var(--font-mono)}.message-preview{border-left:4px solid var(--sage);padding:18px;margin:18px 0;display:flex;flex-direction:column;gap:8px}.message-preview p{white-space:pre-line}.broadcast-panel{margin-top:22px;border:1px solid var(--line);background:var(--paper)}.broadcast-panel>header{padding:22px 24px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.broadcast-panel>header h2{margin:5px 0 4px}.broadcast-panel>header p{margin:0;color:var(--mid)}.broadcast-channel{padding:6px 9px;border:1px solid var(--green);color:var(--brand-ink);font-size:var(--text-2xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em}.broadcast-content{padding:22px 24px;display:grid;grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);gap:24px}.broadcast-audiences{min-width:0;margin:0;padding:0;border:0;display:grid;gap:9px}.broadcast-audiences legend{margin-bottom:7px;font-size:var(--text-base);font-weight:500}.broadcast-audiences button{width:100%;min-height:70px;padding:12px 14px;border:1px solid var(--line);background:var(--canvas);display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left}.broadcast-audiences button.active{border-color:var(--green);background:var(--surface-hover);box-shadow:inset 3px 0 var(--green)}.broadcast-audiences button span{display:flex;flex-direction:column;gap:3px}.broadcast-audiences button small,.broadcast-message-meta small{color:var(--mid)}.broadcast-audiences button b{min-width:36px;font:20px var(--font-mono);text-align:right}.broadcast-composer textarea{resize:vertical}.broadcast-message-meta{margin-top:7px;display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.broadcast-message-meta>span{flex:none;font:11px var(--font-mono);color:var(--mid)}.broadcast-panel>.form-errors{padding:0 24px 16px}.broadcast-panel>footer{min-height:68px;padding:12px 24px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:16px}.broadcast-panel>footer>span{color:var(--mid);font-size:var(--text-sm)}.broadcast-confirmation>p:first-child{margin-top:0}.broadcast-confirmation .message-preview{margin-bottom:14px}.broadcast-warning{margin-bottom:0;color:var(--danger);font-size:var(--text-sm)}.notification-list>div{display:grid;grid-template-columns:1.3fr .5fr 1fr auto;gap:14px;align-items:center;padding:12px 16px;border-top:1px solid var(--line)}.notification-detail-modal>header{margin-bottom:14px}.notification-detail-modal>header h3{margin:4px 0 0}.notification-detail-modal dl{display:grid;margin:0}.notification-detail-modal dl>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:16px;padding:11px 0;border-bottom:1px solid var(--line)}.notification-detail-modal dl>div:last-child{border-bottom:0}.notification-detail-modal dt{color:var(--mid)}.notification-detail-modal dd{margin:0;overflow-wrap:anywhere}.crm-summary{margin:18px 28px;display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.crm-summary section{padding:16px;border-right:1px solid var(--line);display:flex;flex-direction:column;gap:5px}.crm-summary section:last-child{border:0}.crm-summary small,.eyebrow{font:11px var(--font-mono);letter-spacing:.08em}.crm-summary strong{font-size:var(--text-xl)}.note-composer{padding-bottom:16px;border-bottom:1px solid var(--line)}.timeline-list article{display:grid;grid-template-columns:12px 1fr;gap:10px;padding:12px 0}.timeline-list article>span{width:8px;height:8px;margin-top:5px;border-radius:50%;background:var(--sage)}.timeline-list p{margin:6px 0}.timeline-list small{margin-left:8px}.compact-row{padding:11px 0;border-top:1px solid var(--line)}.dashboard-alerts{margin:24px 0}.history-section{margin:18px 28px}@media(max-width:960px){.payment-list-head{display:none}.payment-list-row,.ticket-board,.crm-summary{grid-template-columns:1fr 1fr}.template-workspace{grid-template-columns:1fr}.template-list{border-right:0}.broadcast-content{grid-template-columns:1fr}}@media(max-width:700px){.notification-detail-modal dl>div{grid-template-columns:1fr;gap:4px}.broadcast-panel>header,.broadcast-panel>footer,.broadcast-message-meta{align-items:stretch;flex-direction:column}.broadcast-content,.broadcast-panel>header,.broadcast-panel>footer{padding-left:18px;padding-right:18px}.broadcast-panel>.form-errors{padding-left:18px;padding-right:18px}.ticket-board,.crm-summary,.payment-list-row{grid-template-columns:1fr}.crm-summary,.history-section{margin:18px}}.housekeeping-tabs{display:flex;gap:26px;border-bottom:1px solid var(--line)}.housekeeping-tabs button{height:52px;padding:0 2px;border:0;border-bottom:3px solid transparent;background:none;color:var(--mid)}.housekeeping-tabs button.active{color:var(--brand-ink);border-bottom-color:var(--brand-ink);font-weight:600}.housekeeping-head,.housekeeping-row{width:100%;display:grid;grid-template-columns:minmax(110px,.8fr) minmax(160px,1.2fr) minmax(150px,1fr) 120px 55px 165px 20px;gap:16px;align-items:center;border:0;border-bottom:1px solid var(--line);text-align:left}.task-series-note{display:block;margin-top:4px;color:var(--mid);font-size:var(--text-2xs)}.housekeeping-row>span:last-child{font-size:var(--text-2xl)}.rejection-note{border-color:var(--danger);background:var(--danger-bg)}.task-detail h3{margin:18px 0 4px}.task-detail>p{color:var(--mid);line-height:1.5}.task-detail dl>div{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:10px 0}.rejection-note{border-left:3px solid var(--danger);padding:12px 14px;margin:18px 0}.rejection-note p{margin:5px 0 0}.proof-grid,.manager-photo-viewer{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:18px}.proof-grid a{display:flex;flex-direction:column;gap:4px;font-size:var(--text-2xs)}.proof-grid img,.manager-photo-viewer img{width:100%;aspect-ratio:1;object-fit:cover;border:1px solid var(--line)}.branch-photo-editor>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:10px}.branch-photo-editor figure{margin:0;position:relative}.branch-photo-editor img{width:100%;aspect-ratio:4/3;object-fit:cover;border:1px solid var(--line)}.branch-photo-editor figure button{position:absolute;right:4px;bottom:7px;border:0;background:var(--paper);color:var(--danger);font-size:var(--text-2xs)}.mobile-back{text-decoration:none;font-size:var(--text-2xl);width:34px}.mobile-muted{color:var(--mid);line-height:1.5}.mobile-task-list,.compact-list{margin:22px -2px 0}.mobile-task-card{min-height:108px;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;text-decoration:none}.mobile-task-card>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.mobile-task-card strong{font-size:var(--text-xl)}.mobile-task-card p{margin:0;color:var(--mid)}.mobile-task-card>span{font-size:var(--text-2xl)}.mobile-alert{border:0;background:transparent;color:var(--danger);margin:16px 0;padding:0;font-size:var(--text-base);white-space:pre-line}.detail-hero+.form-errors{margin:12px 32px}.mobile-alert button{border:0;background:none;text-decoration:underline}.mobile-alert.rejection p{margin:5px 0 0}.mobile-loading,.mobile-empty{padding:42px 0;text-align:center;color:var(--mid)}.mobile-proof h2{font-size:var(--text-lg)}.compact-row{min-height:65px;display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid var(--line);text-decoration:none}.compact-row>span:first-child{min-width:0;display:flex;flex-direction:column;gap:3px}.compact-row small{color:var(--mid);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-task-detail>h1{margin-top:14px}.mobile-task-detail .task-type{color:var(--mid)}.mobile-task-detail dl{margin:24px 0}.mobile-task-detail dl>div{border-bottom:1px solid var(--line);padding:12px 0}.mobile-task-detail dd{text-align:left;margin-top:6px;line-height:1.45}.mobile-proof{margin-top:28px}.mobile-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.mobile-photo-grid>div{position:relative}.mobile-photo-grid img{display:block;width:100%;aspect-ratio:1;object-fit:cover}.mobile-photo-grid button{position:absolute;right:4px;bottom:4px;min-height:32px;border:0;background:var(--paper);color:var(--danger)}.camera-button{margin-top:12px;border:1px solid var(--green);display:flex;gap:9px;align-items:center;justify-content:center;font-weight:600;position:relative;overflow:hidden}.camera-button input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0}.camera-button svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.mobile-proof>small{display:block;color:var(--mid);line-height:1.4;margin-top:8px}.mobile-submit{margin-top:24px}.mobile-inspection{margin-top:28px}.mobile-inspection>header{margin-bottom:16px}.mobile-inspection>header h2{margin:4px 0 7px;font-size:var(--text-xl)}.mobile-inspection>header p:last-child{margin:0;color:var(--mid);line-height:1.45}.inspection-item-card{border-top:1px solid var(--line)}.inspection-item-title{display:grid;grid-template-columns:30px 1fr auto;align-items:center;gap:8px;margin-bottom:14px}.inspection-item-title>span{width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--line);border-radius:50%;color:var(--mid);font-size:var(--text-xs)}.inspection-item-title h3{margin:0;font-size:var(--text-md)}.inspection-item-title b{color:var(--brand-ink);font-size:var(--text-lg)}.inspection-item-card>label{display:grid;gap:6px;margin:10px 0;color:var(--mid);font-size:var(--text-xs);font-weight:600}.inspection-item-card select,.inspection-item-card textarea{width:100%;min-height:46px;padding:10px 12px;color:var(--ink);font:inherit}.inspection-item-card textarea{min-height:70px;resize:vertical}.manager-inspection-list>article{padding:15px 0;border-top:1px solid var(--line)}.manager-inspection-list>article>header{display:flex;justify-content:space-between;gap:12px;margin-bottom:9px}.manager-inspection-list>article>p{color:var(--mid);line-height:1.45}.reservation-inspection-section{margin:28px 32px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.reservation-inspection-section>header{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}.reservation-inspection-section>header h3{margin:4px 0 6px;font-size:var(--text-xl)}.reservation-inspection-section>header p{margin:0;color:var(--mid)}.inspection-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.inspection-empty{padding:30px;border:1px dashed var(--line);text-align:center}.inspection-empty p{max-width:620px;margin:7px auto 0;color:var(--mid)}.inspection-stage-summary{display:grid;grid-template-columns:1fr 1fr;gap:1px;margin-bottom:22px;background:var(--line);border:1px solid var(--line)}.inspection-stage-summary>div{min-height:86px;display:flex;flex-direction:column;gap:5px;padding:16px 18px;background:var(--paper)}.inspection-stage-summary span,.inspection-stage-summary small{color:var(--mid)}.inspection-comparison{min-width:0}.inspection-comparison-head,.inspection-comparison-row{display:grid;grid-template-columns:minmax(130px,.6fr) minmax(240px,1fr) minmax(240px,1fr);gap:18px;padding:14px 0;border-bottom:1px solid var(--line)}.inspection-comparison-head{color:var(--mid);font-size:var(--text-xs)}.inspection-comparison-row>strong{padding-top:5px}.inspection-snapshot{min-width:0}.inspection-photo-strip{display:flex;gap:7px;min-height:76px;margin-bottom:8px}.inspection-photo-strip img{width:76px;height:76px;display:block;object-fit:cover}.inspection-not-recorded{color:var(--mid);font-size:var(--text-xs)}.inspection-snapshot>p{margin:7px 0 0;color:var(--mid);font-size:var(--text-xs);line-height:1.4}.desktop-inspection-detail{margin-top:18px}.inspection-stage-label{font-weight:600;color:var(--brand-ink)!important}.desktop-inspection-detail>article{padding:15px 0;border-top:1px solid var(--line)}.desktop-inspection-detail>article>header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.desktop-inspection-detail>article>p{margin:9px 0 0;color:var(--mid)}@media(max-width:960px){.reservation-inspection-section{margin:22px 18px}.reservation-inspection-section>header{align-items:stretch;flex-direction:column}.inspection-actions{justify-content:flex-start}.inspection-stage-summary{grid-template-columns:1fr}.inspection-comparison{overflow-x:auto}.inspection-comparison-head,.inspection-comparison-row{min-width:680px}}.mobile-reason textarea{width:100%;padding:10px 11px}.mobile-reason{display:flex;flex-direction:column;gap:8px}.manager-photo-viewer{grid-template-columns:1fr 1fr}.mobile-reason{margin-top:22px;color:var(--danger)}.mobile-confirm-actions{display:grid;grid-template-columns:1fr 1.5fr;margin-top:24px}.mobile-confirm-actions button{min-height:52px}.mobile-embedded-form p{line-height:1.5;color:var(--mid)}@media(max-width:700px){.mobile-shell{min-height:100dvh}}.dashboard-kpi-grid,.report-summary-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr))}.dashboard-kpi,.report-fact{min-width:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:5px}.dashboard-kpi:nth-child(5n),.report-fact:last-child{border-right:0}.dashboard-kpi:nth-child(n+6){border-bottom:0}.dashboard-kpi small,.report-fact small{color:var(--mid);font-size:var(--text-xs);font-weight:600;letter-spacing:.06em}.dashboard-kpi strong,.report-fact strong{line-height:1.2}.dashboard-kpi span,.report-fact span{color:var(--mid);font-size:var(--text-sm);line-height:1.35}.dashboard-kpi.warning strong{color:var(--amber)}.dashboard-kpi.danger strong,.report-fact.danger strong{color:var(--danger)}.dashboard-columns{display:grid;grid-template-columns:1fr 1fr}.dashboard-list,.report-panel{min-width:0;border-top:1px solid var(--line)}.dashboard-list>header,.report-panel>header{display:flex;align-items:center;justify-content:space-between;gap:18px}.dashboard-list h2,.report-panel h2{margin:0}.dashboard-list header p,.report-panel header p{margin:3px 0 0;color:var(--mid);font-size:var(--text-sm)}.dashboard-list header>a{color:var(--brand-ink);font-weight:600}.dashboard-table-head,.dashboard-table-row{display:grid;grid-template-columns:minmax(180px,1fr) 80px 130px 140px;gap:14px;align-items:center}.dashboard-table-head{padding:0 20px}.dashboard-table-row{min-height:62px;padding:10px 20px 10px 17px;border-bottom:1px solid var(--line);border-left:3px solid transparent;color:var(--ink);text-decoration:none}.dashboard-table-row.danger{border-left-color:var(--danger)}.dashboard-table-row>span:first-child,.activity-row>span,.report-table td:first-child{display:flex;flex-direction:column;min-width:0}.dashboard-table-row small,.activity-row small,.report-table td small{margin-top:3px;color:var(--mid);font-size:var(--text-xs);display:block;overflow-wrap:anywhere}.dashboard-table-row>span:last-child{text-align:right;font-family:var(--font-mono);font-weight:600}.activity-row{min-height:58px;padding:10px 20px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid var(--line)}.activity-row time,.dashboard-generated{color:var(--mid);font-size:var(--text-xs)}.dashboard-generated{margin:18px 2px 0;text-align:right}.phase5-dashboard .compact-row{padding:12px 20px}.report-tabs{display:flex;gap:28px;border-bottom:1px solid var(--line)}.report-tabs button{min-height:48px;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--mid);font-size:var(--text-md);font-weight:500}.report-tabs button.active{border-bottom-color:var(--brand-ink);color:var(--brand-ink);font-weight:600}.report-filters{display:flex;align-items:end;flex-wrap:wrap;gap:12px;border-bottom:1px solid var(--line)}.report-period-shortcuts{flex:1 0 100%;min-width:0;margin:0;border:0;padding:0}.report-period-shortcuts legend{margin-bottom:7px;padding:0;color:var(--mid);font-size:var(--text-xs);font-weight:600}.report-period-shortcut-buttons{display:flex;flex-wrap:wrap;gap:8px}.report-filters .report-period-shortcut-buttons button{min-height:var(--control-height);border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--paper);padding:0 16px;color:var(--mid);font-weight:600}.report-filters .report-period-shortcut-buttons button:hover{border-color:var(--brand-ink);color:var(--brand-ink)}.report-filters .report-period-shortcut-buttons button.active{border-color:var(--brand-ink);background:var(--brand-ink);color:#fff}.report-filters label{display:flex;flex-direction:column;gap:6px;min-width:150px;color:var(--mid);font-size:var(--text-xs);font-weight:600}.report-filters input,.report-filters select{min-height:42px;border:1px solid var(--mid);border-radius:var(--radius-sm);background:var(--paper);padding:0 10px;color:var(--ink)}.report-filters .report-search{min-width:230px;flex:1}.export-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.export-actions>span{color:var(--mid);font-size:var(--text-sm)}.export-actions button{border:1px solid var(--mid);background:var(--canvas);color:var(--brand-ink)}.report-summary-grid{margin:6px 0 32px}.performance-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:24px 28px;border:1px solid var(--line)}.performance-intro h1{margin:5px 0 6px;color:var(--brand-ink);font-size:var(--text-display-sm);letter-spacing:-.025em}.performance-intro p,.performance-period-note span,.performance-period-note time{margin:0;color:var(--mid);font-size:var(--text-sm)}.performance-period-note{display:flex;flex-direction:column;gap:4px;text-align:right}.performance-period-note strong{color:var(--ink);font-family:var(--font-mono);font-size:var(--text-sm)}.performance-kpis{margin:0}.performance-kpis .report-fact{min-height:178px}.metric-comparison{margin-top:auto;padding-top:8px;border-top:1px solid var(--line);color:var(--brand-ink)!important;font-family:var(--font-mono);font-size:var(--text-2xs)!important}.operating-metrics{border:1px solid var(--line)}.operating-metrics>header{padding:16px 20px;border-bottom:1px solid var(--line)}.operating-metrics h2{margin:0;font-size:var(--text-lg)}.operating-metrics header p{margin:4px 0 0;color:var(--mid);font-size:var(--text-sm)}.operating-metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}.operational-fact{min-width:0;padding:17px 20px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column;gap:5px}.operational-fact:nth-child(4n){border-right:0}.operational-fact:nth-last-child(-n+4){border-bottom:0}.operational-fact small,.operational-fact span{color:var(--mid);font-size:var(--text-xs)}.operational-fact small{font-weight:600;letter-spacing:.04em}.operational-fact strong{color:var(--brand-ink);font-family:var(--font-mono);font-size:var(--text-xl)}.operational-fact.danger strong{color:var(--danger)}.performance-basis{color:var(--mid);font-size:var(--text-xs);text-align:right}.hospitality-table-wrap{border:0}.hospitality-table{min-width:1120px;font-variant-numeric:tabular-nums}.hospitality-table tbody tr{height:58px}.hospitality-table th,.hospitality-table td{line-height:1.35}.hospitality-table th:nth-child(n+2),.hospitality-table td:nth-child(n+2){text-align:right}.hospitality-table td:nth-child(n+4){font-family:var(--font-mono);font-weight:600}.hospitality-table td:nth-child(6){color:var(--brand-ink)}.hospitality-table th:first-child,.hospitality-table td:first-child{position:sticky;left:0;z-index:1;width:136px;min-width:136px;background:var(--paper)}.hospitality-table th:first-child{z-index:2;background:var(--canvas)}.hospitality-table td.hospitality-stay-date{display:table-cell;vertical-align:middle;white-space:nowrap;font-family:var(--font-mono);font-weight:600}.hospitality-table td:nth-child(n+4){white-space:nowrap}.occupancy-cell{display:grid;grid-template-columns:minmax(68px,1fr) 50px;align-items:center;gap:10px}.occupancy-cell .trend-track{width:100%}.report-methodology-note{padding:14px 20px 16px;border-top:1px solid var(--line);color:var(--mid);font-size:var(--text-xs);line-height:1.55}.report-methodology-note strong{color:var(--ink)}.payment-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.payment-summary .report-fact{border-bottom:0}.report-panel>header time{color:var(--mid);font-size:var(--text-xs);text-align:right}.occupancy-trend{max-height:620px;overflow:auto;padding:8px 20px 16px}.trend-row{display:grid;grid-template-columns:105px minmax(160px,1fr) 50px 130px;align-items:center;gap:14px;min-height:42px;border-bottom:1px solid var(--line)}.trend-track{height:12px;background:var(--chart-track);border:1px solid var(--chart-grid)}.trend-track span{display:block;height:100%;background:var(--chart-fill)}.trend-row strong,.trend-row time{font-family:var(--font-mono)}.trend-row small{color:var(--mid)}.report-table-wrap{width:100%}.report-table{width:100%;min-width:1040px;border-collapse:collapse}.report-table th{height:42px;text-align:left;border-bottom:1px solid var(--line)}.report-table td{min-height:54px;border-bottom:1px solid var(--line);vertical-align:middle}.report-table th:first-child,.report-table td:first-child{padding-left:20px}.report-table th:last-child,.report-table td:last-child{padding-right:20px}.report-table td:nth-child(6){font-family:var(--font-mono);font-weight:600}.audit-filters label:nth-child(3),.audit-filters label:nth-child(4){flex:1}.immutable-note{margin:0 0 18px;color:var(--mid);font-size:var(--text-sm)}.audit-table code{font-family:var(--font-mono);font-size:var(--text-2xs);overflow-wrap:anywhere}.audit-table{min-width:1180px}.audit-table .audit-time{width:150px;color:var(--mid);font-family:var(--font-mono);font-size:var(--text-xs);white-space:nowrap}.report-table.audit-table td.audit-time{display:table-cell;vertical-align:middle}.audit-table .audit-actor{width:160px}.audit-actor strong,.audit-object strong,.audit-object a,.audit-object span{display:block}.audit-actor small{font-family:var(--font-mono)}.audit-table .audit-activity{width:34%}.audit-activity>strong{display:block;margin-bottom:7px;color:var(--brand-ink)}.audit-change-list{display:flex;flex-direction:column;gap:4px}.audit-change-list>span{color:var(--mid);font-size:var(--text-xs);line-height:1.4}.audit-change-list b{color:var(--ink);font-weight:600}.audit-change-list del,.audit-full-changes del{color:var(--danger);text-decoration-thickness:1px}.audit-change-list ins,.audit-full-changes ins{color:var(--brand-ink);text-decoration:none}.audit-change-list i,.audit-full-changes i{margin:0 6px;color:var(--mid);font-style:normal}.audit-object{max-width:260px}.audit-object>small{margin:0 0 3px;letter-spacing:.05em;text-transform:uppercase}.audit-object a{color:var(--brand-ink);font-weight:700;text-decoration-thickness:1px;text-underline-offset:3px}.audit-object span{margin-top:3px;color:var(--mid);font-size:var(--text-xs);line-height:1.4}.audit-branch{max-width:170px}.audit-table td:last-child{font-family:inherit;font-weight:inherit}.audit-detail-button{min-height:34px;border:1px solid var(--mid);border-radius:var(--radius-sm);background:var(--paper);padding:0 11px;color:var(--brand-ink);font-weight:600}.audit-detail-row td:first-child{display:table-cell;padding:0 20px 18px;background:var(--surface-sunken)}.audit-detail-panel{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(360px,1.2fr);gap:28px;border-left:3px solid var(--accent);padding:18px 20px}.audit-detail-panel h3{margin:0 0 12px;font-size:var(--text-base)}.audit-detail-panel dl{margin:0}.audit-detail-panel dl>div{display:grid;grid-template-columns:105px minmax(0,1fr);gap:12px;padding:5px 0}.audit-detail-panel dt{color:var(--mid);font-size:var(--text-xs)}.audit-detail-panel dd{margin:0;overflow-wrap:anywhere;font-family:var(--font-mono);font-size:var(--text-2xs)}.audit-full-changes{display:grid;gap:7px}.audit-full-changes>div{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;font-size:var(--text-xs)}.audit-detail-panel p{margin:0;color:var(--mid);font-size:var(--text-sm)}:focus-visible{outline:3px solid var(--border-focus);outline-offset:2px}@media(max-width:1150px){.dashboard-kpi-grid,.report-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-kpi:nth-child(n),.report-fact:nth-child(n){border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.dashboard-kpi:nth-child(2n),.report-fact:nth-child(2n){border-right:0}.dashboard-kpi:nth-last-child(-n+2){border-bottom:0}.payment-summary,.operating-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.operational-fact:nth-child(n){border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.operational-fact:nth-child(2n){border-right:0}.operational-fact:nth-last-child(-n+2){border-bottom:0}}@media(max-width:700px){.phase5-dashboard .compact-row,.activity-row{padding-left:16px;padding-right:16px}.audit-detail-panel{grid-template-columns:1fr}.occupancy-trend{padding:6px 16px 12px}.dashboard-columns{grid-template-columns:1fr}.dashboard-table-head{display:none}.dashboard-table-row{grid-template-columns:minmax(130px,1fr) 55px 105px}.dashboard-table-row>span:last-child{grid-column:1 / -1;text-align:left}.report-filters{align-items:stretch}.report-filters label,.report-filters .report-search,.report-filters button{width:100%}.report-filters .report-period-shortcut-buttons button{flex:1 1 calc(50% - 4px);width:auto}.export-actions{flex-wrap:wrap;justify-content:flex-start}.performance-intro{align-items:flex-start;flex-direction:column;padding:20px}.performance-period-note{text-align:left}.operating-metric-grid{grid-template-columns:1fr}.operational-fact:nth-child(n){border-right:0;border-bottom:1px solid var(--line)}.operational-fact:last-child{border-bottom:0}.trend-row{grid-template-columns:90px minmax(90px,1fr) 45px}.trend-row small{grid-column:2 / -1}}html,body{background:var(--app-bg);color:var(--text-primary);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased}button,a,input,select,textarea{transition:border-color var(--motion-fast) var(--ease),background-color var(--motion-fast) var(--ease),color var(--motion-fast) var(--ease),box-shadow var(--motion-fast) var(--ease)}*:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.ui-icon{flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.admin-layout{background:var(--canvas)}.brand{flex-direction:row}.brand-copy{min-width:0;flex:1;flex-direction:column}.brand-copy strong{color:var(--sidebar-fg-strong);font-size:var(--text-md);line-height:1.3}.brand-copy small{margin-top:2px;color:var(--sidebar-fg-muted);font-size:var(--text-xs);letter-spacing:.04em}.sidebar-close{display:none;width:36px;height:var(--control-height);border:0;background:transparent;color:var(--sidebar-fg);place-items:center}.nav-group h2{margin:0;padding:8px 10px 6px;color:var(--sidebar-fg-muted);font-size:var(--text-2xs);font-weight:600;letter-spacing:.11em;text-transform:uppercase}.sidebar nav a:hover{color:var(--sidebar-fg-strong)}.page-header h1{color:var(--ink)}.page-header p{color:var(--mid)}.navigation-trigger{display:none;width:40px;height:var(--control-height);padding:0;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);color:var(--brand-ink);place-items:center}.branch-trigger>span{min-width:0;display:flex;flex-direction:column}.branch-trigger small{color:var(--mid);font-size:var(--text-2xs);font-weight:600;letter-spacing:.07em;text-transform:uppercase}.branch-trigger strong{overflow:hidden;color:var(--ink);font-size:var(--text-sm);text-overflow:ellipsis;white-space:nowrap}.branch-menu button{background:var(--surface);justify-content:center;text-align:left}.branch-menu button span{font-size:var(--text-base);font-weight:600}.sidebar-backdrop{display:none}.outline-button,.primary-button,.link-button{gap:7px;text-decoration:none}.toolbar strong{color:var(--ink);font-family:inherit;font-weight:600}.toolbar span{margin-top:2px;color:var(--mid);font-size:var(--text-sm)}.toolbar-actions select,.toolbar-actions input,.filter-row input,.filter-row select{height:var(--control-height)}.badge{border:1px solid var(--line-strong);background:var(--surface-muted);color:var(--text-secondary)}.badge.tone-success{border-color:var(--success-border);background:var(--success-bg);color:var(--success-fg)}.badge.tone-warning{border-color:var(--warning-border);background:var(--warning-bg);color:var(--warning-fg)}.badge.tone-danger{border-color:var(--danger-border);background:var(--danger-bg);color:var(--danger-fg)}.badge.tone-info{border-color:var(--info-border);background:var(--info-bg);color:var(--info-fg)}.row-actions button,.row-actions a,.settings-row button,.room-list-row button{min-height:var(--control-height-sm);padding:0 8px;border:0;background:transparent;font-weight:600}.data-table,.settings-list,.reservation-list,.tenant-list,.payment-list,.notification-list,.availability-board,.housekeeping-table,.report-panel,.template-workspace{border:1px solid var(--line)}.room-list-head{border:1px solid var(--line);border-bottom:0}.table-head,.settings-head,.room-list-head,.reservation-list-head,.tenant-list-head,.payment-list-head,.housekeeping-head{padding-left:16px;padding-right:16px}.pagination button{border-color:var(--line-strong);background:var(--surface)}.screen-state,.empty-state,.error-state,.forbidden{border:1px solid var(--line)}.empty-state strong,.error-state strong{color:var(--ink);font-size:var(--text-lg)}.modal h2{color:var(--ink)}.modal>header button:hover{background:var(--surface-muted)}.login-intro{padding:clamp(44px,6vw,84px)}.login-intro h1{margin:28px 0 20px;color:var(--brand-fg);font-size:var(--text-display)}.login-intro div>p:last-child{color:var(--sidebar-fg);font-size:var(--text-lg)}.login-panel{padding:48px}.login-heading span{font-family:inherit;font-size:var(--text-2xs);font-weight:700;text-transform:uppercase}.login-heading h2{color:var(--ink);font-size:var(--text-3xl)}.dashboard-section-heading{margin-bottom:16px;display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.dashboard-section-heading span{font-size:var(--text-2xs);font-weight:700;text-transform:uppercase}.dashboard-section-heading h2{margin:4px 0 0;color:var(--ink);font-size:var(--text-2xl)}.dashboard-section-heading p{margin:0;color:var(--mid);font-size:var(--text-sm)}.priority-kpis{grid-template-columns:repeat(4,minmax(0,1fr))}.dashboard-secondary-metrics{border:1px solid var(--line);grid-template-columns:repeat(6,minmax(0,1fr))}.dashboard-secondary-metrics article{min-width:0;min-height:78px;padding:13px 14px;border-right:1px solid var(--line);display:flex;flex-direction:column}.dashboard-secondary-metrics article:last-child{border-right:0}.dashboard-secondary-metrics span,.dashboard-secondary-metrics small{overflow:hidden;color:var(--mid);font-size:var(--text-2xs);text-overflow:ellipsis;white-space:nowrap}.dashboard-secondary-metrics strong{margin:3px 0 1px;color:var(--ink);font-size:var(--text-2xl);font-weight:600}.dashboard-kpi,.report-fact{border:1px solid var(--line)!important}.dashboard-kpi strong,.report-fact strong{color:var(--ink);font-family:inherit;font-size:var(--text-3xl)}.dashboard-wide-section,.dashboard-columns,.activity-list{margin-top:24px}.dashboard-list,.report-panel{border:1px solid var(--line);overflow:hidden}.dashboard-list h2,.report-panel h2{color:var(--ink);font-size:var(--text-md)}.dashboard-table-row,.activity-row,.phase5-dashboard .compact-row,.report-table td{font-size:var(--text-sm)}.detail-top,.detail-hero{border:1px solid var(--line)}.detail-grid,.detail-columns{gap:20px}.detail-grid>section,.detail-section,.invoice-section,.reservation-inspection-section{border:1px solid var(--line)}.stepper,.form-panel,.occupancy-strip{overflow:hidden}.duration-presets{margin-top:14px;display:flex;flex-wrap:wrap;align-items:center;gap:10px}.duration-presets>span{color:var(--mid);font-size:var(--text-xs);font-weight:600}.duration-preset-options{display:inline-flex;flex-wrap:wrap;gap:8px}.duration-preset-options button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 18px;line-height:1.2;border:1px solid var(--line);border-radius:var(--radius-pill);background:var(--surface);color:var(--ink);font-size:var(--text-sm);font-weight:600;cursor:pointer;transition:background-color var(--motion-fast) var(--ease),border-color var(--motion-fast) var(--ease),color var(--motion-fast) var(--ease)}.duration-preset-options button:hover{border-color:var(--brand)}.duration-preset-options button.active{border-color:var(--brand-accent);background:var(--brand-subtle);color:var(--brand-ink)}.duration-presets>small{flex-basis:100%;color:var(--mid);font-size:var(--text-xs)}.reservation-period-result{flex-basis:100%;color:var(--brand-ink);font-size:var(--text-sm)}.reservation-period-summary{min-height:74px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-green);display:flex;flex-direction:column;justify-content:center;gap:4px}.reservation-period-summary small{color:var(--mid)}.reservation-period-summary strong{color:var(--brand-ink)}.room-availability-hint{color:var(--mid);font-size:var(--text-xs);font-weight:500}.form-field>small:not(.field-error){color:var(--mid);font-size:var(--text-xs)}.mobile-shell h1{color:var(--ink)}.mobile-shell .eyebrow{font-family:inherit}.mobile-shell nav a{min-width:76px;font-size:var(--text-xs);text-decoration:none}.mobile-shell nav a span{margin:0}.mobile-task-card,.inspection-item-card{border:1px solid var(--line)}.inspection-item-card{padding:16px}.camera-button{background:var(--surface);color:var(--brand-ink)}.mobile-photo-grid img,.manager-photo-viewer img{border-radius:var(--radius)}@media(max-width:960px){.sidebar.open{translate:0 0}.sidebar-close,.navigation-trigger{display:grid}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:var(--z-drawer-backdrop);border:0;background:var(--overlay)}.priority-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-secondary-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboard-secondary-metrics article:nth-child(3){border-right:0}.dashboard-secondary-metrics article:nth-child(-n+3){border-bottom:1px solid var(--line)}.sidebar .brand span,.sidebar nav a span{display:flex}}@media(max-width:700px){.admin-layout{display:flex}.sidebar{position:fixed;height:100dvh;flex-direction:column}.sidebar nav{display:flex}.brand{flex:none}.brand-copy small{display:block}.main-column{width:100%}.page-header{flex-direction:row}.branch-menu{right:0;left:auto;width:min(290px,calc(100vw - 32px))}.login-page{display:block;min-height:100dvh}.login-intro{padding:28px 24px;display:block}.login-intro h1{margin:12px 0 0;font-size:var(--text-3xl)}.login-intro div>p:last-child,.login-intro>small{display:none}.login-panel{padding:20px 16px 36px}.login-panel form{margin:-42px auto 0;position:relative}.dashboard-kpi-grid,.report-summary-grid{grid-template-columns:1fr 1fr}.dashboard-section-heading{align-items:flex-start;flex-direction:column;gap:5px}.dashboard-secondary-metrics{grid-template-columns:1fr 1fr}.dashboard-secondary-metrics article:nth-child(n){border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.dashboard-secondary-metrics article:nth-child(2n){border-right:0}.dashboard-secondary-metrics article:nth-last-child(-n+2){border-bottom:0}}.dashboard-table-row:hover,.reservation-list-row:hover,.room-list-row:hover,.tenant-list-row:hover,.payment-list-row:hover,.activity-row:hover,.compact-row:hover,.notification-row:hover,.employee-table tbody tr:hover,.branch-table tbody tr:hover,.report-table tbody tr:hover,.audit-table tbody tr:hover{background:var(--surface-hover)}.primary-button:disabled,.outline-button:disabled,.pagination button:disabled,.row-actions button:disabled,.export-actions button:disabled{border-color:var(--border-default);background:var(--surface-sunken);color:var(--text-disabled);box-shadow:none;cursor:not-allowed;opacity:1}.primary-button:disabled:hover,.outline-button:disabled:hover,.pagination button:disabled:hover{border-color:var(--border-default);background:var(--surface-sunken)}.primary-button:active:not(:disabled),.outline-button:active:not(:disabled){transform:translateY(1px)}.pagination button{color:var(--brand-ink)}.pagination button:hover:not(:disabled){border-color:var(--accent);background:var(--surface-green)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition-duration:.01ms!important}.primary-button:active:not(:disabled),.outline-button:active:not(:disabled){transform:none}}body{font-size:var(--text-base)}a{color:var(--brand-ink);text-underline-offset:3px}button:active:not(:disabled){filter:brightness(.97)}.sidebar{border-right:1px solid var(--sidebar-border);color:var(--sidebar-fg);background:var(--sidebar-bg);width:var(--sidebar-width);z-index:var(--z-drawer);align-items:stretch;overflow:hidden}.brand{gap:11px;align-items:center;display:flex;min-height:var(--global-header-height);padding:10px 8px 8px;justify-content:center;border-bottom:0}.brand-mark{letter-spacing:.08em;font-weight:700;font-size:var(--text-sm)!important;color:var(--sidebar-fg-strong)!important;place-items:center;display:grid;width:52px;height:52px;padding:4px;border:1px solid var(--sidebar-border);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden}.brand-mark img{width:100%;height:100%;display:block;object-fit:contain}.brand-copy,.nav-group h2{display:none}.sidebar nav{width:100%;padding:4px 8px 12px;gap:0;scrollbar-color:var(--sidebar-fg-muted) transparent;scrollbar-width:thin;scroll-behavior:smooth;overscroll-behavior:contain}.sidebar nav::-webkit-scrollbar{width:5px}.sidebar nav::-webkit-scrollbar-track{background:transparent}.sidebar nav::-webkit-scrollbar-thumb{border-radius:var(--radius-pill);background:var(--sidebar-fg-muted)}.nav-group{padding:0}.nav-group+.nav-group:before{height:1px;margin:6px 14px;display:block;background:var(--sidebar-border);content:""}.sidebar nav a{position:relative;min-height:70px;margin:3px 0;padding:8px 4px 6px;border:2px solid transparent;border-radius:var(--radius-lg);flex-direction:column;justify-content:center;gap:6px;color:var(--sidebar-fg);font-size:var(--text-2xs);font-weight:600;line-height:1.15;text-align:center}.sidebar nav a span{max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar nav a:hover{border-color:var(--sidebar-border);background:var(--sidebar-item-hover)}.sidebar nav a.active{font-weight:600;color:var(--sidebar-item-active-fg);border-color:var(--sidebar-rail);background:var(--sidebar-item-active);box-shadow:0 0 0 1px var(--sidebar-item-hover)}.sidebar nav a.active:before{content:"";background:var(--sidebar-rail);border-radius:0 var(--radius-sm) var(--radius-sm) 0;left:0;position:absolute;height:18px;width:3px;display:none}.sidebar nav .ui-icon{width:24px;height:24px;stroke-width:1.9}.sidebar-scroll-hint{min-height:34px;margin:0 8px 2px;padding:0 7px;border:0;border-top:1px solid var(--sidebar-border);border-bottom:1px solid var(--sidebar-border);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;gap:4px;background:var(--sidebar-item-hover);color:var(--sidebar-fg-muted);font-size:var(--text-2xs);font-weight:700;line-height:1}.sidebar-scroll-hint:hover{background:var(--sidebar-item-active);color:var(--sidebar-fg-strong)}.sidebar-scroll-hint .ui-icon{animation:sidebar-scroll-cue 1.6s ease-in-out infinite}@keyframes sidebar-scroll-cue{0%,to{transform:translateY(-1px)}50%{transform:translateY(2px)}}.main-column{background:var(--canvas);margin-left:var(--sidebar-width)}.global-header{height:var(--global-header-height);padding:0 24px;position:sticky;top:0;z-index:var(--z-header-global);border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(190px,1fr) minmax(300px,580px) minmax(260px,1fr);align-items:center;gap:20px;background:var(--surface);box-shadow:var(--shadow-sm)}.global-brand{min-width:0;display:flex;align-items:center;gap:10px;color:var(--ink)}.global-brand>span:last-child{min-width:0;display:flex;flex-direction:column}.global-brand strong{font-size:var(--text-base);line-height:1.2}.global-brand small{color:var(--mid);font-size:var(--text-2xs)}.cloud-logo{width:44px;height:25px;flex:0 0 44px;position:relative;border-radius:var(--radius-pill);background:var(--brand-accent)}.cloud-logo:before,.cloud-logo:after{position:absolute;border-radius:50%;background:inherit;content:""}.cloud-logo:before{width:22px;height:22px;left:5px;top:-7px}.cloud-logo:after{width:18px;height:18px;right:5px;top:-3px}.global-search{height:40px;padding:0 18px}.global-tools{display:flex;align-items:center;justify-content:flex-end;gap:6px}.global-tool,.global-avatar{width:36px;height:var(--control-height);border-radius:50%;display:grid;place-items:center;color:var(--mid)}.global-tool:hover{background:var(--surface-hover);color:var(--brand-ink)}.global-avatar{font-size:var(--text-xs);font-weight:700}.page-header{border-bottom:1px solid var(--line);position:sticky;height:auto;min-height:104px;padding:18px 28px;top:var(--global-header-height);z-index:var(--z-header);gap:20px;align-items:center;background:var(--surface);-webkit-backdrop-filter:none;backdrop-filter:none}.page-heading-wrap{min-width:0;margin-right:auto;display:flex;align-items:center;gap:14px}.page-object-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--brand-accent);color:var(--brand-fg);box-shadow:inset 0 -2px 0 var(--focus-glow)}.page-heading{min-width:0;margin:0}.page-kicker{color:var(--mid);font-size:var(--text-sm)}.page-title-row{display:flex;align-items:center;gap:9px}.page-header h1{margin:1px 0 0;font-size:var(--text-3xl);font-weight:500;letter-spacing:-.025em}.page-title-row .ui-icon{color:var(--brand)}.page-header p{margin-top:2px;font-size:var(--text-sm)}.page-content{min-height:calc(100vh - var(--global-header-height) - 104px);padding:0 20px 48px}.branch-trigger{text-align:left;color:var(--brand-ink);background:var(--surface);gap:9px;align-items:center;grid-template-columns:20px minmax(0,1fr) 16px;display:grid;border:1px solid var(--line-strong);padding:0 12px;min-width:232px;height:42px;border-radius:var(--radius-pill)}.branch-trigger:hover,.branch-trigger[aria-expanded=true]{border-color:var(--brand);background:var(--surface-hover)}.branch-menu{box-shadow:var(--shadow-lg);background:var(--surface);border-color:var(--line-strong);top:48px;min-width:288px;padding:6px;border-radius:var(--radius)}.branch-menu button{min-height:50px;padding:7px 12px;border:0;border-radius:var(--radius);flex-direction:column;align-items:flex-start}.branch-menu button:hover,.branch-menu button.selected{background:var(--surface-hover)}.branch-menu button.selected{box-shadow:inset 3px 0 0 var(--brand)}.branch-menu button small{font-size:var(--text-xs);color:var(--mid);margin:1px 0 0}.outline-button,.primary-button,.link-button,.pagination button,.export-actions button{min-height:var(--control-height);padding:0 17px;border-radius:var(--radius-pill);font-size:var(--text-base);font-weight:500}.outline-button{border:1px solid var(--line-strong);background:var(--surface);color:var(--brand-ink);box-shadow:0 1px 1px var(--border-subtle)}.outline-button:hover{border-color:var(--brand);background:var(--surface-hover);color:var(--brand-hover)}.primary-button{color:var(--brand-fg);border-color:var(--brand);background:linear-gradient(to bottom,var(--brand-accent),var(--brand));box-shadow:0 2px 3px var(--focus-glow)}.button-lg{min-height:var(--control-height-xl);font-size:var(--text-md);font-weight:600}.button-block{width:100%}.primary-button:hover{border-color:var(--brand-hover);background:linear-gradient(to bottom,var(--brand),var(--brand-hover))}.primary-button.danger{border-color:var(--danger);background:var(--danger)}.toolbar{background:var(--surface);border-bottom:1px solid var(--line);min-height:var(--toolbar-height);margin:20px 12px 0;padding:14px 18px;border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.toolbar strong{font-size:var(--text-md)}.toolbar-actions{gap:8px}.toolbar-actions select,.toolbar-actions input,.filter-row input,.filter-row select,.form-field input,.form-field textarea,.form-field select,.login-panel input,.currency-input input,.mobile-reason textarea,.inspection-item-card select,.inspection-item-card textarea{border:1px solid var(--line-strong);border-radius:var(--radius);background:var(--surface)}.form-field{color:var(--ink);gap:7px;font-size:var(--text-sm);font-weight:500}.form-field input:focus,.form-field textarea:focus,.form-field select:focus,.login-panel input:focus{border-color:var(--brand-accent);box-shadow:0 0 0 3px var(--focus-glow);outline:0}.badge{white-space:nowrap;letter-spacing:.02em;min-height:var(--badge-height);padding:2px 9px;border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:500}.data-table,.settings-list,.reservation-list,.tenant-list,.payment-list,.notification-list,.availability-board,.housekeeping-table,.report-panel,.template-workspace,.dashboard-list,.dashboard-secondary-metrics,.dashboard-kpi,.report-fact,.detail-top,.detail-hero,.detail-grid>section,.detail-section,.invoice-section,.reservation-inspection-section,.stepper,.form-panel,.occupancy-strip,.ticket-column,.ticket-card,.mobile-task-card,.inspection-item-card,.screen-state,.empty-state,.error-state,.forbidden{border-color:var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.data-table,.settings-list,.reservation-list,.tenant-list{overflow:hidden;padding:0;margin:16px 12px 0}.payment-list,.notification-list,.availability-board,.housekeeping-table,.report-panel,.template-workspace{box-shadow:var(--shadow-sm)}.table-head,.settings-head,.room-list-head,.reservation-list-head,.tenant-list-head,.payment-list-head,.housekeeping-head,.dashboard-table-head,.report-table th,.audit-table th{min-height:42px;background:var(--surface-sunken);color:var(--mid);font-size:var(--text-xs);font-weight:600;letter-spacing:.025em;text-transform:none}.table-row,.settings-row,.room-list-row,.reservation-list-row,.tenant-list-row,.payment-list-row,.housekeeping-row{background:var(--surface);padding-right:16px;padding-left:16px;min-height:56px;font-size:var(--text-sm)}.table-row:hover,.settings-row:hover,.room-list-row:hover,.reservation-list-row:hover,.tenant-list-row:hover,.payment-list-row:hover,.housekeeping-row:hover,.dashboard-table-row:hover,.compact-row:hover,.notification-row:hover{background:var(--surface-hover)}.row-actions button,.row-actions a,.settings-row button,.room-list-row button{text-decoration:none;border-radius:var(--radius-pill);color:var(--brand-ink);font-size:var(--text-sm)}.row-actions button:hover,.row-actions a:hover,.settings-row button:hover,.room-list-row button:hover{background:var(--surface-hover)}.pagination{font-size:var(--text-sm);color:var(--mid);margin:0 12px;padding:14px 4px;border-top:0}.screen-state,.empty-state,.error-state,.forbidden{color:var(--mid);padding:42px 24px;margin:20px 12px}.phase5-dashboard,.reports-page,.audit-page{padding:22px 12px 48px}.dashboard-section-heading span,.eyebrow,.login-heading span,.inspection-stage-label{color:var(--brand-ink);letter-spacing:.06em}.dashboard-kpi-grid,.report-summary-grid{background:transparent;border:0;gap:16px}.dashboard-kpi,.report-fact{min-height:126px;padding:20px}.dashboard-kpi:before,.report-fact:before{width:34px;height:5px;margin-bottom:14px;border-radius:var(--radius-pill);display:block;background:var(--brand-accent);content:""}.dashboard-kpi.warning:before{background:var(--warning-solid)}.dashboard-kpi.danger:before,.report-fact.danger:before{background:var(--danger)}.dashboard-kpi.warning,.dashboard-kpi.danger,.report-fact.danger{border-top:1px solid var(--line)!important}.dashboard-secondary-metrics{overflow:hidden;display:grid;margin-top:16px}.dashboard-columns{gap:16px}.dashboard-list>header,.report-panel>header,.section-heading,.section-title{min-height:52px;padding:14px 18px;border-bottom:1px solid var(--line)}.report-filters,.filter-row{background:var(--surface);border:1px solid var(--line);padding:14px 16px;border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.detail-top,.detail-hero{margin-top:16px;padding:22px 24px}.detail-grid>section,.detail-section,.invoice-section,.reservation-inspection-section{margin-top:16px;padding:22px}.stepper{padding:6px}.stepper li{min-height:50px;border-radius:var(--radius-pill)}.stepper li.active{background:var(--brand-subtle);color:var(--brand-ink);box-shadow:inset 0 -3px 0 var(--brand)}.stepper li.done{background:var(--success-bg);color:var(--success-fg)}.message-preview{border-radius:var(--radius);border-left-color:var(--brand-accent);background:var(--brand-subtle)}.modal-backdrop{background:var(--overlay);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.modal{box-shadow:var(--shadow-lg);background:var(--surface);border:0;border-radius:var(--radius-lg)}.modal>header{background:var(--surface);min-height:68px;padding:0 24px}.modal h2{font-size:var(--text-2xl);font-weight:500}.modal>header button{color:var(--mid);place-items:center;display:grid;padding:0;height:var(--control-height);width:36px;border-radius:50%}.toast-area{top:calc(var(--global-header-height) + 12px);pointer-events:none}.toast{pointer-events:auto;box-shadow:var(--shadow-lg);border-left:6px solid var(--success-solid);border-radius:var(--radius);background:var(--surface);color:var(--ink)}.login-page{grid-template-columns:minmax(420px,.9fr) minmax(520px,1.1fr);background:var(--surface)}.login-intro{color:var(--brand-fg);position:relative;overflow:hidden;background:linear-gradient(145deg,var(--brand-panel),var(--brand))}.login-intro:before,.login-intro:after{position:absolute;border-radius:50%;background:var(--focus-glow);content:""}.login-intro:before{width:420px;height:420px;right:-150px;top:-110px}.login-intro:after{width:560px;height:560px;left:-260px;bottom:-300px}.login-intro>*{position:relative;z-index:1}.login-intro h1{font-weight:500;letter-spacing:-.04em}.login-panel{background:var(--app-bg)}.login-panel form{background:var(--surface);border:1px solid var(--line);width:min(430px,100%);padding:40px;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.login-heading h2{font-weight:500;letter-spacing:-.025em}.login-panel input,.login-submit{height:var(--control-height-lg)}.login-field{display:flex;flex-direction:column;gap:8px;font-size:var(--text-base);font-weight:500}.password-input-control{position:relative}.login-panel .password-input-control input{width:100%;padding-right:50px}.password-visibility-toggle{width:36px;height:var(--control-height);padding:0;position:absolute;top:50%;right:4px;border:0;border-radius:50%;display:grid;place-items:center;translate:0 -50%;background:transparent;color:var(--mid)}.password-visibility-toggle:hover{background:var(--surface-hover);color:var(--brand-ink)}.password-visibility-toggle:active:not(:disabled){color:var(--brand-hover)}.login-submit{border-radius:var(--radius-pill)}.mobile-shell{box-shadow:0 0 0 1px var(--line),var(--shadow-md)}.mobile-shell>header{background:var(--surface);color:var(--ink)}.mobile-shell>header button,.mobile-back{color:var(--brand-ink)}.mobile-shell nav a{place-items:center;grid-template-rows:18px auto}.mobile-task-card,.inspection-item-card{border-radius:var(--radius-lg)}.camera-button{min-height:var(--control-height-xl);border-radius:var(--radius-pill)}@media(max-width:1150px){.global-header{grid-template-columns:minmax(150px,.7fr) minmax(250px,1.3fr) auto}.global-brand small{display:none}}@media(max-width:960px){.sidebar{transition:translate var(--motion-base) var(--ease);box-shadow:var(--shadow-lg);translate:-100% 0;width:280px;align-items:stretch}.brand{padding:10px 14px;flex-direction:row;justify-content:flex-start}.brand-copy,.nav-group h2{display:flex}.brand-copy{flex-direction:column}.nav-group h2{padding:9px 10px 5px}.nav-group+.nav-group:before{display:none}.sidebar nav a{min-height:var(--control-height-lg);padding:0 12px;border-width:1px;border-radius:var(--radius);flex-direction:row;justify-content:flex-start;gap:12px;font-size:var(--text-sm);text-align:left}.sidebar nav a span{max-width:none}.main-column{margin-left:0}.global-header{padding:0 16px}.global-brand>span:last-child{display:none}.page-header{top:var(--global-header-height)}}@media(max-width:700px){.global-brand{display:flex}.cloud-logo{width:34px;height:20px;flex-basis:34px}.cloud-logo:before{width:18px;height:18px;left:4px;top:-6px}.cloud-logo:after{width:14px;height:14px;right:4px;top:-2px}.global-search{height:var(--control-height);grid-column:auto;padding:0 12px}.page-heading-wrap{gap:10px}.page-object-icon{width:40px;height:40px}.page-kicker,.page-heading p,.page-title-row>.ui-icon{display:none}.page-header h1{font-size:var(--text-lg);font-weight:600}.page-content{padding:0 4px 32px}.toolbar,.data-table,.settings-list,.reservation-list,.tenant-list,.room-list-head,.room-list-row,.pagination,.screen-state,.empty-state,.error-state,.forbidden{margin-left:8px;margin-right:8px}.phase5-dashboard,.reports-page,.audit-page{padding-left:8px;padding-right:8px}.login-intro{min-height:210px}.login-panel form{padding:28px 22px}}.global-search-shell,.global-tool-wrap{min-width:0;position:relative}.global-search{background:var(--surface);color:var(--mid);gap:10px;align-items:center;display:flex;border-radius:var(--radius-pill);border:1px solid var(--line-strong);width:100%}.global-search input{min-width:0;height:100%;padding:0;border:0;flex:1;background:transparent;color:var(--ink);font:inherit;outline:0;box-shadow:none}.global-search input::placeholder{color:var(--mid);opacity:1}.global-search input::-webkit-search-cancel-button{display:none}.global-search:focus-within{border-color:var(--brand-accent);box-shadow:0 0 0 3px var(--focus-glow)}.global-search-clear{width:28px;height:28px;padding:0;border:0;border-radius:50%;display:grid;place-items:center;background:transparent;color:var(--mid)}.global-search-clear:hover{background:var(--surface-hover);color:var(--ink)}button.global-tool{padding:0;position:relative;border:0;background:transparent;cursor:pointer}button.global-tool[aria-expanded=true]{background:var(--brand-subtle);color:var(--brand-ink);box-shadow:inset 0 -2px 0 var(--brand)}.global-tool-badge{min-width:17px;height:17px;padding:0 4px;position:absolute;top:-2px;right:-4px;border:2px solid var(--surface);border-radius:var(--radius-pill);display:grid;place-items:center;background:var(--danger-solid);color:var(--text-inverse);font-size:var(--text-2xs);font-weight:700;line-height:1}.header-popover{width:min(370px,calc(100vw - 24px));max-height:min(560px,calc(100vh - var(--global-header-height) - 24px));position:absolute;top:calc(100% + 10px);right:0;z-index:var(--z-popover);border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-lg);color:var(--ink);overflow:auto}.global-search-results{width:100%;right:auto;left:0}.header-popover-heading{min-height:64px;padding:13px 16px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--surface-sunken)}.header-popover-heading>span:first-child{min-width:0;display:flex;flex-direction:column;gap:2px}.header-popover-heading strong{font-size:var(--text-base)}.header-popover-heading small,.header-menu-list small,.help-list small,.header-alert-list small{color:var(--mid);font-size:var(--text-xs);font-weight:400}.header-loading{width:18px;height:18px;border:2px solid var(--line-strong);border-top-color:var(--brand);border-radius:50%;animation:header-loading-spin .75s linear infinite}@keyframes header-loading-spin{to{transform:rotate(360deg)}}.global-search-list,.header-menu-list,.header-alert-list{padding:6px}.global-search-result,.header-menu-list>a,.header-alert-list>a{min-height:58px;padding:9px 10px;border-radius:var(--radius);display:grid;align-items:center;gap:10px;color:var(--ink);text-decoration:none}.global-search-result{grid-template-columns:34px minmax(0,1fr) auto}.global-search-result:hover,.global-search-result:focus-visible,.header-menu-list>a:hover,.header-menu-list>a:focus-visible,.header-alert-list>a:hover,.header-alert-list>a:focus-visible{background:var(--surface-hover)}.global-search-result>span:nth-child(2),.header-menu-list>a>span:nth-child(2),.header-alert-list>a>span:nth-child(2){min-width:0;display:flex;flex-direction:column;gap:2px}.global-search-result>span:nth-child(2)>span,.global-search-result>span:nth-child(2)>strong,.header-menu-list strong,.header-menu-list small,.header-alert-list strong,.header-alert-list small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-search-result>span:nth-child(2)>small{color:var(--brand-ink);font-size:var(--text-2xs);font-weight:700;letter-spacing:.04em;text-transform:uppercase}.global-search-result>span:nth-child(2)>span{color:var(--mid);font-size:var(--text-xs)}.global-search-result>.badge{max-width:92px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-item-icon{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:var(--brand-subtle);color:var(--brand-ink)}.profile-identity{min-width:0;display:flex;flex-direction:column;gap:2px}.profile-identity strong{font-size:var(--text-base)}.profile-identity strong,.profile-identity small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-identity small{color:var(--mid);font-size:var(--text-xs)}.profile-role{color:var(--brand-ink);font-weight:600}.profile-view-link{min-height:var(--control-height-lg);padding:0 16px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--brand-ink);font-size:var(--text-sm);font-weight:600;text-decoration:none}.profile-view-link:hover,.profile-view-link:focus-visible{background:var(--surface-hover)}.profile-menu-list{padding:6px;display:flex;flex-direction:column}.profile-menu-list>a,.profile-menu-list>button{width:100%;min-height:54px;padding:9px 10px;border:0;border-radius:var(--radius);display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;background:transparent;color:var(--ink);font-family:inherit;text-align:left;text-decoration:none;cursor:pointer}.profile-menu-list>a:hover,.profile-menu-list>a:focus-visible,.profile-menu-list>button:hover,.profile-menu-list>button:focus-visible{background:var(--surface-hover)}.profile-menu-list>a>span:nth-child(2),.profile-menu-list>button>span:nth-child(2){min-width:0;display:flex;flex-direction:column;gap:2px}.profile-menu-list strong{font-size:var(--text-sm)}.profile-menu-list small{color:var(--mid);font-size:var(--text-xs)}.profile-signout .header-item-icon{background:var(--danger-bg);color:var(--danger-fg)}.profile-signout strong{color:var(--danger-fg)}.header-popover-message{min-height:110px;padding:22px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--mid);font-size:var(--text-sm);text-align:center}.header-popover-message>span>span{display:block}.header-popover-message.is-error{color:var(--danger)}.header-popover-message button,.header-refresh{min-height:var(--control-height-sm);padding:0 10px;border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--surface);color:var(--brand-ink);font-size:var(--text-xs);font-weight:600}.header-popover-footer{padding:10px 16px;border-top:1px solid var(--line);color:var(--mid);font-size:var(--text-2xs);text-align:center}.header-menu-list>a{grid-template-columns:34px minmax(0,1fr) 16px}.help-list{padding:8px 14px}.help-list>div{min-height:62px;padding:10px 2px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:24px minmax(0,1fr);align-items:start;gap:10px}.help-list>div:last-child{border-bottom:0}.help-list>div>span{display:flex;flex-direction:column;gap:3px}.help-list .ui-icon{margin-top:2px;color:var(--brand-ink)}.header-alert-list>a{grid-template-columns:10px minmax(0,1fr) auto}.header-alert-list>a>b{color:var(--warning-fg);font-size:var(--text-xs)}.alert-dot{width:8px;height:8px;border-radius:50%;background:var(--warning-solid)}.alert-dot.urgent{background:var(--danger-solid)}.header-popover-action{min-height:var(--control-height-lg);padding:0 16px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:var(--brand-ink);font-size:var(--text-sm);font-weight:600;text-decoration:none}.header-popover-action:hover{background:var(--surface-hover)}@media(min-width:701px)and (max-width:960px){.global-help-tool{display:none}}@media(max-width:700px){.global-header{gap:10px;padding:0 12px;height:104px;grid-template-columns:34px minmax(0,1fr);grid-template-rows:56px 48px}.global-search-shell{grid-column:2}.global-tools{min-width:0;width:calc(100vw - 24px);height:48px;grid-column:1 / -1;grid-row:2;border-top:1px solid var(--line);justify-content:center}.global-tools .global-tool{display:grid}.global-avatar{width:34px;height:34px}.page-header{padding:10px 14px;min-height:78px;top:104px}.toast-area{top:116px}.global-search-results,.global-tool-wrap>.header-popover{width:auto;max-height:calc(100vh - 116px);position:fixed;top:108px;right:8px;left:8px}}.global-avatar{font-family:inherit;cursor:pointer;padding:0;color:var(--brand-fg);background:var(--brand-accent);border:2px solid var(--border-default);margin-left:4px;text-decoration:none}.profile-card{border-bottom:1px solid var(--line);min-height:132px;padding:24px;border:1px solid var(--line);border-radius:var(--radius-lg);display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:18px;background:var(--surface);box-shadow:var(--shadow-sm)}.profile-card h2,.profile-card p,.profile-global-access p,.room-housekeeping-history p,.notification-detail-card h3{margin:0}.profile-card h2{margin-top:5px;font-size:var(--text-3xl);font-weight:600}.profile-card p,.profile-global-access p,.room-housekeeping-history p{margin-top:3px;color:var(--mid);font-size:var(--text-sm)}.profile-avatar{flex:none;width:68px;height:68px;border:2px solid var(--success-border);border-radius:50%;display:grid;place-items:center;background:var(--brand-subtle);color:var(--brand-ink);font-size:var(--text-2xl);font-weight:700}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.profile-grid .detail-section{margin:0}.profile-global-access,.profile-branch-list>div{min-height:62px;padding:12px 14px;border:1px solid var(--line);border-radius:var(--radius);display:flex;align-items:center;gap:12px;background:var(--surface-sunken)}.profile-branch-list{display:grid;gap:8px}.profile-branch-list span{min-width:0;display:flex;flex-direction:column}.profile-branch-list small{margin-top:2px;color:var(--mid)}.alert-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.alert-summary-grid article{min-height:112px;padding:18px;border:1px solid var(--line);border-top:3px solid var(--warning-solid);border-radius:var(--radius-lg);display:flex;flex-direction:column;background:var(--surface);box-shadow:var(--shadow-sm)}.alert-summary-grid article.urgent{border-top-color:var(--danger)}.alert-summary-grid small{color:var(--mid);font-size:var(--text-2xs);font-weight:700;letter-spacing:.06em}.alert-summary-grid strong{margin:5px 0 2px;font-size:var(--text-3xl)}.alert-summary-grid span{color:var(--mid);font-size:var(--text-sm)}.alert-list,.notification-detail-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden}.alert-list>header,.alert-list>div{min-height:58px;padding:10px 16px;display:grid;grid-template-columns:minmax(180px,1.25fr) minmax(180px,1fr) minmax(160px,.9fr) 88px 80px;align-items:center;gap:16px;border-bottom:1px solid var(--line)}.alert-list>header{min-height:42px;background:var(--surface-sunken);color:var(--mid);font-size:var(--text-xs);font-weight:600}.alert-list>div:last-child{border-bottom:0}.alert-list>div>span:not(.badge){min-width:0;display:flex;flex-direction:column}.alert-list small{margin-top:2px;overflow:hidden;color:var(--mid);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap}.alert-list a{display:inline-flex;align-items:center;justify-content:flex-end;gap:5px;font-size:var(--text-sm);font-weight:600;text-decoration:none}.note-actions{display:flex;gap:10px}.note-actions button{padding:0;border:0;background:transparent;color:var(--brand-ink);font-size:var(--text-xs);font-weight:600;text-decoration:underline}.invoice-detail-amount{padding:18px;border-radius:var(--radius);display:grid;grid-template-columns:1fr auto;align-items:center;background:var(--surface-sunken)}.invoice-detail-amount small{grid-column:1 / -1;color:var(--mid);font-size:var(--text-2xs);font-weight:700;letter-spacing:.06em}.invoice-detail-amount strong{margin-top:4px;font-size:var(--text-3xl)}.invoice-detail-modal dl,.notification-detail-card dl{margin:16px 0 0}.invoice-detail-modal dl>div,.notification-detail-card dl>div{min-height:42px;padding:9px 0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:minmax(130px,.7fr) minmax(0,1.3fr);gap:16px}.invoice-detail-modal dt,.notification-detail-card dt{color:var(--mid)}.notification-detail-card{margin:16px 12px 0;padding:20px}.notification-detail-card>header,.room-housekeeping-history>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.notification-detail-card dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:24px}.notification-detail-card dd{min-width:0;overflow-wrap:anywhere}.room-housekeeping-history{margin-left:0;margin-right:0}@media(max-width:960px){.profile-grid,.notification-detail-card dl{grid-template-columns:1fr}.alert-list{overflow-x:auto}.alert-list>header,.alert-list>div{min-width:850px}}@media(max-width:700px){.profile-card{padding:18px;grid-template-columns:auto minmax(0,1fr)}.profile-card>.badge{grid-column:1 / -1;justify-self:start}.profile-avatar{width:54px;height:54px}.alert-summary-grid{grid-template-columns:1fr}.alert-summary-grid article{min-height:96px}.alert-list{overflow:hidden}.alert-list>header{display:none}.alert-list>div{min-width:0;padding:16px;grid-template-columns:minmax(0,1fr) auto;gap:10px 14px;align-items:start}.alert-list>div>span:nth-child(1),.alert-list>div>span:nth-child(2),.alert-list>div>span:nth-child(3){grid-column:1}.alert-list>div>.badge{grid-column:2;grid-row:1}.alert-list>div>a{grid-column:2;grid-row:2 / 4;align-self:end}.invoice-detail-modal dl>div,.notification-detail-card dl>div{grid-template-columns:1fr;gap:3px}}.phase3-screen{padding:20px 12px 48px;display:flex;flex-direction:column;gap:16px}.phase3-screen>.toolbar,.phase3-screen>.filter-row,.phase3-screen>.ticket-board,.phase3-screen>.payment-list,.phase3-screen>.pagination,.phase3-screen>.screen-state,.phase3-screen>.empty-state,.phase3-screen>.error-state,.phase3-screen>.amendment-card,.phase3-screen>.account-requests,.phase3-screen>.data-table{margin:0}.filter-row{padding:14px 16px}.payment-date-filters{display:flex;align-items:flex-end;gap:16px}.payment-date-field{min-width:156px;display:flex;flex-direction:column;align-items:stretch;gap:7px}.payment-date-field>span{padding-left:2px;color:var(--mid);font-size:var(--text-xs);font-weight:600;line-height:1.2}.payment-date-field>input{width:156px;padding:0 12px}.payment-date-filters>.outline-button{margin-left:2px}.payment-list,.notification-list,.housekeeping-table,.report-table-wrap,.template-workspace{overflow:hidden}.payment-list-head,.table-head,.settings-head,.room-list-head,.reservation-list-head,.tenant-list-head,.housekeeping-head{padding-top:10px;padding-bottom:10px}.payment-list-row,.table-row,.settings-row,.room-list-row,.reservation-list-row,.tenant-list-row,.housekeeping-row{padding-top:11px;padding-bottom:11px}.payment-list-row>*,.table-row>*,.settings-row>*,.room-list-row>*,.reservation-list-row>*,.tenant-list-row>*,.housekeeping-row>*{min-width:0}.room-list{margin:16px 12px 0;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:var(--line-strong) transparent}.room-list::-webkit-scrollbar{height:8px}.room-list::-webkit-scrollbar-track{background:transparent}.room-list::-webkit-scrollbar-thumb{border:2px solid transparent;border-radius:var(--radius-pill);background:var(--line-strong);background-clip:padding-box}.room-list-head,.room-list-row{width:100%;min-width:930px;margin-right:0;margin-left:0;grid-template-columns:80px minmax(160px,1fr) minmax(180px,1.2fr) 160px 100px 160px;border-right:0;border-left:0}.room-list-head{margin-top:0;border-top:0;border-radius:0}.room-list-row:last-child{border-bottom:0}.room-list-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;white-space:nowrap}@media(max-width:1150px){.room-list-head,.room-list-row{min-width:790px;grid-template-columns:70px minmax(125px,.9fr) minmax(145px,1fr) 140px 82px 156px;gap:12px}.room-list-actions{gap:6px}}.housekeeping-tabs{height:auto;min-height:52px;margin:20px 12px 0;padding:0 16px;align-items:center;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);overflow-x:auto}.housekeeping-tabs+.toolbar{margin-top:16px}.housekeeping-table{margin:16px 12px 0;padding:0}.housekeeping-head,.housekeeping-row{padding-left:16px;padding-right:16px}.availability-board{margin:16px 12px 0}.template-workspace{margin:20px 12px 0}.template-editor>.form-field+.form-field{margin-top:16px}.notification-panel{margin:16px 12px 0;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden}.notification-panel>header{min-height:64px;padding:14px 18px;border-bottom:1px solid var(--line);display:flex;align-items:center}.notification-panel>header h3,.notification-panel>header p{margin:0}.notification-panel>header p{margin-top:3px;color:var(--mid);font-size:var(--text-sm)}.notification-panel .notification-list{border:0;border-radius:0;box-shadow:none}.notification-panel>.empty-state{margin:16px}.reports-page,.audit-page{display:flex;flex-direction:column;gap:16px}.reports-page>*,.audit-page>*{margin-top:0;margin-bottom:0}.reports-page .screen-state,.reports-page .empty-state,.reports-page .error-state,.audit-page .screen-state,.audit-page .empty-state,.audit-page .error-state,.reports-page .report-summary-grid,.reports-page .report-panel,.audit-page .report-table-wrap{margin:0}.report-tabs{padding:0 16px;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.export-actions{min-height:0;padding:0 2px}.report-table-wrap{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);overflow-x:auto}.report-table th,.report-table td{padding:12px 16px}.modal-body:not(.form-grid)>.form-field+.form-field,.ticket-detail>.form-field+.form-field{margin-top:16px}.payment-modal,.ticket-detail{display:flex;flex-direction:column;gap:16px}.payment-modal>*,.ticket-detail>*{margin-top:0;margin-bottom:0}.ticket-photo img{max-width:100%;max-height:320px;border-radius:var(--radius);border:1px solid var(--border-subtle);display:block}.ticket-photo-loading{font-size:var(--text-sm);color:var(--text-tertiary)}.modal-actions{border-radius:0 0 var(--radius-lg) var(--radius-lg);padding:14px 22px;background:var(--surface-sunken);gap:12px}.form-panel>header,.form-panel>.form-grid,.form-panel>.form-field,.form-panel>.duration-presets,.form-navigation{padding-left:22px;padding-right:22px}.mobile-task-list{display:grid;gap:12px}.mobile-task-card{margin-bottom:0;padding:16px}.mobile-confirm-actions{gap:12px}@media(max-width:700px){.branch-select{margin-left:auto}.branch-trigger{min-width:42px;width:42px;padding:0;display:grid;place-items:center}.branch-trigger>span,.branch-trigger>.ui-icon:last-child{display:none}.phase3-screen{padding:16px 8px 32px;gap:12px}.phase3-screen>.toolbar,.phase3-screen>.filter-row,.phase3-screen>.ticket-board,.phase3-screen>.payment-list,.phase3-screen>.pagination,.phase3-screen>.screen-state,.phase3-screen>.empty-state,.phase3-screen>.error-state{margin-left:0;margin-right:0}.filter-row{padding:12px}.filter-row>label,.filter-row>.outline-button,.filter-row input,.filter-row select{width:100%}.payment-date-filters{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:14px 12px}.payment-date-field{min-width:0}.payment-date-field>input{width:100%;padding:0 12px}.payment-date-filters>.outline-button{width:100%;margin-left:0;grid-column:1 / -1}.payment-list-row{gap:12px;padding:16px}.housekeeping-tabs{margin:16px 8px 0;padding:0 12px;gap:18px}.housekeeping-tabs+.toolbar,.housekeeping-table,.availability-board,.template-workspace,.notification-panel{margin-left:8px;margin-right:8px}.housekeeping-table{overflow-x:auto}.housekeeping-head,.housekeeping-row{min-width:980px}.template-editor{padding:20px 16px}.notification-list>div{padding:14px}.report-tabs{padding:0 12px;overflow-x:auto}.modal-body{padding:20px 18px}.modal-actions{padding:14px 18px;flex-wrap:wrap}}.performance-intro,.operating-metrics,.reports-page .report-panel{border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm);overflow:hidden}.performance-kpis{background:transparent;border:0;box-shadow:none}.performance-kpis .report-fact{border:1px solid var(--line)!important;border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.operational-fact{background:var(--surface)}.hospitality-table-wrap{border-radius:0;box-shadow:none}.ticket-board.work-order-board{grid-template-columns:repeat(4,minmax(210px,1fr))}.ticket-column.dikerjakan,.ticket-column.menunggu-konfirmasi{border-color:var(--amber)}.work-order-summary{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-4);color:var(--text-secondary);font-size:var(--text-sm)}.work-order-summary strong{color:var(--text-primary)}.work-order-mine{display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);white-space:nowrap}.work-order-detail .ticket-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.work-order-detail h3,.work-order-detail h4{margin:0}.work-order-history{display:grid;gap:var(--space-2)}.work-order-callout{margin:0;padding:var(--space-3);border-left:3px solid var(--amber);background:var(--warning-bg);color:var(--warning-fg)}.work-order-draft{display:grid;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--line)}.work-order-awaiting{width:100%;text-align:left;cursor:pointer}@media(max-width:1150px){.ticket-board.work-order-board{grid-template-columns:repeat(2,minmax(210px,1fr))}}@media(max-width:700px){.ticket-board.work-order-board{grid-template-columns:1fr}}.duration-presets.is-locked>span,.duration-presets.is-locked>small{color:var(--text-disabled)}.duration-preset-options button:disabled{border-style:dashed;background:var(--surface-muted);color:var(--text-disabled);cursor:not-allowed}.duration-preset-options button:disabled:hover{border-color:var(--line)}.duration-daily-note{color:var(--brand-ink)}.form-panel input:disabled{background:var(--surface-muted);color:var(--text-disabled);cursor:not-allowed}.inspection-gate-note{margin:0 0 var(--space-3);padding:var(--space-3);border-left:3px solid var(--amber);background:var(--warning-bg);color:var(--warning-fg);font-size:var(--text-sm)}.ticket-column{transition:background-color var(--motion-fast) var(--ease),box-shadow var(--motion-fast) var(--ease),opacity var(--motion-fast) var(--ease)}.board-card-draggable{cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none}.board-dragging,.board-dragging *{cursor:grabbing!important;-webkit-user-select:none;user-select:none}.board-drag-ghost{position:fixed;z-index:var(--z-toast);margin:0;pointer-events:none;background:var(--surface);box-shadow:var(--shadow-lg);will-change:transform}.board-drag-ghost.is-settling{box-shadow:var(--shadow-sm)}.board-card-placeholder{border-style:dashed;background:var(--surface-muted);box-shadow:none}.board-card-placeholder>*{visibility:hidden}.board-card-arriving{visibility:hidden}.board-column-available{background:var(--surface-muted)}.board-column-target{background:var(--brand-subtle);box-shadow:inset 0 0 0 2px var(--brand-accent)}.board-column-blocked{opacity:.5}.board-hint{color:var(--text-tertiary);font-size:var(--text-xs)}.account-requests{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.account-requests-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:14px 18px;border-bottom:1px solid var(--line)}.account-requests-head>div{display:grid;gap:2px}.account-requests-head strong{font-size:var(--text-md)}.account-requests-head small{color:var(--text-tertiary);font-size:var(--text-xs)}.account-requests>.form-errors{margin:var(--space-3) 18px 0}.account-request-list{margin:0;padding:0;list-style:none}.account-request-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:14px 18px}.account-request-row+.account-request-row{border-top:1px solid var(--line)}.account-request-main{display:grid;gap:2px;min-width:0;overflow-wrap:anywhere}.account-request-main>span{color:var(--text-secondary);font-size:var(--text-sm)}.account-request-main>small{color:var(--text-tertiary);font-size:var(--text-xs)}.account-request-reason{margin:var(--space-1) 0 0;color:var(--danger);font-size:var(--text-xs)}.account-request-actions{display:flex;flex-shrink:0;gap:var(--space-2)}@media(max-width:700px){.account-request-row{flex-direction:column;align-items:stretch}.account-request-row>.badge{align-self:flex-start}}.role-list,.role-editor-section{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.role-list-head,.role-editor-section-head{display:grid;gap:2px;padding:14px 18px;border-bottom:1px solid var(--line)}.role-list-head strong{font-size:var(--text-md)}.role-list-head small,.role-editor-section-head small{color:var(--text-tertiary);font-size:var(--text-xs)}.role-list ul{margin:0;padding:0;list-style:none}.role-list-empty{margin:0;padding:18px;color:var(--text-secondary);font-size:var(--text-sm)}.role-row{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:14px 18px}.role-row+.role-row{border-top:1px solid var(--line)}.role-row-main{display:grid;gap:2px;min-width:0}.role-row-title{display:flex;align-items:center;gap:var(--space-2)}.role-row-main>span{color:var(--text-secondary);font-size:var(--text-sm)}.role-row-main>small{color:var(--text-tertiary);font-size:var(--text-xs)}.role-row-actions{display:flex;flex-shrink:0;gap:var(--space-2)}.role-editor{display:flex;flex-direction:column;gap:16px}.role-editor>.toolbar{margin:0}.role-editor-section>h2,.role-editor-section-head h2{margin:0;font-size:var(--text-md)}.role-editor-section>h2{padding:14px 18px;border-bottom:1px solid var(--line)}.role-editor-section>.form-grid{padding:18px}.role-editor-section>.field-error{display:block;padding:12px 18px 0}.role-choice-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.role-choice{display:grid;gap:var(--space-2);margin:0;padding:0;border:0}.role-choice legend{margin-bottom:var(--space-2);color:var(--text-secondary);font-size:var(--text-sm);font-weight:600}.role-choice label{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm)}.capability-groups{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4);padding:18px}.capability-group{display:grid;align-content:start;gap:var(--space-1);margin:0;padding:var(--space-3);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-muted)}.capability-group legend{padding:0 var(--space-1);font-size:var(--text-sm);font-weight:600}.capability-item{display:flex;align-items:flex-start;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius);cursor:pointer}.capability-item:hover:not(.is-locked){background:var(--surface-hover)}.capability-item.is-locked{cursor:default}.capability-item input{margin-top:3px}.capability-item>span{display:grid;gap:2px}.capability-item strong{font-size:var(--text-sm);font-weight:500}.capability-item small{color:var(--text-tertiary);font-size:var(--text-xs)}.role-danger{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:14px 18px}.role-danger>div{display:grid;gap:2px}.role-danger small{color:var(--text-tertiary);font-size:var(--text-xs)}@media(max-width:700px){.role-row,.role-danger{flex-direction:column;align-items:stretch}.role-choice-row{grid-template-columns:1fr}.capability-groups{grid-template-columns:1fr;padding:var(--space-3)}}.public-site{min-height:100vh;background:var(--surface);color:var(--ink);font-family:var(--font-sans)}.public-site main{min-height:calc(100vh - 180px)}.public-header{width:min(100% - 48px,1240px);min-height:86px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:32px;border-bottom:1px solid var(--border-subtle)}.public-brand{width:148px;height:70px;display:flex;align-items:center;overflow:hidden}.public-brand img{width:106px;height:106px;object-fit:contain}.public-header nav{display:flex;align-items:center;gap:30px}.public-header nav a{color:var(--text-secondary);font-size:var(--text-base);font-weight:600;text-decoration:none}.public-header nav a:hover{color:var(--brand-ink)}.public-admin-link{min-height:42px;padding:0 18px;border:1px solid var(--border-default);border-radius:var(--radius-pill);display:inline-flex;align-items:center;background:var(--surface);color:var(--ink)!important;box-shadow:var(--shadow-sm)}.public-admin-link:hover{border-color:var(--brand);background:var(--brand-subtle)}.public-tenant-link{min-height:42px;padding:0 18px;border:1px solid var(--brand);border-radius:var(--radius-pill);display:inline-flex;align-items:center;background:var(--brand);color:var(--brand-fg)!important;font-weight:600;box-shadow:var(--shadow-sm)}.public-tenant-link:hover{background:var(--brand-hover);border-color:var(--brand-hover)}.public-hero-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.public-secondary-action{min-height:52px;padding:0 24px;border:1px solid var(--border-default);border-radius:var(--radius-pill);display:inline-flex;align-items:center;justify-content:center;background:var(--surface);color:var(--ink)!important;font-weight:700;text-decoration:none;box-shadow:var(--shadow-sm)}.public-secondary-action:hover{border-color:var(--brand);background:var(--brand-subtle)}.public-hero{width:min(100% - 48px,1240px);min-height:620px;margin:34px auto 0;padding:66px;border-radius:var(--radius-xl);display:grid;grid-template-columns:minmax(0,.82fr) minmax(440px,1.18fr);align-items:center;gap:62px;background:var(--brand-subtle);overflow:hidden}.public-eyebrow{display:block;color:var(--brand-ink);font-size:var(--text-xs);font-weight:700;letter-spacing:.14em;text-transform:uppercase}.public-hero h1{max-width:600px;margin:16px 0 22px;font-size:var(--text-display);font-weight:560;letter-spacing:-.052em;line-height:1.02}.public-hero-copy>p{max-width:510px;margin:0 0 32px;color:var(--text-secondary);font-size:var(--text-lg);line-height:1.7}.public-primary-action{min-height:52px;padding:0 24px;border:1px solid var(--brand);border-radius:var(--radius-pill);display:inline-flex;align-items:center;justify-content:center;background:var(--brand);color:var(--brand-fg);font-weight:700;text-decoration:none;box-shadow:var(--shadow-sm)}.public-primary-action:hover{border-color:var(--brand-hover);background:var(--brand-hover)}.public-hero-visual{min-height:486px;position:relative}.public-hero-visual>img{width:100%;height:486px;border-radius:var(--radius-xl);display:block;object-fit:cover;box-shadow:var(--shadow-lg)}.public-hero-note{min-width:200px;padding:18px 20px;position:absolute;right:20px;bottom:20px;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);display:flex;flex-direction:column;background:var(--surface-translucent);box-shadow:var(--shadow-md);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.public-hero-note strong{font-size:var(--text-3xl);line-height:1}.public-hero-note span{margin-top:7px;color:var(--text-secondary);font-size:var(--text-sm)}.public-locations,.public-catalog{width:min(100% - 48px,1240px);margin:0 auto;padding-top:112px}.public-section-heading h2{max-width:700px;margin:10px 0 0;font-size:var(--text-display-sm);font-weight:560;letter-spacing:-.035em;line-height:1.14}.public-location-list{margin-top:36px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.public-location-list button{min-height:104px;padding:21px;border:1px solid var(--border-default);border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:flex-start;justify-content:center;background:var(--surface);text-align:left}.public-location-list button:hover,.public-location-list button.selected{border-color:var(--brand);background:var(--brand-subtle);box-shadow:var(--shadow-sm)}.public-location-list strong{font-size:var(--text-md)}.public-location-list span{margin-top:5px;color:var(--text-secondary);font-size:var(--text-sm)}.public-catalog{padding-bottom:112px}.public-catalog-head{display:flex;align-items:flex-end;justify-content:space-between;gap:36px}.public-filter{padding:4px;border:1px solid var(--border-default);border-radius:var(--radius-pill);display:flex;background:var(--surface-sunken)}.public-filter button{min-height:38px;padding:0 16px;border:0;border-radius:var(--radius-pill);background:transparent;color:var(--text-secondary);font-size:var(--text-sm);font-weight:650}.public-filter button.selected{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-sm)}.public-room-grid{margin-top:38px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 22px}.public-room-card{min-width:0}.public-room-card>a{display:block;color:inherit;text-decoration:none}.public-room-card:hover .public-room-image img{transform:scale(1.025)}.public-room-image{aspect-ratio:4 / 3;position:relative;border-radius:var(--radius-lg);overflow:hidden;background:var(--surface-sunken)}.public-room-image img{width:100%;height:100%;display:block;object-fit:cover;transition:transform var(--motion-slow) var(--ease)}.public-photo-placeholder{width:100%;height:100%;min-height:220px;padding:32px;display:grid;place-items:center;background:var(--brand-subtle);color:var(--brand-ink);font-size:var(--text-lg);font-weight:700}.public-availability{width:fit-content;min-height:30px;padding:0 12px;border:1px solid;border-radius:var(--radius-pill);display:inline-flex;align-items:center;font-size:var(--text-xs);font-weight:750}.public-room-image .public-availability{position:absolute;top:14px;left:14px;box-shadow:var(--shadow-sm)}.public-availability.available{border-color:var(--success-border);background:var(--success-bg);color:var(--success-fg)}.public-availability.unavailable{border-color:var(--border-default);background:var(--surface-translucent);color:var(--text-secondary)}.public-room-copy{padding:15px 3px 0}.public-room-copy>div:first-child{display:flex;justify-content:space-between;gap:18px;color:var(--text-secondary);font-size:var(--text-xs)}.public-room-copy>div:first-child span:last-child{font-family:var(--font-mono)}.public-room-copy h3{margin:7px 0 4px;font-size:var(--text-lg);font-weight:680}.public-room-status{min-height:21px;margin:0;color:var(--brand-ink);font-size:var(--text-sm)}.public-room-copy ul{min-height:28px;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px;list-style:none}.public-room-copy li{padding:4px 8px;border-radius:var(--radius-pill);background:var(--surface-sunken);color:var(--text-secondary);font-size:var(--text-xs)}.public-room-rate{margin:13px 0 0}.public-room-rate strong{font-size:var(--text-md)}.public-room-rate span{color:var(--text-secondary);font-size:var(--text-sm)}.public-room-skeleton{aspect-ratio:4 / 3;border-radius:var(--radius-lg);background:linear-gradient(100deg,var(--surface-sunken),var(--border-subtle),var(--surface-sunken));background-size:220% 100%;animation:public-shimmer 1.5s infinite}@keyframes public-shimmer{to{background-position-x:-220%}}.public-state{min-height:260px;margin-top:38px;padding:48px;border:1px dashed var(--border-default);border-radius:var(--radius-lg);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}.public-state h3,.public-state h1{margin:0}.public-state p{margin:8px 0 20px;color:var(--text-secondary)}.public-state button,.public-state a{min-height:42px;padding:0 16px;border:1px solid var(--brand);border-radius:var(--radius-pill);display:inline-flex;align-items:center;background:var(--surface);color:var(--brand-ink);font-weight:650;text-decoration:none}.public-footer{width:min(100% - 48px,1240px);min-height:120px;margin:0 auto;border-top:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:space-between;gap:24px}.public-footer>div{display:flex;flex-direction:column}.public-footer span{margin-top:4px;color:var(--text-secondary);font-size:var(--text-sm)}.public-footer a{color:var(--text-secondary);font-size:var(--text-sm)}.public-detail{width:min(100% - 48px,1180px);margin:0 auto;padding:44px 0 112px}.public-detail-topline{display:flex;justify-content:space-between;gap:24px;color:var(--text-secondary);font-size:var(--text-sm)}.public-detail-topline a{text-decoration:none}.public-detail-topline span{font-family:var(--font-mono)}.public-detail-heading{margin:34px 0;display:flex;align-items:flex-end;justify-content:space-between;gap:32px}.public-detail-heading h1{margin:8px 0 3px;font-size:var(--text-display);font-weight:560;letter-spacing:-.05em;line-height:1}.public-detail-heading p{margin:0;color:var(--text-secondary)}.public-gallery{display:grid;grid-template-columns:minmax(0,4fr) minmax(180px,1fr);gap:12px}.public-gallery-main{aspect-ratio:16 / 10;border-radius:var(--radius-xl);overflow:hidden;background:var(--surface-sunken)}.public-gallery-main img{width:100%;height:100%;display:block;object-fit:cover}.public-gallery-thumbs{display:grid;grid-template-rows:repeat(3,minmax(0,1fr));gap:12px}.public-gallery-thumbs button{min-height:0;padding:0;border:2px solid transparent;border-radius:var(--radius-lg);overflow:hidden;background:var(--surface-sunken)}.public-gallery-thumbs button.selected{border-color:var(--brand)}.public-gallery-thumbs img{width:100%;height:100%;display:block;object-fit:cover}.public-detail-layout{margin-top:58px;display:grid;grid-template-columns:minmax(0,1fr) 350px;align-items:start;gap:86px}.public-detail-content section{padding:0 0 42px;margin-bottom:42px;border-bottom:1px solid var(--border-subtle)}.public-detail-content h2{margin:0 0 14px;font-size:var(--text-2xl);font-weight:620;letter-spacing:-.025em}.public-detail-content p{max-width:680px;margin:0;color:var(--text-secondary);font-size:var(--text-md);line-height:1.75}.public-size{margin-top:18px;display:inline-block}.public-feature-grid{margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;list-style:none}.public-feature-grid li{color:var(--text-secondary);font-size:var(--text-md)}.public-contact-card{padding:26px;position:sticky;top:24px;border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-md)}.public-contact-card>p{margin:0 0 18px}.public-contact-card>p strong{font-size:var(--text-2xl)}.public-contact-card>p span{color:var(--text-secondary)}.public-contact-status{margin-bottom:18px;padding:12px 14px;border-radius:var(--radius);font-size:var(--text-sm);font-weight:650}.public-contact-status.available{background:var(--success-bg);color:var(--success-fg)}.public-contact-status.unavailable{background:var(--surface-sunken);color:var(--text-secondary)}.public-contact-card .public-primary-action{width:100%}.public-contact-card small{margin-top:16px;display:block;color:var(--text-secondary);line-height:1.55}.public-detail-loading{min-height:65vh;display:grid;place-items:center;color:var(--text-secondary)}.public-detail-error{width:min(100% - 48px,800px);margin:64px auto 112px;gap:10px}@media(max-width:960px){.public-hero{min-height:auto;padding:48px;grid-template-columns:1fr}.public-hero-copy{max-width:700px}.public-hero-visual,.public-hero-visual>img{height:430px;min-height:430px}.public-location-list{grid-template-columns:repeat(2,1fr)}.public-room-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.public-detail-layout{grid-template-columns:minmax(0,1fr) 320px;gap:42px}}@media(max-width:700px){.public-header{width:min(100% - 32px,1240px);min-height:72px}.public-brand{width:78px;height:64px}.public-brand img{width:82px;height:82px}.public-header nav{gap:8px}.public-header nav>a:not(.public-admin-link):not(.public-tenant-link){display:none}.public-admin-link,.public-tenant-link{min-height:38px;padding:0 14px}.public-hero,.public-locations,.public-catalog,.public-footer,.public-detail{width:min(100% - 32px,1240px)}.public-hero{margin-top:18px;padding:38px 24px 24px;border-radius:var(--radius-xl);gap:38px}.public-hero-copy>p{font-size:var(--text-md)}.public-hero-visual,.public-hero-visual>img{height:320px;min-height:320px;border-radius:var(--radius-lg)}.public-hero-note{min-width:172px;right:12px;bottom:12px}.public-locations,.public-catalog{padding-top:78px}.public-location-list{grid-template-columns:1fr 1fr;gap:10px}.public-location-list button{min-height:90px;padding:16px}.public-catalog-head{align-items:flex-start;flex-direction:column}.public-filter{width:100%;overflow-x:auto}.public-filter button{flex:1;white-space:nowrap}.public-room-grid{grid-template-columns:1fr;gap:36px}.public-footer{padding:28px 0;align-items:flex-start;flex-direction:column}.public-detail{padding-top:30px}.public-detail-heading{margin:28px 0;align-items:flex-start;flex-direction:column}.public-gallery{display:block}.public-gallery-main{aspect-ratio:4 / 3;border-radius:var(--radius-lg)}.public-gallery-thumbs{margin-top:10px;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:none;gap:8px}.public-gallery-thumbs button{aspect-ratio:4 / 3}.public-detail-layout{margin-top:42px;display:flex;flex-direction:column;gap:0}.public-detail-content{width:100%}.public-feature-grid{grid-template-columns:1fr}.public-contact-card{width:100%;position:static}}@media(prefers-reduced-motion:reduce){.public-room-image img{transition:none}.public-room-skeleton{animation:none}}.operations-panel{padding:18px;border:1px solid var(--border-default);border-radius:var(--radius);margin-block:16px;background:var(--surface);color:var(--text-primary)}.operations-panel h3{margin:0 0 12px}.operations-panel label{display:grid;gap:7px;margin-block:12px;font-size:var(--text-base)}.operations-panel label:has(>input[type=checkbox]){display:flex;align-items:center;gap:8px}.operations-panel input:not([type=checkbox]),.operations-panel select,.operations-panel textarea{width:100%;min-height:var(--control-height-lg);border:1px solid var(--border-default);border-radius:var(--radius);padding:9px;background:var(--surface);color:inherit}.operations-panel textarea{min-height:90px}.operations-panel .checklist-toggle{display:flex;align-items:center;gap:12px}.checklist-toggle input{width:22px;height:22px;accent-color:var(--brand);flex-shrink:0}.checklist-toggle small{display:block;margin-top:5px}.operations-summary{display:flex;justify-content:space-between;gap:12px;padding-block:8px}.supervisor-item,.operations-evidence{padding-block:12px;border-top:1px solid var(--border-default)}.bulk-action-bar{position:sticky;bottom:70px;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px;background:var(--surface);border:1px solid var(--border-default);border-radius:var(--radius);z-index:2}.mobile-task-filters{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-block:16px}.mobile-task-filters input,.mobile-task-filters select{min-height:var(--control-height-lg);width:100%;min-width:0}.mobile-task-filters input[type=search]{grid-column:1 / -1}.payment-marker{display:inline-flex;align-items:center;gap:3px;padding:2px 5px;border-radius:var(--radius-sm);font-size:var(--text-2xs);background:var(--surface);color:var(--text-secondary);white-space:nowrap}.payment-legend{display:flex;flex-wrap:wrap;gap:8px;margin-block:12px}@media(max-width:700px){.operations-panel{padding:12px}.operations-panel .form-grid{grid-template-columns:1fr}.operations-panel .toolbar-actions{flex-wrap:wrap}}.modal:has(.reservation-date-editor){width:min(860px,100%)}.reservation-date-modal-body{padding:0}.reservation-date-editor{color:var(--text-primary)}.date-editor-context{display:flex;align-items:center;gap:12px;padding:20px 24px;border-bottom:1px solid var(--border-subtle)}.date-editor-context-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:var(--radius);background:var(--brand-subtle);color:var(--brand-ink);flex-shrink:0}.date-editor-context strong{font-size:var(--text-base);font-weight:600}.date-editor-context strong span{color:var(--text-secondary);font-weight:400}.date-editor-context p{margin:5px 0 0;font-size:var(--text-sm);color:var(--text-secondary);line-height:1.5}.date-editor-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:28px;padding:24px;align-items:start}.date-editor-section-heading{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:18px}.date-editor-section-heading h3{margin:0;font-size:var(--text-base);font-weight:600}.date-editor-reset{padding:0;background:transparent;border:0;color:var(--brand-ink);font-size:var(--text-xs);text-decoration:underline;text-underline-offset:3px}.date-editor-reset:disabled{color:var(--text-disabled);cursor:default}.date-editor-dates{display:grid;grid-template-columns:1fr 1fr;gap:12px}.date-editor-field{display:flex;flex-direction:column;gap:8px;font-size:var(--text-sm);font-weight:500}.date-editor-field>span{display:flex;align-items:center;gap:6px}.date-editor-field small{font-size:var(--text-2xs);font-weight:400;color:var(--text-tertiary)}.reservation-date-editor .date-editor-field input,.reservation-date-editor .date-editor-field textarea{width:100%;min-width:0;min-height:var(--control-height-lg);padding:11px 12px;border:1px solid var(--border-default);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);font:inherit;font-weight:400}.reservation-date-editor .date-editor-field input:disabled{background:var(--surface-sunken);color:var(--text-secondary);opacity:1}.reservation-date-editor .date-editor-field input:focus-visible,.reservation-date-editor .date-editor-field textarea:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}.date-editor-field-help{margin:8px 0 0;color:var(--text-tertiary);font-size:var(--text-2xs);line-height:1.5}.date-editor-shortcuts{margin:18px 0 22px;display:flex;flex-wrap:wrap;align-items:center;gap:10px}.date-editor-shortcuts>span{font-size:var(--text-2xs);color:var(--text-secondary)}.date-editor-shortcuts>div{display:flex;gap:6px}.date-editor-shortcuts button{min-height:32px;padding:5px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:var(--surface);color:var(--brand-ink);font-size:var(--text-xs)}.date-editor-shortcuts button:hover:not(:disabled){background:var(--brand-subtle);border-color:var(--brand)}.reservation-date-editor .date-editor-field textarea{min-height:96px;resize:vertical;line-height:1.6}.date-editor-note{display:flex;gap:8px;margin-top:16px;color:var(--text-secondary)}.date-editor-note svg{flex-shrink:0;margin-top:2px}.date-editor-note p{margin:0;font-size:var(--text-2xs);line-height:1.7}.date-editor-summary{min-width:0;padding:20px;background:var(--surface-sunken);border:1px solid var(--border-subtle);border-radius:var(--radius)}.date-editor-preview-status{font-size:var(--text-2xs);padding:4px 7px;border-radius:var(--radius-pill);background:var(--surface);color:var(--text-secondary);white-space:nowrap}.date-editor-preview-status[data-ready=true]{background:var(--success-bg);color:var(--success-fg)}.date-editor-periods{margin:0}.date-editor-periods>div+div{margin-top:15px}.date-editor-periods dt{margin-bottom:6px;color:var(--text-secondary);font-size:var(--text-2xs)}.date-editor-periods dd{margin:0;font-size:var(--text-sm);font-weight:500;font-variant-numeric:tabular-nums}.date-editor-periods dd span{padding-inline:3px;color:var(--text-tertiary)}.date-editor-duration{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--border-default)}.date-editor-duration strong{font-size:var(--text-2xl);line-height:1.3;font-weight:600;font-variant-numeric:tabular-nums}.date-editor-duration strong span{font-size:var(--text-sm);font-weight:400;color:var(--text-secondary)}.date-editor-duration>span{font-size:var(--text-2xs);color:var(--text-secondary)}.date-editor-preview-empty{display:flex;gap:10px;padding-top:19px;margin-top:17px;border-top:1px solid var(--border-default);color:var(--text-tertiary)}.date-editor-preview-empty svg{flex-shrink:0}.date-editor-preview-empty p{margin:0;font-size:var(--text-xs);line-height:1.6}.date-editor-billing{border-top:1px solid var(--border-default);margin-top:18px;padding-top:16px}.date-editor-billing>div{display:flex;justify-content:space-between;gap:8px;font-size:var(--text-xs)}.date-editor-billing>div>span{color:var(--text-secondary)}.date-editor-billing .date-editor-amount{display:block;margin-top:18px}.date-editor-amount strong{display:block;margin-top:5px;font-size:var(--text-2xl);color:var(--brand-ink);line-height:1.3;letter-spacing:-.5px;overflow-wrap:anywhere}.date-editor-invoices{margin-top:18px;padding-top:16px;border-top:1px solid var(--border-default)}.date-editor-invoices h4{margin:0 0 10px;color:var(--text-secondary);font-size:var(--text-2xs);font-weight:500}.date-editor-invoices>div{display:grid;gap:5px;font-size:var(--text-2xs);padding-block:8px}.date-editor-invoices>div+div{border-top:1px solid var(--border-subtle)}.date-editor-invoices>div>span{color:var(--text-secondary)}.date-editor-footer{padding:16px 24px 20px;border-top:1px solid var(--border-subtle)}.date-editor-footer>p{font-size:var(--text-2xs);color:var(--text-secondary);margin:0 0 12px;line-height:1.5}.date-editor-footer>div{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.date-editor-footer button{min-height:42px}.date-editor-footer .primary-button{display:inline-flex;align-items:center;justify-content:center;gap:8px}.date-editor-error{margin:0 24px 18px;padding:12px;background:var(--danger-bg);color:var(--danger-fg);border-radius:var(--radius);font-size:var(--text-sm)}@media(max-width:700px){.modal-backdrop:has(.reservation-date-editor){padding:12px}.modal:has(.reservation-date-editor){max-height:calc(100dvh - 24px)}.modal:has(.reservation-date-editor)>header{padding-inline:18px;min-height:60px}.modal:has(.reservation-date-editor) h2{font-size:var(--text-lg)}.date-editor-context{padding:16px 18px;align-items:flex-start}.date-editor-context strong span{display:block;margin-top:3px}.date-editor-layout{grid-template-columns:1fr;gap:20px;padding:20px 18px}.date-editor-summary{padding:18px}.date-editor-footer{padding:16px 18px 18px}.date-editor-footer>div{display:grid;grid-template-columns:1fr 1fr}.date-editor-footer .primary-button{grid-column:1 / -1}.date-editor-error{margin-inline:18px}}.mobile-shell{width:min(640px,100%);min-height:100dvh;margin-inline:auto;background:var(--app-bg);color:var(--text-primary)}.mobile-shell>header{position:sticky;top:0;height:68px;padding:12px 20px;z-index:var(--z-sticky);gap:12px;border-bottom:1px solid var(--border-subtle);box-shadow:none}.mobile-shell>header strong{font-size:var(--text-base);font-weight:600}.mobile-shell>header span{font-size:var(--text-2xs);margin-top:3px;color:var(--text-secondary)}.mobile-shell>header button,.mobile-shell .mobile-back{display:grid;place-items:center;width:40px;height:40px;border:1px solid var(--border-subtle);border-radius:var(--radius);background:var(--surface);flex-shrink:0}.mobile-shell>header>div{flex:1;min-width:0}.mobile-shell main{padding:24px 22px 112px}.mobile-shell h1{margin:0;font-size:var(--text-2xl);line-height:1.25;letter-spacing:-.7px;font-weight:600}.mobile-shell nav{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:min(640px,100%);min-height:72px;height:auto;padding:8px 20px calc(8px + env(safe-area-inset-bottom));display:flex;justify-content:center;gap:12px;background:var(--surface);border-top:1px solid var(--border-subtle);z-index:var(--z-sticky)}.mobile-shell nav a{flex:1;max-width:180px;min-height:54px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;border-radius:var(--radius);color:var(--text-secondary);box-shadow:none}.mobile-shell nav a span{font-size:var(--text-2xs);font-weight:500}.mobile-shell nav a .ui-icon{width:20px;height:20px}.mobile-shell nav a.active{background:var(--brand-subtle);color:var(--brand-ink);box-shadow:none}.field-page-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:22px}.field-eyebrow,.mobile-shell .eyebrow{font-size:var(--text-2xs);font-weight:500;color:var(--text-tertiary);letter-spacing:1px;margin:0 0 9px}.field-page-heading p:not(.field-eyebrow){color:var(--text-secondary);font-size:var(--text-sm);line-height:1.6;margin:9px 0 0}.field-heading-icon,.field-location-icon{width:44px;height:var(--control-height-lg);border-radius:var(--radius);background:var(--brand-subtle);color:var(--brand-ink);display:grid;place-items:center;flex-shrink:0}.field-heading-icon{margin-top:20px}.field-period-tabs{display:flex;padding:4px;border:1px solid var(--border-subtle);background:var(--surface-sunken);border-radius:var(--radius);gap:4px;margin-bottom:16px}.field-period-tabs button{flex:1;min-height:38px;border:0;padding:8px;border-radius:var(--radius);font-size:var(--text-xs);background:transparent;color:var(--text-secondary);white-space:nowrap}.field-period-tabs button[aria-pressed=true]{background:var(--surface);color:var(--brand-ink);box-shadow:var(--shadow-sm);font-weight:600}.field-search-toolbar{display:flex;gap:9px;align-items:center}.field-search{display:flex;align-items:center;gap:9px;padding:0 13px;min-height:46px;border:1px solid var(--border-default);border-radius:var(--radius);background:var(--surface);min-width:0;flex:1;color:var(--text-tertiary)}.field-search:focus-within{border-color:var(--border-focus);outline:2px solid var(--brand-subtle)}.field-search input{min-width:0;width:100%;padding:12px 0;color:var(--text-primary);font-size:var(--text-sm);border:0;background:transparent;outline:none;box-shadow:none}.field-filter-button{display:flex;align-items:center;justify-content:center;gap:6px;min-height:46px;padding:10px 12px;border:1px solid var(--border-default);background:var(--surface);border-radius:var(--radius);font-size:var(--text-xs);color:var(--brand-ink)}.field-filter-button b{display:grid;place-items:center;width:18px;height:18px;background:var(--brand);color:var(--brand-fg);border-radius:50%;font-size:var(--text-2xs)}.field-status-tabs{display:flex;overflow-x:auto;gap:7px;padding:14px 0 6px;scrollbar-width:none}.field-status-tabs::-webkit-scrollbar{display:none}.field-status-tabs button{flex-shrink:0;display:flex;align-items:center;gap:6px;min-height:35px;padding:7px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-pill);background:var(--surface);color:var(--text-secondary);font-size:var(--text-xs)}.field-status-tabs button[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:var(--brand-fg)}.field-status-tabs button span{font-size:var(--text-2xs);opacity:.75}.field-active-filters{display:flex;flex-wrap:wrap;gap:6px;padding-block:9px 0}.field-active-filters button{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:6px 9px;font-size:var(--text-2xs);border:1px solid var(--success-border);border-radius:var(--radius);color:var(--brand-ink);background:var(--brand-subtle);text-align:left}.field-list-heading{display:flex;justify-content:space-between;align-items:center;margin:18px 0 12px;font-size:var(--text-2xs);color:var(--text-secondary)}.field-list-heading button{display:flex;align-items:center;gap:5px;background:none;border:0;color:var(--text-secondary);padding:5px 0 5px 8px;font-size:var(--text-2xs)}.field-task-list,.field-report-list{display:grid;gap:12px}.field-task-card,.field-report-card{padding:18px;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface);color:var(--text-primary);text-decoration:none;box-shadow:var(--shadow-sm)}.field-task-card:hover,.field-report-card:hover{border-color:var(--border-strong)}.field-task-top{display:flex;align-items:center;gap:12px}.field-task-top>div{flex:1;min-width:0}.field-task-top>svg{color:var(--text-tertiary);flex-shrink:0}.field-task-top h2{margin:0 0 6px;font-size:var(--text-md);font-weight:600}.field-task-description{margin:14px 0;font-size:var(--text-sm);line-height:1.55;color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.field-task-meta{display:flex;flex-wrap:wrap;gap:12px;border-top:1px solid var(--border-subtle);padding-top:12px;font-size:var(--text-2xs);color:var(--text-tertiary)}.field-task-meta>span{display:flex;gap:5px;align-items:center}.field-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:34px 20px;color:var(--text-tertiary);background:var(--surface);border:1px dashed var(--border-default);border-radius:var(--radius-lg);margin-top:16px}.field-empty h2,.field-empty h3{margin:13px 0 8px;color:var(--text-primary);font-size:var(--text-md);font-weight:600}.field-empty p{margin:0 0 17px;font-size:var(--text-sm);line-height:1.65;max-width:340px;color:var(--text-secondary)}.field-empty button{min-height:40px;font-size:var(--text-xs)}.field-skeletons{display:grid;gap:12px}.field-skeletons>div{height:142px;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface)}.field-feedback{border:1px solid var(--danger-border);background:var(--danger-bg);color:var(--danger-fg);padding:12px;border-radius:var(--radius);margin-block:12px;font-size:var(--text-xs);line-height:1.6}.field-feedback p{margin:0 0 8px}.field-feedback button{border:0;background:none;color:inherit;font-weight:600;text-decoration:underline;padding:4px 0}.field-filter-form,.issue-report-form{padding:22px 24px}.field-filter-form>p,.field-form-intro{margin:0 0 22px;font-size:var(--text-sm);line-height:1.65;color:var(--text-secondary)}.field-filter-form fieldset{border:0;padding:0;margin:0 0 20px}.field-filter-form legend{font-size:var(--text-sm);font-weight:500;margin-bottom:10px}.field-choice-row{display:flex;gap:7px;margin-bottom:16px}.field-choice-row button{flex:1;min-height:40px;font-size:var(--text-xs);border:1px solid var(--border-default);border-radius:var(--radius);background:var(--surface);color:var(--text-secondary);padding:8px}.field-choice-row button[aria-pressed=true]{border-color:var(--brand);background:var(--brand-subtle);color:var(--brand-ink);font-weight:600}.field-form-label{display:flex;flex-direction:column;font-size:var(--text-sm);font-weight:500;gap:8px;margin-block:17px}.field-form-label input,.field-form-label select,.field-form-label textarea{width:100%;min-width:0;min-height:var(--control-height-lg);border:1px solid var(--border-default);border-radius:var(--radius);background:var(--surface);color:var(--text-primary);padding:11px 12px;font:inherit;font-weight:400}.field-form-label textarea{line-height:1.65;min-height:116px;resize:vertical}.field-form-label.field-urgent-toggle{flex-direction:row;align-items:center;gap:var(--space-3)}.field-urgent-toggle input[type=checkbox]{flex:none;width:20px;height:20px;min-height:0;margin:0;padding:0;accent-color:var(--brand)}.field-optional{color:var(--text-tertiary);font-weight:400;font-size:var(--text-2xs)}.field-modal-actions{display:flex;justify-content:flex-end;gap:8px;padding:16px 24px 20px;border-top:1px solid var(--border-subtle)}.field-modal-actions button{display:inline-flex;gap:8px;align-items:center;justify-content:center;min-height:42px;font-size:var(--text-sm)}.field-section-description{color:var(--text-secondary);font-size:var(--text-xs);line-height:1.65;margin:6px 0 14px}.report-overview{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:17px 18px;margin-bottom:18px;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface)}.report-overview>div{display:flex;align-items:center;gap:10px;color:var(--brand-ink)}.report-overview strong{display:block;font-size:var(--text-2xl);line-height:1.1;color:var(--text-primary)}.report-overview span{display:block;margin-top:4px;font-size:var(--text-2xs);color:var(--text-secondary)}.field-new-report,.field-report-trigger{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:var(--text-xs);min-height:42px}.field-report-card{display:block;width:100%;text-align:left}.field-report-meta{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:var(--text-2xs);color:var(--text-tertiary)}.field-report-card h2{margin:14px 0 8px;font-size:var(--text-base);font-weight:600;line-height:1.5}.field-report-card>p{margin:0 0 16px;color:var(--text-secondary);font-size:var(--text-xs);line-height:1.65;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.field-report-location{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border-subtle);padding-top:12px;color:var(--text-secondary)}.field-report-location>span{display:flex;align-items:center;gap:7px;font-size:var(--text-2xs)}.issue-form-section{margin-block:22px}.issue-form-section+.issue-form-section{padding-top:22px;border-top:1px solid var(--border-subtle)}.issue-form-section h3{display:flex;align-items:center;gap:9px;margin:0 0 17px;font-size:var(--text-base);font-weight:600}.issue-form-section h3>span{display:grid;place-items:center;width:24px;height:24px;background:var(--brand-subtle);color:var(--brand-ink);border-radius:var(--radius);font-size:var(--text-2xs)}.issue-form-section h3 small{font-size:var(--text-2xs);font-weight:400;color:var(--text-tertiary)}.field-task-context{display:flex;gap:11px;padding:14px;background:var(--surface-sunken);border-radius:var(--radius);color:var(--brand-ink)}.field-task-context strong{font-size:var(--text-base);color:var(--text-primary)}.field-task-context p{font-size:var(--text-xs);margin:5px 0 0;color:var(--text-secondary);line-height:1.5}.issue-photo-upload{position:relative;display:flex;flex-direction:column;align-items:center;gap:9px;padding:25px 15px;border:1px dashed var(--border-strong);border-radius:var(--radius);color:var(--brand-ink);background:var(--surface-sunken);cursor:pointer}.issue-photo-upload input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.issue-photo-upload strong{font-size:var(--text-sm)}.issue-photo-upload>span{font-size:var(--text-2xs);color:var(--text-tertiary)}.issue-photo-upload:focus-within{outline:2px solid var(--border-focus);outline-offset:2px}.issue-selected-photos,.issue-existing-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-block:12px}.issue-selected-photos>div{position:relative;min-width:0}.issue-selected-photos img,.issue-existing-photos img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border:1px solid var(--border-subtle);border-radius:var(--radius)}.issue-selected-photos button{position:absolute;top:5px;right:5px;display:grid;place-items:center;width:26px;height:26px;padding:0;border:1px solid var(--border-subtle);border-radius:50%;background:var(--surface);color:var(--text-primary)}.issue-selected-photos small{display:block;margin-top:5px;font-size:var(--text-2xs);color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.issue-photo-choice{position:relative;cursor:pointer}.issue-photo-choice input{position:absolute;top:7px;left:7px;width:19px;height:19px;accent-color:var(--brand)}.issue-photo-choice>span{font-size:var(--text-2xs);color:var(--text-secondary);display:block;padding-top:5px}.field-ticket-link{display:flex;align-items:center;gap:8px;color:var(--brand-ink);text-decoration:none;border:1px solid var(--border-subtle);border-radius:var(--radius);padding:13px;font-size:var(--text-xs)}.field-ticket-link span{flex:1}.field-linked-notice{display:flex;gap:8px;padding:12px;border-radius:var(--radius);background:var(--surface-sunken);color:var(--text-secondary)}.field-linked-notice p{margin:0;font-size:var(--text-2xs);line-height:1.6}.field-report-success{display:flex;align-items:center;gap:7px;background:var(--success-bg);color:var(--success-fg);border:1px solid var(--success-border);padding:11px;border-radius:var(--radius);font-size:var(--text-xs);margin:12px 0}.report-overview .field-report-success{flex-basis:100%;margin-bottom:0}.issue-report-detail{padding:22px 24px}.issue-report-detail>h2{margin:18px 0 10px;font-size:var(--text-xl);font-weight:600;line-height:1.5;overflow-wrap:anywhere}.report-detail-location{display:flex;gap:7px;align-items:center;color:var(--text-secondary);font-size:var(--text-sm)}.report-status-track{display:flex;justify-content:space-between;padding:20px 12px;margin-block:22px;background:var(--surface-sunken);border-radius:var(--radius)}.report-status-track>div{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px;font-size:var(--text-2xs);color:var(--text-tertiary);position:relative}.report-status-track>div:not(:last-child):after{position:absolute;content:"";height:1px;background:var(--border-default);top:7px;left:calc(50% + 12px);width:calc(100% - 24px)}.report-status-track>div>span{width:15px;height:15px;border:2px solid var(--border-default);border-radius:50%;background:var(--surface)}.report-status-track>div[data-done=true]>span,.report-status-track>div[data-current=true]>span{border-color:var(--brand);background:var(--brand)}.report-status-track>div[data-current=true]{color:var(--brand-ink)}.issue-report-detail section{padding-top:18px;border-top:1px solid var(--border-subtle);margin-top:20px}.issue-report-detail section>h3{display:flex;gap:8px;margin:0 0 12px;font-size:var(--text-sm);font-weight:600}.issue-report-detail section>h3 span{font-size:var(--text-2xs);color:var(--text-tertiary)}.report-body{font-size:var(--text-sm);line-height:1.8;white-space:pre-wrap;margin:0}.report-assignee{display:flex;gap:10px;padding:14px;border-radius:var(--radius);background:var(--surface-sunken);margin-top:20px}.report-assignee small{display:block;font-size:var(--text-2xs);color:var(--text-secondary);margin-bottom:4px}.report-assignee strong{font-size:var(--text-sm)}.report-evidence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.report-evidence-grid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--radius)}.report-evidence-grid a{color:var(--brand-ink);text-decoration:none}.report-evidence-grid a>span{display:flex;justify-content:space-between;margin-top:8px;font-size:var(--text-2xs)}.supervisor-checklist{margin-block:16px}.checklist-heading{margin-bottom:16px}.checklist-heading h2{display:flex;align-items:center;gap:9px;margin:0;font-size:var(--text-xl);font-weight:600;letter-spacing:-.4px}.checklist-heading h2 span{display:grid;place-items:center;min-width:24px;height:24px;padding:3px 6px;border-radius:var(--radius);color:var(--warning-fg);background:var(--warning-bg);font-size:var(--text-2xs);letter-spacing:0}.checklist-heading>div>p:last-child{font-size:var(--text-xs);margin:8px 0 0;line-height:1.6;color:var(--text-secondary)}.checklist-selection{display:flex;align-items:center;justify-content:space-between;padding:13px 0;border-block:1px solid var(--border-subtle);margin-bottom:14px}.checklist-selection label{display:flex;gap:9px;align-items:center;margin:0;cursor:pointer;min-height:32px;font-size:var(--text-xs)}.checklist-selection label small{display:block;font-size:var(--text-2xs);color:var(--text-tertiary);margin-top:3px}.checklist-selection>span{font-size:var(--text-2xs);color:var(--text-secondary)}.checklist-selection input,.checklist-task-checkbox input{width:21px;height:21px;accent-color:var(--brand);cursor:pointer}.checklist-cards{display:grid;gap:12px}.checklist-card{padding:17px;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.checklist-card[data-selected=true]{border-color:var(--brand);box-shadow:0 0 0 1px var(--brand)}.checklist-card-top{display:flex;gap:10px;align-items:center}.checklist-task-checkbox{display:grid;place-items:center;width:44px;min-height:var(--control-height-lg);cursor:pointer;margin:0;flex-shrink:0}.checklist-card-top .field-location-icon{width:38px;height:38px;border-radius:var(--radius)}.checklist-card-top>div{flex:1;min-width:0}.checklist-card-top h3{margin:0 0 5px;font-size:var(--text-base);font-weight:600}.checklist-card-top p{display:flex;align-items:center;gap:5px;margin:0;color:var(--text-secondary);line-height:1.5}.checklist-date{font-size:var(--text-2xs);color:var(--text-tertiary);flex-shrink:0}.checklist-task-type{font-size:var(--text-xs);color:var(--text-secondary);line-height:1.65;margin:14px 0 12px}.checklist-work-notes{display:flex;align-items:flex-start;gap:7px;padding:11px;background:var(--surface-sunken);border-radius:var(--radius);color:var(--text-secondary)}.checklist-work-notes svg{flex-shrink:0;margin-top:3px}.checklist-work-notes p{line-height:1.65;margin:0}.checklist-card-actions{display:flex;align-items:center;gap:12px;margin-top:13px;flex-wrap:wrap}.checklist-evidence-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 0;min-height:32px;background:transparent;border:0;color:var(--brand-ink);font-size:var(--text-2xs);font-weight:500}.checklist-evidence-toggle[aria-expanded=true] svg:last-child{transform:rotate(180deg)}.checklist-card-actions>a{display:inline-flex;align-items:center;gap:4px;color:var(--text-secondary);font-size:var(--text-2xs);text-decoration:none}.checklist-card-actions>span{margin-left:auto;color:var(--text-tertiary);font-size:var(--text-2xs)}.checklist-evidence{display:grid;gap:9px;padding-top:14px;margin-top:10px;border-top:1px solid var(--border-subtle)}.checklist-evidence a{color:var(--brand-ink);text-decoration:none}.checklist-evidence img{display:block;width:100%;aspect-ratio:1;object-fit:cover;border-radius:var(--radius);border:1px solid var(--border-subtle)}.checklist-evidence a>span{display:flex;justify-content:space-between;font-size:var(--text-2xs);margin-top:6px}.checklist-evidence>p{grid-column:1/-1}.checklist-approval-bar{position:sticky;bottom:16px;z-index:var(--z-sticky);display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:18px;padding:14px 16px;background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-md)}.checklist-approval-bar>div{display:flex;flex-direction:column;gap:5px}.checklist-approval-bar strong{font-size:var(--text-sm)}.checklist-approval-bar>div button{padding:0;border:0;background:none;color:var(--text-secondary);font-size:var(--text-2xs);text-align:left}.checklist-approval-bar>button{display:flex;align-items:center;justify-content:center;gap:7px;font-size:var(--text-xs);min-height:42px}.checklist-message{padding:12px;border:1px solid var(--border-subtle);background:var(--surface);font-size:var(--text-xs);line-height:1.6;border-radius:var(--radius)}.mobile-shell .mobile-task-detail{padding:20px;border:1px solid var(--border-subtle);border-radius:var(--radius-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.mobile-shell .mobile-task-detail h1{margin-top:14px;font-size:var(--text-2xl)}.mobile-shell .mobile-task-detail .task-type{font-size:var(--text-sm);line-height:1.65;margin:10px 0 20px;color:var(--text-secondary)}.mobile-shell .mobile-task-detail dl{font-size:var(--text-xs);margin:18px 0}.mobile-shell .mobile-task-detail dl>div{padding-block:12px;border-bottom:1px solid var(--border-subtle)}.mobile-shell .mobile-task-detail dt{font-size:var(--text-2xs);color:var(--text-tertiary);margin-bottom:6px}.mobile-shell .mobile-task-detail dd{margin:0;color:var(--text-primary);font-size:var(--text-xs);line-height:1.7}.mobile-shell .mobile-proof{margin-block:24px}.mobile-shell .mobile-proof h2,.mobile-shell .mobile-inspection h2{font-size:var(--text-base);font-weight:600;margin-bottom:14px}.mobile-shell .camera-button{display:flex;align-items:center;justify-content:center;gap:10px;min-height:70px;padding:18px;border-radius:var(--radius);border:1px dashed var(--border-strong);color:var(--brand-ink);background:var(--surface-sunken);font-size:var(--text-sm);margin-top:14px}.mobile-shell .mobile-proof>small{display:block;margin-top:9px;color:var(--text-tertiary);font-size:var(--text-2xs);line-height:1.5}.mobile-shell .mobile-photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.mobile-shell .mobile-photo-grid>div{position:relative;border:0;border-radius:var(--radius);overflow:hidden}.mobile-shell .mobile-photo-grid img{width:100%;aspect-ratio:1;object-fit:cover;height:auto;border-radius:var(--radius)}.mobile-shell .mobile-photo-grid button{min-height:32px;font-size:var(--text-2xs);padding:7px;background:var(--surface);color:var(--danger-fg);border:1px solid var(--border-subtle);border-radius:var(--radius);margin-top:6px}.mobile-shell .task-notes-panel{border:0;border-top:1px solid var(--border-subtle);padding:20px 0 0;margin:24px 0 0;border-radius:0}.mobile-shell .task-notes-panel h3{font-size:var(--text-base);margin-bottom:8px}.mobile-shell .task-notes-panel textarea{border-radius:var(--radius);padding:12px;font-size:var(--text-sm);line-height:1.7;min-height:120px;margin-bottom:12px}.mobile-shell .task-notes-panel .field-report-trigger{display:flex;width:100%;margin-top:18px;border-radius:var(--radius)}.mobile-shell .task-notes-panel>p:not(.field-section-description){font-size:var(--text-xs);line-height:1.7;padding:10px;background:var(--surface-sunken);border-radius:var(--radius)}.mobile-shell .mobile-submit{margin-top:22px}.mobile-shell .mobile-confirm-actions{display:flex;gap:9px;margin-top:20px}.mobile-shell .manager-photo-viewer{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.mobile-shell .manager-photo-viewer img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:var(--radius)}@media(max-width:700px){.mobile-shell>header{padding-inline:17px}.mobile-shell main{padding:22px 17px 108px}.mobile-shell h1{font-size:var(--text-2xl)}.field-filter-button>span{display:none}.field-task-card,.field-report-card{padding:16px}.modal-backdrop:has(.issue-report-form),.modal-backdrop:has(.issue-report-detail),.modal-backdrop:has(.field-filter-form){padding:12px}.modal:has(.issue-report-form),.modal:has(.issue-report-detail),.modal:has(.field-filter-form){max-height:calc(100dvh - 24px)}.modal:has(.issue-report-form)>header,.modal:has(.issue-report-detail)>header,.modal:has(.field-filter-form)>header{padding-inline:19px}.modal:has(.issue-report-form) h2,.modal:has(.issue-report-detail) h2,.modal:has(.field-filter-form) h2{font-size:var(--text-lg)}.field-filter-form,.issue-report-form,.issue-report-detail{padding:20px}.field-modal-actions{padding:16px 20px 18px;flex-wrap:wrap}.field-modal-actions button{flex:1}.checklist-card{padding:15px}.checklist-date{display:none}.checklist-card-top{gap:8px}.checklist-approval-bar{padding:12px}.checklist-heading h2{font-size:var(--text-xl)}}@media(prefers-reduced-motion:no-preference){.field-task-card,.field-report-card,.checklist-card{transition:border-color var(--motion-fast) var(--ease),box-shadow var(--motion-fast) var(--ease)}}.report-overview{flex-wrap:wrap}.field-search input:focus{border:0;outline:none;box-shadow:none}.mobile-shell .mobile-task-detail .mobile-reason textarea{width:100%;border-radius:var(--radius);min-height:108px;padding:12px}.mobile-shell .compact-row{border-radius:var(--radius)}.mobile-shell .mobile-confirm-actions button{flex:1;min-height:var(--control-height-lg);border-radius:var(--radius);font-size:var(--text-xs)}.mobile-shell .checklist-approval-bar{position:fixed;bottom:calc(86px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);width:min(596px,calc(100% - 34px));margin:0}.mobile-shell main:has(.checklist-approval-bar){padding-bottom:190px}.checklist-detail-button{display:inline-flex;align-items:center;gap:4px;min-height:32px;padding:6px 0;border:0;background:none;color:var(--text-secondary);font-size:var(--text-2xs)}@media(min-width:961px){.admin-layout .checklist-cards{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}}.checklist-card-top p{font-size:var(--text-2xs)}.checklist-branch{display:block;font-size:var(--text-2xs);color:var(--text-tertiary);margin-top:4px}.checklist-work-notes p{font-size:var(--text-sm)}.checklist-evidence{grid-template-columns:repeat(2,minmax(0,1fr))}.checklist-evidence:has(a:only-child){grid-template-columns:1fr}.checklist-evidence:has(a:only-child) img{aspect-ratio:16/10;max-height:240px}
