:root{--color-brand-orange: #ff7a18;--color-brand-orange2: #ffb347;--bg: #f9fafb;--bg-gradient: linear-gradient(135deg, #f9fafb 0%, #ffffff 45%, #fff7ed 100%);--card: #ffffff;--card-border: rgba(17, 24, 39, .08);--muted: #6b7280;--text: #111827;--accent: var(--color-brand-orange);--accent-2: var(--color-brand-orange2);--danger: #dc2626;--input-bg: #ffffff;--input-border: rgba(17, 24, 39, .12)}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--bg-gradient);color:var(--text);font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Cantarell,Noto Sans,sans-serif}.container{max-width:1100px;margin:0 auto;padding:0 16px}.app-navbar{position:sticky;top:0;z-index:10;background:linear-gradient(to right,var(--color-brand-orange),var(--color-brand-orange2));border-bottom:1px solid rgba(255,255,255,.2);box-shadow:0 4px 14px #ff7a1840}.nav-inner{display:flex;align-items:center;justify-content:space-between;height:56px}.brand{font-weight:700;letter-spacing:.3px;cursor:pointer;color:#fff}.nav-links{display:flex;gap:16px;align-items:center}.nav-links a{color:#ffffffe0;text-decoration:none;padding:8px 10px;border-radius:8px}.nav-links a.active{color:#fff;background:#fff3}.nav-links .logout{background:#fff;border:none;color:var(--color-brand-orange);font-weight:600;padding:8px 12px;border-radius:10px;cursor:pointer;box-shadow:0 2px 8px #00000014}.menu-toggle{display:none;background:none;border:none;gap:4px;flex-direction:column}.menu-toggle span{display:block;width:22px;height:2px;background:#fff}@media (max-width: 720px){.nav-links{position:absolute;left:0;right:0;top:56px;display:grid;background:linear-gradient(180deg,#ff8a2e,#ff7a18);padding:12px 16px;border-bottom:1px solid rgba(255,255,255,.2);transform-origin:top;transform:scaleY(0);opacity:0;pointer-events:none;transition:.2s}.nav-links.open{transform:scaleY(1);opacity:1;pointer-events:auto}.menu-toggle{display:flex}}.layout .content{padding:24px}.page h1{margin:0 0 12px}.page p{color:var(--muted)}.auth-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:var(--bg-gradient)}.auth-card{width:100%;max-width:380px;background:var(--card);border:1px solid var(--card-border);border-radius:16px;padding:24px;display:grid;gap:12px;box-shadow:0 10px 40px #ff7a181f,0 4px 16px #1118270f}.auth-card h1{margin:0}.auth-card .brand-title{font-size:1.5rem;font-weight:800;background:linear-gradient(to right,var(--color-brand-orange),var(--color-brand-orange2));-webkit-background-clip:text;background-clip:text;color:transparent}.auth-card .muted{color:var(--muted);margin:0 0 6px}.field{display:grid;gap:6px}.field label{font-size:12px;color:var(--muted)}.field input{background:var(--input-bg);border:1px solid var(--input-border);color:var(--text);padding:10px 12px;border-radius:10px;outline:none}.field select{background-color:var(--input-bg);border:1px solid var(--input-border);color:var(--text);padding:10px 12px;border-radius:10px;outline:none;appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 18px) calc(1em + 2px),calc(100% - 12px) calc(1em + 2px);background-size:6px 6px,6px 6px;background-repeat:no-repeat}.field select:focus,.field input:focus{border-color:var(--color-brand-orange);box-shadow:0 0 0 3px #ff7a1833}.primary{background:linear-gradient(90deg,var(--accent),var(--accent-2));border:none;color:#fff;padding:10px 14px;border-radius:12px;cursor:pointer;font-weight:600;box-shadow:0 4px 14px #ff7a1859}.primary:disabled{opacity:.65;cursor:not-allowed}.error-text{color:var(--danger);font-size:12px}.card{background:var(--card);border:1px solid var(--card-border);border-radius:16px;padding:16px;box-shadow:0 4px 20px #1118270a}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 720px){.grid2{grid-template-columns:1fr}}.grid3{display:grid;grid-template-columns:1.3fr 1fr auto;gap:12px;align-items:end}@media (max-width: 900px){.grid3{grid-template-columns:1fr 1fr}}@media (max-width: 600px){.grid3{grid-template-columns:1fr}}.secondary{background:#fff;border:1px solid var(--input-border);color:var(--text);padding:10px 14px;border-radius:12px;cursor:pointer}.table-wrap{overflow:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{border-bottom:1px solid rgba(17,24,39,.08);text-align:left;padding:10px}.row-actions{display:flex;gap:6px;justify-content:flex-end}.icon{background:#fff;border:1px solid var(--input-border);color:var(--text);padding:6px 8px;border-radius:8px;cursor:pointer}.icon.danger{border-color:#dc262659;color:var(--danger)}.toast{position:fixed;right:16px;top:76px;background:linear-gradient(90deg,var(--accent),var(--accent-2));color:#fff;padding:10px 14px;border-radius:12px;box-shadow:0 6px 24px #ff7a1859;animation:slideIn .2s ease,fadeOut .3s ease 2.7s forwards}.toast.error{background:linear-gradient(90deg,#ef4444,#dc2626)}@keyframes slideIn{0%{transform:translate(120%)}to{transform:translate(0)}}@keyframes fadeOut{to{opacity:0;transform:translate(120%)}}.overlay-center{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#ffffffa6;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:50}.loader{display:flex;flex-direction:column;align-items:center;gap:12px;background:var(--card);border:1px solid var(--card-border);padding:20px 24px;border-radius:14px;box-shadow:0 10px 40px #ff7a1826}.spinner{width:28px;height:28px;border-radius:50%;border:3px solid rgba(255,122,24,.2);border-top-color:var(--color-brand-orange);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#11182759;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;align-items:center;justify-content:center;z-index:60}.modal{width:100%;max-width:540px;background:var(--card);border:1px solid var(--card-border);border-radius:16px;box-shadow:0 20px 50px #1118271f;padding:16px;display:grid;gap:12px}.modal .header{display:flex;align-items:center;justify-content:space-between}.modal .body{display:grid;gap:12px}.modal .footer{display:flex;justify-content:flex-end;gap:8px}
