:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#171312;background:#f5f1ec;font-synthesis:none;text-rendering:optimizeLegibility;--color-sidebar: #2c2927;--color-sidebar-active: #464341;--color-page-bg: #f5f1ec;--color-surface: #ffffff;--color-primary: #4a2c2a;--color-primary-hover: #3d2422;--color-warm-surface: #fffaf1;--color-text: #171312;--color-muted: #8b7d72;--color-border: #e2dbd4;--color-accent: #c79b5b;--color-success: #07883e;--color-success-bg: #eaf8ef;--color-danger: #c91414;--color-danger-bg: #fff4f4;--color-warning: #a46600;--radius-card: 18px;--radius-control: 14px;--shadow-card: 0 2px 7px rgb(44 41 39 / 6%)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--color-page-bg)}button,input,select,textarea{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid rgb(199 155 91 / 45%);outline-offset:3px}.app-shell{min-height:100vh;display:grid;grid-template-columns:282px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;background:var(--color-sidebar);color:#f8f4ef;padding:30px 18px 22px}.brand{display:flex;align-items:center;gap:13px;padding:0 8px 30px;border-bottom:1px solid rgb(255 255 255 / 10%)}.brand-mark{width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--color-primary);font-family:Georgia,Times New Roman,serif;font-weight:800;letter-spacing:-.04em}.brand strong{display:block;font-family:Georgia,Times New Roman,serif;font-size:20px;line-height:1.1}.brand span{display:block;margin-top:5px;color:#c6bdb5;font-size:11px;letter-spacing:.18em}.nav-heading{margin:30px 11px 12px;color:#b9aea6;font-size:12px;font-weight:800;letter-spacing:.18em}nav{display:grid;gap:5px}.nav-item{width:100%;min-height:48px;display:flex;align-items:center;gap:13px;border:0;border-radius:12px;padding:0 14px;background:transparent;color:#f5f0eb;text-align:left;font-weight:650}.nav-item:hover{background:#ffffff0f}.nav-item-active{background:var(--color-sidebar-active)}.nav-dot{width:9px;height:9px;border:2px solid #b9aea6;border-radius:50%}.nav-item-active .nav-dot{border-color:#fff;background:var(--color-accent)}.sidebar-footer{margin-top:auto;display:flex;align-items:center;gap:9px;padding:16px 12px 2px;color:#c8bfb7;font-size:13px}.status-dot{width:8px;height:8px;border-radius:50%;background:#36b36a}.main-content{min-width:0}.topbar{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:18px 36px;border-bottom:1px solid var(--color-border);background:var(--color-surface)}.topbar h1{margin:2px 0 0;font-size:21px}.eyebrow{margin:0;color:var(--color-muted);font-size:11px;font-weight:800;letter-spacing:.13em}.topbar-actions,.page-actions{display:flex;align-items:center;gap:12px}.icon-button{position:relative;width:48px;height:48px;border:1px solid var(--color-border);border-radius:14px;background:#fff;color:var(--color-primary)}.notification-count{position:absolute;top:-5px;right:-5px;min-width:20px;height:20px;display:grid;place-items:center;padding:0 5px;border-radius:999px;background:var(--color-danger);color:#fff;font-size:10px;font-weight:800}.profile-button{display:flex;align-items:center;gap:10px;border:0;background:transparent;color:var(--color-text);text-align:left}.profile-avatar{width:42px;height:42px;display:grid;place-items:center;border-radius:50%;background:var(--color-primary);color:#fff;font-weight:800}.profile-copy{display:grid}.profile-copy small{margin-top:2px;color:var(--color-muted)}.content{padding:34px 36px 48px}.page-heading{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:26px}.breadcrumb{margin:0 0 10px;color:var(--color-muted);font-size:13px}.breadcrumb span{margin:0 7px}.page-heading h2{margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(28px,3vw,42px);line-height:1.05}.page-heading h2+p{margin:10px 0 0;color:var(--color-muted)}.button{min-height:46px;border-radius:var(--radius-control);padding:0 18px;font-weight:750}.button-primary{border:1px solid var(--color-primary);background:var(--color-primary);color:#fff}.button-primary:hover{background:var(--color-primary-hover)}.button-secondary{border:1px solid var(--color-border);background:#fff;color:var(--color-text)}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.metric-card,.panel{border:1px solid var(--color-border);border-radius:var(--radius-card);background:var(--color-surface);box-shadow:var(--shadow-card)}.metric-card{min-height:150px;padding:22px}.metric-label{color:var(--color-muted);font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.metric-value{margin-top:16px;font-family:Georgia,Times New Roman,serif;font-size:38px;font-weight:800}.metric-detail{margin-top:9px;font-size:13px;font-weight:650}.metric-success,.positive{color:var(--color-success)}.metric-warning,.warning-copy{color:var(--color-warning)}.metric-neutral{color:var(--color-muted)}.finance-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,1fr);gap:16px;margin-top:16px}.panel{padding:22px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:20px}.panel-heading h3{margin:5px 0 0;font-family:Georgia,Times New Roman,serif;font-size:23px}.text-button{border:0;background:transparent;color:var(--color-primary);font-weight:800}.finance-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.finance-summary>div{min-width:0;padding:18px;border-radius:14px;background:var(--color-warm-surface)}.finance-summary span,.finance-summary small{display:block}.finance-summary span{color:var(--color-muted);font-size:12px;font-weight:700}.finance-summary strong{display:block;margin:11px 0 9px;font-family:Georgia,Times New Roman,serif;font-size:clamp(20px,2vw,27px);line-height:1.1}.finance-summary small{color:var(--color-muted)}.alert-list{display:grid}.alert-row{display:grid;grid-template-columns:10px 1fr auto;align-items:center;gap:12px;min-height:69px;border-top:1px solid var(--color-border)}.alert-row:first-child{border-top:0}.alert-row strong,.alert-row span{display:block}.alert-row span{margin-top:3px;color:var(--color-muted);font-size:12px}.alert-row time{color:var(--color-muted);font-size:12px}.alert-indicator{width:8px;height:8px;border-radius:50%}.alert-indicator.warning{background:var(--color-warning)}.alert-indicator.danger{background:var(--color-danger)}.badge{display:inline-flex;align-items:center;min-height:28px;border-radius:999px;padding:0 10px;font-size:12px;font-weight:800}.badge-success{background:var(--color-success-bg);color:var(--color-success)}.badge-warning{background:#fff4d9;color:var(--color-warning)}.badge-neutral{background:#f1efed;color:#5f5955}.activity-panel{margin-top:16px}.activity-table{display:grid;overflow-x:auto}.activity-header,.activity-row{min-width:740px;display:grid;grid-template-columns:1.45fr 1.15fr .8fr .65fr;gap:20px;align-items:center}.activity-header{min-height:42px;color:var(--color-muted);font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.activity-row{min-height:70px;border-top:1px solid var(--color-border);font-size:13px}.activity-row strong,.activity-row small{display:block}.activity-row small{margin-top:4px;color:var(--color-muted)}.money{font-family:Georgia,Times New Roman,serif;font-size:16px;font-weight:800}@media(max-width:1100px){.app-shell{grid-template-columns:88px minmax(0,1fr)}.sidebar{padding-inline:12px}.brand{justify-content:center;padding-inline:0}.brand>div:last-child,.nav-heading,.nav-item span:last-child,.sidebar-footer span:last-child{display:none}.nav-item{justify-content:center}.finance-grid{grid-template-columns:1fr}}@media(max-width:820px){.app-shell{display:block}.sidebar{position:static;width:100%;height:auto;padding:14px}.brand{justify-content:flex-start;padding:0 0 14px}.brand>div:last-child{display:block}.nav-heading,.sidebar-footer{display:none}nav{display:flex;overflow-x:auto;padding-top:12px}.nav-item{width:auto;min-width:max-content;padding-inline:13px}.nav-item span:last-child{display:inline}.topbar{padding:14px 18px}.profile-copy{display:none}.content{padding:24px 18px 36px}.page-heading{align-items:flex-start;flex-direction:column}.metrics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-summary{grid-template-columns:1fr}}@media(max-width:520px){.topbar h1{font-size:18px}.page-actions{width:100%}.button{flex:1}.metrics-grid{grid-template-columns:1fr}}.nav-item-disabled{opacity:.52;cursor:not-allowed}.nav-item-disabled:hover{background:transparent}.nav-soon{margin-left:auto;color:#b9aea6;font-size:9px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.auth-page{min-height:100vh;display:grid;place-items:center;padding:32px 18px;background:radial-gradient(circle at top left,rgb(199 155 91 / 10%),transparent 34%),var(--color-page-bg)}.auth-card{width:min(100%,470px);padding:34px;border:1px solid var(--color-border);border-radius:22px;background:var(--color-surface);box-shadow:0 18px 48px #2c29271a}.auth-brand{display:flex;align-items:center;gap:13px;padding-bottom:24px;border-bottom:1px solid var(--color-border)}.auth-brand strong{display:block;font-family:Georgia,Times New Roman,serif;font-size:21px}.auth-brand span{display:block;margin-top:4px;color:var(--color-muted);font-size:10px;font-weight:800;letter-spacing:.16em}.auth-copy{margin:28px 0 24px}.auth-copy h1{margin:7px 0 8px;font-family:Georgia,Times New Roman,serif;font-size:34px}.auth-copy p:last-child{margin:0;color:var(--color-muted);line-height:1.55}.auth-note{margin:22px 0 0;color:var(--color-muted);font-size:12px;line-height:1.55;text-align:center}.loading-card{display:flex;align-items:center;gap:16px}.form-stack{display:grid;gap:16px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.field{display:grid;gap:7px}.field>span{color:#554c46;font-size:12px;font-weight:750}.field input,.field select,.field textarea{width:100%;min-height:46px;border:1px solid var(--color-border);border-radius:12px;padding:0 13px;background:#fff;color:var(--color-text);outline:0;transition:border-color .12s ease,box-shadow .12s ease}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--color-accent);box-shadow:0 0 0 3px #c79b5b24}.field-wide{grid-column:1 / -1}.compact-field{max-width:120px}.form-actions{display:flex;justify-content:flex-end;gap:10px}.button-full{width:100%}.button-small{min-height:40px;padding-inline:14px;font-size:13px}.form-alert{border-radius:12px;padding:12px 14px;font-size:13px;line-height:1.45}.form-alert-danger{border:1px solid rgb(201 20 20 / 20%);background:var(--color-danger-bg);color:#9b1515}.page-alert{margin:16px 0}.form-hint{margin:0;color:var(--color-muted);font-size:12px}.organization-card{width:min(100%,620px)}.organization-list{display:grid;gap:10px}.organization-option{width:100%;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:18px;border:1px solid var(--color-border);border-radius:14px;padding:14px 16px;background:#fff;color:var(--color-text);text-align:left}.organization-option:hover{border-color:#cdbbaa;background:var(--color-warm-surface)}.organization-option strong,.organization-option small{display:block}.organization-option small{margin-top:4px;color:var(--color-muted)}.chooser-logout{display:block;margin:22px auto 0}.organization-switch{min-height:40px;font-size:12px}.logout-button{white-space:nowrap}.properties-content{max-width:1680px}.property-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:16px}.compact-metric{min-height:126px}.compact-metric .metric-value{margin-top:11px;font-size:32px}.editor-panel{margin-bottom:16px}.property-workspace{display:grid;grid-template-columns:minmax(300px,.75fr) minmax(0,1.7fr);gap:16px;align-items:start}.property-list-panel,.property-detail-panel{min-height:520px}.property-list{display:grid;gap:7px}.property-row{width:100%;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid transparent;border-radius:13px;padding:12px 13px;background:#fff;color:var(--color-text);text-align:left}.property-row:hover{background:var(--color-warm-surface)}.property-row-active{border-color:#cfbda9;background:var(--color-warm-surface)}.property-row-main{min-width:0}.property-row-main strong,.property-row-main small,.property-row-meta strong,.property-row-meta small{display:block}.property-row-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.property-row-main small{margin-top:5px;color:var(--color-muted);font-size:11px}.property-row-meta{flex:0 0 auto;text-align:right}.property-row-meta strong{font-family:Georgia,Times New Roman,serif;font-size:19px}.property-row-meta small{color:var(--color-muted);font-size:10px}.empty-state{min-height:160px;display:grid;place-items:center;align-content:center;gap:7px;padding:28px;color:var(--color-muted);text-align:center}.empty-state strong{color:var(--color-text);font-family:Georgia,Times New Roman,serif;font-size:19px}.empty-state span{max-width:420px;font-size:13px;line-height:1.5}.detail-empty{min-height:470px}.property-detail-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid var(--color-border)}.property-detail-heading h3{margin:5px 0;font-family:Georgia,Times New Roman,serif;font-size:28px}.property-detail-heading p:last-child{margin:0;color:var(--color-muted);font-size:13px}.unit-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:20px 0}.unit-toolbar>div:first-child strong,.unit-toolbar>div:first-child span{display:block}.unit-toolbar>div:first-child strong{font-family:Georgia,Times New Roman,serif;font-size:20px}.unit-toolbar>div:first-child span{margin-top:3px;color:var(--color-muted);font-size:12px}.inline-form,.unit-form{margin-bottom:18px;border:1px solid var(--color-border);border-radius:14px;padding:15px;background:#fbf9f6}.inline-form{display:grid;grid-template-columns:minmax(160px,1fr) 110px auto;gap:12px;align-items:end}.unit-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.unit-form-actions,.unit-form .form-hint{grid-column:1 / -1}.unit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.unit-card{min-width:0;border:1px solid var(--color-border);border-radius:15px;padding:16px;background:#fff}.unit-card-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.unit-card h4{margin:5px 0 0;font-family:Georgia,Times New Roman,serif;font-size:21px}.unit-price{margin-top:18px;font-family:Georgia,Times New Roman,serif;font-size:23px;font-weight:800}.unit-price span{margin-left:5px;color:var(--color-muted);font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:11px;font-weight:600}.unit-facts{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin:16px 0}.unit-facts div{border-radius:10px;padding:9px 10px;background:var(--color-warm-surface)}.unit-facts dt{color:var(--color-muted);font-size:10px;font-weight:700;text-transform:uppercase}.unit-facts dd{margin:5px 0 0;font-size:13px;font-weight:700}.unit-statuses{display:flex;flex-wrap:wrap;gap:6px}.status-pill{display:inline-flex;min-height:25px;align-items:center;border:1px solid var(--color-border);border-radius:999px;padding:0 8px;background:#faf9f8;color:#5e5651;font-size:10px;font-weight:700}@media(max-width:1180px){.property-workspace{grid-template-columns:1fr}.property-list-panel,.property-detail-panel{min-height:auto}.detail-empty{min-height:260px}}@media(max-width:820px){.nav-soon,.organization-switch{display:none}.property-kpis,.unit-grid,.form-grid,.unit-form{grid-template-columns:1fr}.field-wide,.unit-form-actions,.unit-form .form-hint{grid-column:auto}.inline-form{grid-template-columns:1fr}.compact-field{max-width:none}.unit-toolbar{align-items:flex-start;flex-direction:column}}@media(max-width:520px){.auth-card{padding:24px 20px}.topbar-actions{gap:8px}.logout-button{font-size:11px}.property-detail-heading{flex-direction:column}.unit-toolbar .page-actions{display:grid;grid-template-columns:1fr 1fr}}.guests-content{max-width:1580px}.guest-search-panel{margin-bottom:16px;padding-block:16px}.search-form{display:flex;align-items:end;gap:12px}.search-field{flex:1;min-width:220px}.field textarea{min-height:92px;padding-block:11px;resize:vertical}.guest-list-panel{overflow:hidden}.guest-table{display:grid;overflow-x:auto}.guest-table-header,.guest-table-row{min-width:880px;display:grid;grid-template-columns:1.4fr 1fr .9fr .65fr 1fr;gap:18px;align-items:center}.guest-table-header{min-height:40px;color:var(--color-muted);font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase}.guest-table-row{min-height:74px;border-top:1px solid var(--color-border);font-size:13px}.guest-name strong,.guest-name small{display:block}.guest-name strong{font-family:Georgia,Times New Roman,serif;font-size:16px}.guest-name small{margin-top:4px;color:var(--color-muted)}.reference-text{color:var(--color-muted);font-size:11px;font-weight:700}.guest-actions{display:flex;align-items:center;gap:10px}.muted-action,.muted-copy{color:var(--color-muted)}.muted-copy{font-size:12px}@media(max-width:820px){.search-form{align-items:stretch;flex-direction:column}.search-field{width:100%}}.reservation-filter-grid{display:flex;align-items:end;gap:14px;flex-wrap:wrap}.reservation-filter-grid .field{min-width:180px}.availability-action{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.reservation-table{display:grid;gap:0}.reservation-table-header,.reservation-table-row{display:grid;grid-template-columns:1.15fr 1.1fr 1.35fr .9fr .8fr .55fr;gap:16px;align-items:center;padding:14px 18px}.reservation-table-header{border-bottom:1px solid var(--border);color:var(--muted);font-size:.78rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.reservation-table-row{border-bottom:1px solid var(--border)}.reservation-table-row:last-child{border-bottom:0}.reservation-table-row>span{min-width:0}.reservation-table-row strong,.reservation-table-row small{display:block}.reservation-table-row small{margin-top:4px;color:var(--muted)}.reservation-period strong{font-variant-numeric:tabular-nums}.badge-warning{background:#815c191f;color:#74551b}@media(max-width:1100px){.reservation-table-header{display:none}.reservation-table-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px;padding:18px}}@media(max-width:680px){.reservation-filter-grid{display:grid;grid-template-columns:1fr}.reservation-filter-grid .field{min-width:0}.reservation-table-row{grid-template-columns:1fr}}.reservation-actions{display:flex;flex-direction:column;align-items:flex-start;gap:6px}.payment-panel{margin-top:16px}.payment-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.payment-summary>div{padding:16px;border-radius:14px;background:var(--color-warm-surface)}.payment-summary span,.payment-history-row small{display:block;color:var(--color-muted);font-size:12px}.payment-summary strong{display:block;margin-top:8px;font-family:Georgia,Times New Roman,serif;font-size:19px}.payment-form{display:flex;align-items:end;flex-wrap:wrap;gap:12px;padding:18px 0}.payment-form h4{flex-basis:100%;margin:0}.payment-form .field{flex:1 1 180px}.payment-history-row{display:flex;align-items:center;flex-wrap:wrap;gap:14px;padding:14px 0;border-top:1px solid var(--color-border)}.payment-history-row>div{flex:1 1 220px}.payment-history-row small{margin-top:4px}@media(max-width:820px){.payment-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.payment-summary{grid-template-columns:1fr}.payment-form .button{width:100%}}
