:root{--blue: #3c8dbc;--blue-dark: #357ca5;--green: #4e9a51;--orange: #d99a30;--red: #c0493b;--sky: #5bc0de;--ink: #333;--muted: #888;--line: #e4e7ea;--bg: #ecf0f5;--sidebar: #222d32;--sidebar-ink: #b8c7ce}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:Segoe UI,Tahoma,Noto Kufi Arabic,Arial,sans-serif;background:var(--bg);color:var(--ink)}h2{margin:0 0 16px;font-weight:600}.center-screen{display:grid;place-items:center;height:100vh;color:var(--muted)}.login-wrap{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.login-lang{position:fixed;inset-block-start:16px;inset-inline-end:20px}.login-title{color:#555;font-weight:400;letter-spacing:2px}.login-card{background:#fff;padding:24px;width:340px;border-radius:4px;box-shadow:0 1px 4px #0000001a;display:flex;flex-direction:column}.login-card label{font-size:13px;font-weight:600;margin-block:10px 4px}.login-sub{text-align:center;color:var(--muted);margin:0 0 12px}.layout{display:flex;min-height:100vh}.sidebar{inline-size:230px;background:var(--sidebar);color:var(--sidebar-ink);flex-shrink:0}.brand{background:var(--blue);color:#fff;font-weight:700;padding:16px;text-align:center}.sidebar nav{display:flex;flex-direction:column;padding-block:8px}.sidebar nav a{color:var(--sidebar-ink);text-decoration:none;padding:12px 18px;border-inline-start:3px solid transparent}.sidebar nav a:hover{background:#1e282c;color:#fff}.sidebar nav a.active{background:#1e282c;color:#fff;border-inline-start-color:var(--blue)}.main{flex:1;display:flex;flex-direction:column;min-inline-size:0}.topbar{background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 18px;block-size:50px}.topbar-actions{display:flex;align-items:center;gap:14px}.topbar .user{font-size:14px}.content{padding:20px;flex:1}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.stat-card{color:#fff;border-radius:4px;padding:20px;text-align:center}.stat-value{font-size:40px;font-weight:700;line-height:1}.stat-label{margin-block-start:8px;opacity:.95}.card-green{background:var(--green)}.card-orange{background:var(--orange)}.card-red{background:var(--red)}.card-blue{background:var(--sky)}.card{background:#fff;border-radius:4px;padding:16px;box-shadow:0 1px 2px #0000000d}.page-head{display:flex;align-items:center;justify-content:space-between;margin-block-end:12px}.search{padding:8px 10px;border:1px solid var(--line);border-radius:4px;inline-size:260px;margin-block-end:12px}.table{inline-size:100%;border-collapse:collapse}.table th,.table td{text-align:start;padding:10px 12px;border-block-end:1px solid var(--line);font-size:14px}.table th{color:#555;font-weight:600}.row-actions{display:flex;gap:10px}.muted{color:var(--muted)}input,select{padding:8px 10px;border:1px solid var(--line);border-radius:4px;font:inherit;inline-size:100%}.btn{background:#f4f4f4;border:1px solid #ddd;padding:8px 14px;border-radius:3px;cursor:pointer;font:inherit}.btn-primary{background:var(--blue);border-color:var(--blue-dark);color:#fff}.btn-primary:hover{background:var(--blue-dark)}.btn-link{background:none;border:none;color:var(--blue);cursor:pointer;padding:0;font:inherit}.btn-link.danger{color:var(--red)}.alert{background:#f2dede;color:#a94442;padding:8px 10px;border-radius:4px;margin-block-end:10px;font-size:14px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#0006;display:grid;place-items:center}.modal{background:#fff;border-radius:4px;padding:20px;inline-size:420px;max-block-size:90vh;overflow:auto;display:flex;flex-direction:column}.modal label{font-size:13px;font-weight:600;margin-block:10px 4px;display:block}.modal.wide{inline-size:640px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-block-start:18px}.check{display:flex;align-items:center;gap:8px;font-weight:400!important}.check input{inline-size:auto}.bi-row,.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.section{margin-block:16px 6px;font-size:14px;color:#555}.checklist{max-block-size:220px;overflow:auto;border:1px solid var(--line);border-radius:4px;padding:8px;display:flex;flex-direction:column;gap:6px}.tabs{display:flex;gap:4px;margin-block-end:12px}.tab{background:#fff;border:1px solid var(--line);padding:7px 16px;border-radius:3px;cursor:pointer;font:inherit}.tab.active{background:var(--blue);color:#fff;border-color:var(--blue-dark)}.badge{display:inline-block;padding:3px 9px;border-radius:10px;font-size:12px;color:#fff}.badge-BOOKED{background:var(--orange)}.badge-INFLEET{background:var(--blue)}.badge-COMPLETED{background:var(--green)}.badge-RESERVED{background:#777}.badge-CANCELLED{background:var(--red)}.badge.pay-FullyPaid{background:var(--green)}.badge.pay-Partial{background:var(--orange)}.badge.pay-Unpaid{background:var(--red)}
