@font-face{font-family:__Spectral_0e06a3;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/b1c71187c85bb732-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Spectral_0e06a3;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/1d0267b201e007a0-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Spectral_0e06a3;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/192b55935f4e8c71-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Spectral_0e06a3;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/130fa9c96dfc2da9-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Spectral_0e06a3;font-style:italic;font-weight:500;font-display:swap;src:url(/_next/static/media/a325990d5fec1d3f-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Spectral_0e06a3;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/1392a8708768005c-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Spectral_0e06a3;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/6a64cc3acf910f14-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Spectral_0e06a3;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/b42be14db559d7fe-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Spectral_0e06a3;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/84d7006d28fb721d-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Spectral_0e06a3;font-style:italic;font-weight:600;font-display:swap;src:url(/_next/static/media/a8803dd9fdd15a53-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Spectral_0e06a3;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/95fbe602f95f5b1d-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Spectral_0e06a3;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/d7fd192484976c0a-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Spectral_0e06a3;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/e478c40a90656953-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Spectral_0e06a3;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/680964f1bd688e24-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Spectral_0e06a3;font-style:normal;font-weight:500;font-display:swap;src:url(/_next/static/media/3e68fbb477d90635-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Spectral_0e06a3;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/eba0a4e5bf800560-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Spectral_0e06a3;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6adccebe1b78ad4c-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:__Spectral_0e06a3;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/1ee996a2e7c8d770-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Spectral_0e06a3;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/581701471b17b157-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Spectral_0e06a3;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/1eedfae966de4e1c-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Spectral_Fallback_0e06a3;src:local("Times New Roman");ascent-override:96.46%;descent-override:42.17%;line-gap-override:0.00%;size-adjust:109.78%}.__className_0e06a3{font-family:__Spectral_0e06a3,__Spectral_Fallback_0e06a3}.__variable_0e06a3{--font-display:"__Spectral_0e06a3","__Spectral_Fallback_0e06a3"}@font-face{font-family:__Hanken_Grotesk_9c618b;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/a6c19694cd327cd4-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:__Hanken_Grotesk_9c618b;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/851c4691abdf3def-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:__Hanken_Grotesk_9c618b;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/a8a8dd7277bab4cf-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:__Hanken_Grotesk_9c618b;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/313510e2713fb214-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:__Hanken_Grotesk_Fallback_9c618b;src:local("Arial");ascent-override:99.07%;descent-override:30.02%;line-gap-override:0.00%;size-adjust:100.94%}.__className_9c618b{font-family:__Hanken_Grotesk_9c618b,__Hanken_Grotesk_Fallback_9c618b;font-style:normal}.__variable_9c618b{--font-sans:"__Hanken_Grotesk_9c618b","__Hanken_Grotesk_Fallback_9c618b"}:root{--bg:#f1f5f9;--surface:#fff;--surface-2:#f7fafc;--border:#e2e8f0;--text:#0f1720;--muted:#55606d;--muted-2:#a7b2be;--placeholder:#6b7684;--primary:#0a6099;--primary-hover:#084b78;--primary-soft:#e4f1fa;--green:#1f7a54;--green-bg:#e7f3ee;--green-bd:#b8ddca;--amber:#8a570a;--amber-bg:#fbf1df;--amber-bd:#ecd5a6;--rose:#0a6099;--rose-bg:#e4f1fa;--rose-bd:#e6c4cf;--radius:14px;--shadow:0 1px 2px rgba(13,27,40,.04),0 8px 24px -12px rgba(13,27,40,.14);--sidebar:#0d1b28;--sidebar-soft:#17293a;--ease:cubic-bezier(.22,1,.36,1)}*{box-sizing:border-box}body,html{padding:0;margin:0}body{font-family:var(--font-sans),ui-sans-serif,-apple-system,system-ui,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--text);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:var(--primary);text-decoration:none}h1,h2,h3{margin:0;font-weight:700;letter-spacing:-.01em}.shell{display:grid;grid-template-columns:248px 1fr;min-height:100vh}.sidebar{background:var(--sidebar);color:#cbd5e1;padding:20px 14px;display:flex;flex-direction:column;gap:4px;position:-webkit-sticky;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;color:#fff;font-weight:600;font-size:19px;padding:6px 10px 18px;letter-spacing:-.02em;font-family:var(--font-display,Georgia,serif)}.brand .logo{width:30px;height:30px;border-radius:9px;background:#fff;object-fit:contain;padding:3px;flex-shrink:0}.nav-item{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:10px;border:0;background:transparent;width:100%;text-align:left;font-family:inherit;font-size:14px;color:#d8cec2;cursor:pointer;font-weight:500;transition:background .18s var(--ease),color .18s var(--ease)}.nav-item:hover{color:#fff}.nav-item:active,.nav-item:hover{background:var(--sidebar-soft)}.nav-item:focus-visible{outline:2px solid #e6a5b6;outline-offset:-2px}.nav-item.active{background:var(--primary);color:#fff}.nav-spacer{flex:1 1}.sidebar .chip{margin:10px;padding:10px 12px;background:var(--sidebar-soft);border:1px solid #3a2f26;border-radius:10px;font-size:12px;color:#b3a897;display:flex;gap:8px;align-items:center}.sidebar .chip .dot{width:8px;height:8px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 3px rgba(74,222,128,.2)}.main{display:flex;flex-direction:column;min-width:0}.topbar{height:64px;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 28px;position:-webkit-sticky;position:sticky;top:0;z-index:5}.topbar h1{font-size:1.25rem;font-weight:600;font-family:var(--font-display,Georgia,serif);letter-spacing:-.015em}.content{padding:28px clamp(20px,4vw,48px);max-width:1320px;width:100%;margin:0 auto}.hamburger{display:none;align-items:center;justify-content:center;width:38px;height:38px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);cursor:pointer;transition:background .16s var(--ease),border-color .16s var(--ease)}.hamburger:hover{background:var(--surface-2);border-color:var(--muted-2)}.hamburger:active{background:var(--bg)}.nav-backdrop{position:fixed;inset:0;background:rgba(13,27,40,.5);z-index:30}.grid{display:grid;grid-gap:16px;gap:16px}.cols-4{grid-template-columns:repeat(4,1fr)}.cols-3{grid-template-columns:repeat(3,1fr)}.cols-2{grid-template-columns:repeat(2,1fr)}@media (max-width:880px){.cols-2,.cols-3,.cols-4{grid-template-columns:1fr 1fr}.shell{grid-template-columns:1fr}.sidebar{position:fixed;left:0;top:0;bottom:0;width:260px;height:100vh;z-index:40;transform:translateX(-100%);transition:transform .2s ease}.sidebar.open{transform:translateX(0);box-shadow:0 0 40px rgba(0,0,0,.3)}.hamburger{display:inline-flex}.topbar{padding:0 16px}.topbar h1{font-size:16px}.content{padding:20px 16px}}@media (max-width:480px){.cols-2,.cols-3,.cols-4{grid-template-columns:1fr}}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.card h3{font-size:1rem;margin-bottom:14px}.section-title{font-size:1.125rem;color:var(--text);font-weight:600;letter-spacing:-.015em;font-family:var(--font-display,Georgia,serif);margin:28px 0 14px}.card-sub{margin:-8px 0 14px}.card-sub,.label-hint{color:var(--muted);font-size:13px}.label-hint{margin:2px 0 10px}.kpi{display:flex;flex-direction:column;gap:10px}.kpi .ico{width:40px;height:40px;border-radius:11px;display:grid;place-items:center}.kpi .val{font-size:1.75rem;font-weight:600;letter-spacing:-.02em;font-family:var(--font-display,Georgia,serif)}.kpi .lbl{color:var(--muted);font-size:13px}.ico.indigo{background:var(--primary-soft);color:var(--primary)}.ico.green{background:var(--green-bg);color:var(--green)}.ico.amber{background:var(--amber-bg);color:var(--amber)}.ico.rose{background:var(--rose-bg);color:var(--rose)}.overview{display:flex;flex-wrap:wrap;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden}.overview .stat{flex:1 1;min-width:150px;padding:18px 22px;display:flex;flex-direction:column;gap:8px;border-right:1px solid var(--border)}.overview .stat:last-child{border-right:0}.overview .stat .k{display:inline-flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted);font-weight:600}.overview .stat .k svg{color:var(--muted-2)}.overview .stat .v{font-size:1.75rem;font-weight:600;letter-spacing:-.02em;line-height:1;font-family:var(--font-display,Georgia,serif)}.overview .stat.primary{background:var(--primary-soft)}.overview .stat.primary .v{color:var(--primary)}.overview .stat.primary .k{color:var(--primary-hover)}.overview .stat.primary .k svg{color:var(--primary)}@media (max-width:720px){.overview .stat{flex-basis:50%;border-bottom:1px solid var(--border)}.overview .stat:nth-child(2n){border-right:0}.overview .stat:nth-last-child(-n+2){border-bottom:0}}.notice{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;padding:15px 18px;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);box-shadow:var(--shadow)}.notice.ok{background:var(--green-bg);border-color:var(--green-bd)}.notice.warn{background:var(--amber-bg);border-color:var(--amber-bd)}.notice .lead{display:flex;align-items:center;gap:14px;min-width:0}.unit-card{color:inherit;transition:transform .16s var(--ease),box-shadow .16s var(--ease),border-color .16s var(--ease)}.unit-card:hover{transform:translateY(-3px);box-shadow:0 22px 44px -26px rgba(13,27,40,.3);border-color:var(--muted-2)}.btn{display:inline-flex;align-items:center;gap:7px;background:var(--primary);color:#fff;border:0;border-radius:10px;padding:9px 15px;font-size:14px;font-weight:600;cursor:pointer;transition:background .16s var(--ease),transform .16s var(--ease),box-shadow .16s var(--ease)}.btn:hover{background:var(--primary-hover)}.btn:active{transform:scale(.97)}.btn.secondary{background:var(--surface);color:var(--text);border:1px solid var(--border)}.btn.secondary:hover{background:var(--surface-2);border-color:var(--muted-2)}.btn.ghost{background:transparent;color:var(--muted)}.btn.ghost:hover{color:var(--text)}.btn.sm{padding:6px 11px;font-size:13px}.btn:disabled{opacity:.5;cursor:default;pointer-events:none}.btn:disabled:active{transform:none}.btn.danger{background:var(--rose-bg);color:var(--rose);border:1px solid var(--rose-bd)}.btn.danger:hover{background:#f2dbe2;border-color:var(--rose)}label{display:block;font-size:12px;font-weight:600;color:var(--muted);margin:0 0 5px}input,select{width:100%;padding:9px 11px;border:1px solid var(--border);border-radius:10px;font-size:14px;background:var(--surface);color:var(--text);outline:none;transition:border-color .16s var(--ease),box-shadow .16s var(--ease)}input:hover:not(:disabled):not(:focus),select:hover:not(:disabled):not(:focus),textarea:hover:not(:disabled):not(:focus){border-color:var(--muted-2)}input:focus,select:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}input:disabled,select:disabled,textarea:disabled{background:var(--surface-2);color:var(--muted);cursor:not-allowed}input::placeholder,textarea::placeholder{color:var(--placeholder)}input[type=checkbox]{accent-color:var(--primary)}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:flex-end}.amenity-chip button:focus-visible,.ap-extra button:focus-visible,.ap-item:has(input:focus-visible),.btn:focus-visible,.hamburger:focus-visible,.link-btn:focus-visible,.plan-chip .up:focus-visible,.pv-photo button:focus-visible,.src-tab:focus-visible,.swatch:focus-visible,.tab:focus-visible,a.unit-card:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.ap-item input:focus-visible{outline:none}.link-btn{border:0;background:none;padding:0;font:inherit;cursor:pointer;color:var(--primary);font-weight:600}.tabs{display:flex;gap:4px;background:var(--surface);border:1px solid var(--border);padding:4px;border-radius:12px;margin-bottom:18px;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{display:flex;align-items:center;gap:7px;padding:7px 13px;border-radius:9px;cursor:pointer;border:0;background:transparent;font-family:inherit;font-weight:600;color:var(--muted);font-size:13px;white-space:nowrap;flex-shrink:0;transition:background .18s var(--ease),color .18s var(--ease)}.tab:hover{color:var(--text);background:var(--surface-2)}.tab:active{background:var(--bg)}.tab.active{background:var(--primary);color:#fff}.tabs.stretch{display:flex}.tabs.stretch .tab{flex:1 1;justify-content:center}.pill{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;border:1px solid transparent}.pill.green{background:var(--green-bg);color:var(--green);border-color:var(--green-bd)}.pill.amber{background:var(--amber-bg);color:var(--amber);border-color:var(--amber-bd)}.pill.rose{background:var(--rose-bg);color:var(--rose);border-color:var(--rose-bd)}.pill.gray{background:var(--surface-2);color:var(--muted);border-color:var(--border)}.table-wrap{overflow-x:auto;margin:0 -20px;padding:0 20px}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-weight:700;padding:7px 10px}td,th{border-bottom:1px solid var(--border)}td{padding:10px;font-size:13.5px}tbody tr{transition:background .15s var(--ease)}tbody tr:hover{background:var(--surface-2)}tr:last-child td{border-bottom:0}.cal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.cal-grid{display:grid;grid-template-columns:repeat(7,1fr);grid-gap:6px;gap:6px}.cal-dow{text-align:center;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;padding-bottom:4px}.cal-cell{aspect-ratio:1/.92;border-radius:10px;border:1px solid var(--border);padding:7px 8px;display:flex;flex-direction:column;justify-content:space-between;background:var(--surface)}.cal-cell .d{font-size:13px;font-weight:600}.cal-cell .s{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em}.cal-cell.AVAILABLE{background:var(--green-bg);border-color:var(--green-bd)}.cal-cell.AVAILABLE .s{color:var(--green)}.cal-cell.BLOCKED{background:var(--amber-bg);border-color:var(--amber-bd)}.cal-cell.BLOCKED .s{color:var(--amber)}.cal-cell.BOOKED{background:var(--rose-bg);border-color:var(--rose-bd)}.cal-cell.BOOKED .s{color:var(--rose)}.cal-cell.empty{background:transparent;border:0}.legend{display:flex;gap:16px;margin-top:14px;font-size:12px;color:var(--muted);flex-wrap:wrap}.legend i{width:10px;height:10px;border-radius:3px;display:inline-block;margin-right:6px;vertical-align:middle}@media (max-width:560px){.cal-head{flex-wrap:wrap;gap:10px}.cal-grid{gap:3px}.cal-cell{padding:4px;border-radius:7px;aspect-ratio:1/1.05}.cal-cell .d{font-size:11px}.cal-cell .s{font-size:8px;letter-spacing:0}.cal-dow{font-size:9px}}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.err{color:var(--rose);font-size:13px}.ok{color:var(--green)}.stack>*+*{margin-top:12px}.between{display:flex;align-items:center;justify-content:space-between;gap:12px}.auth-wrap{min-height:100vh;display:grid;place-items:center;--primary:#0a6099;--primary-hover:#084b78;--primary-soft:#e4f1fa;--bg:#f6f9fc;--text:#0f1720;--muted:#55606d;--border:#e2e8f0;background:radial-gradient(1200px 500px at 50% -10%,#e4f1fa,var(--bg))}.auth-card{width:400px;max-width:92vw}.auth-wrap .btn{transition:transform .16s cubic-bezier(.22,1,.36,1),background .16s}.auth-wrap .btn:active{transform:scale(.98)}.wiz{min-height:100vh;background:radial-gradient(1100px 460px at 50% -12%,#e4f1fa,var(--bg));flex-direction:column;padding:32px 20px 80px}.wiz,.wiz-top{display:flex;align-items:center}.wiz-top{width:100%;max-width:760px;gap:10px;margin-bottom:26px}.wiz-top .brand{padding:0;font-size:17px}.wiz-notice{width:100%;max-width:760px;margin:0 0 18px}.wiz-notice .lead{align-items:flex-start}.wiz-notice .lead svg{flex:none;margin-top:2px;color:var(--amber)}.wiz-notice .lead span{font-size:14px;line-height:1.5}.wiz-steps{gap:0;margin-left:auto}.wiz-steps,.wiz-steps .s{display:flex;align-items:center}.wiz-steps .s{gap:8px;color:var(--muted);font-size:12.5px;font-weight:600}.wiz-steps .s .n{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--surface);border:1.5px solid var(--border);font-size:12px}.wiz-steps .s.active{color:var(--primary)}.wiz-steps .s.active .n{background:var(--primary);border-color:var(--primary);color:#fff}.wiz-steps .s.done .n{background:var(--green-bg);border-color:var(--green-bd);color:var(--green)}.wiz-steps .bar{width:26px;height:1.5px;background:var(--border);margin:0 8px}@media (max-width:720px){.wiz-steps .lbl-txt{display:none}.wiz-steps .bar{width:14px}}@media (max-width:480px){.wiz-top{gap:6px}.wiz-top .brand{font-size:15px}.wiz-steps .s .n{width:20px;height:20px;font-size:11px}.wiz-steps .bar{width:7px;margin:0 4px}}.wiz-card{width:100%;max-width:760px}.wiz-card h2{font-size:1.375rem;letter-spacing:-.02em}.wiz-lede{color:var(--muted);margin:6px 0 22px;font-size:14.5px}.wiz-actions{display:flex;gap:10px;justify-content:space-between;margin-top:26px}.src-tabs{display:flex;gap:10px;margin-bottom:14px}.src-tab{flex:1 1;border:1.5px solid var(--border);border-radius:12px;padding:14px 16px;cursor:pointer;background:var(--surface);display:flex;align-items:center;gap:12px;text-align:left;font-family:inherit;font-size:inherit;color:inherit;width:100%;transition:border-color .15s var(--ease),box-shadow .15s var(--ease),background .15s var(--ease)}.src-tab:hover{border-color:var(--muted-2)}button.src-tab:active{background:var(--surface-2)}.src-tab.on{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.src-tab .badge{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;font-weight:800;color:#fff;font-size:14px}.src-tab .badge.ab{background:#ff385c}.src-tab .badge.bk{background:#003b95}.src-tab .t{font-weight:700;font-size:14px}.src-tab .m{color:var(--muted);font-size:12.5px}.preview-hero{display:grid;grid-template-columns:132px 1fr;grid-gap:16px;gap:16px;align-items:start}.preview-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));grid-gap:8px;gap:8px}.pv-photo{position:relative;aspect-ratio:1;border-radius:10px;overflow:hidden;border:1px solid var(--border)}.pv-photo img{width:100%;height:100%;object-fit:cover;display:block}.pv-photo button{position:absolute;top:4px;right:4px;width:22px;height:22px;border-radius:50%;border:0;background:rgba(13,27,40,.72);color:#fff;cursor:pointer;display:grid;place-items:center}.pv-photo.cover:after{content:"Cover";position:absolute;left:4px;bottom:4px;background:var(--primary);color:#fff;font-size:10px;font-weight:700;padding:2px 6px;border-radius:6px}.amenity-chips{display:flex;flex-wrap:wrap;gap:7px}.amenity-chip{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:var(--surface-2);border:1px solid var(--border);font-size:12.5px}.amenity-chip button{border:0;background:transparent;color:var(--muted);cursor:pointer;padding:0;display:grid;place-items:center;transition:color .15s var(--ease)}.amenity-chip button:hover{color:var(--rose)}textarea{width:100%;padding:10px 12px;border:1px solid var(--border);border-radius:10px;font:inherit;font-size:14px;background:var(--surface);color:var(--text);outline:none;resize:vertical;min-height:96px}textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-soft)}.slug-field{display:flex;align-items:stretch;border:1px solid var(--border);border-radius:10px;overflow:hidden}.slug-field input{border:0;border-radius:0;box-shadow:none}.slug-field .suffix{display:flex;align-items:center;padding:0 12px;background:var(--surface-2);color:var(--muted);font-size:13px;white-space:nowrap;border-left:1px solid var(--border)}.swatch-row{display:flex;gap:8px;flex-wrap:wrap}.swatch{width:30px;height:30px;border-radius:8px;cursor:pointer;border:2px solid transparent;padding:0;transition:transform .15s var(--ease),border-color .15s var(--ease)}.swatch:hover{transform:scale(1.08)}.swatch.on{border-color:var(--text)}.live-banner{gap:12px;padding:16px;border-radius:12px;background:var(--green-bg);border:1px solid var(--green-bd)}.copybox,.live-banner{display:flex;align-items:center}.copybox{gap:8px;background:var(--surface-2);border:1px solid var(--border);border-radius:10px;padding:8px 10px;font-family:ui-monospace,Menlo,monospace;font-size:12.5px;overflow-x:auto}.copybox code{white-space:nowrap}.step-hint{display:flex;gap:10px;padding:12px 14px;border-radius:10px;background:var(--primary-soft);color:#7a1a30;font-size:13px;margin-bottom:16px}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px}@media (max-width:900px){.plan-grid{grid-template-columns:1fr}}.plan{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:22px;display:flex;flex-direction:column;gap:14px;position:relative}.plan.current{box-shadow:0 0 0 3px var(--primary-soft)}.plan.current,.plan.featured{border-color:var(--primary)}.plan .badge-pop{position:absolute;top:-10px;right:16px;background:var(--primary);color:#fff;font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;letter-spacing:.03em}.plan h3{font-size:1.125rem}.plan .price{font-size:2rem;font-weight:600;letter-spacing:-.02em}.modal h2,.plan .price,.wiz-card h2{font-family:var(--font-display,Georgia,serif)}.plan .price span{font-size:14px;font-weight:500;color:var(--muted)}.plan .tagline{color:var(--muted);font-size:13px;margin-top:-8px}.plan ul{list-style:none;padding:0;margin:0;flex-direction:column}.plan li,.plan ul{display:flex;gap:9px}.plan li{align-items:flex-start;font-size:13.5px;color:var(--text)}.plan li svg{color:var(--green);flex-shrink:0;margin-top:1px}.plan .cta{margin-top:auto}.plan .cta .btn{width:100%;justify-content:center}.status-banner{display:flex;align-items:center;gap:14px;padding:16px 20px;border-radius:14px;border:1px solid var(--border);background:var(--surface);margin-bottom:22px}.status-banner .ico{width:42px;height:42px;border-radius:12px;display:grid;place-items:center}.status-banner.trial{background:var(--amber-bg);border-color:var(--amber-bd)}.status-banner.past_due{background:var(--rose-bg);border-color:var(--rose-bd)}.plan-chip{margin:6px 10px 2px;padding:9px 12px;border-radius:10px;background:var(--sidebar-soft);border:1px solid #3a2f26;display:flex;align-items:center;justify-content:space-between;gap:8px}.plan-chip .name{color:#fff;font-weight:700;font-size:13px}.plan-chip .up{font-size:11px;color:#f0b6c4;font-weight:700;cursor:pointer;border:0;background:none;padding:0;font-family:inherit;transition:color .15s var(--ease)}.plan-chip .up:hover{color:#fff}.plan-chip .up:focus-visible{outline-color:#e6a5b6}.modal-overlay{position:fixed;inset:0;background:rgba(13,27,40,.5);display:grid;place-items:center;z-index:50;padding:20px;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);animation:modal-in .16s var(--ease)}@keyframes modal-in{0%{opacity:0}to{opacity:1}}.modal{background:var(--surface);border-radius:16px;width:440px;max-width:94vw;padding:26px;box-shadow:0 24px 60px -20px rgba(13,27,40,.35),0 4px 12px rgba(13,27,40,.08);animation:modal-pop .2s var(--ease)}@keyframes modal-pop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}.modal h2{font-size:1.25rem;margin-bottom:6px;font-family:var(--font-display,Georgia,serif);font-weight:600}.modal .lead{color:var(--muted);font-size:14px;margin-bottom:16px}.modal .feat{display:flex;gap:9px;align-items:flex-start;font-size:13.5px;margin:8px 0}.modal .feat svg{color:var(--green);flex-shrink:0;margin-top:1px}.modal .actions{display:flex;gap:10px;margin-top:20px}.modal .actions .btn{flex:1 1;justify-content:center}.prop-tile .prop-thumb{width:100%;height:140px;object-fit:cover;border-radius:10px;display:block;border:1px solid var(--border);background:var(--bg)}.prop-tile .prop-thumb.empty{display:grid;place-items:center;color:var(--muted)}.amenities-picker{display:grid;grid-gap:16px;gap:16px}.ap-cat{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:8px}.ap-items{display:flex;flex-wrap:wrap;gap:8px}.ap-item{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:999px;border:1px solid var(--border);background:var(--surface);font-size:13.5px;cursor:pointer;transition:border-color .15s,background .15s,color .15s;-webkit-user-select:none;-moz-user-select:none;user-select:none}.ap-item.on,.ap-item:hover{border-color:var(--primary)}.ap-item.on{background:var(--primary-soft);color:var(--primary);font-weight:600}.ap-item input{width:auto;margin:0;accent-color:var(--primary)}.ap-extras{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:10px}.ap-extra{display:inline-flex;align-items:center;gap:6px}.ap-extra button{border:0;background:none;cursor:pointer;color:inherit;display:grid;place-items:center;padding:0}.usage-row{display:grid;grid-template-columns:1fr 1fr;grid-gap:20px;gap:20px}@media (max-width:720px){.usage-row{grid-template-columns:1fr}}.meter{height:8px;border-radius:999px;background:var(--bg);border:1px solid var(--border);overflow:hidden}.meter span{display:block;height:100%;border-radius:999px}.notice .msg{font-weight:600}.notice.warn .msg{color:var(--amber)}.notice.ok .msg{color:var(--green)}.field-help{margin-top:6px;min-height:18px;font-size:12.5px}.check-label{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px;font-weight:500;color:var(--text);margin:0}.check-label input,select.compact{width:auto}.tile-name{font-weight:700;font-size:15px}.photo-row{display:flex;gap:10px;flex-wrap:wrap}.photo-item{position:relative}.photo-item img{width:120px;height:84px;object-fit:cover;border-radius:10px;border:1px solid var(--border);display:block}.photo-item .rm{position:absolute;top:4px;right:4px;padding:4px}.photo-add{width:120px;height:84px;display:grid;place-items:center;cursor:pointer;text-align:center;position:relative}.photo-add:has(input:focus-visible){outline:2px solid var(--primary);outline-offset:2px}.skel{position:relative;overflow:hidden;display:block;background:var(--surface-2);border-radius:8px;border:1px solid var(--border)}.skel:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.65),transparent);animation:skel-sweep 1.4s ease-in-out infinite}@keyframes skel-sweep{to{transform:translateX(100%)}}.skel.line{height:12px;width:100%}.skel.title{height:16px;width:40%}.skel.num{height:26px;width:68px}.skel.thumb{height:140px}.skel.btn-s,.skel.thumb{width:100%;border-radius:10px}.skel.btn-s{height:34px}.empty-state{grid-column:1/-1;text-align:center;padding:44px 24px;border:1px dashed var(--muted-2);border-radius:var(--radius);background:var(--surface)}.empty-state.sm{padding:28px 20px}.empty-state.bare{border:0;padding:32px 20px}.empty-state .eico{width:44px;height:44px;border-radius:12px;background:var(--primary-soft);color:var(--primary);display:grid;place-items:center;margin:0 auto 12px}.empty-state h4{margin:0 0 4px;font-size:1rem;font-weight:700}.empty-state p{color:var(--muted);font-size:13.5px;max-width:420px;margin:0 auto 16px}.empty-state .actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.skel:after{animation:none;background:none}.unit-card:hover{transform:none}}.photo-pick{padding:0;border:1px solid var(--border);background:var(--surface);cursor:pointer;position:relative;transition:border-color .16s,transform .16s}.photo-pick:hover:not(:disabled){border-color:var(--brand);transform:translateY(-2px)}.photo-pick:disabled{opacity:.5;cursor:default}.photo-pick img{opacity:.78}.photo-pick:hover:not(:disabled) img{opacity:1}.photo-pick-add{position:absolute;right:6px;bottom:6px;display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--brand);color:#fff}