/* Assessment workspace polish
 * No-build, tenant-aware convergence for final evaluation, psychology, and
 * institution-branding workspaces. Semantic status colours remain system-owned.
 */

/* Final Evaluation AI assistant ------------------------------------------ */
.afr-ai-assistant{
    display:grid;
    gap:.75rem;
    margin-bottom:1rem;
    padding:.85rem;
    border:1px solid color-mix(in srgb,var(--tenant-secondary,#6d28d9) 34%,var(--app-border,#d8e6f0));
    border-radius:12px;
    background:color-mix(in srgb,var(--tenant-secondary,#6d28d9) 6%,var(--tenant-surface,#fff));
    color:var(--tenant-surface-text,var(--app-content-text,#122033));
}
.afr-ai-assistant__head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:.85rem;
    min-width:0;
}
.afr-ai-assistant__head>div:first-child{min-width:0}
.afr-ai-assistant h4{margin:.15rem 0 .25rem;color:var(--app-heading-text,#102840);font-size:1rem}
.afr-ai-assistant p{margin:0;color:color-mix(in srgb,var(--app-content-text,#122033) 72%,transparent);font-size:.75rem;line-height:1.5}
.afr-ai-assistant__status{
    display:flex;
    align-items:center;
    gap:.55rem;
    min-width:0;
    padding:.55rem .65rem;
    border-radius:9px;
    background:var(--tenant-surface,var(--app-surface-bg,#fff));
    border:1px solid var(--app-border,var(--tenant-border,#d8e6f0));
    font-size:.73rem;
}
.afr-ai-assistant__status>span:last-child{min-width:0;overflow-wrap:anywhere}
.afr-btn--ai{
    background:var(--tenant-secondary,#6d28d9)!important;
    border-color:var(--tenant-secondary,#6d28d9)!important;
    color:#fff!important;
}
.afr-ai-preview{
    border:1px solid var(--app-border,var(--tenant-border,#d8e6f0));
    border-radius:10px;
    background:var(--tenant-surface,var(--app-surface-bg,#fff));
    overflow:hidden;
}
.afr-ai-preview>summary{
    cursor:pointer;
    padding:.65rem .75rem;
    color:var(--app-heading-text,#102840);
    font-size:.76rem;
    font-weight:900;
    background:var(--tenant-soft-surface,var(--app-soft-bg,#f6fafc));
}
.afr-ai-preview__grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:.65rem;
    padding:.7rem;
}
.afr-ai-preview__grid article{
    min-width:0;
    padding:.65rem;
    border:1px solid var(--app-border,var(--tenant-border,#d8e6f0));
    border-radius:9px;
    background:var(--tenant-surface,var(--app-surface-bg,#fff));
}
.afr-ai-preview__grid strong{display:block;margin-bottom:.3rem;color:var(--app-heading-text,#102840);font-size:.72rem}
.afr-ai-preview__grid p{white-space:pre-line;overflow-wrap:anywhere}
.afr-ai-preview>.afr-alert,.afr-ai-preview>.afr-actions{margin:.7rem}
.afr-ai-review{
    display:grid;
    gap:.65rem;
    padding:.7rem;
    border:1px dashed color-mix(in srgb,var(--tenant-secondary,#6d28d9) 45%,var(--app-border,#d8e6f0));
    border-radius:10px;
    background:var(--tenant-surface,var(--app-surface-bg,#fff));
}
.afr-ai-review__confirm{display:flex;align-items:flex-start;gap:.55rem;font-size:.75rem;font-weight:800;line-height:1.45}
.afr-ai-review__confirm input{margin-top:.15rem;flex:0 0 auto}
.afr-ai-reject-field{display:grid;gap:.25rem;min-width:220px;flex:1}
.afr-ai-reject-field span{font-size:.65rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:color-mix(in srgb,var(--app-content-text,#122033) 70%,transparent)}
.afr-ai-reject-field input{width:100%;min-height:36px;border:1px solid var(--app-border,var(--tenant-border,#d8e6f0));border-radius:9px;padding:.45rem .6rem;background:var(--tenant-surface,#fff);color:var(--tenant-surface-text,#122033)}

/* Psychology workspace density and scanability -------------------------- */
.psy-case-page{max-width:none!important;padding:0 clamp(.65rem,1.5vw,1.35rem) 1.25rem}
.psy-case-topbar{position:sticky;top:0;z-index:18;border-radius:0 0 12px 12px;box-shadow:0 5px 18px rgba(16,40,64,.08)}
.psy-ai-panel{grid-template-columns:minmax(0,1fr) minmax(260px,auto);align-items:start;padding:.85rem 1rem}
.psy-ai-panel h2{font-size:1rem}.psy-ai-panel p{font-size:.74rem;line-height:1.5}
.psy-ai-actions{max-width:480px}
.psy-priority-metrics{gap:.65rem!important;margin:.75rem 0!important}
.psy-priority-metrics>div{border:1px solid var(--app-border,var(--tenant-border,#d8e6f0));background:var(--tenant-soft-surface,var(--app-soft-bg,#f6fafc))!important}
.psy-case-shell{grid-template-columns:minmax(310px,390px) minmax(0,1fr);gap:.8rem}
.psy-case-left{top:92px;max-height:calc(100vh - 108px);scrollbar-gutter:stable}
.psy-source-card>header{align-items:flex-start}.psy-source-card>header>div{min-width:0}
.psy-source-card .ac-form-grid{grid-template-columns:1fr!important}
.psy-source-card .ui-grid-span-2{grid-column:auto!important}
.psy-work-section{padding:.85rem}.psy-work-section>header{margin-bottom:.75rem}
.psy-step-nav{position:sticky;top:92px;z-index:12;padding:.35rem;border:1px solid var(--app-border,var(--tenant-border,#d8e6f0));border-radius:10px;background:color-mix(in srgb,var(--tenant-surface,#fff) 94%,transparent);backdrop-filter:blur(10px)}
.psy-step-nav button{min-height:42px;line-height:1.25}
.psy-sticky-save{bottom:.65rem}

/* Branding colour editor: prevent any legacy grid from splitting metadata */
.hpc-tenant-settings .hpc-branding-group .hpc-form-grid-4{
    grid-template-columns:repeat(4,minmax(190px,1fr))!important;
    gap:.85rem!important;
}
.hpc-tenant-settings .hpc-color-control__row{align-items:center!important}
.hpc-tenant-settings .hpc-color-control__meta{grid-column:auto!important;width:100%!important}
.hpc-tenant-settings .hpc-color-control__meta code{font-size:.64rem!important}

@media(max-width:1280px){
    .afr-ai-preview__grid{grid-template-columns:1fr 1fr}
    .psy-case-shell{grid-template-columns:330px minmax(0,1fr)}
    .hpc-tenant-settings .hpc-branding-group .hpc-form-grid-4{grid-template-columns:repeat(2,minmax(220px,1fr))!important}
}
@media(max-width:980px){
    .afr-ai-assistant__head{display:grid}
    .afr-ai-preview__grid{grid-template-columns:1fr}
    .psy-ai-panel{grid-template-columns:1fr}
    .psy-case-topbar,.psy-step-nav{position:static}
    .psy-case-shell{grid-template-columns:1fr}
    .psy-case-left{position:static;max-height:none}
}
@media(max-width:720px){
    .afr-ai-assistant{padding:.7rem}
    .afr-ai-assistant__status{align-items:flex-start;flex-direction:column}
    .afr-ai-review .afr-actions{align-items:stretch;flex-direction:column}
    .afr-ai-reject-field{min-width:0;width:100%}
    .hpc-tenant-settings .hpc-branding-group .hpc-form-grid-4{grid-template-columns:1fr!important}
}

/* AI tenant availability and provider governance */
.ai-availability-list{display:grid;gap:.55rem}.ai-availability-row{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:.75rem .85rem;border:1px solid var(--tenant-border-color,#d7e3ec);border-radius:.75rem;background:var(--tenant-surface-soft,#f6fafc)}.ai-availability-row>div{min-width:0}.ai-availability-row strong,.ai-availability-row small{display:block}.ai-availability-row small{margin-top:.2rem;color:var(--tenant-content-text,#5b6f82);overflow-wrap:anywhere}.ai-provider-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;margin:1rem 0 0}.ai-provider-summary>div{padding:.75rem;border:1px solid var(--tenant-border-color,#d7e3ec);border-radius:.75rem}.ai-provider-summary dt{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:var(--tenant-content-text,#5b6f82)}.ai-provider-summary dd{margin:.35rem 0 0;font-weight:700;overflow-wrap:anywhere}@media(max-width:960px){.ai-provider-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.ai-provider-summary{grid-template-columns:1fr}.ai-availability-row{display:grid}}

/* AI provider preset catalog and free/local provider setup */
.as-provider-preset-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
}
.as-provider-preset {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: stretch;
    gap: .5rem;
    border: 1px solid var(--tenant-border, #d8e6f0);
    border-radius: 1rem;
    background: var(--tenant-surface, #fff);
    padding: .85rem;
    color: var(--tenant-content-text, #122033);
    text-align: left;
    cursor: pointer;
}
.as-provider-preset:hover,
.as-provider-preset:focus-visible {
    border-color: var(--tenant-primary, #0f8fbd);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--tenant-primary, #0f8fbd) 14%, transparent);
    outline: none;
}
.as-provider-preset.is-active {
    border-color: var(--tenant-primary, #0f8fbd);
    background: color-mix(in srgb, var(--tenant-primary, #0f8fbd) 7%, var(--tenant-surface, #fff));
}
.as-provider-preset-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .5rem;
}
.as-provider-preset small {
    line-height: 1.45;
    color: var(--tenant-content-muted, #5c6f85);
}
.as-provider-preset-tags {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
}
.as-provider-preset-tags span {
    border-radius: 999px;
    background: var(--tenant-soft-surface, #f6fafc);
    padding: .25rem .45rem;
    font-size: .7rem;
    font-weight: 700;
}
.as-provider-test-card.is-disabled,
.as-field.is-disabled {
    opacity: .68;
}
.as-canonical-settings-link {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    border: 1px solid #bae6fd;
    border-radius: 1rem;
    background: #f0f9ff;
    padding: 1rem;
}
.as-canonical-settings-link p {
    margin: .25rem 0 0;
    color: #38536a;
}
@media (max-width: 980px) {
    .as-provider-preset-grid { grid-template-columns: 1fr; }
    .as-canonical-settings-link { flex-direction: column; }
}
