:root{--bg:#121714;--surface:#1a211c;--border:#2a342c;--text:#edeae2;--text-muted:#9ca69a;--accent:#d9a441;--accent-hover:#e6b658;--status:#2f6f62;--danger:#c96a4f;--font-display:"Cormorant", serif;--font-body:"Manrope", sans-serif}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0}h1,h2,h3{font-family:var(--font-display);letter-spacing:.01em;margin:0;font-weight:500}p{margin:0;line-height:1.5}button{font-family:var(--font-body);cursor:pointer}input,select{font-family:var(--font-body)}a{color:var(--accent)}.auth-screen{min-height:100vh;display:flex}.auth-hero{background:linear-gradient(180deg, var(--bg), var(--surface));border-right:1px solid var(--border);flex-direction:column;flex:1;justify-content:center;align-items:center;padding:48px;display:flex}.auth-motif{width:160px;height:auto}.wordmark{color:var(--text);font-size:2.75rem}.auth-tagline{color:var(--text-muted);margin-top:12px;font-size:.95rem}.auth-panel{flex-direction:column;flex:1;justify-content:center;align-items:center;padding:48px;display:flex}.auth-form{flex-direction:column;gap:16px;width:100%;max-width:340px;display:flex}.auth-form h2{margin-bottom:8px;font-size:1.5rem}.field{flex-direction:column;gap:6px;display:flex}.field label{color:var(--text-muted);font-size:.85rem}.field input,.field select{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:6px;padding:10px 12px;font-size:.95rem}.field input:focus,.field select:focus{border-color:var(--accent);outline:none}.btn-primary{background:var(--accent);color:var(--bg);border:none;border-radius:6px;padding:11px 16px;font-size:.95rem;font-weight:600}.btn-primary:hover{background:var(--accent-hover)}.btn-link{color:var(--accent);background:0 0;border:none;padding:0;font-weight:600}.form-error{color:var(--danger);font-size:.9rem}.form-success{color:var(--status);font-size:.9rem}.auth-switch{color:var(--text-muted);margin-top:20px;font-size:.9rem}.dashboard-shell{min-height:100vh}.dashboard-topbar{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:20px 40px;display:flex}.topbar-brand{font-family:var(--font-display);align-items:center;gap:10px;font-size:1.4rem;display:flex}.brand-mark{width:28px;height:auto}.topbar-user{color:var(--text-muted);align-items:center;gap:16px;font-size:.9rem;display:flex}.dashboard-content{flex-direction:column;gap:48px;max-width:880px;margin:0 auto;padding:40px;display:flex}.section-title{margin-bottom:16px;font-size:1.3rem}.room-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;display:grid}.room-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:20px}.room-icon{width:32px;height:32px;margin-bottom:12px}.room-card h3{margin-bottom:4px;font-size:1.1rem}.room-meta{color:var(--accent);margin-bottom:6px;font-size:.85rem}.room-desc{color:var(--text-muted);font-size:.9rem}.booking-section{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:32px}.booking-form{flex-direction:column;gap:16px;max-width:380px;display:flex}.btn-secondary{border:1px solid var(--border);color:var(--text-muted);background:0 0;border-radius:6px;padding:8px 14px;font-size:.85rem}.btn-secondary:hover{border-color:var(--accent);color:var(--text)}
