@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";.toast-container{position:fixed;top:24px;right:24px;padding:16px 24px;border-radius:8px;color:#fff;font-weight:600;font-size:14px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;z-index:9999;animation:slideIn .3s ease-out,fadeOut .3s ease-in 2.7s forwards;pointer-events:none}.toast-success{background-color:#22c55e}.toast-error{background-color:#ef4444}.toast-info{background-color:#3b82f6}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.search-suggestion-box{position:relative;min-width:0;width:100%}.search-suggestion-box__input{width:100%;min-width:0;height:48px;border:1.5px solid #cbd8ea;border-radius:12px;padding:0 16px;color:#0f1b34;font:inherit;font-size:15px;background:#fff;box-shadow:0 4px 14px #0f172a08;transition:all .2s ease}.search-suggestion-box__input:focus{border-color:#246bfe;box-shadow:0 0 0 4px #246bfe1a;outline:none}.search-suggestion-box__dropdown{position:absolute;top:calc(100% + 8px);left:-42px;z-index:250;width:calc(100% + 128px);max-width:480px;max-height:min(560px,calc(100vh - 140px));overflow-y:auto;padding:20px;border:1px solid #e5edf9;border-radius:20px;background:#fff;box-shadow:0 20px 50px #0f172a14;text-align:left;display:flex;flex-direction:column;gap:16px}.search-suggestion-box__tabs{display:flex;align-items:center;justify-content:space-between;width:100%;padding-bottom:8px}.search-suggestion-box__tabs span{color:#0f1b34;font-size:16px;font-weight:700}.search-suggestion-box__clear-btn{display:flex;align-items:center;gap:6px;border:0;background:transparent;color:#0f5eff;font:inherit;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.search-suggestion-box__clear-btn:hover{opacity:.85}.search-suggestion-box__clear-btn svg{width:16px;height:16px}.search-suggestion-box__section{display:flex;flex-direction:column;gap:8px;padding-bottom:16px;border-bottom:1px solid #f1f5f9}.search-suggestion-box__suggestions{display:flex;flex-direction:column;gap:10px}.search-suggestion-box__suggestions h3{margin:0;color:#0f1b34;font-size:16px;font-weight:700;padding-bottom:4px}.search-suggestion-box__row{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:48px;padding:4px 8px;border:0;border-radius:12px;background:transparent;color:#162033;font:inherit;cursor:pointer;transition:all .2s ease}.search-suggestion-box__row:hover{background:#f8fbff}.search-suggestion-box__row-main{flex:1;display:flex;align-items:center;gap:12px;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;min-width:0;padding:0}.search-suggestion-box__query{color:#0f1b34;font-size:14.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-suggestion-box__text-group{display:flex;align-items:center;gap:8px;min-width:0}.search-suggestion-box__row-desc{color:#94a3b8;font-size:12.5px;font-weight:500}.search-suggestion-box__icon{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#eff6ff;color:#0f5eff;flex-shrink:0}.search-suggestion-box__icon svg{width:18px;height:18px}.search-suggestion-box__remove{display:grid;place-items:center;width:28px;height:28px;border:none;border-radius:50%;background:#f1f5f9;color:#64748b;cursor:pointer;transition:all .2s ease;flex-shrink:0}.search-suggestion-box__remove:hover{background:#e2e8f0;color:#0f1b34}.search-suggestion-box__remove svg{width:14px;height:14px}.search-suggestion-box__badge{display:inline-flex;align-items:center;padding:6px 12px;border-radius:999px;background:#eff6ff;color:#0f5eff;font-size:11.5px;font-weight:600;flex-shrink:0}.search-suggestion-box__empty{margin:10px 4px;color:#64748b;font-size:13px;font-weight:500}@media(max-width:560px){.search-suggestion-box__dropdown{left:50%;transform:translate(-50%);width:calc(100dvw - 24px);padding:16px}}.location-filter-panel{position:absolute;top:calc(100% + 10px);right:0;z-index:1300;width:min(420px,calc(100dvw - 24px));display:grid;gap:18px;padding:18px 16px 14px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 18px 46px #0f172a2e}.location-panel-close{position:absolute;top:12px;right:12px;width:28px;height:28px;display:grid;place-items:center;border:none;border-radius:999px;background:#f1f5f9;color:#64748b;cursor:pointer;font:inherit;font-size:20px;font-weight:400;line-height:1;transition:all .2s ease}.location-panel-close:hover{background:#e2e8f0;color:#334155}.location-panel-section{display:grid;gap:14px}.location-panel-subheader{display:flex;align-items:center;gap:10px;min-height:36px}.location-panel-subheader strong{color:#1e293b;font-size:16px;font-weight:600}.location-back-button{width:30px;height:30px;display:grid;place-items:center;border:1px solid #e2e8f0;border-radius:999px;background:#fff;color:#64748b;cursor:pointer;font:inherit;font-size:22px;font-weight:400;line-height:1;transition:all .2s ease}.location-back-button:hover{background:#f1f5f9;border-color:#cbd5e1;color:#334155}.location-section-heading{display:inline-flex;align-items:center;gap:10px;width:fit-content;border:none;background:transparent;color:#1e293b;cursor:pointer;font:inherit;font-size:15px;font-weight:600;padding:0}.location-section-icon{width:22px;display:inline-grid;place-items:center;color:#246bfe;font-size:18px;line-height:1}.nearby-search-trigger{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#334155;cursor:pointer;font:inherit;font-size:14px;font-weight:500;padding:12px 14px;text-align:left;transition:all .2s ease}.nearby-search-trigger:hover{border-color:#cbd5e1;background:#f8fafc}.nearby-search-trigger span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nearby-search-trigger span:last-child,.location-select-card>span:nth-child(2){flex:0 0 auto;color:#94a3b8;font-size:20px;line-height:1;transition:color .2s}.location-select-card:hover>span:nth-child(2),.nearby-search-trigger:hover span:last-child{color:#64748b}.nearby-search-details{display:grid;gap:12px}.location-select-list{display:grid;gap:10px}.location-select-card{position:relative;display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:54px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#334155;cursor:pointer;padding:8px 14px;transition:all .2s ease}.location-select-card:hover{border-color:#cbd5e1;background:#f8fafc}.location-select-card>span:first-child{min-width:0;display:grid;gap:3px}.location-select-card strong{color:#64748b;font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.5px}.location-select-card small{min-height:20px;overflow:hidden;color:#94a3b8;font-size:14px;font-weight:500;line-height:1.15;text-overflow:ellipsis;white-space:nowrap;transition:color .15s ease}.location-select-card.has-value small{color:#0f172a;font-weight:600}.location-select-card select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.area-quick-list{display:flex;flex-wrap:wrap;gap:8px}.area-quick-list button{border:1px solid #e2e8f0;background:#f8fafc;color:#475569;border-radius:999px;padding:6px 14px;font:inherit;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s ease}.area-quick-list button:hover{border-color:#cbd5e1;background:#f1f5f9;color:#1e293b}.area-quick-list button.is-selected{border-color:#246bfe;background:#246bfe;color:#fff}.area-quick-list button.is-selected:hover{border-color:#0052e6;background:#0052e6;color:#fff}.location-panel-field{display:grid;gap:8px}.location-panel-field label{font-size:13px;font-weight:600;color:#475569}.location-panel-field input:not([type=range]),.location-panel-field select{width:100%;min-width:0;padding:10px 12px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#0f172a;font:inherit;font-size:14px}.location-panel-field input[type=range]{width:100%;accent-color:#246bfe;cursor:pointer;margin:6px 0}.location-panel-field input:not([type=range]):focus,.location-panel-field select:focus{outline:none;border-color:#246bfe}.nearby-address-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.nearby-address-row .ui-button{white-space:nowrap;padding-inline:12px}.nearby-suggestions{display:grid;max-height:220px;overflow-y:auto;border:1px solid #e2e8f0;border-radius:6px;background:#fff;box-shadow:0 10px 28px #0f172a1f}.nearby-suggestions__state,.nearby-suggestion-item{width:100%;padding:10px 12px;border:none;border-bottom:1px solid #f1f5f9;background:#fff;color:#334155;text-align:left;font:inherit}.nearby-suggestion-item{display:grid;gap:3px;cursor:pointer}.nearby-suggestion-item:last-child{border-bottom:none}.nearby-suggestion-item:hover,.nearby-suggestion-item:focus{outline:none;background:#f1f5f9}.nearby-suggestion-item span{color:#0f172a;font-size:13px;font-weight:600;line-height:1.35}.nearby-suggestion-item small,.nearby-suggestions__state{color:#64748b;font-size:12px;line-height:1.35}.location-panel-summary,.location-panel-error{color:#246bfe;background:#f0f7ff;border:1px solid #e0efff;border-radius:6px;padding:8px 10px}.location-panel-error,.location-panel-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-top:10px}.location-filter-panel .location-panel-actions .ui-button{min-height:40px;border-radius:8px;font-size:14px;font-weight:600}.location-filter-panel .location-panel-actions .ui-button:first-child{border:1px solid #cbd5e1;background:#fff;color:#475569;transition:all .2s ease}.location-filter-panel .location-panel-actions .ui-button:first-child:hover{border-color:#94a3b8;background:#f8fafc;color:#0f172a}.location-filter-panel .location-panel-actions .ui-button:last-child{border:1px solid #246bfe;background:#246bfe;color:#fff;transition:all .2s ease}.location-filter-panel .location-panel-actions .ui-button:last-child:hover{border-color:#0052e6;background:#0052e6}.location-panel-actions .ui-button{justify-content:center}.rental-ai-chatbot{bottom:20px;pointer-events:none;position:fixed;right:118px;z-index:999}.rental-ai-chatbot__launcher,.rental-ai-chatbot__panel{pointer-events:auto}.rental-ai-chatbot__launcher{align-items:center;background:linear-gradient(135deg,#246bfe,#1d4ed8);border:0;border-radius:999px;box-shadow:0 8px 20px #246bfe4d;color:#fff;cursor:pointer;display:flex;gap:8px;height:48px;justify-content:center;padding:0 16px 0 10px;position:relative;transition:transform .25s cubic-bezier(.175,.885,.32,1.275),box-shadow .25s ease}.rental-ai-chatbot__launcher:hover{box-shadow:0 12px 25px #246bfe66;transform:translateY(-2px) scale(1.03)}.rental-ai-chatbot__launcher:active{transform:translateY(0) scale(.98)}.rental-ai-chatbot__launcher-badge{align-items:center;background:#fff;border-radius:50%;color:#246bfe;display:inline-flex;font-size:12px;font-weight:850;height:30px;justify-content:center;width:30px;box-shadow:0 2px 5px #00000014}.rental-ai-chatbot__launcher strong{font-size:13.5px;font-weight:600;letter-spacing:.2px;white-space:nowrap}.rental-ai-chatbot__launcher-sparkle{color:#ffffffe6;animation:sparkle-float 3s ease-in-out infinite alternate}.rental-ai-chatbot__panel{background:#fff;border:1px solid rgba(226,232,240,.8);border-radius:20px;box-shadow:0 20px 48px #246bfe24,0 8px 20px #00000008;display:flex;flex-direction:column;height:min(520px,calc(100vh - 140px));margin-bottom:12px;overflow:hidden;width:min(370px,calc(100dvw - 32px));animation:panel-entrance .35s cubic-bezier(.16,1,.3,1) forwards}.rental-ai-chatbot__header{align-items:center;background:linear-gradient(135deg,#246bfe,#1d4ed8);color:#fff;display:flex;justify-content:space-between;padding:12px 16px;position:relative}.rental-ai-chatbot__header-title-container{display:flex;align-items:center;gap:10px}.rental-ai-chatbot__header-icon-badge{align-items:center;background:#ffffff26;border-radius:50%;color:#fff;display:inline-flex;height:36px;justify-content:center;width:36px}.rental-ai-chatbot__header-text{display:flex;flex-direction:column}.rental-ai-chatbot__eyebrow{color:#ffffffc7;display:block;font-size:10px;font-weight:750;letter-spacing:.8px;margin-bottom:1px;text-transform:uppercase}.rental-ai-chatbot__header h2{font-size:15px;font-weight:700;line-height:1.2;margin:0}.rental-ai-chatbot__close{background:#ffffff26;border:0;border-radius:50%;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;height:28px;width:28px;transition:background-color .2s ease,transform .2s ease}.rental-ai-chatbot__close:hover{background:#ffffff40;transform:rotate(90deg)}.rental-ai-chatbot__messages{background:#f8fafc;display:flex;flex:1;flex-direction:column;gap:12px;overflow-y:auto;padding:16px}.rental-ai-chatbot__message-wrapper{display:flex;gap:10px;max-width:90%}.rental-ai-chatbot__message-wrapper--assistant{align-self:flex-start}.rental-ai-chatbot__message-wrapper--user{align-self:flex-end;flex-direction:row-reverse}.rental-ai-chatbot__avatar{flex-shrink:0;height:34px;width:34px;box-shadow:0 4px 8px #246bfe14;border-radius:50%}.rental-ai-chatbot__message{border-radius:16px;font-size:13.5px;line-height:1.5;padding:10px 14px;position:relative;display:flex;flex-direction:column}.rental-ai-chatbot__formatted-text{display:grid;gap:7px}.rental-ai-chatbot__formatted-text p{margin:0;white-space:pre-line;word-break:break-word}.rental-ai-chatbot__answer-list{display:grid;gap:6px;margin:0;padding-left:18px}.rental-ai-chatbot__answer-list li{padding-left:2px;word-break:break-word}.rental-ai-chatbot__answer-list li::marker{color:#246bfe;font-weight:800}.rental-ai-chatbot__message--assistant{background:#fff;border:1px solid #f1f5f9;color:#1e293b;box-shadow:0 2px 8px #00000005;border-top-left-radius:4px}.rental-ai-chatbot__message--user{background:#246bfe;color:#fff;border-top-right-radius:4px;box-shadow:0 2px 8px #246bfe1a}.rental-ai-chatbot__timestamp{color:#94a3b8;font-size:9.5px;margin-top:4px;align-self:flex-start}.rental-ai-chatbot__message--loading{padding:12px 16px}.rental-ai-chatbot__loading-dots{display:flex;gap:5px;align-items:center;height:10px}.rental-ai-chatbot__loading-dots span{background-color:#94a3b8;border-radius:50%;display:inline-block;height:6px;width:6px;animation:loading-bounce 1.4s infinite ease-in-out both}.rental-ai-chatbot__loading-dots span:nth-child(1){animation-delay:-.32s}.rental-ai-chatbot__loading-dots span:nth-child(2){animation-delay:-.16s}.rental-ai-chatbot__empty-state{align-items:center;display:flex;flex-direction:column;justify-content:center;margin:auto 0;padding:16px 10px;text-align:center}.rental-ai-chatbot__empty-illustration{height:auto;max-width:110px;margin-bottom:8px;animation:float-y 4s ease-in-out infinite alternate}.rental-ai-chatbot__empty-state p{color:#64748b;font-size:12.5px;font-weight:500;line-height:1.5;margin:0}.rental-ai-chatbot__cards,.rental-ai-chatbot__nearby,.rental-ai-chatbot__followups{display:grid;gap:6px;margin-top:10px;width:100%}.rental-ai-chatbot__house{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;color:inherit;display:grid;gap:10px;grid-template-columns:56px 1fr;padding:8px;text-decoration:none;transition:border-color .2s ease,box-shadow .2s ease}.rental-ai-chatbot__house:hover{border-color:#246bfe;box-shadow:0 4px 10px #246bfe0f}.rental-ai-chatbot__house-image{align-items:center;aspect-ratio:1;background:#eff6ff;border-radius:6px;color:#246bfe;display:flex;font-size:11px;font-weight:800;justify-content:center;overflow:hidden}.rental-ai-chatbot__house-image img{height:100%;object-fit:cover;width:100%}.rental-ai-chatbot__house strong,.rental-ai-chatbot__place strong{color:#1e293b;display:block;font-size:12.5px;font-weight:700;line-height:1.3}.rental-ai-chatbot__house small,.rental-ai-chatbot__place small,.rental-ai-chatbot__house em,.rental-ai-chatbot__place em{color:#64748b;display:block;font-size:11.5px;font-style:normal;line-height:1.35;margin-top:2px}.rental-ai-chatbot__distance{background:#eff6ff;border-radius:999px;color:#1d4ed8;display:inline-flex;font-size:10px;font-weight:700;line-height:1.2;margin-top:4px;padding:2px 6px}.rental-ai-chatbot__place{background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:8px 10px}.rental-ai-chatbot__followups button{background:#f1f5f9;border:0;border-radius:999px;color:#475569;font-size:11px;font-weight:500;padding:6px 10px;cursor:pointer;transition:background-color .2s}.rental-ai-chatbot__followups button:hover:not(:disabled){background:#e2e8f0}.rental-ai-chatbot__followups button:disabled{cursor:not-allowed;opacity:.6}.rental-ai-chatbot__quick{background:#fff;border-top:1px solid #f1f5f9;display:flex;gap:6px;overflow-x:auto;padding:8px 12px;-ms-overflow-style:none;scrollbar-width:none}.rental-ai-chatbot__quick::-webkit-scrollbar{display:none}.rental-ai-chatbot__quick-pill{align-items:center;background:#eff6ff;border:1px solid #dbeafe;border-radius:999px;color:#1e40af;cursor:pointer;display:flex;flex:0 0 auto;font-size:11.5px;font-weight:600;gap:5px;padding:6px 12px;transition:all .2s cubic-bezier(.16,1,.3,1)}.rental-ai-chatbot__quick-pill:hover:not(:disabled){background:#dbeafe;border-color:#bfdbfe;color:#1d4ed8;transform:translateY(-1px)}.rental-ai-chatbot__quick-pill:active:not(:disabled){transform:translateY(0)}.rental-ai-chatbot__quick-pill:disabled{cursor:wait;opacity:.58}.rental-ai-chatbot__quick-icon{color:#246bfe;flex-shrink:0}.rental-ai-chatbot__form{background:#fff;border-top:1px solid #f1f5f9;display:flex;flex-wrap:wrap;gap:8px;padding:10px 12px;align-items:center}.rental-ai-chatbot__contact-landlord{width:100%;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#1d4ed8;cursor:pointer;font:inherit;font-size:13px;font-weight:750;min-height:34px}.rental-ai-chatbot__contact-landlord:hover:not(:disabled){border-color:#246bfe;background:#dbeafe}.rental-ai-chatbot__contact-landlord:disabled{cursor:not-allowed;opacity:.65}.rental-ai-chatbot__input-group{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:999px;display:flex;flex:1;gap:2px;padding:2px 8px;transition:border-color .2s ease,box-shadow .2s ease}.rental-ai-chatbot__input-group:focus-within{border-color:#246bfe;box-shadow:0 0 0 3px #246bfe1a}.rental-ai-chatbot__input-icon-btn{align-items:center;background:none;border:0;border-radius:50%;color:#94a3b8;cursor:pointer;display:flex;height:28px;justify-content:center;width:28px;transition:color .2s ease,background-color .2s ease}.rental-ai-chatbot__input-icon-btn:hover{background-color:#f1f5f9;color:#64748b}.rental-ai-chatbot__input-group input{background:transparent;border:0;color:#1e293b;flex:1;font-family:inherit;font-size:13px;min-width:0;outline:none;padding:6px 2px}.rental-ai-chatbot__input-group input::placeholder{color:#94a3b8}.rental-ai-chatbot__input-group input:disabled{cursor:not-allowed}.rental-ai-chatbot__send-btn{align-items:center;background:linear-gradient(135deg,#246bfe,#1d4ed8);border:0;border-radius:999px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:700;gap:4px;height:34px;justify-content:center;padding:0 14px;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.rental-ai-chatbot__send-btn:hover:not(:disabled){box-shadow:0 4px 10px #246bfe33;transform:translateY(-1px)}.rental-ai-chatbot__send-btn:active:not(:disabled){transform:translateY(0)}.rental-ai-chatbot__send-btn:disabled{background:#e2e8f0;color:#94a3b8;cursor:not-allowed;transform:none;box-shadow:none}.rental-ai-chatbot__send-sparkle{color:#fffffff2}@keyframes panel-entrance{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes sparkle-float{0%{transform:translateY(0) scale(1)}to{transform:translateY(-2px) scale(1.15)}}@keyframes float-y{0%{transform:translateY(0)}to{transform:translateY(-6px)}}@keyframes loading-bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@media(max-width:640px){.rental-ai-chatbot{bottom:16px;right:16px}.rental-ai-chatbot__panel{height:min(480px,calc(100vh - 96px));border-radius:16px;width:min(350px,calc(100dvw - 32px))}.rental-ai-chatbot__launcher strong{display:none}.rental-ai-chatbot__launcher{height:48px;padding:0 10px;width:48px}}.favorite-button{background:#fffc;border:none;border-radius:50%;width:36px;height:36px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease-in-out;box-shadow:0 2px 8px #0000001a;color:#666;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10}.favorite-button:hover{background:#fff;transform:scale(1.1);color:#ff385c}.favorite-button:active{transform:scale(.95)}.favorite-button--active{color:#ff385c}.favorite-button--active .favorite-button__icon{animation:heartBurst .3s cubic-bezier(.175,.885,.32,1.275)}.favorite-button__icon{width:20px;height:20px}@keyframes heartBurst{0%{transform:scale(1)}50%{transform:scale(1.3)}to{transform:scale(1)}}.notification-bell-wrapper{position:relative;display:inline-flex;align-items:center}.notification-bell-btn{background:none;border:none;cursor:pointer;padding:6px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#475569;transition:all .2s ease;position:relative}.notification-bell-btn:hover{background-color:#f1f5f9;color:#0f172a}.notification-bell-btn svg{width:20px;height:20px}.notification-badge{position:absolute;top:1px;right:1px;background-color:#246bfe;color:#fff;font-size:9px;font-weight:800;min-width:14px;height:14px;border-radius:7px;display:flex;align-items:center;justify-content:center;padding:0 3px;line-height:1;transform:translate(20%,-20%);box-shadow:0 2px 4px #246bfe33;pointer-events:none}.notification-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:min(90vw,340px);max-height:520px;background:#fff;border-radius:16px;box-shadow:0 12px 20px -5px #0000000d,0 8px 8px -5px #00000005,0 0 0 1px #00000008;z-index:1000;display:flex;flex-direction:column;overflow:hidden;border:1px solid #f1f5f9;animation:scaleIn .2s cubic-bezier(.16,1,.3,1) forwards}.notification-dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px}.dropdown-title-wrapper{display:flex;align-items:center;gap:8px}.dropdown-bell-icon-bg{width:32px;height:32px;border-radius:8px;background:#edf5ff;color:#246bfe;display:grid;place-items:center}.dropdown-bell-icon-bg svg{width:16px!important;height:16px!important}.notification-dropdown-header h3{margin:0;font-size:15px;font-weight:800;color:#0f172a}.dropdown-close-btn{background:transparent;border:none;width:28px;height:28px;border-radius:50%;color:#64748b;cursor:pointer;display:grid;place-items:center;transition:all .2s ease;padding:0}.dropdown-close-btn:hover{color:#0f172a;background:#f1f5f9}.dropdown-close-btn svg{width:14px!important;height:14px!important}.notification-dropdown-tabs{display:flex;flex-wrap:wrap;gap:6px;padding:0 16px 12px;border-bottom:1px solid #f1f5f9}.notification-dropdown-tabs .tab-btn{display:flex;align-items:center;justify-content:center;gap:4px;padding:6px 10px;border-radius:14px;border:1px solid #e2e8f0;background:#fff;color:#475569;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap;position:relative;flex:1 1 calc(50% - 3px)}.notification-dropdown-tabs .tab-btn svg{width:12px!important;height:12px!important}.notification-dropdown-tabs .tab-btn:hover:not(.active){background:#f8fafc;border-color:#cbd5e1;color:#0f172a}.notification-dropdown-tabs .tab-btn.active{background:#edf5ff;border-color:#246bfe;color:#246bfe}.tab-unread-dot{width:5px;height:5px;border-radius:50%;background-color:#246bfe;display:inline-block;margin-left:2px}.notification-dropdown-actions{display:flex;align-items:center;justify-content:space-between;padding:10px 16px}.summary-count{font-size:11px;color:#64748b;font-weight:600}.notification-dropdown-actions .mark-all-read-btn{background:none;border:none;color:#246bfe;font-size:11px;font-weight:700;cursor:pointer;padding:2px 4px;display:flex;align-items:center;gap:4px;transition:opacity .2s ease}.notification-dropdown-actions .mark-all-read-btn svg{width:12px!important;height:12px!important}.notification-dropdown-actions .mark-all-read-btn:hover{opacity:.8}.notification-dropdown-list{flex:1;overflow-y:auto;max-height:300px;padding:0 16px 12px;display:flex;flex-direction:column;gap:8px}.notification-item-card{display:flex;gap:10px;padding:10px 12px;border:1px solid #f1f5f9;border-radius:12px;cursor:pointer;transition:all .2s ease;position:relative;background:#f8fafc;box-shadow:0 2px 4px #00000003}.notification-item-card:hover{border-color:#cbd5e1;background-color:#f1f5f9;box-shadow:0 4px 8px #00000005}.notification-item-card.unread{background-color:#edf5ff;border-color:#c2e0ff}.notification-item-card.unread:hover{background-color:#dbeafe;border-color:#93c5fd}.notification-item-icon-box{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;flex-shrink:0}.notification-item-icon-box svg{width:16px!important;height:16px!important}.icon-box--blue{background:#edf5ff;color:#246bfe}.icon-box--green{background:#edfbf0;color:#10b981}.icon-box--red{background:#fef2f2;color:#ef4444}.icon-box--orange{background:#fff7ed;color:#f97316}.icon-box--purple{background:#faf5ff;color:#8b5cf6}.icon-box--slate{background:#f1f5f9;color:#475569}.notification-item-content{flex:1;min-width:0;padding-right:8px}.notification-item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:2px}.notification-item-title{font-size:12px;font-weight:700;color:#0f172a;line-height:1.35}.notification-item-time{font-size:10px;color:#94a3b8;font-weight:500;white-space:nowrap;margin-top:1px}.notification-item-subtitle{font-size:11.5px;color:#64748b;font-weight:500;line-height:1.35}.subtitle-content{display:inline-flex;align-items:center;gap:4px}.subtitle-inline-icon{color:#64748b;flex-shrink:0;width:12px!important;height:12px!important}.notification-item-unread-dot{position:absolute;right:12px;bottom:12px;width:6px;height:6px;border-radius:50%;background-color:#246bfe}.notification-item-delete-btn{position:absolute;top:8px;right:8px;width:26px;height:26px;border-radius:6px;border:none;background:transparent;color:#cbd5e1;cursor:pointer;display:grid;place-items:center;transition:all .15s ease;opacity:0;z-index:2}.notification-item-card:hover .notification-item-delete-btn{opacity:1}.notification-item-delete-btn:hover{background:#fef2f2;color:#ef4444}.notification-item-delete-btn svg{width:14px;height:14px}.notification-dropdown-empty{padding:30px 16px;text-align:center;color:#94a3b8;font-size:12px;font-weight:500}.notification-dropdown-footer{padding:12px 16px;border-top:1px solid #f1f5f9;text-align:center}.notification-dropdown-footer a{display:inline-flex;align-items:center;gap:4px;color:#246bfe;font-size:12px;font-weight:700;text-decoration:none;transition:all .2s ease}.notification-dropdown-footer a:hover{gap:6px}.notification-dropdown-footer a svg{margin-top:1px;width:10px!important;height:10px!important}@keyframes scaleIn{0%{transform:scale(.97);opacity:0}to{transform:scale(1);opacity:1}}.message-row{display:flex;margin-bottom:12px;width:100%}.message-bubble-wrapper{display:flex;align-items:center;max-width:70%;position:relative;gap:8px}.message-row.mine .message-bubble-wrapper{flex-direction:row-reverse}.message-bubble{padding:10px 14px;border-radius:12px;font-size:14px;line-height:1.45;background-color:var(--gray-100, #f3f4f6);color:var(--gray-900, #111827);display:flex;flex-direction:column;box-shadow:0 1px 2px #0000000d;word-break:break-word;transition:background-color .2s ease}.message-row.mine .message-bubble{background-color:var(--blue-600, #2563eb);color:#fff}.message-bubble--image{padding:4px}.message-sender{font-size:11px;font-weight:600;color:var(--blue-700, #1d4ed8);margin-bottom:4px}.message-text-content{white-space:pre-wrap}.message-text-deleted{font-style:italic;color:var(--gray-400, #9ca3af)!important}.message-row.mine .message-text-deleted{color:#fff9!important}.message-image-container{position:relative;border-radius:8px;overflow:hidden;cursor:pointer;max-height:200px;display:flex}.chat-bubble-image{max-width:100%;max-height:200px;object-fit:cover;transition:transform .2s ease}.message-image-container:hover .chat-bubble-image{transform:scale(1.02)}.image-overlay{position:absolute;inset:0;background:#0000004d;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease;color:#fff;font-size:12px;font-weight:500}.message-image-container:hover .image-overlay{opacity:1}.message-file-card{display:flex;align-items:center;gap:12px;padding:8px 12px;background-color:#0000000a;border-radius:8px;cursor:pointer;transition:background-color .2s ease;min-width:220px;max-width:100%;box-sizing:border-box}.message-row.mine .message-file-card{background-color:#ffffff26}.message-file-card:hover{background-color:#00000014}.message-row.mine .message-file-card:hover{background-color:#ffffff40}.file-icon{display:flex;align-items:center;justify-content:center;color:var(--blue-600, #2563eb)}.message-row.mine .file-icon{color:#fff}.file-details{display:flex;flex-direction:column;min-width:0}.file-name{font-size:13px;font-weight:600;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}.file-size{font-size:11px;opacity:.8}.message-bubble-meta{display:flex;align-items:center;justify-content:flex-end;gap:4px;margin-top:4px;font-size:10px;opacity:.7}.status-sending{color:var(--blue-600, #2563eb)}.message-row.mine .status-sending{color:#fffc}.status-error{color:var(--red-600, #dc2626)}.message-actions-container{position:relative;opacity:0;transition:opacity .15s ease}.message-bubble-wrapper:hover .message-actions-container,.message-actions-container.active{opacity:1}.message-menu-trigger{background:none;border:none;padding:6px;border-radius:50%;cursor:pointer;color:var(--gray-400, #9ca3af);display:flex;align-items:center;justify-content:center;transition:background-color .2s ease,color .2s ease}.message-menu-trigger:hover,.message-menu-trigger.active{background-color:var(--gray-100, #f3f4f6);color:var(--gray-700, #374151)}.message-actions-dropdown{position:absolute;bottom:100%;z-index:100;background-color:#fff;border:1px solid var(--gray-200, #e5e7eb);border-radius:8px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;padding:4px;min-width:120px;margin-bottom:4px;animation:dropdownFadeIn .15s ease-out}.message-row.mine .message-actions-dropdown{right:0}.message-row:not(.mine) .message-actions-dropdown{left:0}.dropdown-item{display:block;width:100%;text-align:left;background:none;border:none;padding:6px 12px;font-size:13px;color:var(--gray-700, #374151);border-radius:6px;cursor:pointer;transition:background-color .15s ease}.dropdown-item:hover{background-color:var(--gray-50, #f9fafb)}.dropdown-item--danger{color:var(--red-600, #dc2626)}.dropdown-item--danger:hover{background-color:var(--red-50, #fef2f2)}@keyframes dropdownFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.chat-window--page{min-height:100vh;display:flex;flex-direction:column;background:#fff}.chat-window--bubble{width:368px!important;height:480px!important;max-height:80vh!important;max-width:90vw!important;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0000001f;border:1px solid #dce6f3;display:flex;flex-direction:column;overflow:hidden;position:relative;z-index:1000;animation:slideUpBubble .25s ease-out}@keyframes slideUpBubble{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.chat-window--bubble .chat-main__header.bubble-header{height:44px;min-height:44px;padding:0 10px;background:#fff;border-bottom:1px solid #eef3fa;display:flex;justify-content:space-between;align-items:center;box-sizing:border-box}.chat-window--bubble .bubble-title{font-size:13px;font-weight:600;color:#1e293b;margin:0;max-width:118px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chat-window--bubble .chat-avatar{width:26px;height:26px}.chat-window--bubble .chat-avatar.chat-avatar--placeholder{width:26px;height:26px;line-height:26px;font-size:11px}.bubble-actions{display:flex;align-items:center;gap:4px}.bubble-action-btn{width:24px;height:24px;border-radius:50%;border:none;background:transparent;color:#64748b;font-size:12px;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;padding:0;box-sizing:border-box}.bubble-action-btn:hover{background:#f1f5f9;color:#334155}.bubble-action-btn.detail{font-size:14px}.bubble-action-btn.detail:hover{background:#e0f2fe;color:#0284c7}.bubble-action-btn.minimize{font-size:12px}.bubble-action-btn.minimize:hover{background:#e0f2fe;color:#256bfe}.bubble-action-btn.close{font-size:16px}.bubble-action-btn.close:hover{background:#fee2e2;color:#ef4444}.chat-window--bubble .chat-content{display:flex;flex-direction:column;flex:1;min-height:0}.chat-window--bubble .chat-messages{padding:6px;gap:6px;flex:1;overflow-y:auto;overflow-x:hidden;background:#fdfefe}.chat-window--bubble .message-bubble{max-width:85%;padding:5px 8px;font-size:12px;border-radius:8px}.chat-window--bubble .message-bubble img{max-width:190px;max-height:190px}.chat-window--bubble .chat-composer{padding:6px 10px;background:#f8fafc}.chat-window--bubble .chat-emoji-row{gap:4px;margin-bottom:6px}.chat-window--bubble .chat-emoji-row button{width:24px;height:24px;font-size:13px}.chat-window--bubble .chat-composer__bar{gap:6px;display:flex;align-items:center}.chat-window--bubble .chat-composer__input-container{flex:1;display:flex;align-items:center;background:#f1f5f9;border-radius:20px;padding:2px 12px;border:1px solid #e2e8f0;transition:all .2s ease}.chat-window--bubble .chat-composer__input-container:focus-within{background:#fff;border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f626}.chat-window--bubble .chat-composer__input-container textarea{flex:1;border:none!important;background:transparent!important;outline:none!important;font-size:13px;color:#1e293b;width:100%;box-shadow:none!important;font:inherit;resize:none;padding:6px 0!important;line-height:18px}.chat-window--bubble .chat-composer button:not(.chat-composer__send-btn){padding:5px 9px;font-size:12.5px;border-radius:6px;flex-shrink:0}.chat-window--bubble .chat-image-button,.chat-window--bubble .chat-file-button,.chat-window--bubble .chat-composer__send-btn{width:32px;height:32px;border-radius:50%;background:#f1f5f9!important;color:#475569!important;border:none!important;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,color .2s ease,transform .2s ease;flex-shrink:0;padding:0!important;box-sizing:border-box}.chat-window--bubble .chat-image-button:hover,.chat-window--bubble .chat-file-button:hover{background:#e2e8f0!important;color:#0f172a!important}.chat-window--bubble .chat-composer__send-btn{background:#246bfe!important;color:#fff!important}.chat-window--bubble .chat-composer__send-btn:hover:not(:disabled){background:#0045d4!important;transform:scale(1.05)}.chat-window--bubble .chat-composer__send-btn:disabled{background:#e2e8f0!important;color:#94a3b8!important;cursor:not-allowed;transform:none}.chat-window--bubble .chat-image-button input,.chat-window--bubble .chat-file-button input{display:none}.chat-window--bubble .chat-empty,.chat-window--bubble .chat-main__empty,.chat-window--bubble .chat-composer__disabled{padding:16px;font-size:13px}.chat-toast{position:absolute;bottom:80px;left:50%;transform:translate(-50%);background:#0f172ae6;color:#fff;padding:8px 16px;border-radius:8px;font-size:12px;border:none;cursor:pointer;z-index:1001;box-shadow:0 4px 12px #00000026}.floating-chat-container{position:fixed;bottom:20px;right:20px;display:flex;flex-direction:row-reverse;align-items:flex-end;gap:12px;z-index:1050;pointer-events:none}.floating-chat-avatar-stack{pointer-events:auto;display:flex;flex-direction:row-reverse;align-items:center;position:relative;height:48px;margin-bottom:8px}.floating-chat-avatar-btn{position:relative;width:48px;height:48px;border-radius:50%;border:1.5px solid #ffffff;background:#fff;padding:0;cursor:pointer;box-shadow:0 4px 12px #00000026;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;align-items:center;justify-content:center;overflow:visible}.floating-chat-avatar-btn:hover{transform:scale(1.12)!important;box-shadow:0 6px 16px #0003;z-index:200!important}.floating-chat-avatar-img{width:100%;height:100%;border-radius:50%;object-fit:cover}.floating-chat-avatar-placeholder{width:100%;height:100%;border-radius:50%;background:linear-gradient(135deg,#246bfe,#0045d4);color:#fff;font-weight:700;font-size:15px;display:flex;align-items:center;justify-content:center}.floating-chat-avatar-badge{position:absolute;top:-2px;right:-2px;background:#ef4444;color:#fff;font-size:10px;font-weight:700;border-radius:9px;padding:0 4px;min-width:18px;height:18px;display:flex;align-items:center;justify-content:center;border:1.5px solid #ffffff;box-shadow:0 2px 6px #ef444466;z-index:210}.floating-chat-active-windows{display:flex;flex-direction:row-reverse;align-items:flex-end;gap:12px}.floating-chat-active-window{pointer-events:auto;box-shadow:0 10px 30px #0000001f;border-radius:12px 12px 0 0;overflow:hidden;transition:all .25s cubic-bezier(.4,0,.2,1);background:#fff}@media(max-width:640px){.floating-chat-container{right:0;left:0;bottom:0;padding:0;flex-direction:column;align-items:center;gap:0}.floating-chat-avatar-stack{display:none}.floating-chat-active-windows{width:100dvw;height:100dvh;flex-direction:column;gap:0}.floating-chat-active-window{width:100%!important;max-width:100%!important;height:100%!important;border-radius:0!important;box-shadow:none}}.message-shortcut-wrapper{position:relative;display:inline-block}.message-shortcut-btn{position:relative;width:36px;height:36px;border-radius:10px;border:1px solid #e2e8f0;background:#fff;color:#475569;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;transition:background .2s ease,border-color .2s ease,color .2s ease;flex-shrink:0;cursor:pointer;padding:0}.message-shortcut-btn:hover,.message-shortcut-btn.active{background:#eff6ff;border-color:#bfdbfe;color:#246bfe}.message-shortcut-btn svg{width:18px;height:18px}.message-shortcut-badge{position:absolute;top:-5px;right:-5px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#ef4444;color:#fff;border:2px solid #ffffff;font-size:10px;font-weight:700;line-height:14px;display:inline-flex;align-items:center;justify-content:center}.message-shortcut-dropdown{position:absolute;top:44px;right:0;width:340px;background:#fff;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 10px 40px #0000001f;z-index:1050;display:flex;flex-direction:column;overflow:hidden;animation:fadeInDropdown .2s ease-out}@keyframes fadeInDropdown{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.dropdown-header{padding:12px 16px;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;align-items:center;background:#f8fafc}.dropdown-header h4{margin:0;font-size:14px;font-weight:700;color:#1e293b}.dropdown-list{max-height:320px;overflow-y:auto;display:flex;flex-direction:column}.dropdown-item-chat{width:100%;display:flex;align-items:center;gap:12px;padding:10px 16px;border:none;background:transparent;border-bottom:1px solid #f1f5f9;text-align:left;cursor:pointer;transition:background .15s ease}.dropdown-item-chat:hover{background:#f8fafc}.dropdown-item-chat .avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0}.dropdown-item-chat .avatar-placeholder{width:36px;height:36px;border-radius:50%;background:#e2e8f0;color:#475569;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0}.dropdown-item-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.dropdown-item-title{font-size:13px;font-weight:600;color:#1e293b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-item-preview{font-size:12px;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dropdown-item-meta{display:flex;flex-direction:column;align-items:flex-end;gap:4px;font-size:11px;color:#94a3b8}.dropdown-item-badge{min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#3b82f6;color:#fff;font-size:9px;font-weight:700;display:inline-flex;align-items:center;justify-content:center}.dropdown-footer{padding:10px;background:#f8fafc;border-top:1px solid #f1f5f9;text-align:center}.view-all-link{font-size:13px;font-weight:600;color:#3b82f6;text-decoration:none;background:transparent;border:none;cursor:pointer;padding:4px 8px}.view-all-link:hover{text-decoration:underline}.dropdown-empty{padding:24px 16px;text-align:center;font-size:13px;color:#64748b}.home-header{display:flex;justify-content:space-between;align-items:center;padding:10px 32px;min-height:72px;background:#fff;border:none;border-bottom:1px solid #f1f5f9;border-radius:0;box-shadow:0 1px 3px #00000005,0 1px 2px #00000003;margin:0;position:sticky;top:0;z-index:1200;transition:all .3s ease}.header-logo{display:flex;align-items:center;cursor:pointer;flex-shrink:0}.logo-icon-container{background:#246bfe;border-radius:8px;padding:6px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;margin-right:10px;box-shadow:0 2px 8px #246bfe33}.logo-svg-icon{width:18px;height:18px}.logo-text{font-size:20px;font-weight:800;color:#0f172a;letter-spacing:-.02em}.header-center{flex:1;display:flex;justify-content:center;align-items:center;gap:12px;margin:0 24px}.header-nav{display:flex;gap:24px}.header-nav a{color:#475569;text-decoration:none;font-weight:600;font-size:14px;transition:color .15s}.header-nav a:hover{color:#246bfe}.header-auth{display:flex;align-items:center}.home-header-message-action{display:inline-flex;align-items:center;flex-shrink:0}.landlord-channel-btn,.admin-channel-btn{background:#eff6ff!important;color:#246bfe!important;border:none!important;border-radius:999px!important;padding:10px 20px!important;font-size:14px!important;font-weight:700!important;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:all .2s ease;height:42px}.landlord-channel-btn:hover,.admin-channel-btn:hover{background:#dbeafe!important;transform:translateY(-1px)}.landlord-register-btn{border-radius:999px!important;padding:10px 20px!important;font-size:14px!important;font-weight:700!important;height:42px}.btn-icon{width:16px;height:16px;stroke-width:2.5}.avatar-btn{display:flex;align-items:center;gap:8px;background:transparent;border:none;cursor:pointer;padding:6px 14px 6px 6px;border-radius:999px;transition:all .2s ease}.avatar-image{width:36px;height:36px;border-radius:50%;object-fit:cover;border:1.5px solid #e2e8f0}.avatar-name{font-size:14px;font-weight:600;color:#0f172a}.avatar-chevron{width:12px;height:12px;color:#64748b;margin-left:2px}@media(max-width:768px){.home-header{padding:0 20px}.header-nav{display:none}}.home-container{min-height:100vh;display:flex;flex-direction:column;background:#f4f7fb;font-family:inherit}.home-header-search-form{flex:1 1 420px;max-width:480px;display:flex;align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:4px 6px 4px 16px;gap:8px;transition:all .2s ease}.home-header-search-form:focus-within{border-color:#246bfe;background:#fff;box-shadow:0 0 0 3px #246bfe1f}.home-header-search-form .search-suggestion-box{flex:1;min-width:0}.home-header-search-form .search-suggestion-box__input{width:100%;border:none!important;background:transparent!important;padding:0!important;color:#0f172a;font-size:14px;outline:none!important;box-shadow:none!important;height:34px!important}.home-header-location{position:relative;flex:0 1 220px;min-width:170px}.home-location-button{display:inline-flex;align-items:center;justify-content:space-between;gap:8px;border:1px solid #e2e8f0;border-radius:999px;background:#fff;color:#1e293b;cursor:pointer;font:inherit;font-size:14px;font-weight:600;padding:0 16px;height:42px;width:100%;transition:all .2s ease}.home-location-button:hover,.home-location-button.is-active{border-color:#246bfe;background:#fff;color:#246bfe}.home-location-panel{position:absolute;top:calc(100% + 10px);right:0;z-index:150;width:min(420px,calc(100dvw - 24px));display:grid;gap:18px;padding:18px 16px 14px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 18px 46px #0f172a2e}.home-location-close{position:absolute;top:12px;right:12px;width:28px;height:28px;display:grid;place-items:center;border:1px solid #dbeafe;border-radius:999px;background:#eff6ff;color:#1d4ed8;cursor:pointer;font:inherit;font-size:18px;font-weight:800}.home-location-section,.home-location-field{display:grid;gap:10px}.home-location-heading,.home-location-subheader{display:flex;align-items:center;gap:10px;color:#0f172a}.home-location-heading{width:fit-content;border:none;background:transparent;cursor:pointer;font:inherit;padding:0}.home-location-heading span{color:#246bfe;font-size:18px}.home-location-heading strong,.home-location-subheader strong{font-size:16px;font-weight:800}.home-location-subheader button{width:30px;height:30px;display:grid;place-items:center;border:1px solid #dbeafe;border-radius:999px;background:#fff;color:#1d4ed8;cursor:pointer;font:inherit;font-size:24px;font-weight:800}.home-nearby-trigger,.home-location-select-card{width:100%;min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid #dbeafe;border-radius:8px;background:#f8fbff;color:#0f172a;cursor:pointer;font:inherit;padding:8px 14px;text-align:left}.home-nearby-trigger span:first-child,.home-location-select-card>span:first-child{min-width:0;display:grid;gap:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.home-nearby-trigger>span:last-child,.home-location-select-card>span:nth-child(2){color:#246bfe;font-size:22px;line-height:1}.home-location-chips{display:flex;flex-wrap:wrap;gap:8px}.home-location-chips button{border:1px solid #dbeafe;border-radius:999px;background:#eff6ff;color:#1d4ed8;cursor:pointer;font:inherit;font-size:13px;font-weight:700;padding:8px 12px}.home-location-chips button.is-selected{border-color:#246bfe;background:#246bfe;color:#fff}.home-location-select-card{position:relative;background:#fff}.home-location-select-card strong,.home-location-field label{color:#334155;font-size:12px;font-weight:800}.home-location-select-card small{overflow:hidden;color:#246bfe;font-size:15px;font-weight:700;text-overflow:ellipsis}.home-location-select-card select{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.home-location-field input[type=text],.home-location-field input:not([type]){width:100%;min-width:0;height:40px;border:1px solid #cbd5e1;border-radius:8px;padding:0 12px;color:#0f172a;font:inherit}.home-location-field input[type=range]{accent-color:#246bfe}.home-location-error{margin:0;color:#b91c1c;font-size:12px;font-weight:700}.home-location-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-top:4px}.home-location-actions .ui-button{justify-content:center;min-height:40px;border-radius:8px;font-weight:800}.header-auth{flex:0 0 auto;display:flex;align-items:center}.avatar-dropdown{position:absolute;right:0;top:calc(100% + 8px);width:240px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;padding:8px 0;display:flex;flex-direction:column}.dropdown-divider{height:1px;background:#e2e8f0;margin:4px 0}.hero-section{padding:80px 40px;background:#fff;display:flex;align-items:center;justify-content:center;text-align:center;border-bottom:1px solid #e2e8f0}.hero-content{max-width:800px;display:flex;flex-direction:column;align-items:center}.hero-content h1{font-size:48px;font-weight:800;letter-spacing:-.03em;color:#0f172a;line-height:1.15;margin:16px 0 20px}.hero-description{font-size:18px;line-height:1.6;color:#475569;max-width:680px;margin-bottom:32px}.hero-actions{display:flex;gap:14px;justify-content:center}.home-search-form{width:min(100%,680px);display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;margin-bottom:10px}.home-search-form input{width:100%;min-width:0;height:46px;border:1px solid #cbd5e1;border-radius:8px;padding:0 14px;color:#0f172a;font:inherit;background:#fff}.home-search-form input:focus{border-color:#246bfe;box-shadow:0 0 0 3px #246bfe1f;outline:none}.home-listings-section{width:min(100% - 64px,1560px);margin:0 auto;padding:48px 0 64px;display:grid;gap:22px}.home-listings-header{display:flex;justify-content:space-between;gap:16px;align-items:end}.home-listings-header h2{margin:4px 0 0;color:#0f172a;font-size:30px}.home-listings-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}.home-listing-card{min-width:0;display:flex;flex-direction:column;border:1px solid #e2e8f0;border-radius:24px;padding:16px;background:#fff;color:#1e293b;font:inherit;text-align:left;cursor:pointer;box-shadow:0 10px 30px #0f172a05;transition:all .25s ease}.home-listing-card:hover{border-color:#246bfe;box-shadow:0 16px 36px #246bfe14;transform:translateY(-2px)}.card-image-wrapper{width:100%;aspect-ratio:4 / 3;border-radius:16px;overflow:hidden;position:relative;background:#f1f5f9;flex-shrink:0}.card-image{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.home-listing-card:hover .card-image{transform:scale(1.03)}.home-listing-card__placeholder{display:grid;place-items:center;width:100%;height:100%;color:#94a3b8;font-weight:700;font-size:14px}.card-content-wrapper{display:flex;flex-direction:column;gap:12px;padding-top:16px;flex-grow:1}.card-title{margin:0;color:#0f172a;font-size:18px;font-weight:800;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-address{margin:0;display:flex;align-items:flex-start;gap:6px;color:#64748b;font-size:13px;font-weight:500;line-height:1.4}.card-address span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;color:#64748b}.card-divider{border:none;border-top:1px solid #f1f5f9;margin:2px 0 0;width:100%}.card-amenities-list{display:flex;flex-wrap:wrap;gap:8px}.card-amenity-item{display:inline-flex;align-items:center;gap:6px;border-radius:8px;background:#f8fafc;color:#475569;font-size:11px;font-weight:600;padding:6px 10px;line-height:1.3}.features-section{padding:80px 40px;max-width:1200px;margin:0 auto;text-align:center}.features-section h2{font-size:32px;font-weight:800;color:#0f172a;margin-bottom:48px}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:32px}.feature-card{background:#fff;padding:32px;border-radius:12px;border:1px solid #e2e8f0;text-align:left;transition:transform .15s,box-shadow .15s}.feature-card:hover{transform:translateY(-4px);box-shadow:0 10px 25px -5px #246bfe0d,0 8px 10px -6px #246bfe0d}.feature-icon{font-size:36px;margin-bottom:20px}.feature-card h3{font-size:20px;font-weight:700;color:#0f172a;margin-bottom:12px}.feature-card p{color:#475569;line-height:1.6;font-size:14px}.about-section{background:#0f172a;color:#fff;padding:80px 40px;text-align:center}.about-content{max-width:800px;margin:0 auto}.about-content h2{font-size:32px;font-weight:800;margin-bottom:24px}.about-content p{font-size:16px;line-height:1.7;color:#94a3b8}.home-listing-categories{display:grid;gap:48px}.home-listing-category{display:grid;gap:18px}.category-title-container{display:flex;flex-direction:column;gap:6px}.eyebrow{margin:0;color:#246bfe;font-size:13px;font-weight:800;text-transform:uppercase;letter-spacing:.05em;display:inline-flex;align-items:center;gap:6px}.category-eyebrow-icon{width:15px;height:15px;flex-shrink:0;stroke-width:2.5}.category-description{margin:0;color:#64748b;font-size:14px;font-weight:500;line-height:1.5}.category-view-all-btn{display:inline-flex;align-items:center;gap:8px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:10px 16px;color:#246bfe;font-family:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px #0f172a05;flex-shrink:0;height:40px}.category-view-all-btn:hover{background:#f8fafc;border-color:#246bfe;box-shadow:0 4px 12px #246bfe0d}.view-all-filter-icon{width:14px;height:14px;color:#246bfe}.view-all-chevron-icon{width:12px;height:12px;color:#246bfe}.home-listings-grid--compact{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.home-listing-card__tags{display:flex;flex-wrap:wrap;gap:4px}.home-listing-card__tags span{border-radius:4px;background:#eff6ff;color:#1d4ed8;font-size:11px;font-weight:700;padding:2px 8px;line-height:1.6}.home-listing-card__reason{font-style:italic;font-weight:600;color:#7c3aed;line-height:1.4}.header-role-action .ui-button{font-size:13px;min-height:36px;padding-inline:14px;border-radius:999px;white-space:nowrap}.feedback-state{text-align:center;padding:48px 24px;color:#64748b;font-size:16px}.home-footer{margin-top:auto;min-height:72px;display:flex;align-items:center;justify-content:center;border-top:1px solid #e2e8f0;background:#fff;color:#64748b;font-size:14px}@media(max-width:768px){.home-header{padding:12px 20px;min-height:auto;flex-wrap:wrap;gap:12px}.header-nav{display:none}.home-header-search-form{order:3;flex:1 1 100%;max-width:none}.home-header-location{order:4;flex:1 1 100%;min-width:0}.header-auth{flex:1 1 100%;justify-content:flex-end;order:5}.avatar-btn{padding:4px 6px;gap:6px}.avatar-name,.header-role-action{display:none}.auth-buttons .ui-button{font-size:12px;padding-inline:10px;min-height:32px}.home-location-panel{left:0;right:auto;width:calc(100dvw - 24px)}.hero-section{padding:60px 20px}.hero-content h1{font-size:36px}.hero-description{font-size:16px}.home-search-form{grid-template-columns:1fr}.features-section{padding:60px 20px}.home-listings-section{width:min(100% - 32px,100%);padding:36px 0 48px}.about-section{padding:60px 20px}}@media(min-width:1800px){.home-listings-section{width:min(100% - 64px,1720px)}}.profile-container{width:100%;min-height:100vh;background:#f4f7fb;margin:0;padding:0}.profile-layout{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh;gap:0}.profile-sidebar{background:#fff;border:none;border-right:1px solid #e2e8f0;border-radius:0;padding:24px 16px;display:flex;flex-direction:column;gap:8px;position:sticky;top:0;height:100vh;box-shadow:none}.profile-sidebar h2{font-size:14px;text-transform:uppercase;color:#64748b;margin:0 0 12px 12px;letter-spacing:.05em}.profile-sidebar-item{width:100%;padding:12px 16px;text-align:left;border:none;background:transparent;cursor:pointer;border-radius:6px;font-size:14px;font-weight:600;color:#475569;transition:all .15s}.profile-sidebar-item:hover{background:#f8fafc;color:#246bfe}.profile-sidebar-item.active{background:#eff6ff;color:#246bfe}.profile-sidebar .sidebar-back-btn{margin-top:auto!important;border-top:1px solid #f1f5f9;padding-top:16px;border-radius:0;color:#64748b}.profile-sidebar .sidebar-back-btn:hover{color:#0f172a;background:transparent!important;transform:translate(-4px)}.profile-content{margin:24px;background:#fff;border:1px solid #dce4ef;border-radius:12px;padding:32px;box-shadow:0 1px 3px #00000008}.profile-content h1{margin:0 0 8px;font-size:28px;font-weight:800;color:#0f172a}.profile-content .subtle{margin:0 0 28px;color:#64748b;line-height:1.5;font-size:14px}@media(max-width:768px){.profile-layout{grid-template-columns:1fr}.profile-sidebar{flex-direction:row;overflow-x:auto;padding:8px}.profile-sidebar h2{display:none}.profile-sidebar-item{white-space:nowrap;width:auto;padding:10px 16px}.profile-content{margin:12px;padding:20px}}.profile-avatar-section{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;margin-bottom:32px;padding:20px;background:#f8fafc;border-radius:12px;border:1px dashed #cbd5e1;transition:border-color .15s ease}.profile-avatar-container{position:relative;width:100px;height:100px;border-radius:50%;box-shadow:0 4px 12px #00000014}.profile-avatar-preview{width:100%;height:100%;border-radius:50%;object-fit:cover;border:3px solid #ffffff;background:#f1f5f9}.profile-avatar-fallback{width:100%;height:100%;border-radius:50%;background:#246bfe;color:#fff;display:flex;align-items:center;justify-content:center;font-size:32px;font-weight:700;border:3px solid #ffffff;-webkit-user-select:none;user-select:none}.profile-avatar-upload-btn{position:absolute;bottom:0;right:0;width:32px;height:32px;background:#246bfe;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 2px 8px #246bfe66;transition:transform .2s,background-color .2s;border:2px solid #ffffff}.profile-avatar-upload-btn:hover{background:#1d4ed8;transform:scale(1.1)}.profile-avatar-upload-btn svg{width:16px;height:16px}.profile-avatar-info{text-align:center}.profile-avatar-hint{font-size:12px;color:#64748b;font-weight:500}.profile-avatar-badge{display:inline-block;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:600}.google-badge{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.cropper-modal-overlay{position:fixed;inset:0;background-color:#0f172abf;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1100;animation:fadeIn .2s ease-out}.cropper-modal-content{background:#fff;padding:32px;border-radius:16px;width:100%;max-width:440px;display:flex;flex-direction:column;align-items:center;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;animation:slideUp .3s cubic-bezier(.16,1,.3,1);border:1px solid #e2e8f0}.cropper-modal-content h3{font-size:20px;font-weight:700;color:#0f172a;margin:0 0 8px;text-align:center}.cropper-desc{font-size:13px;color:#64748b;text-align:center;margin:0 0 24px;line-height:1.5}.cropper-viewport-container{position:relative;width:320px;height:320px;overflow:hidden;border-radius:12px;background-color:#0f172a;display:flex;align-items:center;justify-content:center;cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none;border:1px solid #e2e8f0}.cropper-viewport-container:active{cursor:grabbing}.cropper-source-img{max-width:none!important;max-height:none!important;min-width:100%;min-height:100%;width:auto;height:auto;-webkit-user-select:none;user-select:none;pointer-events:none;transition:transform .05s ease-out}.cropper-viewport-circle{position:absolute;top:50%;left:50%;width:200px;height:200px;transform:translate(-50%,-50%);border-radius:50%;box-shadow:0 0 0 9999px #0f172a99;border:2px dashed #ffffff;pointer-events:none;z-index:10}.cropper-controls{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:24px 0;padding:0 8px}.slider-label{font-size:12px;font-weight:600;color:#64748b;-webkit-user-select:none;user-select:none}.cropper-zoom-slider{flex:1;height:6px;background:#e2e8f0;border-radius:999px;outline:none;-webkit-appearance:none;appearance:none;cursor:pointer}.cropper-zoom-slider::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:18px;height:18px;border-radius:50%;background:#246bfe;border:2px solid #ffffff;box-shadow:0 2px 4px #0000001a;transition:transform .1s}.cropper-zoom-slider::-webkit-slider-thumb:hover{transform:scale(1.15)}.cropper-actions{width:100%;display:flex;gap:12px;justify-content:stretch}.cropper-actions button{flex:1}.profile-avatar-container.is-editing{overflow:visible}.profile-avatar-edit-overlay{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:36px;height:36px;border-radius:50%;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border:2px solid #ffffff;display:flex;align-items:center;justify-content:center;opacity:1;transition:all .2s cubic-bezier(.4,0,.2,1);color:#fff;pointer-events:auto;z-index:5;cursor:pointer;outline:none;box-shadow:0 4px 10px #0003;padding:0}.profile-avatar-edit-overlay:hover{background:#246bfed9;transform:translate(-50%,-50%) scale(1.1);box-shadow:0 4px 12px #246bfe66}.profile-avatar-edit-overlay svg{width:18px;height:18px;filter:drop-shadow(0 2px 4px rgba(0,0,0,.2))}.profile-avatar-preview-wrapper{width:100%;height:100%;border-radius:50%;overflow:hidden;position:relative;border:3px solid #ffffff;background:#f1f5f9;z-index:1;display:flex;align-items:center;justify-content:center}.profile-avatar-preview-img{max-width:none!important;max-height:none!important;min-width:100%;min-height:100%;width:auto;height:auto;transform-origin:center center;-webkit-user-select:none;user-select:none;pointer-events:none;z-index:0;transition:transform .05s ease-out}.security-devices-section{margin-top:24px}.device-list{display:flex;flex-direction:column;gap:12px;margin-top:16px}.device-item{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;transition:border-color .15s,box-shadow .15s}.device-item:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #00000005}.device-info{display:flex;align-items:center;gap:16px}.device-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:#f1f5f9;color:#475569;border-radius:50%;flex-shrink:0}.device-details{display:flex;flex-direction:column;gap:2px}.device-name{font-size:14px;font-weight:600;color:#0f172a}.device-meta{font-size:12px;color:#64748b}.device-action{display:flex;align-items:center;gap:8px;flex-shrink:0}.device-current-badge{display:inline-block;padding:4px 10px;background:#d1fae5;color:#065f46;font-size:12px;font-weight:600;border-radius:999px;-webkit-user-select:none;user-select:none}.device-revoke-btn{padding:6px 12px;background:#fef2f2;color:#991b1b;border:1px solid #fecaca;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .15s}.device-revoke-btn:hover{background:#fee2e2;color:#b91c1c;border-color:#fca5a5;transform:translateY(-1px)}.device-revoke-btn:active{transform:translateY(0)}.profile-info-card{background:#fff;border:1px solid #dce4ef;border-radius:12px;padding:32px;margin-bottom:24px;box-shadow:0 1px 3px #00000005}.profile-info-card .overview-band{border:none;background:transparent;padding:0;margin-bottom:24px;border-radius:0}.profile-info-card .overview-band h2{font-size:24px;font-weight:700;color:#0f172a}.profile-edit-btn{display:inline-flex;align-items:center;gap:6px;font-weight:600}.profile-avatar-row{display:flex;align-items:center;gap:20px;margin-bottom:28px;padding-bottom:24px;border-bottom:1px solid #f1f5f9}.profile-avatar-row .profile-avatar-container{margin:0;box-shadow:0 2px 8px #0000000f}.profile-avatar-details{display:flex;flex-direction:column;gap:6px;align-items:flex-start;text-align:left}.profile-avatar-details h3{font-size:18px;font-weight:700;color:#0f172a;margin:0}.profile-avatar-details .google-linked-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;font-size:13px;font-weight:600;color:#475569;width:fit-content}.profile-avatar-details .google-icon{width:14px;height:14px;flex-shrink:0}.profile-avatar-edit-info{display:flex;flex-direction:column;gap:4px}.input-with-icon{position:relative;width:100%}.input-with-icon.icon-left .ui-input{padding-left:42px!important}.input-with-icon.icon-left .input-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:#94a3b8;pointer-events:none;transition:color .15s ease}.input-with-icon.icon-left:focus-within .input-icon{color:#246bfe}.profile-info-card .ui-input:disabled{background:#f8fafc;color:#475569;border-color:#e2e8f0;box-shadow:none;cursor:default}.profile-ekyc-card{background:#fff;border:1px solid #dce4ef;border-radius:12px;padding:32px;margin-top:24px;box-shadow:0 1px 3px #00000005}.ekyc-section-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:28px}.ekyc-header-left h2{font-size:20px;font-weight:700;color:#0f172a;margin:0 0 6px}.ekyc-header-left p.subtle{font-size:14px;color:#64748b;margin:0}.ekyc-status-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;font-size:13px;font-weight:600;border:1px solid transparent}.ekyc-status-badge.approved{background:#effaf5;color:#10b981;border-color:#d1fae5}.ekyc-status-badge.pending{background:#fffbeb;color:#d97706;border-color:#fde68a}.ekyc-status-badge.rejected{background:#fef2f2;color:#dc2626;border-color:#fecaca}.ekyc-status-badge.unverified{background:#f8fafc;color:#64748b;border-color:#e2e8f0}.ekyc-status-icon{width:16px;height:16px;flex-shrink:0}.ekyc-summary-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px 24px;margin-bottom:28px}.ekyc-item{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid #eef2f6;border-radius:8px;background:#fff;transition:all .15s ease}.ekyc-item:hover{border-color:#cbd5e1;box-shadow:0 2px 4px #00000005}.kyc-status-page-container{padding:24px}.kyc-status-auth-page{overflow:visible}.kyc-status-auth-page:before,.kyc-status-auth-page:after{display:none}.ekyc-status-banner{display:flex;align-items:center;gap:16px;padding:20px 24px;border-radius:12px;margin-bottom:24px;position:relative;overflow:hidden;border:1.5px solid transparent}.ekyc-status-banner.approved{background:#effaf5;color:#10b981;border-color:#d1fae5}.ekyc-status-banner.pending{background:#fffbeb;color:#d97706;border-color:#fde68a}.ekyc-status-banner.rejected{background:#fef2f2;color:#dc2626;border-color:#fecaca}.ekyc-status-banner-icon-box{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;flex-shrink:0}.ekyc-status-banner-icon-box.approved{background:#d1fae5;color:#10b981}.ekyc-status-banner-icon-box.pending{background:#fde68a;color:#d97706}.ekyc-status-banner-icon-box.rejected{background:#fecaca;color:#dc2626}.ekyc-status-banner-info{display:flex;flex-direction:column;text-align:left}.ekyc-status-banner-label{font-size:13px;color:#64748b;font-weight:500;margin-bottom:2px}.ekyc-status-banner-value{font-size:20px;font-weight:700}.ekyc-status-banner-watermark{position:absolute;right:24px;bottom:-10px;opacity:.05;pointer-events:none}@media(max-width:768px){.kyc-status-page-container{padding:16px}}.ekyc-icon-box{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:#eff6ff;color:#246bfe;flex-shrink:0}.ekyc-icon{width:18px;height:18px}.ekyc-info{display:flex;flex-direction:column;gap:3px;text-align:left}.ekyc-label{font-size:12px;color:#94a3b8;font-weight:500}.ekyc-value{font-size:14px;color:#334155;font-weight:600}.ekyc-value.name-bold-uppercase{font-weight:700;color:#0f172a;text-transform:uppercase}.ekyc-actions{display:flex;gap:12px;margin-top:8px}.ekyc-action-btn-outline{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background:#fff;border:1.5px solid #246bfe;color:#246bfe;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s ease}.ekyc-action-btn-outline:hover{background:#eff6ff;transform:translateY(-1px)}.ekyc-action-btn-outline:active{transform:translateY(0)}.ekyc-action-btn-outline svg{flex-shrink:0}.security-header-row{display:flex;align-items:center;gap:16px;margin-bottom:24px}.security-header-icon-box{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:#eff6ff;border:1px solid #dce4ef;color:#246bfe;flex-shrink:0}.security-tabs-nav{display:flex;border-bottom:1.5px solid #e2e8f0;margin-bottom:24px;gap:32px}.security-tab-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 8px;background:transparent;border:none;border-bottom:2.5px solid transparent;color:#64748b;font-size:14px;font-weight:600;cursor:pointer;transition:all .15s ease;margin-bottom:-1.5px;outline:none}.security-tab-btn:hover{color:#246bfe}.security-tab-btn.active{color:#246bfe;border-bottom-color:#246bfe}.security-tab-icon{width:18px;height:18px;flex-shrink:0}.security-card{background:#fff;border:1px solid #dce4ef;border-radius:16px;padding:40px;margin-bottom:24px;box-shadow:0 1px 4px #00000005;text-align:center}.security-card-icon-box{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:12px;background:#eff6ff;color:#246bfe;margin:0 auto 20px}.security-card h3{font-size:20px;font-weight:700;color:#0f172a;margin:0 0 8px}.security-card p.card-desc{font-size:14px;color:#64748b;margin:0 0 28px;line-height:1.5}.security-method-selector{display:flex;justify-content:center;gap:12px;margin-bottom:28px;padding:4px;background:#f1f5f9;border-radius:8px;width:fit-content;margin-left:auto;margin-right:auto}.method-pill{padding:8px 16px;border:none;background:transparent;border-radius:6px;font-size:13px;font-weight:600;color:#64748b;cursor:pointer;transition:all .15s ease;outline:none}.method-pill.active{background:#fff;color:#246bfe;box-shadow:0 1px 3px #00000014}.security-form-fields{display:flex;flex-direction:column;gap:20px;max-width:480px;margin:0 auto;text-align:left}.input-with-actions{position:relative;width:100%}.input-with-actions .ui-input{padding-left:44px!important;padding-right:44px!important}.input-with-actions .input-icon-left{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:#94a3b8;pointer-events:none}.input-with-actions .input-action-right{position:absolute;right:14px;top:50%;transform:translateY(-50%);background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:0;display:flex;align-items:center;justify-content:center;width:20px;height:20px;transition:color .15s ease;outline:none}.input-with-actions .input-action-right:hover{color:#475569}.input-with-actions:focus-within .input-icon-left{color:#246bfe}.password-strength-section{margin-top:6px}.strength-indicator-row{display:flex;justify-content:space-between;align-items:center;gap:12px}.strength-bars{display:flex;gap:6px;flex:1}.strength-bar{height:4px;flex:1;background:#e2e8f0;border-radius:2px;transition:background-color .2s ease}.strength-bar.active.level-1{background-color:#ef4444}.strength-bar.active.level-2{background-color:#f97316}.strength-bar.active.level-3{background-color:#eab308}.strength-bar.active.level-4{background-color:#10b981}.strength-hint-text{font-size:12px;color:#64748b;white-space:nowrap}.security-info-banner{display:flex;align-items:flex-start;gap:12px;padding:16px 20px;background:#eff6ff;border:1px solid #dbe3ef;border-radius:12px;margin-top:24px;text-align:left}.security-info-banner-icon{color:#246bfe;flex-shrink:0;margin-top:2px}.security-info-banner-content{display:flex;flex-direction:column;gap:4px}.security-info-banner-title{font-size:13px;font-weight:700;color:#246bfe}.security-info-banner-desc{font-size:13px;color:#475569;line-height:1.4}.security-devices-card{background:#fff;border:1px solid #dce4ef;border-radius:16px;padding:32px;box-shadow:0 1px 4px #00000005}.security-devices-card h3{font-size:18px;font-weight:700;color:#0f172a;margin:0 0 6px;text-align:left}.security-devices-card p.card-desc{font-size:14px;color:#64748b;margin:0 0 24px;text-align:left}.activity-logs-list{display:flex;flex-direction:column;gap:16px;text-align:left}.activity-log-item{display:flex;align-items:center;gap:16px;padding:16px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;transition:all .15s ease}.activity-log-item:hover{border-color:#cbd5e1;box-shadow:0 2px 8px #00000005}.activity-log-icon-box{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;flex-shrink:0}.activity-log-icon-box.login{background:#eff6ff;color:#246bfe}.activity-log-icon-box.security{background:#fffbeb;color:#d97706}.activity-log-icon-box.logout{background:#f8fafc;color:#64748b}.activity-log-details{display:flex;flex-direction:column;gap:3px;flex:1}.activity-log-title{font-size:14px;font-weight:600;color:#0f172a}.activity-log-meta{font-size:12px;color:#64748b}.activity-log-time{font-size:12px;color:#94a3b8;font-weight:500}.wallet-page-container{width:100%}.wallet-header-band{position:relative;overflow:hidden;background:#fff;border:1px solid #dce4ef;border-radius:12px;padding:24px;margin-bottom:24px;display:flex;justify-content:space-between;align-items:center;min-height:100px}.wallet-header-title-row{display:flex;align-items:center;gap:16px}.wallet-header-icon-box{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:#eff6ff;border:1px solid #dce4ef;color:#246bfe;flex-shrink:0}.wallet-header-illustration{position:absolute;right:24px;bottom:0;top:0;display:flex;align-items:center;pointer-events:none}.wallet-card{background:transparent;border:none;padding:0;box-shadow:none;margin-bottom:24px}.wallet-summary-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-bottom:20px}.wallet-balance-item{display:flex;align-items:center;gap:16px;padding:24px;background:#fff;border:1px solid #dce4ef;border-radius:12px;box-shadow:0 1px 3px #00000005;text-align:left}.balance-item-icon-box{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;flex-shrink:0}.balance-item-icon-box.available,.balance-item-icon-box.total{background:#eff6ff;color:#246bfe}.balance-item-icon-box.reserved{background:#f1f5f9;color:#64748b}.balance-item-details{display:flex;flex-direction:column;gap:4px}.balance-item-label{font-size:13px;color:#64748b;font-weight:500}.balance-item-value{font-size:20px;font-weight:700;color:#0f172a}.balance-item-value.available-blue{color:#246bfe}.wallet-card-footer{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:8px;padding-top:0;border-top:none}.wallet-card-footer-left{flex:1;max-width:60%}.wallet-info-banner{display:flex;align-items:center;gap:10px;padding:12px 18px;background:#eff6ff;border:1px solid #dce4ef;border-radius:8px;text-align:left}.wallet-info-icon{color:#246bfe;flex-shrink:0}.wallet-info-text{font-size:13px;color:#475569;line-height:1.4}.wallet-card-footer-right{display:flex;align-items:center;gap:16px;flex-shrink:0}.wallet-status-tag{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;border:1px solid transparent}.wallet-status-tag.active{background:#effaf5;color:#10b981;border-color:#d1fae5}.wallet-status-tag.locked{background:#fef2f2;color:#dc2626;border-color:#fecaca}.wallet-topup-btn{display:inline-flex;align-items:center;gap:6px;font-weight:600;padding:10px 20px}.wallet-modal-backdrop{position:fixed;inset:0;z-index:1100;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172a80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .25s ease-out}.wallet-topup-modal{width:min(480px,100%);border-radius:16px;background:#fff;padding:32px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;border:1px solid #e2e8f0;animation:slideUp .3s cubic-bezier(.16,1,.3,1);text-align:left}.wallet-topup-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.wallet-modal-eyebrow{margin:0 0 4px;color:#246bfe;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.wallet-topup-modal-header h3{margin:0;color:#0f172a;font-size:18px;font-weight:700}.wallet-modal-close{width:32px;height:32px;border:none;border-radius:50%;background:#f1f5f9;color:#475569;font-size:20px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;outline:none}.wallet-modal-close:hover:not(:disabled){background:#e2e8f0;color:#0f172a}.quick-amount-buttons{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:20px}.quick-amount-buttons button{padding:10px 12px;font-weight:600;border-radius:8px;font-size:13px}.wallet-topup-form{margin-top:4px}.wallet-topup-form .form-group label{display:block;font-size:13px;font-weight:600;color:#475569;margin-bottom:8px;text-align:left}.wallet-topup-form .form-control{width:100%;min-height:44px;border:1.5px solid #cbd8ea;border-radius:8px;padding:0 14px;font-size:14px;color:#0f1b34;margin-bottom:20px;outline:none;transition:border-color .15s ease}.wallet-topup-form .form-control:focus{border-color:#246bfe;box-shadow:0 0 0 3px #246bfe1f}.transaction-list-card{background:#fff;border:1px solid #dce4ef;border-radius:12px;padding:32px;box-shadow:0 1px 3px #00000005;margin-top:24px}.topup-history-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.topup-history-header-left{display:flex;align-items:center;gap:16px}.topup-history-icon-box{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:#eff6ff;color:#246bfe;flex-shrink:0}.topup-history-header-text{text-align:left}.topup-history-header-text h3{font-size:18px;font-weight:700;color:#0f172a;margin:0 0 4px}.topup-history-header-text p.text-secondary{font-size:13px;color:#64748b;margin:0}.wallet-refresh-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;background:#fff;border:1.5px solid #dce4ef;color:#475569;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s ease;outline:none}.wallet-refresh-btn:hover:not(:disabled){border-color:#246bfe;color:#246bfe;background:#eff6ff}.wallet-refresh-btn:disabled{opacity:.6;cursor:not-allowed}.transaction-table{width:100%;border-collapse:collapse;text-align:left}.transaction-table th{padding:14px 16px;background:#f8fafc;color:#475569;font-size:13px;font-weight:600;border-bottom:1.5px solid #e2e8f0}.transaction-table td{padding:16px;color:#334155;font-size:14px;border-bottom:1px solid #f1f5f9}.transaction-table tr:last-child td{border-bottom:none}.wallet-status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;font-size:12px;font-weight:600}.wallet-status-badge.success{background:#effaf5;color:#10b981;border:1px solid #d1fae5}.wallet-status-badge.expired{background:#f8fafc;color:#64748b;border:1px solid #e2e8f0}.wallet-status-badge.pending{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.wallet-status-badge.failed{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.wallet-status-icon{width:13px;height:13px;flex-shrink:0}@keyframes slideUp{0%{transform:translateY(16px);opacity:0}to{transform:translateY(0);opacity:1}}@media(max-width:992px){.wallet-card-footer{flex-direction:column;align-items:stretch;gap:16px}.wallet-card-footer-left{max-width:100%}.wallet-card-footer-right{justify-content:space-between}.wallet-summary-grid{grid-template-columns:1fr;gap:16px}}@media(max-width:768px){.wallet-header-band{padding:20px}.topup-history-header{flex-direction:column;align-items:flex-start;gap:16px}.wallet-refresh-btn{align-self:flex-end}}.transaction-tabs{display:flex;gap:12px;margin-bottom:24px;border-bottom:none;padding-bottom:0}.transaction-tab{background:#fff;border:1.5px solid #dce4ef;color:#475569;padding:8px 20px;border-radius:20px;font-size:13.5px;font-weight:600;cursor:pointer;transition:all .15s ease;outline:none}.transaction-tab:hover:not(.active){border-color:#246bfe;color:#246bfe;background:#eff6ff}.transaction-tab.active{background:#246bfe;border-color:#246bfe;color:#fff;box-shadow:0 4px 10px #246bfe33}.amount-in{color:#246bfe!important;font-weight:700}.amount-out{color:#dc2626!important;font-weight:700}.balance-item-icon-box.credit{background:#effaf5;color:#10b981}.balance-item-icon-box.debit{background:#fef2f2;color:#dc2626}.balance-item-value.credit-blue{color:#246bfe}.balance-item-value.debit-red{color:#dc2626}.trend-indicator{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;margin-left:auto;flex-shrink:0}.trend-indicator.blue{background:#eff6ff;color:#246bfe}.trend-indicator.green{background:#effaf5;color:#10b981}.trend-indicator.red{background:#fef2f2;color:#dc2626}.shared-tabs-wrapper{width:100%}.shared-tabs-mobile{display:block}.shared-tabs-select{display:block;width:100%;padding:10px 12px;background-color:#f9fafb;border:1px solid #d1d5db;color:#111827;font-size:14px;border-radius:8px;box-shadow:0 1px 2px #0000000d;outline:none;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease}.shared-tabs-select:focus{border-color:#2563eb;box-shadow:0 0 0 1px #2563eb}.shared-tabs-desktop{display:none;list-style:none;padding:0;font-size:14px;font-weight:500;text-align:center;color:#6b7280;margin:0 0 0 1px}@media(min-width:640px){.shared-tabs-mobile{display:none}.shared-tabs-desktop{display:flex}}.shared-tab-item{width:100%;margin-left:-1px;position:relative}.shared-tab-item:focus-within,.shared-tab-item:hover,.shared-tab-item:has(.active){z-index:10}.shared-tab-btn{display:inline-flex;justify-content:center;align-items:center;gap:8px;width:100%;padding:10px 16px;background-color:#fff;border:1px solid #d1d5db;color:#4b5563;font-size:14px;font-family:inherit;font-weight:500;cursor:pointer;transition:all .2s ease;outline:none;white-space:nowrap}.shared-tab-btn:hover{background-color:#f0f9ff;color:#1e40af}.shared-tab-btn.active{background-color:#eff6ff;color:#1e40af;border-color:#1e40af;border-width:2px;font-weight:600}.shared-tab-btn:focus-visible{border-color:#1d4ed8;box-shadow:inset 0 0 0 1px #1d4ed8;z-index:20}.shared-tabs-desktop .shared-tab-item:first-child .shared-tab-btn{border-top-left-radius:8px;border-bottom-left-radius:8px}.shared-tabs-desktop .shared-tab-item:last-child .shared-tab-btn{border-top-right-radius:8px;border-bottom-right-radius:8px}.shared-tab-btn .tab-icon{display:flex;align-items:center;justify-content:center}.shared-tabs-desktop.segmented-secondary .shared-tab-btn{padding:8px 14px;font-size:13px}.shared-tabs-wrapper.attached-top{margin-top:-1px}.shared-tabs-wrapper.attached-top .shared-tabs-desktop{align-items:flex-start}.shared-tabs-wrapper.attached-top .shared-tabs-desktop .shared-tab-item .shared-tab-btn{border-top-left-radius:0!important;border-top-right-radius:0!important}.shared-tabs-wrapper.attached-top .shared-tabs-desktop .shared-tab-item .shared-tab-btn.active{padding-bottom:18px;border-bottom-left-radius:6px!important;border-bottom-right-radius:6px!important;position:relative;z-index:5}.shared-tabs-wrapper.attached-bottom{margin-bottom:-1px}.shared-tabs-wrapper.attached-bottom .shared-tabs-desktop{align-items:flex-end}.shared-tabs-wrapper.attached-bottom .shared-tabs-desktop .shared-tab-item .shared-tab-btn{border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.shared-tabs-wrapper.attached-bottom .shared-tabs-desktop .shared-tab-item .shared-tab-btn.active{padding-top:18px;border-top-left-radius:6px!important;border-top-right-radius:6px!important;position:relative;z-index:5;background-color:#eff6ff;color:#2563eb;border-color:#2563eb;border-width:2px}.tab-attached-panel{background:#fff;border:1px solid #d1d5db;border-radius:0 0 14px 14px!important;padding:24px;margin-top:0!important;box-shadow:0 1px 3px #0f172a08}.tab-attached-panel--cards{padding:28px 30px}.tab-attached-panel--compact{padding:20px}.tab-attached-panel--flush{padding:0;overflow:hidden}.shared-tab-btn:disabled{opacity:.5;cursor:not-allowed;background-color:#f8fafc;color:#94a3b8}.rooming-house-editor{padding:28px;border:1px solid #eef2f6;border-radius:16px;background:#fff;box-shadow:0 10px 25px #00000005,0 4px 12px #00000003;display:flex;flex-direction:column;gap:20px;position:relative}.rooming-house-editor__header{display:flex;align-items:center;gap:16px;padding-bottom:20px;border-bottom:1px solid #f1f5f9;margin-bottom:8px}.header-brand-icon{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:12px;background:#246bfe;color:#fff;flex-shrink:0;box-shadow:0 4px 14px #246bfe33}.header-text-group{display:flex;flex-direction:column;text-align:left}.rooming-house-editor__header h1{margin:0;font-size:22px;font-weight:700;color:#0f172a;letter-spacing:-.02em;line-height:1.2}.rooming-house-editor__header p{margin:4px 0 0;font-size:14px;color:#64748b}.header-right-group{margin-left:auto;display:flex;align-items:center;gap:10px;flex-shrink:0}.rooming-house-editor__status{font-weight:600;font-size:13px;background:#eff6ff;color:#246bfe;padding:6px 12px;border-radius:8px;margin:0;white-space:nowrap}.rooming-house-editor__message{padding:12px 16px;border-radius:10px;background:#fef9c3;color:#92400e;font-size:14px;text-align:left;border:1px solid #fef08a}.rooming-house-editor__panel{display:contents}.rooming-house-editor__tabs{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid #f1f5f9}.rooming-house-editor__tabs .editor-tab-btn{display:flex;align-items:center;gap:8px;min-height:36px;padding:6px 14px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#64748b;font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;transition:all .2s ease}.rooming-house-editor__tabs .editor-tab-btn:hover:not(:disabled){background:#f8fafc;color:#0f172a;border-color:#94a3b8}.rooming-house-editor__tabs .editor-tab-btn.active{border-color:#246bfe;background:#fff;color:#246bfe;box-shadow:0 2px 8px #246bfe14}.tab-icon{display:flex;align-items:center;justify-content:center;color:currentColor}.tab-number-circle{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#246bfe;color:#fff;font-size:11px;font-weight:700}.rooming-house-editor__tabs .editor-tab-btn.active .tab-number-circle{background:#246bfe}.rooming-house-editor__tabs .editor-tab-btn:disabled{opacity:.55;background:#f8fafc;border-color:#e2e8f0;color:#94a3b8;cursor:not-allowed}.rooming-house-editor__tabs .editor-tab-btn:disabled .tab-number-circle{background:#cbd5e1}.rooming-house-editor__form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px}.rooming-house-editor__field{display:flex;flex-direction:column;gap:6px}.rooming-house-editor__field span{font-size:13px;font-weight:600;color:#334155;text-align:left}.rooming-house-editor__field--full-width{grid-column:1 / -1}.field-required{color:#ef4444;font-weight:700;margin-left:2px}.field-input-wrapper{position:relative;width:100%;display:flex;align-items:center}.field-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:#64748b;display:flex;align-items:center;pointer-events:none;transition:color .2s ease;z-index:10}.field-input-wrapper input,.field-input-wrapper select{width:100%;min-height:38px;padding:8px 12px;border:1px solid #cbd5e1;border-radius:8px;font:inherit;font-size:13.5px;background:#fff;color:#1e293b;transition:all .2s ease}.field-input-wrapper input.has-icon,.field-input-wrapper select.has-icon{padding-left:36px}.field-input-wrapper input:focus,.field-input-wrapper select:focus{border-color:#246bfe;box-shadow:0 0 0 3px #246bfe1a;outline:none}.field-input-wrapper input:focus+.field-icon,.field-input-wrapper select:focus+.field-icon{color:#246bfe}.field-input-wrapper input:read-only,.leaflet-location-picker__input:read-only{background:#f8fafc;color:#64748b;border-color:#e2e8f0;cursor:default}.select-chevron{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:#64748b;display:flex;align-items:center;pointer-events:none;z-index:10}.field-input-wrapper select{appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:32px}.rooming-house-editor__actions{grid-column:1 / -1;display:flex;justify-content:flex-end;gap:12px;padding-top:8px}.rooming-house-editor__primary{display:flex;align-items:center;justify-content:center;min-height:38px;padding:8px 20px;border-radius:8px;background:#246bfe;color:#fff;font:inherit;font-weight:700;border:none;cursor:pointer;transition:all .2s ease}.rooming-house-editor__primary:hover:not(:disabled){background:#1d4ed8;box-shadow:0 4px 12px #246bfe33}.rooming-house-editor__primary:disabled{opacity:.6;cursor:not-allowed}.rooming-house-editor__readonly-note{grid-column:1 / -1;margin:0;padding:12px 16px;border-radius:10px;background:#f8fafc;color:#64748b;font-size:14px;text-align:left}.rooming-house-editor__legal-image{display:grid;gap:8px;text-align:left}.rooming-house-editor__legal-image span{font-size:13px;font-weight:700;color:#334155}.rooming-house-editor__legal-image img{width:100%;max-height:180px;object-fit:cover;border-radius:8px;background:#e2e8f0}.rooming-house-editor__image-placeholder{height:120px;display:grid;place-items:center;border:1px dashed #cbd5e1;border-radius:8px;color:#94a3b8;font-size:13px}.rooming-house-editor__legal-image-actions{display:flex;gap:8px}.rooming-house-editor__stack{display:grid;gap:16px}.rooming-house-editor__amenities{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px}.rooming-house-editor__checkbox{display:flex;align-items:center;gap:8px;padding:12px 14px;border:1px solid #dbe3ef;border-radius:8px;background:#f8fafc;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.rooming-house-editor__checkbox:hover{background:#f1f5f9;border-color:#cbd5e1}.leaflet-location-picker{grid-column:1 / -1;display:flex;flex-direction:column;gap:16px;margin-top:8px}.search-input-wrapper{flex-grow:1}.leaflet-location-picker__field{display:flex;flex-direction:column;gap:6px}.leaflet-location-picker__field span{font-size:13px;font-weight:600;color:#334155;text-align:left}.leaflet-location-picker__search-row{display:flex;gap:10px;width:100%}.primary-btn-with-icon{display:flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:8px 16px;border-radius:8px;background:#246bfe;color:#fff;font:inherit;font-size:13px;font-weight:600;border:none;cursor:pointer;transition:all .2s ease;flex-shrink:0}.primary-btn-with-icon:hover:not(:disabled){background:#1d4ed8;box-shadow:0 4px 12px #246bfe26}.primary-btn-with-icon:disabled{opacity:.6;cursor:not-allowed}.btn-icon{display:flex;align-items:center;justify-content:center;flex-shrink:0}.leaflet-location-picker__input{width:100%;min-height:38px;padding:8px 12px;border:1px solid #cbd5e1;border-radius:8px;font:inherit;font-size:13.5px;transition:all .2s ease}.leaflet-location-picker__input.has-icon{padding-left:36px}.leaflet-location-picker__input:focus{border-color:#246bfe;box-shadow:0 0 0 3px #246bfe1a;outline:none}.leaflet-map-card{border:1px solid #eef2f6;border-radius:12px;padding:20px;background:#fff;display:flex;flex-direction:column;gap:16px;box-shadow:0 2px 4px #00000001}.leaflet-map-card-header{display:flex;align-items:center;gap:8px}.leaflet-map-card-header h3{margin:0;font-size:14px;font-weight:600;color:#0f172a}.map-pin-header-icon{flex-shrink:0}.leaflet-location-picker__map{width:100%;height:360px;overflow:hidden;border:1px solid #e2e8f0;border-radius:10px;background:#e2e8f0}.leaflet-location-picker__actions{display:flex;justify-content:flex-start}.outline-btn-with-icon{display:flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:8px 16px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;color:#475569;font:inherit;font-weight:600;cursor:pointer;transition:all .2s ease}.outline-btn-with-icon:hover:not(:disabled){background:#f8fafc;color:#0f172a;border-color:#94a3b8}.leaflet-location-picker__coords,.leaflet-location-picker__hint{margin:0;font-size:12px;color:#64748b;line-height:1.4;display:flex;align-items:center;text-align:left}.leaflet-location-picker__map .leaflet-tile{width:256px;height:256px;max-width:none!important;max-height:none!important;padding:0!important;border:0!important}.leaflet-location-picker__marker{border:0;background:transparent}.leaflet-location-picker__marker span{display:block;width:48px;height:48px;background:url("data:image/svg+xml,%3Csvg width='48' height='48' viewBox='0 0 24 36' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 0C5.373 0 0 5.2 0 11.6C0 20.3 12 36 12 36S24 20.3 24 11.6C24 5.2 18.627 0 12 0Z' fill='%23246BFE'/%3E%3Ccircle cx='12' cy='11' r='4' fill='white'/%3E%3C/svg%3E") center top / 48px 48px no-repeat;filter:drop-shadow(0 8px 14px rgba(15,23,42,.22))}@media(max-width:640px){.rooming-house-editor__header{padding-right:0;flex-wrap:wrap}.rooming-house-editor__status{position:static;margin-top:10px;align-self:flex-start}}.property-image-editor{display:flex;flex-direction:column;gap:24px;text-align:left}.property-image-editor__header{border-bottom:none;padding-bottom:0;margin-bottom:0;display:flex;flex-direction:column;gap:6px}.property-image-editor__header h3{margin:0;font-size:18px;font-weight:700;color:#0f172a}.property-image-editor__header p{margin:0;font-size:14px;color:#64748b}.property-image-editor__drag-drop{border:2px dashed #cbd5e1;border-radius:12px;padding:32px 20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#fff;cursor:pointer;transition:all .2s ease}.property-image-editor__drag-drop:hover{border-color:#246bfe;background-color:#f8fafc}.property-image-editor__drag-drop.drag-active{border-color:#246bfe;background-color:#eff6ff;transform:scale(.995)}.drag-drop-icon-wrapper{width:48px;height:48px;border-radius:50%;background-color:#eff6ff;display:flex;align-items:center;justify-content:center;color:#246bfe;margin-bottom:12px;transition:all .2s ease}.property-image-editor__drag-drop:hover .drag-drop-icon-wrapper{transform:scale(1.05)}.drag-drop-text{font-size:15px;font-weight:500;color:#334155;margin:0 0 6px}.drag-drop-text .click-highlight{color:#246bfe;font-weight:600}.drag-drop-subtext{font-size:13px;color:#94a3b8;margin:0 0 16px}.drag-drop-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#fff;border:1px solid #cbd5e1;color:#334155;font-size:13px;font-weight:600;padding:8px 16px;border-radius:8px;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 2px #0000000d}.drag-drop-btn:hover{background-color:#f8fafc;border-color:#94a3b8}.property-image-editor__grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-top:12px}@media(max-width:768px){.property-image-editor__grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:480px){.property-image-editor__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.property-image-card{position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden;background:#f8fafc;border:1px solid #e2e8f0;display:flex;align-items:center;justify-content:center;cursor:grab;transition:all .2s ease}.property-image-card.dragging{opacity:.4;transform:scale(.95);border-color:#246bfe;box-shadow:0 0 0 2px #246bfe26}.property-image-card:hover:not(.add-placeholder):not(.dragging){transform:translateY(-2px);box-shadow:0 8px 16px #0000000f}.property-image-card img{width:100%;height:100%;object-fit:cover;display:block}.property-image-cover-badge{position:absolute;top:10px;left:10px;background:#246bfe;color:#fff;font-size:11px;font-weight:700;padding:4px 8px;border-radius:6px;z-index:10;box-shadow:0 2px 6px #246bfe40;pointer-events:none}.property-image-card-overlay{position:absolute;bottom:8px;right:8px;display:flex;gap:6px;z-index:10}.image-action-btn{width:28px;height:28px;border-radius:6px;border:1px solid #e2e8f0;background:#fffffff2;color:#475569;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #0000000d;padding:0}.image-action-btn:hover{background:#fff;color:#0f172a}.image-action-btn.delete-btn:hover{color:#ef4444;border-color:#fee2e2;background-color:#fef2f2}.image-action-btn.cover-btn{color:#94a3b8}.image-action-btn.cover-btn:hover{color:#f59e0b;border-color:#fef3c7;background-color:#fffbeb}.image-action-btn.cover-btn.active{color:#f59e0b;border-color:#fde68a;background-color:#fffbeb}.image-action-btn.drag-btn{cursor:grab}.image-action-btn.drag-btn:active{cursor:grabbing}.property-image-card.add-placeholder{border:2px dashed #cbd5e1;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;color:#64748b;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s ease}.property-image-card.add-placeholder:hover{border-color:#246bfe;color:#246bfe;background:#f0f7ff}.add-plus-icon{font-size:20px;font-weight:500;color:#246bfe;line-height:1}.property-image-tips-banner{display:flex;background:#f0f7ff;border:1px solid #e0f2fe;border-radius:10px;padding:16px;gap:16px;margin-top:12px}@media(max-width:768px){.property-image-tips-banner{flex-direction:column;gap:12px}}.property-image-tips-banner .tip-item{display:flex;align-items:center;gap:12px;flex:1;text-align:left}.property-image-tips-banner .tip-item:not(:last-child){border-right:1px solid #d0e2ff;padding-right:16px}@media(max-width:768px){.property-image-tips-banner .tip-item:not(:last-child){border-right:none;border-bottom:1px solid #d0e2ff;padding-right:0;padding-bottom:12px}}.tip-icon-wrapper{color:#246bfe;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#fff;width:36px;height:36px;border-radius:8px;box-shadow:0 1px 3px #246bfe14}.tip-text-wrapper{display:flex;flex-direction:column;gap:2px}.tip-text-wrapper h5{margin:0;font-size:13.5px;font-weight:700;color:#1e293b}.tip-text-wrapper p{margin:0;font-size:11.5px;color:#64748b}.property-image-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:16px;padding-top:16px;border-top:1px solid #f1f5f9}.amenity-section-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:4px}.amenity-section-title{margin:0 0 4px;font-size:17px;font-weight:700;color:#0f172a;letter-spacing:-.02em}.amenity-section-subtitle{margin:0;font-size:13.5px;color:#64748b}.amenity-selected-badge{flex-shrink:0;margin-top:2px;background:#eff6ff;color:#246bfe;font-size:12px;font-weight:600;padding:4px 10px;border-radius:20px;white-space:nowrap}.amenity-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:12px}.amenity-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 12px 16px;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:14px;cursor:pointer;transition:border-color .18s,background .18s,box-shadow .18s,transform .12s;text-align:center;outline:none}.amenity-card:hover{border-color:#93c5fd;background:#f0f7ff;box-shadow:0 4px 14px #246bfe14;transform:translateY(-2px)}.amenity-card:active{transform:translateY(0)}.amenity-card--selected{border-color:#246bfe;background:#eff6ff;box-shadow:0 0 0 3px #246bfe1f}.amenity-card--selected:hover{border-color:#1a56d6;background:#e0edff}.amenity-card__check{position:absolute;top:8px;right:8px;width:20px;height:20px;border-radius:50%;background:#e2e8f0;color:transparent;display:flex;align-items:center;justify-content:center;transition:background .18s,color .18s;flex-shrink:0}.amenity-card__check--visible{background:#246bfe;color:#fff}.amenity-card__icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:#e0edff;color:#246bfe;transition:background .18s,color .18s}.amenity-card__icon svg{width:22px;height:22px}.amenity-card--selected .amenity-card__icon{background:#246bfe;color:#fff}.amenity-card__label{font-size:13px;font-weight:500;color:#334155;line-height:1.3}.amenity-card--selected .amenity-card__label{color:#1e40af;font-weight:600}.legal-section-header{display:flex;align-items:flex-start;gap:14px}.legal-section-header__icon{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:12px;background:#eff6ff;color:#246bfe;flex-shrink:0}.legal-section-title{margin:0 0 4px;font-size:17px;font-weight:700;color:#0f172a;letter-spacing:-.02em}.legal-section-subtitle{margin:0;font-size:13.5px;color:#64748b}.legal-readonly-badge{margin-left:auto;flex-shrink:0;display:flex;align-items:center;background:#fef3c7;color:#92400e;font-size:12px;font-weight:600;padding:5px 10px;border-radius:20px;white-space:nowrap;align-self:flex-start}.legal-info-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.legal-info-card__grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:640px){.legal-info-card__grid{grid-template-columns:1fr}}.legal-images-section{display:flex;flex-direction:column;gap:14px}.legal-images-section__title{display:flex;align-items:center;margin:0;font-size:14px;font-weight:600;color:#334155}.legal-images-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media(max-width:700px){.legal-images-grid{grid-template-columns:1fr}}.legal-image-field{display:flex;flex-direction:column;gap:8px}.legal-image-field__label{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#374151}.legal-image-field__optional{font-size:11px;font-weight:500;color:#94a3b8;background:#f1f5f9;padding:2px 7px;border-radius:10px}.legal-image-preview{position:relative;border-radius:10px;overflow:hidden;aspect-ratio:4/3;background:#f1f5f9}.legal-image-preview__img{width:100%;height:100%;object-fit:cover;display:block}.legal-image-preview__overlay{position:absolute;inset:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;gap:8px;opacity:0;transition:opacity .18s}.legal-image-preview:hover .legal-image-preview__overlay{opacity:1}.legal-image-action-btn{display:flex;align-items:center;gap:5px;padding:7px 13px;border-radius:8px;font-size:12.5px;font-weight:600;cursor:pointer;border:none;transition:background .15s,transform .1s}.legal-image-action-btn:active{transform:scale(.96)}.legal-image-action-btn--replace{background:#ffffff2e;color:#fff;border:1.5px solid rgba(255,255,255,.35)}.legal-image-action-btn--replace:hover{background:#ffffff47}.legal-image-action-btn--delete{background:#ef444426;color:#fca5a5;border:1.5px solid rgba(239,68,68,.3)}.legal-image-action-btn--delete:hover{background:#ef444447;color:#fff}.legal-image-dropzone{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;aspect-ratio:4/3;border:2px dashed #cbd5e1;border-radius:10px;background:#f8fafc;cursor:pointer;transition:border-color .18s,background .18s;text-align:center;padding:16px}.legal-image-dropzone:hover:not(.legal-image-dropzone--readonly){border-color:#246bfe;background:#eff6ff}.legal-image-dropzone--active{border-color:#246bfe;background:#eff6ff}.legal-image-dropzone--readonly{cursor:default;opacity:.6}.legal-image-dropzone__icon{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border-radius:50%;background:#e0edff;color:#246bfe}.legal-image-dropzone__text{margin:0;font-size:13px;font-weight:600;color:#334155}.legal-image-dropzone__hint{margin:0;font-size:11.5px;color:#94a3b8}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-overlay-pane{z-index:400}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.create-rooming-house-page{min-height:100vh;padding:40px 24px;background-color:#f8fafc;display:flex;flex-direction:column;justify-content:center;align-items:center}.create-rooming-house-page>*{width:100%;max-width:960px}.create-rooming-house-page__view-submitted-header{display:flex;justify-content:flex-start;width:100%;max-width:960px;margin:0 auto 16px}.create-rooming-house-page__back-btn{background:#fff;border:1px solid #cbd5e1;color:#475569;padding:8px 16px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:8px;box-shadow:0 1px 3px #0000000d;transition:background-color .2s,color .2s,border-color .2s}.create-rooming-house-page__back-btn:hover{background-color:#f8fafc;color:#1e293b;border-color:#94a3b8}.create-rooming-house-page__pending-card{background:#fff;border:1px solid rgba(226,232,240,.8);border-radius:24px;box-shadow:0 20px 48px #00000008,0 8px 24px #246bfe08;display:flex;flex-direction:column;max-width:580px;margin:0 auto;padding:48px 40px;text-align:center;align-items:center}.create-rooming-house-page__pending-title{color:#1e293b;font-size:26px;font-weight:800;margin:24px 0 10px;line-height:1.2}.create-rooming-house-page__pending-subtitle{color:#64748b;font-size:14.5px;line-height:1.6;margin:0 0 32px}.create-rooming-house-page__pending-house{align-self:stretch;align-items:center;background:#f5f9ff;border:1px solid #dbeafe;border-radius:16px;display:flex;gap:16px;padding:16px 20px;text-align:left;margin-bottom:32px}.create-rooming-house-page__pending-house-info{display:flex;flex-direction:column;flex:1}.create-rooming-house-page__pending-house-info h3{color:#1e293b;font-size:16px;font-weight:700;margin:0 0 4px;line-height:1.3}.create-rooming-house-page__pending-house-info p{color:#64748b;font-size:13px;line-height:1.4;margin:0}.create-rooming-house-page__timeline{display:flex;align-items:flex-start;justify-content:space-between;align-self:stretch;margin-bottom:40px;padding:0 10px}.create-rooming-house-page__timeline-step{display:flex;flex-direction:column;align-items:center;width:120px;flex-shrink:0}.create-rooming-house-page__timeline-icon{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;z-index:2;transition:all .2s ease}.create-rooming-house-page__timeline-icon--completed{background-color:#246bfe;color:#fff}.create-rooming-house-page__timeline-icon--active{background-color:#f59e0b;color:#fff;box-shadow:0 0 0 5px #f59e0b26}.create-rooming-house-page__timeline-icon--pending{background-color:#cbd5e1;color:#fff}.create-rooming-house-page__timeline-line{flex:1;height:2px;border-top:2px dashed #cbd5e1;margin-top:15px;z-index:1}.create-rooming-house-page__timeline-line--completed{border-top-style:dashed;border-top-color:#246bfe}.create-rooming-house-page__timeline-line--pending{border-top-style:dashed;border-top-color:#e2e8f0}.create-rooming-house-page__timeline-content{margin-top:12px;display:flex;flex-direction:column;align-items:center;text-align:center}.create-rooming-house-page__timeline-content strong{font-size:13px;font-weight:700;color:#1e293b;margin-bottom:4px;white-space:nowrap}.create-rooming-house-page__timeline-content span{font-size:11px;color:#64748b;line-height:1.35}.create-rooming-house-page__pending-actions{display:flex;flex-direction:column;align-items:center;gap:16px;align-self:stretch}.create-rooming-house-page__primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 28px;border-radius:12px;background:#246bfe;color:#fff;font-weight:700;font-size:14.5px;text-decoration:none;box-shadow:0 6px 16px #246bfe33;transition:all .2s ease;width:240px}.create-rooming-house-page__primary-btn:hover{background:#1d4ed8;box-shadow:0 8px 20px #246bfe47;transform:translateY(-1px)}.create-rooming-house-page__primary-btn:active{transform:translateY(0)}.create-rooming-house-page__link-btn{background:none;border:0;color:#246bfe;font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;transition:color .2s ease}.create-rooming-house-page__link-btn:hover{color:#1d4ed8;text-decoration:underline}.create-rooming-house-page__link-btn .arrow-right{font-size:16px;line-height:1}.create-rooming-house-page__state{display:grid;gap:14px;max-width:520px;margin:0 auto;padding:32px;border:1px solid #dbe3ef;border-radius:16px;background:#fff;text-align:center}.create-rooming-house-page__state h1{margin:0;font-size:22px;font-weight:800;color:#1e293b}.create-rooming-house-page__state p{margin:0;color:#64748b;line-height:1.5}@media(max-width:640px){.create-rooming-house-page__pending-card{padding:32px 20px}.create-rooming-house-page__timeline{flex-direction:column;align-items:flex-start;gap:16px;padding-left:20px;position:relative;margin-bottom:32px}.create-rooming-house-page__timeline-step{flex-direction:row;width:auto;text-align:left;gap:16px}.create-rooming-house-page__timeline-content{margin-top:0;align-items:flex-start;text-align:left}.create-rooming-house-page__timeline-line{display:none}}.tenant-map-preview-card{display:flex;justify-content:space-between;align-items:center;gap:16px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:16px;margin-top:12px;box-shadow:0 1px 3px #0000000d}.tenant-map-preview-card__info{display:flex;flex-direction:column;align-items:flex-start;gap:8px;flex:1}.tenant-map-preview-card__address{display:flex;align-items:flex-start;gap:8px;color:#334155;font-size:14px;line-height:1.5}.tenant-map-preview-card__icon{color:#fa6819;flex-shrink:0;margin-top:2px}.tenant-map-preview-card__address-text{font-weight:500}.tenant-map-preview-card__link{background:none;border:none;color:#246bfe;font-weight:600;font-size:14px;padding:0;cursor:pointer;text-decoration:underline}.tenant-map-preview-card__link:hover{color:#1d4ed8}.tenant-map-preview-card__map-button{position:relative;width:120px;height:90px;border:1px solid #cbd5e1;border-radius:6px;overflow:hidden;background:#f8fafc;cursor:pointer;padding:0;flex-shrink:0;z-index:0}.tenant-map-preview-card__map-button:hover .tenant-map-preview-card__overlay{background:#0000000d}.tenant-map-preview-card__canvas{width:100%;height:100%;pointer-events:none}.tenant-map-preview-card__overlay{position:absolute;inset:0;background:transparent;transition:background-color .2s ease;z-index:1}.tenant-map-preview--empty{display:flex;align-items:center;gap:10px;padding:14px 16px;border:1px dashed #cbd5e1;border-radius:8px;background:#f8fafc;color:#64748b;font-size:14px}.tenant-map-preview--empty svg{color:#94a3b8;flex-shrink:0}.tenant-map-modal-overlay{position:fixed;inset:0;z-index:9999;background:#0f172a73;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:16px}.tenant-map-modal{background:#fff;border-radius:8px;width:100%;max-width:900px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 25px 50px -12px #0f172a40;overflow:hidden;animation:tenant-map-scale-up .2s cubic-bezier(.16,1,.3,1) forwards}@keyframes tenant-map-scale-up{0%{transform:scale(.96);opacity:0}to{transform:scale(1);opacity:1}}.tenant-map-modal__header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #f1f5f9}.tenant-map-modal__title{display:flex;align-items:center;gap:10px;font-size:16px;font-weight:600;color:#0f172a;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding-right:12px}.tenant-map-modal__icon{color:#fa6819;flex-shrink:0}.tenant-map-modal__close-btn{background:none;border:none;color:#64748b;cursor:pointer;padding:4px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.tenant-map-modal__close-btn:hover{background:#f1f5f9;color:#0f172a}.tenant-map-modal__body{position:relative;flex:1;min-height:400px;height:55vh;background:#e2e8f0}.tenant-map-modal__canvas{position:absolute;inset:0;width:100%;height:100%}.tenant-map-modal__controls{position:absolute;right:18px;bottom:18px;z-index:1000;display:grid;gap:10px}.tenant-map-modal__controls button{width:44px;height:44px;display:grid;place-items:center;border:1px solid #e2e8f0;border-radius:6px;background:#fff;color:#0f172a;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;cursor:pointer;font-size:20px;font-weight:700;transition:all .2s ease}.tenant-map-modal__controls button:hover{background:#f8fafc;color:#246bfe;transform:translateY(-1px)}.tenant-map-modal__controls svg{width:20px;height:20px}.tenant-map-modal__footer{padding:16px 20px;border-top:1px solid #f1f5f9;background:#f8fafc;display:flex;justify-content:flex-end}.tenant-map-modal__directions-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:6px;padding:10px 16px;background:#fa6819;color:#fff;font-weight:600;text-decoration:none;font-size:14px;transition:background-color .2s ease;box-shadow:0 4px 6px -1px #fa681933}.tenant-map-modal__directions-btn:hover{background:#e05307}.tenant-map-preview__marker{border:0;background:transparent}.tenant-map-preview__marker span{display:block;width:48px;height:48px;background:url("data:image/svg+xml,%3Csvg width='48' height='48' viewBox='0 0 24 36' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12 0C5.373 0 0 5.2 0 11.6C0 20.3 12 36 12 36S24 20.3 24 11.6C24 5.2 18.627 0 12 0Z' fill='%23FA6819'/%3E%3Ccircle cx='12' cy='11' r='4' fill='white'/%3E%3C/svg%3E") center top / 48px 48px no-repeat;filter:drop-shadow(0 8px 14px rgba(15,23,42,.22))}@media(max-width:640px){.tenant-map-preview-card{flex-direction:column;align-items:stretch}.tenant-map-preview-card__map-button{width:100%;height:120px}.tenant-map-modal{max-height:100vh;height:100%;border-radius:0}.tenant-map-modal-overlay{padding:0}.tenant-map-modal__body{height:auto}}.house-image-gallery{display:flex;flex-direction:column;gap:12px;width:100%}.house-image-gallery__main{position:relative;width:100%;aspect-ratio:4 / 3;border-radius:8px;overflow:hidden;background:#e2e8f0;box-shadow:0 1px 3px #0000000d}.house-image-gallery__main-img{width:100%;height:100%;object-fit:cover;animation:house-gallery-fade-in .3s ease-out forwards}@keyframes house-gallery-fade-in{0%{opacity:.7}to{opacity:1}}.house-image-gallery__badge{position:absolute;top:12px;right:12px;z-index:5;background:#0f172aa6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;pointer-events:none}.house-image-gallery__nav-btn{position:absolute;top:50%;transform:translateY(-50%) scale(.95);width:40px;height:40px;border:none;border-radius:999px;background:#ffffffbf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#334155;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:5;opacity:0;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;transition:opacity .25s ease,background-color .2s,transform .2s}.house-image-gallery__main:hover .house-image-gallery__nav-btn{opacity:1;transform:translateY(-50%) scale(1)}.house-image-gallery__nav-btn:hover{background:#fff;color:#0f172a;transform:translateY(-50%) scale(1.05)}.house-image-gallery__nav-btn--prev{left:12px}.house-image-gallery__nav-btn--next{right:12px}.house-image-gallery__thumbnails{display:flex;gap:8px;overflow-x:auto;padding-bottom:6px;scrollbar-width:thin;scrollbar-color:#cbd5e1 transparent}.house-image-gallery__thumbnails::-webkit-scrollbar{height:4px}.house-image-gallery__thumbnails::-webkit-scrollbar-track{background:transparent}.house-image-gallery__thumbnails::-webkit-scrollbar-thumb{background-color:#cbd5e1;border-radius:99px}.house-image-gallery__thumb-btn{width:64px;height:48px;padding:0;border:2px solid transparent;border-radius:4px;overflow:hidden;background:#f1f5f9;cursor:pointer;flex-shrink:0;opacity:.6;transition:border-color .2s,opacity .2s}.house-image-gallery__thumb-btn:hover{opacity:.9}.house-image-gallery__thumb-btn--active{border-color:#246bfe;opacity:1}.house-image-gallery__thumb-btn img{width:100%;height:100%;object-fit:cover}.house-image-gallery-placeholder{width:100%;aspect-ratio:4 / 3;border-radius:8px;background:#e2e8f0;display:grid;place-items:center;color:#64748b;font-weight:700}.inline-review-form{display:flex;gap:16px;align-items:flex-start;margin-bottom:24px}.inline-review-form.disabled .inline-review-form-avatar{opacity:.6}.inline-review-form-avatar{flex-shrink:0;width:40px;height:40px;border-radius:50%;overflow:hidden;background-color:#f1f5f9;display:flex;align-items:center;justify-content:center}.inline-review-form-avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{font-size:1.2rem;font-weight:700;color:#64748b}.inline-review-form-body{flex-grow:1;display:flex;flex-direction:column}.inline-star-rating{display:flex;gap:4px;margin-bottom:8px}.inline-star-rating button{background:none;border:none;font-size:1.5rem;color:#cbd5e1;cursor:pointer;padding:0;line-height:1;transition:color .2s}.inline-star-rating button:hover:not(:disabled),.inline-star-rating button.active{color:#f59e0b}.inline-star-rating button:disabled{cursor:not-allowed}.inline-textarea-container{border-bottom:1px solid #cbd5e1;transition:border-color .2s}.inline-textarea-container:focus-within{border-bottom-color:#2563eb;border-bottom-width:2px}.inline-review-textarea{width:100%;border:none;background:transparent;resize:none;font-size:.95rem;line-height:1.5;padding:8px 0;outline:none;color:#334155}.mode-edit .inline-review-textarea{min-height:80px;padding:.75rem;border:1px solid #cbd5e1;border-radius:6px;resize:vertical;background:#fff}.mode-edit .inline-textarea-container{border-bottom:none}.mode-edit .inline-textarea-container:focus-within{border-bottom-width:0}.mode-edit .inline-review-textarea:focus{border-color:#2563eb;outline:1px solid #2563eb}.inline-review-textarea:disabled{color:#94a3b8;cursor:not-allowed}.inline-form-actions{display:flex;justify-content:space-between;align-items:center;margin-top:12px}.inline-form-tools .tool-btn{display:flex;align-items:center;justify-content:center;gap:7px;padding:8px;background:#f1f5f9;border-radius:999px;border:none;cursor:pointer;transition:background .2s;color:#2563eb;font-size:13px;font-weight:700}.inline-form-tools .tool-btn svg{width:18px;height:18px;flex-shrink:0}.inline-form-tools .tool-btn:hover{background:#e2e8f0}.inline-form-buttons{display:flex;gap:8px}.inline-image-preview-grid{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.image-preview-item{position:relative;width:80px;height:80px;border-radius:8px;overflow:hidden;border:1px solid #e2e8f0}.image-preview-item img{width:100%;height:100%;object-fit:cover}.image-remove-btn{position:absolute;top:4px;right:4px;width:20px;height:20px;border-radius:50%;background:#0009;color:#fff;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:14px;line-height:1}.image-remove-btn:hover{background:#000c}.inline-error-message{color:#ef4444;font-size:.875rem;margin-top:8px}.confirm-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:10000;padding:1rem}.confirm-modal-content{background:#fff;padding:1.5rem;border-radius:8px;max-width:400px;width:100%;box-shadow:0 4px 6px #0000001a}.confirm-modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.confirm-modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:var(--text-color, #1f2937)}.confirm-modal-body{margin-bottom:1.5rem;color:var(--text-secondary, #4b5563);font-size:1rem;line-height:1.5}.confirm-modal-footer{display:flex;justify-content:flex-end;gap:.75rem}.house-reviews-list{margin-top:2rem}.reviews-summary{display:flex;align-items:baseline;gap:1rem;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid #e2e8f0}.reviews-summary h3{font-size:2rem;font-weight:700;color:#1e293b;margin:0}.reviews-summary p{color:#64748b;margin:0}.reviews-items{display:flex;flex-direction:column;gap:2rem}.contract-review-section{margin:24px 0}.contract-review-notice{align-items:flex-start;flex-direction:column;gap:.35rem;text-align:left}.contract-review-notice h3{font-size:1rem;margin-bottom:0}.contract-review-panel{border:1px solid #e2e8f0;border-radius:12px;padding:18px;background:#fff}.contract-review-panel__header{margin-bottom:14px}.contract-review-panel__header h3{margin:0 0 4px;font-size:1rem;color:#0f172a}.contract-review-panel__header p{margin:0;color:#64748b;font-size:.9rem}.contract-review-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px}.contract-review-card{border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;padding:14px}.contract-review-card__main{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.contract-review-card__main strong{color:#0f172a}.contract-review-card__main p{margin:4px 0 0;color:#64748b;font-size:.84rem}.contract-review-card__status,.review-contract-chip{border-radius:999px;background:#eff6ff;color:#1d4ed8;font-weight:700;font-size:.78rem;padding:4px 8px;white-space:nowrap}.contract-review-card__review-status{display:inline-flex;margin-top:12px;border-radius:999px;padding:4px 9px;font-size:.78rem;font-weight:700}.contract-review-card__review-status.empty{background:#f1f5f9;color:#475569}.contract-review-card__review-status.pending{background:#fffbeb;color:#92400e}.contract-review-card__review-status.approved{background:#dcfce7;color:#166534}.contract-review-card__review-status.rejected{background:#fee2e2;color:#991b1b}.contract-review-card__actions{margin-top:12px}.contract-review-card__hint{margin:0;color:#64748b;font-size:.84rem}.review-contract-chip{background:#f1f5f9;color:#475569;font-weight:600}.review-item{background:#f8fafc;padding:1.5rem;border-radius:12px}.review-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.review-user{display:flex;align-items:center;gap:.75rem}.review-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover}.review-avatar-placeholder{width:40px;height:40px;border-radius:50%;background:#3b82f6;color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:1.2rem}.review-tenant-name{font-weight:600;color:#0f172a}.review-date{color:#94a3b8;font-size:.875rem}.review-edited{color:#94a3b8;font-size:.8rem;font-style:italic}.review-rating{color:#facc15;font-size:1.25rem}.review-comment{color:#334155;line-height:1.6;margin-bottom:1rem}.review-images{display:flex;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.review-image-wrapper{position:relative;width:100px;height:100px;border-radius:8px;border:1px solid #e2e8f0;overflow:hidden;cursor:pointer}.review-image-wrapper img{width:100%;height:100%;object-fit:cover}.more-images-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.5rem;font-weight:700}.review-actions{display:flex;gap:1rem;margin-bottom:1rem}.text-btn{background:none;border:none;font-size:.875rem;cursor:pointer;padding:0;display:flex;align-items:center;gap:6px}.image-gallery-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000e6;z-index:9999;display:flex;align-items:center;justify-content:center}.image-gallery-modal img{max-width:90vw;max-height:90vh;object-fit:contain}.gallery-close{position:absolute;top:20px;right:30px;color:#fff;font-size:40px;font-weight:700;background:transparent;border:none;cursor:pointer}.gallery-nav{position:absolute;top:50%;transform:translateY(-50%);color:#fff;font-size:40px;background:#00000080;border:none;padding:16px;cursor:pointer;border-radius:4px}.gallery-nav:hover{background:#000c}.gallery-nav.prev{left:20px}.gallery-nav.next{right:20px}.gallery-counter{position:absolute;bottom:20px;color:#fff;font-size:1.2rem}.text-btn:hover{text-decoration:underline}.report-btn{color:#ef4444}.reply-btn,.edit-btn{color:#3b82f6}.report-box,.reply-box{background:#fff;padding:1rem;border-radius:8px;border:1px solid #e2e8f0;margin-bottom:1rem}.report-box textarea,.reply-box textarea{width:100%;min-height:80px;padding:.75rem;border:1px solid #cbd5e1;border-radius:6px;font-family:inherit;margin-bottom:1rem;resize:vertical}.box-actions{display:flex;justify-content:flex-end;gap:.75rem}.review-reply{margin-top:1rem;margin-left:52px}.reply-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem}.review-avatar.reply-avatar,.review-avatar-placeholder.reply-avatar{width:28px;height:28px;font-size:.9rem}.reply-content-wrapper{margin-left:40px}.reply-text{margin:0 0 .5rem;color:#0f172a}.reply-header strong{color:#1e293b}.reply-actions{margin-left:auto;display:flex;gap:.5rem}.icon-btn{background:none;border:none;cursor:pointer;color:#94a3b8;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:4px;transition:all .2s}.icon-btn:hover{background:#f1f5f9}.edit-icon{color:#3b82f6}.edit-icon:hover{color:#2563eb}.delete-icon{color:#ef4444}.delete-icon:hover{color:#dc2626}.review-info-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:16px 20px;margin:16px 0;display:flex;flex-direction:column;gap:8px;align-items:flex-start;text-align:left}.review-info-box__header{display:flex;align-items:center;gap:8px}.review-info-box__icon{width:18px;height:18px;flex-shrink:0}.review-info-box h3{font-size:15px;font-weight:700;color:#1e293b;margin:0}.review-info-box p{font-size:13px;color:#64748b;margin:0;line-height:1.5}.review-info-box.rejected{background:#fef2f2;border-color:#fee2e2}.review-info-box.rejected .review-info-box__icon{color:#ef4444}.review-info-box.rejected h3{color:#991b1b}.review-info-box.rejected p{color:#b91c1c}.review-info-box.pending{background:#fffbeb;border-color:#fef3c7}.review-info-box.pending .review-info-box__icon{color:#d97706}.review-info-box.pending h3{color:#92400e}.review-info-box.pending p{color:#b45309}.review-info-box.approved{background:#f0fdf4;border-color:#dcfce7}.review-info-box.approved .review-info-box__icon{color:#16a34a}.review-info-box.approved h3{color:#166534}.review-info-box.approved p{color:#15803d}.public-house-detail{font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;width:min(100% - 64px,1560px);margin:0 auto;padding:24px 0 56px;display:grid;gap:36px}.public-house-detail--state{min-height:60vh;display:grid;place-content:center;text-align:center;gap:12px}.public-house-detail--state p{color:#64748b;font-size:15px;margin:0}.public-house-detail__back{width:fit-content;display:flex;align-items:center;gap:6px;color:#246bfe;font-weight:700;font-size:14px;text-decoration:none;transition:opacity .2s ease,transform .2s ease}.public-house-detail__back:hover{opacity:.8;transform:translate(-2px)}.public-house-detail__hero{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);gap:40px;align-items:start}.hero-details-card{display:flex;flex-direction:column;gap:20px;background:#fff;padding:32px;border:1px solid #f1f5f9;border-radius:24px;box-shadow:0 8px 24px -12px #0f172a0a}.house-status-badge{display:inline-flex;align-items:center;gap:6px;background:#f0f7ff;border:1px solid #c2e0ff;color:#06c;font-size:12px;font-weight:700;padding:6px 14px;border-radius:30px;width:fit-content;text-transform:uppercase;letter-spacing:.02em}.house-status-badge svg{color:#246bfe}.public-house-detail__hero h1{margin:0;color:#0f172a;font-size:36px;font-weight:800;line-height:1.25}.public-house-detail__description{color:#475569;font-size:15px;line-height:1.55;margin:0}.public-house-detail__contact-actions{display:flex;flex-wrap:wrap;gap:10px}.public-house-detail__message-button{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #246bfe;border-radius:8px;padding:0 16px;background:#246bfe;color:#fff;font:inherit;font-size:13px;font-weight:800;cursor:pointer;transition:all .2s ease}.public-house-detail__message-button:hover:not(:disabled){background:#1557d6;border-color:#1557d6}.public-house-detail__message-button:disabled{cursor:not-allowed;opacity:.6}.public-house-detail__quick-message-overlay{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:24px;background:#0f172a73;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.public-house-detail__quick-message{display:grid;width:min(100%,520px);gap:14px;padding:22px;border:1px solid #dbeafe;border-radius:16px;background:#fff;box-shadow:0 24px 60px -24px #0f172a61}.public-house-detail__quick-message-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:12px;border-bottom:1px solid #edf2f7}.public-house-detail__quick-message-header p{margin:0 0 4px;color:#246bfe;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.public-house-detail__quick-message-header h2{margin:0;color:#0f172a;font-size:20px;font-weight:800;line-height:1.3}.public-house-detail__quick-message-close{width:34px;height:34px;border:1px solid #dbe3ef;border-radius:999px;background:#fff;color:#64748b;font-size:22px;line-height:1;cursor:pointer}.public-house-detail__quick-message-close:hover:not(:disabled){background:#f8fafc;color:#0f172a}.public-house-detail__quick-message label{color:#0f172a;font-size:13px;font-weight:800}.public-house-detail__quick-message textarea{width:100%;resize:vertical;min-height:118px;border:1px solid #cbd5e1;border-radius:10px;padding:10px 12px;color:#0f172a;font:inherit;font-size:14px;line-height:1.5;background:#fff}.public-house-detail__quick-message textarea:focus{outline:2px solid rgba(36,107,254,.16);border-color:#246bfe}.public-house-detail__quick-message-actions{display:flex;justify-content:flex-end;gap:10px}.public-house-detail__quick-message-cancel,.public-house-detail__quick-message-send{min-height:38px;border-radius:8px;padding:0 16px;font:inherit;font-size:13px;font-weight:800;cursor:pointer}.public-house-detail__quick-message-cancel{border:1px solid #dbe3ef;background:#fff;color:#475569}.public-house-detail__quick-message-send{border:1px solid #246bfe;background:#246bfe;color:#fff}.public-house-detail__quick-message-cancel:disabled,.public-house-detail__quick-message-send:disabled{cursor:not-allowed;opacity:.65}.hero-details-card .tenant-map-preview-container{border-radius:12px;overflow:hidden;border:1px solid #f1f5f9}.house-amenities-mini-section{display:flex;flex-direction:column;gap:10px;border-top:1px solid #f1f5f9;padding-top:16px}.house-amenities-mini-section h3{margin:0;font-size:16px;font-weight:700;color:#0f172a}.public-house-detail__amenities{display:flex;flex-wrap:wrap;gap:10px}.house-amenity-card{display:flex;align-items:center;gap:8px;padding:10px 16px;border:1px solid #f1f5f9;border-radius:12px;background:#fff;color:#334155;font-weight:600;font-size:14px;box-shadow:0 1px 2px #00000005;transition:all .2s ease}.house-amenity-card:hover{border-color:#c2e0ff;background:#f8fafc}.amenity-icon{width:18px;height:18px;color:#246bfe;flex-shrink:0}.public-house-detail__section{background:#fff;border:1px solid #f1f5f9;border-radius:24px;padding:36px;box-shadow:0 8px 24px -12px #0f172a0a;display:flex;flex-direction:column;gap:28px}.section-title-with-icon{display:flex;align-items:center;gap:16px}.section-title-icon-wrapper{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;flex-shrink:0}.section-title-icon-wrapper.circle-blue{background:#f0f7ff;color:#246bfe}.section-title-icon-wrapper svg{width:22px;height:22px;stroke-width:2.2}.section-title-with-icon h2{margin:0;font-size:22px;font-weight:700;color:#0f172a}.rules-card-body{display:flex;justify-content:space-between;align-items:center;gap:24px}.rules-card-info{flex-grow:1}.public-house-detail__rule-link{width:fit-content;display:inline-flex;align-items:center;gap:6px;padding:10px 18px;border-radius:10px;background:#246bfe;color:#fff;font-weight:700;font-size:13px;text-decoration:none;box-shadow:0 3px 10px #246bfe33;transition:all .2s ease,transform .1s ease}.public-house-detail__rule-link:hover{background:#1a5ce0;box-shadow:0 4px 14px #246bfe47;transform:translateY(-1px)}.public-house-detail__rule-link:active{transform:translateY(1px)}.public-house-detail__rule-link svg{width:15px;height:15px;flex-shrink:0}.rules-card-illustration{flex-shrink:0;display:flex;align-items:center;justify-content:center}.rules-card-illustration svg{width:90px;height:90px}.public-house-detail__muted{margin:0;color:#64748b;font-size:14px}.rental-policy-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.rental-policy-item{display:flex;align-items:center;gap:16px;padding:18px 20px;background:#f8fafc;border:1px solid #f1f5f9;border-radius:16px;transition:all .2s ease}.rental-policy-item:hover{background:#fff;border-color:#c2e0ff;box-shadow:0 6px 16px -6px #0f172a0b}.policy-item-icon-wrapper{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#fff;border:1px solid #f1f5f9;color:#246bfe;flex-shrink:0;box-shadow:0 2px 4px #00000003}.policy-item-icon-wrapper svg{width:20px;height:20px;stroke-width:2.2}.policy-item-text{display:flex;flex-direction:column;gap:2px;min-width:0}.rental-policy-label{font-size:11px;font-weight:700;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rental-policy-value{font-size:16px;font-weight:700;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.service-price-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.service-price-item{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 20px;background:#f8fafc;border:1px solid #f1f5f9;border-radius:16px;transition:all .2s ease}.service-price-item:hover{background:#fff;border-color:#c2e0ff;box-shadow:0 4px 12px -4px #0f172a0d}.service-price-info{display:flex;flex-direction:column;gap:2px}.service-name{font-weight:700;font-size:16px;color:#0f172a}.service-note{font-size:12px;color:#64748b;font-style:italic}.service-price-value{display:flex;align-items:baseline;gap:2px;background:#f0f7ff;padding:6px 12px;border-radius:8px;color:#246bfe}.price-amount{font-size:16px;font-weight:800}.price-unit{font-size:11px;font-weight:600;color:#3b82f6}.public-house-detail__section-heading{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #f1f5f9;padding-bottom:12px}.available-rooms-count{font-size:13px;font-weight:700;color:#246bfe;background:#f0f7ff;padding:4px 10px;border-radius:20px}.public-house-detail__rooms{display:grid;gap:12px}.public-room-card{display:grid;grid-template-columns:200px minmax(0,1fr) 30px;gap:24px;padding:18px;border:1px solid #f1f5f9;border-radius:18px;background:#fff;text-decoration:none;color:inherit;cursor:pointer;transition:all .25s ease}.public-room-card:hover{border-color:#c2e0ff;box-shadow:0 8px 24px -10px #0f172a14;transform:translateY(-2px)}.public-room-card__img-wrapper{width:200px;height:135px;border-radius:12px;overflow:hidden;flex-shrink:0;border:1px solid #f1f5f9}.public-room-card__img-wrapper img,.public-room-card__placeholder{width:100%;height:100%;object-fit:cover;background:#f8fafc}.public-room-card__placeholder{display:grid;place-items:center;color:#94a3b8;font-weight:700;font-size:13px}.public-room-card__body{display:flex;flex-direction:column;gap:8px;min-width:0}.room-card-main-info{display:flex;flex-direction:column;gap:2px}.room-card-main-info h3{margin:0;color:#0f172a;font-size:18px;font-weight:700}.room-card-spec{margin:0;color:#64748b;font-size:14px;font-weight:500}.room-card-price{color:#ea580c;font-size:18px;font-weight:800}.public-room-card__amenities{display:flex;flex-wrap:wrap;gap:5px}.room-amenity-badge{padding:3px 8px;border-radius:6px;background:#f0f7ff;color:#246bfe;font-size:11px;font-weight:700}.public-room-card__chevron{display:grid;place-items:center;color:#94a3b8;transition:all .2s ease}.public-room-card:hover .public-room-card__chevron{color:#246bfe;transform:translate(3px)}@media(max-width:860px){.public-house-detail__hero{grid-template-columns:1fr;gap:24px}.public-house-detail__hero img,.public-house-detail__placeholder{aspect-ratio:16 / 9}}@media(max-width:600px){.public-room-card{grid-template-columns:120px minmax(0,1fr) 24px;gap:12px}.public-room-card__img-wrapper{width:120px;height:80px}}@media(max-width:500px){.public-house-detail{padding:16px 0 40px;gap:20px}.public-house-detail__section{padding:16px;border-radius:14px;gap:16px}.rules-card-body{flex-direction:column-reverse;align-items:flex-start;gap:16px}.rules-card-illustration{align-self:center}.public-room-card{grid-template-columns:1fr;gap:12px;position:relative}.public-room-card__img-wrapper{width:100%;height:160px}.public-room-card__chevron{position:absolute;right:12px;top:12px;background:#ffffffe6;border-radius:50%;width:28px;height:28px;box-shadow:0 2px 6px #00000014}}.search-page-wrapper{--search-header-height: 73px;--search-filter-sidebar-width: 290px;min-height:100vh;background:#f8fafc;color:#0f172a;display:flex;flex-direction:column}.search-header{display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff;border-bottom:1px solid #e2e8f0;padding:16px 32px;position:sticky;top:0;z-index:1200;box-shadow:0 1px 3px #0f172a05}.search-header__logo{flex:1 1 0;font-size:22px;font-weight:800;color:#246bfe;cursor:pointer;letter-spacing:-.03em}.search-header__search-form{display:flex;align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:999px;padding:4px 6px 4px 16px;gap:8px;flex:1 1 420px;max-width:480px;transition:all .2s ease}.search-header__search-form:focus-within{border-color:#246bfe;background:#fff;box-shadow:0 0 0 3px #246bfe1f}.search-form-icon{color:#94a3b8;width:18px;height:18px;flex-shrink:0}.search-submit-btn{background:linear-gradient(135deg,#0082ff,#04f);color:#fff;border-radius:999px;padding:8px 24px;font-weight:700;border:none;cursor:pointer;font-size:14px;transition:all .2s ease;height:36px;display:flex;align-items:center;justify-content:center}.search-submit-btn:hover{opacity:.95;transform:translateY(-.5px)}.search-location-actions{display:flex;align-items:center;gap:8px;position:relative;flex:0 1 220px;min-width:170px}.search-location-action{display:inline-flex;align-items:center;justify-content:space-between;width:100%;gap:8px;border:1px solid #e2e8f0;background:#fff;color:#1e293b;border-radius:999px;height:42px;padding:0 16px;font:inherit;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;transition:all .2s ease}.search-location-action:hover,.search-location-action.is-active{border-color:#246bfe;background:#fff;color:#246bfe}.location-pin-icon{width:16px;height:16px;color:#246bfe;flex-shrink:0}.location-chevron-icon{width:12px;height:12px;color:#64748b;flex-shrink:0}.location-btn-label{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-header__auth{flex:1 1 0;display:flex;justify-content:flex-end;align-items:center}.auth-buttons{display:flex;gap:10px}.avatar-wrapper{position:relative}.avatar-btn{display:flex;align-items:center;gap:10px;background:transparent;border:none;cursor:pointer;padding:6px 12px;border-radius:999px;transition:background .15s}.avatar-btn:hover{background:#f1f5f9}.avatar-initials{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#246bfe;color:#fff;font-weight:700;font-size:14px}.avatar-image{width:36px;height:36px;border-radius:50%;object-fit:cover;border:1px solid #e2e8f0}.avatar-name{font-size:14px;font-weight:600;color:#1e293b}.avatar-dropdown{position:absolute;right:0;top:calc(100% + 8px);width:240px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;padding:8px 0;display:flex;flex-direction:column;z-index:110}.dropdown-info{padding:12px 16px;border-bottom:1px solid #e2e8f0;display:flex;flex-direction:column;gap:2px;margin-bottom:4px}.dropdown-info strong{font-size:14px;color:#1e293b}.dropdown-info span{font-size:12px;color:#64748b}.dropdown-item{width:100%;padding:10px 16px;background:transparent;border:none;text-align:left;font:inherit;font-size:14px;color:#334155;cursor:pointer;transition:background .15s,color .15s}.dropdown-item:hover{background:#f8fafc;color:#246bfe}.dropdown-item--danger{color:#dc2626;border-top:1px solid #f1f5f9;margin-top:4px}.dropdown-item--danger:hover{background:#fef2f2;color:#dc2626}.search-header__search-form .search-suggestion-box{flex:1}.search-header__search-form input{width:100%;border:none!important;background:transparent!important;padding:0!important;color:#0f172a;font-size:14px;outline:none!important;box-shadow:none!important;height:34px!important}.search-header__search-form .ui-button{display:none}.search-page-container{display:block;width:100%;max-width:none;margin:0;padding:24px 32px 56px calc(var(--search-filter-sidebar-width) + 64px)}.search-filters-sidebar{position:fixed;top:calc(var(--search-header-height) + 24px);left:32px;z-index:90;width:var(--search-filter-sidebar-width);background:#fff;border:1px solid #f1f5f9;border-radius:24px;padding:24px;box-shadow:0 20px 40px #0f172a0a,0 1px 10px #0f172a08;display:grid;align-content:start;gap:20px;overflow-y:visible;font-family:Plus Jakarta Sans,Inter,system-ui,sans-serif}.search-filters-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f1f5f9;padding-bottom:14px}.search-filters-header h2{font-size:19px;margin:0;font-weight:700;color:#0f172a;letter-spacing:-.5px}.search-clear-btn{background:none;border:none;color:#246bfe;font-size:13px;font-weight:600;cursor:pointer;padding:6px 10px;border-radius:8px;display:flex;align-items:center;gap:6px;transition:all .2s cubic-bezier(.4,0,.2,1)}.search-clear-btn:hover{background:#f0f6ff;color:#0056f6;transform:translateY(-.5px)}.search-clear-btn:active{transform:translateY(0)}.search-clear-btn svg{stroke:currentColor;width:15px;height:15px}.search-filters-form{display:grid;gap:12px}.filter-group{position:relative;display:grid;gap:8px}.filter-group label{font-size:13px;font-weight:600;color:#475569}.filter-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #f1f5f9;border-radius:16px;background:#fff;color:#0f172a;cursor:pointer;font:inherit;padding:12px 16px;text-align:left;box-shadow:0 2px 8px #0f172a04;transition:all .2s cubic-bezier(.4,0,.2,1)}.filter-toggle:hover{border-color:#cbd5e1;background:#f8fafc;box-shadow:0 4px 12px #0f172a08;transform:translateY(-1px)}.filter-toggle.is-open{border-color:#246bfe;background:#fff;box-shadow:0 0 0 3px #246bfe14}.filter-toggle.has-value{border-color:#e0eafd;background:#f5f9ff}.filter-toggle.has-value:hover{border-color:#246bfe;background:#f0f6ff}.filter-toggle-content{display:flex;align-items:center;gap:14px;min-width:0;flex:1}.filter-toggle-icon{width:40px;height:40px;border-radius:12px;background:#f1f5f9;border:none;color:#64748b;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s cubic-bezier(.4,0,.2,1)}.filter-toggle-icon svg{width:20px;height:20px;stroke:currentColor;stroke-width:2px}.filter-toggle.is-open .filter-toggle-icon{background:#eff6ff;color:#246bfe}.filter-toggle.has-value .filter-toggle-icon{background:#246bfe;color:#fff}.filter-toggle-text{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-width:0}.filter-toggle-text strong{color:#0f172a;font-size:14.5px;font-weight:600;line-height:1.2;letter-spacing:-.2px}.filter-toggle-text small{overflow:hidden;color:#64748b;font-size:12.5px;font-weight:500;line-height:1.3;text-overflow:ellipsis;white-space:nowrap;transition:color .2s}.filter-toggle.has-value .filter-toggle-text small{color:#246bfe;font-weight:600}.filter-toggle__chevron{flex:0 0 auto;color:#94a3b8;width:16px;height:16px;transition:transform .2s ease,color .2s ease}.filter-toggle.is-open .filter-toggle__chevron{transform:rotate(180deg);color:#246bfe}.filter-toggle.has-value .filter-toggle__chevron{color:#246bfe}.filter-panel{position:fixed;top:var(--filter-panel-top, calc(var(--search-header-height) + 24px));left:calc(var(--search-filter-sidebar-width) + 16px);z-index:1150;width:min(500px,calc(100dvw - var(--search-filter-sidebar-width) - 48px));display:grid;gap:16px;padding:24px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 20px 40px #0f172a1a}.filter-panel:before{content:"";position:absolute;top:28px;left:-8px;width:14px;height:14px;background:#fff;border-left:1px solid #e2e8f0;border-bottom:1px solid #e2e8f0;transform:rotate(45deg);box-shadow:-4px 4px 6px #0f172a0a;z-index:-1}.price-filter-panel{gap:16px;padding:24px;background:#fff;border-color:#cbd5e1}.price-range-visual{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;color:#334155;font-size:14px;font-weight:700}.price-range-track{position:relative;height:28px}.price-range-track:before,.price-range-fill{position:absolute;top:50%;height:4px;border-radius:999px;transform:translateY(-50%);content:""}.price-range-track:before{left:0;right:0;background:#dbeafe}.price-range-fill{left:var(--price-range-min, 0%);right:calc(100% - var(--price-range-max, 100%));background:#246bfe}.price-range-track input[type=range]{position:absolute;inset:0;width:100%;height:28px;margin:0;appearance:none;background:transparent;pointer-events:none}.price-range-track input[type=range]::-webkit-slider-thumb{width:22px;height:22px;border:4px solid #246bfe;border-radius:999px;background:#fff;cursor:pointer;appearance:none;pointer-events:auto}.price-range-track input[type=range]::-moz-range-thumb{width:16px;height:16px;border:4px solid #246bfe;border-radius:999px;background:#fff;cursor:pointer;pointer-events:auto}.price-input-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px}.price-input-separator{color:#64748b;font-weight:800;font-size:18px}.price-input-card{display:grid;gap:4px;min-width:0;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;padding:12px 16px;transition:all .2s ease}.price-input-card:focus-within{border-color:#246bfe;background:#fff;box-shadow:0 0 0 3px #246bfe14}.price-input-card span{color:#64748b;font-size:11px;font-weight:700}.price-input-card div{display:flex;align-items:center;justify-content:space-between;gap:6px}.price-input-card input{width:100%;min-width:0;border:none!important;background:transparent!important;color:#0f172a;font-family:inherit;font-size:16px!important;font-weight:700!important;padding:0!important;margin:0!important}.price-input-card input:focus{outline:none}.price-input-card strong{color:#0f172a;font-size:16px;font-weight:700}.price-suggestion-row{display:flex;flex-wrap:wrap;gap:8px}.price-suggestion-row button{border:1px solid #bfdbfe;border-radius:8px;background:#fff;color:#0f172a;cursor:pointer;font:inherit;font-size:15px;font-weight:800;padding:8px 14px}.price-suggestion-row button:hover{border-color:#246bfe;color:#1d4ed8}.price-filter-actions,.filter-panel-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding-top:16px;border-top:1px solid #f1f5f9;margin-top:8px}.price-filter-actions .ui-button,.filter-panel-actions .ui-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;border-radius:12px;font-size:14px;font-weight:700;transition:all .2s ease}.btn-clear-filter{background:#fff!important;border:1px solid #cbd5e1!important;color:#64748b!important}.btn-clear-filter:hover{background:#f8fafc!important;border-color:#94a3b8!important;color:#0f172a!important}.btn-save-filter{background:#246bfe!important;border:1px solid #246bfe!important;color:#fff!important;box-shadow:0 4px 12px #246bfe1f}.btn-save-filter:hover{background:#1d4ed8!important;border-color:#1d4ed8!important}.btn-icon{width:16px;height:16px;stroke-width:2px}.filter-panel-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-top:10px;border-top:1px solid #e2e8f0}.filter-group select,.filter-group input[type=text],.filter-group input[type=number]{width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#0f172a;font-size:14px;transition:border-color .2s ease}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:#246bfe}.filter-range-inputs{display:flex;align-items:center;gap:8px}.filter-range-inputs input{flex:1;min-width:0}.range-separator{color:#94a3b8;font-size:13px;font-weight:600}.checkbox-list{display:grid;gap:8px;max-height:160px;overflow-y:auto;padding:4px;border:1px solid #f1f5f9;border-radius:6px;background:#f8fafc}.checkbox-item{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.checkbox-item input[type=checkbox]{width:16px;height:16px;accent-color:#246bfe;cursor:pointer}.checkbox-item span{font-size:13px;color:#334155;font-weight:600}.filter-group--radius{border-top:1px solid #f1f5f9;padding-top:14px}.radius-toggle-row{display:flex;align-items:center;gap:8px}.radius-toggle-row input{width:18px;height:18px;accent-color:#246bfe;cursor:pointer}.radius-toggle-row label{font-weight:700;cursor:pointer}.radius-control-panel{display:grid;gap:12px;margin-top:12px;padding:12px;background:#f0f6ff;border:1px dashed #bfdbfe;border-radius:6px}.current-loc-btn{font-size:13px!important;padding:8px 12px!important;width:100%;justify-content:center}.radius-input-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.radius-input-row label{font-size:13px}.radius-input-row select{width:auto;padding:6px 12px}.radius-coords-text{margin:0;font-size:12px;color:#059669;font-weight:700;background:#ecfdf5;padding:6px 10px;border-radius:4px;border:1px solid #a7f3d0;text-align:center}.radius-map-hint{margin:0;font-size:11px;color:#2563eb;line-height:1.4;text-align:center;font-style:italic}.apply-filters-btn{width:100%;height:50px!important;border-radius:14px!important;font-size:15px!important;font-weight:700!important;background:linear-gradient(135deg,#246bfe,#0056f6)!important;color:#fff!important;box-shadow:0 10px 25px -5px #246bfe4d,0 8px 16px -6px #246bfe33;display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:12px;border:none!important;transition:all .2s cubic-bezier(.4,0,.2,1);letter-spacing:-.1px}.apply-filters-btn:hover{background:linear-gradient(135deg,#1d5be5,#004ddc)!important;box-shadow:0 12px 28px -4px #246bfe66,0 10px 20px -5px #246bfe4d;transform:translateY(-1.5px)}.apply-filters-btn:active{transform:translateY(-.5px);box-shadow:0 6px 16px -4px #246bfe4d}.search-results-section{display:grid;gap:24px;width:100%;max-width:1480px;margin:0}.search-map-container{height:320px;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;box-shadow:0 4px 12px #0f172a05;background:#e2e8f0;position:relative;z-index:0}.search-leaflet-map{width:100%;height:100%}.search-map__center-marker{font-size:32px;display:grid;place-items:center;filter:drop-shadow(0 2px 4px rgba(0,0,0,.25))}.search-map__result-marker{cursor:pointer;filter:drop-shadow(0 2px 3px rgba(0,0,0,.15))}.search-map__result-marker span{display:block;width:18px;height:18px;border:3px solid #ffffff;border-radius:999px;background:#246bfe;box-shadow:0 0 0 2px #246bfe40}.map-popup{padding:4px;max-width:200px}.map-popup strong{display:block;font-size:14px;color:#0f172a;margin-bottom:4px}.map-popup p{margin:0 0 8px;font-size:12px;color:#64748b;line-height:1.35}.map-popup span{display:block;margin-bottom:8px;color:#b45309;font-size:12px;font-weight:800}.map-popup__link{display:inline-block;color:#246bfe;font-weight:700;text-decoration:none;font-size:12px}.map-popup__link:hover{text-decoration:underline}.search-results-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;border-bottom:1px solid #e2e8f0;padding-bottom:16px}.results-count{font-size:16px;color:#475569}.results-count strong{color:#246bfe;font-size:20px}.active-filter-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.active-filter-row span{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:4px 8px;border-radius:999px;background:#eef2ff;color:#334155;font-size:12px;font-weight:700}.sort-dropdown-container{display:flex;align-items:center;gap:8px}.sort-dropdown-container label{font-size:13px;font-weight:700;color:#64748b;white-space:nowrap}.sort-dropdown-container select{padding:8px 12px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#0f172a;font-size:14px;font-weight:600}.search-results__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}.search-result-card{min-width:0;display:flex;flex-direction:column;border:1px solid #e2e8f0;border-radius:24px;padding:16px;background:#fff;color:#1e293b;font:inherit;text-align:left;cursor:pointer;box-shadow:0 10px 30px #0f172a05;transition:all .25s ease}.search-result-card:hover{border-color:#246bfe;box-shadow:0 16px 36px #246bfe14;transform:translateY(-2px)}.search-result-card__image-container{width:100%;aspect-ratio:4 / 3;border-radius:16px;overflow:hidden;position:relative;background:#f1f5f9;flex-shrink:0}.search-result-card__image-container img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}.search-result-card:hover .search-result-card__image-container img{transform:scale(1.03)}.search-result-card__placeholder{display:grid;place-items:center;width:100%;height:100%;color:#94a3b8;font-weight:700;font-size:14px}.distance-badge{position:absolute;top:12px;left:12px;background:#0f172ad9;color:#fff;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:700;display:flex;align-items:center;gap:4px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:10}.search-result-card__body{display:flex;flex-direction:column;gap:12px;padding-top:16px;flex-grow:1}.search-result-card__title{margin:0;color:#0f172a;font-size:18px;font-weight:800;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.search-result-card__address{margin:0;display:flex;align-items:flex-start;gap:6px;color:#64748b;font-size:13px;font-weight:500;line-height:1.4}.address-pin-icon{width:15px;height:15px;color:#246bfe;flex-shrink:0;margin-top:2px}.search-result-card__address span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;color:#64748b}.card-badges-grid{display:flex;flex-wrap:wrap;gap:8px}.card-badge{display:inline-flex;align-items:center;gap:6px;border-radius:8px;padding:6px 12px;font-size:12px;font-weight:700;line-height:1.4}.badge-icon{width:14px;height:14px;flex-shrink:0}.badge-blue{background:#eff6ff;color:#246bfe}.badge-orange{background:#fff7ed;color:#ea580c}.badge-green{background:#f0fdf4;color:#16a34a}.search-card-divider{border:none;border-top:1px solid #f1f5f9;margin:2px 0 0;width:100%}.search-card-amenities-list{display:flex;flex-wrap:wrap;gap:8px}.search-card-amenity-item{display:inline-flex;align-items:center;gap:6px;border-radius:8px;background:#f8fafc;color:#475569;font-size:11px;font-weight:600;padding:6px 10px;line-height:1.3}.amenity-icon{width:12px;height:12px;color:#246bfe;flex-shrink:0}.search-pagination{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:36px}.pagination-btn{background:#fff;border:1px solid #cbd5e1;border-radius:6px;color:#475569;padding:8px 16px;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s ease}.pagination-btn:hover:not(:disabled){border-color:#246bfe;color:#246bfe;background:#f0f6ff}.pagination-btn:disabled{opacity:.5;cursor:not-allowed}.pagination-pages{display:flex;gap:6px}.pagination-page-number{min-width:38px;height:38px;display:grid;place-items:center;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#475569;font-size:14px;font-weight:700;cursor:pointer;transition:all .2s ease}.pagination-page-number:hover{border-color:#246bfe;color:#246bfe}.pagination-page-number.active{background:#246bfe;border-color:#246bfe;color:#fff}.search-page__state{padding:24px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#64748b;font-weight:700;text-align:center;box-shadow:0 4px 12px #0f172a05}@media(max-width:960px){.search-page-container{display:grid;grid-template-columns:1fr;padding:16px;gap:24px}.search-filters-sidebar{position:static;width:auto;height:auto;overflow:visible;border:1px solid #e2e8f0;border-radius:8px}.filter-panel,.price-filter-panel{position:static;width:auto;box-shadow:none}.search-header{padding:16px;flex-direction:column;align-items:stretch;gap:12px}.search-header__logo{text-align:center;flex:none}.search-location-actions{justify-content:center}.search-location-panel{left:16px;right:16px;width:auto;transform:none}.search-header__auth{flex:none;justify-content:center}.search-results-header{display:grid;align-items:stretch}.sort-dropdown-container{justify-content:space-between}.sort-dropdown-container select{min-width:0;width:100%}.search-pagination{flex-wrap:wrap}.pagination-pages{max-width:100%;overflow-x:auto;padding-bottom:4px}}@media(max-width:560px){.search-header__search-form,.nearby-address-row,.location-panel-actions,.filter-range-inputs,.radius-input-row{display:grid}.radius-slider-row{grid-template-columns:1fr}.range-separator{display:none}.search-results__grid{grid-template-columns:1fr}}@media(min-width:1800px){.search-results-section{max-width:1680px}}.viewing-modal-overlay{position:fixed;inset:0;background:#0f172a66;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1200;animation:fadeIn .25s cubic-bezier(.16,1,.3,1) forwards}.viewing-modal-container{background:#fff;border-radius:20px;box-shadow:0 20px 25px -5px #0000000d,0 10px 10px -5px #00000005,0 0 0 1px #00000005;width:min(90%,460px);overflow:hidden;animation:scaleIn .3s cubic-bezier(.34,1.3,.64,1) forwards}.viewing-modal-header{padding:24px 24px 16px;display:flex;justify-content:space-between;align-items:center}.viewing-modal-header h2{font-size:20px;font-weight:700;color:#0f172a;margin:0}.viewing-modal-close-btn{background:#f8fafc;border:1px solid #e2e8f0;width:32px;height:32px;border-radius:50%;color:#64748b;cursor:pointer;display:grid;place-items:center;transition:all .2s ease;padding:0}.viewing-modal-close-btn:hover{color:#0f172a;background:#f1f5f9;border-color:#cbd5e1}.viewing-modal-form{padding:0 24px 24px;display:flex;flex-direction:column;gap:16px}.viewing-modal-info{background:#f5f9ff;border:1px solid #c2e0ff;border-radius:12px;padding:12px 16px;display:flex;align-items:center;gap:16px}.info-icon-wrapper{width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid #c2e0ff;color:#246bfe;display:grid;place-items:center;flex-shrink:0;box-shadow:0 2px 6px #246bfe0d}.info-icon-wrapper svg{width:20px;height:20px}.info-text{display:flex;flex-direction:column;gap:2px}.info-text p{margin:0;font-size:14px;color:#475569;line-height:1.4}.info-text strong{color:#0f172a;font-weight:700}.viewing-modal-field{display:flex;flex-direction:column;gap:6px}.viewing-modal-field label{font-size:13px;font-weight:700;color:#0f172a}.viewing-modal-field label .required{color:#ef4444}.input-icon-wrapper{position:absolute;left:14px;color:#246bfe;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:10}.input-icon-wrapper svg{width:18px;height:18px;stroke-width:2.2}.input-with-icon input,.input-with-icon select,.input-with-icon textarea{border:1px solid #cbd5e1;border-radius:10px;padding:10px 14px 10px 42px;font-size:14px;font-family:inherit;color:#0f172a;outline:none;background:#fff;transition:all .2s ease;width:100%;box-sizing:border-box}.input-with-icon input:focus,.input-with-icon select:focus,.input-with-icon textarea:focus{border-color:#246bfe;box-shadow:0 0 0 3px #246bfe1a}.input-with-icon select{appearance:none;-webkit-appearance:none;cursor:pointer;padding-right:36px}.select-chevron-wrapper{position:absolute;right:14px;color:#64748b;display:flex;align-items:center;pointer-events:none;z-index:10}.select-chevron-wrapper svg{width:14px;height:14px;stroke-width:2.5}.input-with-icon.align-start{align-items:flex-start}.input-icon-wrapper.offset-top{top:12px}.input-with-icon textarea{resize:vertical;min-height:80px;line-height:1.5}.viewing-modal-footer{margin-top:12px;display:flex;justify-content:flex-end;gap:12px}.viewing-modal-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;font-size:14px;font-weight:700;border-radius:10px;cursor:pointer;transition:all .2s ease,transform .1s ease;border:none;height:42px;box-sizing:border-box}.viewing-modal-btn svg{width:16px;height:16px;flex-shrink:0}.viewing-modal-btn--secondary{background:#f8fafc;border:1px solid #e2e8f0;color:#475569}.viewing-modal-btn--secondary:hover:not(:disabled){background:#f1f5f9;color:#0f172a;border-color:#cbd5e1}.viewing-modal-btn--primary{background:#246bfe;color:#fff;box-shadow:0 4px 12px #246bfe40}.viewing-modal-btn--primary:hover:not(:disabled){background:#1a5ce0;box-shadow:0 6px 16px #246bfe59;transform:translateY(-1px)}.viewing-modal-btn--primary:active:not(:disabled){transform:translateY(1px)}.viewing-modal-btn:disabled{opacity:.6;cursor:not-allowed}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}.datetime-split-row{display:flex;gap:12px}.datetime-split-row .input-with-icon{flex:1}.input-with-icon input[type=date]::-webkit-calendar-picker-indicator,.input-with-icon input[type=time]::-webkit-calendar-picker-indicator{opacity:0;width:100%;height:100%;position:absolute;left:0;top:0;cursor:pointer;z-index:2}@media(max-width:400px){.datetime-split-row{flex-direction:column;gap:8px}}.rental-modal-overlay{position:fixed;inset:0;background:#0f172a66;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1200;animation:fadeIn .25s cubic-bezier(.16,1,.3,1) forwards}.rental-modal-container{background:#fff;border-radius:24px;box-shadow:0 20px 25px -5px #0000000d,0 10px 10px -5px #00000005,0 0 0 1px #00000005;width:min(90%,480px);overflow:hidden;animation:scaleIn .3s cubic-bezier(.34,1.3,.64,1) forwards}.rental-modal-header{padding:24px 24px 16px;display:flex;justify-content:space-between;align-items:center}.rental-modal-header h2{font-size:22px;font-weight:800;color:#0f172a;margin:0}.rental-modal-close-btn{background:transparent;border:none;width:36px;height:36px;border-radius:50%;color:#64748b;cursor:pointer;display:grid;place-items:center;transition:all .2s ease;padding:0}.rental-modal-close-btn:hover{color:#0f172a;background:#f1f5f9}.rental-modal-form{padding:0 24px 24px;display:flex;flex-direction:column;gap:20px}.rental-modal-info{background:#edf5ff;border:1px solid #c2e0ff;border-radius:16px;padding:16px;display:flex;align-items:center;gap:16px;position:relative;overflow:hidden}.info-icon-wrapper{width:54px;height:54px;border-radius:14px;background:#fff;border:1px solid #c2e0ff;color:#246bfe;display:grid;place-items:center;flex-shrink:0;box-shadow:0 4px 8px #246bfe0a;z-index:2}.info-icon-wrapper svg{width:24px;height:24px}.info-text{display:flex;flex-direction:column;gap:6px;min-width:0;z-index:2}.info-text p{margin:0;font-size:14px;color:#475569;line-height:1.4;display:flex;align-items:center;gap:8px}.info-inline-icon{flex-shrink:0}.info-inline-icon.icon-building{color:#246bfe}.info-inline-icon.icon-room{color:#64748b}.info-label{color:#0f172a;font-weight:700}.info-value{color:#334155;font-weight:500}.info-watermark{position:absolute;right:-5px;bottom:-5px;height:90%;width:auto;color:#246bfe;opacity:.07;pointer-events:none;z-index:1}.rental-modal-row{display:flex;gap:16px}.rental-modal-row .rental-modal-field{flex:1;min-width:0}.rental-modal-field{display:flex;flex-direction:column;gap:8px}.rental-modal-field label{font-size:14px;font-weight:700;color:#0f172a}.rental-modal-field label .required{color:#ef4444}.input-with-icon{position:relative;display:flex;align-items:center;width:100%}.input-icon-wrapper{position:absolute;color:#64748b;display:flex;align-items:center;justify-content:center;pointer-events:none;z-index:10}.input-icon-wrapper svg{width:20px;height:20px;stroke-width:2.2}.input-with-icon.icon-right .input-icon-wrapper{right:16px;left:auto}.input-with-icon.icon-right input{padding:12px 48px 12px 16px}.input-with-icon input{border:1px solid #cbd5e1;border-radius:12px;font-size:14px;font-family:inherit;color:#0f172a;outline:none;background:#fff;transition:all .2s ease;width:100%;box-sizing:border-box;height:48px}.input-with-icon input:focus{border-color:#246bfe;box-shadow:0 0 0 3px #246bfe14}.input-with-icon input[type=date]::-webkit-calendar-picker-indicator{opacity:0;width:100%;height:100%;position:absolute;left:0;top:0;cursor:pointer;z-index:2}.rental-plain-input,.rental-plain-textarea{border:1px solid #cbd5e1;border-radius:12px;padding:12px 16px;font-size:14px;font-family:inherit;color:#0f172a;outline:none;background:#fff;transition:all .2s ease;width:100%;box-sizing:border-box}.rental-plain-input{height:48px}.rental-plain-input:focus,.rental-plain-textarea:focus{border-color:#246bfe;box-shadow:0 0 0 3px #246bfe14}.rental-plain-textarea{resize:vertical;min-height:90px;line-height:1.5}.field-helper-text{font-size:12px;color:#64748b;margin-top:2px}.rental-modal-footer{margin-top:8px;display:flex;justify-content:flex-end;gap:12px}.rental-modal-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 24px;font-size:14px;font-weight:700;border-radius:12px;cursor:pointer;transition:all .2s ease,transform .1s ease;border:none;height:46px;box-sizing:border-box}.rental-modal-btn svg{width:18px;height:18px;flex-shrink:0}.rental-modal-btn--secondary{background:#fff;border:1px solid #e2e8f0;color:#475569}.rental-modal-btn--secondary:hover:not(:disabled){background:#f1f5f9;color:#0f172a;border-color:#cbd5e1}.rental-modal-btn--primary{background:#246bfe;color:#fff;box-shadow:0 4px 12px #246bfe33}.rental-modal-btn--primary:hover:not(:disabled){background:#1a5ce0;box-shadow:0 6px 16px #246bfe4d;transform:translateY(-1px)}.rental-modal-btn--primary:active:not(:disabled){transform:translateY(1px)}.rental-modal-btn:disabled{opacity:.6;cursor:not-allowed}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{transform:scale(.96);opacity:0}to{transform:scale(1);opacity:1}}@media(max-width:440px){.rental-modal-row{flex-direction:column;gap:16px}}.public-room-detail{font-family:Plus Jakarta Sans,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;width:min(100% - 40px,980px);margin:0 auto;padding:24px 0 56px;display:grid;gap:20px}.public-room-detail--state{min-height:60vh;display:grid;place-content:center;text-align:center;gap:12px}.public-room-detail__home-link{color:#246bfe;text-decoration:none;font-weight:700;font-size:14px}.public-room-detail__back{width:fit-content;display:flex;align-items:center;gap:6px;color:#246bfe;font-weight:700;font-size:14px;text-decoration:none;transition:opacity .2s ease,transform .2s ease}.public-room-detail__back:hover{opacity:.8;transform:translate(-2px)}.public-room-detail__back svg{flex-shrink:0}.public-room-detail__container{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:28px;align-items:start}.public-room-detail__gallery-section{position:sticky;top:24px;width:100%}.public-room-detail__info-section{display:flex;flex-direction:column;gap:20px;padding:24px;background:#fff;border:1px solid #f1f5f9;border-radius:18px;box-shadow:0 8px 24px -12px #0f172a0a}.public-room-detail__header{display:flex;flex-direction:column;gap:10px}.public-room-detail__header h1{margin:0;font-size:28px;color:#0f172a;font-weight:800;line-height:1.25}.public-room-detail__house-name,.public-room-detail__address{margin:0;display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#475569}.public-room-detail__address{color:#64748b;font-weight:500}.public-room-detail__house-name svg,.public-room-detail__address svg{color:#246bfe;flex-shrink:0}.public-room-detail__actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}.public-room-detail__action{display:flex;align-items:center;gap:8px;height:40px;padding:0 18px;border-radius:10px;border:1px solid transparent;font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:all .2s ease,transform .1s ease}.public-room-detail__action:hover{transform:translateY(-1px)}.public-room-detail__action:active{transform:translateY(1px)}.public-room-detail__action svg{flex-shrink:0}.public-room-detail__action--primary{background:#246bfe;color:#fff;box-shadow:0 4px 12px #246bfe33}.public-room-detail__action--primary:hover{background:#1a5ce0;box-shadow:0 6px 16px #246bfe47}.public-room-detail__action--secondary{background:#fff;color:#246bfe;border-color:#c2e0ff}.public-room-detail__action--secondary:hover{background:#f0f7ff;border-color:#93c5fd}.public-room-detail__action:disabled{cursor:not-allowed;opacity:.6}.public-room-detail__specs{display:flex;align-items:center;background:#f8fafc;border-radius:12px;padding:12px 18px;border:1px solid #f1f5f9}.public-room-detail__spec-item{display:flex;align-items:center;gap:12px;flex:1}.spec-icon-wrapper{width:36px;height:36px;border-radius:8px;background:#fff;border:1px solid #f1f5f9;color:#246bfe;display:grid;place-items:center;flex-shrink:0;box-shadow:0 2px 4px #00000003}.spec-icon-wrapper svg{width:18px;height:18px;stroke-width:2.2}.spec-text{display:flex;flex-direction:column;gap:2px}.spec-label{font-size:10px;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;font-weight:700}.spec-value{font-size:15px;color:#0f172a;font-weight:700}.public-room-detail__spec-divider{width:1px;height:32px;background:#e2e8f0;margin:0 8px}.public-room-detail__section{display:flex;flex-direction:column;gap:14px;border-top:1px solid #f1f5f9;padding-top:20px;margin-top:4px}.section-title-with-icon{display:flex;align-items:center;gap:8px}.section-title-icon-wrapper{width:24px;height:24px;color:#246bfe;display:grid;place-items:center;flex-shrink:0}.section-title-icon-wrapper svg{width:18px;height:18px;stroke-width:2.5}.section-title-with-icon h2{margin:0;font-size:13px;color:#0f172a;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.public-room-detail__price-list{display:grid;gap:8px}.public-room-detail__price-row{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#f8fafc;border:1px solid #f1f5f9;border-radius:10px;transition:all .2s ease}.public-room-detail__price-row:hover{background:#fff;border-color:#c2e0ff;box-shadow:0 4px 12px -4px #0f172a0a}.price-occupants{display:flex;align-items:center;gap:8px;font-size:13px;color:#334155;font-weight:600}.price-occupant-icon-wrapper{width:28px;height:28px;border-radius:6px;background:#fff;border:1px solid #f1f5f9;color:#246bfe;display:grid;place-items:center;flex-shrink:0}.price-occupant-icon-wrapper svg{width:14px;height:14px;stroke-width:2.5}.price-value-text{font-size:14px;color:#ea580c;font-weight:800}.public-room-detail__amenities{display:flex;flex-wrap:wrap;gap:6px}.public-room-detail__amenity-badge{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#f0f7ff;color:#246bfe;border-radius:8px;font-size:12px;font-weight:700;transition:all .2s ease}.public-room-detail__amenity-badge:hover{background:#e0eeff;transform:translateY(-1px)}.amenity-icon{width:14px;height:14px;color:#246bfe;flex-shrink:0}.public-room-detail__description{margin:0;font-size:13px;color:#475569;line-height:1.55}.public-room-detail__muted{margin:0;font-size:13px;color:#94a3b8;font-style:italic}@media(max-width:860px){.public-room-detail__container{grid-template-columns:1fr;gap:24px}.public-room-detail__gallery-section{position:static}}@media(max-width:500px){.public-room-detail{padding:16px 0 40px;gap:16px}.public-room-detail__info-section{padding:16px;border-radius:14px}.public-room-detail__header h1{font-size:24px}.public-room-detail__actions{display:grid;grid-template-columns:1fr;gap:8px}.public-room-detail__action{justify-content:center}.public-room-detail__specs{flex-direction:column;align-items:stretch;gap:12px;padding:12px}.public-room-detail__spec-divider{width:100%;height:1px;margin:0}}.landlord-dashboard-page .overview-band{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;padding:24px;border:1px solid #dbe3ef;border-radius:12px;background:#fff;box-shadow:0 1px 3px #00000008}.landlord-dashboard-page .overview-left{display:flex;flex-direction:column;gap:6px;flex:1}.landlord-dashboard-page .overview-left h2{margin:4px 0 0;font-size:30px;font-weight:700;color:#0f172a}.landlord-dashboard-page .overview-right{display:flex;flex-direction:column;align-items:flex-end;gap:12px}.landlord-dashboard-page .eyebrow{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin:0}.landlord-dashboard-page .overview-stats{display:flex;flex-wrap:wrap;gap:12px;justify-content:flex-end}.landlord-dashboard-page .stat-item{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:6px;border:1px solid transparent;font-size:12px;font-weight:500}.landlord-dashboard-page .stat-item svg{width:14px;height:14px}.landlord-dashboard-page .stat-item span{color:inherit;font-size:12px;font-weight:600;white-space:nowrap}.landlord-dashboard-page .stat-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;border-radius:999px;font-size:10px;font-weight:700;margin-left:6px}.landlord-dashboard-page .stat-item--total{background:#f3f4f6;border-color:#e5e7eb;color:#4b5563}.landlord-dashboard-page .stat-item--total .stat-badge{background:#cbd5e1;color:#1f2937}.landlord-dashboard-page .stat-item--approved{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.landlord-dashboard-page .stat-item--approved .stat-badge{background:#86efac;color:#14532d}.landlord-dashboard-page .stat-item--pending{background:#fef9c3;border-color:#fef08a;color:#854d0e}.landlord-dashboard-page .stat-item--pending .stat-badge{background:#fde047;color:#713f12}.landlord-dashboard-page .stat-item--rejected{background:#fee2e2;border-color:#fecaca;color:#991b1b}.landlord-dashboard-page .stat-item--rejected .stat-badge{background:#fca5a5;color:#7f1d1d}.landlord-dashboard-page .overview-actions{display:flex;justify-content:flex-end;gap:8px}.landlord-dashboard-page .primary-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#246bfe!important;color:#fff!important;font-weight:700!important;border:none;cursor:pointer;min-height:42px;padding:10px 20px;border-radius:8px;font-size:15px;transition:background-color .2s;box-shadow:0 2px 4px #246bfe26}.landlord-dashboard-page .primary-action:hover:not(:disabled){background:#1a5ce0!important}.landlord-dashboard-page .primary-action:disabled{background:#cbd5e1!important;color:#64748b!important;cursor:not-allowed}.landlord-dashboard-page .overview-description{margin:0;font-size:14.5px;color:#64748b}.landlord-dashboard-page .dashboard-card{display:flex;flex-direction:column;width:100%;padding:0;border:1px solid #dbe3ef;border-radius:16px;background:#fff;color:inherit;text-align:left;font:inherit;cursor:pointer;overflow:hidden;transition:border-color .2s,box-shadow .2s,transform .2s}.landlord-dashboard-page .dashboard-card:hover{border-color:#246bfe;box-shadow:0 6px 20px #246bfe1a;transform:translateY(-2px)}.landlord-dashboard-page .card-media-wrapper{position:relative;width:100%;height:180px;background:#f1f5f9;overflow:hidden}.landlord-dashboard-page .card-cover-image{width:100%;height:100%;object-fit:cover;transition:transform .3s}.landlord-dashboard-page .dashboard-card:hover .card-cover-image{transform:scale(1.05)}.landlord-dashboard-page .card-status-overlay{position:absolute;top:10px;left:10px;display:flex;flex-direction:column;gap:6px}.landlord-dashboard-page .card-status-overlay .status-pill{font-size:10px;font-weight:700;padding:4px 10px;box-shadow:0 2px 6px #0000000f;border-radius:999px;border:none;min-height:auto}.status-pill--icon{display:inline-flex;align-items:center;gap:4px}.dot-indicator{width:6px;height:6px;border-radius:50%;background-color:currentColor;display:inline-block}.landlord-dashboard-page .card-menu-trigger-overlay{position:absolute;top:10px;right:10px;display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:50%;color:#64748b;background-color:#fff;box-shadow:0 2px 8px #00000014;border:none;padding:0;cursor:pointer;transition:background-color .2s,color .2s,transform .2s;z-index:10}.landlord-dashboard-page .card-menu-trigger-overlay:hover{background-color:#f1f5f9;color:#0f172a;transform:scale(1.05)}.landlord-dashboard-page .card-body-content{padding:24px;display:flex;flex-direction:column;gap:14px;flex:1}.landlord-dashboard-page .card-title-row{display:flex;justify-content:space-between;align-items:center}.landlord-dashboard-page .card-title-row h3{margin:0;font-size:22px;font-weight:700;color:#0c1831;line-height:1.2;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;flex:1}.landlord-dashboard-page .card-location{display:flex;align-items:center;gap:6px;color:#64748b;font-size:14px;line-height:1.4;margin-top:2px}.landlord-dashboard-page .card-location span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.landlord-dashboard-page .card-location svg{color:#94a3b8;flex-shrink:0}.landlord-dashboard-page .card-divider{border:0;border-top:1px solid #f1f5f9;margin:6px 0}.card-metrics-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:0;margin:6px 0;align-items:center}.metric-item{display:flex;align-items:center;gap:12px}.metric-item:first-child{border-right:1px solid #f1f5f9;padding-right:16px}.metric-item:last-child{padding-left:16px}.metric-icon{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0}.metric-icon--blue{background-color:#eff6ff;color:#246bfe}.metric-icon--green{background-color:#f0fdf4;color:#10b981}.metric-text-group{display:flex;flex-direction:column;gap:2px}.metric-label{font-size:9px;font-weight:700;color:#94a3b8;letter-spacing:.05em;text-transform:uppercase}.metric-value{font-size:14px;font-weight:700;color:#0f172a}.card-footer-alert-banner{margin-top:8px;width:100%}.alert-banner-content{display:flex;align-items:center;padding:10px 16px;border-radius:8px;font-size:13px;font-weight:600;width:100%;box-sizing:border-box;gap:8px;border:1px solid transparent;transition:transform .2s,box-shadow .2s}.alert-banner-content--info{background-color:#eff6ff;color:#246bfe;border-color:#246bfe0f}.alert-banner-content--success{background-color:#f0fdf4;color:#10b981;border-color:#10b9810f}.alert-banner-content--warning{background-color:#fffbeb;color:#d97706;border-color:#d977060f}.banner-icon{flex-shrink:0}.chevron-icon{margin-left:auto;flex-shrink:0;transition:transform .2s}.dashboard-card:hover .chevron-icon{transform:translate(4px)}.status-pill--visibility-hidden,.status-pill--visibility-visible{background:#e6f4ea!important;color:#137333!important}.empty-panel{padding:24px;border:1px solid #dbe3ef;border-radius:8px;background:#fff}.empty-panel h2{margin:0 0 8px;font-size:20px}.empty-panel p{margin:0;color:#64748b}.back-link{margin:0 0 14px;display:inline-flex;align-items:center}@media(max-width:980px){.landlord-dashboard{grid-template-columns:1fr}.landlord-dashboard-page .overview-band{flex-direction:column;align-items:stretch;gap:16px}.landlord-dashboard-page .overview-right{align-items:stretch}.landlord-dashboard-page .overview-actions{justify-content:flex-start}.landlord-dashboard-page .overview-stats{flex-direction:column;align-items:stretch;justify-content:flex-start}.landlord-dashboard-page .stat-item{justify-content:space-between}.landlord-dashboard-page .stat-badge{margin-left:auto}}.page-header-band{--page-header-spacing: 24px;background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:24px 32px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;box-shadow:0 4px 6px -1px #00000005;margin-bottom:var(--page-header-spacing);gap:24px;min-width:0}.page-header-band+:not(.shared-tabs-wrapper){margin-top:0}.page-header-left-area{display:flex;align-items:center;flex:1 1 420px;gap:16px;min-width:0}.page-header-icon-box{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:#eff6ff;border:1px solid #dce4ef;color:#246bfe;flex-shrink:0}.page-header-icon-box svg{width:24px;height:24px;stroke-width:2.2px}.page-header-text{display:flex;flex-direction:column;min-width:0}.page-header-eyebrow{margin:0 0 4px!important;font-size:12px!important;font-weight:700!important;text-transform:uppercase!important;letter-spacing:0!important;color:#246bfe!important;overflow-wrap:anywhere}.page-header-title{margin:0 0 4px!important;font-size:32px!important;font-weight:800!important;color:#0f172a!important;line-height:1.15!important;overflow-wrap:anywhere}.page-header-description{margin:0!important;color:#64748b!important;font-size:14px!important;overflow-wrap:anywhere}.page-header-right-area{display:flex;align-items:center;justify-content:flex-end;flex:0 1 auto;flex-wrap:wrap;gap:16px;max-width:min(100%,640px);min-width:0}.page-header-right-area>*{max-width:100%;min-width:0}@media(max-width:768px){.page-header-band{flex-direction:column;align-items:flex-start;padding:20px}.page-header-right-area{width:100%;justify-content:flex-start}.page-header-title{font-size:26px!important}}.page-header-band--flat-bottom,.page-header-band.attached-bottom{border-bottom-left-radius:0;border-bottom-right-radius:0;border-bottom:none;margin-bottom:0}.page-header-back-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:1px solid #e2e8f0;background:#fff;color:#64748b;cursor:pointer;transition:all .2s;flex-shrink:0}.page-header-back-btn:hover{background:#f8fafc;color:#0f172a;border-color:#cbd5e1}.landlord-pr-dashboard{padding:24px;background:#f4f7fb}.pr-dashboard-content{display:grid;gap:18px}.landlord-pr-dashboard svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.pr-dashboard-topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:10px}.pr-dashboard-topbar h2{margin:2px 0 4px;color:#0f172a;font-size:28px;line-height:1.05;font-weight:800}.pr-dashboard-topbar p{margin:0;color:#64748b;font-size:14px}.pr-kicker{color:#2563eb;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.pr-month-filter{min-height:38px;display:inline-flex;align-items:center;gap:4px;border:1px solid #dbe3ef;border-radius:8px;background:#fff;padding:4px;color:#334155;font-size:13px;box-shadow:0 1px 3px #0f172a0a}.pr-month-picker{position:relative;min-height:30px;display:inline-flex;align-items:center;gap:8px;padding:4px 8px;cursor:pointer}.pr-month-filter svg,.pr-month-picker svg{width:14px;height:14px;color:#64748b}.pr-month-picker strong{color:#0f172a}.pr-month-picker input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.pr-month-step{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:6px;background:transparent;color:#64748b;cursor:pointer}.pr-month-step:hover:not(:disabled){background:#eff6ff;color:#2563eb}.pr-month-step:disabled{opacity:.35;cursor:not-allowed}.pr-stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));column-gap:10px;row-gap:16px}.pr-metric-card,.pr-panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 3px #0f172a09;transition:all .2s cubic-bezier(.4,0,.2,1)}.pr-metric-card{min-height:66px;display:flex;align-items:center;gap:10px;padding:11px 12px}.pr-metric-card:hover{transform:translateY(-2px);box-shadow:0 10px 20px #0f172a0d,0 2px 4px #0f172a05;border-color:#cbd5e1}.pr-metric-card.wide{min-width:0}.pr-metric-icon{width:30px;height:30px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.pr-metric-card.blue .pr-metric-icon{background:#eaf3ff;color:#2563eb}.pr-metric-card.indigo .pr-metric-icon{background:#eef2ff;color:#4f46e5}.pr-metric-card.green .pr-metric-icon{background:#e9f9ef;color:#16a34a}.pr-metric-card.orange .pr-metric-icon{background:#fff3e0;color:#f59e0b}.pr-metric-card.purple .pr-metric-icon{background:#f4e8ff;color:#8b5cf6}.pr-metric-card.mint .pr-metric-icon{background:#dcfce7;color:#16a34a}.pr-metric-card.plain .pr-metric-icon{background:#f1f5f9;color:#475569}.pr-metric-card span,.pr-summary-row span,.pr-action-row span,.pr-invoice-row span,.pr-chart-column small,.pr-chart-unit{color:#64748b;font-size:12px}.pr-metric-card strong{display:block;margin-top:2px;color:#0f172a;font-size:19px;line-height:1.1;font-weight:800;white-space:nowrap}.pr-metric-card small{display:block;margin-top:3px;color:#16a34a;font-size:10px;font-weight:800}.pr-main-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(420px,.85fr);column-gap:10px;row-gap:18px}.pr-panel{padding:14px}.pr-panel-title{display:flex;align-items:center;gap:8px;min-height:24px;padding-bottom:12px;margin:-2px -14px 12px;padding-left:14px;padding-right:14px;border-bottom:1px solid #eef2f7;color:#2563eb}.pr-panel-title h3{margin:0;color:#0f172a;font-size:15px;font-weight:800}.pr-chart-panel{min-height:360px}.pr-chart-unit{margin-bottom:6px}.pr-chart{min-height:290px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px;align-items:end;padding:8px 4px 0;background:linear-gradient(to bottom,transparent 0,transparent 32%,#f1f5f9 32%,transparent calc(32% + 1px)),linear-gradient(to bottom,transparent 0,transparent 66%,#f1f5f9 66%,transparent calc(66% + 1px))}.pr-chart-column{min-width:0;display:grid;grid-template-rows:20px 1fr 20px;gap:5px;text-align:center;align-items:end}.pr-chart-value{color:#64748b;font-size:12px;font-weight:700;white-space:nowrap}.pr-chart-track{height:230px;display:flex;align-items:flex-end;justify-content:center}.pr-chart-bar{width:34px;min-height:0;border-radius:4px 4px 0 0;background:linear-gradient(180deg,#60a5fa,#2563eb);box-shadow:0 8px 16px #2563eb2e}.pr-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:10px;row-gap:16px}.pr-summary-card{min-height:170px}.pr-summary-list{display:grid;gap:13px}.pr-summary-row{display:grid;grid-template-columns:8px minmax(0,1fr) auto;align-items:center;gap:8px}.pr-summary-row strong{color:#0f172a;font-size:14px}.pr-dot{width:5px;height:5px;border-radius:999px;background:#94a3b8}.pr-dot.blue{background:#60a5fa}.pr-dot.green{background:#34d399}.pr-dot.red{background:#fb7185}.pr-dot.amber{background:#fbbf24}.pr-dot.violet{background:#a78bfa}.pr-bottom-grid{display:grid;grid-template-columns:minmax(280px,.75fr) minmax(520px,2.25fr);column-gap:10px;row-gap:18px}.pr-summary-title-row{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding-bottom:12px;margin:-2px -14px 12px;padding-left:14px;padding-right:12px;border-bottom:1px solid #eef2f7}.pr-summary-title-row .pr-panel-title{min-height:24px;margin:0;padding:0;border-bottom:0}.pr-detail-button{min-height:26px;display:inline-flex;align-items:center;gap:2px;border:1px solid #dbeafe;border-radius:6px;background:#eff6ff;color:#2563eb;padding:4px 8px;font:inherit;font-size:12px;font-weight:800;white-space:nowrap;cursor:pointer;transition:background .18s ease,border-color .18s ease}.pr-detail-button:hover{background:#dbeafe;border-color:#bfdbfe}.pr-detail-button svg{width:13px;height:13px}.pr-action-list{display:grid;gap:0}.pr-action-row{min-height:78px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;width:100%;border:0;border-bottom:1px solid #eef2f7;background:transparent;text-align:left;cursor:pointer;padding:0}.pr-action-row:last-child{border-bottom:0}.pr-action-row svg{width:14px;height:14px;color:#94a3b8}.pr-action-count{min-width:22px;height:22px;display:inline-flex;align-items:center;justify-content:center;border-radius:5px;font-size:13px}.pr-action-count.red{background:#ffe4e6;color:#e11d48}.pr-action-count.orange{background:#ffedd5;color:#ea580c}.pr-action-count.yellow{background:#fef9c3;color:#ca8a04}.pr-action-count.violet{background:#ede9fe;color:#7c3aed}.pr-invoice-panel{min-width:0}.pr-invoice-table{display:grid;overflow-x:auto}.pr-invoice-head,.pr-invoice-row{min-width:760px;display:grid;grid-template-columns:2fr .8fr .9fr 1fr 1fr 40px;gap:12px;align-items:center}.pr-invoice-head{min-height:38px;padding:0 10px;background:#f8fafc;border-bottom:1px solid #eef2f7;color:#64748b;font-size:12px;font-weight:800}.pr-invoice-row{min-height:48px;padding:0 10px;border-bottom:1px solid #eef2f7}.pr-invoice-row strong{color:#0f172a;font-size:13px}.pr-status{display:inline-flex;align-items:center;min-height:24px;width:fit-content;border-radius:5px;padding:3px 8px;background:#e2e8f0;color:#475569;font-size:12px;font-weight:800}.pr-status.paid{background:#dcfce7;color:#15803d}.pr-status.issued{background:#dbeafe;color:#1d4ed8}.pr-status.overdue{background:#ffe4e6;color:#e11d48}.pr-status.draft{background:#fef3c7;color:#b45309}.pr-more{color:#94a3b8;font-weight:900;text-align:center}.pr-view-all{min-height:36px;display:inline-flex;align-items:center;gap:4px;justify-content:center;margin:12px auto 0;border:0;background:transparent;color:#2563eb;font-weight:700;cursor:pointer}.pr-view-all svg{width:13px;height:13px}.pr-empty{min-height:160px;display:grid;place-items:center;color:#64748b;font-size:13px}@media(max-width:1500px){.pr-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.pr-main-grid,.pr-bottom-grid{grid-template-columns:1fr}}@media(max-width:900px){.landlord-pr-dashboard{padding:16px}.pr-dashboard-topbar{flex-direction:column}.pr-stat-grid,.pr-summary-grid{grid-template-columns:1fr}}.ui-card{--ui-card-accent: #94a3b8;background:#fff;border:1px solid #e2e8f0;border-left:4px solid var(--ui-card-accent);border-radius:12px;box-shadow:0 1px 3px #0f172a0d;display:flex;flex-direction:column;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.ui-card:hover{border-color:#246bfe;border-left-color:var(--ui-card-accent);box-shadow:0 8px 20px #0f172a14;transform:translateY(-1px)}.ui-card--success{--ui-card-accent: #22c55e}.ui-card--warning{--ui-card-accent: #f59e0b}.ui-card--danger{--ui-card-accent: #ef4444}.ui-card--neutral{--ui-card-accent: #94a3b8}.ui-card--info{--ui-card-accent: #0ea5e9}.ui-card--reserved{--ui-card-accent: #8b5cf6}.ui-card__header{align-items:flex-start;border-bottom:1px solid #f1f5f9;display:flex;gap:16px;justify-content:space-between;padding:18px 20px 14px}.ui-card__title{color:#0f172a;flex:1 1 auto;font-size:16px;font-weight:700;line-height:1.35;margin:0;min-width:0}.ui-card__status{align-items:center;border:1px solid #e2e8f0;border-radius:999px;display:inline-flex;flex:0 0 auto;font-size:12px;font-weight:700;gap:6px;line-height:1;padding:6px 12px;white-space:nowrap}.ui-card__status--success{background:#f0fdf4;border-color:#bbf7d0;color:#15803d}.ui-card__status--warning{background:#fff7ed;border-color:#fed7aa;color:#c2410c}.ui-card__status--danger{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.ui-card__status--neutral{background:#f8fafc;border-color:#e2e8f0;color:#64748b}.ui-card__status--info{background:#f0f9ff;border-color:#bae6fd;color:#0369a1}.ui-card__status--reserved{background:#f5f3ff;border-color:#ddd6fe;color:#5b21b6}.ui-card__body{display:flex;flex:1 1 auto;flex-direction:column;gap:12px;padding:16px 20px}.ui-card__body--columns-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;row-gap:12px}.ui-card-meta-row{align-items:center;color:#475569;display:flex;font-size:14px;gap:10px;line-height:1.45;min-width:0}.ui-card-meta-row__icon{align-items:center;color:#94a3b8;display:inline-flex;flex:0 0 auto}.ui-card-meta-row__label{color:#64748b;flex:0 0 auto;font-weight:600}.ui-card-meta-row__value{color:#0f172a;font-weight:700;margin-left:auto;min-width:0;overflow-wrap:anywhere;text-align:right}.ui-card__actions{align-items:center;border-top:1px solid #f1f5f9;display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;padding:14px 20px 18px}.ui-card-action{align-items:center;border:1px solid transparent;border-radius:10px;box-sizing:border-box;cursor:pointer;display:inline-flex;font-family:inherit;font-size:14px;font-weight:700;gap:8px;height:40px;justify-content:center;line-height:1;padding:0 16px;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease,color .2s ease,transform .2s ease;white-space:nowrap}.ui-card-action:hover:not(:disabled){transform:translateY(-1px)}.ui-card-action:disabled{cursor:not-allowed;opacity:.65}.ui-card-action__icon{align-items:center;display:inline-flex;flex:0 0 auto}.ui-card-action--primary{background:#246bfe;box-shadow:0 4px 12px #246bfe38;color:#fff}.ui-card-action--primary:hover:not(:disabled){background:#1a5ce0;box-shadow:0 6px 16px #246bfe4d}.ui-card-action--secondary{background:#fff;border-color:#cbd5e1;color:#334155}.ui-card-action--secondary:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8;color:#0f172a}.ui-card-action--danger{background:#fff;border-color:#fca5a5;color:#dc2626}.ui-card-action--danger:hover:not(:disabled){background:#fef2f2;border-color:#ef4444}.ui-card-action--success{background:#16a34a;color:#fff}.ui-card-action--success:hover:not(:disabled){background:#15803d}.ui-card-action--outline{background:transparent;border-color:#cbd5e1;color:#246bfe}.ui-card-action--outline:hover:not(:disabled){background:#eff6ff;border-color:#bfdbfe}@media(max-width:640px){.ui-card__header{align-items:flex-start;flex-direction:column;gap:10px}.ui-card__status{align-self:flex-start}.ui-card-meta-row{align-items:flex-start;flex-direction:column;gap:4px}.ui-card-meta-row__value{margin-left:0;text-align:left}.ui-card__body--columns-2{display:flex;flex-direction:column}.ui-card-action{flex:1 1 160px}}.rr-page-header{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #e8edf5;border-radius:16px;padding:28px 32px;margin-bottom:24px;box-shadow:0 1px 4px #0000000a;overflow:hidden}.rr-page-header__left{display:flex;flex-direction:column;gap:4px}.rr-eyebrow{font-size:11px;font-weight:700;letter-spacing:.1em;color:#246bfe;text-transform:uppercase;margin:0}.rr-page-title{font-size:32px;font-weight:800;color:#0f172a;margin:0;line-height:1.15}.rr-page-subtitle{font-size:14px;color:#64748b;margin:0}.rr-page-header__illus{flex-shrink:0;opacity:.9}.rr-tabs{display:flex;gap:6px;margin-bottom:24px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.rr-tabs::-webkit-scrollbar{display:none}.rr-tab{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border:1.5px solid #e2e8f0;background:#fff;color:#64748b;border-radius:10px;font-size:13.5px;font-weight:600;cursor:pointer;transition:all .2s ease;white-space:nowrap}.rr-tab:hover{border-color:#246bfe;color:#246bfe;background:#f0f6ff}.rr-tab--active{background:#246bfe;border-color:#246bfe;color:#fff;box-shadow:0 4px 12px #246bfe40}.rr-tab--active:hover{background:#1a5ce0;border-color:#1a5ce0;color:#fff}.rr-tab-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:18px;padding:0 5px;border-radius:9px;font-size:11px;font-weight:700;background:#ffffff40;color:inherit;line-height:1}.rr-tab:not(.rr-tab--active) .rr-tab-count{background:#f1f5f9;color:#475569}.rr-state-box{display:flex;flex-direction:column;align-items:center;gap:14px;padding:64px 24px;color:#94a3b8;font-size:15px;text-align:center}.rr-state-box p{margin:0}@keyframes rrSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.rr-grid{display:flex;flex-direction:column;gap:16px;width:100%}.rr-price-value{color:#0f172a}.rr-card{background:#fff;border:1px solid #e8edf5;border-left:4px solid #e8edf5;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 1px 3px #0000000a;transition:transform .2s ease,box-shadow .2s ease}.rr-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #00000014}.rr-card--accepted{border-left-color:#22c55e}.rr-card--rejected{border-left-color:#ef4444}.rr-card--neutral{border-left-color:#94a3b8}.rr-card--pending{border-left-color:#f59e0b}.rr-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 20px 14px;border-bottom:1px solid #f1f5f9}.rr-card__title-row{display:flex;align-items:flex-start;gap:10px}.rr-card__icon{width:36px;height:36px;background:#f0f6ff;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#246bfe;flex-shrink:0;margin-top:2px}.rr-card__room{font-size:15px;font-weight:700;color:#0f172a;margin:0 0 4px;line-height:1.3}.rr-card__tenant{font-size:13px;color:#64748b;margin:0}.rr-badge{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:20px;font-size:12px;font-weight:700;letter-spacing:.02em;white-space:nowrap;flex-shrink:0}.rr-badge--pending{background:#fff7ed;color:#c2410c;border:1px solid #fed7aa}.rr-badge--accepted{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.rr-badge--rejected{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.rr-badge--cancelled{background:#f8fafc;color:#64748b;border:1px solid #e2e8f0}.rr-badge--expired{background:#f8fafc;color:#94a3b8;border:1px solid #e2e8f0}.rr-card__body{display:flex;flex-direction:column;gap:14px;flex:1}.rr-info-row{display:flex;align-items:center;gap:10px;font-size:16px}.rr-info-row__icon{color:#94a3b8;display:flex;align-items:center;flex-shrink:0}.rr-info-row__label{color:#64748b;white-space:nowrap;font-weight:600;min-width:132px}.rr-info-row__value{color:#0f172a;font-weight:800;margin-left:auto;text-align:right}.rr-info-row__value--price{color:#0f172a;font-weight:700}.rr-card__footer{border-top:0}.rr-btn-detail{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:50px;padding:12px 20px;background:#246bfe;color:#fff;border:none;border-radius:10px;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #246bfe40}.rr-btn-detail:hover{background:#1a5ce0;box-shadow:0 6px 16px #246bfe59;transform:translateY(-1px)}.rr-btn-detail:active{transform:translateY(0)}.rooming-house-rule-editor{display:grid;gap:20px}.rooming-house-rule-editor__note{margin:0;padding:12px 16px;border-radius:8px;font-size:14px;line-height:1.5;background:#f1f5f9;color:#475569}.rooming-house-rule-editor__alert{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:8px;font-size:14px;line-height:1.5}.rooming-house-rule-editor__alert--success{background:#f0fdf4;color:#166534;border:1px solid #bbf7d0}.rooming-house-rule-editor__alert--success svg{color:#15803d}.rooming-house-rule-editor__alert--danger{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.rooming-house-rule-editor__alert--danger svg{color:#dc2626}.rooming-house-rule-editor__mode{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:4px}.rooming-house-rule-editor__mode button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:8px 16px;border:1px solid #e2e8f0;border-radius:8px;background:#fff;color:#475569;font:inherit;font-weight:500;font-size:14px;cursor:pointer;transition:all .2s ease}.rooming-house-rule-editor__mode button:hover{background:#f8fafc;border-color:#cbd5e1;color:#0f172a}.rooming-house-rule-editor__mode button.active{border-color:#3b82f6;background:#eff6ff;color:#2563eb;font-weight:600}.rooming-house-rule-pdf-section{display:grid;gap:12px}.pdf-status-text{margin:0;color:#64748b;font-size:14.5px}.pdf-view-link{color:#2563eb;text-decoration:none;font-weight:600;margin-left:4px;display:inline-flex;align-items:center;transition:color .15s ease}.pdf-view-link:hover{color:#1d4ed8;text-decoration:underline}.pdf-upload-dropzone{display:flex;align-items:center;justify-content:space-between;padding:24px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;gap:16px;box-shadow:0 1px 3px #00000005;transition:border-color .2s,box-shadow .2s}.pdf-upload-dropzone:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #00000008}.pdf-upload-dropzone__left{flex-shrink:0}.pdf-icon-wrapper{width:48px;height:48px;display:flex;align-items:center;justify-content:center}.pdf-upload-dropzone__middle{flex:1}.pdf-upload-dropzone__middle h5{margin:0;font-size:15px;font-weight:600;color:#0f172a}.pdf-upload-dropzone__middle p{margin:4px 0 0;font-size:13.5px;color:#64748b;line-height:1.4}.pdf-upload-dropzone__right{flex-shrink:0}.choose-file-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:8px 18px;border:1px solid #3b82f6;border-radius:8px;background:#fff;color:#2563eb;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease}.choose-file-btn:hover{background:#eff6ff;border-color:#2563eb}.choose-file-btn--secondary{border-color:#cbd5e1;color:#475569}.choose-file-btn--secondary:hover{background:#f8fafc;border-color:#94a3b8;color:#0f172a}.rooming-house-rule-editor__form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.rooming-house-rule-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:14px;box-shadow:0 1px 3px #00000005;transition:all .2s ease}.rooming-house-rule-card:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #00000008}.rooming-house-rule-card--full{grid-column:span 2}.rooming-house-rule-card__header{display:flex;align-items:center;gap:12px}.rooming-house-rule-card__icon{display:flex;align-items:center;justify-content:center;color:#475569;width:32px;height:32px;background:#f1f5f9;border-radius:8px;padding:6px}.rooming-house-rule-card__icon svg{width:20px;height:20px}.rooming-house-rule-card__title{color:#1e293b;font-size:15px;font-weight:600}.rooming-house-rule-card__body textarea{width:100%;min-height:110px;resize:vertical;padding:12px;border:1px solid #cbd5e1;border-radius:8px;font:inherit;font-size:14px;line-height:1.5;color:#334155;background:#f8fafc;transition:all .2s ease}.rooming-house-rule-card__body textarea:focus{border-color:#246bfe;background:#fff;outline:none;box-shadow:0 0 0 3px #246bfe14}.rooming-house-rule-card__body textarea::placeholder{color:#94a3b8}.rooming-house-rule-editor__actions{display:flex;justify-content:flex-end;gap:12px;margin-top:12px}.rooming-house-rule-editor__preview-btn,.rooming-house-editor__primary.primary-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:8px 20px;font:inherit;font-weight:600;font-size:14px;border-radius:8px;cursor:pointer;transition:all .2s ease}.rooming-house-rule-editor__preview-btn{background:#fff;border:1px solid #cbd5e1;color:#334155}.rooming-house-rule-editor__preview-btn:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.rooming-house-editor__primary.primary-action{background:#2563eb!important;border:1px solid #2563eb!important;color:#fff!important;box-shadow:0 2px 4px #2563eb26}.rooming-house-editor__primary.primary-action:hover:not(:disabled){background:#1d4ed8!important;border-color:#1d4ed8!important}.rooming-house-rule-editor__preview-btn:disabled,.rooming-house-editor__primary.primary-action:disabled{opacity:.6;cursor:not-allowed;box-shadow:none}@media(max-width:768px){.rooming-house-rule-editor__form{grid-template-columns:1fr}.rooming-house-rule-card--full{grid-column:span 1}.rooming-house-rule-editor__actions{flex-direction:column}.rooming-house-rule-editor__preview-btn,.rooming-house-editor__primary.primary-action{width:100%}}.landlord-dashboard{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.dashboard-sidebar{background:#fff;color:#1e293b;padding:24px 16px;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.dashboard-sidebar h1{margin:0 0 24px 4px;font-size:22px;font-weight:700;color:#0f172a;letter-spacing:-.02em}.sidebar-item{width:100%;min-height:42px;margin:0 0 8px;padding:10px 14px;border-radius:6px;background:transparent;color:#475569;text-align:left;text-decoration:none;font:inherit;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:flex;align-items:center}.sidebar-item:hover:not(:disabled){background:#f1f5f9;color:#0f172a;transform:translate(4px)}.sidebar-item.active:hover{background:#e0f2fe;transform:none}.sidebar-item:disabled{color:#94a3b8;cursor:not-allowed;opacity:.5}.sidebar-back-btn{margin-top:auto!important;border-top:1px solid #f1f5f9;padding-top:16px;border-radius:0;color:#64748b}.sidebar-back-btn:hover{color:#0f172a;background:transparent!important;transform:translate(-4px)!important}.dashboard-main{padding:24px;background:#f4f7fb}.rooming-house-detail-page .overview-band{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;padding:24px;border:1px solid #dbe3ef;border-radius:12px;background:#fff;box-shadow:0 1px 3px #00000008}.rooming-house-detail-page .overview-header-title-area{display:flex;flex-direction:row;align-items:center;gap:16px;flex:1}.rooming-house-detail-page .back-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;background:#f1f5f9;color:#475569;border:1px solid #cbd5e1;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);flex-shrink:0}.rooming-house-detail-page .back-icon-btn:hover{background:#e2e8f0;color:#0f172a;border-color:#94a3b8;transform:translate(-2px)}.rooming-house-detail-page .overview-left{display:flex;flex-direction:column;gap:6px;flex:1}.rooming-house-detail-page .overview-left h2{margin:4px 0 0;font-size:30px;font-weight:700;color:#0f172a}.rooming-house-detail-page .overview-right{display:flex;flex-direction:column;align-items:flex-end;gap:12px;max-width:100%;min-width:0}.rooming-house-detail-page .eyebrow{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin:0}.rooming-house-detail-page .overview-description{margin:0;font-size:14.5px;color:#64748b}.rooming-house-detail-page .overview-stats{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:flex-end;max-width:100%;min-width:0}.rooming-house-detail-page .stat-item{display:flex;align-items:center;gap:6px;padding:6px 10px;border-radius:6px;border:1px solid transparent;font-size:12px;font-weight:500}.rooming-house-detail-page .stat-item svg{width:14px;height:14px}.rooming-house-detail-page .stat-item span{color:inherit;font-size:12px;font-weight:600;white-space:nowrap}.rooming-house-detail-page .stat-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 4px;border-radius:999px;font-size:10px;font-weight:700;margin-left:6px}.rooming-house-detail-page .stat-item--total{background:#f3f4f6;border-color:#e5e7eb;color:#4b5563}.rooming-house-detail-page .stat-item--total .stat-badge{background:#cbd5e1;color:#1f2937}.rooming-house-detail-page .stat-item--approved{background:#f0fdf4;border-color:#bbf7d0;color:#166534}.rooming-house-detail-page .stat-item--approved .stat-badge{background:#86efac;color:#14532d}.rooming-house-detail-page .stat-item--pending{background:#fef9c3;border-color:#fef08a;color:#854d0e}.rooming-house-detail-page .stat-item--pending .stat-badge{background:#fde047;color:#713f12}.rooming-house-detail-page .stat-item--rejected{background:#fee2e2;border-color:#fecaca;color:#991b1b}.rooming-house-detail-page .stat-item--rejected .stat-badge{background:#fca5a5;color:#7f1d1d}.rooming-house-detail-page .nav-tab-btn{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:8px 16px;border-radius:8px;background:#fff;color:#475569;font-weight:500;font-size:14.5px;border:1px solid #e2e8f0;cursor:pointer;transition:all .2s ease;position:relative}.rooming-house-detail-page .nav-tab-btn:hover{background:#f8fafc;color:#0f172a;border-color:#cbd5e1}.rooming-house-detail-page .nav-tab-btn.active{color:#2563eb;font-weight:600;border-color:#3b82f6;background:#fff;border-bottom:3.5px solid #2563eb;padding-bottom:5.5px}.rooming-house-detail-page .action-btn-outline{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:8px 18px;border-radius:8px;background:#fff;color:#334155;font-weight:500;font-size:14.5px;border:1px solid #e2e8f0;cursor:pointer;transition:all .2s ease}.rooming-house-detail-page .action-btn-outline:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;color:#0f172a}.rooming-house-detail-page .action-btn-outline svg{color:currentColor}.rooming-house-detail-page .action-btn-primary{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:8px 18px;border-radius:8px;background:#2563eb;color:#fff;font-weight:600;font-size:14.5px;border:none;cursor:pointer;transition:all .2s ease}.rooming-house-detail-page .action-btn-primary:hover:not(:disabled){background:#1d4ed8;box-shadow:0 4px 6px #2563eb26}.rooming-house-detail-page .action-btn-primary:disabled{background:#93c5fd;cursor:not-allowed;opacity:.7}.rooming-house-detail-page .overview-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:12px;max-width:100%;min-width:0}.rooming-house-detail-page .secondary-action{display:inline-flex;align-items:center;justify-content:center;background:#e8eef7!important;color:#172033!important;font-weight:600!important;border:none;cursor:pointer;min-height:42px;padding:10px 20px;border-radius:8px;font-size:15px;transition:background-color .2s,color .2s}.rooming-house-detail-page .secondary-action:hover{background:#d4e2f5!important}.rooming-house-detail-page .primary-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:#246bfe!important;color:#fff!important;font-weight:700!important;border:none;cursor:pointer;min-height:42px;padding:10px 20px;border-radius:8px;font-size:15px;transition:background-color .2s;box-shadow:0 2px 4px #246bfe26}.rooming-house-detail-page .primary-action:hover:not(:disabled){background:#1a5ce0!important}.rooming-house-detail-page .primary-action:disabled{background:#cbd5e1!important;color:#64748b!important;cursor:not-allowed;box-shadow:none}.dashboard-message{margin:0 0 12px;padding:10px 12px;border-radius:6px;background:#fef9c3;color:#92400e;font-size:14px}.card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}.dashboard-card{display:block;width:100%;min-height:140px;padding:16px;border:1px solid #dbe3ef;border-radius:8px;background:#fff;color:inherit;text-align:left;font:inherit;cursor:pointer;transition:border-color .15s,box-shadow .15s}.dashboard-card:hover{border-color:#246bfe;box-shadow:0 4px 16px #246bfe14}.dashboard-card p{margin:10px 0;color:#64748b;line-height:1.45;font-size:14px}.card-header{display:flex;justify-content:space-between;gap:12px}.card-header h3{margin:0;font-size:17px}.card-header span{color:#94a3b8;font-size:12px;white-space:nowrap}.status-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.status-pill{display:inline-flex;align-items:center;min-height:26px;padding:3px 10px;border-radius:999px;background:#e2e8f0;color:#475569;font-size:12px;font-weight:700}.status-pill--success{background:#dcfce7;color:#166534}.status-pill--info{background:#dbeafe;color:#1e40af}.status-pill--warning{background:#fef3c7;color:#92400e}.status-pill--danger{background:#fee2e2;color:#991b1b}.status-pill--neutral{background:#e5e7eb;color:#374151}.status-pill--reserved{background:#ede9fe;color:#5b21b6}.warning-text{color:#991b1b!important;font-size:13px}.empty-panel{display:flex;flex-direction:column;align-items:center;text-align:center;padding:48px 24px;background:#fff;border:1px solid #dbe3ef;border-radius:12px;box-shadow:0 1px 3px #0000000d}.empty-panel h2{margin:16px 0 8px;font-size:20px;font-weight:700;color:#0f172a}.empty-panel p{margin:0 0 24px;font-size:14px;color:#64748b;max-width:420px;line-height:1.5}.editor-panel{padding:24px;border:1px solid #dbe3ef;border-radius:8px;background:#fff}.rooming-house-rule-editor__alert{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:8px;font-size:14px;line-height:1.5;margin-bottom:8px}.rooming-house-rule-editor__alert svg{flex-shrink:0;width:20px;height:20px}.rooming-house-rule-editor__alert--warning{background:#fffbeb;color:#b45309;border:1px solid #fcd34d}.rooming-house-rule-editor__alert--warning svg{color:#d97706}.back-link{margin:0 0 14px;display:inline-flex;align-items:center;min-height:38px;padding:8px 14px;border-radius:6px;background:#e8eef7;color:#172033;font:inherit;font-weight:600;border:none;cursor:pointer}.tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px;padding-bottom:12px;border-bottom:1px solid #dbe3ef}.tabs button{min-height:38px;padding:8px 14px;border-radius:6px;background:#f1f5f9;color:#475569;font:inherit;font-size:14px;font-weight:600;border:none;cursor:pointer}.tabs button.active{background:#162033;color:#fff}.tabs button:disabled{opacity:.4;cursor:not-allowed}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.field{display:grid;gap:6px}.field span{display:block;color:#475569;font-size:13px;font-weight:700}.field input,.field select,.field textarea{width:100%;min-height:40px;padding:8px 10px;border:1px solid #cbd5e1;border-radius:6px;font:inherit;transition:border-color .2s ease,box-shadow .2s ease}.field input:hover:not(:disabled),.field select:hover:not(:disabled),.field textarea:hover:not(:disabled){border-color:#94a3b8}.field input:focus:not(:disabled),.field select:focus:not(:disabled),.field textarea:focus:not(:disabled){outline:none;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.field input[type=checkbox]{width:auto;min-height:auto;cursor:pointer}.save-row{display:flex;justify-content:flex-end;gap:8px;grid-column:1 / -1}.save-row button{min-height:40px;padding:9px 14px;border-radius:6px;background:#e8eef7;color:#172033;font:inherit;font-weight:600;border:none;cursor:pointer}.stack-panel{display:grid;gap:14px}.inline-editor{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;align-items:end;gap:12px;padding:14px;border:1px solid #dbe3ef;border-radius:6px;background:#f8fafc}.checkbox-field{display:flex;align-items:center;gap:8px;min-height:40px;color:#475569;font-size:14px}.amenity-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px}.service-price-editor{display:grid;gap:18px}.service-price-header,.section-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.service-price-header h3,.section-heading h4{margin:0;color:#1e293b}.service-price-header p{margin:6px 0 0;color:#64748b;font-size:14px}.section-heading span{color:#64748b;font-size:12px;font-weight:700}.service-price-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);gap:16px}.service-price-panel{padding:18px;border:1px solid #dbe3ef;border-radius:8px;background:#f8fafc}.service-price-batch{display:grid;gap:14px}.service-price-batch-table{display:grid;border:1px solid #cbd5e1;border-radius:8px;overflow:hidden;background:#fff}.service-price-batch-row{display:grid;grid-template-columns:1.5fr 1.2fr 2fr 1.3fr 1.3fr .3fr;align-items:center;gap:16px;min-height:84px;padding:12px 20px;border-bottom:1px solid #f1f5f9}.service-price-batch-row:last-child{border-bottom:0}.service-price-batch-row--head{min-height:44px;background:#f8fafc;color:#475569;font-size:12px;font-weight:700;text-transform:uppercase;border-bottom:1px solid #cbd5e1}.service-price-service{display:flex;align-items:center;gap:12px}.service-name-container{display:flex;flex-direction:column;gap:2px}.service-name-container strong{font-size:14.5px;font-weight:600;color:#0f172a}.service-name-container span{font-size:12px;color:#94a3b8}.service-price-icon{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%}.service-price-icon--dien{background:#fffbeb;color:#d97706}.service-price-icon--internet,.service-price-icon--nuoc{background:#eff6ff;color:#2563eb}.service-price-icon--rac{background:#f0fdf4;color:#16a34a}.service-price-current,.service-price-methods{display:flex;flex-direction:column;gap:4px}.current-price-display{display:flex;flex-direction:column;gap:2px}.current-price-display strong{font-size:14.5px;font-weight:600;color:#0f172a}.current-price-display span{font-size:12px;color:#64748b}.current-price-empty{color:#94a3b8;font-size:14px}.service-price-methods small{color:#94a3b8;font-size:12px;font-weight:500}.service-price-method-static{display:inline-flex;align-items:center;min-height:36px;color:#475569;font-weight:800}.service-price-segmented{display:inline-flex;width:fit-content;padding:2px;border-radius:6px;background:#f1f5f9}.service-price-segmented button{min-width:64px;min-height:28px;padding:4px 10px;border:0;border-radius:4px;background:transparent;color:#64748b;font:inherit;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .2s ease}.service-price-segmented button.active{background:#0f172a;color:#fff}.price-input-wrapper{position:relative;display:inline-flex;align-items:center;width:100%}.price-input-wrapper input{width:100%;min-height:38px;padding:8px 30px 8px 12px;border:1px solid #cbd5e1;border-radius:6px;font:inherit;font-size:14px;font-weight:500;color:#0f172a;background:#fff;transition:border-color .2s}.price-input-wrapper input:focus{border-color:#2563eb;outline:none}.price-input-wrapper .price-suffix{position:absolute;right:12px;font-size:14px;color:#94a3b8;pointer-events:none}.date-input-wrapper{position:relative;display:inline-flex;align-items:center;width:100%}.date-input-wrapper svg{position:absolute;left:10px;color:#64748b;width:16px;height:16px;pointer-events:none}.date-input-wrapper input{width:100%;min-height:38px;padding:8px 12px 8px 32px;border:1px solid #cbd5e1;border-radius:6px;font:inherit;font-size:14px;color:#334155;background:#f8fafc;cursor:not-allowed}.service-price-more-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:#64748b;border-radius:50%;cursor:pointer;transition:background .2s}.service-price-more-btn:hover{background:#f1f5f9;color:#0f172a}.service-price-batch-actions-wrapper{display:flex;align-items:center;gap:16px;margin-top:16px}.service-price-note-wrapper{position:relative;display:inline-flex;align-items:center;flex:1}.service-price-note-wrapper svg{position:absolute;left:12px;color:#2563eb;width:16px;height:16px;pointer-events:none}.service-price-note-wrapper input{width:100%;min-height:42px;padding:10px 12px 10px 38px;border:1px solid #cbd5e1;border-radius:8px;font:inherit;font-size:14px;background:#f8fafc;color:#0f172a;transition:border-color .2s}.service-price-note-wrapper input:focus{border-color:#2563eb;background:#fff;outline:none}.primary-action-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 20px;border-radius:8px;background:#2563eb;color:#fff;font-weight:600;font-size:14px;border:none;cursor:pointer;transition:background .2s}.primary-action-btn:hover:not(:disabled){background:#1d4ed8}.primary-action-btn:disabled{background:#93c5fd;cursor:not-allowed}.empty-history-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;background:#fff;border:1px dashed #cbd5e1;border-radius:12px;text-align:center}.empty-history-card svg{margin-bottom:12px}.empty-history-card p{margin:0;font-size:14px;color:#64748b;font-weight:500}.service-price-cards,.service-price-form{display:grid;gap:12px;margin-top:14px}.service-price-card{display:flex;justify-content:space-between;gap:14px;padding:14px;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.service-price-card div{display:grid;gap:4px}.service-price-card strong{color:#0f172a;font-size:15px}.service-price-card span{color:#246bfe;font-size:14px;font-weight:700}.service-price-card small{color:#64748b;white-space:nowrap}.service-price-history{overflow-x:auto}.service-price-history-groups{display:grid;gap:10px;margin-top:14px}.service-price-history-group{border:1px solid #dbe3ef;border-radius:8px;background:#fff;overflow:hidden}.service-price-history-group summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:46px;padding:10px 14px;color:#172033;cursor:pointer}.service-price-history-group summary span:last-child{color:#64748b;font-size:12px;font-weight:800}.history-dot-row{display:inline-flex;gap:4px}.history-dot{width:7px;height:7px;border-radius:999px}.history-dot--electric{background:#f97316}.history-dot--water{background:#3b82f6}.history-dot--wifi{background:#8b5cf6}.history-dot--trash{background:#22c55e}.service-price-table{display:grid;min-width:720px;margin-top:14px;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;background:#fff}.service-price-table--monthly{min-width:980px;margin-top:0;border-right:0;border-bottom:0;border-left:0;border-radius:0}.service-price-table--monthly .service-price-row{grid-template-columns:1.1fr 1fr .75fr 1fr 1fr 1fr}.service-price-row{display:grid;grid-template-columns:1.2fr 1fr .8fr 1fr 1fr;gap:12px;padding:12px 14px;border-bottom:1px solid #e2e8f0;color:#475569;font-size:14px}.service-price-row:last-child{border-bottom:0}.service-price-row--head{background:#eef4ff;color:#1e293b;font-size:12px;font-weight:800;text-transform:uppercase}.empty-panel.compact{padding:16px;color:#64748b;font-size:14px}@media(max-width:980px){.landlord-dashboard{grid-template-columns:1fr}.rooming-house-detail-page .overview-band{flex-direction:column;align-items:stretch;gap:16px}.rooming-house-detail-page .overview-right{align-items:stretch}.rooming-house-detail-page .overview-actions{justify-content:flex-start}.rooming-house-detail-page .overview-stats{flex-direction:column;align-items:stretch;justify-content:flex-start}.rooming-house-detail-page .stat-item{justify-content:space-between}.rooming-house-detail-page .stat-badge{margin-left:auto}.overview-stats,.form-grid,.inline-editor,.service-price-grid{grid-template-columns:1fr}.service-price-header,.section-heading,.service-price-card{flex-direction:column}.overview-actions,.save-row{flex-wrap:wrap;justify-content:flex-start}}.info-subtabs{display:flex;flex-wrap:nowrap;align-items:center;gap:8px;padding:16px 20px;background:#f8fafc;border-bottom:1px solid #e2e8f0;overflow-x:auto;scrollbar-width:none}.info-subtabs::-webkit-scrollbar{display:none}.info-subtabs button{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 16px;border-radius:8px;background:transparent;color:#64748b;font:inherit;font-size:14px;font-weight:500;border:1px solid transparent;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap;flex-shrink:0}.info-subtabs button:hover:not(.active){background:#e2e8f0;color:#334155}.info-subtabs button.active{background:#fff;color:#2563eb;font-weight:600;border-color:#cbd5e1;box-shadow:0 2px 4px #0f172a0d;border-bottom:3px solid #2563eb}.info-subtabs button svg{flex-shrink:0;color:currentColor}.subtab-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:24px;box-shadow:0 1px 3px #0f172a0a;margin-bottom:24px}.subtab-header{display:flex;align-items:flex-start;gap:16px;margin-bottom:24px}.subtab-header-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;background:#eff6ff;color:#2563eb;flex-shrink:0}.subtab-header-text h4{margin:0 0 4px;font-size:18px;font-weight:600;color:#0f172a}.subtab-header-text p{margin:0;font-size:14px;color:#64748b}.subtab-alert{display:flex;align-items:flex-start;gap:12px;padding:16px;background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;color:#1e40af;font-size:14.5px;line-height:1.5}.subtab-alert svg{color:#2563eb;flex-shrink:0;margin-top:2px}.input-wrapper{position:relative;display:flex;align-items:center;width:100%}.input-wrapper input{padding-right:64px!important}.input-suffix{position:absolute;right:14px;color:#64748b;font-size:14.5px;font-weight:500;pointer-events:none}.label-info-icon{display:inline-flex;align-items:center;justify-content:center;color:#94a3b8;margin-left:6px;cursor:help;vertical-align:middle}.label-info-icon:hover{color:#64748b}.helper-text{font-size:12px;color:#64748b;margin-top:4px;font-weight:400}.checkbox-card-panel{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;transition:all .2s ease;width:100%}.checkbox-card-panel:hover{border-color:#bfdbfe;background:#eff6ff}.checkbox-card-left{display:flex;align-items:flex-start;gap:14px}.checkbox-card-input[type=checkbox]{width:20px;height:20px;accent-color:#2563eb;margin-top:2px;cursor:pointer;flex-shrink:0}.checkbox-card-text{display:flex;flex-direction:column;gap:4px}.checkbox-card-title{font-size:15px;font-weight:600;color:#1e293b}.checkbox-card-desc{font-size:13.5px;color:#64748b}.checkbox-card-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;background:#eff6ff;color:#2563eb;flex-shrink:0}.subtab-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:20px;border-top:1px solid #e2e8f0;margin-top:12px;width:100%}.shield-info{display:flex;align-items:center;gap:8px;color:#64748b;font-size:13.5px}.shield-info svg{color:#2563eb;flex-shrink:0}.subtab-card .form-grid{gap:20px}.subtab-card .field span{font-size:14px;font-weight:600;color:#334155;display:flex;align-items:center;margin-bottom:2px}.subtab-card .field input,.subtab-card .field select,.subtab-card .field textarea{min-height:44px;border-radius:8px;border:1px solid #cbd5e1;padding:10px 14px;font-size:15px;transition:all .2s ease;background:#fff;color:#1e293b}.subtab-card .field input:focus,.subtab-card .field select:focus,.subtab-card .field textarea:focus{border-color:#2563eb;outline:none;box-shadow:0 0 0 3px #2563eb1f}.subtab-card .field input[disabled],.subtab-card .field select[disabled],.subtab-card .field textarea[disabled]{background:#f8fafc;color:#64748b;cursor:not-allowed}.subtab-card .primary-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#2563eb!important;color:#fff!important;font-weight:600!important;min-height:44px;padding:10px 24px;border-radius:8px;font-size:15px;border:none;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #2563eb26}.subtab-card .primary-action:hover:not(:disabled){background:#1d4ed8!important;box-shadow:0 4px 6px #2563eb33}.amenity-card-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.amenity-card-item{display:flex;align-items:center;gap:10px;padding:12px 16px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc;cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s ease}.amenity-card-item:hover{background:#eff6ff;border-color:#bfdbfe}.amenity-card-item.selected{background:#eff6ff;border-color:#2563eb;box-shadow:0 2px 4px #2563eb0d}.amenity-card-checkbox[type=checkbox]{width:18px;height:18px;accent-color:#2563eb;cursor:pointer}.amenity-card-name{font-size:14.5px;font-weight:500;color:#475569}.amenity-card-item.selected .amenity-card-name{color:#2563eb;font-weight:600}.legal-info-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:20px}.legal-info-item{display:flex;flex-direction:column;gap:4px}.legal-info-label{font-size:13px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.02em}.legal-info-value{font-size:15px;font-weight:600;color:#1e293b}.subtab-card .service-price-batch-table{border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;box-shadow:0 1px 3px #00000005}.subtab-card .service-price-batch-row--head{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#475569;font-size:12.5px;font-weight:700}.subtab-card .service-price-batch-row{border-bottom:1px solid #e2e8f0;transition:background .15s ease}.subtab-card .service-price-batch-row:hover:not(.service-price-batch-row--head){background:#fdfefe}.subtab-card .service-price-icon{width:36px;height:36px;border-radius:8px;font-weight:600}.subtab-card .service-price-current strong{font-size:14.5px;color:#0f172a}.subtab-card .service-price-current span{font-size:11.5px;color:#64748b}.subtab-card .service-price-segmented{background:#f1f5f9;border:0;padding:3px;border-radius:8px}.subtab-card .service-price-segmented button{min-width:64px;min-height:28px;border-radius:6px;font-size:12px;font-weight:600}.subtab-card .service-price-segmented button.active{background:#fff;color:#2563eb;box-shadow:0 1px 2px #0000000d}.subtab-card .service-price-inline-field input{min-height:38px;border-radius:8px;border:1px solid #cbd5e1;padding:6px 10px;font-weight:600}.subtab-card .service-price-batch-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;margin-top:16px}.subtab-card .service-price-batch-actions input{min-height:44px;border:1px solid #cbd5e1;border-radius:8px;padding:10px 14px}.subtab-card .service-price-history-group{border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 1px 2px #00000005;margin-bottom:12px}.subtab-card .service-price-history-group summary{padding:12px 18px;background:#f8fafc}.subtab-card .service-price-table--monthly{border:0;border-top:1px solid #e2e8f0}.subtab-card .service-price-table--monthly .service-price-row--head{background:#fff;color:#64748b;border-bottom:2px solid #e2e8f0}.room-detail-main-tabs{display:inline-flex;padding:3px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;width:fit-content}.room-detail-main-tabs button{min-height:36px;padding:6px 16px;border:0;border-radius:6px;background:transparent;color:#475569;font:inherit;font-size:13.5px;font-weight:600;cursor:pointer;transition:all .2s ease}.room-detail-main-tabs button:hover:not(:disabled){color:#0f172a}.room-detail-main-tabs button.active{background:#0f172a;color:#fff}.room-detail-main-tabs button:disabled{opacity:.4;cursor:not-allowed}.room-detail-sub-tabs{display:flex;gap:24px;border-bottom:1px solid #e2e8f0;width:100%}.room-detail-sub-tabs button{display:inline-flex;align-items:center;gap:8px;padding:12px 4px;background:transparent;color:#64748b;font:inherit;font-size:14.5px;font-weight:600;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all .2s ease;margin-bottom:-1px}.room-detail-sub-tabs button svg{color:currentColor;flex-shrink:0}.room-detail-sub-tabs button:hover:not(:disabled){color:#0f172a}.room-detail-sub-tabs button.active{color:#2563eb;border-bottom-color:#2563eb}.room-detail-sub-tabs button:disabled{opacity:.5;cursor:not-allowed}.rooming-house-detail-page .overview-band{margin-bottom:0!important;border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.subtab-card,.editor-panel{border-top-left-radius:0!important;border-top-right-radius:0!important}.history-detail-page{width:100%;display:flex;flex-direction:column;gap:24px;animation:fadeIn .4s ease-out}.back-icon-btn{display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e2e8f0;width:40px;height:40px;border-radius:50%;color:#475569;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);box-shadow:0 2px 6px #0f172a05;flex-shrink:0;outline:none}.back-icon-btn:hover{background:#f8fafc;color:#0f172a;border-color:#cbd5e1;transform:translate(-2px);box-shadow:0 4px 10px #0f172a0d}.overview-header-title-area{display:flex;align-items:center;gap:16px;flex:1}.history-detail-tabs{display:flex;gap:8px;border-bottom:1px solid #e2e8f0;padding-bottom:2px;overflow-x:auto;scrollbar-width:none}.history-detail-tabs::-webkit-scrollbar{display:none}.history-detail-tab{padding:8px 16px;border:1px solid transparent;background:transparent;font-size:13.5px;font-weight:600;color:#64748b;cursor:pointer;border-radius:999px;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap;height:38px;outline:none}.history-detail-tab:hover{background-color:#f1f5f9;color:#1e293b}.history-detail-tab.active{background-color:#246bfe;color:#fff;border-color:#246bfe;box-shadow:0 4px 12px #246bfe2e}.history-detail-content{background:#fff;border-radius:16px;border:1px solid #f1f5f9;padding:24px;box-shadow:0 4px 20px -2px #0f172a05,0 2px 6px -1px #0f172a05;min-height:200px}.history-detail-secondary-section{margin-top:20px}.history-detail-section-heading{margin-bottom:16px}.history-detail-section-heading h2,.history-detail-section-heading p{margin-top:0}.occupants-filter{display:flex;gap:8px;margin-bottom:20px;overflow-x:auto;scrollbar-width:none}.occupants-filter::-webkit-scrollbar{display:none}.occupant-filter-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:999px;font-size:12.5px;font-weight:600;border:1px solid #cbd5e1;background:#fff;color:#475569;cursor:pointer;transition:all .2s;height:32px;outline:none}.occupant-filter-btn:hover{background:#f8fafc;border-color:#cbd5e1}.occupant-filter-btn.active{background:#246bfe;color:#fff;border-color:#246bfe;box-shadow:0 3px 8px #246bfe26}.occupant-list{display:flex;flex-direction:column;gap:12px}.occupant-item{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;transition:all .2s}.occupant-item:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #0f172a08}.occupant-info h4{margin:0 0 6px;display:flex;align-items:center;gap:8px;font-size:14.5px;font-weight:700;color:#0f172a}.occupant-me-badge{background-color:#eff6ff;color:#246bfe;padding:2px 8px;border-radius:6px;font-size:10.5px;font-weight:800}.occupant-role{color:#64748b;font-size:13px;margin-bottom:4px}.occupant-dates{text-align:right;font-size:13px;color:#475569;display:flex;flex-direction:column;gap:4px}.contract-info-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}.contract-info-block{background:#f8fafc;padding:20px;border-radius:12px;border:1px solid #f1f5f9}.contract-info-block h3{margin:0 0 16px;font-size:14px;font-weight:800;color:#0f172a;text-transform:uppercase;letter-spacing:.04em;border-bottom:1px dashed #cbd5e1;padding-bottom:10px}.contract-info-item{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-size:13.5px}.contract-info-item:last-child{margin-bottom:0}.contract-info-item .label{color:#64748b;font-weight:500}.contract-info-item .value{font-weight:700;color:#0f172a}.contract-actions{display:flex;gap:12px;flex-wrap:wrap;padding-top:20px;border-top:1px dashed #e2e8f0;justify-content:flex-end}.coming-soon-placeholder{text-align:center;padding:60px 20px;color:#64748b}.coming-soon-placeholder h2{color:#0f172a;font-size:18px;font-weight:800;margin-bottom:8px}.contract-invoices-section{display:flex;flex-direction:column;gap:20px}.contract-invoices-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.contract-invoices-header h2{margin:0 0 4px;font-size:16px;font-weight:750;color:#0f172a}.contract-invoices-header p{margin:0;font-size:13.5px;color:#64748b}.invoice-status-tabs{display:flex;flex-wrap:wrap;gap:6px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.invoice-status-tabs::-webkit-scrollbar{display:none}.invoice-status-tabs button{display:inline-flex;align-items:center;justify-content:center;height:34px;padding:0 14px;border-radius:999px;font-weight:600;font-size:12.5px;background:#f1f5f9;color:#475569;border:none;cursor:pointer;transition:all .2s;outline:none}.invoice-status-tabs button:hover{background:#e2e8f0;color:#0f172a}.invoice-status-tabs button.active{background:#1e293b;color:#fff}.invoice-inline-message.success{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.contract-invoice-list{display:flex;flex-direction:column;gap:12px}.contract-invoice-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:center;padding:16px 20px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;transition:all .2s}.contract-invoice-card:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #0f172a08}.contract-invoice-card.muted{opacity:.65;background:#f8fafc}.contract-invoice-entry{display:flex;flex-direction:column}.contract-invoice-entry.expanded .contract-invoice-card{border-bottom-left-radius:0;border-bottom-right-radius:0;border-color:#bfdbfe}.contract-invoice-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:6px}.contract-invoice-title strong{font-size:14.5px;color:#0f172a}.contract-invoice-meta{display:flex;flex-wrap:wrap;gap:4px 16px;color:#64748b;font-size:12.5px}.contract-invoice-actions{display:flex;align-items:center;justify-content:flex-end;gap:16px}.contract-invoice-actions>strong{white-space:nowrap;color:#0f172a;font-size:15px;font-weight:800}.contract-invoice-actions button{height:32px;padding:0 12px;font-size:12.5px;font-weight:700;border-radius:8px}.contract-invoice-toggle{width:32px;min-width:32px;height:32px;padding:0!important;display:inline-flex;align-items:center;justify-content:center;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#2563eb;font-size:20px!important;line-height:1;font-weight:800!important;cursor:pointer;transition:border-color .18s ease,background .18s ease,color .18s ease,box-shadow .18s ease}.contract-invoice-toggle:hover{border-color:#2563eb;background:#eff6ff;box-shadow:0 6px 14px #2563eb1f}.contract-invoice-toggle[aria-expanded=true]{border-color:#2563eb;background:#2563eb;color:#fff}.contract-invoice-detail-panel{display:grid;gap:14px;padding:16px 20px 18px;border:1px solid #bfdbfe;border-top:0;border-bottom-left-radius:12px;border-bottom-right-radius:12px;background:#f8fafc}.contract-invoice-breakdown{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.contract-invoice-breakdown>div{min-width:0;display:flex;flex-direction:column;gap:6px;border:1px solid #e2e8f0;border-radius:8px;padding:12px 14px;background:#fff}.contract-invoice-breakdown span{color:#64748b;font-size:12px;font-weight:800;text-transform:uppercase}.contract-invoice-breakdown strong{color:#0f172a;font-size:15px;font-weight:850;overflow-wrap:anywhere}.contract-invoice-breakdown .total{border-color:#bfdbfe;background:#eff6ff}.contract-invoice-breakdown .total strong{color:#1d4ed8}.contract-invoice-detail-table{overflow:hidden;border:1px solid #e2e8f0;border-radius:8px;background:#fff}.contract-invoice-detail-table .detail-table-header,.contract-invoice-detail-table .detail-table-row{display:grid;grid-template-columns:minmax(96px,.9fr) minmax(180px,2fr) minmax(80px,.7fr) minmax(110px,.9fr) minmax(120px,1fr);gap:12px;align-items:center}.contract-invoice-detail-table .detail-table-header{padding:12px 14px;background:#eff6ff;color:#1e40af;font-size:12px;font-weight:850;text-transform:uppercase}.contract-invoice-detail-table .detail-table-row{padding:12px 14px;border-top:1px solid #e2e8f0;color:#475569;font-size:13px}.contract-invoice-detail-table .detail-table-row span,.contract-invoice-detail-table .detail-table-row strong{min-width:0;overflow-wrap:anywhere}.contract-invoice-detail-table .detail-table-row strong{color:#0f172a;font-weight:850}.contract-invoice-empty-detail,.contract-invoice-readonly-note{margin:0;border-radius:8px;padding:12px 14px;color:#64748b;background:#fff;border:1px dashed #cbd5e1;font-size:13px}.contract-invoice-readonly-note{border-style:solid;border-color:#bfdbfe;color:#1e40af;background:#eff6ff}.appendices-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;border-bottom:1px dashed #e2e8f0;padding-bottom:12px;gap:16px}.appendices-header h3{margin:0;font-size:15px;font-weight:750;color:#0f172a}.appendices-list{display:flex;flex-direction:column;gap:12px}.appendix-item{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;border:1px solid #e2e8f0;border-radius:12px;background-color:#fff;transition:all .2s;gap:16px}.appendix-item:hover{border-color:#cbd5e1;box-shadow:0 4px 12px #0f172a08}.appendix-info{flex:1}.appendix-info h4{margin:0 0 6px;color:#0f172a;font-size:14.5px;font-weight:700}.appendix-dates{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#475569}@media(max-width:768px){.contract-info-grid{grid-template-columns:1fr;gap:16px}.contract-invoice-card{grid-template-columns:1fr;gap:12px}.contract-invoice-actions{justify-content:space-between;width:100%;border-top:1px dashed #f1f5f9;padding-top:10px}.contract-invoice-detail-panel{padding:14px}.contract-invoice-breakdown{grid-template-columns:1fr}.contract-invoice-detail-table .detail-table-header{display:none}.contract-invoice-detail-table .detail-table-row{grid-template-columns:1fr;gap:8px;padding:14px}.contract-invoice-detail-table .detail-table-row span,.contract-invoice-detail-table .detail-table-row strong{display:flex;justify-content:space-between;gap:12px}.contract-invoice-detail-table .detail-table-row span:before,.contract-invoice-detail-table .detail-table-row strong:before{content:attr(data-label);flex-shrink:0;color:#64748b;font-weight:800}.appendix-item{flex-direction:column;align-items:stretch;gap:14px}.appendix-status-badge{align-items:flex-start!important;border-top:1px dashed #f1f5f9;padding-top:10px;width:100%}}.contract-header-wrapper .invoice-overview-band{margin-bottom:0!important;border-bottom-left-radius:0!important;border-bottom-right-radius:0!important}.history-modal-overlay{position:fixed;inset:0;background:#0f172a99;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.history-modal-content{background:#fff;border-radius:12px;width:90%;max-width:500px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.terminate-contract-modal{width:min(94vw,860px);max-width:860px}.history-modal-content--appendix{width:100%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.history-modal-content--appendix .history-modal-header,.history-modal-content--appendix .history-modal-footer{flex-shrink:0}.history-modal-content--appendix form{flex:1;min-height:0;display:flex;flex-direction:column}.history-modal-content--appendix .history-modal-body{flex:1;min-height:0;overflow-y:auto}.history-modal-header{padding:20px 24px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.history-modal-header h2{margin:0;font-size:1.25rem;color:#0f172a}.history-modal-close{background:none;border:none;font-size:1.5rem;color:#64748b;cursor:pointer;line-height:1}.history-modal-body{padding:24px}.history-form-group{margin-bottom:20px}.history-form-group label{display:block;font-weight:500;margin-bottom:8px;color:#334155}.history-modal-footer{padding:16px 24px;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;gap:12px;background:#f8fafc;border-bottom-left-radius:12px;border-bottom-right-radius:12px}textarea.ui-input{resize:vertical;min-height:100px;padding:12px}.final-invoice-meter-proof{margin-top:12px;display:grid;grid-template-columns:minmax(0,1fr) 120px auto;gap:12px;align-items:center;border-top:1px dashed #dbe3ef;padding-top:12px}.final-invoice-meter-proof .label{display:block;color:#64748b;font-size:.78rem;font-weight:700;margin-bottom:4px;text-transform:uppercase}.final-invoice-meter-proof strong,.final-invoice-meter-proof small{display:block}.final-invoice-meter-proof small{color:#64748b;margin-top:4px}.final-invoice-meter-proof__image{width:120px;height:84px;border:1px solid #dbe3ef;border-radius:8px;overflow:hidden;background:#f8fafc;display:grid;place-items:center;color:#94a3b8;font-size:.82rem;text-align:center}.final-invoice-meter-proof__image img{width:100%;height:100%;object-fit:cover}.final-invoice-meter-proof__upload{min-height:38px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#1d4ed8;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0 12px;font-size:.88rem;font-weight:700;white-space:nowrap}.final-invoice-meter-proof__upload input{display:none}@media(max-width:720px){.final-invoice-meter-proof{grid-template-columns:1fr}.final-invoice-meter-proof__image{width:100%;height:160px}}:root{--react-pdf-annotation-layer: 1;--annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color: Highlight;--input-focus-outline: 1px solid Canvas;--input-unfocused-border-color: transparent;--input-disabled-border-color: transparent;--input-hover-border-color: black;--link-outline: none}@media screen and (forced-colors:active){:root{--input-focus-border-color: CanvasText;--input-unfocused-border-color: ActiveText;--input-disabled-border-color: GrayText;--input-hover-border-color: Highlight;--link-outline: 1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{position:absolute;top:0;left:0;pointer-events:none;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{position:absolute;width:100%;height:100%}.annotationLayer section{position:absolute;text-align:initial;pointer-events:auto;box-sizing:border-box;margin:0;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{position:absolute;cursor:pointer;width:100%;height:100%;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--total-scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{background:none;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{background:none;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-image:none;background-color:transparent}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{position:absolute;font-size:calc(9px * var(--total-scale-factor));width:100%;min-width:calc(180px * var(--total-scale-factor));pointer-events:none}.annotationLayer .popup{position:absolute;max-width:calc(180px * var(--total-scale-factor));background-color:#ff9;box-shadow:0 calc(2px * var(--total-scale-factor)) calc(5px * var(--total-scale-factor)) #888;border-radius:calc(2px * var(--total-scale-factor));padding:calc(6px * var(--total-scale-factor));margin-left:calc(5px * var(--total-scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto}.annotationLayer .popup>*{font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px * var(--total-scale-factor))}.annotationLayer .popupContent{border-top:1px solid rgba(51,51,51,1);margin-top:calc(2px * var(--total-scale-factor));padding-top:calc(2px * var(--total-scale-factor))}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--total-scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{position:absolute;width:100%;height:100%;top:0;left:0}.annotationLayer .annotationTextContent{position:absolute;width:100%;height:100%;opacity:0;color:transparent;-webkit-user-select:none;user-select:none;pointer-events:none}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}:root{--react-pdf-text-layer: 1;--highlight-bg-color: rgba(180, 0, 170, 1);--highlight-selected-bg-color: rgba(0, 100, 0, 1)}@media screen and (forced-colors:active){:root{--highlight-bg-color: Highlight;--highlight-selected-bg-color: ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translate(-100%)}.textLayer{position:absolute;text-align:initial;inset:0;overflow:hidden;line-height:1;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;margin:0;transform-origin:0 0}.textLayer span.markedContent{top:0;height:0}.textLayer .highlight{margin:-1px;padding:1px;background-color:var(--highlight-bg-color);border-radius:4px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color)}.textLayer br::selection{background:transparent}.textLayer .endOfContent{display:block;position:absolute;inset:100% 0 0;z-index:-1;cursor:default;-webkit-user-select:none;user-select:none}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{position:absolute;top:0;left:0;width:0;height:0;display:none}.signature-draw-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.signature-draw-clear{min-height:32px;padding:6px 12px;font-size:.875rem}.signature-draw-canvas{box-sizing:border-box;width:100%;aspect-ratio:3 / 1;border:1px solid #cbd5e1;border-radius:8px;background:#fff;cursor:crosshair;touch-action:none}.signature-draw-canvas:focus{border-color:#2563eb;outline:3px solid rgba(37,99,235,.14)}.signature-input-hint{margin:-2px 0 0;color:#64748b;font-size:.8125rem;line-height:1.45}.esign-otp-overlay{position:fixed;inset:0;z-index:1100;display:flex;align-items:center;justify-content:center;padding:20px;background:#0f172a9e;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.esign-otp-dialog{width:min(460px,100%);max-height:calc(100vh - 40px);overflow:hidden;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 24px 64px #0f172a47}.esign-otp-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid #e2e8f0}.esign-otp-header h2{margin:0;color:#0f172a;font-size:1.25rem;line-height:1.4}.esign-otp-close{width:36px;height:36px;flex:0 0 36px;border:0;border-radius:50%;background:#f1f5f9;color:#475569;cursor:pointer;font-size:1.5rem;line-height:1}.esign-otp-close:hover:not(:disabled){background:#e2e8f0;color:#0f172a}.esign-otp-close:disabled{cursor:not-allowed;opacity:.55}.esign-otp-content{max-height:calc(100vh - 125px);overflow-y:auto;padding:24px}.esign-otp-alert{margin-bottom:16px}.esign-otp-description{margin:0 0 20px;color:#475569;line-height:1.6}.esign-otp-field{display:grid;gap:8px;margin-bottom:18px}.esign-otp-label{color:#334155;font-size:.875rem;font-weight:600}.esign-otp-control,.esign-otp-file{box-sizing:border-box;width:100%;min-height:44px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#0f172a;font:inherit}.esign-otp-control{padding:10px 12px}.esign-otp-control:focus{border-color:#2563eb;outline:3px solid rgba(37,99,235,.14)}.esign-otp-file{padding:5px;color:#475569}.esign-otp-file::file-selector-button{margin-right:12px;padding:8px 12px;border:0;border-radius:6px;background:#eff6ff;color:#1d4ed8;cursor:pointer;font-weight:600}.esign-otp-control:disabled,.esign-otp-file:disabled{cursor:not-allowed;background:#f8fafc;opacity:.7}.esign-otp-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px}@media(max-width:520px){.esign-otp-overlay{padding:12px}.esign-otp-header,.esign-otp-content{padding:18px}.esign-otp-actions{display:grid;grid-template-columns:1fr 1fr}}.appendix-preview-modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1000}.appendix-preview-modal{background:#fff;height:95vh;width:800px;max-width:95vw;border-radius:12px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 10px 25px #0003}.reject-appendix-warning{margin:0 0 16px;padding:12px;border-left:4px solid #ef4444;border-radius:6px;background:#fef2f2;color:#991b1b;line-height:1.5}.billing-shell{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr);background:#f4f7fb;color:#0f172a}.billing-sidebar{background:#fff;color:#1e293b;padding:24px 16px;border-right:1px solid #e2e8f0;display:flex;flex-direction:column;gap:8px;position:sticky;top:0;height:100vh}.billing-sidebar h1{margin:10px 0 24px 4px;color:#0f172a;font-size:22px;font-weight:700;letter-spacing:-.02em;line-height:1.25}.billing-kicker{display:inline-block;color:#64748b;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.billing-nav{width:100%;min-height:42px;margin:0 0 8px;border:0;background:transparent;color:#475569;border-radius:6px;padding:10px 14px;text-align:left;font:inherit;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1)}.billing-nav.active,.billing-nav:hover{background:#f1f5f9;color:#0f172a;transform:translate(4px)}.billing-nav.active{background:#eff6ff;color:#246bfe;font-weight:600;border-left:3px solid #246bfe;padding-left:11px;transform:none}.billing-nav.active:hover{background:#e0f2fe}.billing-main{padding:24px;display:flex;flex-direction:column;gap:18px}.billing-main--page-header-flow{gap:0}.tenant-invoices-page{width:min(1180px,calc(100% - 48px));margin:32px auto;display:flex;flex-direction:column;gap:0}.profile-invoices-section{display:flex;flex-direction:column;gap:18px}.tenant-invoices-header{margin-bottom:0}.billing-header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;background:#fff;border:1px solid #dbe3ef;border-radius:12px;padding:24px;box-shadow:0 1px 3px #0f172a08}.billing-header h2,.billing-panel h3,.invoice-topline h3{margin:4px 0;line-height:1.2}.billing-header p,.muted,.price-row span,.invoice-list-item small{color:#64748b}.billing-header p{margin:8px 0 0;line-height:1.5}.billing-alert.info{background:#eef4ff;color:#254f91;border:1px solid #cbdcff;display:flex;flex-wrap:wrap;gap:10px}.header-actions,.action-row,.filter-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.billing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.billing-panel{background:#fff;border:1px solid #dbe3ef;border-radius:12px;padding:22px;box-shadow:0 1px 3px #0f172a08}.billing-panel.wide{grid-column:1 / -1}.panel-heading,.invoice-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:16px}.count-pill,.status-chip{display:inline-flex;align-items:center;min-height:28px;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:800;background:#eff6ff;color:#246bfe;white-space:nowrap}.status-chip.issued{background:#e8f0ff;color:#295ca8}.status-chip.paid{background:#e8f7ee;color:#17683c}.status-chip.draft{background:#fff6df;color:#8d620d}.status-chip.overdue{background:#fff0ed;color:#a33124}.status-chip.cancelled{background:#f5e8e8;color:#8b2f2f}.status-chip.partiallypaid{background:#fff6df;color:#8d620d}.service-price-list,.invoice-items,.invoice-list{display:flex;flex-direction:column;gap:10px}.price-row,.invoice-item-row,.result-box,.computed-strip{border:1px solid #e2e8f0;background:#f8fafc;border-radius:8px}.price-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;padding:12px}.price-row>div{display:flex;flex-direction:column;gap:3px}.price-row.compact{margin-top:8px;padding:10px}.billing-form{margin-top:18px;display:flex;flex-direction:column;gap:12px}.billing-form.invoice-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.billing-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;font-weight:800;color:#334155}.billing-form input,.billing-form select{width:100%;min-height:42px;border:1px solid #cbd5e1;border-radius:8px;padding:9px 11px;background:#fff;color:#0f172a}.billing-form input:focus,.billing-form select:focus,.filter-bar input:focus,.filter-bar select:focus{outline:2px solid rgba(36,107,254,.18);border-color:#246bfe}.billing-form .span-2{grid-column:span 2}.billing-button{border:0;border-radius:8px;min-height:42px;padding:10px 16px;background:#246bfe;color:#fff;font:inherit;font-weight:800;cursor:pointer;box-shadow:0 2px 4px #246bfe26;transition:background-color .2s,box-shadow .2s}.billing-button.secondary{background:#e8eef7;color:#334155}.billing-button:hover:not(:disabled){background:#1a5ce0}.billing-button.secondary:hover:not(:disabled){background:#dbe5f3}.billing-button:disabled{opacity:.55;cursor:not-allowed}.computed-strip{padding:12px;color:#334155;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.computed-strip.invalid{background:#fff0ed;border-color:#f4c1b8;color:#a33124}.history-box{margin-top:12px}.history-box summary{cursor:pointer;font-weight:800;color:#334155}.result-box{margin-top:14px;padding:14px;display:grid;gap:5px}.invoice-preview,.invoice-detail{margin-top:18px}.invoice-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin:14px 0}.invoice-summary.single{grid-template-columns:1fr}.invoice-summary span{min-height:64px;border:1px solid #e2e8f0;border-radius:8px;padding:12px;display:flex;flex-direction:column;justify-content:center;gap:4px;color:#64748b}.invoice-summary strong{color:#0f172a}.invoice-item-row{display:grid;grid-template-columns:120px minmax(0,1fr) 160px 140px;gap:12px;align-items:center;padding:12px}.filter-bar{margin-bottom:14px}.filter-bar input,.filter-bar select{min-height:42px;border:1px solid #cbd5e1;border-radius:8px;padding:9px 11px;background:#fff;color:#0f172a}.data-table{display:grid;gap:8px;overflow-x:auto}.table-row{min-width:760px;display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:10px;align-items:center;border:1px solid #e2e8f0;background:#f8fafc;border-radius:8px;padding:12px}.table-row.table-head{background:#eff6ff;color:#1e40af;font-size:12px;font-weight:800;text-transform:uppercase}.invoice-table-row{grid-template-columns:170px 90px 90px 210px 130px 110px 110px 80px}.item-table-row{grid-template-columns:130px minmax(220px,1fr) 100px 150px 150px}.link-button{border:0;background:transparent;color:#246bfe;font-weight:800;cursor:pointer}.billing-button.danger{background:#a33124}.billing-button.danger:hover:not(:disabled){background:#8f2b20}.invoice-detail-actions{justify-content:flex-end;margin-top:18px}.state-block{border:1px dashed #cbd5e1;border-radius:8px;padding:22px;color:#64748b;background:#f8fafc}.state-block h3{color:#0f172a}.loading-state{min-height:88px;display:grid;place-items:center;font-weight:800}.check-list{display:grid;gap:10px;color:#334155}.check-list span{border:1px solid #e2e8f0;border-radius:8px;padding:11px 12px;background:#f8fafc}.room-context-card{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;border:1px solid #bfdbfe;border-radius:8px;padding:12px;background:#eff6ff}.room-context-card div{display:flex;flex-direction:column;gap:4px}.room-context-card span{color:#64748b;font-size:12px;font-weight:800}.room-context-card strong{color:#0f172a}.modal-backdrop{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:20px;background:#17211f6b}.invoice-create-modal{width:min(1000px,calc(100dvw - 48px));max-width:1000px;max-height:min(900px,calc(100vh - 48px));display:flex;flex-direction:column;overflow:hidden}.invoice-create-modal form{min-height:0;display:flex;flex:1;flex-direction:column}.invoice-create-modal .history-modal-body{flex:1;min-height:0;overflow-y:auto;background:#f8fafc}.invoice-create-stack{display:grid;gap:16px}.invoice-create-selector,.invoice-create-grid,.invoice-create-section,.invoice-create-summary{border:1px solid #dbe3ef;border-radius:8px;background:#fff;padding:18px 20px}.invoice-create-selector{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.invoice-create-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.invoice-create-field{min-height:76px;display:flex;flex-direction:column;justify-content:center;gap:7px}.invoice-create-grid .invoice-create-field,.invoice-create-summary .invoice-create-field,.meter-reading-fields .invoice-create-field{min-width:0;border:1px solid #e2e8f0;border-radius:8px;padding:12px 14px;background:#f8fafc}.invoice-create-field .label,.invoice-create-label{color:#64748b;font-size:12px;font-weight:800;text-transform:uppercase}.invoice-create-field .value,.invoice-create-field strong{color:#0f172a;font-size:16px;line-height:1.35;font-weight:800;overflow-wrap:anywhere}.invoice-create-field input,.invoice-create-field select{width:100%;min-height:44px;border:1px solid #cbd5e1;border-radius:8px;padding:9px 12px;background:#fff;color:#0f172a;font:inherit;font-weight:600}.invoice-create-field input:focus,.invoice-create-field select:focus{outline:2px solid rgba(36,107,254,.18);border-color:#246bfe}.invoice-create-section{display:grid;gap:12px}.invoice-create-section h3{margin:0;color:#0f172a;font-size:16px}.invoice-create-empty{margin:0;color:#64748b}.invoice-create-line{display:flex;align-items:center;justify-content:space-between;gap:12px;border:1px solid #e2e8f0;border-radius:8px;padding:12px;background:#f8fafc}.invoice-create-meter-list{display:grid;gap:12px}.invoice-create-meter-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,280px);gap:12px;border:1px solid #dbe3ef;border-radius:8px;padding:14px;background:#fff}.invoice-create-meter-card>strong{color:#0f172a}.meter-reading-main{min-width:0;display:grid;gap:14px}.meter-reading-title{display:block;color:#0f172a;font-size:15px;line-height:1.4}.meter-reading-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.invoice-create-field small{color:#64748b;font-size:12px;line-height:1.35}.invoice-create-field .meter-ok{color:#047857;font-weight:700}.invoice-create-field .meter-edited{color:#b45309;font-weight:700}.meter-calculation{display:grid;grid-template-columns:minmax(0,1fr) 18px minmax(0,1fr) 18px minmax(0,1fr);align-items:stretch;gap:12px}.meter-calculation span{min-width:0;border:1px solid #e2e8f0;border-radius:8px;min-height:76px;display:flex;flex-direction:column;justify-content:center;padding:12px 14px;background:#f8fafc}.meter-calculation small{display:block;margin-bottom:4px;color:#64748b;font-size:11px;font-weight:800;letter-spacing:0}.meter-calculation strong{display:block;color:#0f172a;font-size:15px;line-height:1.35;overflow-wrap:anywhere}.meter-calculation b{align-self:center;color:#94a3b8}.meter-calculation .meter-amount{color:#ef4444}.meter-image-panel{min-width:0;display:grid;align-content:start;gap:10px;border:1px solid #e2e8f0;border-radius:8px;padding:12px;background:#f8fafc}.meter-image-panel>.label{color:#64748b;font-size:12px;font-weight:800;text-transform:uppercase}.meter-image-panel img,.meter-image-empty{width:100%;aspect-ratio:4 / 3;border:1px solid #dbe3ef;border-radius:8px;background:#fff}.meter-image-panel img{display:block;object-fit:cover}.meter-image-empty{display:grid;place-items:center;padding:12px;color:#64748b;font-size:13px;text-align:center}.meter-upload-button{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border:1px solid #2563eb;border-radius:8px;padding:8px 12px;background:#2563eb;color:#fff;font-size:13px;font-weight:800;cursor:pointer;transition:background .18s ease,box-shadow .18s ease,transform .18s ease}.meter-upload-button:hover{background:#1d4ed8;box-shadow:0 8px 16px #2563eb2e}.meter-upload-button:has(input:disabled){cursor:progress;opacity:.72}.meter-upload-button input{display:none}.meter-image-panel>small{color:#64748b;font-size:12px;text-align:center}.invoice-create-summary{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(220px,1fr);gap:14px;align-items:stretch}.invoice-create-total{background:#eff6ff!important;border-color:#bfdbfe!important}.invoice-create-total .value{color:#0f172a;font-size:18px;font-weight:900}.invoice-create-placeholder{border:1px dashed #cbd5e1;border-radius:8px;padding:20px;color:#64748b;background:#fff}.confirm-dialog{width:min(440px,100%);border-radius:8px;border:1px solid #dbe3ef;background:#fff;padding:22px;box-shadow:0 20px 55px #0f172a2e}.confirm-dialog h3{margin:0 0 8px}.confirm-dialog p{margin:0 0 18px;color:#64748b}.tenant-layout{display:grid;grid-template-columns:360px minmax(0,1fr);gap:18px}.invoice-list-item{border:1px solid #e2e8f0;background:#fff;border-radius:8px;padding:14px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 10px;text-align:left;cursor:pointer}.invoice-list-item.active,.invoice-list-item:hover{border-color:#246bfe;background:#eff6ff}.invoice-list-item em{justify-self:start;font-style:normal}.empty-state{text-align:center;padding:40px}@media(max-width:980px){.billing-shell,.tenant-layout{grid-template-columns:1fr}.billing-sidebar{min-height:auto}.billing-grid,.billing-form.invoice-form,.invoice-summary{grid-template-columns:1fr}.billing-form .span-2{grid-column:span 1}.invoice-item-row{grid-template-columns:1fr}.table-row,.invoice-table-row,.item-table-row{min-width:0;grid-template-columns:1fr}.room-context-card{grid-template-columns:1fr}.filter-bar,.header-actions,.action-row{align-items:stretch;flex-direction:column}.filter-bar input,.filter-bar select,.filter-bar button,.action-row button,.header-actions button{width:100%}}@media(max-width:620px){.tenant-invoices-page{width:calc(100% - 24px);margin:16px auto}.billing-main{padding:16px}.billing-header,.panel-heading{flex-direction:column}.form-row{grid-template-columns:1fr}}.bulk-invoice-modal{width:min(1180px,calc(100dvw - 48px));max-width:1180px;max-height:min(92vh,920px);display:flex;flex-direction:column;overflow:hidden;border-radius:18px}.bulk-invoice-modal form{flex:1;min-height:0;display:flex;flex-direction:column}.bulk-invoice-header{flex-shrink:0;padding:24px 32px 20px;background:#fff}.bulk-invoice-header h2{margin:4px 0 0;color:#0f172a;font-size:28px;line-height:1.15;font-weight:850}.bulk-kicker{color:#334155;font-size:14px;font-weight:650}.bulk-invoice-body{flex:1;min-height:0;overflow-y:auto;padding:24px 32px 32px;background:#fff}.bulk-stepper{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:center;gap:0;margin:0 0 24px;padding:0;list-style:none}.bulk-stepper li{position:relative;display:grid;justify-items:center;gap:8px;color:#94a3b8;font-weight:750;text-align:center}.bulk-stepper li:before{content:"";position:absolute;top:15px;right:50%;width:100%;height:2px;background:#e2e8f0;z-index:0}.bulk-stepper li:first-child:before{display:none}.bulk-stepper li>span{position:relative;z-index:1;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:2px solid #dbe3ef;border-radius:999px;background:#fff;color:#64748b;font-size:13px;font-weight:850}.bulk-stepper li.active,.bulk-stepper li.done{color:#1d4ed8}.bulk-stepper li.active>span,.bulk-stepper li.done>span{border-color:#2563eb;background:#2563eb;color:#fff}.bulk-stepper li.done:before{background:#2563eb}.bulk-stepper small{font-size:12px;font-weight:750}.bulk-alert{margin:0 0 16px}.bulk-controls{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,240px) auto;gap:14px;align-items:end;padding:18px;margin-bottom:18px;border:1px solid #dbe3ef;border-radius:14px;background:#f8fbff}.bulk-controls label,.bulk-room-note{display:grid;gap:7px}.bulk-controls label>span,.bulk-room-note>span{color:#334155;font-size:13px;font-weight:800}.bulk-controls select,.bulk-controls input,.bulk-room-breakdown input,.bulk-room-note input,.bulk-meter-values input{width:100%;min-height:44px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;padding:9px 12px;color:#0f172a;font:inherit;font-size:14px}.bulk-controls :focus,.bulk-room-detail :focus{outline:none;border-color:#246bfe;box-shadow:0 0 0 3px #246bfe1f}.bulk-empty{min-height:220px;display:grid;place-items:center;gap:8px;padding:42px;border:1px dashed #cbd5e1;border-radius:16px;background:#f8fafc;color:#64748b;text-align:center}.bulk-empty strong{color:#1e293b;font-size:16px}.bulk-room-section{display:grid;gap:16px}.bulk-room-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.bulk-room-toolbar>div:first-child{display:grid;gap:2px}.bulk-room-toolbar strong{font-size:18px}.bulk-room-toolbar span{color:#64748b;font-size:13px}.bulk-room-toolbar>div:last-child{display:flex;gap:8px}.bulk-room-toolbar button{border:0;background:transparent;color:#2563eb;font-size:13px;font-weight:750;cursor:pointer}.bulk-room-toolbar button:hover{text-decoration:underline}.bulk-room-list{display:grid;gap:16px}.bulk-room-card{overflow:hidden;border:1px solid #dbe3ef;border-radius:16px;background:#fff;transition:border-color .2s ease,box-shadow .2s ease,opacity .2s ease}.bulk-room-card.selected{border-color:#93b4f5;box-shadow:0 8px 24px #234e9114}.bulk-room-card:not(.selected){opacity:.72}.bulk-room-card-head{display:grid;grid-template-columns:auto minmax(260px,1fr) 180px auto auto;align-items:center;gap:18px;padding:20px 22px}.bulk-room-check{cursor:pointer}.bulk-room-check input{position:absolute;opacity:0}.bulk-room-check span{display:block;width:24px;height:24px;border:2px solid #cbd5e1;border-radius:7px;background:#fff}.bulk-room-check input:checked+span{border-color:#2563eb;background:#2563eb;box-shadow:inset 0 0 0 4px #fff}.bulk-room-check input:focus-visible+span{outline:3px solid rgba(37,99,235,.2);outline-offset:2px}.bulk-room-identity{display:grid;gap:3px;border:0;background:transparent;padding:0;text-align:left;cursor:pointer}.bulk-room-identity strong{color:#0f172a;font-size:18px}.bulk-room-identity span{color:#64748b;font-size:14px}.bulk-room-money{display:grid;justify-items:end;gap:2px;font-variant-numeric:tabular-nums}.bulk-room-money small{color:#64748b}.bulk-room-money strong{font-size:18px}.bulk-status{min-width:126px;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:800;text-align:center}.bulk-status.ready{background:#ecfdf3;color:#137a43}.bulk-status.issue{background:#fff3e6;color:#a84b08}.bulk-expand{width:38px;height:38px;border:1px solid #dbe3ef;border-radius:11px;background:#f8fafc;color:#475569;font-size:22px;cursor:pointer}.bulk-expand:active{transform:translateY(1px)}.bulk-room-issue{padding:12px 22px;border-top:1px solid #fed7aa;background:#fff8ef;color:#9a3412;font-size:14px;font-weight:650}.bulk-room-issue span{font-weight:500}.bulk-room-detail{display:grid;gap:18px;padding:22px;border-top:1px solid #e2e8f0;background:#fbfdff}.bulk-room-breakdown{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:14px}.bulk-room-breakdown>span,.bulk-room-breakdown>label{display:grid;gap:6px;padding:15px 16px;border-radius:14px;background:#f1f5f9}.bulk-room-breakdown small{color:#64748b;font-size:12px;font-weight:750}.bulk-room-breakdown strong{font-size:19px;font-variant-numeric:tabular-nums}.bulk-service-detail{display:grid;grid-template-columns:minmax(180px,.42fr) 1fr;gap:18px;align-items:start;padding:16px 18px;border:1px solid #dbe7f5;border-radius:14px;background:#f8fbff}.bulk-service-detail>div{display:grid;gap:4px}.bulk-service-detail>div strong{color:#172033;font-size:15px}.bulk-service-detail>div span{color:#64748b;font-size:12px}.bulk-service-detail ul{display:grid;gap:8px;margin:0;padding:0;list-style:none}.bulk-service-detail li{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px;border-radius:10px;background:#fff}.bulk-service-detail li span{display:grid;gap:2px}.bulk-service-detail li small{color:#64748b}.bulk-service-detail li>strong{white-space:nowrap;font-variant-numeric:tabular-nums}.bulk-meter-grid{display:grid;grid-template-columns:repeat(2,minmax(360px,1fr));gap:16px}.bulk-meter-item{display:grid;gap:14px;border:1px solid #dbe3ef;border-radius:16px;padding:18px;background:#fff}.bulk-meter-item.invalid{border-color:#fca5a5;background:snow}.bulk-meter-title{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.bulk-meter-title strong{font-size:20px}.bulk-meter-title span{color:#64748b;font-size:13px}.bulk-meter-values{display:grid;grid-template-columns:repeat(3,minmax(100px,1fr));gap:12px}.bulk-meter-values>span,.bulk-meter-values>label{display:grid;gap:5px}.bulk-meter-values small{color:#64748b;font-size:12px;font-weight:700}.bulk-meter-values small em{margin-left:4px;color:#64748b;font-size:10px;font-style:normal;font-weight:600}.bulk-meter-values strong{font-size:19px;font-variant-numeric:tabular-nums}.bulk-first-reading input{border-color:#9bb9f3;background:#f8fbff}.bulk-first-reading input:focus{border-color:#246bfe;box-shadow:0 0 0 3px #246bfe1f}.bulk-meter-values input[aria-invalid=true]{border-color:#dc2626;color:#b91c1c}.bulk-meter-proof{display:grid;grid-template-columns:128px minmax(0,1fr) auto;gap:12px;align-items:center}.bulk-meter-thumbnail{position:relative;width:128px;height:88px;overflow:hidden;border:1px solid #cbd5e1;border-radius:12px;background:#f1f5f9;padding:0;cursor:pointer;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.bulk-meter-thumbnail:hover{border-color:#7aa5fb;box-shadow:0 8px 22px #246bfe24;transform:translateY(-1px)}.bulk-meter-thumbnail:focus-visible{outline:3px solid rgba(36,107,254,.25);outline-offset:2px}.bulk-meter-thumbnail img{width:100%;height:100%;display:block;object-fit:cover}.bulk-meter-thumbnail span{position:absolute;inset:auto 8px 8px;border-radius:999px;padding:4px 8px;background:#0f172ab8;color:#fff;font-size:11px;font-weight:800;opacity:0;transform:translateY(4px);transition:opacity .18s ease,transform .18s ease}.bulk-meter-thumbnail:hover span,.bulk-meter-thumbnail:focus-visible span{opacity:1;transform:translateY(0)}.meter-image-lightbox{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:24px;background:#0f172aad;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.meter-image-lightbox-content{width:min(860px,94vw);max-height:92vh;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:14px;border:1px solid rgba(226,232,240,.9);border-radius:14px;background:#fff;box-shadow:0 24px 70px #0f172a47}.meter-image-lightbox-content>div{display:grid;gap:2px;min-width:0}.meter-image-lightbox-content strong{color:#0f172a;font-size:15px}.meter-image-lightbox-content span{color:#64748b;font-size:12px}.meter-image-lightbox-content button{width:34px;height:34px;border:1px solid #dbeafe;border-radius:10px;background:#f8fbff;color:#1e3a8a;font-size:22px;font-weight:700;line-height:1;cursor:pointer}.meter-image-lightbox-content img{grid-column:1 / -1;width:100%;max-height:calc(92vh - 92px);display:block;border-radius:10px;object-fit:contain;background:#0f172a}.bulk-meter-upload-copy{display:grid;gap:4px;min-width:0}.bulk-meter-upload-copy:first-child{grid-column:1 / 3}.bulk-meter-upload-copy strong{color:#334155;font-size:13px}.bulk-meter-upload-copy strong em{margin-left:5px;color:#64748b;font-size:10px;font-style:normal;font-weight:650}.bulk-meter-upload-copy span{color:#64748b;font-size:12px;line-height:1.45}.bulk-meter-proof label{display:inline-flex;align-items:center;justify-content:center;min-height:38px;border:1px solid #bfd2ef;border-radius:10px;background:#f8fbff;color:#1d5fe9;padding:8px 14px;font-size:13px;font-weight:800;cursor:pointer}.bulk-meter-proof label:hover{background:#eff6ff}.bulk-meter-proof input{display:none}.bulk-meter-error{color:#b91c1c;font-size:13px;font-weight:650}.bulk-room-note input{min-height:46px}.bulk-invoice-footer{flex-shrink:0;position:sticky;bottom:0;gap:12px;padding:18px 32px;background:#fff}.bulk-invoice-footer .billing-button{min-width:190px;min-height:46px;padding:11px 18px;font-size:14px;line-height:1.35;white-space:nowrap}.bulk-result-panel{display:grid;gap:16px}.bulk-result-list{display:grid;gap:8px}.bulk-draft-heading{display:flex;align-items:end;justify-content:space-between;gap:18px;padding:4px 2px}.bulk-draft-heading>div{display:grid;gap:4px}.bulk-draft-heading>div strong{color:#172033;font-size:21px;line-height:1.25}.bulk-draft-heading>div span{color:#64748b;font-size:14px;line-height:1.5}.bulk-draft-heading>button{border:0;background:transparent;color:#1d5fe9;padding:8px 0;font-size:14px;font-weight:750;white-space:nowrap;cursor:pointer}.bulk-draft-card{display:grid;grid-template-columns:auto minmax(220px,1fr) auto;gap:14px 16px;border:1px solid #dce5f0;border-radius:14px;padding:18px;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.bulk-draft-card.selected{border-color:#8db2ff;box-shadow:0 8px 26px #246bfe17}.bulk-draft-select{align-self:center;cursor:pointer}.bulk-draft-select input{position:absolute;opacity:0;pointer-events:none}.bulk-draft-select span{display:block;width:24px;height:24px;border:2px solid #b9c7da;border-radius:7px;background:#fff}.bulk-draft-select input:checked+span{border-color:#246bfe;background:#246bfe;box-shadow:inset 0 0 0 5px #fff}.bulk-draft-identity{display:grid;gap:3px}.bulk-draft-identity>strong{color:#172033;font-size:18px;line-height:1.3}.bulk-draft-identity>span{color:#64748b;font-size:13px;line-height:1.45}.bulk-draft-card>em{align-self:start;border-radius:7px;padding:7px 10px;background:#edf3ff;color:#1d5fe9;font-size:12px;line-height:1.3;font-style:normal;font-weight:800}.bulk-draft-money{grid-column:2 / -1;display:grid;grid-template-columns:repeat(5,minmax(120px,1fr));gap:8px}.bulk-draft-money>span{display:grid;gap:5px;padding:11px 12px;border-radius:10px;background:#f5f7fa}.bulk-draft-money small{color:#64748b;font-size:12px;line-height:1.35;font-weight:700}.bulk-draft-money strong{color:#172033;font-size:16px;line-height:1.35;font-variant-numeric:tabular-nums}.bulk-draft-money .total{background:#eaf2ff}.bulk-draft-money .total strong{color:#1557d5;font-size:17px}.bulk-draft-items{grid-column:2 / -1;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:7px 18px;border-top:1px solid #e7edf5;padding-top:12px}.bulk-draft-items>span{display:flex;align-items:center;justify-content:space-between;gap:12px}.bulk-draft-items>span>span{display:grid;gap:2px}.bulk-draft-items strong{color:#334155;font-size:13px;line-height:1.35}.bulk-draft-items small{color:#7b8ba3;font-size:11px;line-height:1.4}.bulk-next-step{margin:0;border-radius:8px;padding:12px 14px;background:#eff6ff;color:#1e40af}.bulk-next-step strong{margin-right:4px}@media(max-width:1100px){.invoice-create-grid,.invoice-create-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.invoice-create-total{grid-column:1 / -1}.invoice-create-meter-card{grid-template-columns:1fr}.meter-reading-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.bulk-invoice-modal{width:min(960px,calc(100dvw - 28px))}.bulk-invoice-header{padding:22px 24px 18px}.bulk-invoice-body{padding:20px 24px 28px}.bulk-controls{grid-template-columns:1fr 1fr}.bulk-controls .billing-button{grid-column:1 / -1;justify-self:end}.bulk-room-card-head{grid-template-columns:auto minmax(0,1fr) auto}.bulk-room-money{grid-column:2;justify-items:start}.bulk-status{grid-column:2;justify-self:start}.bulk-expand{grid-column:3;grid-row:1 / span 3}.bulk-meter-grid{grid-template-columns:1fr}}@media(max-width:680px){.invoice-create-modal{width:100dvw;max-height:100dvh;border-radius:0}.invoice-create-modal .history-modal-body{padding:16px}.invoice-create-grid,.invoice-create-summary,.meter-reading-fields,.meter-calculation{grid-template-columns:1fr}.meter-calculation b{display:none}.bulk-invoice-modal{width:100dvw;max-height:100dvh;border-radius:0}.bulk-invoice-body{max-height:calc(100dvh - 175px);padding:16px}.bulk-stepper small{display:none}.bulk-controls{grid-template-columns:1fr}.bulk-controls .billing-button{grid-column:auto;justify-self:stretch}.bulk-room-toolbar{align-items:flex-start;flex-direction:column}.bulk-room-card-head{grid-template-columns:auto 1fr auto}.bulk-room-money{display:none}.bulk-status{grid-column:2;justify-self:start}.bulk-expand{grid-column:3;grid-row:1 / span 2}.bulk-room-breakdown,.bulk-meter-grid,.bulk-meter-values{grid-template-columns:1fr}.bulk-meter-proof{grid-template-columns:112px 1fr}.bulk-meter-thumbnail{width:112px;height:82px}.bulk-meter-proof label,.bulk-meter-upload-copy:first-child{grid-column:1 / -1}.bulk-service-detail{grid-template-columns:1fr}.bulk-draft-heading{align-items:flex-start;flex-direction:column}.bulk-draft-card{grid-template-columns:auto 1fr auto;padding:14px}.bulk-draft-money{grid-column:1 / -1;grid-template-columns:1fr 1fr}.bulk-draft-money .total{grid-column:1 / -1}.bulk-draft-items{grid-column:1 / -1;grid-template-columns:1fr}.bulk-invoice-footer{padding:14px 16px}.bulk-invoice-footer .billing-button{min-width:0;flex:1;white-space:normal}}.landlord-billing-page{display:flex;flex-direction:column;gap:0;animation:fadeIn .4s ease-out}.invoice-overview-band{display:flex;justify-content:space-between;align-items:center;gap:24px;background:#fff;padding:24px;border-radius:16px;box-shadow:0 4px 20px -2px #0f172a0a;border:1px solid #f1f5f9;flex-wrap:wrap}.invoice-overview-band .overview-left{flex:1;min-width:280px}.invoice-overview-band .overview-left .eyebrow{display:inline-block;color:#246bfe;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin:0 0 6px}.invoice-overview-band .overview-left h2{margin:0 0 8px;font-size:26px;font-weight:800;color:#0f172a;letter-spacing:-.02em}.invoice-overview-band .overview-left .overview-description{margin:0;color:#64748b;font-size:14.5px;line-height:1.5}.invoice-overview-right{display:flex;align-items:center;gap:16px;flex-wrap:nowrap;min-width:0;justify-content:flex-end}.invoice-page-header .page-header-left-area,.invoice-page-header .page-header-right-area{min-width:0}.invoice-filter-group{display:grid;grid-template-columns:180px 160px;gap:12px;background:#f8fafc;padding:8px 12px;border-radius:12px;border:1px solid #e2e8f0;flex:0 0 auto;min-width:0}.invoice-filter-item{display:flex;flex-direction:column;gap:4px;min-width:0}.invoice-filter-item label{font-size:10px;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.05em;padding-left:4px}.invoice-filter-select{width:100%;padding:6px 12px;border-radius:8px;border:1px solid #cbd5e1;background:#fff;font-size:13.5px;font-weight:600;color:#0f172a;min-width:0;outline:none;transition:all .2s;cursor:pointer;height:36px}.invoice-filter-select:focus{border-color:#246bfe;box-shadow:0 0 0 3px #246bfe1f}.invoice-filter-select:disabled{background:#f1f5f9;cursor:not-allowed;color:#94a3b8}.invoice-tabs-container{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:8px;margin-bottom:16px;border-bottom:1px solid #e2e8f0;padding-bottom:2px;flex-wrap:wrap}.invoice-tabs-wrapper{display:flex;align-items:center;gap:8px;overflow-x:auto;padding:4px 0;flex:1;scrollbar-width:none}.invoice-tabs-wrapper::-webkit-scrollbar{display:none}.invoice-tab-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;font-size:13.5px;font-weight:600;border:1px solid #e2e8f0;background:#fff;color:#475569;cursor:pointer;white-space:nowrap;transition:all .2s cubic-bezier(.4,0,.2,1);height:38px}.invoice-tab-btn:hover{background:#f8fafc;color:#0f172a;border-color:#cbd5e1}.invoice-tab-btn.active{background:#246bfe;color:#fff;border-color:#246bfe;box-shadow:0 4px 12px #246bfe2e}.invoice-tab-icon{width:14px;height:14px;flex-shrink:0}.invoice-create-btn{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 16px;border-radius:999px;background:linear-gradient(135deg,#246bfe,#0d53de);color:#fff;font-weight:700;font-size:13.5px;border:none;cursor:pointer;box-shadow:0 4px 12px #246bfe33;transition:all .2s cubic-bezier(.4,0,.2,1);flex-shrink:0;margin-bottom:2px;white-space:nowrap}.invoice-create-btn:hover{transform:translateY(-1px);box-shadow:0 6px 16px #246bfe4d;background:linear-gradient(135deg,#1a5ce0,#0c4ac7)}.invoice-create-btn:active{transform:translateY(0)}.create-plus-icon{width:14px;height:14px;stroke-width:3}.invoice-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:20px;margin-top:12px}.invoice-shared-card{width:100%}.invoice-shared-card .ui-card__title{overflow-wrap:anywhere}.invoice-shared-card__total{color:#246bfe}.invoice-shared-card__total--paid{color:#10b981}.invoice-shared-card__total--overdue{color:#ef4444}.invoice-shared-card__total--draft{color:#d97706}.invoice-shared-card__total--cancelled{color:#64748b}.invoice-card{background:#fff;border-radius:16px;border:1px solid #f1f5f9;box-shadow:0 4px 20px -2px #0f172a05,0 2px 6px -1px #0f172a05;transition:all .25s cubic-bezier(.4,0,.2,1);overflow:hidden;cursor:pointer;display:flex;flex-direction:column;position:relative;text-align:left}.invoice-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px -4px #0f172a0f,0 4px 12px -2px #246bfe0a;border-color:#cbd5e1}.invoice-card:after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#cbd5e1;transition:background-color .2s}.invoice-card.status-paid:after{background:#10b981}.invoice-card.status-issued:after,.invoice-card.status-sent:after{background:#246bfe}.invoice-card.status-overdue:after{background:#ef4444}.invoice-card.status-cancelled:after{background:#f97316}.invoice-card-header{padding:16px 20px 14px 24px;display:flex;justify-content:space-between;align-items:center;background:#fafbfe;border-bottom:1px solid #f1f5f9}.invoice-no-box{display:flex;align-items:center;gap:8px}.invoice-file-icon{width:16px;height:16px;color:#246bfe}.invoice-card-header h3{margin:0;font-size:14.5px;font-weight:700;color:#1e293b;letter-spacing:-.01em}.invoice-status-badge{padding:4px 10px;font-size:11px;font-weight:800;border-radius:999px;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap}.invoice-status-badge.draft{background:#f1f5f9;color:#475569}.invoice-status-badge.issued,.invoice-status-badge.sent{background:#eff6ff;color:#246bfe}.invoice-status-badge.paid{background:#ecfdf5;color:#047857}.invoice-status-badge.overdue{background:#fef2f2;color:#b91c1c}.invoice-status-badge.cancelled{background:#fff7ed;color:#c2410c}.invoice-card-body{padding:18px 20px 20px 24px;display:flex;flex-direction:column;flex:1}.house-info{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;color:#1e293b;margin-bottom:18px}.house-info .info-icon{width:15px;height:15px;color:#64748b;flex-shrink:0}.room-badge{background:#eff6ff;padding:2px 8px;border-radius:6px;font-size:11.5px;color:#246bfe;font-weight:800;margin-left:auto}.invoice-details-list{display:flex;flex-direction:column;gap:12px;margin-bottom:20px}.invoice-detail-row{display:flex;justify-content:space-between;align-items:center;font-size:13.5px;line-height:1.4}.invoice-detail-row .label{color:#64748b;font-weight:500}.invoice-detail-row .value{color:#334155;font-weight:600}.invoice-detail-row .value.tenant-name{color:#0f172a;font-weight:700}.invoice-detail-row .value.due-date{color:#64748b}.invoice-card-footer{border-top:1px dashed #e2e8f0;padding-top:16px;margin-top:auto;display:flex;justify-content:space-between;align-items:center}.amount-label{font-size:11px;color:#64748b;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.amount-value{margin:0;font-size:20px;font-weight:900;letter-spacing:-.02em;color:#0f172a}.amount-value.paid{color:#10b981}.amount-value.overdue{color:#ef4444}.amount-value.issued,.amount-value.sent{color:#246bfe}@media(max-width:768px){.invoice-overview-band{padding:16px}.invoice-overview-right{width:100%;flex-direction:column;align-items:stretch}.invoice-filter-group{width:100%;flex-direction:column;gap:8px}.invoice-filter-select{min-width:100%}.invoice-tabs-container{flex-direction:column-reverse;align-items:stretch;gap:12px}.invoice-create-btn{width:100%;justify-content:center}}.tenant-billing-notification{display:flex;align-items:flex-start;gap:16px;background:#f59e0b0d;border:1px solid rgba(245,158,11,.2);padding:16px 20px;border-radius:12px;margin-bottom:24px;animation:fadeIn .3s ease-out}.tenant-billing-notification .notification-icon{color:#f59e0b;display:flex;align-items:center;justify-content:center;padding-top:2px;flex-shrink:0}.tenant-billing-notification .notification-icon svg{width:20px;height:20px}.tenant-billing-notification .notification-content h4{margin:0 0 4px;font-size:14.5px;font-weight:700;color:#b45309}.tenant-billing-notification .notification-content p{margin:0;font-size:13.5px;color:#78350f;line-height:1.45}.tenant-billing-notification .notification-content strong{font-weight:700}.tenant-invoice-list{display:flex;flex-direction:column;gap:12px}.tenant-invoice-list-route,.tenant-invoice-detail-route{display:block}.tenant-invoice-detail-route .tenant-invoice-detail{width:100%;max-width:none;margin:0}.tenant-invoice-card{border:1px solid #e2e8f0;background:#fff;border-radius:12px;padding:16px 16px 16px 20px;display:flex;flex-direction:column;text-align:left;position:relative;overflow:hidden;transition:all .2s cubic-bezier(.4,0,.2,1);font-family:inherit;outline:none}.tenant-invoice-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px -2px #0f172a0a,0 2px 6px -1px #0f172a0a;border-color:#cbd5e1}.tenant-invoice-card.active{border-color:#246bfe;box-shadow:0 0 0 1px #246bfe,0 8px 16px -2px #246bfe14;background:#fafbfe}.tenant-invoice-card:after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#cbd5e1;transition:background-color .2s}.tenant-invoice-card.status-paid:after{background:#10b981}.tenant-invoice-card.status-issued:after{background:#246bfe}.tenant-invoice-card.status-overdue:after{background:#ef4444}.tenant-invoice-card.status-cancelled:after{background:#f97316}.tenant-invoice-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.tenant-invoice-card-header .invoice-no{font-size:13.5px;font-weight:700;color:#334155;letter-spacing:-.01em}.tenant-invoice-card.active .tenant-invoice-card-header .invoice-no{color:#0f172a}.tenant-invoice-card-body{display:flex;flex-direction:column;gap:8px}.tenant-invoice-card-body .invoice-period{display:flex;align-items:center;gap:6px;font-size:12px;color:#64748b}.tenant-invoice-card-body .invoice-period .period-icon{color:#94a3b8;flex-shrink:0}.tenant-invoice-card-body .invoice-amount-box{display:flex;justify-content:space-between;align-items:flex-end;margin-top:4px}.tenant-invoice-card-body .invoice-amount-box .amount-label{font-size:10.5px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.02em}.tenant-invoice-card-body .invoice-amount-box .amount-value{font-size:15px;font-weight:800;color:#0f172a}.tenant-invoice-card-actions{display:flex;justify-content:flex-end;margin-top:16px;padding-top:14px;border-top:1px dashed #e2e8f0}.tenant-invoice-detail-button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #2563eb;border-radius:8px;padding:0 14px;background:#2563eb;color:#fff;font:inherit;font-size:13px;font-weight:800;cursor:pointer;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.tenant-invoice-detail-button:hover{transform:translateY(-1px);border-color:#1d4ed8;background:#1d4ed8;box-shadow:0 8px 16px #2563eb2e}.tenant-invoice-card.status-paid .amount-value{color:#10b981}.tenant-invoice-card.status-overdue .amount-value{color:#ef4444}.tenant-invoice-detail{background:#fff;border-radius:16px;border:1px solid #f1f5f9;box-shadow:0 4px 20px -2px #0f172a0a;padding:24px;display:flex;flex-direction:column;gap:24px;animation:fadeIn .3s ease-out}.tenant-invoice-detail-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #f1f5f9;padding-bottom:18px;flex-wrap:wrap;gap:16px}.tenant-invoice-detail-header .header-title{display:flex;align-items:center;gap:14px}.tenant-invoice-detail-header .invoice-icon-box{background:#eff6ff;color:#246bfe;padding:10px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.tenant-invoice-detail-header h3{margin:0 0 2px;font-size:19px;font-weight:800;color:#0f172a;letter-spacing:-.01em}.tenant-invoice-stats-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.tenant-invoice-stats-grid .stat-card{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:4px}.tenant-invoice-stats-grid .stat-card .stat-label{font-size:11px;font-weight:700;color:#64748b;text-transform:uppercase;letter-spacing:.04em}.tenant-invoice-stats-grid .stat-card .stat-value{font-size:16px;font-weight:850;color:#0f172a;letter-spacing:-.02em}.tenant-invoice-stats-grid .stat-card .stat-value.due-date{color:#475569}.tenant-invoice-stats-grid .stat-card .stat-value.paid{color:#10b981}.tenant-invoice-stats-grid .stat-card .stat-value.payable{color:#ef4444}.tenant-invoice-stats-grid .stat-card.highlighted{background:#fef2f2;border-color:#fee2e2}.tenant-invoice-items-table{border:1px solid #e2e8f0;border-radius:12px;overflow:hidden;background:#fff}.tenant-invoice-items-table .table-header{display:grid;grid-template-columns:minmax(120px,.9fr) minmax(240px,2.3fr) minmax(90px,.7fr) minmax(130px,.9fr) minmax(140px,1fr);gap:16px;background:#eff6ff;border-bottom:1px solid #e2e8f0;padding:14px 20px;font-size:11.5px;font-weight:850;color:#1e40af;text-transform:uppercase;letter-spacing:0}.tenant-invoice-items-table .table-header .col-qty,.tenant-invoice-items-table .table-header .col-price,.tenant-invoice-items-table .table-header .col-amount{text-align:right}.tenant-invoice-items-table .table-body{display:flex;flex-direction:column;gap:0}.tenant-invoice-items-table .table-row{display:grid;grid-template-columns:minmax(120px,.9fr) minmax(240px,2.3fr) minmax(90px,.7fr) minmax(130px,.9fr) minmax(140px,1fr);gap:16px;padding:16px 20px;border-bottom:1px solid #e2e8f0;border-radius:0;font-size:14px;align-items:center;color:#475569;background:#fff;transition:background .16s ease}.tenant-invoice-items-table .table-row:nth-child(2n){background:#f8fafc}.tenant-invoice-items-table .table-row:hover{background:#f1f5f9}.tenant-invoice-items-table .table-row:last-child{border-bottom:none}.tenant-invoice-items-table .table-row strong{color:#0f172a;font-weight:850}.tenant-invoice-items-table .table-row .col-qty,.tenant-invoice-items-table .table-row .col-price,.tenant-invoice-items-table .table-row .col-amount{text-align:right;justify-content:flex-end}.tenant-invoice-items-table .table-row .col-price,.tenant-invoice-items-table .table-row .col-amount{white-space:nowrap}.tenant-invoice-item-desc{min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:8px}.tenant-meter-proof-button{width:fit-content;border:1px solid #bfdbfe;border-radius:999px;background:#eff6ff;color:#1d4ed8;padding:6px 12px;font-family:inherit;font-size:12px;font-weight:800;cursor:pointer;line-height:1;transition:background .16s ease,border-color .16s ease,box-shadow .16s ease}.tenant-meter-proof-button:hover{background:#dbeafe;border-color:#93c5fd;box-shadow:0 4px 10px #2563eb1f}.item-type-tag{display:inline-flex;align-items:center;justify-content:center;min-width:74px;padding:5px 10px;border-radius:6px;font-size:11px;font-weight:800;width:fit-content;line-height:1}.item-type-tag.rent{background:#eff6ff;color:#246bfe}.item-type-tag.service{background:#e6fcf5;color:#059669}.item-type-tag.discount{background:#fef2f2;color:#dc2626}.item-type-tag.other{background:#f1f5f9;color:#475569}.tenant-invoice-actions{display:flex;justify-content:flex-end;margin-top:8px}.tenant-pay-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;max-width:320px;padding:14px 24px;border-radius:12px;font-size:14.5px;font-weight:750;color:#fff;border:none;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);background:linear-gradient(135deg,#246bfe,#0d53de);box-shadow:0 4px 12px #246bfe40;font-family:inherit;outline:none}.tenant-pay-button:hover{transform:translateY(-1px);box-shadow:0 6px 16px #246bfe59;background:linear-gradient(135deg,#1a5ce0,#0c4ac7)}.tenant-pay-button:active{transform:translateY(0)}.tenant-pay-button:disabled{background:#cbd5e1;color:#94a3b8;box-shadow:none;cursor:not-allowed;transform:none}.tenant-pay-button .pay-icon{width:16px;height:16px;stroke-width:2.5;flex-shrink:0}@media(max-width:980px){.tenant-invoice-stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.tenant-invoice-stats-grid{grid-template-columns:1fr}.tenant-invoice-items-table .table-header{display:none}.tenant-invoice-items-table .table-row{grid-template-columns:1fr;gap:8px;padding:16px}.tenant-invoice-items-table .table-row>*{display:flex;justify-content:space-between;align-items:center;width:100%;text-align:right}.tenant-invoice-items-table .table-row .tenant-invoice-item-desc{align-items:stretch;text-align:left}.tenant-invoice-items-table .table-row .tenant-invoice-item-desc>span{display:flex;justify-content:space-between;gap:12px}.tenant-invoice-items-table .table-row .col-qty,.tenant-invoice-items-table .table-row .col-price,.tenant-invoice-items-table .table-row .col-amount{justify-content:space-between}.tenant-meter-proof-button{align-self:flex-end}.tenant-invoice-items-table .table-row>*:before{content:attr(data-label);font-weight:700;font-size:11.5px;color:#64748b;text-transform:uppercase;margin-right:12px;text-align:left}.tenant-invoice-items-table .table-row .col-type:before,.tenant-invoice-items-table .table-row .col-desc:before,.tenant-invoice-items-table .table-row .col-qty:before,.tenant-invoice-items-table .table-row .col-price:before,.tenant-invoice-items-table .table-row .col-amount:before{display:block}.tenant-pay-button{max-width:100%}}.wallet-payment-modal-backdrop{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;background:#0f172a7a}.wallet-payment-modal{width:min(460px,100%);border-radius:12px;border:1px solid #dbe3ef;background:#fff;padding:24px;box-shadow:0 20px 55px #0f172a2e}.wallet-payment-modal h3{margin:0 0 8px;color:#0f172a}.wallet-payment-description{margin:0 0 18px;color:#64748b;line-height:1.5}.wallet-payment-summary{display:grid;gap:10px;margin-bottom:18px}.wallet-payment-summary-row{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc}.wallet-payment-summary-row span{color:#64748b}.wallet-payment-summary-row strong{color:#0f172a;text-align:right}.wallet-payment-danger-text{color:#b91c1c!important}.wallet-payment-alert{border-radius:8px;padding:10px 12px;line-height:1.45}.wallet-payment-alert-info{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8}.wallet-payment-alert-error{border:1px solid #fecaca;background:#fef2f2;color:#b91c1c}.wallet-payment-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap}.tenant-appointments-page{font-family:inherit}.appointments-header{background-color:#fff;border-bottom:1px solid #e2e8f0;padding:16px 24px;position:sticky;top:0;z-index:10}.appointments-header__container{max-width:1200px;margin:0 auto;display:flex;align-items:center;gap:20px}.appointments-header h1{font-size:1.35rem;font-weight:700;color:#0f172a;margin:0}.back-btn{background:none;border:1px solid #cbd5e1;border-radius:8px;padding:8px 14px;font-size:.9rem;font-weight:600;color:#475569;cursor:pointer;transition:all .2s ease}.back-btn:hover{background-color:#f1f5f9;color:#0f172a;border-color:#94a3b8}.appointments-container{width:100%}.appointments-loading{text-align:center;padding:48px;font-size:1.1rem;color:#64748b}.appointments-empty{text-align:center;background-color:#fff;border-radius:12px;border:1px solid #e2e8f0;padding:48px 24px;color:#64748b}.appointments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:20px}.appointments-grid.tenant-appointment-list{display:flex;flex-direction:column;gap:16px;width:100%}.tenant-appointment-span-full{grid-column:1 / -1}.tenant-appointment-note{border-radius:10px;font-size:13.5px;line-height:1.5;padding:10px 12px}.tenant-appointment-note--tenant{background:#f8fafc;border:1px solid #e2e8f0;color:#475569}.tenant-appointment-note--landlord{background:#f0f9ff;border:1px solid #bae6fd;color:#0369a1}.tenant-appointment-chat-action{display:flex;justify-content:flex-end}.tenant-appointment-chat-action__button{min-height:38px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid #246bfe;border-radius:10px;padding:0 14px;background:#246bfe;color:#fff;font:inherit;font-size:13px;font-weight:800;cursor:pointer;box-shadow:0 6px 14px #246bfe2e;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease}.tenant-appointment-chat-action__button:hover:not(:disabled){background:#1a5ce0;transform:translateY(-1px);box-shadow:0 8px 18px #246bfe40}.tenant-appointment-chat-action__button:disabled{cursor:not-allowed;opacity:.65}.appointment-card{background-color:#fff;border-radius:12px;border:1px solid #e2e8f0;box-shadow:0 1px 3px #0000000d;display:flex;flex-direction:column;overflow:hidden;transition:transform .2s ease,box-shadow .2s ease}.appointment-card:hover{transform:translateY(-2px);box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008}.appointment-card__header{padding:16px 20px;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.appointment-card__header h3{font-size:1.05rem;font-weight:700;color:#1e293b;margin:0;line-height:1.3}.status-tag{font-size:.8rem;font-weight:700;padding:4px 10px;border-radius:9999px;text-transform:uppercase;white-space:nowrap}.status-tag--pending{background-color:#fef3c7;color:#d97706}.appointment-card--pending{border-left:4px solid #f59e0b}.status-tag--confirmed{background-color:#dcfce7;color:#16a34a}.appointment-card--confirmed{border-left:4px solid #22c55e}.status-tag--rejected{background-color:#fee2e2;color:#dc2626}.appointment-card--rejected{border-left:4px solid #ef4444}.status-tag--cancelledbytenant,.status-tag--cancelledbylandlord{background-color:#f1f5f9;color:#475569}.appointment-card--cancelledbytenant,.appointment-card--cancelledbylandlord{border-left:4px solid #64748b}.status-tag--completed{background-color:#f3e8ff;color:#7c3aed}.appointment-card--completed{border-left:4px solid #a855f7}.status-tag--expired{background-color:#e2e8f0;color:#94a3b8}.appointment-card--expired{border-left:4px solid #cbd5e1}.status-tag--proposal{background-color:#e0f2fe;color:#0369a1}.appointment-card--proposal{border-left:4px solid #0ea5e9}.appointment-card__body{padding:20px;flex-grow:1;display:flex;flex-direction:column;gap:10px;font-size:.92rem;color:#475569}.appointment-card__body p{margin:0;line-height:1.4}.appointment-card__body strong{color:#1e293b}.cancel-reason{color:#ef4444;background-color:#fff5f5;padding:8px 12px;border-radius:6px;border:1px dashed #fca5a5;font-size:.88rem}.created-at{font-size:.82rem;color:#94a3b8;margin-top:auto;border-top:1px solid #f1f5f9;padding-top:10px}.appointment-card__footer{padding:14px 20px;background-color:#f8fafc;border-top:1px solid #f1f5f9;display:flex;justify-content:flex-end}.btn-cancel{background-color:#fff;border:1px solid #fca5a5;color:#dc2626;border-radius:6px;padding:6px 12px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-cancel:hover{background-color:#fee2e2}.proposal-banner{background-color:#f0f9ff;border:1px solid #bae6fd;border-radius:8px;padding:12px 14px;margin:4px 0}.proposal-title{font-weight:700;color:#0369a1;font-size:.95rem;margin-bottom:4px}.appointment-card__footer.proposal-actions{gap:10px;flex-wrap:wrap}.btn-accept-proposal{background-color:#16a34a;border:none;color:#fff;border-radius:6px;padding:8px 16px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;flex:1;min-width:140px}.btn-accept-proposal:hover:not(:disabled){background-color:#15803d}.btn-reject-proposal{background-color:#fff;border:1px solid #fca5a5;color:#dc2626;border-radius:6px;padding:8px 16px;font-size:.85rem;font-weight:600;cursor:pointer;transition:all .2s ease;flex:1;min-width:140px}.btn-reject-proposal:hover:not(:disabled){background-color:#fee2e2}.btn-accept-proposal:disabled,.btn-reject-proposal:disabled{opacity:.6;cursor:not-allowed}@media(max-width:640px){.appointments-header__container{flex-direction:column;align-items:flex-start;gap:12px}}.appt-page-header{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #e8edf5;border-radius:16px;padding:28px 32px;margin-bottom:24px;box-shadow:0 1px 4px #0000000a}.appt-page-header__left{display:flex;flex-direction:column;gap:4px}.appt-eyebrow{font-size:11px;font-weight:700;letter-spacing:.1em;color:#246bfe;text-transform:uppercase;margin:0}.appt-page-title{font-size:28px;font-weight:800;color:#0f172a;margin:0;line-height:1.2}.appt-page-subtitle{font-size:14px;color:#64748b;margin:0}.appt-page-header__icon{width:60px;height:60px;background:#eff6ff;border-radius:14px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.appt-tabs{display:flex;gap:8px;border-bottom:2px solid #e8edf5;padding-bottom:0;margin-bottom:24px;overflow-x:auto}.appt-tab{display:flex;align-items:center;gap:7px;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;font-size:14px;font-weight:600;color:#64748b;padding:10px 16px;border-radius:0;cursor:pointer;transition:all .2s ease;white-space:nowrap}.appt-tab:hover{color:#246bfe;background:#f0f6ff;border-radius:8px 8px 0 0}.appt-tab--active{color:#246bfe;border-bottom-color:#246bfe}.appt-tab--active svg{color:#246bfe}.appt-state-box{display:flex;flex-direction:column;align-items:center;gap:16px;padding:64px 24px;color:#94a3b8;font-size:15px;text-align:center}.appt-state-box p{margin:0}.appt-state-box--empty{color:#94a3b8}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.appt-list{display:flex;flex-direction:column;gap:14px;width:100%}.appt-card-span-full{grid-column:1 / -1}.appt-card{background:#fff;border:1px solid #e8edf5;border-radius:16px;overflow:hidden;box-shadow:0 1px 3px #0000000a;transition:box-shadow .2s ease,transform .2s ease;border-left:4px solid #e8edf5}.appt-card:hover{box-shadow:0 6px 20px #00000012;transform:translateY(-1px)}.appt-card--pending{border-left-color:#f59e0b}.appt-card--confirmed{border-left-color:#22c55e}.appt-card--rejected{border-left-color:#ef4444}.appt-card--proposal{border-left-color:#0ea5e9}.appt-card--completed{border-left-color:#6366f1}.appt-card--expired{border-left-color:#cbd5e1}.appt-card--cancelledbylandlord,.appt-card--cancelledbytenant{border-left-color:#94a3b8}.appt-card__header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px 12px;border-bottom:1px solid #f1f5f9}.appt-card__title-row{display:flex;align-items:center;gap:10px}.appt-card__house-icon{width:36px;height:36px;background:#f0f6ff;border-radius:8px;display:flex;align-items:center;justify-content:center;color:#246bfe;flex-shrink:0}.appt-card__room-name{font-size:16px;font-weight:700;color:#0f172a;margin:0}.appt-status-badge{display:inline-flex;align-items:center;padding:5px 12px;border-radius:20px;font-size:11.5px;font-weight:700;letter-spacing:.04em;white-space:nowrap;flex-shrink:0}.appt-status-badge--pending{background:#fff7ed;color:#c2410c;border:1px solid #fed7aa}.appt-status-badge--confirmed{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.appt-status-badge--rejected{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.appt-status-badge--proposal{background:#f0f9ff;color:#0369a1;border:1px solid #bae6fd}.appt-status-badge--completed{background:#f5f3ff;color:#5b21b6;border:1px solid #ddd6fe}.appt-status-badge--expired{background:#f8fafc;color:#94a3b8;border:1px solid #e2e8f0}.appt-status-badge--cancelledbylandlord,.appt-status-badge--cancelledbytenant{background:#f8fafc;color:#64748b;border:1px solid #e2e8f0}.appt-card__meta{padding:14px 20px;display:flex;flex-direction:column;gap:10px}.appt-meta-row{display:flex;align-items:center;gap:8px;font-size:14px;color:#475569}.appt-meta-icon{color:#94a3b8;display:flex;align-items:center;flex-shrink:0}.appt-meta-label{font-weight:600;color:#374151;white-space:nowrap}.appt-meta-value{color:#475569}.appt-note-box{display:flex;align-items:flex-start;gap:8px;padding:10px 14px;border-radius:8px;font-size:13.5px;line-height:1.5}.appt-note-box svg{flex-shrink:0;margin-top:2px}.appt-note-box--tenant{background:#f8fafc;border:1px solid #e2e8f0;color:#475569}.appt-note-box--tenant svg{color:#94a3b8}.appt-note-box--landlord{background:#f0f9ff;border:1px solid #bae6fd;color:#0369a1}.appt-note-box--landlord svg{color:#0ea5e9}.appt-note-box--cancel{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.appt-note-box--cancel svg{color:#ef4444}.appt-proposal-banner{background:#f0f9ff;border:1px solid #bae6fd;border-radius:10px;padding:12px 16px;font-size:13.5px;color:#0369a1}.appt-proposal-banner__title{display:flex;align-items:center;gap:6px;font-weight:700;margin-bottom:6px}.appt-proposal-banner p{margin:0}.appt-conflict-banner{display:flex;align-items:flex-start;gap:10px;background:#fffbeb;border:1px dashed #fcd34d;border-radius:10px;padding:12px 14px;color:#92400e;font-size:13.5px}.appt-conflict-banner svg{flex-shrink:0;margin-top:2px;color:#d97706}.appt-conflict-banner ul{margin:4px 0 0;padding-left:18px;display:flex;flex-direction:column;gap:3px}.appt-card__footer{display:flex;justify-content:flex-end;align-items:center;padding:12px 20px 16px;border-top:1px solid #f1f5f9}.appt-action-group{display:flex;gap:10px;align-items:center}.appt-btn{display:inline-flex;align-items:center;gap:7px;padding:9px 20px;font-size:14px;font-weight:700;border-radius:10px;cursor:pointer;transition:all .2s ease;border:none;height:40px;box-sizing:border-box}.appt-btn--confirm{background:#246bfe;color:#fff;box-shadow:0 4px 12px #246bfe40}.appt-btn--confirm:hover{background:#1a5ce0;box-shadow:0 6px 16px #246bfe59;transform:translateY(-1px)}.appt-btn--confirm:active{transform:translateY(0)}.appt-btn--reject{background:#fff;color:#dc2626;border:1.5px solid #fca5a5}.appt-btn--reject:hover{background:#fef2f2;border-color:#ef4444}.appt-btn--complete{background:#246bfe;color:#fff;box-shadow:0 4px 12px #246bfe33}.appt-btn--complete:hover{background:#1a5ce0;transform:translateY(-1px)}.appt-btn--cancel{background:#fff;color:#64748b;border:1.5px solid #e2e8f0}.appt-btn--cancel:hover{background:#f8fafc;color:#0f172a;border-color:#cbd5e1}.appt-waiting-info{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#64748b;font-style:italic}.notifications-page-container{width:100%;max-width:1000px;margin:0 auto;padding:24px;display:flex;flex-direction:column;gap:24px}.notifications-header-wrapper{display:flex;justify-content:space-between;align-items:center;gap:16px;padding-bottom:8px}.notifications-header-left{display:flex;align-items:center;gap:16px}.notifications-bell-icon-container{width:48px;height:48px;border-radius:12px;background:#edf5ff;color:#246bfe;display:grid;place-items:center;flex-shrink:0;box-shadow:0 4px 10px #246bfe14}.notifications-bell-icon-container svg{width:22px;height:22px}.notifications-header-info{display:flex;flex-direction:column;gap:4px}.notifications-header-info h1{margin:0;font-size:26px;font-weight:800;color:#0f172a;letter-spacing:-.01em}.notifications-header-info p.subtle{margin:0;color:#64748b;font-size:14px;font-weight:500}.notifications-header-actions{display:flex;align-items:center;gap:12px}.notifications-mark-read-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:#246bfe;border:1.5px solid #246bfe;color:#fff;border-radius:10px;font-size:13.5px;font-weight:700;cursor:pointer;transition:all .15s ease;outline:none;box-shadow:0 4px 12px #246bfe26}.notifications-mark-read-btn:hover:not(:disabled){background:#1d5edb;border-color:#1d5edb;transform:translateY(-1px)}.notifications-mark-read-btn:active:not(:disabled){transform:translateY(0)}.notifications-mark-read-btn:disabled{opacity:.6;cursor:not-allowed}.notifications-mark-read-btn svg{width:16px;height:16px}.notifications-tabs-bar{display:flex;gap:12px;padding:4px;background:#fff;border:1px solid #eef2f6;border-radius:14px;box-shadow:0 2px 6px #00000005;overflow-x:auto}.notifications-tab-item{display:flex;align-items:center;gap:8px;padding:12px 18px;border-radius:10px;border:none;background:transparent;color:#64748b;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);white-space:nowrap;outline:none;position:relative;flex:1;justify-content:center}.notifications-tab-item:after{content:"";position:absolute;bottom:0;left:50%;transform:translate(-50%);width:0;height:3px;background:#246bfe;border-radius:99px;transition:width .2s ease}.notifications-tab-item:hover{color:#0f172a;background:#f8fafc}.notifications-tab-item.active{color:#246bfe}.notifications-tab-item.active:after{width:40px}.notifications-tab-item svg{width:16px;height:16px}.tab-badge-count{font-size:11px;font-weight:700;padding:2px 8px;border-radius:20px;min-width:18px;text-align:center}.tab-badge-count.blue{background:#edf5ff;color:#246bfe}.tab-badge-count.orange{background:#fff7ed;color:#f97316}.tab-badge-count.sky{background:#f0f9ff;color:#0284c7}.tab-badge-count.green{background:#edfbf0;color:#10b981}.notifications-list-section-header{display:flex;justify-content:space-between;align-items:center;margin-top:8px;padding:0 4px}.notifications-date-group-title{font-size:14px;font-weight:700;color:#475569}.notifications-date-group{display:flex;flex-direction:column;gap:12px}.notification-card-item{display:flex;align-items:center;gap:16px;padding:16px 20px;background:#fff;border:1.5px solid #eef2f6;border-radius:14px;transition:all .2s cubic-bezier(.16,1,.3,1);box-shadow:0 1px 3px #00000003;cursor:pointer;position:relative}.notification-card-item:hover{border-color:#cbd5e1;transform:translateY(-1px);box-shadow:0 4px 12px #00000005}.notification-card-item.unread{background-color:#f8fafc;border-color:#edf2f7}.notification-card-icon-wrapper{width:44px;height:44px;border-radius:10px;display:grid;place-items:center;flex-shrink:0}.notification-card-icon-wrapper svg{width:18px;height:18px}.icon-theme--sky{background:#f0f9ff;color:#0284c7}.icon-theme--green{background:#edfbf0;color:#10b981}.icon-theme--orange{background:#fff7ed;color:#f97316}.icon-theme--slate{background:#f1f5f9;color:#475569}.notification-card-content{flex:1;display:flex;flex-direction:column;gap:4px;text-align:left}.notification-card-title{margin:0;font-size:15px;font-weight:700;color:#0f172a;line-height:1.4}.notification-card-description{margin:0;font-size:13.5px;color:#475569;line-height:1.45}.notification-card-time{font-size:12px;color:#94a3b8;font-weight:500;margin-top:2px}.notification-category-tag{font-size:11px;font-weight:700;padding:4px 12px;border-radius:20px;text-transform:capitalize;letter-spacing:.02em;white-space:nowrap}.notification-category-tag.sky{background:#f0f9ff;color:#0284c7;border:1px solid #bae6fd}.notification-category-tag.green{background:#edfbf0;color:#10b981;border:1px solid #bbf7d0}.notification-category-tag.orange{background:#fff7ed;color:#f97316;border:1px solid #fed7aa}.notification-category-tag.slate{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.notification-card-unread-indicator{width:8px;height:8px;border-radius:50%;flex-shrink:0;margin-left:8px;transition:all .2s ease}.notification-card-unread-indicator.active{background-color:#246bfe;box-shadow:0 0 6px #246bfe66}.notification-card-unread-indicator.inactive{background-color:transparent;border:1.5px solid #cbd5e1}.notification-delete-btn{width:32px;height:32px;border-radius:8px;border:none;background:transparent;color:#94a3b8;cursor:pointer;display:grid;place-items:center;flex-shrink:0;transition:all .15s ease;opacity:0;margin-left:4px}.notification-card-item:hover .notification-delete-btn{opacity:1}.notification-delete-btn:hover{background:#fef2f2;color:#ef4444}.notification-delete-btn svg{width:16px;height:16px}.notifications-view-more-container{display:flex;justify-content:center;margin-top:12px;padding-bottom:24px}.notifications-view-more-btn{display:inline-flex;align-items:center;gap:6px;background:transparent;border:none;color:#246bfe;font-size:14px;font-weight:700;cursor:pointer;transition:all .15s ease;outline:none}.notifications-view-more-btn:hover{transform:translateY(1px);color:#1d5edb}.notifications-view-more-btn svg{width:16px;height:16px}@media(max-width:768px){.notifications-page-container{padding:16px}.notifications-header-wrapper{flex-direction:column;align-items:flex-start;gap:16px}.notifications-header-actions{width:100%;justify-content:space-between}.notifications-mark-read-btn{flex:1;justify-content:center}.notifications-tab-item{padding:10px 12px;font-size:13px}}.role-switcher-container{display:flex;gap:16px;border-bottom:2px solid #e2e8f0;padding-bottom:4px;margin-bottom:8px}.role-switch-btn{padding:12px 28px;background:transparent;border:none;border-bottom:3.5px solid transparent;color:#64748b;font-size:15px;font-weight:700;cursor:pointer;transition:all .15s ease;outline:none;margin-bottom:-6px}.role-switch-btn:hover{color:#246bfe}.role-switch-btn.active{color:#246bfe;border-bottom-color:#246bfe}.landlord-contract-filters{align-items:flex-end;flex-direction:column;gap:8px}.landlord-contract-filter-group{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 1px 3px #0f172a14;display:flex;gap:16px;padding:12px}.landlord-contract-filter-label{color:#64748b;display:block;font-size:13px;font-weight:700;margin-bottom:4px}.landlord-contract-filter-select{background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#0f172a;font:inherit;font-size:14px;min-width:150px;outline:none;padding:8px 10px}.landlord-contract-filter-select:disabled{background:#f1f5f9;color:#94a3b8}.landlord-contract-list{display:flex;flex-direction:column;gap:16px;width:100%}.landlord-contract-price{color:#047857}.landlord-contract-notice{background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;color:#c2410c;font-size:13px;font-weight:700;grid-column:1 / -1;padding:10px 12px}@media(max-width:720px){.landlord-contract-filter-group{flex-direction:column;width:100%}.landlord-contract-filter-select{width:100%}}.favorite-houses-page{padding:24px;background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000000d}.favorite-houses-page__header{margin-bottom:24px}.favorite-houses-page__header h2{font-size:1.5rem;font-weight:600;margin:0 0 8px;color:#111827}.favorite-houses-page__header p{color:#6b7280;margin:0}.favorite-houses-empty{text-align:center;padding:64px 24px;display:flex;flex-direction:column;align-items:center}.favorite-houses-empty svg{width:64px;height:64px;color:#d1d5db;margin-bottom:16px}.favorite-houses-empty h3{font-size:1.25rem;font-weight:600;color:#374151;margin:0 0 8px}.favorite-houses-empty p{color:#6b7280;margin:0 0 24px}.favorite-houses-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.favorite-house-card{border:1px solid #e5e7eb;border-radius:12px;overflow:hidden;cursor:pointer;transition:all .2s ease;display:flex;flex-direction:column}.favorite-house-card:hover{box-shadow:0 10px 15px -3px #0000001a;transform:translateY(-2px);border-color:#d1d5db}.favorite-house-card__image{height:180px;position:relative;background:#f3f4f6}.favorite-house-card__image img{width:100%;height:100%;object-fit:cover}.favorite-house-card__placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:.875rem}.favorite-house-card__action{position:absolute;top:12px;right:12px}.favorite-house-card__content{padding:16px;display:flex;flex-direction:column;flex:1}.favorite-house-card__title{font-size:1.125rem;font-weight:600;color:#111827;margin:0 0 8px;line-height:1.4;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}.favorite-house-card__address{font-size:.875rem;color:#6b7280;margin:0 0 16px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.favorite-house-card__footer{margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding-top:12px;border-top:1px solid #f3f4f6}.favorite-house-card__price{font-weight:600;color:#ef4444}.favorite-house-card__rooms{font-size:.875rem;color:#059669;font-weight:500}.favorite-houses-load-more{text-align:center;margin-top:32px}:root{--admin-sidebar-bg: #ffffff;--admin-sidebar-text: #64748b;--admin-sidebar-active-bg: #eff6ff;--admin-sidebar-active-text: #246bfe;--admin-content-bg: #f8fafc;--admin-card-bg: #ffffff;--admin-border-color: #e2e8f0;--admin-primary-color: #246bfe;--admin-primary-hover: #1b54ca;--admin-success-color: #10b981;--admin-success-hover: #059669;--admin-danger-color: #ef4444;--admin-danger-hover: #dc2626;--admin-warning-color: #f59e0b;--admin-text-main: #0f172a;--admin-text-muted: #64748b;--radius-xl: 16px;--radius-lg: 12px;--radius-md: 8px;--radius-sm: 4px;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .05), 0 2px 4px -1px rgba(0, 0, 0, .02);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .05), 0 4px 6px -2px rgba(0, 0, 0, .02);--transition-fast: .2s cubic-bezier(.4, 0, .2, 1);--transition-normal: .3s cubic-bezier(.4, 0, .2, 1)}.admin-dashboard{display:flex;min-height:100vh;background-color:var(--admin-content-bg);color:var(--admin-text-main);font-family:Inter,system-ui,-apple-system,sans-serif}.admin-sidebar{width:280px;background-color:var(--admin-sidebar-bg);color:var(--admin-sidebar-text);display:flex;flex-direction:column;border-right:1px solid var(--admin-border-color);position:fixed;top:0;bottom:0;left:0;z-index:100}.sidebar-header{padding:32px 24px 24px;border-bottom:1px solid var(--admin-border-color);display:flex;flex-direction:column;gap:6px}.sidebar-logo{font-size:1.35rem;font-weight:800;color:var(--admin-text-main);letter-spacing:-.03em}.sidebar-logo span{color:var(--admin-primary-color)}.sidebar-subtitle{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--admin-text-muted);font-weight:700}.sidebar-menu{flex:1;padding:24px 16px;display:flex;flex-direction:column;gap:6px}.sidebar-menu-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--radius-md);color:var(--admin-sidebar-text);font-weight:600;font-size:.9rem;text-align:left;background:transparent;border:none;cursor:pointer;transition:all var(--transition-fast);width:100%}.sidebar-menu-item svg{width:18px;height:18px;opacity:.7;transition:transform var(--transition-fast)}.sidebar-menu-item:hover{background-color:#f1f5f9;color:var(--admin-text-main)}.sidebar-menu-item:hover svg{transform:translate(2px);opacity:1}.sidebar-menu-item.active{background-color:var(--admin-sidebar-active-bg);color:var(--admin-sidebar-active-text);box-shadow:var(--shadow-sm);position:relative}.sidebar-menu-item.active:before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:4px;background-color:var(--admin-primary-color);border-radius:0 4px 4px 0}.sidebar-menu-item.active svg{color:var(--admin-primary-color);opacity:1}.sidebar-footer{padding:24px;border-top:1px solid var(--admin-border-color);display:flex;flex-direction:column;gap:16px}.sidebar-user{font-size:.85rem;color:var(--admin-text-main);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-logout-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;border-radius:var(--radius-md);border:1px solid var(--admin-border-color);background:transparent;color:var(--admin-text-muted);font-size:.85rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast)}.sidebar-logout-btn:hover{background-color:#ef444414;border-color:#ef444433;color:var(--admin-danger-color)}.admin-main-content{flex:1;margin-left:280px;padding:48px;max-width:1400px;width:calc(100% - 280px)}.content-header{margin-bottom:36px}.content-header h1{font-size:2rem;font-weight:800;color:var(--admin-text-main);margin-bottom:6px;letter-spacing:-.03em}.content-header p{color:var(--admin-text-muted);font-size:.95rem;font-weight:500}.admin-tabs{display:flex;gap:6px;border-bottom:1px solid var(--admin-border-color);margin-bottom:28px;padding-bottom:1px}.admin-tab-btn{padding:12px 20px;font-size:.9rem;font-weight:600;color:var(--admin-text-muted);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:all var(--transition-fast);margin-bottom:-1px}.admin-tab-btn:hover{color:var(--admin-text-main)}.admin-tab-btn.active{color:var(--admin-primary-color);border-bottom-color:var(--admin-primary-color)}.admin-card{background-color:var(--admin-card-bg);border-radius:var(--radius-xl);border:1px solid var(--admin-border-color);box-shadow:var(--shadow-md);overflow:hidden}.table-responsive{overflow-x:auto}.admin-table{width:100%;border-collapse:collapse;text-align:left;font-size:.9rem}.admin-table th{background-color:#f8fafc;padding:16px 24px;font-weight:700;color:var(--admin-text-muted);border-bottom:1px solid var(--admin-border-color);font-size:.75rem;text-transform:uppercase;letter-spacing:.08em}.admin-table td{padding:18px 24px;border-bottom:1px solid var(--admin-border-color);color:var(--admin-text-main);vertical-align:middle}.admin-table tr:last-child td{border-bottom:none}.admin-table tr{transition:background-color var(--transition-fast)}.admin-table tr:hover td{background-color:#f8fafc}.admin-table-action-btn{padding:6px 12px;font-size:.8rem;font-weight:600;min-width:52px;white-space:nowrap;background-color:var(--admin-primary-color);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition-fast),transform var(--transition-fast)}.admin-table-action-btn:hover{background-color:var(--admin-primary-hover);transform:translateY(-1px)}.admin-table-action-btn:active{transform:translateY(0)}.admin-table th:last-child,.admin-table td:last-child{width:160px;min-width:160px;white-space:nowrap}.badge{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:9999px;font-size:.75rem;font-weight:700;line-height:1}.badge-admin{background-color:#fecaca;color:#dc2626}.badge-landlord{background-color:#dbeafe;color:#1e40af}.badge-renter{background-color:#f1f5f9;color:#475569}.badge-active{background-color:#d1fae5;color:#065f46}.badge-suspended{background-color:#fee2e2;color:#991b1b}.badge-completed{background-color:#d1fae5;color:#065f46}.badge-pending,.badge-kycpending{background-color:#fef3c7;color:#92400e}.badge-rejected{background-color:#fee2e2;color:#991b1b}.status-dot{width:6px;height:6px;border-radius:50%;background-color:currentColor;display:inline-block}.admin-pagination{padding:20px 24px;border-top:1px solid var(--admin-border-color);display:flex;justify-content:space-between;align-items:center;background-color:#fff}.pagination-info{font-size:.85rem;color:var(--admin-text-muted);font-weight:500}.pagination-actions{display:flex;gap:8px}.pagination-btn{padding:8px 16px;font-size:.85rem;font-weight:600;border-radius:var(--radius-md);border:1px solid var(--admin-border-color);background-color:#fff;color:var(--admin-text-main);cursor:pointer;transition:all var(--transition-fast)}.pagination-btn:hover:not(:disabled){background-color:#f1f5f9;border-color:#cbd5e1}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.admin-detail-card{background-color:var(--admin-card-bg);border-radius:var(--radius-xl);border:1px solid var(--admin-border-color);box-shadow:var(--shadow-lg);padding:36px;position:relative}.admin-detail-card__header{display:flex;flex-direction:column;gap:16px;margin-bottom:28px;border-bottom:1px solid var(--admin-border-color);padding-bottom:20px}.admin-detail-card__header h2{font-size:1.5rem;font-weight:800;color:var(--admin-text-main);margin:0;letter-spacing:-.02em}.admin-back-btn{display:inline-flex;align-items:center;gap:8px;font-size:.85rem;font-weight:700;color:var(--admin-text-muted);background:transparent;border:none;cursor:pointer;transition:color var(--transition-fast);padding:0;width:max-content}.admin-back-btn:hover{color:var(--admin-primary-color)}.admin-back-btn svg{transition:transform var(--transition-fast)}.admin-back-btn:hover svg{transform:translate(-4px)}.admin-detail-split-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:36px;align-items:start}@media(max-width:1024px){.admin-detail-split-grid{grid-template-columns:1fr}}.admin-detail-column-left,.admin-detail-column-right{display:flex;flex-direction:column;gap:28px}.admin-detail-section{background-color:#fff;border:1px solid var(--admin-border-color);border-radius:var(--radius-lg);padding:24px}.section-subtitle{font-size:.95rem;font-weight:700;color:var(--admin-text-main);margin-bottom:18px;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px dashed var(--admin-border-color);padding-bottom:12px;margin-top:0}.admin-grid-details{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}@media(max-width:640px){.admin-grid-details{grid-template-columns:1fr}}.admin-detail-item{display:flex;flex-direction:column;gap:6px}.admin-detail-item label{font-size:.75rem;font-weight:700;color:var(--admin-text-muted);text-transform:uppercase;letter-spacing:.05em;display:inline-flex;align-items:center;gap:6px}.admin-detail-item span{font-size:.95rem;color:var(--admin-text-main);font-weight:600}.admin-detail-item .sub-text{font-size:.8rem;color:var(--admin-text-muted);font-weight:500;margin-top:-2px}.admin-detail-item .property-description{font-size:.9rem;line-height:1.6;color:#334155;font-weight:500;background-color:#f8fafc;padding:12px;border-radius:var(--radius-md);border:1px solid var(--admin-border-color)}.admin-detail-badges{display:flex;gap:6px;flex-wrap:wrap}.verified-citizen-id{font-family:Courier New,Courier,monospace;font-size:1.05rem!important;color:var(--admin-primary-color)!important;font-weight:700!important;letter-spacing:.05em}.verified-user-fullname{color:var(--admin-success-color);font-weight:700}.kyc-timeline{display:flex;flex-direction:column;gap:24px;position:relative;padding-left:24px;margin-top:12px}.kyc-timeline:before{content:"";position:absolute;top:6px;bottom:6px;left:7px;width:2px;background-color:var(--admin-border-color)}.kyc-timeline-item{position:relative;display:flex;flex-direction:column;gap:6px}.kyc-timeline-dot{position:absolute;left:-24px;top:4px;width:16px;height:16px;border-radius:50%;background-color:#cbd5e1;border:3px solid #ffffff;box-shadow:0 0 0 1px #cbd5e1;transition:transform var(--transition-fast)}.kyc-timeline-item:hover .kyc-timeline-dot{transform:scale(1.2)}.kyc-timeline-dot.Approved{background-color:var(--admin-success-color);box-shadow:0 0 0 1px var(--admin-success-color)}.kyc-timeline-dot.Rejected{background-color:var(--admin-danger-color);box-shadow:0 0 0 1px var(--admin-danger-color)}.kyc-timeline-dot.PendingAdminReview{background-color:var(--admin-warning-color);box-shadow:0 0 0 1px var(--admin-warning-color)}.kyc-timeline-header{display:flex;align-items:center;gap:10px}.kyc-timeline-status{font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.02em}.kyc-timeline-status.Approved{color:var(--admin-success-color)}.kyc-timeline-status.Rejected{color:var(--admin-danger-color)}.kyc-timeline-status.PendingAdminReview{color:var(--admin-warning-color)}.kyc-timeline-date{font-size:.8rem;color:var(--admin-text-muted);font-weight:500}.kyc-timeline-reason{font-size:.85rem;color:#7f1d1d;background-color:#fef2f2;padding:10px 16px;border-radius:var(--radius-md);border-left:4px solid var(--admin-danger-color);margin-top:6px;display:inline-block;max-width:100%;font-weight:500}.loading-history,.no-history{font-size:.9rem;color:var(--admin-text-muted);font-weight:500;text-align:center;padding:16px 0}.admin-media-grid-vertical{display:flex;flex-direction:column;gap:20px}.media-container{display:flex;flex-direction:column;gap:8px}.media-label{font-size:.75rem;font-weight:700;color:var(--admin-text-muted);text-transform:uppercase;letter-spacing:.05em}.admin-image-box{border-radius:var(--radius-lg);border:1px solid var(--admin-border-color);overflow:hidden;background-color:#f1f5f9;display:flex;flex-direction:column;transition:transform var(--transition-fast),box-shadow var(--transition-fast),border-color var(--transition-fast);aspect-ratio:16/10;cursor:pointer;text-decoration:none}.admin-image-box:hover{transform:translateY(-2px) scale(1.01);box-shadow:var(--shadow-lg);border-color:var(--admin-primary-color)}.admin-image-box img{width:100%;height:82%;object-fit:cover;transition:transform var(--transition-normal)}.admin-image-box:hover img{transform:scale(1.02)}.admin-image-box span{height:18%;display:flex;align-items:center;justify-content:center;font-size:.8rem;font-weight:700;color:var(--admin-text-muted);background-color:#fff;border-top:1px solid var(--admin-border-color);transition:color var(--transition-fast)}.admin-image-box:hover span{color:var(--admin-primary-color)}.admin-image-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:#f8fafc;color:var(--admin-text-muted);aspect-ratio:16/10;border:1px dashed var(--admin-border-color);border-radius:var(--radius-lg);gap:4px}.admin-image-placeholder span{font-size:.85rem;font-weight:700;border-top:none;background:transparent}.admin-image-placeholder small{font-size:.75rem;font-weight:500}.admin-kyc-summary-panel{background-color:#f8fafc;border-radius:var(--radius-lg);border:1px solid var(--admin-border-color);padding:20px;margin-top:24px}.system-result-text{font-weight:700!important;color:var(--admin-success-color)}.admin-no-kyc-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:60px 24px;color:var(--admin-text-muted);background-color:#f8fafc;border:1px dashed var(--admin-border-color);border-radius:var(--radius-lg);gap:12px}.admin-no-kyc-placeholder svg{width:36px;height:36px;opacity:.5}.admin-no-kyc-placeholder span{font-size:.9rem;font-weight:600}.property-title{font-size:1.4rem;font-weight:800;color:var(--admin-text-main);margin:0;letter-spacing:-.02em}.admin-amenities-tags{display:flex;gap:8px;flex-wrap:wrap}.badge-renter-tag{background-color:#f1f5f9;color:#334155;border:1px solid var(--admin-border-color);padding:8px 16px;border-radius:var(--radius-md);font-weight:600;font-size:.8rem}.no-amenities-text{font-size:.9rem;color:var(--admin-text-muted);font-weight:500}.property-photos-gallery{margin-top:24px;border-top:1px dashed var(--admin-border-color);padding-top:24px}.gallery-thumbnail-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:12px}.gallery-thumbnail-item .admin-image-box{aspect-ratio:4/3}.admin-action-area{margin-top:28px;padding-top:24px;border-top:1px dashed var(--admin-border-color);display:flex;flex-direction:column;gap:18px}.admin-reason-textarea{width:100%;min-height:100px;padding:16px;border-radius:var(--radius-lg);border:1px solid var(--admin-border-color);font-family:inherit;font-size:.9rem;font-weight:500;resize:vertical;box-sizing:border-box;transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.admin-reason-textarea:focus{outline:none;border-color:var(--admin-primary-color);box-shadow:0 0 0 3px #246bfe1a}.admin-action-buttons{display:flex;gap:16px}@media(max-width:640px){.admin-action-buttons{flex-direction:column}}.admin-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:14px 28px;font-size:.9rem;font-weight:700;border-radius:var(--radius-lg);border:none;cursor:pointer;transition:background-color var(--transition-fast),transform var(--transition-fast),box-shadow var(--transition-fast);flex:1}.admin-btn svg{width:18px;height:18px}.admin-btn--success{background-color:var(--admin-success-color);color:#fff;box-shadow:0 4px 12px #10b98133}.admin-btn--success:hover{background-color:var(--admin-success-hover);box-shadow:0 6px 16px #10b9814d;transform:translateY(-1px)}.admin-btn--danger{background-color:var(--admin-danger-color);color:#fff;box-shadow:0 4px 12px #ef446e33}.admin-btn--danger:hover{background-color:var(--admin-danger-hover);box-shadow:0 6px 16px #ef446e4d;transform:translateY(-1px)}.admin-btn:active{transform:translateY(0)}.admin-btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important;box-shadow:none!important}.admin-sidebar-list::-webkit-scrollbar{width:6px}.admin-sidebar-list::-webkit-scrollbar-track{background:transparent}.admin-sidebar-list::-webkit-scrollbar-thumb{background-color:#00000026;border-radius:3px}.admin-sidebar-list::-webkit-scrollbar-thumb:hover{background-color:#0000004d}.admin-detail-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:100px 48px;background-color:var(--admin-card-bg);border:1px solid var(--admin-border-color);border-radius:var(--radius-xl);color:var(--admin-text-muted);box-shadow:var(--shadow-md);gap:16px}.admin-detail-placeholder-icon{font-size:3rem;opacity:.4}.admin-detail-placeholder p{font-size:.95rem;font-weight:600;margin:0}.admin-modal-overlay{position:fixed;inset:0;background:#0f172a80;display:flex;align-items:center;justify-content:center;z-index:1000}.admin-modal-container{background:#fff;border-radius:12px;width:100%;max-width:500px;box-shadow:0 20px 25px -5px #0000001a;overflow:hidden;display:flex;flex-direction:column}.admin-modal-header{padding:16px 24px;border-bottom:1px solid var(--admin-border-color);display:flex;justify-content:space-between;align-items:center}.admin-modal-title{font-size:1.1rem;font-weight:600;color:var(--admin-text-primary);margin:0}.admin-modal-body{padding:24px;display:flex;flex-direction:column;gap:16px}.admin-modal-footer{padding:16px 24px;border-top:1px solid var(--admin-border-color);display:flex;justify-content:flex-end;gap:12px;background-color:#f8fafc}.admin-form-group{display:flex;flex-direction:column;gap:6px}.admin-form-label{font-size:.875rem;font-weight:500;color:var(--admin-text-secondary)}.admin-form-input{padding:10px 12px;border:1px solid var(--admin-border-color);border-radius:6px;font-size:.95rem;outline:none;transition:border-color .2s}.admin-form-input:focus{border-color:var(--admin-primary-color)}.admin-table-input{width:100%;padding:6px 10px;border:1px solid var(--admin-border-color);border-radius:6px;font-size:.85rem;outline:none;background-color:#fff;transition:border-color .2s}.admin-table-input:focus{border-color:var(--admin-primary-color);box-shadow:0 0 0 2px #246bfe1a}.account-container{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh;background:#f4f7fb}.account-sidebar{background:#fff;color:#1e293b;padding:28px 24px;border-right:1px solid #eef2f6;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;box-shadow:0 4px 6px -1px #00000003,0 2px 4px -1px #00000003}.account-sidebar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.account-sidebar-logo-group{display:flex;align-items:center;gap:10px}.account-sidebar-logo-box{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#246bfe;color:#fff;flex-shrink:0}.account-sidebar h2{margin:0;font-size:18px;font-weight:700;color:#0f172a;letter-spacing:-.01em}.sidebar-profile-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#f4f6fb;border-radius:12px;margin-bottom:24px;cursor:pointer;transition:all .2s ease-in-out;border:1px solid transparent}.sidebar-profile-card:hover{background:#ebf0f7;border-color:#dbeafe}.sidebar-profile-avatar-wrapper{width:44px;height:44px;border-radius:50%;overflow:hidden;flex-shrink:0;background:#e2e8f0;border:2px solid #ffffff;box-shadow:0 2px 4px #0000000d}.sidebar-profile-avatar{width:100%;height:100%;object-fit:cover}.sidebar-profile-avatar-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:#e2e8f0;color:#475569;font-weight:700;font-size:16px}.sidebar-profile-info{flex-grow:1;display:flex;flex-direction:column;text-align:left}.sidebar-profile-name{font-size:14px;font-weight:600;color:#0f172a;line-height:1.2}.sidebar-profile-arrow{color:#94a3b8;display:flex;align-items:center;justify-content:center}.account-sidebar-item{width:100%;min-height:42px;margin:0 0 4px;padding:12px 14px;border-radius:10px;background:transparent;color:#475569;text-align:left;font:inherit;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:all .2s ease-in-out;display:flex;align-items:center;gap:12px;text-decoration:none}.sidebar-item-icon{width:18px;height:18px;color:#64748b;flex-shrink:0;transition:color .2s ease}.sidebar-item-chevron{width:14px;height:14px;color:#94a3b8;flex-shrink:0;transition:transform .2s ease,opacity .2s ease}.account-sidebar-item:hover:not(:disabled){background:#f8fafc;color:#0f172a}.account-sidebar-item:hover:not(:disabled) .sidebar-item-icon{color:#475569}.account-sidebar-item:hover:not(:disabled) .sidebar-item-chevron{color:#475569;transform:translate(2px)}.account-sidebar-item.active{background:#eff6ff;color:#246bfe;font-weight:600;border-left:3px solid #246bfe;padding-left:11px}.account-sidebar-item.active .sidebar-item-icon{color:#246bfe}.account-sidebar-item.active .sidebar-item-chevron{opacity:0;pointer-events:none}.account-sidebar-item.active:hover{background:#eff6ff;transform:none}.account-sidebar-item:disabled{color:#94a3b8;cursor:not-allowed;opacity:.5}.sidebar-divider{height:1px;background:#f1f5f9;margin:14px 0;width:100%}.sidebar-back-button{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;background:#eff3fa;color:#246bfe;border-radius:12px;font-size:14px;font-weight:600;border:none;cursor:pointer;margin-top:auto;transition:all .2s ease}.sidebar-back-button .sidebar-item-icon{color:#246bfe}.sidebar-back-button:hover{background:#e0ebf7;color:#1d4ed8}.sidebar-back-button:hover .sidebar-item-icon{color:#1d4ed8;transform:translate(-3px)}.account-sidebar-header .notification-bell-wrapper .notification-badge{width:8px!important;height:8px!important;min-width:0!important;border-radius:50%!important;background:#246bfe!important;color:transparent!important;font-size:0!important;padding:0!important;top:4px!important;right:4px!important;box-shadow:0 0 0 2px #fff!important}.account-content{padding:24px;background:#f4f7fb}.overview-band{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;padding:24px;border:1px solid #dbe3ef;border-radius:12px;background:#fff}.overview-header-title-area{display:flex;align-items:center;gap:16px}.back-icon-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:1px solid #e2e8f0;border-radius:8px;background:transparent;color:#64748b;cursor:pointer;transition:all .2s;flex-shrink:0}.back-icon-btn:hover{background:#f8fafc;color:#0f172a;border-color:#cbd5e1}.overview-left{display:flex;flex-direction:column;gap:4px}.overview-left .eyebrow{font-size:13px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin:0}.overview-left h2,.overview-left h1{margin:0;font-size:24px;font-weight:700;color:#0f172a;letter-spacing:-.02em}.overview-left .overview-description,.overview-left .text-secondary{margin:4px 0 0;font-size:15px;color:#475569}.overview-right{display:flex;align-items:center;gap:12px}@media(max-width:768px){.account-container{display:flex;flex-direction:column}.account-sidebar{width:100%;height:auto;position:static;flex-direction:row;overflow-x:auto;padding:16px;gap:8px}.account-sidebar-header,.sidebar-profile-card,.sidebar-divider,.sidebar-back-button,.sidebar-item-chevron{display:none!important}.account-sidebar-item{white-space:nowrap;width:auto;margin:0}.account-content{padding:16px}}.landlord-dashboard{display:grid;grid-template-columns:280px minmax(0,1fr);min-height:100vh;background:#f4f7fb}.dashboard-sidebar{background:#fff;color:#1e293b;padding:28px 24px;border-right:1px solid #eef2f6;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;box-shadow:0 4px 6px -1px #00000003,0 2px 4px -1px #00000003}.landlord-sidebar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px}.sidebar-brand-wrapper{display:flex;align-items:center;gap:10px}.sidebar-brand-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:#eff6ff;color:#246bfe;flex-shrink:0}.sidebar-brand-text{display:flex;flex-direction:column}.sidebar-brand-text h1{margin:0;font-size:18px;font-weight:700;color:#0f172a;letter-spacing:-.01em;line-height:1.2}.sidebar-brand-text p{margin:2px 0 0;font-size:11px;color:#64748b;font-weight:400;white-space:nowrap}.sidebar-items-list{display:flex;flex-direction:column;gap:4px;flex-grow:1}.sidebar-item{width:100%;min-height:42px;margin:0 0 4px;padding:12px 14px;border-radius:10px;background:transparent;color:#475569;text-align:left;font:inherit;font-size:14px;font-weight:500;cursor:pointer;border:none;transition:all .2s ease-in-out;display:flex;align-items:center;gap:12px;text-decoration:none}.sidebar-item-icon{width:18px;height:18px;color:#64748b;flex-shrink:0;transition:color .2s ease;display:flex;align-items:center;justify-content:center}.sidebar-item-text{flex-grow:1;line-height:1.4}.sidebar-chevron{width:14px;height:14px;color:#94a3b8;flex-shrink:0;transition:transform .2s ease,opacity .2s ease}.sidebar-chat-badge{min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:#ef4444;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;line-height:1;flex-shrink:0}.sidebar-item:hover:not(:disabled):not(.active){background:#f8fafc;color:#0f172a}.sidebar-item:hover:not(:disabled):not(.active) .sidebar-item-icon{color:#475569}.sidebar-item:hover:not(:disabled):not(.active) .sidebar-chevron{color:#475569;transform:translate(2px)}.sidebar-item.active{background:#eff6ff;color:#246bfe;font-weight:600;border-left:3px solid #246bfe;padding-left:11px}.sidebar-item.active .sidebar-item-icon{color:#246bfe}.sidebar-promo-card{display:flex;align-items:center;gap:12px;padding:14px 16px;background:#f4f6fb;border-radius:12px;margin-top:auto;margin-bottom:20px;transition:all .2s ease-in-out;border:1px solid transparent}.sidebar-promo-card:hover{background:#ebf0f7;border-color:#dbeafe}.promo-icon-wrapper{flex-shrink:0;display:flex;align-items:center;justify-content:center}.promo-content-wrapper{display:flex;flex-direction:column}.promo-content-wrapper h4{margin:0;font-size:13px;font-weight:600;color:#0f172a}.promo-content-wrapper p{margin:4px 0 0;font-size:11px;color:#64748b;line-height:1.4}.sidebar-back-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;background:#eff3fa;color:#246bfe;border-radius:12px;font-size:14px;font-weight:600;border:none;cursor:pointer;transition:all .2s ease;text-decoration:none}.sidebar-back-btn svg{color:#246bfe;transition:transform .2s ease}.sidebar-back-btn:hover{background:#e0ebf7;color:#1d4ed8}.sidebar-back-btn:hover svg{color:#1d4ed8;transform:translate(-3px)}.landlord-sidebar-header .notification-bell-wrapper .notification-badge{width:8px!important;height:8px!important;min-width:0!important;border-radius:50%!important;background:#ef4444!important;color:transparent!important;font-size:0!important;padding:0!important;top:4px!important;right:4px!important;box-shadow:0 0 0 2px #fff!important}.occupants-setup-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0f172a99;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;animation:setupOverlayFadeIn .2s ease-out}@keyframes setupOverlayFadeIn{0%{opacity:0}to{opacity:1}}.occupants-setup-container-modal{background:#fff;border-radius:16px;width:100%;max-width:800px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 25px -5px #0000001a,0 8px 10px -6px #0000001a;animation:setupModalSlideUp .3s cubic-bezier(.16,1,.3,1);overflow:hidden}@keyframes setupModalSlideUp{0%{opacity:0;transform:translateY(20px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.occupants-setup-header{padding:20px 24px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center;background:#f8fafc}.occupants-setup-header h2{margin:0;font-size:1.25rem;color:#0f172a;font-weight:600}.occupants-setup-close-btn{background:none;border:none;font-size:1.75rem;line-height:1;color:#64748b;cursor:pointer;padding:0 4px;transition:color .2s}.occupants-setup-close-btn:hover{color:#0f172a}.occupants-setup-modal-content{display:flex;flex-direction:column;gap:20px;padding:24px;overflow-y:auto}.occupants-list{display:flex;flex-direction:column;gap:20px}.occupant-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:20px}.occupant-card-header{display:flex;justify-content:flex-start;align-items:center;gap:10px;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f1f5f9}.occupant-card-header h3{margin:0;font-size:1.05rem;color:#1e293b;flex:1}.occupant-save-message{margin:-4px 0 16px;padding:10px 12px;border-radius:6px;font-size:.9rem;font-weight:600;line-height:1.4}.occupant-save-message.success{color:#065f46;background:#ecfdf5;border:1px solid #a7f3d0}.occupant-save-message.error{color:#991b1b;background:#fef2f2;border:1px solid #fecaca}.occupant-save-status{display:inline-flex;align-items:center;min-height:26px;padding:4px 10px;border-radius:999px;font-size:.78rem;font-weight:700}.occupant-save-status.saved{color:#047857;background:#d1fae5}.occupant-save-status.draft{color:#b45309;background:#fef3c7}.remove-btn{background:none;border:none;color:#ef4444;cursor:pointer;font-size:.85rem;font-weight:500;padding:4px 8px;border-radius:4px}.remove-btn:hover{background:#fef2f2}.occupant-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:.9rem;font-weight:500;color:#475569}.form-group input,.form-group select{padding:10px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:.95rem;outline:none;background-color:#fff;transition:border-color .2s}.form-group input:focus,.form-group select:focus{border-color:#2563eb}.form-group input:disabled{background:#f1f5f9;color:#64748b;cursor:not-allowed}.setup-actions{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid #e2e8f0}.occupant-card-actions{align-items:flex-end;padding-top:4px}.occupants-count-hint{color:#475569;font-size:.9rem;font-weight:600}.submit-wrapper{margin-left:auto}.full-width{grid-column:1 / -1}.checkbox-label{display:flex;align-items:center;gap:8px;font-weight:500;color:#1e293b;cursor:pointer;padding:12px;background-color:#f8fafc;border-radius:8px;border:1px solid #e2e8f0;transition:background-color .2s}.checkbox-label:hover{background-color:#f1f5f9}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}@media(max-width:640px){.occupant-grid{grid-template-columns:1fr}.setup-actions{flex-direction:column;gap:16px}.submit-wrapper,.submit-wrapper button{width:100%}}.contract-preview-modal-overlay{position:fixed;inset:0;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:1000}.contract-preview-modal{background:#fff;height:95vh;width:800px;max-width:95vw;border-radius:12px;display:flex;flex-direction:column;overflow:hidden;box-shadow:0 10px 25px #0003}.modal-header{padding:16px 24px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:1.25rem;color:#0f172a}.close-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#64748b;line-height:1}.close-btn:hover{color:#0f172a}.modal-body{flex:1;padding:16px;background:#f8fafc;display:flex;flex-direction:column;gap:16px;overflow-y:auto}.pdf-container{flex:1;width:100%;height:100%;border:1px solid #e2e8f0;border-radius:8px;overflow-y:auto;overflow-x:hidden;background:#f1f5f9;display:flex;flex-direction:column;align-items:center;padding:16px}.pdf-page{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;margin-bottom:24px}.react-pdf__Document{display:flex;flex-direction:column;align-items:center}.agreement-section{display:flex;align-items:center;gap:8px;padding:12px;background:#fff;border:1px solid #e2e8f0;border-radius:8px}.agreement-section input[type=checkbox]{width:18px;height:18px;cursor:pointer}.agreement-section label{font-weight:500;color:#1e293b;cursor:pointer}.modal-footer{padding:16px 24px;border-top:1px solid #e2e8f0;display:flex;flex-direction:row;justify-content:space-between;align-items:center;gap:16px}.footer-actions-group{display:flex;flex-direction:row;gap:12px}.footer-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;width:100%}.footer-actions.secondary{grid-template-columns:1fr 1fr}.reason-dialog-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#ffffffe6;display:flex;justify-content:center;align-items:center;z-index:10}.reason-dialog{background:#fff;padding:24px;border-radius:8px;box-shadow:0 4px 15px #0000001a;border:1px solid #e2e8f0;width:400px}.reason-dialog h4{margin:0 0 16px;color:#0f172a}.reason-dialog textarea{width:100%;height:100px;padding:12px;border:1px solid #cbd5e1;border-radius:6px;margin-bottom:16px;resize:vertical}.reject-contract-warning{margin:0 0 16px;padding:12px;border-left:4px solid #ef4444;border-radius:6px;background:#fef2f2;color:#991b1b;line-height:1.5}.reason-actions{display:flex;justify-content:flex-end;gap:12px}.tenant-requests-container{width:100%}.page-title{margin-top:0;margin-bottom:24px;font-size:1.5rem;color:#1e293b}.empty-state{padding:40px;text-align:center;background:#f8fafc;border-radius:8px;color:#64748b}.requests-list{display:flex;flex-direction:column;gap:16px;width:100%}.tenant-request-price{color:#0f172a}.tabs-navigation{display:flex;gap:8px;border-bottom:2px solid #e2e8f0;padding-bottom:10px;margin-bottom:24px;overflow-x:auto}.tabs-navigation button{background:none;border:none;font-size:.95rem;font-weight:600;color:#64748b;padding:8px 16px;border-radius:8px;cursor:pointer;white-space:nowrap;transition:all .2s ease}.tabs-navigation button:hover{color:#0f172a;background-color:#f1f5f9}.tabs-navigation button.active{color:#2563eb;background-color:#eff6ff}.request-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:20px;box-shadow:0 1px 2px #0000000d;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.request-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000000d}.request-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #f1f5f9}.request-header h3{margin:0;font-size:1.1rem;color:#0f172a}.request-body p{margin:8px 0;font-size:.95rem;color:#475569}.status-badge{padding:6px 12px;border-radius:999px;font-size:.85rem;font-weight:600;background:#f1f5f9;color:#475569;white-space:nowrap}.status-badge.pending{background:#eff6ff;color:#2563eb}.status-badge.accepted{background:#dcfce7;color:#16a34a}.status-badge.success{background:#dcfce7;color:#166534}.status-badge.danger{background:#fee2e2;color:#991b1b}.status-badge.neutral{background:#f1f5f9;color:#64748b}.status-badge.rejected{background:#fee2e2;color:#dc2626}.status-badge.cancelled{background:#f1f5f9;color:#64748b}.reject-reason{margin-top:12px;padding:12px;background:#fef2f2;border-left:4px solid #ef4444;border-radius:4px;font-size:.9rem;color:#991b1b}.deposit-info{margin-top:12px;padding:12px;background:#fef3c7;border-left:4px solid #f59e0b;border-radius:4px;font-size:.9rem}.deposit-info.success,.contract-status-info.success{background:#f0fdf4;border-left-color:#22c55e;color:#166534}.deposit-info.warning,.contract-status-info.warning{background:#fffbeb;border-left-color:#f59e0b;color:#92400e}.deposit-info.danger,.contract-status-info.danger{background:#fef2f2;border-left-color:#ef4444;color:#991b1b}.deposit-info.neutral,.contract-status-info.neutral{background:#f8fafc;border-left-color:#94a3b8;color:#475569}.contract-status-info{margin-top:12px;padding:8px 12px;border-left:4px solid #f59e0b;border-radius:4px}.rd-page{max-width:1200px;width:100%;margin:0 auto;display:flex;flex-direction:column;gap:20px}.rd-breadcrumb{display:flex;align-items:center;gap:6px;font-size:13px;color:#94a3b8;margin-bottom:4px}.rd-breadcrumb a,.rd-breadcrumb button{background:none;border:none;padding:0;cursor:pointer;color:#64748b;font-size:13px;font-weight:500;text-decoration:none}.rd-breadcrumb a:hover,.rd-breadcrumb button:hover{color:#246bfe}.rd-breadcrumb span{color:#94a3b8}.rd-hero{background:#fff;border:1px solid #e8edf5;border-radius:16px;padding:24px 28px;display:flex;align-items:flex-start;justify-content:space-between;gap:16px;box-shadow:0 1px 4px #0000000a}.rd-hero__left{display:flex;align-items:flex-start;gap:14px}.rd-hero__back{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;cursor:pointer;flex-shrink:0;margin-top:2px;transition:all .2s ease}.rd-hero__back:hover{background:#e2e8f0;color:#0f172a;transform:translate(-2px)}.rd-hero__icon{width:44px;height:44px;background:#eff6ff;border-radius:10px;display:flex;align-items:center;justify-content:center;color:#246bfe;flex-shrink:0}.rd-hero__texts{display:flex;flex-direction:column;gap:2px}.rd-hero__house{font-size:13px;font-weight:600;color:#64748b;margin:0}.rd-hero__room{font-size:26px;font-weight:800;color:#0f172a;margin:0;line-height:1.2}.rd-hero__meta{display:flex;align-items:center;gap:6px;font-size:13px;color:#94a3b8;margin:0}.rd-hero__right{display:flex;flex-direction:column;align-items:flex-end;gap:10px;flex-shrink:0}.rd-badge{display:inline-flex;align-items:center;gap:5px;padding:6px 14px;border-radius:20px;font-size:12.5px;font-weight:700;letter-spacing:.03em;white-space:nowrap}.rd-badge--pending{background:#fff7ed;color:#c2410c;border:1px solid #fed7aa}.rd-badge--accepted{background:#f0fdf4;color:#15803d;border:1px solid #bbf7d0}.rd-badge--rejected{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.rd-badge--cancelled{background:#f8fafc;color:#64748b;border:1px solid #e2e8f0}.rd-badge--expired{background:#f8fafc;color:#94a3b8;border:1px solid #e2e8f0}.rd-hero__actions{display:flex;gap:8px}.rd-section{background:#fff;border:1px solid #e8edf5;border-radius:16px;overflow:hidden;box-shadow:0 1px 3px #0000000a}.rd-section__heading{display:flex;align-items:center;gap:10px;padding:18px 24px 16px;border-bottom:1px solid #f1f5f9}.rd-section__heading-icon{width:32px;height:32px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rd-section__heading-icon--blue{background:#eff6ff;color:#246bfe}.rd-section__heading-icon--amber{background:#fffbeb;color:#d97706}.rd-section__heading-icon--indigo{background:#eef2ff;color:#4f46e5}.rd-section__heading-icon--slate{background:#f8fafc;color:#64748b}.rd-section__title{font-size:15px;font-weight:700;color:#0f172a;margin:0}.rd-section__body{padding:20px 24px}.rd-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}.rd-stat{background:#f8fafc;border:1px solid #e8edf5;border-radius:12px;padding:14px 16px;display:flex;flex-direction:column;gap:4px}.rd-stat__icon{width:28px;height:28px;border-radius:7px;display:flex;align-items:center;justify-content:center;margin-bottom:6px}.rd-stat__icon--blue{background:#eff6ff;color:#246bfe}.rd-stat__icon--green{background:#f0fdf4;color:#16a34a}.rd-stat__icon--amber{background:#fffbeb;color:#d97706}.rd-stat__icon--violet{background:#f5f3ff;color:#7c3aed}.rd-stat__icon--slate{background:#f8fafc;color:#64748b}.rd-stat__label{font-size:12px;color:#64748b;font-weight:500}.rd-stat__value{font-size:14px;font-weight:700;color:#0f172a;line-height:1.3}.rd-deposit-box{border-radius:12px;padding:20px;border:1px solid #e8edf5}.rd-deposit-box--pending{background:#fffbeb;border-color:#fde68a}.rd-deposit-box--paid,.rd-deposit-box--refunded{background:#f0fdf4;border-color:#86efac}.rd-deposit-box--failed{background:#fef2f2;border-color:#fca5a5}.rd-deposit-box--neutral{background:#f8fafc;border-color:#e2e8f0}.rd-deposit-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:16px}.rd-deposit-icon{width:40px;height:40px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.rd-deposit-icon--amber{background:#fef3c7;color:#d97706}.rd-deposit-icon--green{background:#dcfce7;color:#16a34a}.rd-deposit-icon--slate{background:#f1f5f9;color:#64748b}.rd-deposit-title{font-size:15px;font-weight:700;color:#0f172a;margin:0 0 2px}.rd-deposit-subtitle{font-size:13px;color:#64748b;margin:0}.rd-deposit-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;margin-bottom:16px;padding-top:12px;border-top:1px dashed #e2e8f0}.rd-deposit-stat{display:flex;flex-direction:column;gap:2px}.rd-deposit-stat__label{font-size:12px;color:#64748b}.rd-deposit-stat__value{font-size:15px;font-weight:700;color:#0f172a}.rd-deposit-stat__value--warn{color:#d97706}.rd-deposit-stat__value--countdown{font-size:14px;color:#ef4444;font-weight:700}.rd-contract-steps{display:flex;align-items:flex-start;gap:0;padding:8px 0 4px;overflow-x:auto}.rd-step{display:flex;flex-direction:column;align-items:center;flex:1;position:relative;min-width:100px}.rd-step:not(:last-child):after{content:"";position:absolute;top:20px;left:calc(50% + 20px);right:calc(-50% + 20px);height:2px;background:#e2e8f0}.rd-step--done:not(:last-child):after{background:#246bfe}.rd-step__circle{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;border:2px solid #e2e8f0;background:#f8fafc;color:#94a3b8;z-index:1;transition:all .2s}.rd-step--done .rd-step__circle{border-color:#246bfe;background:#246bfe;color:#fff}.rd-step--active .rd-step__circle{border-color:#246bfe;background:#fff;color:#246bfe;box-shadow:0 0 0 4px #dbeafe}.rd-step__label{margin-top:8px;font-size:12px;font-weight:600;color:#94a3b8;text-align:center;line-height:1.3}.rd-step--done .rd-step__label{color:#0f172a}.rd-step--active .rd-step__label{color:#246bfe}.rd-step__sub{font-size:11px;color:#94a3b8;text-align:center;margin-top:2px;line-height:1.3}.rd-notes-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:600px){.rd-notes-grid{grid-template-columns:1fr}}.rd-note-box{background:#f8fafc;border:1px solid #e8edf5;border-radius:10px;padding:14px 16px}.rd-note-box__label{font-size:12px;font-weight:600;color:#64748b;margin:0 0 8px;text-transform:uppercase;letter-spacing:.05em}.rd-note-box__text{font-size:14px;color:#0f172a;margin:0;line-height:1.5}.rd-note-box__text--empty{color:#94a3b8;font-style:italic}.rd-action-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid #e8edf5;border-radius:16px;padding:16px 24px;box-shadow:0 1px 4px #0000000a}.rd-action-bar__left{display:flex;align-items:center;gap:8px}.rd-action-bar__right{display:flex;gap:10px;align-items:center}.rd-btn{display:inline-flex;align-items:center;gap:7px;padding:10px 20px;font-size:14px;font-weight:700;border-radius:10px;cursor:pointer;transition:all .2s ease;border:none;height:42px}.rd-btn--primary{background:#246bfe;color:#fff;box-shadow:0 4px 12px #246bfe40}.rd-btn--primary:hover{background:#1a5ce0;box-shadow:0 6px 16px #246bfe59;transform:translateY(-1px)}.rd-btn--primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.rd-btn--danger{background:#fff;color:#dc2626;border:1.5px solid #fca5a5}.rd-btn--danger:hover{background:#fef2f2;border-color:#ef4444}.rd-btn--outline{background:#fff;color:#475569;border:1.5px solid #e2e8f0}.rd-btn--outline:hover{background:#f8fafc;color:#0f172a}.rd-btn--back{background:#f1f5f9;color:#475569;border:1.5px solid #e2e8f0;font-weight:600}.rd-btn--back:hover{background:#e2e8f0;color:#0f172a}.rd-modal-overlay{position:fixed;inset:0;background:#0f172a73;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:1000;padding:16px}.rd-modal{background:#fff;border-radius:20px;padding:32px;width:100%;max-width:480px;box-shadow:0 20px 60px #00000026}.rd-modal__title{font-size:20px;font-weight:800;color:#0f172a;margin:0 0 8px}.rd-modal__sub{font-size:14px;color:#64748b;margin:0 0 24px;line-height:1.5}.rd-modal__actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.rd-modal__textarea{width:100%;min-height:110px;padding:12px 14px;border:1.5px solid #e2e8f0;border-radius:10px;font-size:14px;font-family:inherit;resize:vertical;transition:border-color .2s;box-sizing:border-box}.rd-modal__textarea:focus{outline:none;border-color:#246bfe;box-shadow:0 0 0 3px #dbeafe}.rd-modal__label{display:block;font-size:13px;font-weight:600;color:#374151;margin-bottom:8px}.rd-rejected-alert{background:#fef2f2;border:1px solid #fca5a5;border-radius:10px;padding:14px 18px;display:flex;align-items:flex-start;gap:10px;color:#991b1b;font-size:14px}.rd-rejected-alert svg{flex-shrink:0;margin-top:1px}.tenant-history-page{display:flex;flex-direction:column;gap:0;animation:fadeIn .4s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.history-filter-container{display:flex;align-items:center;gap:8px;overflow-x:auto;padding:4px 0;margin-bottom:8px;scrollbar-width:none}.history-filter-container::-webkit-scrollbar{display:none}.history-filter-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:999px;font-size:13.5px;font-weight:600;border:1px solid #e2e8f0;background:#fff;color:#475569;cursor:pointer;white-space:nowrap;transition:all .2s cubic-bezier(.4,0,.2,1);height:38px;outline:none}.history-filter-btn:hover{background:#f8fafc;color:#0f172a;border-color:#cbd5e1}.history-filter-btn.active{background:#246bfe;color:#fff;border-color:#246bfe;box-shadow:0 4px 12px #246bfe2e}.history-filter-icon{width:14px;height:14px;flex-shrink:0}.history-grid{display:flex;flex-direction:column;gap:16px;width:100%}.tenant-history-price{color:#047857}.history-card{background:#fff;border-radius:16px;border:1px solid #f1f5f9;box-shadow:0 4px 20px -2px #0f172a05,0 2px 6px -1px #0f172a05;transition:all .25s cubic-bezier(.4,0,.2,1);overflow:hidden;display:flex;flex-direction:column;position:relative;padding:20px 20px 20px 24px;text-align:left}.history-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px -4px #0f172a0f,0 4px 12px -2px #246bfe0a;border-color:#cbd5e1}.history-card:after{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#cbd5e1;transition:background-color .2s}.history-card.status-active:after{background:#10b981}.history-card.status-expired:after{background:#246bfe}.history-card.status-cancelled:after{background:#ef4444}.history-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px;gap:12px}.history-card-title{display:flex;align-items:center;gap:10px}.history-house-icon{background:#eff6ff;color:#246bfe;padding:8px;border-radius:8px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.history-house-icon svg{width:16px;height:16px}.history-card-title-text h3{margin:0;font-size:14.5px;font-weight:700;color:#0f172a;line-height:1.4;letter-spacing:-.01em}.status-badge{padding:4px 10px;font-size:11px;font-weight:800;border-radius:999px;text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;line-height:1}.status-badge.active{background:#ecfdf5;color:#047857}.status-badge.completed{background:#eff6ff;color:#246bfe}.status-badge.terminated{background:#fef2f2;color:#b91c1c}.history-card-body{display:flex;flex-direction:column;gap:12px;flex:1;margin-bottom:16px}.history-role-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background-color:#f1f5f9;color:#475569;border-radius:6px;font-size:11.5px;font-weight:700;width:fit-content}.history-role-icon{width:12px;height:12px;flex-shrink:0}.history-info-block{display:flex;flex-direction:column;gap:10px;background:#f8fafc;border-radius:10px;padding:12px 14px;border:1px solid #f1f5f9}.history-info-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#475569}.history-info-icon{width:14px;height:14px;color:#64748b;flex-shrink:0}.history-info-item span{font-weight:500}.history-info-item strong{color:#0f172a;font-weight:700}.history-card-footer{border-top:1px dashed #e2e8f0;padding-top:14px;display:flex;justify-content:flex-end}.history-card-footer button{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:13px;height:34px;padding:0 14px;border-radius:8px}.history-card-footer .button-icon{width:14px;height:14px;stroke-width:2.5}@media(max-width:620px){.history-grid{grid-template-columns:1fr}}.contract-terms-modal-overlay{position:fixed;inset:0;background-color:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000;padding:20px}.contract-terms-modal{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 10px 25px #0000001a;overflow:hidden}.contract-terms-modal .modal-header{padding:20px 24px;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;align-items:center}.contract-terms-modal .modal-header h3{margin:0;font-size:1.25rem;color:#1e293b}.contract-terms-modal .close-btn{background:none;border:none;font-size:1.5rem;color:#64748b;cursor:pointer;padding:0;line-height:1}.contract-terms-modal .close-btn:hover{color:#0f172a}.contract-terms-modal .modal-body{padding:24px;overflow-y:auto;flex:1}.contract-terms-modal .form-group{margin-bottom:20px}.contract-terms-modal .form-group label{display:block;margin-bottom:8px;font-weight:500;color:#334155;font-size:.95rem}.contract-terms-modal .form-group input{width:100%;padding:10px 12px;border:1px solid #cbd5e1;border-radius:6px;font-size:1rem;color:#0f172a;outline:none;transition:border-color .2s}.contract-terms-modal .form-group input:focus{border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.contract-terms-modal .form-group input:disabled{background-color:#f1f5f9;color:#64748b;cursor:not-allowed}.contract-terms-modal .help-text{display:block;margin-top:6px;font-size:.85rem;color:#64748b}.contract-terms-modal .modal-footer{padding:16px 24px;border-top:1px solid #e2e8f0;display:flex;justify-content:flex-end;gap:12px;background-color:#f8fafc}.landlord-request-detail-container{padding:24px;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a;margin-bottom:24px}.landlord-request-detail-page .overview-band{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:24px;padding:24px;border:1px solid #dbe3ef;border-radius:12px;background:#fff;box-shadow:0 1px 3px #00000008}.landlord-request-detail-page .overview-header-title-area{display:flex;flex-direction:row;align-items:center;gap:16px;flex:1}.landlord-request-detail-page .back-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:8px;background:#f1f5f9;color:#475569;border:1px solid #cbd5e1;cursor:pointer;transition:all .2s cubic-bezier(.4,0,.2,1);flex-shrink:0}.landlord-request-detail-page .back-icon-btn:hover{background:#e2e8f0;color:#0f172a;border-color:#94a3b8;transform:translate(-2px)}.landlord-request-detail-page .overview-left{display:flex;flex-direction:column;gap:6px;flex:1}.landlord-request-detail-page .overview-left h2{margin:4px 0 0;font-size:30px;font-weight:700;color:#0f172a}.landlord-request-detail-page .overview-right{display:flex;flex-direction:column;align-items:flex-end;gap:12px;justify-content:center}.landlord-request-detail-page .eyebrow{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin:0}.landlord-request-detail-page .overview-description{margin:0;font-size:14.5px;color:#64748b}.request-detail-body{display:flex;flex-direction:column;gap:24px}.request-info-card{background:#f8fafc;padding:20px;border-radius:8px;border:1px solid #e2e8f0}.request-info-card h3{margin-top:0;margin-bottom:16px;font-size:1.1rem;color:#334155;border-bottom:1px solid #e2e8f0;padding-bottom:8px}.info-box,.deposit-box,.contract-box{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;background:#fff;border:1px solid #e2e8f0;padding:16px;border-radius:8px}.request-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;width:100%}.info-item{display:flex;flex-direction:column;gap:4px}.info-item .label{font-size:.9rem;color:#64748b}.info-item .value{font-weight:500;color:#0f172a}.reject-reason-box{background-color:#fef2f2;border:1px solid #fca5a5;color:#991b1b;padding:16px;border-radius:8px;margin-bottom:24px}.status-badge{padding:6px 12px;border-radius:9999px;font-size:.85rem;font-weight:600;white-space:nowrap}.status-badge.pending{background:#fef3c7;color:#92400e}.status-badge.rejected,.status-badge.cancelled,.status-badge.expired,.status-badge.danger{background:#fee2e2;color:#991b1b}.status-badge.warning{background:#fef3c7;color:#92400e}.status-badge.neutral{background:#fff;color:#475569;border:1px solid #e2e8f0}.deposit-box.status-neutral,.contract-box.status-neutral{border-color:#e2e8f0;background:#fff}.deposit-box.status-warning,.contract-box.status-warning{border-color:#facc15;background:#fefce8}.deposit-box.status-success,.contract-box.status-success{border-color:#86efac;background:#f0fdf4}.deposit-box.status-danger,.contract-box.status-danger{border-color:#fca5a5;background:#fef2f2}.deposit-box.PendingPayment,.contract-box.WaitingTenantOccupants,.contract-box.PendingLandlordSignature,.contract-box.PendingTenantSignature,.contract-box.LandlordRevisionRequested,.contract-box.TenantRevisionRequested{border-color:#bfdbfe;background:#eff6ff}.deposit-box.Paid,.deposit-box.Refunded,.contract-box.Active{border-color:#86efac;background:#f0fdf4}.deposit-box.Forfeited,.contract-box.Rejected{border-color:#fca5a5;background:#fef2f2}.contract-box.NoContract{border-color:#e2e8f0;background:#f8fafc}.action-bar{display:flex;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #f1f5f9;flex-wrap:wrap}.approve-form{margin-top:16px;padding:16px;background-color:#f8fafc;border-radius:8px;border:1px solid #e2e8f0}.reject-form{margin-top:16px;padding:16px;background-color:#fef2f2;border-radius:8px;border:1px solid #fca5a5}.form-group{margin-bottom:12px}.form-group label{display:block;margin-bottom:8px;font-weight:500;color:#1e293b}.form-group textarea{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:6px;resize:vertical;font-family:inherit}.form-actions{display:flex;gap:8px;margin-top:16px}.chat-page{height:100vh;width:100%;background:#f4f7fb;color:#102033;overflow:hidden}.chat-shell{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);height:100vh;overflow:hidden}.chat-inbox{border-right:1px solid #dce6f3;background:#fff;min-width:0;display:flex;flex-direction:column;height:100vh;overflow:hidden}.chat-inbox__header{min-height:72px;padding:16px 20px;border-bottom:none;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0}.chat-inbox__heading{display:flex;flex-direction:column;gap:8px;min-width:0}.chat-inbox__home-btn{width:fit-content;display:inline-flex;align-items:center;gap:6px;border:none!important;background:transparent!important;color:#2563eb!important;font-size:13px!important;font-weight:700!important;padding:0!important;cursor:pointer}.chat-inbox__home-btn:hover{color:#1d4ed8!important;text-decoration:underline}.chat-inbox__title{margin:0;font-size:22px;font-weight:700;color:#1e293b}.chat-inbox__status{font-size:12px;color:#f59e0b;display:flex;align-items:center;gap:4px;margin-top:4px}.chat-inbox__status--online{color:#10b981}.chat-inbox__status-dot{width:6px;height:6px;border-radius:50%;background:currentColor;display:inline-block}.chat-inbox__new-group-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;border:none!important;background:#f1f5f9!important;color:#475569!important;cursor:pointer;transition:all .2s;flex-shrink:0;padding:0!important}.chat-inbox__new-group-btn:hover{background:#e2e8f0!important;color:#0f172a!important}.chat-inbox__search{padding:0 16px 12px;flex-shrink:0}.chat-inbox__search-wrap{position:relative;display:flex;align-items:center}.chat-inbox__search-icon{position:absolute;left:12px;color:#94a3b8;display:flex;align-items:center;pointer-events:none}.chat-inbox__search-input{width:100%;padding:8px 36px;border-radius:20px;border:1px solid #e2e8f0!important;font-size:14px;background:#f8fafc;color:#1e293b;outline:none;transition:all .2s;font:inherit}.chat-inbox__search-input:focus{border-color:#3b82f6!important;background:#fff;box-shadow:0 0 0 3px #3b82f61a}.chat-inbox__search-clear{position:absolute;right:12px;border:none!important;background:none!important;color:#94a3b8!important;cursor:pointer;font-size:16px;display:flex;align-items:center;padding:0!important;border-radius:0!important}.chat-inbox__tabs{display:flex;border-bottom:1px solid #e2e8f0;background:#f8fafc;flex-shrink:0}.chat-inbox__tab{flex:1;padding:12px 8px;border:none!important;background:none!important;font-size:.875rem;font-weight:500;color:#64748b!important;border-bottom:2px solid transparent!important;cursor:pointer;text-align:center;transition:all .2s;display:flex;align-items:center;justify-content:center;gap:6px;border-radius:0!important}.chat-inbox__tab--active{font-weight:600!important;color:#3b82f6!important;border-bottom-color:#3b82f6!important}.chat-inbox__tab-badge{background:#ef4444;color:#fff;border-radius:10px;padding:2px 6px;font-size:.75rem;font-weight:600;min-width:18px;text-align:center}.chat-conversation-list{display:flex;flex-direction:column;flex:1;overflow-y:auto;min-height:0}.chat-conversation-list__section-label{padding:8px 12px 4px;font-size:11px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.05em}.chat-conversation{width:100%;display:grid;grid-template-columns:44px minmax(0,1fr) auto auto;gap:12px;align-items:center;text-align:left;border:0!important;border-radius:0!important;border-bottom:1px solid #eef3fa!important;padding:12px 16px!important;cursor:pointer;position:relative;transition:background .15s;background:transparent}.chat-conversation:hover{background:#f8fafc}.chat-conversation.active{background:#eef5ff}.chat-conversation__options{position:relative;flex-shrink:0}.chat-conversation__options-trigger{width:28px;height:28px;border-radius:50%;border:none!important;background:transparent!important;color:#64748b!important;font-size:18px;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0!important;opacity:0;transition:opacity .2s ease,background .2s ease,color .2s ease;border-radius:50%!important}.chat-conversation:hover .chat-conversation__options-trigger,.chat-conversation__options-trigger:focus,.chat-conversation__options:focus-within .chat-conversation__options-trigger{opacity:1;background:#e2e8f0!important;color:#0f172a!important}.chat-conversation__menu{position:absolute;right:0;top:32px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;z-index:50;min-width:176px;overflow:hidden;padding:4px 0}.chat-conversation__menu-item{width:100%;text-align:left;border:none!important;border-radius:0!important;background:transparent!important;padding:8px 12px!important;font-size:13px!important;font-weight:500!important;color:#334155!important;cursor:pointer;transition:background .2s ease}.chat-conversation__menu-item:hover{background:#f8fafc!important}.chat-conversation__menu-item--danger{color:#ef4444!important}.chat-conversation__menu-item--danger:hover{background:#fef2f2!important}.chat-avatar{width:40px;height:40px;border-radius:50%;object-fit:cover;flex:0 0 auto}.chat-avatar--placeholder{display:grid;place-items:center;background:#246bfe;color:#fff;font-weight:800}.chat-conversation__body,.chat-conversation__meta{min-width:0;display:flex;flex-direction:column;gap:4px}.chat-conversation__title{font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:14px;color:#1e293b}.chat-conversation__preview,.chat-conversation__meta{color:#6a7a90;font-size:13px}.chat-conversation__preview{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-conversation__meta{align-items:flex-end;flex-shrink:0}.chat-conversation__meta strong{min-width:22px;height:22px;display:grid;place-items:center;border-radius:999px;background:#246bfe;color:#fff;font-size:12px}.chat-main{position:relative;min-width:0;display:flex;flex-direction:column;height:100vh;min-height:0;overflow:hidden}.chat-main__header{min-height:72px;padding:16px 20px;border-bottom:1px solid #e6edf7;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-shrink:0}.chat-main__header h2{margin:0;font-size:18px;font-weight:700;color:#1e293b}.chat-main__header p{margin:4px 0 0;color:#6a7a90;font-size:13px}.chat-main__title{display:flex;align-items:center;gap:12px;min-width:0}.chat-main__tools{display:flex;align-items:center;gap:8px;flex-shrink:0}.chat-accept-btn,.chat-reject-btn,.chat-members-btn{border:1px solid #d6e0ed;background:#fff;color:#1e3a5f;border-radius:8px;padding:7px 14px!important;font-weight:600;cursor:pointer;font-size:13px;transition:all .2s}.chat-accept-btn{background:#22c55e!important;border-color:#22c55e!important;color:#fff!important}.chat-accept-btn:hover{background:#16a34a!important}.chat-reject-btn{background:#ef4444!important;border-color:#ef4444!important;color:#fff!important}.chat-reject-btn:hover{background:#dc2626!important}.chat-members-btn:hover{border-color:#246bfe;color:#246bfe}.chat-content{position:relative;min-height:0;flex:1;display:block;height:100%;overflow:hidden}.chat-messages{height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;padding:20px;display:flex;flex-direction:column;gap:10px}.message-row{display:flex}.message-row.mine{justify-content:flex-end}.message-bubble{max-width:min(560px,78%);padding:10px 12px;border-radius:8px;background:#fff;border:1px solid #e1e9f4;display:flex;flex-direction:column;gap:4px}.message-row.mine .message-bubble{background:#246bfe;border-color:#246bfe;color:#fff}.message-bubble--icon{font-size:32px}.message-bubble img{max-width:320px;max-height:320px;border-radius:8px;object-fit:cover}.message-sender,.message-bubble small{font-size:12px;opacity:.72}.message-system-row{display:flex;justify-content:center;align-items:center;width:100%;margin:12px 0;padding:0 16px}.message-system-content{background:#f1f5f9;color:#64748b;font-size:12px;font-weight:500;padding:6px 12px;border-radius:12px;max-width:80%;text-align:center}.message-file-card{display:flex;align-items:center;gap:10px;padding:8px 4px;min-width:200px}.message-file-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.message-file-name{font-weight:600;font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.message-file-meta{font-size:11px;opacity:.72}.message-file-download{flex-shrink:0;width:30px;height:30px;border-radius:50%;border:1px solid rgba(255,255,255,.3)!important;background:#ffffff26!important;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0!important;transition:background .2s ease}.message-row:not(.mine) .message-file-download{border-color:#e2e8f0!important;background:#f1f5f9!important;color:#475569}.message-file-download:hover{background:#ffffff4d!important}.chat-composer{border-top:1px solid #eef2f6;background:#fff;padding:16px 20px;flex-shrink:0}.chat-emoji-row{display:flex;gap:8px;margin-bottom:12px}.chat-emoji-row button{width:32px;height:32px;padding:0;border:none!important;background:#f1f5f9!important;border-radius:50%!important;font-size:16px;display:flex;align-items:center;justify-content:center;transition:transform .2s ease,background .2s ease;cursor:pointer}.chat-emoji-row button:hover{transform:scale(1.15);background:#e2e8f0!important}.chat-composer__bar{display:flex;align-items:center;gap:12px}.chat-composer__input-container{flex:1;display:flex;align-items:center;background:#f1f5f9;border-radius:24px;padding:4px 16px;transition:box-shadow .2s ease,background .2s ease;border:1px solid #e2e8f0}.chat-composer__input-container:focus-within{background:#fff;box-shadow:0 0 0 2px #3b82f633;border-color:#3b82f6}.chat-composer__input-container input{flex:1;border:none!important;background:transparent!important;padding:8px 0!important;font-size:14px;color:#1e293b;outline:none!important;width:100%;box-shadow:none!important;font:inherit}.chat-composer__textarea{flex:1;border:none!important;background:transparent!important;padding:10px 0!important;font-size:14px;color:#1e293b;outline:none!important;width:100%;box-shadow:none!important;font:inherit;resize:none}.chat-image-button,.chat-file-button{width:38px;height:38px;border-radius:50%;background:#f1f5f9!important;color:#475569!important;border:none!important;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,color .2s ease;flex-shrink:0;padding:0!important}.chat-image-button:hover,.chat-file-button:hover{background:#e2e8f0!important;color:#0f172a!important}.chat-image-button input,.chat-file-button input{display:none}.chat-composer__send-btn{width:38px;height:38px;border-radius:50%;background:#3b82f6;color:#fff;border:none!important;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s ease,transform .2s ease;flex-shrink:0;padding:0!important}.chat-composer__send-btn:hover:not(:disabled){background:#2563eb;transform:scale(1.05)}.chat-composer__send-btn:disabled{background:#cbd5e1;color:#94a3b8;cursor:not-allowed}.chat-upload-spinner{width:16px;height:16px;border:2px solid #cbd5e1;border-top-color:#3b82f6;border-radius:50%;animation:chat-spin .7s linear infinite}@keyframes chat-spin{to{transform:rotate(360deg)}}.chat-empty,.chat-main__empty,.chat-composer__disabled{padding:24px;color:#66768c;text-align:center}.member-panel{position:absolute;top:12px;right:12px;bottom:12px;z-index:40;width:min(500px,calc(100% - 24px));max-height:calc(100% - 24px);border-left:1px solid #cbd5e1;border:1px solid #dbe3ef;border-radius:8px;background:#fff;box-shadow:0 24px 60px #0f172a2e;display:flex;flex-direction:column;overflow-y:auto}.chat-details-popover{position:absolute;top:12px;right:12px;bottom:12px;z-index:45;width:min(380px,calc(100% - 24px));max-height:calc(100% - 24px);overflow:hidden;border:1px solid #dbe3ef;border-radius:8px;background:#fff;box-shadow:0 24px 60px #0f172a2e}.chat-details-popover .chat-details-panel{width:100%!important;min-width:0!important;height:100%!important;border-left:0!important}.chat-popover-close{position:absolute;top:10px;right:10px;z-index:2;width:34px;height:34px;padding:0!important;border-radius:50%!important;font-size:20px!important;line-height:1}.member-panel header,.member-panel footer{padding:14px;display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #eef3fa}.member-panel header h3{margin:0!important;color:#102033;font-size:18px!important}.member-panel header p{margin:4px 0 0;color:#64748b;font-size:13px}.member-panel__header-actions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.member-panel__media-button{background:#eff6ff!important;border-color:#bfdbfe!important;color:#1d4ed8!important;white-space:nowrap}.member-panel__tab-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr) auto;gap:8px;margin-bottom:12px}.member-panel__tab-row--single{display:flex;justify-content:flex-end}.member-panel__tab-row button{min-height:40px;justify-content:center;white-space:nowrap}.member-panel__tab-row button.active{border-color:#bfdbfe!important;background:#eff6ff!important;color:#2563eb!important}.member-panel__add-button{min-height:34px!important;border-color:#3b82f6!important;background:#3b82f6!important;color:#fff!important;white-space:nowrap}.member-panel__add-button:hover{border-color:#2563eb!important;background:#2563eb!important}.member-panel__close{width:36px;height:36px;padding:0!important;border-radius:50%!important;font-size:20px;font-weight:800!important;line-height:1}.member-panel header button,.member-panel footer button,.member-panel select{min-height:36px}.member-panel button{padding:8px 12px!important;border-radius:8px!important;font-size:13px!important;line-height:1.2}.member-panel__close{padding:0!important;font-size:20px!important}.member-panel input[type=checkbox]{width:20px!important;height:20px!important;flex-shrink:0}.member-panel footer{border-bottom:0;border-top:1px solid #eef3fa}.member-list{overflow-y:auto;padding:10px;flex:1}.member-list>div,.chat-user-results button{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:center;gap:10px;width:100%;text-align:left}.member-list>div{min-height:58px;padding:10px!important;border:1px solid transparent;border-radius:8px}.member-list>div{display:grid!important;grid-template-columns:40px minmax(0,1fr) auto auto;gap:10px!important}.member-list>div:hover{border-color:#e2e8f0;background:#f8fafc}.member-list strong{display:block;min-width:0;overflow:hidden;color:#1e293b;font-size:14px!important;text-overflow:ellipsis;white-space:nowrap}.member-list .left{opacity:.55}.member-list small,.chat-user-results small{display:block;color:#6a7a90;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-panel [style*="font-size: 10px"]{font-size:11px!important}.member-panel [style*="font-size: 11px"]{font-size:12px!important}.member-panel [style*="padding: 6px"]{padding:10px 12px!important}.member-panel [style*="padding: 8px"]{padding:10px!important}.chat-approval-bar{border-top:1px solid #e2e8f0;background:#f8fafc;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}.chat-approval-bar--waiting{justify-content:center;background:#f1f5f9;color:#64748b;text-align:center;font-size:.95rem;font-weight:700}.chat-approval-bar__text{min-width:0;color:#334155;font-size:.95rem;font-weight:600;line-height:1.45}.chat-approval-bar__actions{display:flex;align-items:center;gap:12px;flex-shrink:0}.chat-approval-bar .chat-accept-btn,.chat-approval-bar .chat-reject-btn{min-width:116px;padding:10px 18px!important;border-radius:8px!important}.chat-main button,.chat-modal button,.member-panel button{border:1px solid #d6e0ed;background:#fff;color:#1e3a5f;border-radius:8px;padding:8px 12px;font-weight:700;cursor:pointer}.chat-main button:hover,.chat-modal button:hover,.member-panel button:hover{border-color:#246bfe}.chat-modal-backdrop{position:fixed;inset:0;background:#0f172a6b;display:grid;place-items:center;z-index:1000;padding:20px}.chat-modal{width:min(520px,100%);max-height:min(720px,90vh);background:#fff;border-radius:8px;padding:18px;display:flex;flex-direction:column;gap:12px}.chat-modal--wide{width:min(680px,100%)}.chat-modal header,.chat-modal footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.chat-modal h2{margin:0}.chat-user-results{overflow-y:auto;display:flex;flex-direction:column;gap:8px}.chat-user-results button.selected{border-color:#246bfe;background:#eef5ff}.chat-user-results .chat-user-results__select-all{position:sticky;top:0;z-index:1;display:flex;min-height:40px;align-items:center;justify-content:center;border-color:#bfdbfe;background:#eff6ff;color:#1d4ed8}.chat-user-results .chat-user-results__select-all:hover{border-color:#246bfe;background:#dbeafe}.chat-toast{position:fixed;right:20px;bottom:20px;max-width:420px;border:0!important;border-radius:8px;background:#ef4444!important;color:#fff!important;padding:12px 16px;box-shadow:0 12px 32px #0f172a33;cursor:pointer;z-index:9999}@media(max-width:900px){.chat-shell{grid-template-columns:1fr;grid-template-rows:240px minmax(0,1fr);height:100vh}.chat-inbox{height:240px;border-right:0;border-bottom:1px solid #dce6f3}.chat-main{height:100%;min-height:0}.chat-content{display:block}.member-panel{inset:10px;width:auto;max-height:calc(100% - 20px);border-left:1px solid #dce6f3;box-shadow:0 20px 48px #0f172a2e}.chat-approval-bar{align-items:stretch;flex-direction:column}.chat-approval-bar__actions{width:100%}.chat-approval-bar .chat-accept-btn,.chat-approval-bar .chat-reject-btn{flex:1}}.chat-group-menu-trigger{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:50%;background:transparent;color:#64748b;cursor:pointer;transition:background .15s,color .15s}.chat-group-menu-trigger:hover{background:#f1f5f9;color:#1e293b}.chat-group-menu-dropdown{position:absolute;top:calc(100% + 6px);right:0;min-width:190px;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 24px #0f172a1f;z-index:200;overflow:hidden;animation:fadeInDown .15s ease}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.chat-group-menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:10px 16px;border:none;background:transparent;font-size:14px;color:#1e293b;cursor:pointer;text-align:left;transition:background .12s}.chat-group-menu-item:hover{background:#f8fafc}.chat-group-menu-item--danger{color:#ef4444}.chat-group-menu-item--danger:hover{background:#fef2f2}.chat-accept-btn,.chat-reject-btn{padding:6px 14px;border-radius:8px;border:none;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s,transform .1s}.chat-accept-btn{background:#22c55e;color:#fff}.chat-accept-btn:hover{background:#16a34a}.chat-reject-btn{background:#f1f5f9;color:#ef4444;border:1px solid #fecaca}.chat-reject-btn:hover{background:#fef2f2}.chat-attachment-modal{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:24px;background:#0f172a75}.chat-attachment-modal__panel{width:min(760px,100%);max-height:min(720px,calc(100vh - 48px));display:flex;flex-direction:column;background:#fff;border-radius:12px;box-shadow:0 24px 80px #0f172a47;overflow:hidden}.chat-attachment-modal__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid #e2e8f0}.chat-attachment-modal__header h2{margin:0;font-size:18px;color:#0f172a}.chat-attachment-modal__header p{margin:4px 0 0;color:#64748b;font-size:13px}.chat-attachment-modal__close{width:32px;height:32px;display:grid;place-items:center;border:none!important;border-radius:50%!important;background:#f1f5f9!important;color:#334155!important;font-size:22px!important;line-height:1!important;cursor:pointer}.chat-attachment-modal__empty{padding:40px 20px;color:#64748b;text-align:center}.chat-attachment-modal__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;padding:16px;overflow-y:auto}.chat-attachment-modal__image{display:block;aspect-ratio:1;border-radius:8px;overflow:hidden;background:#f1f5f9}.chat-attachment-modal__image img{width:100%;height:100%;object-fit:cover;display:block}.chat-attachment-modal__files{display:flex;flex-direction:column;gap:8px;padding:16px;overflow-y:auto}.chat-attachment-modal__file{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #e2e8f0;border-radius:8px;color:#0f172a;text-decoration:none;background:#fff}.chat-attachment-modal__file:hover{background:#f8fafc;border-color:#cbd5e1}.chat-attachment-modal__file-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:8px;background:#e0f2fe;color:#0369a1;font-size:12px;font-weight:800;flex-shrink:0}.chat-attachment-modal__file strong,.chat-attachment-modal__file small{display:block}.chat-attachment-modal__file strong{font-size:14px;line-height:1.35;color:#0f172a}.chat-attachment-modal__file small{margin-top:3px;color:#64748b;font-size:12px}*{box-sizing:border-box}html{scrollbar-gutter:stable}@supports not (scrollbar-gutter: stable){html{overflow-y:scroll}}body{margin:0;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#162033;background:#f4f7fb}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:20px;overflow-x:hidden;overflow-y:auto;background:radial-gradient(circle at 2% 55%,rgba(96,165,250,.22) 0 140px,transparent 142px),radial-gradient(circle at 94% 6%,rgba(168,85,247,.18) 0 180px,transparent 182px),linear-gradient(135deg,#eef6ff,#f8fbff 48%,#f6f0ff);position:relative}.auth-page:before,.auth-page:after{content:"";position:absolute;pointer-events:none}.auth-page:before{width:520px;height:520px;left:-220px;bottom:-210px;border:1px solid rgba(96,165,250,.22);border-radius:999px}.auth-page:after{width:330px;height:330px;right:-72px;bottom:8%;border-radius:999px;background:repeating-radial-gradient(circle,rgba(124,58,237,.18) 0 1px,transparent 2px 11px);-webkit-mask-image:linear-gradient(to left,#000,transparent);mask-image:linear-gradient(to left,#000,transparent)}.auth-shell{position:relative;z-index:1;width:min(100%,1180px);min-height:560px;display:grid;grid-template-columns:minmax(0,.96fr) minmax(390px,1.04fr);overflow:hidden;border:1px solid rgba(255,255,255,.82);border-radius:32px;background:#ffffffd1;box-shadow:0 30px 90px #1d4ed824;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.auth-visual{min-height:560px;padding:0;overflow:hidden;background:#eef6ff}.auth-hero-image{width:100%;height:100%;min-height:560px;display:block;object-fit:cover}.auth-shell .auth-panel{width:100%;min-width:0;display:flex;flex-direction:column;justify-content:center;padding:36px clamp(28px,4vw,50px);background:radial-gradient(circle at 95% 7%,rgba(219,234,254,.55),transparent 34%),#fffffff0;border:0;border-radius:0;box-shadow:none}.auth-panel{width:min(100%,440px);padding:32px;background:#fff;border:1px solid #dce4ef;border-radius:8px;box-shadow:0 18px 50px #1f304c14}.eyebrow{margin:0 0 8px;color:#246bfe;font-size:13px;font-weight:700;text-transform:uppercase}.auth-panel-brand{display:inline-flex;align-items:center;gap:10px;margin-bottom:12px;color:#075efb;font-size:14px;font-weight:700;letter-spacing:0;text-transform:uppercase}.auth-panel-logo{width:28px;height:28px;display:inline-block;border-radius:8px;background:linear-gradient(135deg,#0b7bff,#084fe8);box-shadow:0 10px 24px #2563eb38;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 10.8 12 3l9 7.8V21h-6v-6H9v6H3V10.8Zm4 1.84V19h2v-6h6v6h2v-6.36L12 8.3l-5 4.34Z'/%3E%3C/svg%3E") center / contain no-repeat;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M3 10.8 12 3l9 7.8V21h-6v-6H9v6H3V10.8Zm4 1.84V19h2v-6h6v6h2v-6.36L12 8.3l-5 4.34Z'/%3E%3C/svg%3E") center / contain no-repeat}h1{margin:0;font-size:32px}.auth-panel h1{color:#0f1b34;font-size:clamp(30px,3vw,40px);line-height:1.04;font-weight:700}.subtle,.auth-note,.auth-subtitle{color:#64748b;line-height:1.6}.auth-subtitle{max-width:520px;margin:8px 0 18px;color:#697891;font-size:15px}.auth-page-compact .auth-shell,.auth-page-compact .auth-visual,.auth-page-compact .auth-hero-image{min-height:700px}.auth-page-compact .auth-shell .auth-panel{padding-top:24px;padding-bottom:24px}.auth-page-compact .auth-panel-brand{margin-bottom:10px}.auth-page-compact .auth-panel h1{font-size:clamp(30px,3vw,40px)}.auth-page-compact .auth-subtitle{margin:8px 0 12px;font-size:14px}.auth-page-compact .auth-form{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:12px;row-gap:10px;align-items:start}.auth-page-compact .ui-input{min-height:46px;font-size:15px}.auth-page-compact .auth-input-icon{padding-left:50px;background-position:17px center;background-size:21px 21px}.auth-page-compact .form-field{gap:6px}.auth-page-compact .form-field label{font-size:14px}.auth-page-compact .auth-submit-button{min-height:48px;font-size:16px}.auth-page-compact .auth-form>.form-field:first-child,.auth-page-compact .auth-form>.form-field:nth-child(2),.auth-page-compact .auth-form>.ui-button{grid-column:1 / -1}.auth-page-compact .subtle{margin-top:2px!important;font-size:.78rem!important;line-height:1.45}.status-bar{margin-top:20px;padding:12px;border-radius:6px;background:#edf6f3;color:#24564c;font-size:14px}.user-summary{margin:20px 0 0;display:grid;gap:12px}.user-summary div{display:grid;grid-template-columns:110px 1fr;gap:12px}.user-summary dt{color:#64748b}.user-summary dd{margin:0;font-weight:600;word-break:break-word}.ui-button{min-height:42px;border:0;border-radius:999px;padding:0 20px;font:inherit;font-weight:700;cursor:pointer}.ui-button:disabled{cursor:not-allowed;opacity:.65}.ui-button-primary{background:linear-gradient(135deg,#0878ff,#155dfc 58%,#3f29ff);color:#fff;box-shadow:0 16px 34px #2563eb47}.ui-button-secondary{background:#e8eef7;color:#172033}.ui-button-danger{background:#dc2626;color:#fff}.ui-button-outline{background:#fff;color:#1e293b;border:1px solid #e2e8f0;transition:all .2s}.ui-button-outline:hover,.ui-button-outline:active{border-color:#246bfe;color:#246bfe}.status-badge{padding:6px 12px;border-radius:999px;font-size:.85rem;font-weight:600;background:#f1f5f9;color:#475569;display:inline-block;white-space:nowrap}.status-badge.pending{background:#fef3c7;color:#d97706}.status-badge.accepted,.status-badge.success{background:#dcfce7;color:#166534}.status-badge.warning{background:#fffbeb;color:#92400e}.status-badge.danger,.status-badge.rejected,.status-badge.terminated{background:#fee2e2;color:#991b1b}.status-badge.neutral,.status-badge.cancelled,.status-badge.completed{background:#f1f5f9;color:#475569}.status-badge.active{background:#dcfce7;color:#166534}.ui-input{width:100%;min-height:46px;border:1.5px solid #cbd8ea;border-radius:11px;padding:0 16px;font:inherit;font-size:14px;color:#0f1b34;background:#fff;box-shadow:0 10px 26px #0f172a0a}.ui-input:focus{outline:4px solid rgba(37,99,235,.13);border-color:#1d5fff}.ui-input::placeholder{color:#93a1b6}.ui-textarea{min-height:96px;padding:10px 12px;resize:vertical}.ui-input-error{border-color:#dc2626}.form-field{display:flex;flex-direction:column;gap:6px}.form-field label{font-weight:500;font-size:14px;color:#0f1b34}.form-field-error{margin:0;color:#dc2626;font-size:13px}.alert{border-radius:12px;padding:10px 12px;font-size:14px}.alert-info{background:#eff6ff;color:#1d4ed8}.alert-success{background:#ecfdf5;color:#047857}.alert-error{background:#fef2f2;color:#b91c1c}.feedback-state{padding:16px;border-radius:6px;background:#f8fafc;color:#475569}.feedback-error{background:#fef2f2;color:#b91c1c}.auth-form{display:grid;gap:12px;margin-top:4px}.auth-input-icon{padding-left:48px;background-position:17px center;background-repeat:no-repeat;background-size:20px 20px}.auth-input-email{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%230b63ff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 7 9 6 9-6'/%3E%3C/svg%3E")}.auth-input-password{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%230b63ff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='5' y='10' width='14' height='10' rx='2'/%3E%3Cpath d='M8 10V7a4 4 0 0 1 8 0v3'/%3E%3Cpath d='M12 14v2'/%3E%3C/svg%3E")}.auth-input-user{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%230b63ff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 21a8 8 0 0 0-16 0'/%3E%3Ccircle cx='12' cy='8' r='4'/%3E%3C/svg%3E")}.auth-input-phone{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' fill='none' stroke='%230b63ff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.92v2a2 2 0 0 1-2.18 2A19.8 19.8 0 0 1 3.08 4.18 2 2 0 0 1 5.06 2h2a2 2 0 0 1 2 1.72c.12.9.32 1.78.6 2.62a2 2 0 0 1-.45 2.11L8.1 9.56a16 16 0 0 0 6.34 6.34l1.11-1.11a2 2 0 0 1 2.11-.45c.84.28 1.72.48 2.62.6A2 2 0 0 1 22 16.92Z'/%3E%3C/svg%3E")}.auth-password-field{position:relative}.auth-password-field .ui-input{padding-right:68px}.auth-password-toggle{position:absolute;top:50%;right:14px;transform:translateY(-50%);background:transparent;border:0;padding:6px;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;border-radius:50%}.auth-password-toggle:hover{color:#246bfe;background:#f1f5f9}.auth-password-toggle-icon{width:20px;height:20px}.auth-form-row{display:flex;align-items:center;justify-content:space-between;gap:14px;color:#26344f;font-size:14px}.auth-form-row a{color:#075efb;font-weight:500;text-decoration:none}.auth-form-row a:hover{text-decoration:underline}.auth-checkbox{display:inline-flex;align-items:center;gap:9px;font-weight:500}.auth-checkbox input{width:20px;height:20px;accent-color:#075efb}.auth-submit-button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;gap:14px;border-radius:11px;font-size:16px;width:100%;max-width:320px;margin:8px auto 0}.auth-divider{display:flex;align-items:center;gap:12px;margin:16px 0;color:#64748b;font-size:14px}.auth-divider:before,.auth-divider:after{content:"";height:1px;flex:1;background:#dbe3ef}.auth-links{display:flex;justify-content:space-between;gap:12px;margin-top:16px;font-size:15px}.auth-links a{color:#075efb;text-decoration:none;font-weight:600}.auth-links a:hover{text-decoration:underline}.auth-google-button{width:100%;display:flex;justify-content:center}.auth-google-button>div,.auth-google-button iframe{width:100%!important;max-width:none!important}.single-link{justify-content:flex-start}.auth-actions{display:flex;gap:12px;margin-top:16px}.kyc-panel{width:min(100%,720px)}.profile-panel{width:min(100%,680px)}.admin-panel{width:min(100%,1120px)}.admin-layout{display:grid;grid-template-columns:340px minmax(0,1fr);gap:18px;margin-top:20px}.admin-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:24px}.admin-action-card{display:grid;gap:8px;min-height:132px;border:1px solid #dbe3ef;border-radius:8px;padding:18px;background:#fff;color:#162033;font:inherit;text-align:left;cursor:pointer}.admin-action-card:hover{border-color:#246bfe;background:#eff6ff}.admin-action-card strong{font-size:20px}.admin-action-card span{color:#64748b;line-height:1.5}.admin-list,.admin-detail{min-width:0}.approval-list{display:grid;gap:10px}.approval-list-item{display:grid;gap:4px;width:100%;border:1px solid #dbe3ef;border-radius:6px;padding:12px;background:#fff;color:#162033;font:inherit;text-align:left;cursor:pointer}.approval-list-item:hover{border-color:#246bfe;background:#eff6ff}.approval-list-item span,.approval-list-item small{color:#64748b}.admin-detail-body{display:grid;gap:16px}.admin-detail-body h2{margin:0;font-size:22px}.admin-image-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-image-card{display:grid;gap:8px;color:#1d4ed8;font-weight:700;text-decoration:none}.admin-image-card img{width:100%;aspect-ratio:4 / 3;border-radius:6px;object-fit:cover;background:#e2e8f0}.admin-image-placeholder{min-height:180px;justify-content:center;border:1px dashed #cbd5e1;border-radius:6px;padding:16px;background:#f8fafc;color:#475569}.admin-image-placeholder small{color:#64748b;font-weight:500}.approval-panel{display:grid;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid #dbe3ef}.landlord-panel{width:min(100%,920px)}.landlord-stepper{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:22px}.landlord-section-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:22px}.landlord-section-tab{min-height:48px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#334155;font:inherit;font-weight:800;cursor:pointer}.landlord-section-tab.active{border-color:#246bfe;background:#eff6ff;color:#1d4ed8}.result-card{padding:16px;border:1px solid #dbe3ef;border-radius:6px;background:#fff}.result-card h2{margin:0;font-size:22px}.landlord-step{min-height:40px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#475569;font:inherit;font-size:13px;font-weight:700;cursor:pointer}.landlord-step.active{border-color:#246bfe;background:#eff6ff;color:#1d4ed8}.landlord-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.amenity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.checkbox-card{min-height:44px;display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid #dbe3ef;border-radius:6px;background:#fff;font-weight:600}.image-list{display:grid;gap:12px}.image-item{display:grid;grid-template-columns:120px minmax(0,1fr) 130px 80px;align-items:center;gap:12px;padding:12px;border:1px solid #dbe3ef;border-radius:6px;background:#fff}.image-item img,.legal-preview{width:100%;border-radius:6px;object-fit:cover;background:#e2e8f0}.image-item img{height:84px}.legal-preview{max-height:220px;margin-top:8px}.inline-check{display:inline-flex;align-items:center;gap:8px;color:#475569;font-size:14px;font-weight:700}.requirement-list{margin:0;padding-left:20px;display:grid;gap:8px}.requirement-list li{color:#b45309}.requirement-list li.done{color:#047857}.profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.profile-section{margin-top:28px;padding-top:20px;border-top:1px solid #dbe3ef}.mode-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:20px}.mode-tab{min-height:40px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#475569;font:inherit;font-weight:700;cursor:pointer}.mode-tab.active{border-color:#246bfe;background:#eff6ff;color:#1d4ed8}.compact-summary{padding:14px;border:1px solid #dbe3ef;border-radius:6px;background:#f8fafc}.kyc-stepper{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:20px 0 0}.kyc-step{min-height:38px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#475569;font:inherit;font-size:13px;cursor:pointer}.kyc-step.active{border-color:#246bfe;background:#eff6ff;color:#1d4ed8;font-weight:700}.kyc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.kyc-document-images{margin-top:24px;padding-top:20px;border-top:1px solid #e2e8f0}.kyc-document-images h2{margin:0 0 14px;color:#0f172a;font-size:18px}.kyc-document-images__grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.kyc-document-image{display:grid;grid-template-rows:minmax(150px,1fr) auto;min-width:0;margin:0;overflow:hidden;border:1px solid #dbe3ef;border-radius:10px;background:#f8fafc}.kyc-document-image>img{width:100%;height:180px;object-fit:contain;background:#eef2f7}.kyc-document-image>span{display:grid;place-items:center;min-height:150px;padding:12px;color:#64748b;text-align:center}.kyc-document-image figcaption{padding:10px 12px;color:#334155;font-size:13px;font-weight:700;text-align:center}@media(max-width:640px){.kyc-document-images__grid{grid-template-columns:1fr}}.file-input{padding:9px 12px}.webcam-panel{display:grid;gap:12px}.webcam-video,.webcam-preview{width:100%;max-height:320px;border-radius:6px;background:#0f172a;object-fit:cover}.section-title{margin-top:28px;font-size:20px}.history-list{list-style:none;padding:0;display:grid;gap:10px}.history-list li{display:grid;grid-template-columns:1fr 100px 120px 180px;gap:12px;padding:12px;border:1px solid #dbe3ef;border-radius:6px;background:#fff}.ui-link-button{min-height:42px;display:inline-flex;align-items:center;border-radius:999px;padding:0 20px;background:#246bfe;color:#fff;font-weight:700;text-decoration:none}@media(max-width:1180px){.auth-shell{grid-template-columns:1fr;max-width:680px;min-height:0}.auth-visual,.auth-hero-image{min-height:420px}.auth-shell .auth-panel{padding:36px clamp(24px,7vw,48px)}.auth-page-compact .auth-visual,.auth-page-compact .auth-hero-image{min-height:340px}}@media(max-height:780px)and (min-width:900px){.auth-page{padding:12px}.auth-shell{min-height:500px;width:min(100%,1100px)}.auth-visual,.auth-hero-image{min-height:500px}.auth-shell .auth-panel{padding-top:22px;padding-bottom:22px}.auth-panel h1{font-size:34px}.auth-subtitle{margin-bottom:10px}.auth-page-compact .auth-shell,.auth-page-compact .auth-visual,.auth-page-compact .auth-hero-image{min-height:650px}}@media(max-width:720px){.auth-page{padding:12px}.auth-shell{min-height:0;border-radius:22px}.auth-visual{min-height:auto}.auth-hero-image{min-height:230px}.auth-shell .auth-panel{padding:26px 18px 22px}.auth-panel h1{font-size:31px}.auth-subtitle{margin:8px 0 14px;font-size:14px}.auth-page-compact .auth-visual,.auth-page-compact .auth-hero-image{min-height:180px}.auth-page-compact .auth-form{grid-template-columns:1fr}.auth-page-compact .auth-form>.form-field:first-child,.auth-page-compact .auth-form>.form-field:nth-child(2),.auth-page-compact .auth-form>.ui-button{grid-column:auto}.auth-form-row,.auth-links{align-items:flex-start;flex-direction:column}.kyc-stepper,.kyc-grid,.profile-grid,.admin-layout,.admin-image-grid,.admin-action-grid,.landlord-section-tabs,.landlord-stepper,.landlord-grid,.amenity-grid,.image-item,.history-list li{grid-template-columns:1fr}.auth-actions{flex-direction:column}.mode-tabs{grid-template-columns:1fr}}.otp-input-container{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:12px;margin-bottom:8px}.otp-box{width:100%;aspect-ratio:1 / 1;min-height:48px;text-align:center;font-size:22px;font-weight:700;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#162033;outline:none;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.otp-box:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26;transform:translateY(-1px)}.otp-box:disabled{background:#f8fafc;color:#94a3b8;cursor:not-allowed}.otp-box.has-error{border-color:#dc2626}.otp-box.has-error:focus{box-shadow:0 0 0 3px #dc262626}.landlord-sidebar-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-right:4px}
