:root{--ink:#18231f;--muted:#66736d;--line:#e2e8e5;--surface:#fff;--surface-soft:#f6f8f7;--canvas:#f0f4f2;--brand:#1d5946;--brand-dark:#123d30;--brand-soft:#e4f0eb;--gold:#bd8a35;--danger:#a84141;--shadow:0 12px 36px #15362b14}*{box-sizing:border-box}html{background:var(--canvas)}body{color:var(--ink);background:var(--canvas);-webkit-font-smoothing:antialiased;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}.login-shell{background:var(--surface);grid-template-columns:minmax(0,1.15fr) minmax(420px,.85fr);min-height:100vh;display:grid}.login-visual{color:#fff;background:linear-gradient(145deg,#0a3125f5,#1d5946d1),radial-gradient(circle at 20% 15%,#8fac9f 0,#0000 32%),#174b3a;align-items:flex-end;min-height:100vh;padding:clamp(32px,6vw,88px);display:flex;position:relative;overflow:hidden}.login-visual:before,.login-visual:after{content:"";border:1px solid #ffffff24;border-radius:50%;position:absolute}.login-visual:before{width:440px;height:440px;top:-170px;right:-110px}.login-visual:after{width:240px;height:240px;top:-70px;right:-10px}.login-story{z-index:1;max-width:640px;position:relative}.eyebrow{color:var(--brand);letter-spacing:.14em;text-transform:uppercase;margin:0 0 12px;font-size:.75rem;font-weight:800}.login-visual .eyebrow{color:#c9dfd5}.login-story h1{letter-spacing:-.055em;max-width:580px;margin:0 0 20px;font-family:Georgia,Times New Roman,serif;font-size:clamp(3rem,7vw,6.6rem);font-weight:500;line-height:.93}.login-story p:last-child{color:#ffffffb8;max-width:520px;margin:0;font-size:1.05rem;line-height:1.7}.login-panel{place-items:center;min-height:100vh;padding:32px;display:grid}.login-card{width:min(100%,420px)}.brand-mark{color:#fff;background:var(--brand);border-radius:15px;place-items:center;width:48px;height:48px;margin-bottom:28px;display:inline-grid;box-shadow:0 8px 22px #1d594647}.login-card h2{letter-spacing:-.04em;margin:0 0 8px;font-size:2rem}.login-card>p{color:var(--muted);margin:0 0 30px;line-height:1.6}.auth-helper-link{color:var(--brand);justify-self:center;font-size:.92rem;font-weight:750}.auth-helper-link:hover{color:var(--brand-dark);text-underline-offset:4px;text-decoration:underline}.app-shell{grid-template-columns:248px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#ffffffc2;background:var(--brand-dark);flex-direction:column;height:100vh;padding:24px 18px;display:flex;position:sticky;top:0}.sidebar-brand{color:#fff;letter-spacing:-.025em;align-items:center;gap:12px;padding:4px 8px 26px;font-weight:760;display:flex}.sidebar-brand .brand-mark{width:38px;height:38px;color:var(--brand-dark);box-shadow:none;background:#e2efe9;border-radius:12px;margin:0}.sidebar-label{color:#ffffff61;letter-spacing:.12em;text-transform:uppercase;margin:18px 10px 9px;font-size:.68rem;font-weight:800}.nav-list{gap:4px;display:grid}.nav-item,.logout-button{width:100%;color:inherit;cursor:pointer;text-align:left;background:0 0;border:0;border-radius:10px;align-items:center;gap:11px;padding:11px 12px;transition:color .16s,background .16s;display:flex}.nav-item:hover,.logout-button:hover{color:#fff;background:#ffffff12}.expense-nav-group{gap:4px;display:grid}.expense-access-control{background:#ffffff0e;border:1px solid #ffffff17;border-radius:11px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 10px;margin:0 4px 6px 12px;padding:10px 10px 10px 12px;display:grid}.expense-access-control.enabled{background:#87ccac17;border-color:#aee0c72b}.expense-access-copy{gap:2px;min-width:0;display:grid}.expense-access-copy span{color:#ffffff8c;font-size:.61rem;font-weight:720;line-height:1.25}.expense-access-copy strong{color:#fff;font-size:.72rem;font-weight:820}.expense-access-control.enabled .expense-access-copy strong{color:#c8ead9}.expense-access-control.disabled .expense-access-copy strong{color:#edc6b8}.expense-access-switch{cursor:pointer;background:#ffffff29;border:1px solid #ffffff29;border-radius:999px;width:40px;height:23px;padding:0;transition:background .16s,border-color .16s,box-shadow .16s;position:relative}.expense-access-switch span{background:#fff;border-radius:50%;width:15px;height:15px;transition:transform .16s;position:absolute;top:3px;left:3px;box-shadow:0 2px 6px #051a1359}.expense-access-control.enabled .expense-access-switch{background:#4da979;border-color:#70c493}.expense-access-control.enabled .expense-access-switch span{transform:translate(17px)}.expense-access-switch:hover:not(:disabled),.expense-access-switch:focus-visible{outline:none;box-shadow:0 0 0 3px #bce6d02e}.expense-access-switch:disabled{cursor:wait;opacity:.6}.expense-access-error{color:#f2c6bd;grid-column:1/-1;font-size:.62rem;line-height:1.35}.sidebar-footer{border-top:1px solid #ffffff1a;margin-top:auto;padding-top:20px}.user-chip{align-items:center;gap:10px;padding:0 10px 14px;display:flex}.avatar{width:34px;height:34px;color:var(--brand-dark);background:#d9eae2;border-radius:50%;flex:none;place-items:center;font-size:.78rem;font-weight:800;display:grid}.user-chip strong,.user-chip small{text-overflow:ellipsis;white-space:nowrap;max-width:142px;display:block;overflow:hidden}.user-chip strong{color:#fff;font-size:.8rem}.user-chip small{color:#ffffff73;margin-top:2px;font-size:.68rem}.main-shell{min-width:0}.topbar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffffd1;border-bottom:1px solid #dce4e0d6;justify-content:space-between;align-items:center;gap:20px;min-height:68px;padding:14px clamp(20px,4vw,52px);display:flex}.topbar p{color:var(--muted);margin:0;font-size:.86rem}.topbar strong{color:var(--ink)}.content{width:min(100%,1480px);margin:0 auto;padding:clamp(26px,4vw,52px)}.page-header{justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:28px;display:flex}.page-header h1{letter-spacing:-.05em;margin:0;font-size:clamp(1.8rem,3vw,2.5rem)}.page-header p:last-child{max-width:680px;color:var(--muted);margin:9px 0 0;line-height:1.55}.button{color:#fff;background:var(--brand);border:1px solid var(--brand);cursor:pointer;white-space:nowrap;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:10px 15px;font-weight:750;transition:transform .16s,box-shadow .16s,background .16s;display:inline-flex}.button:hover{background:var(--brand-dark);transform:translateY(-1px);box-shadow:0 8px 20px #123d302b}.button.secondary{color:var(--ink);background:var(--surface);border-color:var(--line)}.button.secondary:hover{background:var(--surface-soft);box-shadow:none}.button.full{width:100%}.button:disabled{cursor:not-allowed;opacity:.58;box-shadow:none;transform:none}.field{gap:7px;display:grid}.field label{color:#37453f;font-size:.79rem;font-weight:750}.field small{color:var(--muted);font-size:.72rem}.field-conflict label{color:#8c5a17}.field-conflict .input,.field-conflict .select,.field-conflict .textarea{border-color:#d6a64e;box-shadow:0 0 0 3px #d6a64e24}.required{color:var(--danger)}.input,.select,.textarea{width:100%;min-height:43px;color:var(--ink);background:var(--surface);border:1px solid #d9e1dd;border-radius:9px;outline:none;padding:10px 12px;transition:border .16s,box-shadow .16s}.textarea{resize:vertical;min-height:96px}.textarea.expense-history{min-height:190px}.input:focus,.select:focus,.textarea:focus{border-color:#78a391;box-shadow:0 0 0 3px #2c70571f}.select:disabled{color:#5f6c66;cursor:not-allowed;opacity:1;background:#f2f5f3}.localized-date{position:relative}.localized-date .input{padding-right:42px}.calendar-trigger,.calendar-nav{color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;display:grid}.calendar-trigger{width:33px;height:33px;position:absolute;top:5px;right:5px}.calendar-trigger:hover,.calendar-nav:hover{color:var(--brand);background:var(--surface-soft)}.calendar-popover{z-index:30;background:var(--surface);border:1px solid var(--line);border-radius:12px;width:min(310px,100vw - 40px);padding:12px;position:absolute;top:calc(100% + 7px);right:0;box-shadow:0 16px 40px #123d302e}.calendar-header,.calendar-actions{justify-content:space-between;align-items:center;display:flex}.calendar-header{margin-bottom:10px}.calendar-header strong{color:var(--ink);text-transform:lowercase;font-size:.82rem;font-weight:800}.calendar-nav{width:32px;height:32px}.calendar-weekdays,.calendar-days{grid-template-columns:repeat(7,1fr);display:grid}.calendar-weekdays span{color:var(--muted);text-align:center;padding:5px 0;font-size:.66rem;font-weight:800}.calendar-day{aspect-ratio:1;color:var(--ink);cursor:pointer;background:0 0;border:0;border-radius:8px;font-size:.75rem}.calendar-day:hover{color:var(--brand);background:var(--surface-soft)}.calendar-day.outside{color:#b1bab5}.calendar-day.today{box-shadow:inset 0 0 0 1px #9ab8aa}.calendar-day.selected{color:#fff;background:var(--brand);box-shadow:none;font-weight:800}.calendar-actions{border-top:1px solid var(--line);margin-top:9px;padding-top:9px}.calendar-actions button{color:var(--brand);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 7px;font-size:.73rem;font-weight:800}.calendar-actions button:hover{background:var(--surface-soft)}.localized-datetime{grid-template-columns:minmax(0,1.7fr) minmax(80px,1fr);gap:7px;display:grid}.currency-input{position:relative}.currency-input span{z-index:1;color:var(--muted);font-size:.76rem;font-weight:800;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.currency-input .input{padding-left:36px}.currency-input .input:read-only{color:#53625b;background:var(--surface-soft);cursor:default}.alert{color:#70403d;background:#fff2ef;border:1px solid #f1d2cc;border-radius:10px;margin-bottom:22px;padding:12px 14px;font-size:.86rem;line-height:1.5}.alert.info{color:#315a4b;background:#edf6f2;border-color:#d2e7de}.account-label,.account-email{display:block}.account-label{color:#5e766b;letter-spacing:.1em;text-transform:uppercase;margin-bottom:3px;font-size:.68rem;font-weight:850}.account-email{color:#183d31;overflow-wrap:anywhere;font-size:.93rem}.stats-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:28px;display:grid}.stat-card{background:var(--surface);border:1px solid var(--line);min-height:150px;box-shadow:var(--shadow);border-radius:14px;padding:22px;position:relative;overflow:hidden}.stat-icon{width:38px;height:38px;color:var(--brand);background:var(--brand-soft);border-radius:11px;place-items:center;margin-bottom:20px;display:grid}.stat-card strong{letter-spacing:-.055em;margin-bottom:4px;font-size:2rem;display:block}.stat-card span{color:var(--muted);font-size:.82rem;font-weight:650}.site-cms-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:28px;display:grid}.site-cms-card{background:var(--surface);border:1px solid var(--line);min-height:210px;box-shadow:var(--shadow);border-radius:14px;padding:22px}.site-cms-icon{width:34px;height:34px;color:var(--accent);background:#edf6f2;border:1px solid #d2e7de;border-radius:10px;place-items:center;margin-bottom:16px;display:inline-grid}.site-cms-card h2{letter-spacing:-.025em;margin:0 0 10px;font-size:1.02rem}.site-cms-card p{color:var(--muted);margin:0 0 8px;font-size:.82rem;line-height:1.55}.site-cms-status{color:#315a4b;background:#edf6f2;border:1px solid #d2e7de;border-radius:999px;margin-top:6px;padding:5px 9px;font-size:.72rem;font-weight:700;display:inline-flex}.site-cms-link{margin-top:14px}.panel,.form-section{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px}.panel-header,.section-heading{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:20px;padding:20px 22px;display:flex}.panel-header h2,.section-heading h2{letter-spacing:-.025em;margin:0;font-size:1.02rem}.panel-header p,.section-heading p{color:var(--muted);margin:5px 0 0;font-size:.78rem;line-height:1.5}.occupancy-panel{margin-bottom:28px;overflow:visible}.occupancy-header{align-items:flex-end}.occupancy-header h2{align-items:center;gap:8px;display:flex}.occupancy-controls{flex-wrap:wrap;justify-content:flex-end;align-items:flex-end;gap:9px;display:flex}.occupancy-date-field{gap:5px;display:grid}.occupancy-date-field label{color:#596760;font-size:.68rem;font-weight:800}.occupancy-controls .input{min-height:38px;padding:7px 9px;font-size:.76rem}.occupancy-controls .button{min-height:38px;padding:8px 12px;font-size:.76rem}.occupancy-legend{color:var(--muted);border-bottom:1px solid var(--line);background:#fafbfa;flex-wrap:wrap;align-items:center;gap:18px;padding:11px 22px;font-size:.72rem;font-weight:700;display:flex}.occupancy-legend-item{align-items:center;gap:7px;display:inline-flex}.occupancy-swatch{background:#f4f6f5;border:1px solid #dfe5e2;border-radius:4px;width:12px;height:12px}.occupancy-swatch.pre_reserva,.occupancy-table td.pre_reserva .occupancy-slot{background:#f3dfad;border-color:#dfbd6d}.occupancy-swatch.confirmada,.occupancy-table td.confirmada .occupancy-slot,.occupancy-table td.hospedado .occupancy-slot{background:#9fd0b7;border-color:#6ead8d}.occupancy-swatch.bloqueio,.occupancy-table td.bloqueio .occupancy-slot{background:#e5a4a4;border-color:#c66f6f}.occupancy-table-wrap{overflow-x:auto}.occupancy-table{border-spacing:0;border-collapse:separate;min-width:100%}.occupancy-table th,.occupancy-table td{border-bottom:1px solid #edf0ee;border-right:1px solid #edf0ee;padding:0}.occupancy-table thead th{color:#77827d;text-align:center;background:#fafbfa;min-width:54px;padding:10px 7px}.occupancy-table thead th:first-child,.occupancy-table tbody th{z-index:2;background:var(--surface);text-align:left;min-width:148px;padding:12px 15px;position:sticky;left:0}.occupancy-table thead th:first-child{z-index:3;letter-spacing:.08em;text-transform:uppercase;background:#fafbfa;font-size:.68rem}.occupancy-table thead span,.occupancy-table thead strong,.occupancy-table tbody th span,.occupancy-table tbody th strong{display:block}.occupancy-table thead span{text-transform:uppercase;margin-bottom:3px;font-size:.62rem;font-weight:750}.occupancy-table thead strong{color:#3f4b46;font-size:.7rem}.occupancy-table thead th.weekend{color:#416b5b;background:#eef5f1}.occupancy-table thead th.weekend span,.occupancy-table thead th.weekend strong{color:#285c49;font-weight:850}.occupancy-table tbody th strong{font-size:.78rem}.occupancy-table tbody th span{max-width:120px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:.62rem;font-weight:500;overflow:hidden}.occupancy-table td{background:var(--surface);min-width:54px;padding:5px}.occupancy-slot{background:#f4f6f5;border:1px solid #e2e7e4;border-radius:6px;min-height:38px;display:block}.occupancy-slot-link{cursor:pointer;transition:box-shadow .15s,filter .15s,transform .15s}.occupancy-slot-link:hover,.occupancy-slot-link:focus-visible{filter:brightness(.97);transform:translateY(-1px);box-shadow:0 0 0 2px #2c70572e}.occupancy-slot-link:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.occupancy-table .today{box-shadow:inset 0 3px 0 var(--brand)}.occupancy-table tbody tr:last-child th,.occupancy-table tbody tr:last-child td{border-bottom:0}.table-wrap{overflow-x:auto}.data-table{border-collapse:collapse;width:100%}.data-table th,.data-table td{text-align:left;white-space:nowrap;border-bottom:1px solid #edf0ee;padding:14px 18px}.data-table th{color:#77827d;letter-spacing:.08em;text-transform:uppercase;background:#fafbfa;font-size:.68rem;font-weight:850}.data-table td{color:#3f4b46;font-size:.82rem}.data-table tr:last-child td{border-bottom:0}.table-primary{color:var(--ink);font-weight:750;display:block}.table-secondary{color:var(--muted);margin-top:3px;font-size:.7rem;display:block}.reservation-row-cancelled td,.reservation-row-cancelled .table-primary,.reservation-row-cancelled .table-secondary{color:#a24848}.reservation-row-cancelled .reservation-client-cancelled{text-decoration:line-through;text-decoration-thickness:1.5px}.reservation-row-pre-reserved td,.reservation-row-pre-reserved .table-primary,.reservation-row-pre-reserved .table-secondary{color:#7a5726}.status{color:#315e4d;text-transform:capitalize;background:#e9f3ee;border-radius:999px;align-items:center;gap:6px;padding:5px 8px;font-size:.68rem;font-weight:800;display:inline-flex}.status:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px}.status.pre_reserva{color:#8a641e;background:#f8f0de}.status.cancelada,.status.expirada,.status.cancelado{color:#934c4c;background:#f8eaea}.status.agendado{color:#a33a3a;background:#fbe4e4}.status.bloqueio{color:#5d5d68;background:#ededf0}.visibility{color:#315e4d;white-space:nowrap;background:#e9f3ee;border-radius:999px;padding:5px 8px;font-size:.68rem;font-weight:800;display:inline-flex}.visibility.restrito_admin{color:#754f25;background:#f7ecdc}.expense-table{table-layout:fixed}.expense-table th,.expense-table td{padding:12px 10px}.expense-col-date{width:88px}.expense-col-category{width:130px}.expense-col-details{width:auto}.expense-col-value{width:108px}.expense-col-status{width:104px}.expense-col-visibility{width:92px}.expense-col-action{width:188px}.expense-cell-truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.expense-details-cell{min-width:0}.expense-table-meta{color:var(--muted);grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:5px;font-size:.66rem;display:grid}.expense-table-meta span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.expense-attachment-count{color:var(--brand);background:var(--brand-soft);border-radius:999px;align-items:center;gap:4px;margin-top:7px;padding:3px 6px;font-size:.67rem;font-weight:750;display:inline-flex}.expense-future-label{color:#943333;background:#fbe4e4;border-radius:999px;align-items:center;gap:4px;margin-top:7px;margin-right:5px;padding:3px 6px;font-size:.67rem;font-weight:800;display:inline-flex}.expense-scope-label{border-radius:999px;align-items:center;margin-top:7px;margin-right:5px;padding:3px 6px;font-size:.67rem;font-weight:800;display:inline-flex}.expense-scope-label.chale_suico{color:#315e4d;background:#dfeee6}.expense-scope-label.pessoal_henrique{color:#75591c;background:#f7eab7}.reservation-attachment-count{color:var(--brand);background:var(--brand-soft);border-radius:999px;align-items:center;gap:4px;margin-top:7px;padding:3px 6px;font-size:.67rem;font-weight:750;display:inline-flex}.expense-action-cell{z-index:2;background:var(--surface);position:sticky;right:0;box-shadow:-7px 0 12px #15362b0a;text-align:center!important}.expense-table thead .expense-action-cell{z-index:3;background:#fafbfa}.expense-edit-link{color:var(--brand);background:var(--brand-soft);border-radius:8px;align-items:center;gap:5px;padding:7px 8px;font-size:.7rem;font-weight:800;display:inline-flex}.expense-edit-link:hover{color:#fff;background:var(--brand)}.expense-row-actions{flex-wrap:wrap;justify-content:center;gap:6px;display:flex}.expense-status-action{font:inherit;cursor:pointer;border:0;border-radius:8px;align-items:center;gap:5px;padding:7px 8px;font-size:.7rem;font-weight:800;display:inline-flex}.expense-status-action.archive{color:#754f25;background:#f7ecdc}.expense-status-action.archive:hover{color:#fff;background:#8a5d2b}.expense-status-action.restore{color:var(--brand);background:var(--brand-soft)}.expense-status-action.restore:hover{color:#fff;background:var(--brand)}.expense-row-scope-chale_suico{background:#f1f8f4}.expense-row-scope-chale_suico td:first-child{box-shadow:inset 4px 0 #a8cdbb}.expense-row-scope-chale_suico .expense-action-cell{background:#f1f8f4}.expense-row-scope-pessoal_henrique{background:#fff9df}.expense-row-scope-pessoal_henrique td:first-child{box-shadow:inset 4px 0 #e2c966}.expense-row-scope-pessoal_henrique .expense-action-cell{background:#fff9df}.expense-row-future td,.expense-row-future .table-primary,.expense-row-future .table-secondary,.expense-row-future .expense-table-meta{color:#17211d;font-weight:750}.expense-row-future .status,.expense-row-future .expense-future-label,.expense-row-future .expense-scope-label,.expense-row-future .expense-attachment-count{color:#17211d;font-weight:800}.expense-row-future.expense-row-scope-chale_suico,.expense-row-future.expense-row-scope-chale_suico .expense-action-cell{background:#cce8d8}.expense-row-future.expense-row-scope-pessoal_henrique,.expense-row-future.expense-row-scope-pessoal_henrique .expense-action-cell{background:#f3d975}.expense-row-future .expense-edit-link{color:#173e31;background:#ffffff94}.expense-row-future .expense-edit-link:hover{color:#fff;background:var(--brand)}.expense-row-cancelled{background:#faf8f7}.expense-row-cancelled td{color:#8e9692}.expense-row-cancelled .expense-cancelled-text,.expense-row-cancelled .expense-table-meta{text-decoration:line-through;text-decoration-thickness:1px}.expense-row-cancelled .expense-action-cell{background:#faf8f7}.icon-link{width:32px;height:32px;color:var(--brand);background:var(--brand-soft);border-radius:8px;place-items:center;display:inline-grid}.empty{color:var(--muted);text-align:center;padding:50px 24px}.empty svg{color:#91a39a;margin-bottom:12px}.empty strong{color:var(--ink);margin-bottom:5px;display:block}.reservation-form{gap:22px;display:grid}.section-body{padding:22px}.form-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:18px;display:grid}.span-2{grid-column:span 2}.span-3{grid-column:span 3}.span-4{grid-column:span 4}.span-6{grid-column:span 6}.span-8{grid-column:span 8}.span-12{grid-column:1/-1}.check-field{background:var(--surface-soft);border:1px solid var(--line);border-radius:9px;align-items:center;gap:10px;min-height:43px;padding:10px 12px;display:flex}.check-field input{width:16px;height:16px;accent-color:var(--brand)}.check-field label{font-size:.8rem;font-weight:750}.form-actions{z-index:4;border:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffe6;border-radius:13px;justify-content:flex-end;align-items:center;gap:10px;padding:13px;display:flex;position:sticky;bottom:16px;box-shadow:0 12px 36px #15362b1f}.page-header-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.faq-panel{margin-bottom:22px}.faq-table{table-layout:fixed}.faq-question-cell{min-width:0}.faq-question-cell .table-primary,.faq-question-cell .table-secondary,.faq-actions-cell{white-space:normal}.faq-actions{flex-wrap:wrap;gap:8px;display:flex}.faq-inline-button{min-height:34px;padding:8px 11px;font-size:.75rem}.faq-readonly-note{color:var(--muted);font-size:.76rem;font-weight:700}.faq-answer-textarea{min-height:180px}.site-gallery-table{table-layout:fixed}.site-gallery-preview-cell{width:104px}.site-gallery-preview-frame,.site-gallery-current-preview{background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;overflow:hidden}.site-gallery-preview-frame{width:84px;height:60px}.site-gallery-preview-image,.site-gallery-current-preview-image{object-fit:cover;width:100%;height:100%;display:block}.site-gallery-preview-fallback,.site-gallery-current-preview-empty{width:100%;height:100%;color:var(--muted);place-items:center;display:grid}.site-gallery-current-preview{aspect-ratio:11/8;margin-bottom:12px}.site-gallery-current-preview-empty{text-align:center;gap:8px;padding:18px}.site-gallery-current-preview-empty span{font-size:.74rem;line-height:1.45}.site-gallery-upload-card{background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;align-content:start;gap:12px;padding:14px;display:grid}.site-gallery-current-preview{aspect-ratio:auto;width:100%;height:220px;max-height:220px;margin-bottom:0}.site-gallery-caption-textarea{min-height:132px}.site-hero-guidance{margin-bottom:18px}.site-hero-table{table-layout:fixed}.site-hero-preview-cell{width:144px}.site-hero-preview-frame,.site-hero-current-preview{background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;position:relative;overflow:hidden}.site-hero-preview-frame{width:124px;height:68px}.site-hero-preview-image,.site-hero-current-preview-image{object-fit:cover;width:100%;height:100%;display:block}.site-hero-preview-fallback,.site-hero-current-preview-empty{width:100%;height:100%;color:var(--muted);place-items:center;display:grid}.site-hero-upload-card{background:var(--surface-soft);border:1px solid var(--line);border-radius:12px;align-content:start;gap:12px;padding:14px;display:grid}.site-hero-current-preview{aspect-ratio:16/9;width:100%;min-height:180px;max-height:260px}.site-hero-current-preview-empty{text-align:center;gap:8px;padding:18px}.site-hero-current-preview-empty span{font-size:.74rem;line-height:1.45}.site-hero-description-textarea{min-height:140px}.site-simple-table{table-layout:fixed}.site-simple-text-cell{min-width:0}.site-simple-text-cell .table-secondary{white-space:normal}.visual-editor-intro{color:#fff;box-shadow:var(--shadow);background:linear-gradient(135deg,#123d30fa,#1d5946e6),#123d30;border:1px solid #ffffff1f;border-radius:14px;justify-content:space-between;align-items:center;gap:22px;margin-bottom:22px;padding:22px;display:flex}.visual-editor-intro h2,.visual-editor-intro p{margin:0}.visual-editor-intro h2{letter-spacing:-.035em;margin-top:12px;font-size:1.3rem}.visual-editor-intro p{color:#ffffffb8;max-width:760px;margin-top:7px;font-size:.86rem;line-height:1.6}.visual-map-icon{width:38px;height:38px;color:var(--brand-dark);background:#e2efe9;border-radius:12px;place-items:center;display:inline-grid}.visual-text-editor{gap:22px;margin-bottom:22px;display:grid}.visual-section{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:14px;grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);display:grid;overflow:hidden}.visual-section-preview{color:#fff;background:linear-gradient(#0920181f,#092018b3),linear-gradient(135deg,#244f3c,#7b8a66);align-content:end;gap:13px;min-height:320px;padding:28px;display:grid}.visual-hero-preview{background:linear-gradient(#0920182e,#092018c7),radial-gradient(circle at 70% 20%,#e6c88952,#0000 22%),linear-gradient(135deg,#193b2e,#7e8f70)}.visual-about-preview{color:var(--ink);background:linear-gradient(135deg,#f5f0e6eb,#fffffff5),#f5f0e6}.visual-location-preview{background:linear-gradient(#09201833,#092018bd),linear-gradient(60deg,#0000 47%,#e6c88973 47% 51%,#0000 51%),#5d765c}.visual-contact-preview{background:linear-gradient(135deg,#102f25fa,#1d5946f0),#102f25}.visual-section-preview h2{letter-spacing:-.05em;max-width:560px;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3.6rem);font-weight:400;line-height:1.02}.visual-section-preview p{color:#ffffffc2;max-width:580px;margin:0;font-size:.86rem;line-height:1.65}.visual-about-preview p{color:var(--muted)}.visual-section-kicker{color:#e4c98f;letter-spacing:.14em;text-transform:uppercase;font-size:.66rem;font-weight:850}.visual-about-preview .visual-section-kicker{color:#88703f}.visual-section-editor{align-content:start;gap:16px;padding:22px;display:grid}.visual-section-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.visual-section-heading h3{letter-spacing:-.025em;align-items:center;gap:8px;margin:0;font-size:1rem;display:flex}.visual-section-heading p{max-width:560px;color:var(--muted);margin:6px 0 0;font-size:.78rem;line-height:1.55}.visual-status{border-radius:999px;flex:none;align-items:center;padding:5px 9px;font-size:.66rem;font-weight:850;display:inline-flex}.visual-status.connected{color:#315e4d;background:#e9f3ee}.visual-status.inactive,.visual-status.missing{color:#8a641e;background:#f8f0de}.visual-status.fixed{color:#5d5d68;background:#ededf0}.visual-text-form,.visual-text-fields{gap:14px;display:grid}.visual-textarea{min-height:132px}.visual-text-form-footer{justify-content:space-between;align-items:center;gap:12px;padding-top:4px;display:flex}.visual-text-form-footer small{color:var(--muted);font-size:.68rem}.visual-linked-module-note,.visual-static-note{color:#53625b;background:var(--surface-soft);border:1px solid var(--line);border-radius:10px;margin:0;padding:12px;font-size:.76rem;line-height:1.55}.visual-linked-module-note a{color:var(--brand);font-weight:850}.visual-inline-form-grid,.visual-card-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.visual-inline-form-grid .visual-text-form,.visual-card-form .visual-text-form{height:100%}.visual-card-form{border:1px solid var(--line);background:#f8faf7;border-radius:12px;gap:10px;min-width:0;padding:12px;display:grid}.visual-card-form-heading{min-width:0;color:var(--text);align-items:center;gap:9px;font-size:.82rem;display:flex}.visual-card-form-heading span{color:#fff;background:var(--primary);border-radius:50%;flex:none;place-items:center;width:30px;height:30px;display:grid}.visual-card-form-heading strong{overflow-wrap:anywhere;min-width:0}.visual-technical-details{margin-top:22px}.visual-technical-details summary{cursor:pointer;justify-content:space-between;align-items:center;gap:14px;list-style:none;display:flex}.visual-technical-details summary::-webkit-details-marker{display:none}.visual-technical-details summary span{color:var(--text);align-items:center;gap:8px;font-weight:800;display:inline-flex}.visual-technical-details summary small{color:var(--muted);font-size:.76rem}.visual-technical-details>p{color:var(--muted);margin:14px 0;font-size:.82rem;line-height:1.6}.visual-preview-actions{flex-wrap:wrap;gap:10px;display:flex}.visual-trust-strip,.visual-amenity-grid{gap:8px;display:grid}.visual-trust-strip{grid-template-columns:1fr 1fr}.visual-trust-strip span,.visual-amenity-grid span{color:#4f5f55;background:#ffffffd6;border:1px solid #ffffff5c;border-radius:10px;align-items:center;gap:8px;padding:11px;font-size:.72rem;font-weight:800;display:flex}.visual-trust-strip svg,.visual-amenity-grid svg{color:#9b7c42;flex:none}.visual-amenity-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.visual-address-card,.visual-whatsapp{background:#ffffff24;border:1px solid #fff3;border-radius:999px;align-items:center;gap:9px;width:fit-content;padding:10px 12px;font-size:.74rem;font-weight:800;display:inline-flex}.attachment-section{margin-top:22px}.attachment-body,.attachment-upload-form{gap:18px;display:grid}.attachment-list,.pending-attachment-list{gap:10px;display:grid}.attachment-item,.pending-attachment{background:var(--surface-soft);border:1px solid var(--line);border-radius:11px;align-items:center;gap:12px;padding:12px;display:flex}.attachment-file-icon{width:40px;height:40px;color:var(--brand);background:var(--surface);border:1px solid var(--line);border-radius:9px;flex:none;place-items:center;display:grid}.attachment-details{flex:1;gap:4px;min-width:0;display:grid}.attachment-details strong,.attachment-details span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.attachment-details strong{color:var(--ink);font-size:.85rem}.attachment-details span,.attachment-empty,.attachment-upload-actions span{color:var(--muted);font-size:.76rem}.attachment-empty{background:var(--surface-soft);border:1px dashed var(--line);border-radius:10px;margin:0;padding:14px}.attachment-paste-area{text-align:center;background:var(--surface-soft);border:1px dashed #9bb5aa;border-radius:12px;outline:none;justify-items:center;gap:8px;padding:26px 18px;display:grid}.attachment-paste-area:focus{border-color:var(--brand);box-shadow:0 0 0 3px #2c70571f}.attachment-paste-area>svg{color:var(--brand)}.attachment-paste-area strong{color:var(--ink);font-size:.9rem}.attachment-paste-area span{color:var(--muted);margin-bottom:4px;font-size:.76rem}.attachment-file-input{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.pending-attachment img{object-fit:cover;border:1px solid var(--line);border-radius:8px;flex:none;width:52px;height:52px}.attachment-remove-button{width:34px;height:34px;color:var(--danger);background:var(--surface);border:1px solid var(--line);cursor:pointer;border-radius:8px;flex:none;place-items:center;display:grid}.attachment-upload-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.two-column{grid-template-columns:minmax(0,1.3fr) minmax(280px,.7fr);gap:22px;display:grid}.expense-overview{grid-template-columns:minmax(290px,.38fr) minmax(0,1fr);gap:22px;margin-bottom:22px;display:grid}.expense-summary-card{background:var(--brand-dark);box-shadow:var(--shadow);border-radius:14px;align-content:space-between;gap:22px;padding:22px;display:grid}.expense-summary-total{align-items:flex-start;gap:14px;display:flex}.expense-summary-total .stat-icon{color:var(--brand-dark);background:#d9eae2;flex:none;margin:0}.expense-summary-total span,.expense-summary-total small{color:#ffffffa3;font-size:.73rem;display:block}.expense-summary-total strong{color:#fff;letter-spacing:-.045em;margin:7px 0;font-size:1.65rem;display:block}.expense-summary-breakdown{gap:9px;display:grid}.expense-summary-item{border-radius:10px;align-items:center;gap:9px;padding:11px 12px;display:flex}.expense-summary-item>svg{flex:none}.expense-summary-item span,.expense-summary-item small,.expense-summary-item strong{display:block}.expense-summary-item small{margin-bottom:3px;font-size:.66rem;font-weight:750}.expense-summary-item strong{letter-spacing:-.025em;font-size:.94rem}.expense-summary-item.effective{color:#6f5417;background:#fff1bd}.expense-summary-item.future{color:#9d3434;background:#fde5e2}.expense-filters{overflow:visible}.expense-filters .panel-header h2{align-items:center;gap:7px;display:flex}.expense-filter-actions{justify-content:flex-end;gap:9px;display:flex}.compact-list{display:grid}.compact-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.compact-row:last-child{border-bottom:0}.compact-row strong{font-size:.84rem;display:block}.compact-row span{color:var(--muted);margin-top:3px;font-size:.72rem;display:block}@media (max-width:1100px){.stats-grid,.site-cms-grid,.visual-section{grid-template-columns:1fr}.visual-section-preview{min-height:260px}.two-column,.expense-overview{grid-template-columns:1fr}.span-2,.span-3,.span-4{grid-column:span 6}.span-8{grid-column:span 12}.occupancy-header{flex-direction:column;align-items:stretch}.occupancy-controls{justify-content:flex-start}}@media (max-width:860px){.login-shell{grid-template-columns:1fr}.login-visual{display:none}.app-shell{grid-template-columns:1fr}.sidebar{height:auto;padding:12px 14px;position:static}.sidebar-brand,.sidebar-label,.sidebar-footer{display:none}.nav-list{display:flex;overflow-x:auto}.nav-item{flex:none}.expense-nav-group{flex:none;min-width:210px}.topbar{min-height:56px}}@media (max-width:640px){.content{padding:22px 14px 88px}.page-header,.visual-editor-intro,.visual-section-heading,.visual-text-form-footer{flex-direction:column;align-items:stretch}.visual-editor-intro .button,.visual-text-form-footer .button{width:100%}.visual-section-preview,.visual-section-editor{padding:18px}.visual-section-preview h2{font-size:clamp(2rem,11vw,3rem)}.visual-trust-strip,.visual-amenity-grid,.visual-inline-form-grid,.visual-card-form-grid{grid-template-columns:1fr}.page-header .button{width:100%}.form-grid{grid-template-columns:1fr}.span-2,.span-3,.span-4,.span-6,.span-8,.span-12{grid-column:1/-1}.section-heading,.section-body{padding:18px}.occupancy-controls{grid-template-columns:1fr 1fr;display:grid}.occupancy-controls .button{width:100%}.occupancy-legend{gap:10px 16px;padding:11px 18px}.form-actions{bottom:10px}.attachment-item,.attachment-upload-actions{flex-direction:column;align-items:stretch}.attachment-open-button,.attachment-upload-actions .button{width:100%}.expense-filter-actions{flex-direction:column-reverse;align-items:stretch}.expense-filter-actions .button{width:100%}}
