.saas-permission-matrix{gap:var(--saas-space-md);flex-direction:column;display:flex}.saas-permission-matrix__toolbar{gap:var(--saas-space-sm);flex-wrap:wrap;display:flex}.saas-permission-matrix__search{align-items:center;gap:var(--saas-space-sm);min-block-size:40px;padding-inline:var(--saas-space-md);border:1px solid var(--saas-border-default);border-radius:var(--saas-radius-md);background:var(--saas-bg-surface);color:var(--saas-text-secondary);flex:280px;display:flex}.saas-permission-matrix__search:focus-within{border-color:var(--saas-brand-primary);box-shadow:var(--saas-focus-ring)}.saas-permission-matrix__search input{min-inline-size:0;color:var(--saas-text-primary);font:inherit;background:0 0;border:0;outline:none;flex:1}.saas-permission-matrix__tool{align-items:center;gap:var(--saas-space-xs);min-block-size:40px;padding-inline:var(--saas-space-md);border:1px solid var(--saas-border-default);border-radius:var(--saas-radius-md);background:var(--saas-bg-surface);color:var(--saas-text-primary);font:inherit;font-size:var(--saas-font-body-sm);cursor:pointer;transition:border-color var(--saas-motion-micro) var(--saas-ease-standard);font-weight:600;display:inline-flex}.saas-permission-matrix__tool:hover{border-color:var(--saas-border-strong)}.saas-permission-matrix__tool:focus-visible,.saas-permission-group__head:focus-visible{box-shadow:var(--saas-focus-ring);outline:none}.saas-permission-matrix__empty{color:var(--saas-text-secondary);margin:0}.saas-permission-group{border:1px solid var(--saas-border-default);border-radius:var(--saas-radius-lg);background:var(--saas-bg-surface);overflow:hidden}.saas-permission-group__head{align-items:center;gap:var(--saas-space-md);inline-size:100%;padding:var(--saas-space-md);color:var(--saas-text-primary);font:inherit;text-align:start;cursor:pointer;transition:background-color var(--saas-motion-micro) var(--saas-ease-standard);background:0 0;border:0;display:flex}.saas-permission-group[data-any=true] .saas-permission-group__head{background:var(--saas-brand-subtle)}.saas-permission-group__icon{border-radius:var(--saas-radius-md);background:var(--saas-bg-sunken);block-size:40px;inline-size:40px;color:var(--saas-text-secondary);justify-content:center;align-items:center;display:inline-flex}.saas-permission-group[data-any=true] .saas-permission-group__icon{background:var(--saas-bg-surface);color:var(--saas-brand-primary)}.saas-permission-group__title{font-size:var(--saas-font-heading);flex:1;font-weight:600}.saas-permission-group[data-any=true] .saas-permission-group__title{color:var(--saas-brand-primary)}.saas-permission-group__count{color:var(--saas-text-secondary);font-size:var(--saas-font-body-sm);white-space:nowrap;font-weight:600}.saas-permission-group__chevron{border-radius:var(--saas-radius-full);background:var(--saas-bg-surface);block-size:28px;inline-size:28px;color:var(--saas-text-secondary);transition:transform var(--saas-motion-micro) var(--saas-ease-standard);justify-content:center;align-items:center;display:inline-flex}.saas-permission-group[data-open=true] .saas-permission-group__chevron{transform:rotate(180deg)}.saas-permission-group__body{gap:var(--saas-space-sm);padding:var(--saas-space-md);border-block-start:1px solid var(--saas-border-default);grid-template-columns:repeat(auto-fill,minmax(220px,1fr));display:grid}.saas-permission-tile{align-items:center;gap:var(--saas-space-sm);padding:var(--saas-space-sm) var(--saas-space-md);border:1px solid var(--saas-border-default);border-radius:var(--saas-radius-md);background:var(--saas-bg-sunken);cursor:pointer;transition:border-color var(--saas-motion-micro) var(--saas-ease-standard), background-color var(--saas-motion-micro) var(--saas-ease-standard);display:flex}.saas-permission-tile[data-on=true]{border-color:var(--saas-brand-primary);background:var(--saas-bg-surface)}.saas-permission-tile[data-locked=true]{cursor:default}.saas-permission-tile__text{gap:var(--saas-space-2xs);flex-direction:column;flex:1;min-inline-size:0;display:flex}.saas-permission-tile__label{color:var(--saas-text-primary);font-weight:600}.saas-permission-tile__hint{color:var(--saas-text-secondary);font-size:var(--saas-font-caption)}.saas-permission-tile__switch{border-radius:var(--saas-radius-full);background:var(--saas-border-strong);appearance:none;block-size:20px;inline-size:36px;cursor:inherit;transition:background-color var(--saas-motion-micro) var(--saas-ease-standard);flex:none;margin:0;position:relative}.saas-permission-tile__switch:after{border-radius:var(--saas-radius-full);background:var(--saas-bg-surface);content:"";block-size:14px;inline-size:14px;transition:transform var(--saas-motion-micro) var(--saas-ease-standard);position:absolute;inset-block-start:3px;inset-inline-start:3px}.saas-permission-tile__switch:checked{background:var(--saas-brand-primary)}.saas-permission-tile__switch:checked:after{transform:translate(16px)}[dir=rtl] .saas-permission-tile__switch:checked:after{transform:translate(-16px)}.saas-permission-tile__switch:disabled{opacity:.55}.saas-permission-tile__switch:focus-visible{box-shadow:var(--saas-focus-ring);outline:none}@media (width<=599px){.saas-permission-matrix__tool{min-block-size:44px}.saas-permission-group__body{grid-template-columns:1fr}}