:root{color:#1f2937;background:#f6f7f9;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,textarea,select{font:inherit}.shell{display:grid;grid-template-columns:224px 1fr;min-height:100vh}.sidebar{border-right:1px solid #e3e6eb;background:#fff;padding:18px 14px}.login-page{display:grid;min-height:100vh;place-items:center;padding:24px}.login-panel{display:grid;width:min(100%,360px);gap:14px;border:1px solid #e3e6eb;border-radius:8px;background:#fff;padding:22px}.login-brand{display:flex;gap:10px;align-items:center;margin-bottom:4px}.login-brand strong,.login-brand span{display:block}.login-brand strong{font-size:16px}.login-brand span{margin-top:2px;color:#6b7280;font-size:12px}.login-panel label{display:grid;gap:6px;color:#374151;font-size:13px;font-weight:600}.login-panel input{width:100%;border:1px solid #d9dde4;border-radius:8px;background:#fff;color:#1f2937;padding:10px 11px;font-size:14px}.login-error{border-radius:8px;background:#fef2f2;color:#991b1b;padding:10px 11px;font-size:13px}.login-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;margin-top:2px}.brand{display:flex;gap:10px;align-items:center;margin-bottom:24px}.brand-mark{display:grid;width:36px;height:36px;place-items:center;border-radius:8px;background:#ffad2f;color:#fff;font-weight:700}.brand strong,.brand span{display:block}.brand strong{font-size:15px}.brand span{margin-top:2px;color:#6b7280;font-size:12px}.nav{display:grid;gap:4px}.nav-item{display:flex;align-items:center;gap:10px;height:40px;padding:0 10px;border-radius:8px;color:#374151;text-decoration:none;font-size:14px}.nav-item:hover{background:#f3f4f6}.nav-item.active{background:#fff3df;color:#b45309}.logout-button{width:100%;border:0;background:transparent;cursor:pointer;margin-top:10px}.main{min-width:0;padding:28px}.page{max-width:1120px}.page-header{margin-bottom:20px}.page-header h1{margin:0;font-size:24px;line-height:1.25;letter-spacing:0}.page-header p{margin:8px 0 0;color:#6b7280;font-size:14px}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.metric,.panel,.table-wrap,.empty{border:1px solid #e3e6eb;border-radius:8px;background:#fff}.metric{display:grid;gap:8px;padding:16px}.metric svg{color:#f59e0b}.metric span{color:#6b7280;font-size:13px}.metric strong{font-size:26px}.panel{margin-top:16px;padding:18px}.panel h2{margin:0 0 8px;font-size:16px;letter-spacing:0}.panel p{margin:0;color:#4b5563;font-size:14px;line-height:1.7}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:13px 14px;border-bottom:1px solid #edf0f3;text-align:left;font-size:14px;white-space:nowrap}th{color:#6b7280;font-weight:600}td{color:#1f2937}tbody tr:last-child td{border-bottom:0}.empty{padding:28px;color:#6b7280;text-align:center}.form-panel{margin-bottom:16px;padding:18px;border:1px solid #e3e6eb;border-radius:8px;background:#fff}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.form-grid label{display:grid;gap:6px;color:#374151;font-size:13px;font-weight:600}.form-grid input,.form-grid textarea,.form-grid select,.toolbar select{width:100%;border:1px solid #d9dde4;border-radius:8px;background:#fff;color:#1f2937;padding:10px 11px;font-size:14px}.form-grid textarea{min-height:76px;resize:vertical}.span-2{grid-column:span 2}.form-actions,.toolbar,.table-actions{display:flex;align-items:center;gap:10px}.form-actions{margin-top:14px}.toolbar{margin-bottom:12px}.form-actions button,.toolbar button,.table-actions button,.primary{border:0;border-radius:8px;background:#f59e0b;color:#fff;padding:9px 12px;cursor:pointer}.table-actions button{background:#f3f4f6;color:#374151}.form-actions button:disabled,.primary:disabled{background:#d1d5db;cursor:not-allowed}.form-actions span{color:#6b7280;font-size:13px}@media(max-width:760px){.shell{grid-template-columns:1fr}.sidebar{position:sticky;top:0;z-index:10;display:flex;align-items:center;gap:12px;overflow:auto;padding:10px}.brand{margin:0;min-width:150px}.nav{grid-auto-flow:column;grid-auto-columns:max-content}.nav-item{width:40px;padding:0;justify-content:center}.nav-item span{display:none}.main{padding:18px}.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}}
