:root{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;color:#121212;background:#f2f4f8;--brand-blue: #153a73;--brand-blue-dark: #102b55;--brand-blue-light: #d9e6fb;--brand-blue-border: #315892}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at top left,#dbeafe,#f8fafc 30%,#e2e8f0)}.layout{padding:1rem;display:grid;gap:1rem}.centered-page{min-height:100vh;display:grid;place-items:center;padding:1rem}.card{background:#fff;border-radius:12px;box-shadow:0 8px 24px #00000014;padding:1rem}.topbar{display:flex;justify-content:space-between;align-items:center;gap:1rem;background:linear-gradient(135deg,var(--brand-blue),var(--brand-blue-dark));color:#f8fbff}.topbar h1{margin:0}.topbar-brand{display:flex;align-items:center;gap:1rem}.topbar .muted{color:var(--brand-blue-light)}.topbar-actions{display:flex;align-items:center;gap:.75rem}.page-nav{display:flex;gap:.5rem}.nav-btn{background:#ffffff1f;color:#f8fbff;border:1px solid rgba(255,255,255,.18)}.nav-btn:hover{background:#fff3}.nav-btn.active{background:#f8fbff;color:var(--brand-blue-dark)}.content-grid{display:grid;grid-template-columns:280px 1fr;gap:1rem;align-items:start}.content-grid.sidebar-closed{grid-template-columns:84px minmax(0,1fr)}.page-section{display:grid;gap:1rem}.page-header h2,.page-header p{margin:0}.report-list{display:grid;gap:.5rem;align-content:start;background:linear-gradient(180deg,var(--brand-blue),var(--brand-blue-dark));color:#f8fbff;min-height:100%}.report-list.collapsed{padding:.85rem .65rem}.report-list-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.report-list h2{margin:0}.report-list.collapsed h2{display:none}.report-list .muted{color:var(--brand-blue-light)}.report-btn{text-align:left;border:1px solid var(--brand-blue-border);background:#ffffff1a;color:#f8fbff;border-radius:8px;padding:.6rem;cursor:pointer}.report-btn:hover{background:#ffffff2e}.report-btn.active{border-color:#f8fbff;background:#f8fbff;color:var(--brand-blue-dark)}.embed-area{min-height:480px;padding:1.25rem}.embed-header{display:flex;align-items:start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.embed-header h2{margin:0}.section-kicker{margin:0 0 .25rem;color:var(--brand-blue);font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.sidebar-toggle{background:#ffffff24;color:#f8fbff;border:1px solid rgba(255,255,255,.22)}.sidebar-toggle:hover{background:#ffffff38}.sidebar-toggle-inline{background:var(--brand-blue);color:#f8fbff;border-color:var(--brand-blue)}.sidebar-toggle-inline:hover{background:var(--brand-blue-dark)}.embed-container{width:100%;height:78vh;min-height:700px;border:1px solid #dbe1ea;border-radius:8px;overflow:hidden}.login-card{width:min(1020px,100%);padding:0;overflow:hidden}.login-layout{display:grid;grid-template-columns:minmax(320px,46%) minmax(0,1fr);min-height:440px}.login-brand-panel{display:grid;align-content:space-between;gap:1.5rem;width:100%;padding:2.5rem;background:linear-gradient(135deg,var(--brand-blue),var(--brand-blue-dark))}.login-fields{display:grid;align-content:center;gap:1rem;padding:2.5rem}.login-brand-copy{display:grid;gap:.5rem;color:#f8fbff;justify-items:center;text-align:center}.login-brand-copy h1{margin:0;font-size:clamp(1.4rem,2.2vw,2.2rem);line-height:1.05}.login-brand-copy p{margin:0;color:var(--brand-blue-light);font-size:1rem}.login-form-header{display:grid;gap:.5rem;padding-bottom:1rem;border-bottom:1px solid #e2e8f0}.login-form-kicker{display:inline-flex;align-items:center;gap:.45rem;font-weight:700;color:#243b5b}.login-form-kicker:before{content:"";width:10px;height:10px;border-radius:999px;background:#4f8df6;box-shadow:0 0 0 4px #4f8df62e}.app-logo{display:block;width:auto;height:44px;max-width:100%}.login-logo{height:auto;width:min(100%,430px);max-width:100%}.header-logo{height:54px}label,.stack{display:grid;gap:.35rem}input,select,button{padding:.55rem .65rem;border-radius:8px;border:1px solid #cbd5e1;font:inherit}button:disabled{opacity:.7;cursor:not-allowed}button{background:#1d4ed8;color:#fff;border:none;cursor:pointer}button:hover{background:#1e40af}.secondary-btn{background:#e2e8f0;color:#0f172a}.secondary-btn:hover{background:#cbd5e1}.danger-btn{background:#b91c1c;color:#fff}.danger-btn:hover{background:#991b1b}.muted{color:#64748b;margin:.25rem 0}.error{color:#b91c1c}.form-actions{display:flex;gap:.75rem}.admin-workspace{display:grid;gap:1rem}.admin-overview{display:flex;justify-content:space-between;align-items:center;gap:1rem}.admin-overview h3{margin:0}.admin-stats{display:flex;gap:.75rem}.admin-stat{min-width:92px;border-radius:12px;background:#eff6ff;padding:.85rem 1rem;display:grid;gap:.2rem;text-align:center}.admin-stat strong{color:var(--brand-blue-dark);font-size:1.35rem}.admin-stat span{color:#47617f;font-size:.9rem}.admin-tabs{display:flex;gap:.75rem}.admin-tab{background:#dbe7f8;color:var(--brand-blue-dark);border:1px solid #bfd3ee}.admin-tab:hover{background:#cfe0f7}.admin-tab.active{background:var(--brand-blue);color:#f8fbff;border-color:var(--brand-blue)}.admin-panel-grid{display:grid;grid-template-columns:minmax(280px,360px) minmax(0,1fr);gap:1rem}.reports-layout{grid-template-columns:minmax(280px,340px) minmax(0,1fr)}.admin-sidebar-card,.admin-detail-card{display:grid;gap:1rem;align-content:start}.admin-card-header{display:flex;justify-content:space-between;align-items:start;gap:1rem}.admin-card-header h3,.admin-card-header p{margin:0}.inset-section{padding:1rem;border:1px solid #dbe7f8;border-radius:12px;background:#f8fbff}.admin-entity-list{display:grid;gap:.75rem}.entity-list-item{display:grid;gap:.25rem;text-align:left;background:#f8fafc;color:#0f172a;border:1px solid #dbe1ea}.entity-list-item:hover{background:#eef4fb}.entity-list-item.active{background:#eff6ff;border-color:#93b5e8}.entity-list-item span{color:#5d728d;font-size:.92rem}.entity-tag{display:inline-flex;align-items:center;justify-content:center;width:fit-content;padding:.2rem .5rem;border-radius:999px;background:#dbe7f8;color:var(--brand-blue-dark);font-size:.78rem;font-weight:700;text-transform:uppercase}.detail-identity{display:flex;justify-content:space-between;align-items:center;gap:1rem}.detail-identity h4{margin:0}.detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.detail-grid-tight{margin-top:1rem}.detail-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem}.inline-feedback{margin:0}.success{color:#0f766e}.report-summary-card{display:grid;gap:.25rem;padding:.9rem 1rem;border:1px solid #dbe1ea;border-radius:12px;background:#f8fafc}.report-summary-card span{color:#5d728d;font-size:.92rem}.report-admin-list{display:grid;gap:.75rem}.report-admin-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-top:1px solid #e2e8f0;padding-top:.75rem}.report-admin-row:first-child{border-top:none;padding-top:0}.report-admin-meta{display:grid;gap:.2rem}.report-row-actions{display:flex;gap:.75rem;align-items:center}.report-url{max-width:100%;overflow-wrap:anywhere}.assigned-report-summary{display:flex;align-items:center;gap:.75rem}.access-checklist{display:grid;gap:.75rem}.access-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;border:1px solid #dbe1ea;border-radius:12px;background:#f8fafc;color:#0f172a}.access-item.active{border-color:#8ab2e8;background:#eff6ff}.access-item div{display:grid;gap:.2rem}.access-item span{color:#5d728d;font-size:.92rem}@media(max-width:900px){.content-grid,.content-grid.sidebar-closed,.admin-panel-grid,.reports-layout{grid-template-columns:1fr}.topbar,.topbar-actions{flex-direction:column;align-items:stretch}.topbar-brand{flex-direction:column;align-items:flex-start}.login-layout{grid-template-columns:1fr}.login-brand-panel,.login-fields{padding:1.5rem}.page-nav{width:100%}.page-nav .nav-btn{flex:1}.embed-container{height:420px;min-height:420px}.admin-overview,.admin-card-header,.detail-identity,.detail-actions,.assigned-report-summary,.report-admin-row,.report-row-actions{flex-direction:column;align-items:stretch}.detail-grid{grid-template-columns:1fr}.embed-header,.admin-tabs,.admin-stats{flex-direction:column}}
