:root{--ink:#1e2a23;--forest:#233f32;--leaf:#71835a;--paper:#f5f1e8;--muted:#6d746f}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select{font:inherit}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.35fr .65fr;background:url("/static/player/images/suitree-hero.5cf6897a9210.png") center/cover}.login-shell:before{content:"";position:fixed;inset:0;background:linear-gradient(90deg,#0d1d1633,#0d1d16c4)}.login-visual,.login-card{position:relative;z-index:1}.login-visual{display:flex;flex-direction:column;justify-content:flex-end;padding:7vw;color:#fff}.brand-logo{width:min(390px,65%);filter:drop-shadow(0 4px 14px #0008)}.login-visual p{font-size:1.15rem;letter-spacing:.08em}.login-card{align-self:center;margin:40px;background:#fffc;border-radius:24px;padding:48px;box-shadow:0 18px 50px #14221b33;backdrop-filter:blur(16px)}h1{font:500 clamp(2.2rem,5vw,4rem) Georgia,serif;margin:.2em 0}h2,h3,p{margin-top:0}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.75rem;font-weight:700;color:var(--leaf)}.muted{color:var(--muted)}label{display:block;font-size:.85rem;font-weight:700;margin:18px 0 7px}input,select{width:100%;border:1px solid #d8d9d2;border-radius:10px;padding:12px;background:#fff}button{border:0;border-radius:10px;padding:12px 18px;background:var(--forest);color:#fff;font-weight:700;cursor:pointer}.login-card form>button{width:100%;margin:24px 0}.login-card small{display:block;text-align:center;color:var(--muted)}.topbar{height:76px;background:var(--forest);display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,5vw);color:#fff}.topbar img{width:150px;max-height:60px;object-fit:contain}.topbar>div{display:flex;align-items:center;gap:18px}.topbar form{display:inline}.link-button{padding:0;background:none;color:#e6d7b8}.container{max-width:1440px;margin:auto;padding:48px max(24px,5vw)}.welcome{display:flex;justify-content:space-between;align-items:end;margin-bottom:45px}.welcome p,.section-head p,.villa-card p{color:var(--muted)}.section-head{display:flex;justify-content:space-between}.section-head h2{font:500 2rem Georgia,serif}.villa-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:18px}.villa-card{background:#fff;border:1px solid #e2ded3;border-radius:16px;padding:22px;box-shadow:0 5px 20px #1a2b2210}.villa-number{font:500 2rem Georgia,serif;color:var(--leaf);float:right}.villa-card p{min-height:22px;margin:8px 0 18px}.status{font-size:.75rem;background:#ecece7;padding:5px 8px;border-radius:99px}.status.active{background:#e3eddf;color:#3d603e}.preview{display:inline-block;color:var(--forest);font-weight:700;text-decoration:none;margin-bottom:18px}.villa-card form{display:grid;grid-template-columns:1fr auto;gap:8px}.alert{padding:14px 18px;border-radius:10px;background:#e3eddf;margin:15px 0}.alert.error{background:#f6dddd}dialog{border:0;border-radius:18px;padding:0;width:min(520px,calc(100% - 32px));box-shadow:0 18px 50px #14221b55}dialog::backdrop{background:#14261dbb;backdrop-filter:blur(4px)}dialog>form{padding:30px}.modal-head{display:flex;justify-content:space-between}.close{background:none;color:var(--ink);font-size:2rem;padding:0}dialog .primary{width:100%;margin-top:18px}@media(max-width:800px){.login-shell{grid-template-columns:1fr}.login-visual{display:none}.login-card{margin:20px;padding:32px}.welcome{align-items:flex-start;gap:20px;flex-direction:column}.topbar>div>span{display:none}.container{padding-top:30px}}
