:root{--navy: #0f172a;--gold: #c9a24b;--ink: #0f172a;--text: #334155;--muted: #64748b;--bg: #f1f5f9;--card: #ffffff;--border: #e2e8f0;--green: #059669;--red: #dc2626}*{box-sizing:border-box;margin:0}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}body{font-family:system-ui,-apple-system,sans-serif;background:var(--bg);color:var(--text);font-size:14.5px;line-height:1.5}.shell{display:flex;min-height:100vh;align-items:flex-start}.sidebar{width:232px;flex:0 0 232px;min-height:100vh;position:sticky;top:0;background:var(--navy);color:#fff;display:flex;flex-direction:column}.sidebar-brand{padding:20px 20px 16px;font-size:16px;border-bottom:1px solid rgba(255,255,255,.08)}.sidebar-brand b{color:var(--gold)}.sidebar-nav{flex:1;overflow-y:auto;padding:16px 12px}.sidebar-group{margin-bottom:20px}.sidebar-group-title{font-size:11px;text-transform:uppercase;letter-spacing:.07em;color:#fff6;padding:0 10px 6px}.sidebar-nav a{display:block;padding:9px 12px;border-radius:8px;font-size:14px;color:#ffffffd9;margin-bottom:2px}.sidebar-nav a.active,.sidebar-nav a:hover{background:#ffffff1a;color:#fff}.sidebar-footer{padding:16px 20px;border-top:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;gap:10px}.sidebar-name{font-size:13px;color:#ffffffbf;overflow-wrap:anywhere}.wrap{flex:1;min-width:0;max-width:1100px;margin:0 auto;padding:24px 28px 60px}@media(max-width:720px){.shell{flex-direction:column}.sidebar{width:100%;flex:none;min-height:auto;position:relative;flex-direction:row;flex-wrap:wrap;align-items:center}.sidebar-brand{border:none;padding:14px 16px}.sidebar-nav{display:flex;flex-wrap:wrap;padding:0 8px 12px}.sidebar-group{display:flex;flex-wrap:wrap;align-items:center;margin:0 6px 6px 0}.sidebar-group-title{display:none}.sidebar-footer{border:none;flex-direction:row;padding:8px 16px 14px;margin-left:auto}.wrap{padding:20px 16px 60px}}.card{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:16px}h1{font-size:22px;color:var(--ink);margin-bottom:4px}h2{font-size:17px;color:var(--ink);margin-bottom:12px}.sub{color:var(--muted);margin-bottom:20px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;padding:8px 18px;border-radius:8px;border:0;font-weight:600;font-size:14px}.btn-gold{background:var(--gold);color:var(--navy)}.btn-outline{background:#fff;border:1.5px solid var(--border);color:var(--ink)}.btn-danger{background:#fee2e2;color:var(--red)}.btn-sm{min-height:32px;padding:4px 12px;font-size:13px}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:10px 8px;border-bottom:1px solid var(--border);vertical-align:top}th{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.pill{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600}.pill-on{background:#d1fae5;color:var(--green)}.pill-off{background:#f1f5f9;color:var(--muted)}.pill-new{background:#fef3c7;color:#b45309}.pill-paid{background:#dbeafe;color:#1d4ed8}.pill-delivered{background:#d1fae5;color:var(--green)}.pill-cancelled{background:#fee2e2;color:var(--red)}label{display:block;margin-bottom:12px;font-weight:600;font-size:13px;color:var(--ink)}input,textarea,select{width:100%;margin-top:4px;padding:9px 12px;border-radius:8px;border:1.5px solid var(--border);font:inherit;font-weight:400;min-height:40px}textarea{resize:vertical}.row{display:grid;gap:14px;grid-template-columns:1fr}@media(min-width:720px){.row-2{grid-template-columns:1fr 1fr}.row-3{grid-template-columns:1fr 1fr 1fr}}.grid-cards{display:grid;gap:14px;grid-template-columns:1fr}@media(min-width:760px){.grid-cards{grid-template-columns:repeat(3,1fr)}}.portal-card{border-left:4px solid var(--gold)}.portal-card small{color:var(--muted);display:block;margin:4px 0 10px}.login-box{max-width:380px;margin:10vh auto}.err{color:var(--red);font-size:13.5px;margin-top:8px}.ok{color:var(--green);font-size:13.5px;margin-top:8px}.modal-overlay{position:fixed;inset:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;padding:20px;z-index:100}.modal{background:var(--card);border-radius:14px;padding:24px;max-width:440px;width:100%;box-shadow:0 20px 50px #00000040}.modal h2{margin-bottom:10px}
