:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;color:#19221f;background:#f6f7f5;font-synthesis:none;text-rendering:optimizeLegibility;font-optical-sizing:auto}*{box-sizing:border-box}body{margin:0;min-width:320px}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh}.sidebar{width:252px;background:#fff;border-right:1px solid #e8ece9;position:fixed;inset:0 auto 0 0;display:flex;flex-direction:column;padding:21px 14px 14px;z-index:5}.sidebar-brand{display:flex;align-items:center;gap:10px;padding:2px 9px 28px}.sidebar-brand strong{font-family:inherit;font-size:15px;display:block}.sidebar-brand span{font-size:10px;color:#87928d;display:block;margin-top:2px}.brand-mark{width:46px;height:46px;border-radius:15px;background:#e9f6ef;color:#16804d;display:grid;place-items:center}.brand-mark.small{width:35px;height:35px;border-radius:11px}.workspace-label{font-size:9px;letter-spacing:1.1px;color:#a0aaa5;font-weight:700;padding:0 11px 11px}.sidebar nav{display:grid;gap:4px}.nav-item{border:0;background:transparent;color:#69746e;padding:10px 11px;display:flex;align-items:center;gap:11px;text-align:left;border-radius:9px;font-size:12px;width:100%;transition:.15s}.nav-item:hover{background:#f5f7f5}.nav-item.active{background:#eaf6ef;color:#16784b;font-weight:600}.nav-count{margin-left:auto;font-size:10px;color:#548064;background:#edf7f0;border-radius:12px;min-width:19px;text-align:center;padding:2px 5px}.sidebar-bottom{margin-top:auto}.security-note{display:flex;align-items:flex-start;gap:8px;color:#839087;font-size:9px;line-height:1.45;padding:10px 9px;border-radius:8px;background:#f7f9f7;margin-bottom:9px}.security-note svg{flex:none;color:#4a9b69}.sidebar-profile{border-top:1px solid #edf0ee;padding:14px 3px 1px;display:flex;align-items:center;gap:9px}.avatar{height:30px;width:30px;border-radius:50%;display:grid;place-items:center;background:#efe5d7;color:#765332;font-size:11px;font-weight:700;flex:none}.avatar.large{width:42px;height:42px;font-size:14px}.profile-copy{min-width:0;flex:1}.profile-copy strong,.profile-copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-copy strong{font-size:10px}.profile-copy span{font-size:9px;color:#929b96;margin-top:3px}.icon-button{position:relative;border:0;background:transparent;color:#79847e;display:grid;place-items:center;width:33px;height:33px;border-radius:8px;flex:none}.icon-button:hover{background:#f1f4f2}.main-area{margin-left:252px;min-height:100vh}.topbar{height:62px;border-bottom:1px solid #e8ece9;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;z-index:3}.breadcrumb{font-size:11px;color:#9aa39f}.breadcrumb span{padding:0 8px;color:#c4cbc7}.breadcrumb strong{color:#46524b;font-weight:600}.top-actions{display:flex;align-items:center;gap:13px}.search-box{height:32px;width:190px;border:1px solid #e8ece9;border-radius:8px;display:flex;align-items:center;gap:7px;padding:0 9px;color:#98a19b}.search-box input{border:0;outline:0;width:100%;font-size:10px;background:transparent;color:#39453d}.top-user{display:flex;align-items:center;gap:8px;color:#58635d;font-size:10px;margin-left:4px}.top-user .avatar{height:28px;width:28px}.notification-button i{position:absolute;right:6px;top:6px;width:7px;height:7px;border-radius:50%;background:#d85d4d;border:1px solid white}.content-wrap{max-width:1250px;margin:0 auto;padding:31px 34px}.welcome-row,.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:24px}.eyebrow{font-size:9px;letter-spacing:1.1px;font-weight:700;color:#8a9690;margin:0 0 8px}.welcome-row h1,.page-header h1,.login-card h1{font-family:inherit;font-size:26px;letter-spacing:-.8px;margin:0 0 6px}.muted{color:#87918c;font-size:11px;margin:0;line-height:1.6}.primary-button,.secondary-button{border:0;border-radius:8px;padding:10px 13px;font-size:11px;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:7px;white-space:nowrap;transition:.15s}.primary-button{background:#16784b;color:#fff;box-shadow:0 3px 8px #16784b20}.primary-button:hover{background:#11683f}.primary-button:disabled{opacity:.5;cursor:not-allowed}.secondary-button{background:#f2f5f3;color:#536057;border:1px solid #e6ebe7}.secondary-button:hover{background:#e9eeeb}.create-button{white-space:nowrap}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;margin-bottom:16px}.stat-card,.panel,.apartment-card{background:#fff;border:1px solid #e8ece9;border-radius:12px}.stat-card{padding:16px 17px;min-height:139px;display:flex;flex-direction:column;align-items:flex-start}.stat-icon,.quick-icon{display:grid;place-items:center;border-radius:9px;width:33px;height:33px;margin-bottom:13px}.mint{background:#eaf6ef;color:#16804d}.blue{background:#edf3ff;color:#4d72c9}.amber{background:#fff4e3;color:#c1842d}.rose{background:#fff0ed;color:#c96d58}.stat-label{font-size:10px;color:#75817a}.stat-value{font-family:inherit;font-size:24px;line-height:1.15;margin:4px 0}.stat-caption{font-size:9px;color:#a0a9a4}.panel-grid{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,.9fr);gap:14px}.panel{padding:18px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:13px}.panel-heading h2{font-family:inherit;font-size:13px;margin:0 0 4px}.panel-heading .muted{font-size:9px}.text-button{border:0;background:transparent;color:#16784b;font-size:10px;font-weight:600;padding:5px}.text-button:hover{text-decoration:underline}.table-panel{padding:0;overflow:hidden}.table-wrap{width:100%;overflow:auto}table{width:100%;border-collapse:collapse;white-space:nowrap}th{text-align:left;background:#fafbfa;color:#909b94;font-size:9px;font-weight:600;padding:11px 12px;border-bottom:1px solid #edf0ee}td{font-size:10px;color:#56625a;padding:11px 12px;border-bottom:1px solid #f0f2f1}td strong{color:#303c34;font-weight:600}tbody tr:last-child td{border-bottom:0}tbody tr:hover{background:#fbfcfb}.status-pill{display:inline-flex;align-items:center;border-radius:20px;padding:4px 8px;font-size:9px;font-weight:600;background:#f1f3f2;color:#6f7973}.status-active,.status-confirmed,.status-approved,.status-completed,.status-vip{background:#eaf6ef;color:#278052}.status-hold_pending,.status-pending,.status-new{background:#fff4df;color:#a97722}.status-occupied{background:#edf3ff;color:#4b6fc2}.status-cleaning,.status-regular{background:#f0edff;color:#6d60b0}.status-inactive,.status-cancelled,.status-expired,.status-archived,.status-rejected,.status-attention{background:#fcefed;color:#b35e53}.empty-state{min-height:200px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:22px 25px}.empty-icon{height:36px;width:36px;border-radius:50%;background:#edf8f0;color:#25935a;display:grid;place-items:center;margin-bottom:10px}.empty-state strong{font-size:11px;margin-bottom:5px}.empty-state p{max-width:330px;font-size:9px;line-height:1.6;color:#929b96;margin:0}.empty-action{margin-top:15px}.quick-panel{padding-bottom:7px}.quick-link{width:100%;display:flex;align-items:center;gap:10px;text-align:left;border:0;border-top:1px solid #f0f2f1;background:#fff;padding:12px 0;color:#26312b}.quick-link:hover{background:#fbfcfb}.quick-link:first-of-type{margin-top:9px}.quick-link .quick-icon{margin:0;width:32px;height:32px;flex:none}.quick-link span:nth-child(2){flex:1}.quick-link strong,.quick-link small{display:block}.quick-link strong{font-size:10px;font-weight:600}.quick-link small{color:#949d98;font-size:9px;margin-top:3px}.chevron-right{transform:rotate(-90deg);color:#a7b0ab}.page-header{align-items:center;margin-bottom:20px}.page-header h1{font-size:24px}.apartment-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px}.apartment-card{padding:16px}.apartment-color{width:39px;height:39px;border-radius:11px;display:grid;place-items:center;color:#fff;margin-bottom:15px}.apartment-card-title{display:flex;justify-content:space-between;align-items:flex-start}.apartment-card-title h3{margin:0 0 7px;font-family:inherit;font-size:13px}.apartment-description{min-height:31px;margin:11px 0 14px;color:#89938d;font-size:10px;line-height:1.5}.apartment-meta{border-top:1px solid #edf0ee;padding-top:11px;display:flex;justify-content:space-between;gap:7px;color:#768179;font-size:9px}.apartment-meta span{display:flex;align-items:center;gap:5px}.small-action{border:0;background:transparent;color:#16784b;font-size:9px;font-weight:600;padding:5px}.small-action:hover{text-decoration:underline}.row-actions{display:flex;gap:5px}.approve-button,.reject-button{border:0;border-radius:6px;padding:6px 8px;font-size:9px;font-weight:600}.approve-button{background:#eaf6ef;color:#16784b}.reject-button{background:#fff0ed;color:#b35e53}.approve-button:disabled,.reject-button:disabled{opacity:.5}.truncate-cell{max-width:170px;overflow:hidden;text-overflow:ellipsis}.mono-cell{font-family:inherit;font-size:10px}.notice-list{display:grid;gap:9px}.notice-card{background:#fff;border:1px solid #e8ece9;border-radius:10px;padding:13px;display:flex;align-items:flex-start;gap:11px}.notice-card.unread{border-color:#d4eade;background:#fcfffd}.notice-dot{width:31px;height:31px;border-radius:9px;background:#edf6f0;color:#348458;display:grid;place-items:center;flex:none}.notice-content{flex:1;min-width:0}.notice-title-row{display:flex;justify-content:space-between;gap:12px}.notice-title-row strong{font-size:11px}.notice-title-row time{font-size:9px;color:#9aa39e;white-space:nowrap}.notice-content p{font-size:10px;color:#707b74;line-height:1.5;margin:6px 0}.settings-panel{max-width:760px;padding:20px}.settings-avatar{display:flex;align-items:center;gap:12px;padding-bottom:17px;border-bottom:1px solid #edf0ee}.settings-avatar strong,.settings-avatar span{display:block}.settings-avatar strong{font-size:12px}.settings-avatar span{font-size:10px;color:#929b96;margin-top:4px}.settings-form{padding-top:18px;display:grid;grid-template-columns:1fr 1fr;gap:14px}.settings-form .form-field:first-child{grid-column:span 2}.settings-form .primary-button{justify-self:start}.admin-note{max-width:760px;margin-top:12px;display:flex;gap:10px;color:#308053}.admin-note strong{font-size:11px;color:#35433a}.admin-note p{font-size:10px;line-height:1.5;color:#808c84;margin:4px 0 0}.form-field{display:grid;gap:6px;font-size:10px;color:#57635b;font-weight:600}.form-field input,.form-field select,.form-field textarea{width:100%;border:1px solid #dfe6e1;border-radius:7px;padding:9px 10px;font-size:11px;color:#29352e;background:#fff;outline:0;min-height:36px}.form-field textarea{resize:vertical}.form-field input:focus,.form-field select:focus,.form-field textarea:focus{border-color:#43966c;box-shadow:0 0 0 3px #e8f5ec}.form-field input:disabled{background:#f5f7f5;color:#8b958f}.form-field small{font-size:9px;color:#939d97;font-weight:400}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#14201972;display:grid;place-items:center;padding:18px;z-index:20;overflow:auto}.modal-card{width:min(100%,510px);max-height:min(92vh,850px);overflow:auto;background:#fff;border-radius:14px;box-shadow:0 22px 70px #16261c30;padding:19px}.modal-card.modal-wide{width:min(100%,690px)}.modal-heading{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #edf0ee;padding-bottom:12px;margin-bottom:15px}.modal-heading h2{font-family:inherit;font-size:15px;margin:0}.modal-form{display:grid;gap:12px}.two-fields{display:grid;grid-template-columns:1fr 1fr;gap:11px}.color-input{padding:3px!important;height:36px}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:7px;padding-top:13px;border-top:1px solid #edf0ee}.form-hint{font-size:9px;color:#87938b;line-height:1.5;margin:0}.readonly-summary{display:grid;gap:5px;border-radius:8px;background:#f6f8f6;padding:11px;font-size:10px;color:#69756d}.readonly-summary strong{color:#27352c;font-size:11px}.detail-content{display:grid;gap:12px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#edf0ee;border:1px solid #edf0ee;border-radius:8px;overflow:hidden}.detail-item{background:#fff;padding:11px}.detail-item>span{display:block;font-size:9px;color:#929b95;margin-bottom:5px}.detail-item>strong{display:block;font-size:10px;color:#3a463e;font-weight:600}.admin-status{max-width:250px}.json-view{background:#f6f8f6;border:1px solid #edf0ee;padding:12px;border-radius:8px;font-size:9px;overflow:auto;max-height:190px;white-space:pre-wrap;word-break:break-word}.detail-content h3{font-size:10px;margin:2px 0 -5px}.error-banner{display:flex;justify-content:space-between;align-items:center;gap:10px;border:1px solid #f0d0cb;background:#fff4f2;color:#a74f43;border-radius:8px;padding:8px 10px;font-size:10px;margin-bottom:13px}.toast{position:fixed;right:20px;bottom:20px;z-index:30;display:flex;align-items:center;gap:8px;background:#1c7247;color:#fff;border-radius:9px;padding:11px 14px;font-size:10px;box-shadow:0 8px 28px #123e2730}.login-page{min-height:100vh;display:grid;place-items:center;padding:22px;background:radial-gradient(circle at 15% 15%,#e8f5ec 0,transparent 35%),#f6f7f5}.login-card{background:#fff;border:1px solid #e7ece8;border-radius:17px;box-shadow:0 18px 50px #22372c0b;width:min(100%,410px);padding:32px}.login-card .brand-mark{margin-bottom:23px}.login-card h1{font-size:24px}.login-card>.muted{margin-bottom:22px}.login-form{display:grid;gap:13px}.login-form label{font-size:10px;color:#526057;font-weight:600}.login-form input{display:block;width:100%;margin-top:6px;border:1px solid #dfe6e1;border-radius:7px;padding:10px 11px;font-size:11px;outline:none}.login-form input:focus{border-color:#43966c;box-shadow:0 0 0 3px #e8f5ec}.login-foot{font-size:9px;text-align:center;color:#98a19c;margin:17px 0 0}.error-text{font-size:10px;color:#b34545;margin:0}.notice{padding:10px 12px;background:#fff8e8;border:1px solid #f4e5bd;border-radius:8px;color:#806329;font-size:10px;margin-bottom:14px}.loading-screen{height:100vh;display:grid;place-items:center;color:#76827b;font-size:12px}.full-width{width:100%;margin-top:15px}.mobile-menu,.mobile-close,.scrim{display:none}.footer-note{font-size:9px;color:#a6afaa;text-align:center;margin-top:28px}@media(max-width:1050px){.stat-grid,.apartment-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.panel-grid{grid-template-columns:1fr}.content-wrap{padding:26px 24px}}@media(max-width:680px){.sidebar{transform:translate(-100%);transition:transform .2s ease;width:265px}.sidebar.open{transform:translate(0)}.scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#17241e55;border:0;z-index:4}.main-area{margin-left:0}.topbar{height:56px;padding:0 12px}.mobile-menu{display:grid}.mobile-close{display:grid;margin-left:auto}.breadcrumb{margin-right:auto;margin-left:7px;font-size:10px}.top-actions{gap:3px}.search-box{width:34px;height:32px;border:0;padding:0;justify-content:center}.search-box input{display:none}.top-user span,.top-user>svg{display:none}.content-wrap{padding:23px 14px}.welcome-row,.page-header{align-items:flex-start;flex-direction:column;margin-bottom:19px}.welcome-row h1,.page-header h1{font-size:23px}.welcome-row .create-button,.page-header>.primary-button{width:100%}.stat-grid{grid-template-columns:1fr 1fr;gap:8px}.stat-card{min-height:124px;padding:12px}.stat-value{font-size:21px}.stat-label{font-size:9px}.stat-caption{font-size:8px}.apartment-grid{grid-template-columns:1fr}.panel{padding:14px}.panel-grid{gap:10px}.table-panel{padding:0}.table-wrap table{min-width:680px}.settings-form{grid-template-columns:1fr}.settings-form .form-field:first-child{grid-column:auto}.two-fields{grid-template-columns:1fr}.modal-backdrop{padding:9px}.modal-card{padding:15px;max-height:95vh}.modal-actions{position:sticky;bottom:-1px;background:#fff}.detail-grid{grid-template-columns:1fr 1fr}.notice-card{padding:10px;gap:8px}.notice-card>.small-action{max-width:90px}.notice-title-row{display:block}.notice-title-row time{display:block;margin-top:4px}.toast{left:12px;right:12px;bottom:12px;justify-content:center}}.complete-form{display:grid;gap:11px;padding:14px;border:1px solid #e4ece6;border-radius:9px;background:#fbfdfb}.complete-form>strong{font-size:11px;color:#34443a}.edit-booking-button{margin-top:9px}.error-banner .icon-button{color:inherit}.login-card{max-height:94vh;overflow:auto}.profile-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:18px 0}.profile-choice{display:grid;justify-items:center;gap:7px;padding:12px 7px;border:1px solid #e7ece8;border-radius:10px;background:#fff;color:#35433a;min-width:0}.profile-choice:hover,.profile-choice.selected{border-color:#43966c;background:#f3faf5;box-shadow:0 0 0 2px #e8f5ec}.profile-choice strong{font-size:10px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.profile-avatar{width:39px;height:39px;border-radius:50%;font-size:15px;background:linear-gradient(145deg,#d9f0e2,#b6dfc5);color:#176b43;flex:none}.login-switch{display:block;margin:16px auto 0;padding:5px;border:0;background:transparent;color:#28794d;font-size:10px}.login-switch:hover{text-decoration:underline}.user-admin-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(320px,1.2fr);gap:12px;align-items:start}.create-user-form{margin-top:15px}.create-user-form>.primary-button{justify-self:start;display:flex;align-items:center;gap:6px}.partner-list{display:grid;gap:2px}.partner-row{display:flex;align-items:center;gap:10px;padding:10px 2px;border-bottom:1px solid #edf0ee}.partner-row strong{font-size:11px;flex:1}.partner-row .status-pill{font-size:8px}@media(max-width:900px){.user-admin-grid{grid-template-columns:1fr}}@media(max-width:480px){.profile-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.login-card{padding:24px 18px}}.apartment-choice-row{display:flex;align-items:stretch;gap:7px}.apartment-choice-row>select{width:125px;flex:none}.apartment-choice{min-width:62px;max-width:84px;display:grid;justify-items:center;align-content:center;gap:5px;border:1px solid #e4eae6;background:#fff;border-radius:9px;padding:7px 6px;color:#556158}.apartment-choice.selected{border-color:#278556;background:#f1faf4;box-shadow:0 0 0 2px #e4f4e9}.apartment-choice-icon{width:30px;height:30px;border-radius:9px;color:#fff;display:grid;place-items:center}.apartment-choice small{font-size:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.hour-select{display:flex;align-items:center;gap:8px;margin-top:7px;color:#7c8980;font-size:9px}.hour-select select{width:100px}.choice-pills{display:flex;flex-wrap:wrap;gap:6px;margin:2px 0 8px}.choice-pills button{display:flex;align-items:center;gap:4px;border:1px solid #dfe7e1;background:#fff;color:#59665e;border-radius:7px;padding:7px 10px;font-size:10px}.choice-pills button.active{border-color:#23824f;background:#edf8f0;color:#16784b;font-weight:700}.price-input-wrap{display:flex;align-items:center;gap:9px}.price-input-wrap input{max-width:130px}.price-input-wrap span{font-size:9px;color:#87938b}.booking-conflict-preview{display:grid;gap:5px;border:1px solid #f1d4ae;background:#fff9ee;border-radius:8px;padding:10px 12px;color:#8b672e}.booking-conflict-preview strong{display:flex;align-items:center;gap:6px;font-size:10px;color:#9a6420}.booking-conflict-preview span,.booking-conflict-preview small{font-size:9px;line-height:1.5}.booking-conflict-preview small{color:#786e5d}@media(max-width:680px){.apartment-choice-row{flex-wrap:wrap}.apartment-choice-row>select{flex:1;min-width:110px}.apartment-choice{flex:1;min-width:55px}.price-input-wrap span{font-size:8px}}.login-method-switch{display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:4px;border:1px solid #e7ece8;border-radius:9px;background:#f8faf8;margin:4px 0 12px}.login-method-switch button{border:0;border-radius:6px;padding:9px 8px;background:transparent;color:#68766d;font-size:10px;font-weight:600}.login-method-switch button.active{background:#fff;color:#16784b;box-shadow:0 1px 4px #152a1c16}.hour-select select{width:64px;min-width:0;padding:7px 6px}.hour-select{flex-wrap:wrap;gap:5px}.partner-row{flex-wrap:wrap}.pin-reset-action{color:#a35e37}.partner-row .small-action{white-space:nowrap}@media(max-width:520px){.partner-row{gap:6px}.partner-row strong{min-width:80px}}.avatar-flower{background:#fff1f5;color:#8b5264;font-size:19px}.avatar-image{overflow:hidden;background:#f2f4f3}.avatar-image img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}.filter-bar{display:flex;align-items:end;gap:9px;flex-wrap:wrap;padding:12px;margin:0 0 12px;background:#fff;border:1px solid #e8ece9;border-radius:10px}.filter-bar label{display:grid;gap:5px;color:#647068;font-size:9px;font-weight:600}.filter-bar select,.filter-bar input{min-height:34px;border:1px solid #dfe6e1;border-radius:7px;padding:7px 9px;background:#fff;color:#344139;font-size:10px}.audit-filters .secondary-button{padding:8px 10px}.danger-action{color:#ad4c42}.customer-duplicate-hint{grid-column:1/-1;margin-top:-8px}.partner-row .avatar{margin-right:2px}@media(max-width:680px){.filter-bar{align-items:stretch}.filter-bar label{min-width:135px;flex:1}.audit-filters .secondary-button{flex:1}}.avatar-lotus svg{display:block;width:72%;height:72%}.flower-mark{width:70%;height:70%;display:block}.avatar-flower{background:#fff0f5;color:#a82043}.calendar-panel{padding:14px;overflow:hidden}.calendar-toolbar,.calendar-nav,.calendar-view-switch,.calendar-legend{display:flex;align-items:center;gap:8px}.calendar-toolbar{justify-content:space-between;flex-wrap:wrap;margin-bottom:12px}.calendar-nav strong{font-size:13px;text-transform:capitalize;margin-left:8px}.calendar-view-switch{padding:3px;background:#f2f5f3;border-radius:8px}.calendar-view-switch button{border:0;background:transparent;color:#66736a;padding:7px 11px;border-radius:6px;font-size:10px}.calendar-view-switch button.selected{background:#fff;color:#16784b;box-shadow:0 1px 4px #152a1c16;font-weight:700}.calendar-legend{gap:16px;color:#738078;font-size:9px;padding:0 0 12px;border-bottom:1px solid #edf0ee;margin-bottom:10px}.calendar-legend span{display:flex;align-items:center;gap:5px}.calendar-legend span:first-child svg{color:#3473c5}.calendar-legend span:nth-child(2) svg{color:#9b68ad}.calendar-legend .small-action{display:flex;align-items:center;margin-left:auto}.month-calendar{overflow:hidden;min-width:0}.week-calendar{min-width:650px}.month-weekdays,.month-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.month-weekdays span{text-align:center;padding:8px;color:#89948d;font-size:9px;font-weight:700}.month-day{min-width:0;min-height:108px;border:0;border-top:1px solid #edf0ee;border-right:1px solid #edf0ee;background:#fff;padding:6px;text-align:left;display:flex;flex-direction:column;gap:4px;cursor:pointer}.month-day:nth-child(7n+1){border-left:1px solid #edf0ee}.month-day:hover{background:#f9fbf9}.month-day.outside{background:#fafbfa;color:#abb3ae}.month-day.today .month-day-number{background:#16784b;color:#fff}.month-day-number{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;font-size:10px}.month-day-events{display:grid;align-content:start;gap:3px;min-width:0}.month-day-events>span{display:block;min-width:0}.month-day-events small{font-size:8px;color:#6e7b72;padding-left:4px}.calendar-booking{display:flex;align-items:center;gap:4px;width:100%;min-width:0;padding:4px 5px;border:0;border-radius:5px;background:#edf4ff;color:#315f9d;text-align:left;font-size:8px;line-height:1.25}.calendar-booking span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.calendar-booking svg{flex:none}.calendar-booking.status-hold_pending{background:#fff3de;color:#98691c}.calendar-booking.status-cleaning{background:#f3efff;color:#705ba5}.calendar-booking.compact{padding:3px 4px}.week-calendar{display:grid;grid-template-columns:repeat(7,minmax(115px,1fr));overflow:auto;border-left:1px solid #edf0ee}.week-day{min-height:360px;border-top:1px solid #edf0ee;border-right:1px solid #edf0ee}.week-day.today{background:#fbfefb}.week-day-heading{width:100%;display:grid;gap:3px;justify-items:center;padding:9px 4px;border:0;border-bottom:1px solid #edf0ee;background:#fafbfa;color:#58645c}.week-day-heading small{font-size:8px;color:#8a958e}.week-day-heading strong{font-size:14px}.week-day-events{display:grid;align-content:start;gap:5px;padding:6px}.calendar-empty-note{color:#89948d;font-size:10px;text-align:center;padding:16px 0 0;margin:0}.day-calendar-scroll{overflow:auto}.day-calendar{display:grid;grid-template-columns:58px repeat(var(--apartment-count),minmax(170px,1fr));min-width:max-content}.day-corner,.day-apartment-heading{position:sticky;top:0;z-index:1;background:#fafbfa;border-bottom:1px solid #e9eeea;padding:9px 8px;color:#5c685f;font-size:9px;font-weight:700}.day-corner{left:0;z-index:2}.day-apartment-heading{display:flex;align-items:center;gap:6px;border-left:1px solid #edf0ee}.apartment-dot{width:8px;height:8px;border-radius:50%;flex:none}.day-hour-row{display:contents}.day-hour-label{position:sticky;left:0;z-index:1;background:#fff;border-bottom:1px solid #edf0ee;padding:8px 6px;color:#89948d;font-size:9px}.day-hour-cell{min-height:48px;border-left:1px solid #edf0ee;border-bottom:1px solid #edf0ee;padding:3px;display:flex;flex-direction:column;gap:2px}.day-event{display:flex;align-items:center;gap:4px;min-height:22px;padding:3px 5px;border:0;border-radius:4px;text-align:left;font-size:8px;line-height:1.25}.day-event span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.day-event svg{flex:none}.day-event.booked{background:#eaf2ff;color:#315f9d}.day-event.cleaning{background:#f3efff;color:#705ba5}.calendar-legend svg{flex:none}@media(max-width:700px){.calendar-panel{padding:10px}.calendar-toolbar{align-items:flex-start}.calendar-nav{flex-wrap:wrap}.calendar-nav strong{width:100%;margin:0 0 0 4px}.calendar-view-switch{margin-left:auto}.calendar-legend{gap:9px;flex-wrap:wrap}.month-calendar,.week-calendar{min-width:620px}}.stat-card-clickable{width:100%;border:1px solid #e8ece9;color:inherit;text-align:left;cursor:pointer;font:inherit;transition:transform .14s,box-shadow .14s}.stat-card-clickable:hover,.stat-card-clickable:focus-visible{transform:translateY(-2px);box-shadow:0 7px 18px #1d352514;outline:none}.stat-card-clickable:focus-visible{box-shadow:0 0 0 3px #bfe3ce}.pending-approval-panel{margin-top:14px}.pending-approval-list{display:grid;gap:8px}.pending-approval-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px;border:1px solid #e9efeb;border-radius:9px}.pending-approval-card>div:first-child{display:grid;gap:4px;min-width:0}.pending-approval-card strong{font-size:10px;color:#334138}.pending-approval-card span,.pending-approval-card small{font-size:9px;color:#78847c}.pending-approval-card .row-actions{flex:none}.booking-rejection-form{gap:10px}.rejection-reason-option{display:flex;align-items:center;gap:9px;border:1px solid #e5ebe7;border-radius:8px;padding:11px;color:#46534a;font-size:10px;cursor:pointer}.rejection-reason-option:has(input:checked){border-color:#328859;background:#f3faf5}.rejection-reason-option input{accent-color:#16784b}.upcoming-table-wrap{overflow:hidden}@media(max-width:680px){.upcoming-table-wrap{overflow:visible}.upcoming-table-wrap table{display:block;min-width:0;width:100%;white-space:normal}.upcoming-table-wrap thead{display:none}.upcoming-table-wrap tbody{display:grid;gap:8px;padding:9px}.upcoming-table-wrap tr{display:grid;grid-template-columns:1fr 1fr;border:1px solid #e9efeb;border-radius:8px;padding:4px}.upcoming-table-wrap td{display:block;min-width:0;border:0;padding:6px;font-size:9px;white-space:normal;overflow-wrap:anywhere}.upcoming-table-wrap td:before{content:attr(data-label);display:block;margin-bottom:3px;color:#929d95;font-size:8px}.upcoming-table-wrap td:last-child{grid-column:1/-1}.upcoming-table-wrap .row-actions{flex-wrap:wrap}.month-calendar,.week-calendar{min-width:0}.month-weekdays,.month-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.month-weekdays span{padding:6px 0;font-size:8px}.month-day{min-height:74px;padding:3px 2px;gap:3px}.month-day-number{width:20px;height:20px;font-size:9px}.month-day-events{gap:2px}.month-day-events>span{min-width:0}.calendar-booking.compact{padding:2px;gap:1px;font-size:6px;justify-content:center}.calendar-booking.compact svg{width:9px;height:9px}.month-day-events small{font-size:6px;padding-left:1px}.pending-approval-card{align-items:flex-start;flex-direction:column}.pending-approval-card .row-actions{width:100%}.pending-approval-card .row-actions button{flex:1}}.dashboard-shortcut{height:33px;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:0 11px;border:1px solid #dce8df;border-radius:8px;background:#f4faf6;color:#16784b;font-size:10px;font-weight:700;white-space:nowrap}.dashboard-shortcut:hover{background:#eaf6ef;border-color:#b9ddc6}.dashboard-shortcut:focus-visible{outline:3px solid #bfe3ce;outline-offset:2px}@media(max-width:680px){.top-actions{gap:2px}.dashboard-shortcut{width:34px;height:32px;padding:0;border:0;background:transparent}.dashboard-shortcut span{display:none}.dashboard-shortcut:hover{background:#f1f4f2}}@media(max-width:680px){html,body,#root{width:100%;max-width:100%}body{overflow-x:hidden}.app-shell,.main-area,.topbar,.content-wrap{min-width:0;max-width:100%}input,select,textarea{font-size:16px!important}}.audit-filters label{font-size:12px;gap:6px}.audit-filters select,.audit-filters input{min-height:40px;font-size:13px;padding:8px 11px}.modal-form .form-field{font-size:12px}.modal-form .form-field input,.modal-form .form-field select,.modal-form .form-field textarea{font-size:13px;min-height:40px;padding:9px 11px}.modal-form .form-field small{font-size:11px}.modal-form .muted{font-size:13px}.avatar-picker{position:relative;width:100%}.avatar-picker-trigger{width:100%;min-height:40px;display:flex;align-items:center;gap:10px;padding:7px 10px;text-align:left;background:#fff;border:1px solid #dfe6e1;border-radius:7px;color:#29352e;font-size:13px}.avatar-picker-trigger>span:nth-child(2){flex:1}.avatar-picker-trigger>svg{color:#77847b}.avatar-picker-preview{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:#fff1f5;color:#8b5264;flex:none}.avatar-picker-preview svg{width:20px;height:20px}.avatar-picker-menu{position:absolute;z-index:25;top:calc(100% + 5px);left:0;right:0;max-height:270px;overflow:auto;padding:5px;background:#fff;border:1px solid #dfe6e1;border-radius:9px;box-shadow:0 10px 28px #17241e20}.avatar-picker-menu button{width:100%;min-height:40px;display:flex;align-items:center;gap:10px;padding:5px 8px;border:0;border-radius:6px;background:#fff;color:#344139;text-align:left;font-size:13px}.avatar-picker-menu button:hover,.avatar-picker-menu button.selected{background:#edf7f0;color:#16784b}.avatar-picker-menu .avatar-picker-preview{width:30px;height:30px}.system-date{display:inline-flex;align-items:center;gap:7px;margin-top:11px;padding:7px 10px;border:1px solid #e4ece6;border-radius:8px;background:#ffffffbd;color:#567060;font-size:12px;font-weight:600}.system-date svg{color:#32885a;flex:none}.admin-status{max-width:none;display:grid;grid-template-columns:1fr 1fr;gap:9px;align-items:end}.admin-status>.form-field{grid-column:1/-1}.admin-status .edit-booking-button,.admin-status>.reject-button{width:100%;min-height:40px;margin:0;padding:9px 12px;justify-content:center;font-size:12px}.main-area{background-color:#f6f7f5;background-repeat:no-repeat;background-position:right 100px top 85px;background-size:390px 390px}.app-shell[data-avatar-theme=rose] .main-area{background-image:radial-gradient(circle at 85% 10%,#f7c9d322,transparent 65%)}.app-shell[data-avatar-theme=orchid] .main-area{background-image:radial-gradient(circle at 85% 10%,#e7c8e522,transparent 65%)}.app-shell[data-avatar-theme=sunflower] .main-area{background-image:radial-gradient(circle at 85% 10%,#f5dfa622,transparent 65%)}.app-shell[data-avatar-theme=daisy] .main-area{background-image:radial-gradient(circle at 85% 10%,#e9e4bf24,transparent 65%)}.app-shell[data-avatar-theme=tulip] .main-area{background-image:radial-gradient(circle at 85% 10%,#f5c8d222,transparent 65%)}.app-shell[data-avatar-theme=lotus] .main-area{background-image:radial-gradient(circle at 85% 10%,#eac9dd22,transparent 65%)}.app-shell[data-avatar-theme=hibiscus] .main-area{background-image:radial-gradient(circle at 85% 10%,#f3c7bf22,transparent 65%)}.app-shell[data-avatar-theme=bouquet] .main-area{background-image:radial-gradient(circle at 85% 10%,#ead1d822,transparent 65%)}.admin-status{align-items:stretch}.admin-status .edit-booking-button,.admin-status>.reject-button{white-space:normal;line-height:1.25}.copyright-note{padding:0 9px 10px;color:#a0aaa5;font-size:9px;line-height:1.4}.main-area{position:relative}.content-wrap{position:relative;z-index:1}.botanical-backdrop{position:absolute;z-index:0;top:78px;right:4%;width:min(320px,38vw);height:440px;pointer-events:none;color:#62a879;opacity:.1}.botanical-branch{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.botanical-flower{position:absolute;display:block}.botanical-flower .flower-mark{width:100%;height:100%}.flower-one{width:68px;height:68px;top:18px;right:22px}.flower-two{width:48px;height:48px;top:190px;left:18px}.flower-three{width:38px;height:38px;top:330px;right:40px}.app-shell[data-avatar-theme=rose] .botanical-backdrop{color:#a84c69}.app-shell[data-avatar-theme=orchid] .botanical-backdrop{color:#895b9a}.app-shell[data-avatar-theme=sunflower] .botanical-backdrop{color:#b38431}.app-shell[data-avatar-theme=daisy] .botanical-backdrop{color:#9c9145}.app-shell[data-avatar-theme=tulip] .botanical-backdrop{color:#ae526a}.app-shell[data-avatar-theme=lotus] .botanical-backdrop{color:#a85783}.app-shell[data-avatar-theme=hibiscus] .botanical-backdrop{color:#ad574c}.app-shell[data-avatar-theme=bouquet] .botanical-backdrop{color:#925d77}.stat-card,.panel,.apartment-card{background:#ffffffc7;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px)}.two-fields>.form-field{min-width:0}.two-fields>.form-field>input[type=date]{display:block;width:100%;min-width:0;max-width:100%;height:40px;padding:7px 9px}@media(max-width:680px){.copyright-note{font-size:8px;padding-bottom:9px}.botanical-backdrop{position:fixed;top:92px;right:-12px;width:190px;height:290px;opacity:.075}.day-calendar-fit{grid-template-columns:36px repeat(var(--apartment-count),minmax(0,1fr));min-width:0;width:100%}.day-calendar-scroll-fit{overflow-x:hidden}.day-calendar-fit .day-hour-label{padding:6px 1px;font-size:7px;text-align:center}.day-calendar-fit .day-corner,.day-calendar-fit .day-apartment-heading{padding:6px 2px;font-size:7px;min-width:0;overflow-wrap:anywhere}.day-calendar-fit .day-apartment-heading{display:flex;flex-direction:column;justify-content:center;gap:3px;text-align:center}.day-calendar-fit .day-event{min-width:0;gap:1px;padding:2px;align-items:flex-start;font-size:7px}.day-calendar-fit .day-event span{white-space:normal;overflow-wrap:anywhere;font-size:7px;line-height:1.15}.day-calendar-fit .day-event svg{width:9px;height:9px;flex:none}.day-calendar-fit .day-hour-cell{min-width:0;padding:1px;gap:1px}.two-fields>.form-field>input[type=date]{font-size:16px!important}}.booking-date-fields{width:100%;min-width:0;max-width:100%;grid-template-columns:minmax(0,1fr)}.booking-date-fields>.form-field{width:100%;min-width:0;max-width:100%}.booking-date-fields input[type=date]{box-sizing:border-box;width:100%!important;inline-size:100%!important;min-width:0!important;min-inline-size:0!important;max-width:100%!important;display:block}@media(max-width:680px){.modal-form>.booking-date-fields{width:100%;min-width:0;max-width:100%;grid-template-columns:minmax(0,1fr)}.booking-date-fields>.form-field,.booking-date-fields>.form-field>input[type=date]{width:100%;min-width:0;max-width:100%}.booking-date-fields input[type=date]{box-sizing:border-box;inline-size:100%!important;min-inline-size:0!important}}.date-input-shell{display:flex;align-items:center;width:100%;min-width:0;max-width:100%;height:40px;overflow:hidden;border:1px solid #dfe6e1;border-radius:7px;background:#fff}.date-input-shell input[type=date]{display:block;flex:1 1 0;width:0!important;min-width:0!important;min-inline-size:0!important;max-width:100%;height:100%;min-height:0;padding:0 10px;border:0!important;border-radius:0;background:transparent;box-shadow:none!important;outline:0;text-align:center;font-size:16px!important;color:#29352e;-webkit-appearance:none;-moz-appearance:none;appearance:none}.date-input-shell input[type=date]::-webkit-date-and-time-value{text-align:center}.date-input-shell:focus-within{border-color:#43966c;box-shadow:0 0 0 3px #e8f5ec}.avatar-picker-menu{top:auto;bottom:calc(100% + 5px);max-height:min(270px,42vh)}.booking-price-options{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));width:100%;gap:6px}.booking-price-options button{width:100%;min-width:0;justify-content:center;padding:7px 2px;white-space:nowrap}@media(max-width:680px){.booking-price-options{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.booking-price-options button{font-size:9px;padding:7px 1px}}
