@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&family=Space+Grotesk:wght@400;500;600;700&display=swap";
:root{--bg-base:#080c10;--bg-surface:#0d1117;--bg-card:#111823;--bg-hover:#1a2535;--bg-active:#1e2d42;--accent:#00d4ff;--accent-dim:#09b;--accent-glow:#00d4ff26;--text-primary:#e8edf5;--text-secondary:#89a;--text-muted:#4a5568;--border:#00d4ff1f;--border-dim:#ffffff0f;--success:#10b981;--warning:#f59e0b;--danger:#ef4444;--info:#3b82f6;--economy:#64748b;--standard:#3b82f6;--premium:#8b5cf6;--luxury:#f59e0b;--radius-sm:6px;--radius:10px;--radius-lg:16px;--radius-xl:24px;--font-body:"Inter", sans-serif;--font-heading:"Space Grotesk", sans-serif;--shadow-sm:0 1px 3px #0006;--shadow:0 4px 16px #00000080;--shadow-lg:0 8px 32px #0009;--shadow-accent:0 0 20px #00d4ff33;--sidebar-w:240px;--header-h:56px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;height:100%}body{font-family:var(--font-body);background:var(--bg-base);color:var(--text-primary);-webkit-font-smoothing:antialiased;max-width:100vw;min-height:100vh;font-size:14px;line-height:1.6;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--text-primary);font-weight:600;line-height:1.3}h1{font-size:28px}h2{font-size:22px}h3{font-size:18px}h4{font-size:15px}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:var(--font-body)}input,select,textarea{font-family:var(--font-body);color:var(--text-primary);font-size:14px}.app-layout{min-height:100vh;display:flex}.main-content{margin-left:var(--sidebar-w);padding-top:var(--header-h);flex:1;min-height:100vh}.page-content{max-width:1280px;padding:24px}.card{background:var(--bg-card);border:1px solid var(--border-dim);border-radius:var(--radius-lg);padding:20px}.card-glass{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--border);border-radius:var(--radius-lg);background:#111823b3}.card-hover{transition:border-color .2s,box-shadow .2s,background .2s}.card-hover:hover{border-color:var(--accent);box-shadow:var(--shadow-accent);background:var(--bg-hover)}.btn{border-radius:var(--radius);white-space:nowrap;border:none;align-items:center;gap:8px;padding:9px 18px;font-size:14px;font-weight:500;transition:all .18s;display:inline-flex}.btn-primary{background:var(--accent);color:#000}.btn-primary:hover{background:var(--accent-dim);box-shadow:var(--shadow-accent)}.btn-secondary{border:1px solid var(--border);color:var(--text-primary);background:0 0}.btn-secondary:hover{background:var(--bg-hover);border-color:var(--accent)}.btn-ghost{color:var(--text-secondary);background:0 0;padding:6px 10px}.btn-ghost:hover{color:var(--text-primary);background:var(--bg-hover)}.btn-danger{background:var(--danger);color:#fff}.btn-danger:hover{background:#c33}.btn-success{background:var(--success);color:#fff}.btn-sm{padding:6px 12px;font-size:12px}.btn-lg{padding:12px 24px;font-size:15px}.btn:disabled{opacity:.4;cursor:not-allowed}.form-group{flex-direction:column;gap:6px;display:flex}.form-label{color:var(--text-secondary);font-size:13px;font-weight:500}.input,.select{background:var(--bg-surface);border:1px solid var(--border-dim);border-radius:var(--radius);color:var(--text-primary);outline:none;width:100%;padding:9px 12px;transition:border-color .15s,box-shadow .15s}.input:focus,.select:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-glow)}.input::placeholder{color:var(--text-muted)}textarea.input{resize:vertical;min-height:80px}.badge{text-transform:uppercase;letter-spacing:.04em;border-radius:999px;align-items:center;gap:4px;padding:2px 10px;font-size:11px;font-weight:600;display:inline-flex}.badge-economy{color:var(--economy);background:#64748b2e}.badge-standard{color:var(--standard);background:#3b82f62e}.badge-premium{color:var(--premium);background:#8b5cf62e}.badge-luxury{color:var(--luxury);background:#f59e0b2e}.badge-success{color:var(--success);background:#10b9812e}.badge-warning{color:var(--warning);background:#f59e0b2e}.badge-danger{color:var(--danger);background:#ef44442e}.table-wrap{overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:13px}.table th{background:var(--bg-surface);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;text-align:left;border-bottom:1px solid var(--border-dim);white-space:nowrap;padding:10px 12px;font-size:11px;font-weight:600}.table td{border-bottom:1px solid var(--border-dim);color:var(--text-primary);vertical-align:middle;padding:10px 12px}.table tr:hover td{background:var(--bg-hover)}.table .total-row td{background:var(--bg-surface);font-weight:600}.table .grand-total td{color:var(--accent);background:var(--bg-active);font-size:14px;font-weight:700}.step-indicator{align-items:center;display:flex}.step-item{flex:1;align-items:center;display:flex}.step-circle{border:2px solid var(--border-dim);background:var(--bg-card);width:32px;height:32px;color:var(--text-muted);z-index:1;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:12px;font-weight:700;transition:all .2s;display:flex}.step-circle.active{border-color:var(--accent);background:var(--accent);color:#000;box-shadow:0 0 0 4px var(--accent-glow)}.step-circle.done{border-color:var(--success);background:var(--success);color:#fff}.step-line{background:var(--border-dim);flex:1;height:2px;transition:background .3s}.step-line.done{background:var(--success)}.modal-overlay{z-index:100;background:#000000b3;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-xl);width:100%;max-width:520px;max-height:85vh;padding:28px;overflow-y:auto}.modal-header{justify-content:space-between;align-items:center;margin-bottom:20px;display:flex}.toast-container{z-index:200;flex-direction:column;gap:8px;display:flex;position:fixed;top:16px;right:16px}.toast{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);min-width:280px;box-shadow:var(--shadow-lg);align-items:center;gap:10px;padding:12px 16px;animation:.2s slideIn;display:flex}.toast-success{border-left:3px solid var(--success)}.toast-error{border-left:3px solid var(--danger)}.toast-warning{border-left:3px solid var(--warning)}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:none}}.select-card{border:2px solid var(--border-dim);border-radius:var(--radius-lg);cursor:pointer;background:var(--bg-card);padding:16px;transition:all .18s}.select-card:hover{background:var(--bg-hover);border-color:#00d4ff66}.select-card.selected{border-color:var(--accent);box-shadow:0 0 0 1px var(--accent), var(--shadow-accent);background:#00d4ff0f}.grid-bg{background-image:linear-gradient(#00d4ff08 1px,#0000 1px),linear-gradient(90deg,#00d4ff08 1px,#0000 1px);background-size:40px 40px}.glow-radial{background:radial-gradient(at 50% 0,#00d4ff14 0%,#0000 70%)}.flex{display:flex}.flex-col{flex-direction:column;display:flex}.items-center{align-items:center}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:8px}.gap-3{gap:12px}.gap-4{gap:16px}.gap-6{gap:24px}.w-full{width:100%}.flex-1{flex:1}.text-accent{color:var(--accent)}.text-muted{color:var(--text-muted)}.text-secondary{color:var(--text-secondary)}.text-sm{font-size:12px}.text-xs{font-size:11px}.font-bold{font-weight:700}.font-semibold{font-weight:600}.mt-2{margin-top:8px}.mt-4{margin-top:16px}.mb-4{margin-bottom:16px}.mb-6{margin-bottom:24px}.p-4{padding:16px}.p-6{padding:24px}.rounded{border-radius:var(--radius)}.border{border:1px solid var(--border-dim)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.grid{display:grid}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:var(--bg-base)}::-webkit-scrollbar-thumb{background:var(--border);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--accent-dim)}@media (max-width:768px){:root{--sidebar-w:0px}.main-content{margin-left:0}.page-content{padding:16px}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}
