:root{color:#172027;background:#f5f7f8;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}button,input,select{font:inherit}.app{display:grid;grid-template-columns:260px minmax(0,1fr);min-height:100vh}.sidebar{background:#10212d;color:#f6fbfd;padding:24px}.brand{display:flex;align-items:center;gap:10px;font-weight:700}nav{display:grid;gap:6px;margin-top:32px}nav a{color:#c9d7dd;text-decoration:none;padding:10px 12px;border-radius:8px}nav a.active,nav a:hover{background:#1d3545;color:#fff}.content{padding:28px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.eyebrow{margin:0 0 4px;color:#5f7280;font-size:.78rem;font-weight:700;text-transform:uppercase}h1,h2{margin:0;letter-spacing:0}.authbox{display:flex;align-items:center;gap:10px}.button,.iconButton{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:8px;background:#14746f;color:#fff;cursor:pointer;font-weight:700;min-height:40px;padding:0 14px;text-decoration:none}.button.secondary{background:#405766}.iconButton{width:40px;padding:0}.iconButton.danger{background:#f3d9d5;color:#992f22}.banner{display:flex;align-items:center;gap:10px;border-radius:8px;margin-bottom:16px;padding:12px 14px;font-weight:650}.banner.error{background:#ffe8e5;color:#84251b}.banner.success{background:#dcf5e9;color:#14633e}.panel,.metrics>div{background:#fff;border:1px solid #dde5e8;border-radius:8px;box-shadow:0 1px 2px #10212d0d}.panel{margin-bottom:20px;padding:22px}.panelHeader{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.metrics>div{padding:18px}.metrics span{display:block;font-size:2rem;font-weight:800}.metrics p{color:#5f7280;margin:4px 0 0}.addUser{display:grid;grid-template-columns:minmax(220px,1fr) 160px auto;gap:10px;margin-bottom:18px}.ruleBuilder{display:grid;grid-template-columns:minmax(150px,1fr) 120px minmax(160px,1fr) 160px minmax(160px,1fr) minmax(130px,1fr) 140px auto;gap:10px;margin-bottom:18px}.folderLookup{display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:10px;margin:18px 0}.graphStatus{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.graphStatus>div{border:1px solid #dde5e8;border-radius:8px;display:grid;gap:4px;min-height:72px;padding:12px}.graphStatus strong{color:#4d626f;font-size:.84rem}.inlineError{align-items:center;background:#ffe8e5;border-radius:8px;color:#84251b;display:flex;gap:10px;margin-top:14px;padding:12px}input,select{border:1px solid #c8d3d8;border-radius:8px;min-height:40px;padding:0 12px}.table{display:grid;border:1px solid #dde5e8;border-radius:8px;overflow:hidden}.row{display:grid;grid-template-columns:minmax(220px,2fr) 100px 120px minmax(180px,1fr) 48px;align-items:center;gap:10px;min-height:54px;padding:0 14px;border-top:1px solid #edf2f4}.row.header{background:#eef4f4;border-top:0;color:#4d626f;font-size:.86rem;font-weight:800}.row.folderHeader,.row.folderRow,.row.ruleHeader,.row.ruleRow{grid-template-columns:minmax(220px,1fr) 110px 110px 110px}.row.ruleHeader,.row.ruleRow{grid-template-columns:minmax(160px,1fr) minmax(200px,1fr) 150px minmax(180px,1fr) 48px}.categoryChip{align-items:center;display:inline-flex;gap:6px;margin-left:8px;white-space:nowrap}.swatch{border:1px solid rgba(16,33,45,.18);border-radius:999px;display:inline-block;height:14px;width:14px}.row.folderHeader,.row.ruleHeader{background:#eef4f4;border-top:0;color:#4d626f;font-size:.86rem;font-weight:800}.auditList{display:grid;gap:10px}.auditItem{display:grid;grid-template-columns:1.4fr 1.4fr 1.4fr 1fr;gap:12px;border-bottom:1px solid #edf2f4;padding:10px 0}.status{padding:40px}@media(max-width:900px){.app{grid-template-columns:1fr}.sidebar{position:static}.topbar,.authbox{align-items:flex-start;flex-direction:column}.metrics,.addUser,.ruleBuilder,.folderLookup,.graphStatus{grid-template-columns:1fr}.row,.row.folderHeader,.row.folderRow,.row.ruleHeader,.row.ruleRow,.auditItem{grid-template-columns:1fr;padding:14px}}
