*,:before,:after{box-sizing:border-box}body{color:#09090b;background:#fafafa;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.admin-layout{min-height:100vh;display:flex}.sidebar{background:#0a0a0a;flex-direction:column;flex-shrink:0;width:220px;padding:24px 0;display:flex}.sidebar-brand{color:#fff;border-bottom:1px solid #27272a;padding:0 20px 20px;font-size:16px;font-weight:700}.sidebar-nav{flex:1;padding:16px 0}.nav-item{color:#a1a1aa;border-radius:6px;margin:0 8px;padding:10px 20px;font-size:14px;text-decoration:none;display:block}.nav-item:hover{color:#fff;background:#18181b}.sidebar-footer{border-top:1px solid #27272a;padding:16px 20px}.sidebar-user{color:#71717a;word-break:break-all;margin-bottom:8px;font-size:12px;display:block}.admin-main{flex:1;padding:32px;overflow-y:auto}.page-header{justify-content:space-between;align-items:center;margin-bottom:24px;display:flex}.page-header h1{margin:0;font-size:24px}.section-header{justify-content:space-between;align-items:center;margin:28px 0 12px;display:flex}.section-header h2{margin:0;font-size:18px}.stats-row{grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:16px;margin-bottom:28px;display:grid}.stat-card{background:#fff;border:1px solid #f4f4f5;border-radius:10px;padding:16px 20px}.stat-value{font-size:28px;font-weight:700;display:block}.stat-label{color:#71717a;font-size:12px}.table{border-collapse:collapse;background:#fff;border:1px solid #f4f4f5;border-radius:10px;width:100%;overflow:hidden}.table th{text-transform:uppercase;letter-spacing:.5px;color:#71717a;text-align:left;background:#f4f4f5;padding:10px 14px;font-size:12px}.table td{border-top:1px solid #f4f4f5;padding:12px 14px;font-size:14px}.badge{text-transform:uppercase;border-radius:20px;padding:3px 10px;font-size:11px;font-weight:600;display:inline-block}.badge-draft{color:#71717a;background:#f4f4f5}.badge-published{color:#16a34a;background:#dcfce7}.badge-finished,.badge-completed{color:#4338ca;background:#e0e7ff}.badge-cancelled{color:#dc2626;background:#fee2e2}.badge-open{color:#b45309;background:#fef3c7}.badge-approved{color:#2563eb;background:#dbeafe}.badge-rejected{color:#dc2626;background:#fee2e2}.badge-manual-paid{color:#16a34a;background:#dcfce7}.status-actions{align-items:center;gap:10px;display:flex}.link{color:#09090b;font-size:14px}.link-subtle{color:#52525b;margin-top:4px;font-size:13px;display:inline-block}.btn{color:#fff;cursor:pointer;background:#09090b;border:none;border-radius:8px;padding:10px 18px;font-size:14px;font-weight:600}.btn:hover:not(:disabled){background:#27272a}.btn:disabled{opacity:.5}.btn-ghost{color:#71717a;cursor:pointer;background:0 0;border:1px solid #e4e4e7;border-radius:8px;padding:9px 16px;font-size:13px}.btn-ghost:hover:not(:disabled){background:#f4f4f5}.btn-ghost:disabled{opacity:.5;cursor:not-allowed}.btn-small{padding:6px 10px;font-size:12px}.btn-row{justify-content:flex-end;gap:10px;margin-top:16px;display:flex}.table-actions{white-space:nowrap;justify-content:flex-end;gap:8px;display:flex}.subline{color:#71717a;margin-top:2px;font-size:12px;display:block}.code-small{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.auth-page{background:#fafafa;justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-card{background:#fff;border:1px solid #f4f4f5;border-radius:16px;width:100%;max-width:380px;padding:40px}.auth-card h1{margin:0 0 24px;font-size:22px}.field{margin-bottom:16px}.field label{color:#71717a;margin-bottom:4px;font-size:13px;font-weight:500;display:block}.field input,.field select,.field textarea{color:#09090b;background:#fff;border:1px solid #e4e4e7;border-radius:8px;width:100%;padding:10px 12px;font-size:14px;display:block}.field input:disabled{color:#71717a;background:#f4f4f5}.field input:focus,.field select:focus,.field textarea:focus{border-color:#a1a1aa;outline:none}.field textarea{resize:vertical}.hint{color:#a1a1aa;margin-top:4px;font-size:11px;display:block}.modal-overlay{z-index:100;background:#0006;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal{background:#fff;border-radius:16px;width:100%;max-width:480px;max-height:90vh;padding:32px;overflow-y:auto}.modal h2{margin:0 0 20px}.error{color:#ef4444;margin:8px 0;font-size:13px}.success{color:#16a34a;margin:8px 0;font-size:13px}.muted{color:#71717a;font-size:14px}
