*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,Arial,sans-serif;background:#f4f6f8;color:#17202a}.topbar{display:flex;align-items:center;gap:.75rem;padding:1rem 2rem;background:#111827;color:white}.topbar nav{margin-left:auto;display:flex;gap:1rem}.topbar nav a{color:#d1d5db;text-decoration:none}.topbar nav a:hover{color:white}.brand{font-size:1.35rem;font-weight:800;color:white;text-decoration:none;letter-spacing:.08em}.shell{max-width:1280px;margin:0 auto;padding:3rem 2rem}.hero,.panel{background:white;border-radius:18px;padding:2rem;box-shadow:0 12px 35px rgba(0,0,0,.055)}.hero{padding:3.5rem}.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-weight:700;font-size:.78rem;color:#4b5563}.hero h1,.page-head h1{font-size:clamp(2rem,5vw,4.6rem);margin:.4rem 0 1rem;line-height:1}.page-head h1{font-size:2.4rem}.lede{font-size:1.2rem;max-width:760px;color:#4b5563}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.25rem;margin-top:1.25rem}.grid article{background:white;border-radius:14px;padding:1.5rem}.grid h2,.panel h2{margin-top:0}.two-col{display:grid;grid-template-columns:1fr 1.2fr;gap:1.25rem}.page-head{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:1.25rem}.page-head p{color:#6b7280}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.form-grid label{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;font-weight:600}.form-grid input,.form-grid select{padding:.72rem;border:1px solid #d1d5db;border-radius:8px;font:inherit}.actions{grid-column:1/-1;display:flex;align-items:center;gap:1rem}.button,button{border:0;border-radius:8px;padding:.72rem 1rem;background:#111827;color:white;text-decoration:none;cursor:pointer;font-weight:600}.secondary{background:#e5e7eb;color:#111827}.hero-actions{display:flex;gap:.75rem;margin-top:1.5rem}.stack{display:flex;flex-direction:column;gap:.75rem}.item{display:flex;justify-content:space-between;align-items:center;border:1px solid #e5e7eb;border-radius:10px;padding:1rem}.item small{display:block;color:#6b7280;margin-top:.25rem}.muted{color:#6b7280}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin-bottom:1rem}.kpis article{padding:1rem;background:#f8fafc;border-radius:10px}.kpis strong{display:block;font-size:1.7rem}.kpis span{font-size:.8rem;color:#6b7280}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.7rem;border-bottom:1px solid #e5e7eb;font-size:.86rem}th{font-size:.76rem;text-transform:uppercase;color:#6b7280}.hidden{display:none}.status{font-weight:700}footer{text-align:center;padding:2rem;color:#6b7280;font-size:.88rem}@media(max-width:850px){.grid,.two-col,.form-grid{grid-template-columns:1fr}.topbar{align-items:flex-start;flex-wrap:wrap}.topbar nav{width:100%;margin:0;overflow:auto}.hero{padding:2rem}.shell{padding:2rem 1rem}}
.full-width{grid-column:1/-1}.item-actions{display:flex;gap:.5rem;align-items:center}.danger{background:#991b1b}.query-form{display:flex;flex-direction:column;gap:1.25rem}.query-row{display:grid;gap:1rem}.query-connector-row{grid-template-columns:minmax(260px,1fr);padding-bottom:.35rem}.query-date-row{grid-template-columns:repeat(3,minmax(180px,240px));align-items:end}.query-filter-row{grid-template-columns:repeat(4,1fr)}.query-form label{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;font-weight:600}.query-form input,.query-form select{padding:.72rem;border:1px solid #d1d5db;border-radius:8px;font:inherit}@media(max-width:850px){.query-date-row,.query-filter-row{grid-template-columns:1fr}.item{align-items:flex-start;gap:1rem}.item-actions{flex-wrap:wrap;justify-content:flex-end}}.full-width{grid-column:1/-1}.password-with-option{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.65rem}.password-with-option>input[type=password]{width:100%}.form-grid .inline-check{display:flex;flex-direction:row;align-items:center;gap:.35rem;font-size:.78rem;font-weight:500;white-space:nowrap;color:#4b5563}.form-grid .inline-check input[type=checkbox]{width:auto;margin:0;padding:0}.form-grid input:disabled{background:#f3f4f6;color:#9ca3af}

.section-divider{border-top:1px solid #d1d5db;margin-top:.25rem;padding-top:.8rem;color:#6b7280;font-size:.76rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.section-divider span{background:white;padding-right:.5rem}.password-blank-option{margin-top:.15rem}.connector-section{margin-top:.1rem}
.form-field{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;font-weight:600}.form-field>input{padding:.72rem;border:1px solid #d1d5db;border-radius:8px;font:inherit}.form-field .inline-check{font-weight:500}
.query-charts{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(420px,1.8fr);gap:1rem;margin:1rem 0 1.5rem}.query-chart-card{border:1px solid #e5e7eb;border-radius:12px;padding:1.25rem;background:#fff}.query-chart-head h2{font-size:1rem;margin:0}.query-chart-head p{font-size:.8rem;color:#6b7280;margin:.25rem 0 1rem}.comparison-chart{display:flex;align-items:flex-end;justify-content:center;gap:2rem;height:220px}.comparison-item{height:100%;width:min(110px,38%);display:grid;grid-template-rows:auto 1fr auto;gap:.4rem;text-align:center}.comparison-value,.trend-value{font-size:.78rem;font-weight:700;color:#374151}.comparison-track,.trend-track{position:relative;background:#f3f4f6;border-radius:8px 8px 3px 3px;overflow:hidden;min-height:30px}.comparison-bar,.trend-bar{position:absolute;left:0;right:0;bottom:0;background:#374151;border-radius:7px 7px 0 0;min-height:0}.comparison-label,.trend-label{font-size:.75rem;color:#4b5563;font-weight:600}.trend-chart{height:220px;display:flex;align-items:stretch;gap:.5rem;overflow-x:auto;padding-bottom:.25rem}.trend-item{height:100%;min-width:48px;flex:1;display:grid;grid-template-rows:auto 1fr auto;gap:.35rem;text-align:center}.trend-label{font-size:.68rem;white-space:nowrap}.trend-track{min-height:80px}.trend-bar{background:#4b5563}@media(max-width:850px){.query-charts{grid-template-columns:1fr}.trend-item{min-width:52px}}

.brand-copy{display:flex;flex-direction:column;gap:.1rem}.brand-copy small{font-size:.68rem;color:#9ca3af}.query-chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem}.graph-period-control{display:flex;flex-direction:column;gap:.3rem;font-size:.72rem;font-weight:600;color:#4b5563;min-width:120px}.graph-period-control select{padding:.45rem .55rem;border:1px solid #d1d5db;border-radius:7px;font:inherit;background:white;color:#111827}.query-chart-head p{margin-bottom:1rem}@media(max-width:600px){.query-chart-head{flex-direction:column}.graph-period-control{width:100%}}

/* Build 14 authentication and administration */
.auth-body{min-height:100vh;background:#eef1f5;display:grid;place-items:center}.auth-shell{width:min(440px,calc(100% - 2rem));padding:2rem 0}.auth-card{background:white;border-radius:18px;padding:2.5rem;box-shadow:0 18px 48px rgba(0,0,0,.08)}.auth-card h1{font-size:2.2rem;margin:.35rem 0 .65rem}.auth-brand{font-size:1.7rem;font-weight:800;letter-spacing:.1em}.auth-form{display:flex;flex-direction:column;gap:1rem;margin-top:1.5rem}.auth-form label{display:flex;flex-direction:column;gap:.4rem;font-size:.85rem;font-weight:600}.auth-form input{padding:.8rem;border:1px solid #d1d5db;border-radius:8px;font:inherit}.alert{padding:.85rem 1rem;border-radius:9px;margin:1rem 0;font-size:.9rem}.alert.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.alert.success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.user-menu{display:flex;align-items:center;gap:.8rem;margin-left:1rem;padding-left:1rem;border-left:1px solid #374151}.user-menu span{display:flex;flex-direction:column;line-height:1.1}.user-menu small{font-size:.68rem;color:#9ca3af;margin-top:.2rem}.user-menu a{font-size:.78rem;color:#d1d5db;text-decoration:none}.user-menu a:hover{color:#fff}.tenant-choice-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.tenant-choice{display:flex;flex-direction:column;align-items:flex-start;gap:.5rem;padding:1.25rem;border:1px solid #e5e7eb;border-radius:12px}.tenant-choice strong{font-size:1.05rem}.tenant-choice span{font-size:.72rem;color:#6b7280;word-break:break-all}.tenant-choice button{margin-top:.5rem}.admin-grid{align-items:start}.admin-user-meta{display:flex;align-items:center;gap:.75rem;font-size:.8rem}.status-ok{color:#166534}.status-off{color:#991b1b}.admin-separator{border:0;border-top:1px solid #e5e7eb;margin:2rem 0}.admin-subheading{margin-top:2rem!important}.admin-section-list{max-height:340px;overflow:auto}@media(max-width:1050px){.topbar{flex-wrap:wrap}.topbar nav{order:3;width:100%;margin-left:0}.user-menu{margin-left:auto}}@media(max-width:650px){.user-menu{width:100%;margin:0;padding:1rem 0 0;border-left:0;border-top:1px solid #374151;flex-wrap:wrap}}

.audit-json{max-width:360px;white-space:pre-wrap;word-break:break-word;margin:0;font-size:.78rem;line-height:1.35;max-height:9rem;overflow:auto}
.table-scroll{overflow:auto}
