:root{--bg:#f4f7fb;--card:#fff;--primary:#0f766e;--primary2:#14b8a6;--dark:#102a43;--muted:#6b7280;--danger:#dc2626;--warn:#f59e0b;--ok:#16a34a;--border:#e5e7eb}*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:var(--bg);color:var(--dark)}.app{display:flex;min-height:100vh}.sidebar{width:280px;background:linear-gradient(180deg,#0f172a,#0f766e);color:#fff;padding:22px;position:fixed;height:100vh;overflow:auto}.brand{display:flex;gap:12px;align-items:center;font-size:20px;margin-bottom:22px}.brand span{font-size:32px}.sidebar nav a{display:block;color:#dffaf7;text-decoration:none;padding:12px 14px;margin:6px 0;border-radius:14px}.sidebar nav a:hover{background:rgba(255,255,255,.14)}.main{margin-left:280px;width:calc(100% - 280px);padding:24px}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.topbar h2{margin:0;font-size:28px}.topbar p{margin:4px 0;color:var(--muted)}.user,.card{background:var(--card);border:1px solid var(--border);border-radius:20px;box-shadow:0 8px 30px rgba(15,23,42,.06)}.user{padding:12px 16px}.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.grid2{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.card{padding:18px;margin-bottom:16px}.stat h3{font-size:15px;color:var(--muted);margin:0 0 10px}.stat strong{font-size:28px}.badge{padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700;display:inline-block}.Available,.Completed,.Active,.Confirmed{background:#dcfce7;color:#166534}.Booked,.Pending{background:#fef3c7;color:#92400e}.Maintenance,.Cancelled,.Expired{background:#fee2e2;color:#991b1b}.InProgress{background:#dbeafe;color:#1d4ed8}table{width:100%;border-collapse:collapse;background:#fff;border-radius:16px;overflow:hidden}th,td{padding:13px;border-bottom:1px solid var(--border);text-align:left;font-size:14px}th{background:#f8fafc;color:#475569}.actions a,.btn,button{background:var(--primary);color:#fff;text-decoration:none;border:0;border-radius:12px;padding:10px 14px;cursor:pointer;display:inline-block}.btn.secondary{background:#334155}.btn.danger{background:var(--danger)}input,select,textarea{width:100%;padding:12px;border:1px solid var(--border);border-radius:12px;margin:6px 0 14px;background:#fff}label{font-weight:700;font-size:13px}.form-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.alert{padding:12px;border-radius:12px;margin:10px 0}.danger{background:#fee2e2;color:#991b1b}.success{background:#dcfce7;color:#166534}/* Professional Login Screen */
.login-body{min-height:100vh;margin:0;display:grid;place-items:center;padding:26px;background:linear-gradient(135deg,#062b2f 0%,#0f766e 42%,#e7fbf7 42%,#f8fafc 100%);overflow-x:hidden}
.login-shell{width:min(1080px,100%);display:grid;grid-template-columns:1.05fr .95fr;gap:26px;align-items:stretch}
.login-hero{position:relative;overflow:hidden;border-radius:34px;padding:46px;color:#fff;background:linear-gradient(145deg,rgba(15,118,110,.94),rgba(15,23,42,.96));box-shadow:0 30px 80px rgba(15,23,42,.22);min-height:530px;display:flex;flex-direction:column;justify-content:center}
.login-hero:before{content:"";position:absolute;right:-70px;bottom:-110px;width:310px;height:310px;border-radius:999px;background:rgba(20,184,166,.30)}
.login-hero:after{content:"";position:absolute;left:-90px;top:40px;width:230px;height:230px;border-radius:999px;border:34px solid rgba(255,255,255,.08)}
.hero-badge{width:max-content;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.22);padding:10px 14px;border-radius:999px;font-size:13px;font-weight:800;letter-spacing:.3px}
.login-hero h1{font-size:58px;line-height:1;margin:24px 0 14px}
.login-hero p{max-width:520px;font-size:18px;line-height:1.7;color:#dffaf7;margin:0}
.hero-points{display:flex;gap:10px;flex-wrap:wrap;margin-top:28px}
.hero-points span{background:rgba(255,255,255,.13);border:1px solid rgba(255,255,255,.20);border-radius:14px;padding:10px 12px;font-weight:700}
.login-card{width:100%;background:rgba(255,255,255,.96);padding:42px;border-radius:34px;box-shadow:0 30px 80px rgba(15,23,42,.18);border:1px solid rgba(255,255,255,.75)}
.professional-login{display:flex;flex-direction:column;justify-content:center}
.login-logo{width:72px;height:72px;border-radius:22px;display:grid;place-items:center;font-size:36px;background:linear-gradient(135deg,#ccfbf1,#ffffff);box-shadow:0 12px 30px rgba(15,118,110,.18);margin-bottom:18px}
.login-card h2{font-size:34px;margin:0;color:var(--dark)}
.login-subtitle{color:var(--muted);margin:8px 0 24px;line-height:1.6}
.login-card input{height:48px;font-size:15px}
.login-card input:focus{outline:3px solid rgba(20,184,166,.18);border-color:var(--primary2)}
.login-card button{width:100%;font-size:16px;font-weight:800;margin-top:4px;padding:14px;border-radius:14px;background:linear-gradient(135deg,var(--primary),var(--primary2));box-shadow:0 14px 30px rgba(15,118,110,.25)}
.login-card button:hover{transform:translateY(-1px)}
.receipt{max-width:780px;margin:auto;background:#fff;padding:28px;border-radius:20px}.receipt h1{text-align:center}.print-only{display:none}@media(max-width:900px){.login-body{padding:16px;background:linear-gradient(180deg,#0f766e 0%,#f8fafc 58%)}.login-shell{grid-template-columns:1fr;gap:16px}.login-hero{min-height:auto;padding:28px;border-radius:26px}.login-hero h1{font-size:42px}.login-hero p{font-size:15px}.login-card{padding:26px;border-radius:26px}.login-card h2{font-size:28px}.hero-points{margin-top:18px}.hero-points span{font-size:13px;padding:8px 10px}}@media print{.sidebar,.topbar,.no-print{display:none}.main{margin:0;width:100%;padding:0}.receipt{box-shadow:none;border:0}.print-only{display:block}}@media(max-width:900px){.sidebar{position:relative;width:100%;height:auto}.app{display:block}.main{margin-left:0;width:100%;padding:14px}.grid,.grid2,.form-grid{grid-template-columns:1fr}.topbar{display:block}table{display:block;overflow-x:auto;white-space:nowrap}}
