.foundation-stack{display:grid;gap:1rem}.foundation-grid{display:grid;gap:1rem}.foundation-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.foundation-card{min-width:0;background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg);padding:1rem;box-shadow:var(--shadow-card)}.foundation-card>header{display:flex;align-items:start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.foundation-card h1,.foundation-card h2,.foundation-card h3,.foundation-card p{margin:0}.foundation-card h2{font-size:1.15rem;color:var(--ink-strong)}.muted{color:var(--ink-muted)}.foundation-notice,.foundation-error{padding:.8rem 1rem;border-radius:.75rem;border:1px solid #a7f3d0;background:#ecfdf5;color:#166534}.foundation-error{border-color:#fecaca;background:#fff1f2;color:#991b1b}.foundation-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.75rem}.foundation-kpis.compact{grid-template-columns:repeat(4,minmax(0,1fr))}.foundation-kpi{position:relative;display:grid;gap:.15rem;min-height:7.5rem;padding:1rem;border:1px solid var(--border);border-radius:var(--radius-lg);background:#fff}.foundation-kpi>span{position:absolute;top:1rem;left:1rem;color:var(--primary);font-size:1.2rem}.foundation-kpi>strong{margin-top:1.6rem;font-size:1.8rem;color:var(--ink-strong)}.foundation-kpi>p{color:var(--ink-muted)}.foundation-kpi.success{border-top:3px solid var(--success)}.foundation-kpi.warning{border-top:3px solid var(--warning)}.foundation-kpi.danger{border-top:3px solid var(--danger)}.foundation-kpi.primary{border-top:3px solid var(--primary)}.health-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem}.health-grid span{display:grid;gap:.3rem;padding:.75rem;border-left:1px solid var(--border);color:var(--ink-muted)}.health-grid strong{color:#087c55}.foundation-filters{display:grid;grid-template-columns:minmax(260px,2fr) repeat(2,minmax(150px,1fr)) auto;align-items:end;gap:.75rem;padding:1rem;background:#fff;border:1px solid var(--border);border-radius:var(--radius-lg)}.foundation-filters label,.platform-user-form label,.foundation-card>label{display:grid;gap:.35rem;font-weight:700;color:var(--ink)}.foundation-filters input,.foundation-filters select,.platform-user-form input,.platform-user-form select,.foundation-card input,.foundation-card select{width:100%;padding:.65rem .75rem;border:1px solid #cbd5e1;border-radius:.65rem;background:#fff;color:var(--ink)}.foundation-table{width:100%;overflow:auto;border:1px solid var(--border);border-radius:.8rem}.table-row{display:grid;min-width:720px;align-items:center;gap:.75rem;padding:.75rem;border-bottom:1px solid #edf1f6;color:inherit;text-decoration:none}.table-row:last-child{border-bottom:0}.table-row.head{background:#f8fafc;color:var(--ink-muted);font-size:var(--font-label);font-weight:800}.foundation-table:not(.users-table):not(.role-table):not(.policy-table):not(.audit-table) .table-row{grid-template-columns:1fr 1.6fr 1fr .7fr}.users-table .table-row{grid-template-columns:1.1fr 1fr 1.1fr 1.2fr .7fr 1fr 1fr 1.4fr;min-width:1150px}.role-table .table-row{grid-template-columns:1.5fr .7fr .6fr .6fr .7fr 1.5fr;min-width:850px}.policy-table .table-row{grid-template-columns:.8fr 1fr 1fr 1.2fr .8fr .5fr;min-width:800px}.audit-table .table-row{grid-template-columns:1.1fr 1fr .8fr 1.3fr 1.3fr .7fr;min-width:900px}.row-actions{display:flex;flex-wrap:wrap;gap:.35rem}.row-actions button,.row-actions a,.pager button{border:1px solid #bfdbfe;border-radius:.45rem;background:#eff6ff;color:#1d4ed8;padding:.35rem .5rem;text-decoration:none}.pager{display:flex;justify-content:center;align-items:center;gap:.75rem;padding:1rem}.pager span{margin-left:auto}.pager button:disabled{opacity:.45}.mobile-user-list{display:grid;gap:.75rem}.mobile-user-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;padding:1rem;border:1px solid var(--border);border-radius:1rem;background:#fff;color:inherit;text-decoration:none}.mobile-user-card h2,.mobile-user-card p{margin:.15rem 0}.mobile-user-card p{color:var(--ink-muted)}.avatar{display:grid;place-items:center;width:3.3rem;height:3.3rem;border-radius:50%;background:linear-gradient(135deg,#dbeafe,#eff6ff);color:#1d4ed8;font-size:1.3rem;font-weight:900}.avatar.large{width:7rem;height:7rem;font-size:2.3rem}.user-profile-card{display:flex;align-items:center;gap:1.25rem;padding:1.5rem}.user-profile-card h1{color:var(--ink-strong)}.user-profile-card>div:last-child{display:grid;gap:.5rem}.user-profile-card>div:last-child>div{display:flex;gap:.75rem;align-items:center}.detail-tabs{display:flex;overflow:auto;border:1px solid var(--border);border-radius:.8rem;background:#fff}.detail-tabs button{flex:1 0 max-content;min-height:3rem;border:0;border-bottom:3px solid transparent;background:transparent;color:var(--ink-muted);font:inherit;font-weight:800}.detail-tabs button.active{border-color:var(--primary);color:var(--primary)}.info-list{display:grid}.info-list>div{display:grid;grid-template-columns:minmax(120px,.7fr) 2fr;gap:.75rem;padding:.8rem 0;border-bottom:1px solid #edf1f6}.info-list>div:last-child{border-bottom:0}.info-list span{color:var(--ink-muted)}.scope-preview{display:grid;gap:.5rem}.scope-preview article{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.5rem;padding:.75rem;border:1px solid var(--border);border-radius:.7rem}.scope-preview small{color:var(--ink-muted)}.assignment-panes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.assignment-panes article{display:grid;grid-template-columns:minmax(0,1fr);align-content:start;gap:.75rem}.assignment-panes input,.assignment-panes select{min-width:0;max-width:100%}.effective-access{display:grid;gap:1rem}.scope-types{display:grid;grid-template-columns:repeat(2,1fr);gap:.5rem;margin:1rem 0}.scope-types span{padding:.75rem;border:1px solid #bfdbfe;border-radius:.65rem;background:#eff6ff;color:#1d4ed8}.permission-matrix{display:grid;gap:.75rem}.permission-matrix>section{display:grid;grid-template-columns:170px 1fr;gap:1rem;padding:.75rem;border:1px solid var(--border);border-radius:.75rem}.permission-matrix>section>div{display:flex;flex-wrap:wrap;gap:.5rem}.permission-cell{display:grid;grid-template-columns:auto 1fr;gap:.2rem .45rem;min-width:160px;padding:.55rem;border:1px solid var(--border);border-radius:.55rem}.permission-cell.enabled{border-color:#86efac;background:#f0fdf4}.permission-cell small{grid-column:2;color:var(--ink-muted);font-size:var(--font-meta)}.form-grid{display:grid;gap:1rem}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.platform-user-form{display:grid;gap:1rem}.platform-user-form section{display:grid;gap:1rem}.platform-user-form small{color:var(--ink-muted);font-weight:400}.platform-user-form .check{display:flex;align-items:center;grid-template-columns:auto 1fr}.platform-user-form .check input{width:auto}.policy-hint{margin-top:1rem;padding:1rem;border:1px solid #bfdbfe;border-radius:.75rem;background:#eff6ff}.audit-timeline{display:grid}.audit-timeline>a{position:relative;display:grid;grid-template-columns:1rem 1fr;gap:.7rem;padding:.75rem;color:inherit;text-decoration:none}.audit-timeline>a>span{width:.7rem;height:.7rem;margin-top:.35rem;border-radius:50%;background:var(--success)}.audit-timeline>a>span.danger{background:var(--danger)}.audit-timeline>a>div{display:grid;gap:.25rem;border-bottom:1px solid var(--border);padding-bottom:.75rem}.audit-timeline small{color:var(--ink-muted)}.mobile-audit>a{grid-template-columns:1.25rem 1fr;padding:1rem;background:#fff;border:1px solid var(--border);border-radius:1rem;margin-bottom:.75rem}.mobile-audit header{display:flex;justify-content:space-between}.mobile-audit p{margin:.25rem 0}.audit-summary .info-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.5rem}.diff-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.diff-grid>div{min-width:0}.diff-grid pre{min-height:9rem;overflow:auto;padding:.75rem;border:1px solid var(--border);border-radius:.7rem;background:#f8fafc;white-space:pre-wrap;direction:ltr;text-align:left}.ui-badge.danger{background:#fee2e2;color:#b91c1c}
@media(max-width:1100px){.foundation-kpis{grid-template-columns:repeat(3,1fr)}.form-grid.four{grid-template-columns:repeat(2,1fr)}.assignment-panes{grid-template-columns:minmax(0,1fr)}.foundation-filters{grid-template-columns:repeat(2,1fr)}.foundation-filters .btn{min-height:var(--control-height)}}
@media(max-width:720px){.foundation-grid.two,.form-grid.two,.form-grid.three,.form-grid.four{grid-template-columns:1fr}.foundation-kpis,.foundation-kpis.compact{grid-template-columns:repeat(2,minmax(0,1fr))}.foundation-kpi{min-height:6.5rem}.health-grid{grid-template-columns:1fr 1fr}.foundation-filters{grid-template-columns:1fr}.permission-matrix>section{grid-template-columns:1fr}.permission-cell{width:100%}.user-profile-card{align-items:start}.avatar.large{width:5rem;height:5rem}.scope-preview article{grid-template-columns:1fr}.audit-summary .info-list,.diff-grid{grid-template-columns:1fr}.mobile-foundation{padding-bottom:1rem}.mobile-user-card{grid-template-columns:auto 1fr}.mobile-user-card>.ui-badge{grid-column:2}.info-list>div{grid-template-columns:1fr}.foundation-card{padding:.85rem}}
@media(max-width:420px){.foundation-kpis,.foundation-kpis.compact,.health-grid{grid-template-columns:1fr}.user-profile-card{display:grid}.foundation-kpi>strong{font-size:1.55rem}}
.audit-date-bar{display:flex;justify-content:flex-start;gap:.75rem;margin:0 0 1rem}.audit-date-bar label{display:grid;gap:.25rem;color:var(--ink-muted)}.audit-date-bar input{padding:.5rem;border:1px solid #cbd5e1;border-radius:.6rem;background:#fff}@media(max-width:520px){.audit-date-bar{display:grid;grid-template-columns:1fr 1fr}.audit-date-bar input{width:100%}}
.foundation-filters{grid-template-columns:minmax(240px,2fr) repeat(4,minmax(120px,1fr)) auto}
@media(max-width:1100px){.foundation-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:720px){.foundation-filters{grid-template-columns:1fr}}
.scope-remove{justify-self:start;border:1px solid #fecaca;border-radius:.5rem;background:#fff1f2;color:#b91c1c;padding:.35rem .55rem;font:inherit;font-size:var(--font-label);cursor:pointer}
.mobile-user-card>div:nth-child(2),.user-profile-card>div:last-child{min-width:0}.mobile-user-card h2,.mobile-user-card .ltr,.user-profile-card h1,.user-profile-card .ltr{overflow-wrap:anywhere;word-break:break-word}
.mobile-audit>a>div{min-width:0}.mobile-audit strong,.mobile-audit p{overflow-wrap:anywhere;word-break:break-word}
/* Effective-scope previews must shrink within their card at tablet widths. */
[data-testid="platform-data-scope"] .scope-types{grid-template-columns:repeat(2,minmax(0,1fr))}
[data-testid="platform-data-scope"] .scope-types span,[data-testid="platform-data-scope"] .scope-preview article>*{min-width:0;overflow-wrap:anywhere}
[data-testid="platform-data-scope"] .scope-preview article{grid-template-columns:repeat(3,minmax(0,1fr))}
[data-testid="platform-data-scope"] select{min-width:0;max-width:100%;width:100%;box-sizing:border-box}
@media(max-width:720px){[data-testid="platform-data-scope"] .scope-preview article{grid-template-columns:minmax(0,1fr)}}

.effective-access,.scope-preview,.scope-preview article{min-width:0;overflow-wrap:anywhere}.effective-access>header{flex-wrap:wrap}

.ui-row-menu{position:relative}.ui-row-menu summary{display:flex;align-items:center;justify-content:center;min-width:2.75rem;min-height:2.75rem;cursor:pointer;list-style:none;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--primary);background:var(--surface)}.ui-row-menu>div{display:grid;gap:.5rem;padding:.75rem;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface-subtle);min-width:10rem}.ui-row-menu>div :is(a,button){min-height:2.75rem;text-align:start}
.ui-audit-metadata>summary{cursor:pointer;min-height:2.75rem;color:var(--primary);font-weight:700}.ui-audit-metadata>section{margin-top:1rem}
