:root{color:#14213d;background:#f6f8fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:#f6f8fb}.auth-shell{align-items:center;display:grid;min-height:100vh;padding:18px}.auth-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;margin:0 auto;max-width:440px;padding:22px;width:100%}.auth-card h1,.auth-card p{margin:0}.auth-card h1{font-size:28px;margin-top:8px}.auth-card p{color:#64748b;line-height:1.5;margin-top:10px}.auth-topline{align-items:center;display:flex;justify-content:space-between}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}.app-shell{min-height:100vh;padding:18px 14px 92px}.top-bar{align-items:center;display:flex;justify-content:space-between;gap:12px;margin:0 auto 18px;max-width:1120px}.top-bar h1{flex:1;font-size:21px;line-height:1.1;margin:0;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-button{flex:0 0 auto;padding:0 10px}.app-sidebar{display:none}.sidebar-brand{font-size:16px;font-weight:800;margin:0}.menu-list{display:grid;gap:4px;margin-top:14px}.menu-item{align-items:center;background:transparent;border:0;border-radius:8px;color:#334155;cursor:pointer;display:flex;font-size:15px;font-weight:700;gap:12px;min-height:48px;padding:0 12px;text-align:left;width:100%}.menu-item.active{background:#e6fffb;color:#0f766e}.menu-overlay{background:#0f172a80;display:flex;top:0;right:0;bottom:0;left:0;position:fixed;z-index:60}.menu-drawer{background:#fff;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;max-width:84vw;overflow-y:auto;padding:16px 12px calc(16px + env(safe-area-inset-bottom));width:268px}.menu-drawer-head{align-items:center;display:flex;justify-content:space-between;gap:12px}.eyebrow{color:#64748b;font-size:12px;font-weight:800;letter-spacing:0;margin:0;text-transform:uppercase}.top-actions{align-items:center;display:flex;gap:8px}.icon-button,.primary-icon-button,.assistant-button,.primary-button,.small-button{align-items:center;border:0;cursor:pointer;display:inline-flex;justify-content:center}.icon-button{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#334155;gap:6px;min-height:42px;padding:0 10px}.primary-icon-button,.assistant-button,.primary-button{background:#0f766e;color:#fff}.primary-icon-button{border-radius:8px;height:42px;width:42px}.page-body{margin:0 auto;max-width:1120px}.inline-error,.inline-info{border-radius:8px;font-size:14px;font-weight:800;margin-bottom:12px;padding:12px 14px}.inline-error{background:#fff1f2;color:#be123c}.inline-info{background:#e0f2fe;color:#0369a1}.inline-warning{background:#fef3c7;border-radius:8px;color:#92400e;font-size:14px;font-weight:800;margin-bottom:12px;padding:12px 14px}.clash-line{color:#b45309;display:block;font-size:12px;font-weight:700;margin-top:2px}.stack{display:grid;gap:14px}.alert-band{align-items:center;border-radius:8px;display:flex;gap:12px;padding:14px}.alert-band strong,.alert-band p{margin:0}.alert-band p{color:#475569;font-size:14px;margin-top:2px}.alert-band.danger{background:#fff1f2;color:#be123c}.alert-band.clear{background:#ecfdf5;color:#047857}.section-heading{align-items:end;display:flex;justify-content:space-between;gap:10px}.section-heading h2{font-size:19px;margin:0}.section-heading span{color:#64748b;font-size:13px;font-weight:700}.apartment-list{display:grid;gap:12px}.apartment-card,.people-card,.review-placeholder,.drop-zone,.supply-card,.settings-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px}.apartment-card{border-left:5px solid #94a3b8;padding:14px}.apartment-card.urgent{border-left-color:#e11d48}.apartment-card.soon{border-left-color:#f59e0b}.apartment-card.flexible{border-left-color:#0ea5e9}.apartment-card.quiet{border-left-color:#10b981}.card-topline,.card-footer{align-items:center;display:flex;justify-content:space-between;gap:12px}.unit-code{color:#0f766e;font-size:13px;font-weight:900;margin:0 0 2px}.apartment-card h3{font-size:17px;margin:0}.status-pill{border-radius:999px;font-size:12px;font-weight:800;padding:6px 9px}.status-pill.urgent{background:#ffe4e6;color:#be123c}.status-pill.soon{background:#fef3c7;color:#a16207}.status-pill.flexible{background:#e0f2fe;color:#0369a1}.status-pill.quiet{background:#dcfce7;color:#047857}.status-grid{display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin:14px 0}.status-grid div{background:#f8fafc;border-radius:8px;min-height:68px;padding:10px}.status-grid .wide{grid-column:1 / -1}.status-grid span,.card-footer,.supply-card span,.person-row span{color:#64748b;font-size:13px}.status-grid strong{display:block;font-size:15px;margin-top:4px}.status-grid .pax-line{color:#0f766e;display:block;font-size:13px;font-weight:700;margin-top:4px}.status-grid .left-line{color:#94a3b8;display:block;font-size:12px;margin-top:4px}.card-footer{border-top:1px solid #e2e8f0;padding-top:10px}.assistant-button{border-radius:999px;bottom:86px;box-shadow:0 12px 30px #0f766e47;height:58px;position:fixed;right:16px;width:58px;z-index:20}.assistant-panel{background:#14213d;border-radius:8px;bottom:154px;box-shadow:0 18px 50px #0f172a3d;color:#fff;padding:16px;position:fixed;right:14px;width:min(340px,calc(100vw - 28px));z-index:19}.assistant-panel h2,.assistant-panel p{margin:0}.assistant-panel h2{font-size:20px;margin:4px 0 8px}.assistant-panel p:last-of-type{color:#cbd5e1;font-size:14px;line-height:1.45}.primary-button,.secondary-button{border-radius:8px;gap:8px;margin-top:14px;min-height:44px;padding:0 14px}.file-button{cursor:pointer;position:relative}.file-button input{height:1px;opacity:0;pointer-events:none;position:absolute;width:1px}.full-width{width:100%}.secondary-button{background:#eef6ff;color:#0369a1}.bottom-nav{background:#fffffff0;border-top:1px solid #e2e8f0;bottom:0;display:grid;grid-template-columns:repeat(6,1fr);left:0;padding:8px 8px 10px;position:fixed;right:0;z-index:18}.nav-item{align-items:center;background:transparent;border:0;border-radius:8px;color:#64748b;display:grid;font-size:11px;gap:3px;justify-items:center;min-height:52px}.nav-item.active{background:#e6fffb;color:#0f766e}.board-page{display:grid;gap:14px}.board-scroll{background:#fff;border:1px solid #e2e8f0;border-radius:8px;overflow-x:auto}.board-grid{display:grid;min-width:820px}.board-corner,.board-day,.board-unit,.board-cell{border-bottom:1px solid #e2e8f0;border-right:1px solid #e2e8f0}.board-day{background:#f8fafc;display:grid;gap:2px;min-height:58px;padding:8px 4px;text-align:center}.board-day span{color:#64748b;font-size:11px;font-weight:800}.board-unit{align-items:center;color:#334155;display:flex;font-size:12px;font-weight:900;min-height:54px;padding:0 8px}.board-cell{align-items:center;display:flex;justify-content:center;min-height:54px;padding:4px}.board-day.today{background:#e0f2fe}.board-day.today span,.board-day.today strong{color:#0369a1}.board-cell.today{box-shadow:inset 3px 0 #38bdf8}.board-cell.occupied{background:#ccfbf1}.board-cell.arrive{background:#14b8a6;color:#fff}.board-cell.depart{background:#fecaca;color:#991b1b;position:relative}.board-cell.depart.clean-scheduled{background:#fde68a;color:#92400e}.board-cell.depart.clean-done{background:#bbf7d0;color:#166534}.clean-badge{position:absolute;top:2px;right:2px}.clean-badge.done{align-items:center;background:#16a34a;border-radius:50%;color:#fff;display:flex;height:14px;justify-content:center;width:14px}.clean-badge.scheduled{background:#f59e0b;border-radius:50%;height:8px;width:8px}.board-cell.turn{background:linear-gradient(135deg,#fecaca 0,#fecaca 47%,#fff 47%,#fff 53%,#ccfbf1 53%,#ccfbf1);position:relative}.board-cell.turn span{position:absolute;-webkit-line-clamp:1}.board-cell.turn .out{top:3px;left:4px;color:#991b1b}.board-cell.turn .in{bottom:3px;right:4px;color:#0f766e}.board-legend{align-items:center;color:#64748b;display:flex;flex-wrap:wrap;font-size:12px;font-weight:700;gap:14px;padding:8px 2px 0}.board-legend span{align-items:center;display:inline-flex;gap:5px}.board-legend .swatch{border-radius:3px;display:inline-block;height:13px;width:13px}.board-legend .swatch.in{background:#14b8a6}.board-legend .swatch.out{background:#fecaca}.board-legend .swatch.turn{background:linear-gradient(135deg,#fecaca 0,#fecaca 47%,#fff 47%,#fff 53%,#ccfbf1 53%,#ccfbf1)}.board-cell span{display:-webkit-box;font-size:11px;font-weight:900;line-height:1.12;max-width:100%;overflow:hidden;overflow-wrap:anywhere;text-align:center;-webkit-box-orient:vertical;-webkit-line-clamp:2}.drop-zone{align-items:center;border-style:dashed;display:grid;justify-items:center;min-height:240px;padding:26px;text-align:center}.drop-zone h2,.drop-zone p,.review-placeholder h3,.review-placeholder p{margin:0}.drop-zone p,.review-placeholder p{color:#64748b;line-height:1.5}.review-placeholder{padding:16px}.parsed-table-wrap{overflow-x:auto}.parsed-table{border-collapse:collapse;min-width:720px;width:100%}.parsed-table th,.parsed-table td{border-bottom:1px solid #e2e8f0;font-size:13px;padding:10px 8px;text-align:left}.parsed-table th{color:#64748b;font-weight:900}.inline-title{align-items:center;display:flex;gap:8px;margin-bottom:6px}.inline-title h3{margin:0}.supply-list{display:grid;gap:10px}.supply-card{align-items:center;border-left:5px solid #10b981;display:flex;justify-content:space-between;gap:12px;padding:14px}.supply-card.watch{border-left-color:#f59e0b}.supply-card.low{border-left-color:#e11d48}.supply-main{display:grid;flex:1;gap:5px;min-width:0}.supply-card p,.supply-card strong{display:block;margin:0}.supply-card p{text-transform:capitalize}.supply-card strong{font-size:15px}.supply-card span{color:#64748b;font-size:12px}.supply-error{color:#e11d48!important}.supply-bar{background:#e2e8f0;border-radius:999px;height:7px;margin:2px 0;overflow:hidden;width:100%}.supply-bar-fill{background:#10b981;border-radius:999px;height:100%;transition:width .3s ease}.supply-card.watch .supply-bar-fill{background:#f59e0b}.supply-card.low .supply-bar-fill{background:#e11d48}.supply-card .small-button,.refill-input{align-self:center;flex-shrink:0}.refill-input label{color:#64748b;display:block;font-size:11px;font-weight:700;margin-bottom:4px;text-align:right}.refill-row{align-items:center;display:flex;gap:6px}.refill-row input{border:1px solid #cbd5e1;border-radius:8px;font-size:15px;padding:7px 8px;text-align:center;width:64px}.icon-confirm,.icon-cancel{align-items:center;border:0;border-radius:8px;cursor:pointer;display:inline-flex;height:34px;justify-content:center;width:34px}.icon-confirm{background:#14b8a6;color:#fff}.icon-cancel{background:#f1f5f9;color:#475569}.supply-config-list{display:flex;flex-direction:column;gap:8px;margin:8px 0}.supply-config-head,.supply-config-row{align-items:center;display:grid;gap:8px;grid-template-columns:1fr 88px 88px}.supply-config-head span{color:#64748b;font-size:11px;font-weight:700;text-align:center}.supply-config-head span:first-child{text-align:left}.supply-config-row strong{font-size:14px;text-transform:capitalize}.supply-config-row input{border:1px solid #cbd5e1;border-radius:8px;font-size:15px;padding:7px 8px;text-align:center;width:100%}.datetime-row{display:flex;gap:10px;margin:4px 0 10px}.datetime-row .field-label{flex:1}.note-button{align-items:center;background:transparent;border:0;color:#64748b;cursor:pointer;display:inline-flex;font-size:13px;font-weight:700;gap:5px;padding:0}.note-list{display:flex;flex-direction:column;gap:8px;margin:8px 0}.note-row{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;gap:8px;justify-content:space-between;padding:10px 12px}.note-body{min-width:0}.note-body p{font-size:14px;margin:0 0 2px}.note-body span{color:#94a3b8;font-size:11px;font-weight:700}.note-toggle{align-items:center;color:#334155;display:flex;font-size:13px;gap:8px;margin:4px 0 8px}.note-toggle input{height:18px;width:18px}.small-button{align-items:center;background:#e6fffb;border-radius:8px;color:#0f766e;display:inline-flex;gap:6px;font-weight:800;min-height:38px;padding:0 12px}.people-card{padding:14px}.people-card h2{font-size:18px;margin:0 0 10px}.person-row{align-items:center;border-top:1px solid #e2e8f0;color:inherit;display:flex;gap:8px;min-height:58px}.person-link{align-items:center;color:inherit;display:flex;flex:1;justify-content:space-between;min-width:0;text-decoration:none}.person-row strong,.person-row span{display:block}.icon-button.danger{color:#e11d48}.form-grid{display:grid;gap:10px 12px;grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid>*{min-width:0}.manual-form{display:grid;gap:4px;margin-top:12px}.manual-form select,.field-label select{border:1px solid #cbd5e1;border-radius:8px;color:#14213d;font:inherit;min-height:38px;min-width:0;padding:0 10px;width:100%;background:#fff}.drop-zone.dragging{background:#e6fffb;border-color:#0f766e}.import-picker{display:grid;gap:10px}.drop-zone.file-button{overflow:hidden}.drop-zone .primary-button{pointer-events:none}.camera-button{align-items:center;display:inline-flex;gap:6px;justify-content:center}.inline-success{background:#dcfce7;border-radius:8px;color:#166534;font-weight:700;padding:10px 12px}.confirm-rows{display:grid;gap:12px;margin:12px 0}.confirm-row{border:1px solid #e2e8f0;border-left:4px solid #94a3b8;border-radius:8px;padding:12px}.confirm-row.invalid{border-left-color:#e11d48;background:#fff1f2}.confirm-summary{align-items:center;display:flex;gap:8px}.confirm-summary-main{align-items:center;background:transparent;border:0;color:inherit;cursor:pointer;display:flex;flex:1;gap:8px;min-width:0;padding:4px 0;text-align:left}.confirm-summary-text{flex:1;min-width:0}.confirm-summary-text strong{display:block}.confirm-summary-text span{color:#64748b;display:block;font-size:12px}.confirm-row.invalid .confirm-summary-text span{color:#e11d48}.flag-icon{color:#e11d48;flex-shrink:0}.chev{color:#94a3b8;flex-shrink:0;transition:transform .2s ease}.chev.open{transform:rotate(180deg)}.confirm-edit{margin-top:10px}.row-flag{align-items:center;color:#e11d48;display:inline-flex;font-size:12px;font-weight:800;gap:5px}.booking-list{display:grid;gap:8px;margin-top:8px}.booking-row{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:inherit;cursor:pointer;display:flex;justify-content:space-between;min-height:56px;padding:10px 12px;text-align:left;width:100%}.booking-row strong,.booking-row span{display:block}.booking-row{cursor:default;gap:8px}.booking-row-main{flex:1;min-width:0}.booking-row-main strong,.booking-row-main span{display:block}.booking-row span{color:#64748b;font-size:13px}.clean-chip{align-items:center;border:0;border-radius:12px;cursor:pointer;display:inline-flex;flex-direction:column;flex-shrink:0;font-size:12px;font-weight:800;gap:1px;padding:5px 10px}.clean-chip-main{align-items:center;display:inline-flex;gap:4px}.clean-chip small{font-size:10px;font-weight:700;opacity:.85}.clean-chip .auto-tag{font-size:10px;font-style:normal;font-weight:700;opacity:.7}.clean-chip.none,.clean-chip.pending{background:#f1f5f9;color:#475569}.clean-chip.scheduled{background:#fef3c7;color:#92400e}.clean-chip.done{background:#dcfce7;color:#166534}.seg-toggle{display:inline-flex;border:1px solid #cbd5e1;border-radius:8px;overflow:hidden;margin:4px 0 12px}.seg-toggle button{background:transparent;border:0;color:#64748b;cursor:pointer;font-size:13px;font-weight:700;padding:6px 16px}.seg-toggle button.on{background:#e0f2fe;color:#0369a1}.apt-list{display:flex;flex-direction:column;gap:14px}.apt-block{display:flex;flex-direction:column;gap:6px}.apt-head{align-items:center;display:flex;justify-content:space-between;padding:2px 2px 4px}.apt-head b{font-size:15px;font-weight:900}.apt-head small{color:#64748b;font-weight:700}.apt-pill{border-radius:999px;font-size:12px;font-weight:800;padding:3px 10px;white-space:nowrap}.apt-pill.turn{background:#fef3c7;color:#92400e}.apt-pill.arrive{background:#dbeafe;color:#1d4ed8}.apt-pill.depart{background:#fecaca;color:#991b1b}.apt-pill.inhouse{background:#ccfbf1;color:#0f766e}.apt-pill.free{background:#f1f5f9;color:#94a3b8}.apt-pill.done{background:#f1f5f9;color:#475569}.apt-empty{color:#94a3b8;font-size:13px;margin:0;padding:2px 4px 6px}.apt-turn,.apt-gap{align-items:center;display:flex;font-size:11px;font-weight:700;gap:5px;padding:1px 4px 1px 14px}.apt-turn{color:#b45309}.apt-gap{color:#94a3b8}.booking-row.arriving{border-left:4px solid #3b82f6}.booking-row.checkout{border-left:4px solid #ef4444}.booking-row.inhouse{border-left:4px solid #14b8a6}.booking-row.past{opacity:.55}.row-pill{border-radius:999px;font-size:11px;font-style:normal;font-weight:800;margin-left:8px;padding:2px 8px;vertical-align:1px}.row-pill.arrive{background:#dbeafe;color:#1d4ed8}.row-pill.inhouse{background:#ccfbf1;color:#0f766e}.sheet-action{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#14213d;cursor:pointer;display:flex;font-weight:700;gap:10px;margin-top:8px;min-height:48px;padding:0 14px;width:100%}.sheet-action.done{background:#dcfce7;border-color:#bbf7d0;color:#166534}.sheet-action.muted{color:#64748b}.sheet-action.selected{background:#e6fffb;border-color:#0f766e;color:#0f766e}.sheet-action.selected svg:last-child{margin-left:auto}.sheet-action.warn{background:#fef3c7;border-color:#fde68a;color:#92400e}.icon-button.active{background:#e6fffb;color:#0f766e}.board-cell.occupied,.board-cell.arrive,.board-cell.depart,.board-cell.turn{cursor:pointer}.modal-overlay{align-items:flex-end;background:#0f172a80;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:0;position:fixed;z-index:60}.modal-card{background:#fff;border-radius:16px 16px 0 0;max-height:92vh;max-width:520px;overflow-y:auto;padding:18px;width:100%}.danger-button{align-items:center;background:#fee2e2;border:0;border-radius:8px;color:#b91c1c;cursor:pointer;display:inline-flex;font-weight:800;gap:6px;min-height:44px;padding:0 14px}.danger-button.compact{flex-shrink:0;font-size:13px;min-height:36px;padding:0 12px}.spinner{animation:spin .8s linear infinite;border:3px solid #a5f3fc;border-radius:50%;border-top-color:#0891b2;display:inline-block;height:20px;width:20px}@keyframes spin{to{transform:rotate(360deg)}}.parsing-banner{align-items:center;background:#ecfeff;border:1px solid #a5f3fc;border-radius:10px;color:#0e7490;display:flex;font-weight:800;gap:12px;padding:14px 16px}.assistant-sheet{background:#fff;border-radius:18px 18px 0 0;display:flex;flex-direction:column;gap:10px;max-height:78vh;padding:16px;width:100%}.assistant-messages{display:flex;flex-direction:column;gap:8px;min-height:120px;overflow-y:auto;padding:4px 0}.assistant-msg{align-items:flex-end;border-radius:14px;display:flex;gap:6px;max-width:88%;padding:9px 12px}.assistant-msg p{margin:0;white-space:pre-wrap}.assistant-msg.user{align-self:flex-end;background:#14b8a6;color:#fff}.assistant-msg.assistant{align-self:flex-start;background:#f1f5f9;color:#0f172a}.assistant-msg.assistant .icon-button{color:#0f766e}.assistant-listening{color:#0e7490;font-weight:800;margin:0;text-align:center}.assistant-input{align-items:center;display:flex;gap:8px}.assistant-input input{border:1px solid #cbd5e1;border-radius:999px;flex:1;font-size:15px;min-width:0;padding:10px 14px}.icon-round{align-items:center;background:#f1f5f9;border:0;border-radius:50%;color:#334155;cursor:pointer;display:inline-flex;flex-shrink:0;height:42px;justify-content:center;width:42px}.icon-round.primary{background:#14b8a6;color:#fff}.icon-round.live{animation:pulse 1s ease-in-out infinite;background:#ef4444;color:#fff}@keyframes pulse{50%{opacity:.55}}.inline-success.flash{animation:flash-in .25s ease}@keyframes flash-in{0%{opacity:0;transform:translateY(-6px)}}@media (min-width: 620px){.modal-overlay{align-items:center}.modal-card{border-radius:14px}}.settings-card{padding:16px}.settings-card h2,.settings-card p{margin:0}.settings-card h2{font-size:18px;margin-bottom:12px}.settings-card p{color:#64748b;line-height:1.5;margin-top:12px}.settings-tabs{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:6px;grid-template-columns:repeat(5,minmax(0,1fr));padding:6px}.settings-tabs button{background:transparent;border:0;border-radius:7px;color:#64748b;cursor:pointer;font-weight:800;min-height:40px}.settings-tabs button.active{background:#e6fffb;color:#0f766e}.setting-row{align-items:center;border-top:1px solid #e2e8f0;display:flex;justify-content:space-between;gap:12px;min-height:52px}.setting-row span{color:#64748b}.rates-list{display:grid;gap:10px;margin-top:14px}.rate-row{align-items:center;border-top:1px solid #e2e8f0;display:grid;gap:10px;grid-template-columns:1fr 96px 96px 110px;min-height:62px;padding-top:10px}.rate-row label,.field-label{color:#64748b;display:grid;font-size:12px;font-weight:800;gap:5px}.rate-row input,.field-label input{border:1px solid #cbd5e1;border-radius:8px;color:#14213d;font:inherit;min-height:38px;min-width:0;padding:0 10px;width:100%}.check-label{align-items:center;color:#14213d;display:flex!important;flex-direction:row;font-size:13px!important}.check-label input{min-height:auto}.field-label{margin-top:14px}.tag-settings-list{display:grid;gap:12px;margin-top:14px}.tag-setting-row{border-top:1px solid #e2e8f0;display:grid;gap:8px;padding-top:12px}.tag-setting-row p{font-size:14px;margin:0}@media (max-width: 620px){.settings-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.rate-row{grid-template-columns:1fr 1fr}.rate-row strong{grid-column:1 / -1}}@media (min-width: 760px){.app-shell{padding:28px 24px 102px}.apartment-list{grid-template-columns:repeat(2,minmax(0,1fr))}.apartment-card:first-child{grid-column:1 / -1}.supply-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width: 1040px){.apartment-list{grid-template-columns:repeat(3,minmax(0,1fr))}.apartment-card:first-child{grid-column:auto}.app-shell{padding:28px 24px 28px 288px}.app-sidebar{background:#fff;border-right:1px solid #e2e8f0;bottom:0;display:block;left:0;overflow-y:auto;padding:22px 14px;position:fixed;top:0;width:248px;z-index:19}.menu-button,.bottom-nav{display:none}}.inline-title h2{font-size:18px;margin:0}.settings-lede{color:#64748b;line-height:1.5;margin:-4px 0 4px}.field-hint{color:#64748b;font-size:13px;line-height:1.45;margin:6px 0 0!important}.supplies-wip{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;color:#92400e;font-size:13px;line-height:1.45;margin:0;padding:10px 12px}.key-badge{border-radius:999px;display:inline-block;font-size:12px;font-weight:800;padding:4px 10px}.key-badge.set{background:#e6fffb;color:#0f766e}.key-badge.default{background:#f1f5f9;color:#64748b}.button-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}.button-row .secondary-button{align-items:center;display:inline-flex;gap:6px}.area-switcher{align-items:center;display:flex;gap:8px;margin:0 auto 14px;max-width:1120px}.area-switcher-scroll{display:flex;flex:1;gap:8px;min-width:0;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.area-mic{align-items:center;background:#0f766e;border:0;border-radius:999px;color:#fff;cursor:pointer;display:inline-flex;flex:0 0 auto;height:36px;justify-content:center;width:36px}.area-switcher-scroll::-webkit-scrollbar{display:none}.area-chip{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:999px;color:#334155;cursor:pointer;display:inline-flex;flex:0 0 auto;font-size:13px;font-weight:700;gap:4px;min-height:36px;padding:0 14px}.area-chip.on{background:#0f766e;border-color:#0f766e;color:#fff}.area-chip.add{border-style:dashed;color:#0f766e}.supply-group-label{color:#64748b;font-size:12px;font-weight:800;letter-spacing:.02em;margin:4px 0 8px;text-transform:uppercase}.area-row{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;gap:8px;padding:9px 0}.area-row>input{flex:1;min-width:0}.area-name{display:grid;flex:1}.area-name span{color:#64748b;font-size:12px}.area-add{display:flex;gap:8px;margin-top:12px}.area-add input{flex:1;min-width:0}.area-assign{display:grid;gap:8px;margin-top:16px}.area-assign-row{align-items:center;display:flex;gap:10px;justify-content:space-between}.area-assign-row span{font-size:14px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.area-assign-row select{flex:0 0 auto;max-width:45%}.onboarding-card{background:#fff;border-radius:16px 16px 0 0;max-width:420px;padding:28px 22px 24px;text-align:center;width:100%}.onboarding-icon{align-items:center;background:#e6fffb;border-radius:50%;color:#0f766e;display:inline-flex;height:60px;justify-content:center;margin-bottom:14px;width:60px}.onboarding-card h2{font-size:20px;margin:0 0 8px}.onboarding-card p{color:#475569;font-size:15px;line-height:1.5;margin:0 0 18px}.onboarding-dots{display:flex;gap:6px;justify-content:center;margin-bottom:18px}.onboarding-dots .dot{background:#cbd5e1;border-radius:50%;height:7px;width:7px}.onboarding-dots .dot.on{background:#0f766e}.onboarding-actions{display:flex;gap:10px;justify-content:center}.onboarding-actions button{flex:1;min-height:44px}@media (min-width: 640px){.onboarding-card{border-radius:16px}}.import-area{background:#fff;border:1px solid #e2e8f0;border-radius:8px;font-weight:700;padding:12px 14px}.apartment-form{border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:10px;margin-top:10px;padding:12px}.create-unit-btn{margin-top:8px}.hours-month-nav{align-items:center;display:flex;gap:12px;justify-content:center}.hours-month-nav strong{font-size:16px;min-width:150px;text-align:center;text-transform:capitalize}.hours-person-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:12px 14px}.hours-person-head{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding-bottom:8px}.hours-person-head strong{font-size:16px}.hours-total{background:#e6fffb;border-radius:999px;color:#0f766e;font-size:14px;font-weight:800;padding:3px 12px}.hours-row{align-items:center;display:flex;gap:10px;justify-content:space-between;padding:9px 0;border-bottom:1px solid #f8fafc}.hours-row:last-child{border-bottom:0}.hours-row-text{display:grid;min-width:0}.hours-row-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hours-row-text span{color:#64748b;font-size:12px}.hours-field{align-items:center;display:flex;flex:0 0 auto;gap:6px}.hours-field input{text-align:right;width:68px}.hours-field span{color:#64748b;font-size:13px}.hours-field .hours-save,.hours-field .hours-saved{align-items:center;border-radius:9px;display:inline-flex;flex:0 0 auto;height:32px;justify-content:center;width:32px}.hours-field .hours-save{background:#0f766e;border:0;color:#fff;cursor:pointer}.hours-field .hours-save:disabled{opacity:.55}.hours-field .hours-saved{background:#dcfce7;color:#166534}.hours-owed{background:#fff7ed;border-radius:999px;color:#c2410c;font-size:14px;font-weight:800;padding:3px 12px;white-space:nowrap}.hours-owed em{font-style:normal;font-weight:700}.hours-balance-line{align-items:center;color:#475569;display:flex;font-size:13px;font-weight:600;gap:10px;justify-content:space-between;margin-top:8px}.payment-form{background:#f8fafc;border-radius:8px;margin-top:10px;padding:10px}.hours-history-toggle{background:transparent;border:0;color:#0f766e;cursor:pointer;font-size:13px;font-weight:700;margin-top:8px;padding:4px 0;text-align:left}.payment-row{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;gap:10px;justify-content:space-between;padding:8px 0}.payment-row-text{display:grid;min-width:0}.payment-row-text span{color:#64748b;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hours-cycles{border-top:1px solid #f1f5f9;margin-top:10px;padding-top:4px}.feed-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}.feed-chip{border-radius:999px;font-size:11px;font-style:normal;font-weight:800;padding:2px 8px}.feed-chip.linked{background:#e6fffb;color:#0f766e}.feed-chip.failing{background:#fee2e2;color:#b91c1c}.feed-chip.missing{background:#f1f5f9;color:#94a3b8}.feed-remove-row{margin-top:8px}.source-tags{display:inline-flex;gap:4px;margin-left:6px}.source-tag{border-radius:999px;background:#f1f5f9;color:#64748b;font-size:10px;font-style:normal;font-weight:800;padding:1px 6px}.source-tag.airbnb{background:#ffe4e6;color:#be123c}.source-tag.booking{background:#dbeafe;color:#1d4ed8}.no-name{color:#94a3b8;font-weight:700}.calendar-review{border:1px solid #fed7aa;background:#fffbeb}.conflict-row{border-top:1px solid #fde68a;padding:10px 0 2px}.conflict-main strong{display:block;font-size:14px}.conflict-main span{color:#78716c;display:block;font-size:12px;line-height:1.5;margin-top:2px}.conflict-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.small-button.danger{background:#fee2e2;color:#b91c1c}.photo-compare{margin-top:10px}.photo-compare-toggle{align-items:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:10px;color:#334155;cursor:pointer;display:flex;font-weight:800;gap:8px;min-height:42px;padding:0 12px;width:100%}.photo-compare-img{border:1px solid #e2e8f0;border-radius:10px;cursor:zoom-in;display:block;margin-top:8px;max-height:55vh;object-fit:contain;width:100%}.photo-full{background:#020617eb;bottom:0;left:0;overflow:auto;padding:12px;position:fixed;right:0;top:0;z-index:60}.photo-full img{display:block;margin:0 auto;max-width:100%;width:100%}.photo-full-close{background:#fff;border:0;border-radius:999px;color:#14213d;cursor:pointer;height:40px;position:fixed;right:14px;top:14px;width:40px;z-index:61}.provider-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.provider-chip{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;color:#475569;cursor:pointer;font-weight:800;min-height:38px;padding:0 14px}.provider-chip.active{background:#0f766e;border-color:#0f766e;color:#fff}.sheet-rules-input{border:1px solid #cbd5f5;border-radius:10px;font-family:inherit;font-size:15px;line-height:1.5;padding:10px 12px;resize:vertical;width:100%}.checklist-mic-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:10px;justify-items:center;padding:18px 14px 14px}.checklist-mic{align-items:center;background:#0f766e;border:0;border-radius:999px;box-shadow:0 12px 30px #0f766e47;color:#fff;cursor:pointer;display:inline-flex;height:76px;justify-content:center;width:76px}.checklist-mic:disabled{background:#94a3b8;box-shadow:none}.checklist-mic.listening{animation:checklist-pulse 1.4s ease-in-out infinite;background:#b91c1c;box-shadow:0 12px 30px #b91c1c4d}@keyframes checklist-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.checklist-mic-label{color:#64748b;font-size:14px;font-weight:700;margin:0;text-align:center}.checklist-partial{background:#f1f5f9;border-radius:8px;color:#334155;font-size:14px;line-height:1.45;margin:0;padding:8px 10px;width:100%}.checklist-type-row{display:flex;gap:8px;width:100%}.checklist-type-row input{border:1px solid #cbd5f5;border-radius:8px;flex:1;font-size:15px;min-height:44px;min-width:0;padding:0 10px}.checklist-strip{background:#f0fdfa;border:1px solid #99f6e4;border-radius:8px;display:grid;gap:8px;padding:10px 12px}.checklist-strip p{font-size:15px;font-weight:700;line-height:1.45;margin:0}.checklist-strip-tags{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.checklist-filter-chip{align-items:center;align-self:start;background:#0f766e;border:0;border-radius:999px;color:#fff;cursor:pointer;display:inline-flex;font-size:13px;font-weight:800;gap:8px;min-height:36px;padding:0 12px}.checklist-filter-chip span{font-weight:600;opacity:.85}.checklist-tag{border-radius:999px;font-size:12px;font-weight:800;padding:4px 10px}.checklist-tag.added{background:#ccfbf1;color:#0f766e}.checklist-tag.done{background:#e2e8f0;color:#475569}.checklist-group{padding:12px 14px}.checklist-group h2{font-size:16px;margin:0 0 8px}.checklist-row{align-items:center;border-top:1px solid #f1f5f9;display:flex;gap:8px;padding:8px 0}.checklist-row:first-of-type{border-top:0}.checklist-row-text{flex:1;min-width:0}.checklist-row-text strong{display:block;font-size:15px;font-weight:700;line-height:1.35;word-break:break-word}.checklist-row-text span{color:#64748b;font-size:12px}.checklist-row.sorting .checklist-row-text strong{color:#475569;font-weight:600}.checklist-sorting-mark{align-items:center;color:#6366f1;display:flex;height:34px;justify-content:center;width:34px}.checklist-row.done .checklist-row-text strong{color:#94a3b8;font-weight:600;text-decoration:line-through}.checklist-row.editing input{border:1px solid #cbd5f5;border-radius:8px;flex:1;font-size:15px;min-height:42px;min-width:0;padding:0 10px}.checklist-tick{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:999px;color:#0f766e;cursor:pointer;display:inline-flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.checklist-tick.done{background:#ccfbf1;border-color:#99f6e4}.checklist-done-toggle{background:none;border:0;color:#475569;cursor:pointer;font-size:14px;font-weight:800;padding:4px 0;text-align:left;width:100%}
