.apartment{padding:1.5rem}@media(max-width:767px){.apartment{padding:1rem}}.apartment__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.apartment__title{font-size:1.5rem;font-weight:700;color:#3d3d3d;margin:0}.apartment__actions{display:flex;gap:.75rem;flex-wrap:wrap}.apartment__action-button,.apartment__add-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s ease;outline:none;text-decoration:none;background:#f7f4f0;color:#3d3d3d;border:1px solid #e8e4df;padding:.5rem 1rem;font-size:.875rem}.apartment__action-button:disabled,.apartment__add-button:disabled{opacity:.5;cursor:not-allowed}.apartment__action-button:hover:not(:disabled),.apartment__add-button:hover:not(:disabled){background:#f0ede9;border-color:#d4cfc8}.apartment__content{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.08);padding:1.5rem}@media(max-width:767px){.apartment__content{padding:1rem}}.apartment__section{margin-bottom:1.5rem;padding-bottom:1.5rem;border-bottom:1px solid #f0ede9}.apartment__section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.apartment__section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;flex-wrap:wrap;gap:.75rem}.apartment__section-title{font-size:1.25rem;font-weight:600;color:#8b7355;margin-bottom:.5rem}.apartment__section-subtitle{font-size:.875rem;color:#6b6b6b}.apartment__info{display:flex;gap:1rem;padding:1rem;background:#f7f4f0;border-radius:8px;margin-bottom:.75rem}.apartment__info:last-child{margin-bottom:0}.apartment__info-icon{font-size:1.25rem;flex-shrink:0}.apartment__info-content{flex:1}.apartment__info-label{font-size:.875rem;font-weight:500;color:#6b6b6b;margin-bottom:.25rem}.apartment__info-value{font-size:1rem;color:#3d3d3d;line-height:1.6}.apartment__utility{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media(max-width:767px){.apartment__utility{grid-template-columns:1fr}}.apartment__utility-item{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.08);padding:1.25rem;text-align:center;background:linear-gradient(135deg,#fff,#f7f4f0);border:1px solid #f0ede9}.apartment__utility-item-header{display:flex;align-items:center;justify-content:center;gap:.5rem;margin-bottom:.75rem}.apartment__utility-item-icon{font-size:1.5rem}.apartment__utility-item-title{font-size:1rem;font-weight:500;color:#6b6b6b}.apartment__utility-item-rate{font-size:2rem;font-weight:700;color:#8b7355}.apartment__utility-item-unit{font-size:.875rem;font-weight:400;color:#9a9a9a;margin-left:.25rem}.apartment__utility-item-subtitle{font-size:.875rem;color:#6b6b6b;margin-top:.25rem}.apartment__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}@media(max-width:767px){.apartment__grid{grid-template-columns:1fr}}.apartment__list{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1rem}@media(max-width:767px){.apartment__list{grid-template-columns:1fr}}.apartment__card{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.08);padding:1.5rem;transition:transform .2s ease,box-shadow .2s ease;border:1px solid #f0ede9;overflow:hidden}.apartment__card:hover{transform:translateY(-2px);box-shadow:0 10px 15px rgba(0,0,0,.1)}.apartment__card--selected{border-color:#8b7355;box-shadow:0 0 0 2px rgba(139,115,85,.2)}.apartment__card-header{padding:1rem;background:linear-gradient(135deg,#8b7355,#6b5344);color:#fff}.apartment__card-header h3{font-size:1.125rem;font-weight:600;margin:0 0 .25rem}.apartment__card-branch{font-size:.75rem;opacity:.9;display:inline-block;padding:.25rem .5rem;background:hsla(0,0%,100%,.2);border-radius:4px}.apartment__card-image{width:100%;height:180px;background-color:#f7f4f0;overflow:hidden}.apartment__card-image img{width:100%;height:100%;object-fit:cover}.apartment__card-image-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#9a9a9a}.apartment__card-image-placeholder svg{font-size:48px;margin-bottom:.5rem}.apartment__card-image-placeholder span{font-size:.875rem}.apartment__card-content{padding:1rem}.apartment__card-content p{font-size:.875rem;color:#6b6b6b;margin:0 0 .5rem}.apartment__card-content p:last-child{margin-bottom:0}.apartment__card-content p strong{color:#3d3d3d;font-weight:500}.apartment__card-title{font-size:1.125rem;font-weight:600;color:#3d3d3d;margin-bottom:.5rem}.apartment__card-address{font-size:.875rem;color:#6b6b6b;margin-bottom:1rem;display:flex;align-items:flex-start;gap:.5rem}.apartment__card-address svg{flex-shrink:0;margin-top:2px}.apartment__card-stats{display:flex;justify-content:space-between;padding-top:1rem;border-top:1px solid #f0ede9}.apartment__card-stat{text-align:center}.apartment__card-stat-value{font-size:1.25rem;font-weight:700;color:#8b7355}.apartment__card-stat-label{font-size:.75rem;color:#9a9a9a}.apartment__card-actions,.apartment__card-footer{padding:1rem;background-color:#f7f4f0;display:flex;gap:.5rem}.apartment__card-button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;outline:none;text-decoration:none;background:#8b7355;color:#fff;padding:.5rem .75rem;font-size:.875rem}.apartment__card-button:disabled{opacity:.5;cursor:not-allowed}.apartment__card-button:hover:not(:disabled){background:#6b5344}.apartment__card-button:active:not(:disabled){transform:translateY(1px)}.apartment__card-button--secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;outline:none;text-decoration:none;background:#f7f4f0;color:#3d3d3d;border:1px solid #e8e4df}.apartment__card-button--secondary:disabled{opacity:.5;cursor:not-allowed}.apartment__card-button--secondary:hover:not(:disabled){background:#f0ede9;border-color:#d4cfc8}.apartment__card-button--edit{background:#d4a574;color:#fff;border:1px solid #d4a574}.apartment__card-button--edit:hover{background:#ca9155;border-color:#ca9155}.apartment__form{display:flex;flex-direction:column;gap:1rem}.apartment__form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}@media(max-width:767px){.apartment__form-row{grid-template-columns:1fr}}.apartment__form-group{display:flex;flex-direction:column;gap:.5rem}.apartment__form-group label{font-size:.875rem;font-weight:500;color:#6b6b6b}.apartment__form-input,.apartment__form-select,.apartment__form-textarea{width:100%;padding:.75rem 1rem;border:1px solid #e8e4df;border-radius:8px;font-size:.875rem;color:#3d3d3d;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.apartment__form-input::placeholder,.apartment__form-select::placeholder,.apartment__form-textarea::placeholder{color:#9a9a9a}.apartment__form-input:focus,.apartment__form-select:focus,.apartment__form-textarea:focus{outline:none;border-color:#8b7355;box-shadow:0 0 0 3px rgba(139,115,85,.1)}.apartment__form-input:disabled,.apartment__form-select:disabled,.apartment__form-textarea:disabled{background:#f7f4f0;cursor:not-allowed}.apartment__form-textarea{min-height:100px;resize:vertical}.apartment__form-actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1rem;padding-top:1rem;border-top:1px solid #f0ede9}.apartment__form-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;outline:none;text-decoration:none;background:#8b7355;color:#fff;padding:.75rem 1.25rem}.apartment__form-button:disabled{opacity:.5;cursor:not-allowed}.apartment__form-button:hover:not(:disabled){background:#6b5344}.apartment__form-button:active:not(:disabled){transform:translateY(1px)}.apartment__form-button--secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;outline:none;text-decoration:none;background:#f7f4f0;color:#3d3d3d;border:1px solid #e8e4df}.apartment__form-button--secondary:disabled{opacity:.5;cursor:not-allowed}.apartment__form-button--secondary:hover:not(:disabled){background:#f0ede9;border-color:#d4cfc8}.apartment__form-input--small{width:120px;flex-shrink:0}.apartment__form-hint{font-size:.75rem;color:#9a9a9a;margin:0;padding:0}.apartment__charges-list{display:flex;flex-direction:column;gap:.75rem}.apartment__charge-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:#f7f4f0;border-radius:8px;border:1px solid #f0ede9}@media(max-width:767px){.apartment__charge-item{flex-wrap:wrap}}.apartment__charge-item .apartment__form-input{margin:0}.apartment__charge-item .apartment__form-input:first-child{flex:1;min-width:150px}.apartment__charge-unit{font-size:.875rem;color:#9a9a9a;white-space:nowrap}.apartment__charge-remove{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;outline:none;text-decoration:none;background:transparent;color:#6b6b6b;color:#c67b7b;font-size:1.25rem;padding:.25rem .5rem;line-height:1;border-radius:4px}.apartment__charge-remove:disabled{opacity:.5;cursor:not-allowed}.apartment__charge-remove:hover:not(:disabled){background:#f0ede9;color:#3d3d3d}.apartment__charge-remove:hover{background:#fceaea}.apartment__charge-add{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s ease;outline:none;text-decoration:none;background:#f7f4f0;color:#3d3d3d;width:100%;padding:.75rem;font-size:.875rem;border:1px dashed #e8e4df}.apartment__charge-add:disabled{opacity:.5;cursor:not-allowed}.apartment__charge-add:hover:not(:disabled){background:#f0ede9;border-color:#d4cfc8}.apartment__charge-add:hover{border-style:solid}.apartment__modal{position:fixed;top:0;left:0;right:0;bottom:0;background-color:rgba(0,0,0,.5);display:flex;align-items:center;justify-content:center;z-index:500;backdrop-filter:blur(2px);padding:1rem}.apartment__modal-content{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.08);padding:1.5rem;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;animation:slideUp .3s ease}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.apartment__modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.25rem;padding-bottom:1rem;border-bottom:1px solid #f0ede9}.apartment__modal-header h3{font-size:1.25rem;font-weight:600;color:#8b7355;margin:0}.apartment__modal-close{display:inline-flex;gap:.5rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;outline:none;text-decoration:none;background:transparent;color:#6b6b6b;font-size:1.5rem;color:#9a9a9a;padding:.25rem;line-height:1;width:32px;height:32px;border-radius:9999px;display:flex;align-items:center;justify-content:center}.apartment__modal-close:disabled{opacity:.5;cursor:not-allowed}.apartment__modal-close:hover,.apartment__modal-close:hover:not(:disabled){background:#f0ede9;color:#3d3d3d}.apartment__loading{display:flex;align-items:center;justify-content:center;padding:2.5rem 0;min-height:50vh}.apartment__loading img{width:48px;height:48px}.apartment__error{color:#c67b7b;text-align:center;padding:1rem;background:#fceaea;border-radius:8px;margin-bottom:1rem}.apartment__empty{text-align:center;padding:2.5rem;color:#9a9a9a;background:#f7f4f0;border-radius:12px}.apartment__empty p{margin:0 0 .5rem}.apartment__empty p:last-child{margin-bottom:0}.apartment__empty-icon{font-size:64px;margin-bottom:1rem;opacity:.5}.apartment__empty-text{font-size:1.125rem;margin-bottom:1rem}.apartment__empty-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;outline:none;text-decoration:none;background:#8b7355;color:#fff}.apartment__empty-button:disabled{opacity:.5;cursor:not-allowed}.apartment__empty-button:hover:not(:disabled){background:#6b5344}.apartment__empty-button:active:not(:disabled){transform:translateY(1px)}.apartment-detail{padding:1.5rem}@media(max-width:767px){.apartment-detail{padding:1rem}}.apartment-detail__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem;flex-wrap:wrap;gap:1rem}.apartment-detail__back-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;outline:none;text-decoration:none;background:transparent;color:#6b6b6b;color:#8b7355;padding:.5rem 0}.apartment-detail__back-button:disabled{opacity:.5;cursor:not-allowed}.apartment-detail__back-button:hover:not(:disabled){background:#f0ede9;color:#3d3d3d}.apartment-detail__back-button:hover{text-decoration:underline}.apartment-detail__title{font-size:1.5rem;font-weight:700;color:#3d3d3d}.apartment-detail__actions{display:flex;gap:.75rem}.apartment-detail__info{display:grid;grid-template-columns:350px 1fr;gap:1.5rem;margin-bottom:1.5rem}@media(max-width:1199px){.apartment-detail__info{grid-template-columns:1fr}}.apartment-detail__image-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.08);padding:0;overflow:hidden}.apartment-detail__image{width:100%;height:250px;object-fit:cover}.apartment-detail__image-placeholder{width:100%;height:250px;background:#f7f4f0;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#9a9a9a}.apartment-detail__image-placeholder svg{font-size:64px;margin-bottom:.75rem}.apartment-detail__details-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.08);padding:1.5rem}.apartment-detail__detail-item{display:flex;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #f0ede9}.apartment-detail__detail-item:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.apartment-detail__detail-label{width:150px;font-weight:500;color:#6b6b6b;font-size:.875rem}.apartment-detail__detail-value{flex:1;color:#3d3d3d;font-size:.875rem}.apartment-detail__stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:1.5rem}@media(max-width:1199px){.apartment-detail__stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:767px){.apartment-detail__stats{grid-template-columns:1fr}}.apartment-detail__stat-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.08);text-align:center;padding:1.25rem}.apartment-detail__stat-icon{font-size:32px;margin-bottom:.75rem;color:#8b7355}.apartment-detail__stat-value{font-size:1.5rem;font-weight:700;color:#3d3d3d;margin-bottom:.25rem}.apartment-detail__stat-label{font-size:.875rem;color:#9a9a9a}.apartment-form{padding:1.5rem}@media(max-width:767px){.apartment-form{padding:1rem}}.apartment-form__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}.apartment-form__title{font-size:1.5rem;font-weight:700;color:#3d3d3d}.apartment-form__content{background:#fff;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.08);padding:1.5rem}.apartment-form__section{margin-bottom:2rem}.apartment-form__section:last-child{margin-bottom:0}.apartment-form__section-title{font-size:1.125rem;font-weight:600;color:#8b7355;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid #f0ede9}.apartment-form__form-row{display:flex;gap:1rem;margin-bottom:1.25rem}@media(max-width:767px){.apartment-form__form-row{flex-direction:column}}.apartment-form__form-group{flex:1;margin-bottom:1.25rem}.apartment-form__form-group:last-child{margin-bottom:0}.apartment-form__form-label{display:block;margin-bottom:.5rem;font-weight:500;color:#6b6b6b;font-size:.875rem}.apartment-form__form-input,.apartment-form__form-select,.apartment-form__form-textarea{width:100%;padding:.75rem 1rem;border:1px solid #e8e4df;border-radius:8px;font-size:.875rem;color:#3d3d3d;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.apartment-form__form-input::placeholder,.apartment-form__form-select::placeholder,.apartment-form__form-textarea::placeholder{color:#9a9a9a}.apartment-form__form-input:focus,.apartment-form__form-select:focus,.apartment-form__form-textarea:focus{outline:none;border-color:#8b7355;box-shadow:0 0 0 3px rgba(139,115,85,.1)}.apartment-form__form-input:disabled,.apartment-form__form-select:disabled,.apartment-form__form-textarea:disabled{background:#f7f4f0;cursor:not-allowed}.apartment-form__form-textarea{min-height:120px;resize:vertical}.apartment-form__image-upload{border:2px dashed #e8e4df;border-radius:8px;padding:2rem;text-align:center;background:#f7f4f0;cursor:pointer;transition:all .2s ease}.apartment-form__image-upload:hover{border-color:#8b7355;background:#f0ede9}.apartment-form__image-upload input{display:none}.apartment-form__image-upload-icon{font-size:48px;color:#9a9a9a;margin-bottom:.75rem}.apartment-form__image-upload-text{font-size:.875rem;color:#6b6b6b}.apartment-form__image-upload-preview{max-width:200px;max-height:150px;margin:0 auto;border-radius:8px;object-fit:cover}.apartment-form__actions{display:flex;justify-content:flex-end;gap:.75rem;margin-top:1.5rem;padding-top:1.5rem;border-top:1px solid #f0ede9}.apartment-form__cancel-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;outline:none;text-decoration:none;background:#f7f4f0;color:#3d3d3d;border:1px solid #e8e4df}.apartment-form__cancel-button:disabled{opacity:.5;cursor:not-allowed}.apartment-form__cancel-button:hover:not(:disabled){background:#f0ede9;border-color:#d4cfc8}.apartment-form__submit-button{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1rem;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;border:none;outline:none;text-decoration:none;background:#8b7355;color:#fff}.apartment-form__submit-button:disabled{opacity:.5;cursor:not-allowed}.apartment-form__submit-button:hover:not(:disabled){background:#6b5344}.apartment-form__submit-button:active:not(:disabled){transform:translateY(1px)}.apartment__charges-view{display:flex;flex-direction:column;gap:.75rem;background:#f7f4f0;padding:1rem;border-radius:8px}.apartment__charge-view-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem 1rem;background:#fff;border-radius:8px;box-shadow:0 1px 3px rgba(0,0,0,.1)}.apartment__charge-view-name{font-size:.875rem;color:#3d3d3d;font-weight:500}.apartment__charge-view-amount{font-size:1rem;font-weight:600;color:#8b7355}