h1:focus {
    outline: none;
}

:root {
    --ll-ink: #091413;
    --ll-primary-dark: #285A48;
    --ll-primary: #408A71;
    --ll-primary-soft: #B0E4CC;
    --ll-surface: #ffffff;
    --ll-surface-soft: #f7fbf8;
    --ll-surface-tint: #eef8f3;
    --ll-border: rgba(64, 138, 113, 0.20);
    --ll-border-strong: rgba(40, 90, 72, 0.28);
    --ll-shadow: rgba(9, 20, 19, 0.08);
    --ll-shadow-strong: rgba(9, 20, 19, 0.12);
    --ll-text-muted: #4f6c61;
    --ll-text-soft: #6f8a80;
}

.valid.modified:not([type=checkbox]) {
    outline: 1px solid #26b050;
}

.invalid {
    outline: 1px solid #e50000;
}

.validation-message {
    color: #e50000;
}

.blazor-error-boundary {
    background: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTYiIGhlaWdodD0iNDkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIG92ZXJmbG93PSJoaWRkZW4iPjxkZWZzPjxjbGlwUGF0aCBpZD0iY2xpcDAiPjxyZWN0IHg9IjIzNSIgeT0iNTEiIHdpZHRoPSI1NiIgaGVpZ2h0PSI0OSIvPjwvY2xpcFBhdGg+PC9kZWZzPjxnIGNsaXAtcGF0aD0idXJsKCNjbGlwMCkiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0yMzUgLTUxKSI+PHBhdGggZD0iTTI2My41MDYgNTFDMjY0LjcxNyA1MSAyNjUuODEzIDUxLjQ4MzcgMjY2LjYwNiA1Mi4yNjU4TDI2Ny4wNTIgNTIuNzk4NyAyNjcuNTM5IDUzLjYyODMgMjkwLjE4NSA5Mi4xODMxIDI5MC41NDUgOTIuNzk1IDI5MC42NTYgOTIuOTk2QzI5MC44NzcgOTMuNTEzIDI5MSA5NC4wODE1IDI5MSA5NC42NzgyIDI5MSA5Ny4wNjUxIDI4OS4wMzggOTkgMjg2LjYxNyA5OUwyNDAuMzgzIDk5QzIzNy45NjMgOTkgMjM2IDk3LjA2NTEgMjM2IDk0LjY3ODIgMjM2IDk0LjM3OTkgMjM2LjAzMSA5NC4wODg2IDIzNi4wODkgOTMuODA3MkwyMzYuMzM4IDkzLjAxNjIgMjM2Ljg1OCA5Mi4xMzE0IDI1OS40NzMgNTMuNjI5NCAyNTkuOTYxIDUyLjc5ODUgMjYwLjQwNyA1Mi4yNjU4QzI2MS4yIDUxLjQ4MzcgMjYyLjI5NiA1MSAyNjMuNTA2IDUxWk0yNjMuNTg2IDY2LjAxODNDMjYwLjczNyA2Ni4wMTgzIDI1OS4zMTMgNjcuMTI0NSAyNTkuMzEzIDY5LjMzNyAyNTkuMzEzIDY5LjYxMDIgMjU5LjMzMiA2OS44NjA4IDI1OS4zNzEgNzAuMDg4N0wyNjEuNzk1IDg0LjAxNjEgMjY1LjM4IDg0LjAxNjEgMjY3LjgyMSA2OS43NDc1QzI2Ny44NiA2OS43MzA5IDI2Ny44NzkgNjkuNTg3NyAyNjcuODc5IDY5LjMxNzkgMjY3Ljg3OSA2Ny4xMTgyIDI2Ni40NDggNjYuMDE4MyAyNjMuNTg2IDY2LjAxODNaTTI2My41NzYgODYuMDU0N0MyNjEuMDQ5IDg2LjA1NDcgMjU5Ljc4NiA4Ny4zMDA1IDI1OS43ODYgODkuNzkyMSAyNTkuNzg2IDkyLjI4MzcgMjYxLjA0OSA5My41Mjk1IDI2My41NzYgOTMuNTI5NSAyNjYuMTE2IDkzLjUyOTUgMjY3LjM4NyA5Mi4yODM3IDI2Ny4zODcgODkuNzkyMSAyNjcuMzg3IDg3LjMwMDUgMjY2LjExNiA4Ni4wNTQ3IDI2My41NzYgODYuMDU0N1oiIGZpbGw9IiNGRkU1MDAiIGZpbGwtcnVsZT0iZXZlbm9kZCIvPjwvZz48L3N2Zz4=) no-repeat 1rem/1.8rem, #b32121;
    padding: 1rem 1rem 1rem 3.7rem;
    color: white;
}

    .blazor-error-boundary::after {
        content: "An error has occurred."
    }

.darker-border-checkbox.form-check-input {
    border-color: #929292;
}

.form-floating > .form-control-plaintext::placeholder, .form-floating > .form-control::placeholder {
    color: var(--bs-secondary-color);
    text-align: end;
}

.form-floating > .form-control-plaintext:focus::placeholder, .form-floating > .form-control:focus::placeholder {
    text-align: start;
}

.client-cases-page {
    width: min(1180px, calc(100vw - 48px));
    margin: 0 auto;
    padding: 22px 0 40px;
}

.new-consultation-overlay {
    position: fixed;
    inset: 0;
    z-index: 2000;
    display: grid;
    place-items: center;
    padding: 24px;
    background: rgba(9, 20, 19, 0.42);
    backdrop-filter: blur(3px);
    animation: new-consultation-overlay-fade .18s ease;
}

@keyframes new-consultation-overlay-fade {
    from { opacity: 0; }
    to { opacity: 1; }
}

.new-consultation-overlay__card {
    display: grid;
    justify-items: center;
    gap: 14px;
    width: min(420px, 100%);
    padding: 40px 32px;
    text-align: center;
    background: var(--ll-surface);
    border: 1px solid var(--ll-border);
    border-radius: 16px;
    box-shadow: 0 24px 60px rgba(9, 20, 19, 0.28);
}

.new-consultation-overlay__title {
    color: var(--ll-ink);
    font-weight: 800;
}

.new-consultation-overlay__subtitle {
    color: var(--ll-text-muted);
}

.new-consultation-page,
.client-home {
    display: grid;
    gap: 20px;
    width: min(1120px, calc(100vw - 40px));
    margin: 0 auto;
    padding: 20px 0 40px;
}

.client-shell-page {
    display: grid;
    gap: 18px;
    margin: 0 auto;
    max-width: 1200px;
    padding: 22px 0 40px;
    width: min(1200px, calc(100vw - 48px));
}

.client-shell-page--narrow {
    max-width: 780px;
    width: min(780px, calc(100vw - 48px));
}

.client-page-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 24px;
    border: 1px solid var(--ll-border);
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.97), rgba(176, 228, 204, 0.20)),
        repeating-linear-gradient(90deg, rgba(64, 138, 113, 0.05) 0 1px, transparent 1px 42px);
    box-shadow: 0 12px 30px var(--ll-shadow);
}

.client-page-hero__copy {
    min-width: 0;
}

.client-page-hero__eyebrow {
    color: var(--ll-primary);
    font-weight: 850;
    text-transform: uppercase;
}

.client-page-hero__title {
    margin: 2px 0;
    color: var(--ll-ink);
    font-weight: 850;
}

.client-page-hero__subtitle {
    color: var(--ll-text-muted);
    max-width: 760px;
}

.client-page-hero__actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.client-section-card {
    border: 1px solid var(--ll-border);
    border-radius: 8px;
    background: var(--ll-surface);
    box-shadow: 0 10px 26px var(--ll-shadow);
    overflow: hidden;
}

.client-section-card__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    padding: 22px 24px 18px;
    border-bottom: 1px solid rgba(64, 138, 113, 0.12);
}

.client-section-card__title {
    color: var(--ll-ink);
    font-weight: 850;
}

.client-section-card__subtitle {
    color: var(--ll-text-soft);
}

.client-section-card__body {
    padding: 22px 24px 24px;
}

.client-form-stack {
    display: grid;
    gap: 14px;
}

.client-info-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.client-stat-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 12px;
}

.client-stat-card {
    padding: 18px;
    border: 1px solid var(--ll-border);
    border-radius: 12px;
    background: linear-gradient(180deg, var(--ll-surface) 0%, var(--ll-surface-tint) 100%);
}

.client-stat-card__eyebrow {
    color: var(--ll-text-muted);
    font-size: .75rem;
    font-weight: 800;
    text-transform: uppercase;
}

.client-stat-card__value {
    color: var(--ll-ink);
    font-size: 2rem;
    font-weight: 850;
    line-height: 1;
    margin-top: 8px;
}

.client-card-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.client-simple-list {
    display: grid;
    gap: 12px;
}

.client-simple-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 16px 18px;
    border: 1px solid var(--ll-border);
    border-radius: 12px;
    background: var(--ll-surface);
}

.client-simple-row__meta {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.client-simple-row__title {
    color: var(--ll-ink);
    font-weight: 800;
}

.client-simple-row__text {
    color: var(--ll-text-soft);
}

.client-activity-list {
    display: grid;
    gap: 10px;
}

.client-activity-row {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 14px 18px;
    border: 1px solid var(--ll-border);
    border-radius: 12px;
    background: var(--ll-surface);
    transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}

.client-activity-row:hover {
    border-color: var(--ll-border-strong);
    background: var(--ll-surface-soft);
    box-shadow: 0 8px 20px var(--ll-shadow);
}

.client-activity-row__icon {
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: rgba(176, 228, 204, 0.30);
    color: var(--ll-primary);
}

.client-activity-row__icon.is-primary {
    background: rgba(64, 138, 113, 0.14);
    color: var(--ll-primary);
}

.client-activity-row__icon.is-warning {
    background: rgba(237, 156, 46, 0.14);
    color: #c9791a;
}

.client-activity-row__icon.is-success {
    background: rgba(64, 138, 113, 0.14);
    color: var(--ll-primary-dark);
}

.client-activity-row__body {
    display: grid;
    gap: 2px;
    min-width: 0;
}

.client-activity-row__title {
    color: var(--ll-ink);
    font-weight: 700;
    font-size: .92rem;
}

.client-activity-row__meta {
    color: var(--ll-text-soft);
    font-size: .8rem;
}

.client-profile-summary {
    display: grid;
    justify-items: center;
    gap: 10px;
    padding: 30px 24px;
    text-align: center;
}

.client-profile-summary .mud-avatar {
    box-shadow: 0 14px 30px rgba(64, 138, 113, 0.18);
}

html:has(.client-chat-page),
body:has(.client-chat-page) {
    overflow: hidden;
}

.client-chat-page {
    display: flex;
    flex-direction: column;
    gap: 18px;
    margin: 0 auto;
    max-width: 1200px;
    padding: 22px 0 24px;
    width: min(1200px, calc(100vw - 48px));
    height: calc(100vh - 106px);
    min-height: 0;
}

.client-chat-page .client-page-hero {
    flex: 0 0 auto;
}

.client-chat-shell {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    min-height: 0;
    border: 1px solid var(--ll-border);
    border-radius: 8px;
    background: var(--ll-surface);
    box-shadow: 0 10px 26px var(--ll-shadow);
    overflow: hidden;
}

.client-chat-shell__header {
    display: flex;
    flex: 0 0 auto;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding: 22px 24px 18px;
    border-bottom: 1px solid rgba(64, 138, 113, 0.12);
}

.client-chat-shell__messages {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    padding: 18px 24px;
    background: linear-gradient(180deg, #f9fbfb 0%, #f4f8f8 100%);
}

.client-chat-shell__composer {
    flex: 0 0 auto;
    display: grid;
    gap: 12px;
    padding: 18px 24px 22px;
    border-top: 1px solid #e5eeec;
    background: #ffffff;
}

.client-chat-bubble {
    max-width: min(760px, 82%);
    border: 1px solid #deebe8;
    border-radius: 16px;
    padding: 14px 16px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.035);
}

.client-chat-bubble.is-user {
    background: #eaf8f2;
    border-color: #cde7da;
}

.client-chat-bubble.is-ai {
    background: #ffffff;
}

.client-chat-composer-row {
    display: flex;
    align-items: center;
    gap: 10px;
}

.client-chat-composer-row__input {
    flex: 1 1 auto;
    min-width: 0;
}

.client-chat-composer-row__input .mud-input-control-input-container,
.client-chat-composer-row__input .mud-input-outlined {
    height: 44px;
    box-sizing: border-box;
    border-radius: 12px !important;
}

.client-chat-composer-row__input .mud-input-outlined-border {
    border-radius: 12px !important;
}

.client-chat-composer-row__input .mud-input-slot {
    height: 44px;
    box-sizing: border-box;
    padding-top: 0;
    padding-bottom: 0;
    display: flex;
    align-items: center;
}

.client-chat-attach-button,
.client-chat-send-button.mud-icon-button {
    flex: 0 0 auto;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
    height: 44px;
    width: 44px;
    overflow: hidden;
}

.client-chat-attach-button {
    position: relative;
    border: 1px solid var(--ll-border);
    background: var(--ll-surface);
    color: var(--ll-text-muted);
    cursor: pointer;
    transition: background-color .15s ease, color .15s ease;
}

.client-chat-attach-button .mud-icon-root {
    font-size: 1.25rem;
}

.client-chat-attach-button:hover {
    background: rgba(176, 228, 204, 0.28);
    color: var(--ll-ink);
}

.client-chat-attach-input {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.client-chat-send-button.mud-icon-button {
    background-color: var(--ll-primary) !important;
}

.client-chat-send-button.mud-icon-button .mud-icon-root {
    color: #ffffff !important;
    font-size: 1.15rem;
}

.client-chat-send-button.mud-icon-button:hover,
.client-chat-send-button.mud-icon-button:focus {
    background-color: var(--ll-primary-dark) !important;
}

.client-chat-send-button.mud-icon-button:hover .mud-icon-root,
.client-chat-send-button.mud-icon-button:focus .mud-icon-root {
    color: #ffffff !important;
}

.client-chat-send-button.mud-icon-button.mud-disabled {
    background-color: var(--ll-border) !important;
    opacity: 1;
}

.client-chat-send-button.mud-icon-button.mud-disabled .mud-icon-root {
    color: #ffffff !important;
    opacity: .8;
}

@media (max-width: 959px) {
    .client-chat-page {
        height: calc(100vh - 100px);
    }
}

@media (max-width: 599px) {
    .client-chat-page {
        height: calc(100vh - 90px);
        width: calc(100vw - 24px);
    }

    .client-chat-shell__header,
    .client-chat-shell__messages,
    .client-chat-shell__composer {
        padding-left: 16px;
        padding-right: 16px;
    }
}

.client-table-card .mud-table-container,
.client-table-card .mud-simple-table {
    padding: 0 24px 24px;
}

.client-table-card .mud-table-root,
.client-table-card .mud-simple-table table {
    border-collapse: separate;
    border-spacing: 0;
}

.client-table-card .mud-table-head .mud-table-cell,
.client-table-card .mud-simple-table th {
    color: #607182;
    font-size: .8rem;
    font-weight: 800;
    text-transform: uppercase;
}

.client-news-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
}

.client-news-card {
    display: grid;
    gap: 10px;
    padding: 20px;
    border: 1px solid #dce8e6;
    border-radius: 14px;
    background: linear-gradient(180deg, #ffffff 0%, #f8fcfb 100%);
    box-shadow: 0 10px 24px rgba(15, 23, 42, 0.04);
}

.new-consultation-hero,
.client-home-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 24px;
    border: 1px solid #d8e8e5;
    border-radius: 8px;
    background:
        linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(239, 250, 247, 0.94)),
        repeating-linear-gradient(90deg, rgba(15, 118, 110, 0.06) 0 1px, transparent 1px 42px);
    box-shadow: 0 12px 30px rgba(15, 23, 42, 0.06);
}

.new-consultation-eyebrow,
.client-home-eyebrow {
    color: #0f766e;
    font-weight: 850;
    letter-spacing: 0;
    text-transform: uppercase;
}

.new-consultation-title,
.client-home-title {
    margin: 2px 0;
    color: #061826;
    font-weight: 850;
}

.new-consultation-subtitle,
.client-home-subtitle {
    max-width: 760px;
    color: #526173;
}

.new-consultation-panel {
    margin-top: 16px;
    padding: 22px;
    border: 1px solid #d8e8e5;
    border-radius: 8px;
    background: #ffffff;
}

.new-consultation-section + .new-consultation-section {
    margin-top: 22px;
    padding-top: 22px;
    border-top: 1px solid #e5eceb;
}

.new-consultation-section__head {
    margin-bottom: 12px;
}

.new-consultation-section__head .mud-typography-subtitle1 {
    color: #071a2d;
    font-weight: 850;
}

.new-consultation-section__head .mud-typography-body2 {
    color: #64748b;
}

.new-consultation-area-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
}

.new-consultation-area-card {
    position: relative;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 10px;
    min-height: 110px;
    padding: 14px;
    border: 1px solid #d8e8e5;
    border-radius: 8px;
    background: #f8fcfb;
    color: #25364a;
    text-align: left;
    cursor: pointer;
    transition: border-color 160ms ease, background 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.new-consultation-area-card:hover {
    border-color: #1f8a55;
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.08);
    transform: translateY(-1px);
}

.new-consultation-area-card.is-selected {
    border-color: #164e43;
    background: #ecfdf5;
    box-shadow: inset 0 0 0 1px #164e43;
}

.new-consultation-area-card__icon {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border-radius: 8px;
    background: #164e43;
    color: #ffffff;
}

.new-consultation-area-card__text {
    display: grid;
    gap: 4px;
    min-width: 0;
}

.new-consultation-area-card__text strong {
    color: #061826;
    font-size: 1rem;
}

.new-consultation-area-card__text small {
    color: #526173;
    line-height: 1.25;
}

.new-consultation-area-card__check {
    position: absolute;
    top: 10px;
    right: 10px;
    color: #2e7d32;
}

.new-consultation-form-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 220px;
    gap: 12px;
}

.new-consultation-actions {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 20px;
}

.new-consultation-page--wizard .new-consultation-hero {
    display: block;
}

.new-consultation-panel--wizard {
    display: grid;
    gap: 18px;
}

.new-consultation-steps {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.new-consultation-step {
    display: grid;
    justify-items: center;
    align-content: start;
    gap: 10px;
    min-height: 164px;
    padding: 20px 18px 24px;
    border: 1px solid #d8e8e5;
    border-radius: 12px;
    background: #f8fcfb;
    color: #526173;
    text-align: center;
    transition: border-color 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

.new-consultation-step span {
    display: inline-grid;
    place-items: center;
    width: 28px;
    height: 28px;
    border-radius: 999px;
    background: #deebe8;
    color: #164e43;
    font-size: .82rem;
    font-weight: 850;
}

.new-consultation-step strong {
    color: #061826;
    font-size: 1.05rem;
    line-height: 1.15;
}

.new-consultation-step small {
    color: #607182;
    line-height: 1.45;
    font-size: 0.88rem;
    max-width: 14ch;
    margin: 0 auto;
    text-wrap: balance;
}

.new-consultation-step.is-active {
    border-color: #164e43;
    background: #ecf8f4;
    box-shadow: inset 0 0 0 1px #164e43;
}

.new-consultation-step.is-done span,
.new-consultation-step.is-active span {
    background: #164e43;
    color: #ffffff;
}

.new-consultation-section--stacked {
    display: grid;
    gap: 14px;
}

.new-consultation-upload {
    display: grid;
    gap: 10px;
    padding: 16px;
    border: 1px dashed #b9d8d1;
    border-radius: 12px;
    background: linear-gradient(180deg, #ffffff 0%, #f6fbfa 100%);
}

.new-consultation-upload__picker {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    min-height: 42px;
    padding: 0 16px;
    border: 1px solid #1f8a55;
    border-radius: 999px;
    background: #ffffff;
    color: #176c5d;
    cursor: pointer;
    font-weight: 800;
}

.new-consultation-upload__input {
    inset: 0;
    opacity: 0;
    position: absolute;
}

.new-consultation-upload__list {
    display: grid;
    gap: 10px;
}

.new-consultation-upload__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 12px;
    border: 1px solid #dce8e6;
    border-radius: 10px;
    background: #ffffff;
}

.new-consultation-upload__item strong,
.new-consultation-review__block strong {
    color: #061826;
}

.new-consultation-upload__item small {
    color: #64748b;
}

.new-consultation-urgency-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
}

.new-consultation-urgency-card {
    display: grid;
    gap: 5px;
    min-height: 98px;
    padding: 14px;
    border: 1px solid #d8e8e5;
    border-radius: 12px;
    background: #ffffff;
    color: #526173;
    text-align: left;
    transition: border-color 160ms ease, background 160ms ease, box-shadow 160ms ease;
}

.new-consultation-urgency-card strong {
    color: #061826;
    font-size: 1rem;
}

.new-consultation-urgency-card.is-selected {
    border-color: #164e43;
    background: #effaf6;
    box-shadow: inset 0 0 0 1px #164e43;
}

.new-consultation-review {
    display: grid;
    gap: 12px;
}

.new-consultation-review__block,
.new-consultation-review__meta {
    display: grid;
    gap: 8px;
    padding: 16px;
    border: 1px solid #dce8e6;
    border-radius: 12px;
    background: #ffffff;
}

.new-consultation-review__block span {
    color: #0f766e;
    font-size: .76rem;
    font-weight: 850;
    text-transform: uppercase;
}

.new-consultation-review__block p,
.new-consultation-review__meta span {
    color: #526173;
    margin: 0;
}

.new-consultation-review__meta {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.new-consultation-actions--wizard {
    align-items: center;
    justify-content: space-between;
}

.new-consultation-actions__secondary,
.new-consultation-actions__primary {
    display: flex;
    align-items: center;
    gap: 10px;
}

.client-home-hero__copy {
    min-width: 0;
}

.client-home-hero__actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.client-home-hero__actions .mud-button-root {
    justify-content: center;
    min-width: 212px;
}

.client-home-metrics {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 20px;
}

.client-home-metric {
    display: grid;
    grid-template-columns: auto 1fr;
    align-items: center;
    gap: 8px 12px;
    min-height: 92px;
    padding: 16px;
    border: 1px solid #dbe8e6;
    border-radius: 8px;
    background: #ffffff;
    color: #25364a;
    text-align: left;
    cursor: pointer;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.045);
    transition: background-color 180ms ease, color 180ms ease, border-color 180ms ease, box-shadow 180ms ease, transform 180ms ease;
}

.client-home-metric .mud-icon-root {
    color: #187b72;
}

.client-home-metric:hover {
    background: #103f36;
    color: #ffffff;
    border-color: #103f36;
    transform: translateY(-1px);
    box-shadow: 0 14px 28px rgba(16, 63, 54, 0.18);
}

.client-home-metric:hover .mud-icon-root {
    color: #a7f3d0;
}

.client-home-metric strong {
    font-size: 2rem;
    line-height: 1;
}

.client-home-metric span {
    grid-column: 1 / -1;
    font-weight: 750;
}

.client-home-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(320px, 0.9fr);
    align-items: start;
    gap: 20px;
}

.client-home-panel {
    padding: 20px;
    border: 1px solid var(--ll-border);
    border-radius: 8px;
    background: var(--ll-surface);
    box-shadow: 0 10px 26px var(--ll-shadow);
}

.client-home-panel--focus {
    background: linear-gradient(180deg, #ffffff 0%, #f4fbf8 100%);
}

.client-home-panel__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 20px;
}

.client-home-panel__head .mud-typography-caption {
    color: var(--ll-primary);
    font-weight: 850;
    text-transform: uppercase;
}

.client-home-panel__head .mud-typography-h5 {
    color: var(--ll-ink);
    font-weight: 850;
}

.client-home-focus-card {
    display: grid;
    gap: 10px;
    padding: 20px;
    border: 1px solid rgba(64, 138, 113, 0.30);
    border-left: 5px solid var(--ll-primary);
    border-radius: 8px;
    background: var(--ll-surface);
    cursor: pointer;
}

.client-home-focus-card .mud-typography-caption {
    color: var(--ll-text-soft);
    font-weight: 850;
    text-transform: uppercase;
}

.client-home-focus-card .mud-typography-h6 {
    color: var(--ll-ink);
    font-weight: 850;
}

.client-home-focus-card .mud-typography-body2 {
    color: var(--ll-text-muted);
}

.client-home-focus-card__actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 10px;
    color: var(--ll-text-soft);
    font-size: 0.92rem;
}

.client-home-case-list {
    display: grid;
    gap: 12px;
}

.client-home-case-row {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 14px;
    padding: 14px;
    border: 1px solid rgba(64, 138, 113, 0.14);
    border-radius: 8px;
    background: var(--ll-surface-soft);
    cursor: pointer;
}

.client-home-case-row__icon {
    display: grid;
    place-items: center;
    width: 38px;
    height: 38px;
    border-radius: 8px;
    background: rgba(176, 228, 204, 0.30);
    color: var(--ll-primary);
}

.client-home-case-row .mud-typography-subtitle2 {
    color: var(--ll-ink);
    font-weight: 850;
}

.client-home-case-row .mud-typography-caption {
    color: var(--ll-text-soft);
}

.client-home-empty {
    display: grid;
    place-items: center;
    gap: 12px;
    min-height: 220px;
    padding: 24px;
    border: 1px dashed rgba(64, 138, 113, 0.28);
    border-radius: 8px;
    color: var(--ll-text-muted);
    text-align: center;
}

.client-home-empty.compact {
    min-height: 140px;
}

@media (max-width: 940px) {
    .new-consultation-page,
    .client-home {
        width: min(100%, calc(100vw - 24px));
        padding: 14px 0 30px;
    }

    .new-consultation-hero,
    .client-home-hero {
        display: grid;
        padding: 18px;
    }

    .client-home-hero__actions,
    .new-consultation-actions {
        display: grid;
        width: 100%;
    }

    .client-home-hero__actions .mud-button-root,
    .new-consultation-actions .mud-button-root {
        width: 100%;
    }

    .new-consultation-area-grid,
    .new-consultation-steps,
    .new-consultation-urgency-grid,
    .client-home-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .new-consultation-form-grid,
    .client-home-grid {
        grid-template-columns: 1fr;
    }

    .client-home-focus-card__actions {
        align-items: stretch;
        display: grid;
    }

    .client-home-focus-card__actions .mud-button-root {
        width: 100%;
    }

    .new-consultation-actions--wizard,
    .new-consultation-actions__secondary,
    .new-consultation-actions__primary {
        display: grid;
        width: 100%;
    }

    .new-consultation-review__meta {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 520px) {
    .new-consultation-page,
    .client-home {
        width: min(100%, calc(100vw - 16px));
    }

    .new-consultation-title,
    .client-home-title {
        font-size: 2rem;
    }

    .new-consultation-area-grid,
    .new-consultation-steps,
    .new-consultation-urgency-grid,
    .client-home-metrics {
        grid-template-columns: 1fr;
    }

    .new-consultation-panel,
    .client-home-panel {
        padding: 14px;
    }

    .new-consultation-area-card {
        min-height: 92px;
    }
}

.client-cases-hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 22px;
    border: 1px solid #d8e8e5;
    border-radius: 8px;
    background: linear-gradient(135deg, #ffffff 0%, #f0faf7 100%);
    box-shadow: 0 10px 26px rgba(15, 23, 42, 0.05);
}

.client-cases-eyebrow {
    color: #0f766e;
    font-weight: 800;
    letter-spacing: 0;
    text-transform: uppercase;
}

.client-cases-title {
    margin: 2px 0;
    font-weight: 850;
    color: #061826;
}

.client-cases-subtitle {
    max-width: 720px;
    color: #526173;
}

.client-cases-new {
    min-height: 48px;
    white-space: nowrap;
}

.client-cases-loading,
.client-cases-empty {
    display: grid;
    place-items: center;
    gap: 12px;
    min-height: 260px;
    margin-top: 18px;
    padding: 28px;
    border: 1px dashed #bad3d1;
    border-radius: 8px;
    background: #ffffff;
    color: #526173;
    text-align: center;
}

.client-cases-empty .mud-icon-root {
    color: #0f766e;
    font-size: 42px;
}

.client-cases-summary {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 16px;
}

.client-cases-summary__item {
    display: grid;
    grid-template-columns: auto auto 1fr;
    align-items: center;
    gap: 10px;
    min-height: 78px;
    padding: 14px 16px;
    border: 1px solid #dbe8e6;
    border-radius: 8px;
    background: #ffffff;
    color: #25364a;
    text-align: left;
    cursor: pointer;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease, background 160ms ease;
}

.client-cases-summary__item:hover {
    border-color: #1f8a55;
    box-shadow: 0 12px 24px rgba(15, 23, 42, 0.08);
    transform: translateY(-1px);
}

.client-cases-summary__item.is-active {
    border-color: #164e43;
    background: #103f36;
    color: #ffffff;
}

.client-cases-summary__item .mud-icon-root {
    color: #187b72;
}

.client-cases-summary__item.is-active .mud-icon-root {
    color: #a7f3d0;
}

.client-cases-summary__item strong {
    font-size: 1.7rem;
    line-height: 1;
}

.client-cases-summary__item span {
    font-weight: 700;
    min-width: 0;
}

.client-cases-tools {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-top: 16px;
}

.client-cases-search {
    flex: 1;
    max-width: 620px;
}

.client-cases-filter-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 0 14px;
    border: 1px solid #d8e8e5;
    border-radius: 999px;
    background: #f8fcfb;
    color: #526173;
    font-size: 0.9rem;
    font-weight: 650;
}

.client-cases-list {
    display: grid;
    grid-template-columns: 1fr;
    gap: 14px;
    margin-top: 16px;
}

.client-case-card {
    display: grid;
    grid-template-columns: minmax(245px, 0.9fr) minmax(0, 1.45fr);
    gap: 16px;
    padding: 18px;
    border: 1px solid #dbe8e6;
    border-left: 5px solid #94a3b8;
    border-radius: 8px;
    background: #ffffff;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.05);
    cursor: pointer;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.client-case-card:hover {
    border-color: #b7d8d2;
    box-shadow: 0 16px 32px rgba(15, 23, 42, 0.08);
    transform: translateY(-1px);
}

.client-case-card.is-actionable {
    border-left-color: #2e7d32;
}

.client-case-card.is-official {
    border-left-color: #0284c7;
}

.client-case-card.is-waiting {
    border-left-color: #f59e0b;
}

.client-case-card__status {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 12px;
    align-content: start;
    padding: 14px;
    border-radius: 8px;
    background: #f5fbf9;
}

.client-case-card__icon {
    display: grid;
    place-items: center;
    width: 42px;
    height: 42px;
    border-radius: 8px;
    background: #164e43;
    color: #ffffff;
}

.client-case-card__status .mud-typography-caption {
    color: #0f766e;
    font-weight: 850;
    text-transform: uppercase;
}

.client-case-card__status .mud-typography-subtitle1 {
    color: #071a2d;
    font-weight: 850;
    line-height: 1.16;
}

.client-case-card__status .mud-typography-body2 {
    margin-top: 4px;
    color: #526173;
}

.client-case-card__body {
    min-width: 0;
}

.client-case-card__area {
    color: #64748b;
    font-weight: 800;
    text-transform: uppercase;
}

.client-case-card__title {
    margin-top: 2px;
    color: #061826;
    font-weight: 850;
    overflow-wrap: anywhere;
}

.client-case-card__description {
    display: -webkit-box;
    margin-top: 6px;
    color: #526173;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.client-case-card__meta {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px 12px;
    margin-top: 12px;
    color: #64748b;
    font-size: 0.9rem;
}

.client-case-card__meta span,
.client-case-card__signals span {
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

.client-case-card__footer {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-top: 14px;
    border-top: 1px solid #e5eceb;
}

.client-case-card__signals {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.client-case-card__signals span {
    min-height: 28px;
    padding: 4px 10px;
    border-radius: 999px;
    background: #edf8f4;
    color: #0f5f55;
    font-size: 0.86rem;
    font-weight: 750;
}

@media (max-width: 860px) {
    .client-cases-page {
        width: min(100%, calc(100vw - 24px));
        padding: 14px 0 28px;
    }

    .client-cases-hero {
        display: grid;
        gap: 14px;
        padding: 18px;
    }

    .client-cases-title {
        font-size: 2rem;
    }

    .client-cases-new {
        width: 100%;
    }

    .client-cases-summary {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 10px;
    }

    .client-cases-summary__item {
        grid-template-columns: auto 1fr;
        min-height: 88px;
    }

    .client-cases-summary__item span {
        grid-column: 1 / -1;
    }

    .client-cases-tools {
        display: grid;
    }

    .client-cases-search {
        max-width: none;
    }

    .client-cases-filter-label {
        justify-content: center;
        border-radius: 8px;
    }

    .client-case-card {
        grid-template-columns: 1fr;
        padding: 14px;
    }

    .client-case-card__status {
        padding: 12px;
    }

    .client-case-card__footer {
        display: grid;
    }

    .client-case-card__footer .mud-button-root {
        width: 100%;
    }
}

@media (max-width: 460px) {
    .client-cases-page {
        width: min(100%, calc(100vw - 16px));
    }

    .client-cases-summary {
        grid-template-columns: 1fr;
    }

    .client-case-card__status {
        grid-template-columns: 1fr;
    }

    .client-case-card__icon {
        width: 38px;
        height: 38px;
    }
}

.ai-config-grid {
    display: grid;
    gap: 16px;
}

.ai-config-profile {
    overflow: hidden;
}

.ai-config-profile__badges,
.ai-config-profile__summary,
.ai-config-editor__actions {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.ai-config-profile__summary {
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid #d8e5e7;
}

.ai-config-editor {
    display: grid;
    gap: 14px;
}

.ai-config-editor__actions {
    justify-content: flex-end;
}

.ai-config-versions {
    margin-top: 8px;
}

.case-workspace {
    background: linear-gradient(180deg, #fbfcfb 0%, #f4f7f6 42%, #edf2f3 100%);
    box-sizing: border-box;
    color: #1f2933;
    display: flex;
    flex-direction: column;
    height: calc(100vh - 64px);
    overflow: hidden;
    padding: 10px 22px 18px;
}

html:has(.case-workspace),
body:has(.case-workspace) {
    overflow: hidden;
}

.case-backbar {
    margin-bottom: 12px;
}

.case-hero {
    align-items: stretch;
    background: rgba(255, 255, 255, .82);
    border: 1px solid #dce7e9;
    border-radius: 8px;
    box-shadow: 0 1px 2px rgba(15, 23, 42, .04);
    display: flex;
    gap: 16px;
    justify-content: space-between;
    flex: 0 0 auto;
    margin-bottom: 10px;
    padding: 10px 12px;
}

.estudio-hero {
    background: linear-gradient(135deg, #ffffff 0%, #f3f5fb 100%);
}

.estudio-workspace {
    padding: 10px 28px 18px;
}

.case-hero__main {
    align-self: center;
    min-width: 0;
}

.case-eyebrow {
    color: #607182;
    display: block;
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1;
    text-transform: uppercase;
}

.case-title {
    color: #16202a;
    font-weight: 750;
    line-height: 1;
    margin-top: 3px;
    overflow-wrap: anywhere;
}

.case-title.mud-typography-h4 {
    font-size: 1.28rem;
}

.case-description {
    color: #5b6976;
    font-size: .88rem;
    line-height: 1.2;
    margin-top: 5px;
    max-width: 880px;
    overflow-wrap: anywhere;
}

.case-hero__meta {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    justify-content: flex-start;
}

.case-layout {
    align-items: stretch;
    display: grid;
    flex: 1 1 auto;
    gap: 14px;
    grid-template-columns: minmax(0, 1fr) minmax(340px, 23vw);
    min-height: 0;
    overflow: hidden;
}

.estudio-workspace .case-layout {
    align-items: start;
    grid-template-columns: minmax(0, 1fr) minmax(300px, 360px);
}

.estudio-case-v4 {
    gap: 12px;
}

.estudio-main-focus {
    gap: 10px;
}

.case-panel--tabs {
    padding: 6px 8px;
}

.estudio-tabs {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.estudio-tabs .mud-button-root {
    border-radius: 8px;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: 0;
    min-height: 32px;
    padding-block: 6px;
    white-space: nowrap;
}

.estudio-summary-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 12px 14px 14px;
}

.estudio-summary-grid > div {
    background: #f6f9fb;
    border: 1px solid #dbe6ec;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 10px;
}

.estudio-summary-grid strong {
    color: #10283f;
    font-size: 1.05rem;
    font-weight: 800;
    line-height: 1;
}

.estudio-summary-grid span {
    color: #617283;
    font-size: .76rem;
    font-weight: 700;
    line-height: 1.2;
}

.case-main {
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
    min-width: 0;
    overflow: hidden;
    padding-right: 2px;
}

.estudio-workspace .case-main {
    gap: 12px;
    overflow-y: auto;
    padding-right: 4px;
}

.estudio-workspace .case-main > .case-panel {
    flex: 0 0 auto;
}

.estudio-workspace .case-main > .case-panel.case-panel--tabs {
    display: block;
    max-height: none;
    min-height: 0;
}

.estudio-workspace .case-main > .case-panel.case-panel--primary {
    display: flex;
    flex-direction: column;
    gap: 16px;
    margin-bottom: 10px;
    padding-bottom: 20px;
}

.estudio-workspace .case-main > .case-panel.case-panel--primary .review-queue {
    min-height: 0;
    overflow-y: auto;
}

.estudio-workspace .case-main > .case-panel.case-panel--primary > .studio-work-status,
.estudio-workspace .case-main > .case-panel.case-panel--primary > .studio-intake-panel,
.estudio-workspace .case-main > .case-panel.case-panel--primary > .studio-section-label,
.estudio-workspace .case-main > .case-panel.case-panel--primary > .review-queue,
.estudio-workspace .case-main > .case-panel.case-panel--primary > .studio-client-draft-list,
.estudio-workspace .case-main > .case-panel.case-panel--primary > .case-empty {
    margin-left: 16px;
    margin-right: 16px;
}

.estudio-workspace .case-panel--conversation {
    flex: 1 0 320px;
    min-height: 320px;
}

.estudio-workspace .case-layout:has(.case-panel--conversation) {
    height: calc(100dvh - 176px);
    min-height: 0;
    overflow: hidden;
}

.estudio-workspace .case-main:has(> .case-panel--conversation) {
    overflow: hidden;
}

.estudio-workspace .case-main > .case-panel.case-panel--conversation {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    height: 100%;
    max-height: 100%;
    margin-bottom: 10px;
    min-height: 0;
}

.estudio-workspace .case-main > .case-panel.case-panel--conversation .case-chat {
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
}

.estudio-workspace .case-main > .case-panel.case-panel--conversation .case-composer {
    flex: 0 0 auto;
}

.estudio-workspace .case-main > .case-panel:nth-child(3) {
    max-height: 220px;
}

.case-side {
    display: flex;
    flex-direction: column;
    gap: 10px;
    height: 100%;
    min-height: 0;
    min-width: 0;
    overflow: hidden;
    opacity: .94;
}

.estudio-workspace .case-side {
    overflow-y: auto;
    opacity: 1;
    padding-right: 2px;
}

.estudio-workspace .case-side .case-panel {
    min-width: 0;
    overflow: visible;
}

.case-side-panel__body {
    display: grid;
    gap: 14px;
    padding: 16px;
}

.estudio-workspace .case-side .case-panel__title {
    min-width: 0;
}

.estudio-workspace .case-side .case-panel__title > div {
    min-width: 0;
}

.estudio-workspace .case-side .case-panel__title .mud-typography-body2,
.estudio-workspace .case-side .case-panel__title .mud-typography-h6,
.estudio-workspace .case-side .mud-typography-body2,
.estudio-workspace .case-side .mud-typography-caption {
    overflow-wrap: anywhere;
}

.estudio-shell__topbar {
    backdrop-filter: blur(14px);
    background: rgba(247, 251, 248, 0.94) !important;
    border-bottom: 1px solid rgba(64, 138, 113, 0.14);
    color: var(--ll-ink) !important;
    min-height: 62px;
    padding: 0 18px;
}

.estudio-shell__topbar .mud-toolbar {
    min-height: 62px;
}

.estudio-shell__menu-button,
.estudio-shell__icon-button,
.estudio-shell__profile-menu .mud-button-root {
    border-radius: 12px;
    color: var(--ll-text-muted) !important;
    height: 38px;
    width: 38px;
}

.estudio-shell__menu-button:hover,
.estudio-shell__icon-button:hover,
.estudio-shell__profile-menu .mud-button-root:hover {
    background: rgba(176, 228, 204, 0.32);
    color: var(--ll-ink) !important;
}

.estudio-shell__actions {
    align-items: center;
    display: flex;
    gap: 8px;
}

.estudio-shell__drawer {
    border-right: 1px solid var(--ll-border);
}

.estudio-shell__drawer .mud-drawer {
    background: linear-gradient(180deg, #ffffff 0%, #f3faf6 100%);
    border-right: 1px solid var(--ll-border);
    width: 248px;
}

.estudio-shell__drawer-header {
    border-bottom: 1px solid rgba(64, 138, 113, 0.12);
    min-height: 0;
    padding: 0;
}

.estudio-shell__brand {
    color: var(--ll-ink);
    font-size: 1.15rem;
    font-weight: 700;
    letter-spacing: -.02em;
}

.estudio-shell__brand b {
    color: var(--ll-primary);
}

.estudio-shell__nav {
    display: grid;
    gap: 18px;
    padding: 18px 14px 22px;
}

.estudio-shell__nav-group {
    display: grid;
    gap: 4px;
}

.estudio-shell__nav-divider {
    border-top: 1px solid rgba(64, 138, 113, 0.12);
    margin: 2px 4px 0;
}

.estudio-shell__drawer .mud-nav-link {
    align-items: center;
    border: 1px solid transparent;
    border-radius: 14px;
    color: var(--ll-text-muted);
    display: flex;
    font-size: .93rem;
    font-weight: 600;
    margin: 0;
    min-height: 42px;
    padding: 8px 12px;
}

.estudio-shell__drawer .mud-nav-link .mud-nav-link-text {
    white-space: nowrap;
}

.estudio-shell__drawer .mud-nav-link .mud-nav-link-icon {
    align-items: center;
    color: var(--ll-text-soft);
    display: inline-flex;
    font-size: 1.05rem;
    justify-content: center;
    min-width: 26px;
}

.estudio-shell__drawer .mud-nav-link:hover {
    background: rgba(176, 228, 204, 0.22);
    border-color: var(--ll-border);
    color: var(--ll-ink);
}

.estudio-shell__drawer .mud-nav-link.active {
    background: linear-gradient(180deg, rgba(176, 228, 204, 0.24) 0%, rgba(176, 228, 204, 0.14) 100%);
    border-color: var(--ll-border-strong);
    box-shadow: inset 3px 0 0 var(--ll-primary);
    color: var(--ll-primary-dark);
}

.estudio-shell__drawer .mud-nav-link.active .mud-nav-link-icon {
    color: var(--ll-primary);
}

.estudio-shell__main {
    background: linear-gradient(180deg, #f5fbf8 0%, #fbfefc 100%);
    min-height: 100vh;
    padding: 82px 16px 24px !important;
}

.estudio-dashboard {
    display: grid;
    gap: 20px;
    margin: 0 auto;
    max-width: 1320px;
}

.estudio-page-shell {
    display: grid;
    gap: 18px;
    margin: 0 auto;
    max-width: 1320px;
}

.estudio-page-header {
    align-items: start;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    padding: 6px 4px 2px;
}

.estudio-page-header--with-actions {
    align-items: center;
}

.estudio-page-header__copy {
    display: grid;
    gap: 8px;
}

.estudio-page-header__eyebrow {
    color: #78909b !important;
    display: inline-block;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .08em;
    line-height: 1;
    margin: 0;
    text-transform: uppercase;
}

.estudio-page-header__title {
    color: #13263a;
    font-size: clamp(2rem, 2.35vw, 2.55rem);
    letter-spacing: -.045em;
    line-height: 1.02;
    margin: 0;
}

.estudio-page-header__subtitle {
    color: #607381;
    margin: 0;
    max-width: 760px;
}

.estudio-grid-row {
    margin-top: 0;
}

.estudio-section-card {
    background: rgba(255, 255, 255, .98);
    border: 1px solid #dce8ea;
    border-radius: 24px;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .045);
    overflow: hidden;
}

.estudio-section-card--filters {
    padding: 0;
}

.estudio-section-card__header {
    align-items: start;
    border-bottom: 1px solid #edf3f4;
    display: flex;
    gap: 16px;
    justify-content: space-between;
    padding: 18px 20px 14px;
}

.estudio-section-card__eyebrow {
    color: #78909b !important;
    display: inline-block;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .08em;
    line-height: 1;
    margin-bottom: 8px;
    text-transform: uppercase;
}

.estudio-section-card__title {
    color: #13263a;
    font-size: 1.05rem;
    letter-spacing: -.02em;
    margin-bottom: 4px;
}

.estudio-section-card__subtitle {
    color: #607381;
    font-size: .93rem;
    margin: 0;
}

.estudio-filter-grid {
    margin: 0;
    padding: 18px 20px 20px;
}

.estudio-filter-grid > .mud-grid-item {
    padding-top: 0;
}

.estudio-table-card--dense .estudio-table-card__header {
    padding-bottom: 12px;
}

.estudio-data-table {
    background: transparent;
}

.estudio-data-table .mud-table-container {
    padding: 6px 14px 14px;
}

.estudio-data-table .mud-table-head th {
    color: #5f7280;
    font-size: .76rem;
    font-weight: 700;
    letter-spacing: .04em;
    padding-bottom: 10px;
    padding-top: 6px;
    text-transform: uppercase;
}

.estudio-data-table .mud-table-body td {
    border-bottom: 1px solid #edf3f4;
    color: #173042;
    font-size: .94rem;
    padding-bottom: 14px;
    padding-top: 14px;
    vertical-align: middle;
}

.estudio-data-table .mud-table-body tr:last-child td {
    border-bottom: 0;
}

.estudio-data-table .mud-table-row {
    border-radius: 16px;
    transition: background .18s ease, transform .18s ease;
}

.estudio-data-table .mud-table-row:hover {
    background: #f7fbfb;
    transform: translateY(-1px);
}

.estudio-data-table .mud-chip {
    font-weight: 600;
}

.estudio-simple-table {
    padding: 6px 20px 18px;
}

.estudio-simple-table td {
    border-bottom: 1px solid #edf3f4;
    color: #173042;
    font-size: .94rem;
    padding: 12px 0;
}

.estudio-simple-table tr:last-child td {
    border-bottom: 0;
}

.estudio-state-card {
    align-items: center;
    display: flex;
    justify-content: center;
    min-height: 180px;
    padding: 18px;
}

.estudio-form-card {
    padding-bottom: 20px;
}

.estudio-profile-card__identity {
    align-items: center;
    display: flex;
    gap: 14px;
}

.estudio-form-stack {
    display: grid;
    gap: 14px;
    padding: 18px 20px 0;
}

.estudio-form-card .mud-chip {
    margin-left: 20px;
    margin-top: 16px;
}

.estudio-form-card__action {
    margin: 20px 20px 0 !important;
}

.estudio-dashboard__intro {
    align-items: end;
    display: flex;
    gap: 16px;
    justify-content: space-between;
    padding: 6px 4px 2px;
}

.estudio-dashboard__intro-copy {
    display: grid;
    gap: 8px;
}

.estudio-dashboard__title {
    color: #13263a;
    font-size: clamp(2.15rem, 2.5vw, 2.8rem);
    letter-spacing: -.05em;
    line-height: .98;
    margin: 0;
}

.estudio-dashboard__subtitle {
    color: #5f7280;
    margin: 0;
    max-width: 720px;
}

.estudio-dashboard__metrics,
.estudio-dashboard__charts {
    margin-top: 0;
    margin-bottom: 0;
}

.estudio-dashboard__metrics {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.estudio-dashboard__charts {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.estudio-metric-card {
    background: linear-gradient(180deg, #ffffff 0%, #fbfdfd 100%);
    border: 1px solid #dce8ea;
    border-radius: 22px;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .04);
    cursor: pointer;
    min-height: 116px;
    padding: 18px 18px 16px;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.estudio-metric-card:hover {
    border-color: #bfd7d9;
    box-shadow: 0 16px 34px rgba(15, 23, 42, .08);
    transform: translateY(-2px);
}

.estudio-metric-card__top {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    margin-bottom: 18px;
}

.estudio-metric-card__label {
    color: #58707a !important;
    display: block;
    font-size: .74rem;
    font-weight: 800;
    letter-spacing: .08em;
    margin: 0;
    text-transform: uppercase;
}

.estudio-metric-card__dot {
    background: #dbe7ea;
    border-radius: 999px;
    display: block;
    flex: 0 0 auto;
    height: 10px;
    width: 10px;
}

.estudio-metric-card__value {
    color: var(--ll-ink);
    font-size: 2.35rem;
    letter-spacing: -.04em;
    line-height: 1;
    margin: 0;
}

.estudio-metric-card--active .estudio-metric-card__dot {
    background: var(--ll-primary-soft);
}

.estudio-metric-card--pending .estudio-metric-card__dot {
    background: #f4b860;
}

.estudio-metric-card--pending .estudio-metric-card__value {
    color: #d97706;
}

.estudio-metric-card--urgent .estudio-metric-card__dot {
    background: #f3a2a2;
}

.estudio-metric-card--urgent .estudio-metric-card__value {
    color: #ef4444;
}

.estudio-metric-card--completed .estudio-metric-card__dot {
    background: var(--ll-primary-soft);
}

.estudio-metric-card--completed .estudio-metric-card__value {
    color: var(--ll-primary);
}

.estudio-chart-card,
.estudio-table-card {
    background: rgba(255, 255, 255, .98);
    border: 1px solid var(--ll-border);
    border-radius: 24px;
    box-shadow: 0 12px 28px var(--ll-shadow);
    overflow: hidden;
}

.estudio-chart-card__header,
.estudio-table-card__header {
    align-items: start;
    border-bottom: 1px solid rgba(64, 138, 113, 0.10);
    display: flex;
    justify-content: space-between;
    padding: 18px 20px 14px;
}

.estudio-chart-card__eyebrow,
.estudio-table-card__eyebrow {
    color: var(--ll-text-soft) !important;
    display: inline-block;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .08em;
    line-height: 1;
    margin-bottom: 8px;
    text-transform: uppercase;
}

.estudio-chart-card__title,
.estudio-table-card__title {
    color: var(--ll-ink);
    font-size: 1.05rem;
    letter-spacing: -.02em;
    margin-bottom: 4px;
}

.estudio-chart-card__subtitle,
.estudio-table-card__subtitle {
    color: #607381;
    font-size: .93rem;
    margin: 0;
}

.estudio-users-search {
    margin: 4px 20px 16px;
    max-width: 360px;
}

.estudio-users-search .mud-input-outlined {
    border-radius: 12px;
    background: var(--ll-surface);
}

.estudio-users-search .mud-input-outlined-border {
    border-radius: 12px !important;
    border-color: var(--ll-border) !important;
    transition: border-color .15s ease, box-shadow .15s ease;
}

.estudio-users-search .mud-input-outlined:hover .mud-input-outlined-border {
    border-color: var(--ll-border-strong) !important;
}

.estudio-users-search:focus-within .mud-input-outlined-border {
    border-color: var(--ll-primary) !important;
    border-width: 2px !important;
    box-shadow: 0 0 0 4px rgba(64, 138, 113, 0.12);
}

.estudio-users-search .mud-input-adornment-start .mud-icon-root {
    color: var(--ll-text-soft);
}

.estudio-users-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    justify-content: flex-start;
}

.estudio-users-role-button.mud-button-root {
    border-radius: 10px;
    font-size: .8rem;
    font-weight: 700;
    padding: 4px 10px;
    text-transform: none;
}

.estudio-users-role-button--assign.mud-button-root {
    background: rgba(64, 138, 113, 0.12);
    color: var(--ll-primary-dark) !important;
}

.estudio-users-role-button--assign.mud-button-root:hover {
    background: rgba(64, 138, 113, 0.20);
}

.estudio-users-role-button--remove.mud-button-root {
    background: rgba(15, 23, 42, 0.06);
    color: var(--ll-text-muted) !important;
}

.estudio-users-role-button--remove.mud-button-root:hover {
    background: rgba(15, 23, 42, 0.10);
    color: var(--ll-ink) !important;
}

.estudio-users-icon-button.mud-icon-button {
    border-radius: 10px;
    height: 34px;
    width: 34px;
}

.estudio-users-icon-button--danger.mud-icon-button {
    color: #c53434 !important;
}

.estudio-users-icon-button--danger.mud-icon-button:hover {
    background: rgba(197, 52, 52, 0.10);
}

.estudio-users-icon-button--success.mud-icon-button {
    color: var(--ll-primary-dark) !important;
}

.estudio-users-icon-button--success.mud-icon-button:hover {
    background: rgba(64, 138, 113, 0.12);
}

.estudio-chart-card__body {
    min-height: 320px;
    padding: 14px 16px 18px;
}

.estudio-chart-card__body--center {
    align-items: center;
    display: flex;
    justify-content: center;
}

.estudio-dashboard__table {
    background: transparent;
}

.estudio-dashboard__table .mud-table-container {
    padding: 6px 14px 14px;
}

.estudio-dashboard__table .mud-table-head th {
    color: #5f7280;
    font-size: .76rem;
    font-weight: 700;
    letter-spacing: .04em;
    padding-bottom: 10px;
    padding-top: 6px;
    text-transform: uppercase;
}

.estudio-dashboard__table .mud-table-body td {
    border-bottom: 1px solid #edf3f4;
    color: #173042;
    font-size: .94rem;
    padding-bottom: 14px;
    padding-top: 14px;
    vertical-align: middle;
}

.estudio-dashboard__table .mud-table-body tr:last-child td {
    border-bottom: 0;
}

.estudio-dashboard__table .mud-table-row {
    border-radius: 16px;
    transition: background .18s ease, transform .18s ease;
}

.estudio-dashboard__table .mud-table-row:hover {
    background: #f7fbfb;
    transform: translateY(-1px);
}

.estudio-dashboard__table .mud-chip {
    font-weight: 600;
}

.estudio-dashboard__table .mud-table-body td:first-child {
    font-weight: 700;
    max-width: 360px;
}

.estudio-dashboard__table .mud-table-body td:first-child,
.estudio-dashboard__table .mud-table-body td:nth-child(2) {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.studio-inbox,
.studio-clients,
.studio-page {
    display: grid;
    gap: 18px;
    margin: 0 auto;
    max-width: 1320px;
}

.studio-inbox__hero,
.studio-clients__hero,
.studio-page-hero {
    align-items: start;
    background: transparent;
    border: 0;
    box-shadow: none;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    padding: 6px 4px 2px;
}

.studio-inbox__hero .mud-typography-caption,
.studio-clients__hero .mud-typography-caption,
.studio-page-hero .mud-typography-caption {
    color: #78909b !important;
    display: inline-block;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .08em;
    line-height: 1;
    margin: 0 0 8px;
    text-transform: uppercase;
}

.studio-inbox__hero .mud-typography-h4,
.studio-clients__hero .mud-typography-h4,
.studio-page-hero .mud-typography-h4 {
    color: #13263a;
    font-size: clamp(2rem, 2.35vw, 2.55rem);
    letter-spacing: -.045em;
    line-height: 1.02;
    margin: 0;
}

.studio-inbox__hero .mud-typography-body2,
.studio-clients__hero .mud-typography-body2,
.studio-page-hero .mud-typography-body1 {
    color: #607381;
    margin: 6px 0 0;
    max-width: 760px;
}

.studio-inbox__queue,
.studio-clients__list,
.ai-config-profile {
    border-radius: 24px;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .045);
}

.studio-clients__search .mud-input-control {
    margin-top: 0;
}

@media (max-width: 1199px) {
    .estudio-dashboard__metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 959px) {
    .estudio-shell__drawer .mud-drawer {
        width: min(86vw, 290px);
    }

    .estudio-shell__main {
        padding-top: 76px !important;
    }

    .estudio-dashboard__intro {
        padding-left: 0;
        padding-right: 0;
    }

    .estudio-dashboard__charts {
        grid-template-columns: 1fr;
    }

    .estudio-page-header,
    .studio-inbox__hero,
    .studio-clients__hero,
    .studio-page-hero {
        flex-direction: column;
    }
}

@media (max-width: 599px) {
    .estudio-shell__topbar {
        padding: 0 10px;
    }

    .estudio-app-title.mud-typography-h6 {
        font-size: .96rem;
    }

    .estudio-shell__main {
        padding: 72px 12px 18px !important;
    }

    .estudio-dashboard {
        gap: 16px;
    }

    .estudio-page-shell,
    .studio-inbox,
    .studio-clients,
    .studio-page {
        gap: 16px;
    }

    .estudio-dashboard__metrics {
        grid-template-columns: 1fr;
    }

    .estudio-chart-card__header,
    .estudio-table-card__header {
        padding-left: 16px;
        padding-right: 16px;
    }

    .estudio-chart-card__body,
    .estudio-dashboard__table .mud-table-container,
    .estudio-data-table .mud-table-container {
        padding-left: 12px;
        padding-right: 12px;
    }

    .estudio-section-card__header,
    .estudio-filter-grid,
    .estudio-simple-table,
    .estudio-form-stack {
        padding-left: 16px;
        padding-right: 16px;
    }

    .estudio-form-card .mud-chip,
    .estudio-form-card__action {
        margin-left: 16px !important;
        margin-right: 16px !important;
    }
}

.side-switcher {
    align-items: center;
    background: rgba(255, 255, 255, .68);
    border: 1px solid #dce5ea;
    border-radius: 8px;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .025);
    display: grid;
    flex: 0 0 auto;
    gap: 4px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    padding: 4px;
}

.side-tab {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 6px;
    color: #566575;
    cursor: pointer;
    display: flex;
    gap: 5px;
    height: 36px;
    justify-content: center;
    min-width: 0;
    padding: 0 6px;
    transition: background .15s ease, color .15s ease, box-shadow .15s ease;
}

.side-tab span {
    font-size: .78rem;
    font-weight: 750;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.side-tab .mud-icon-root {
    font-size: .98rem;
}

.side-tab em {
    align-items: center;
    background: #e8f1ef;
    border-radius: 999px;
    color: #1f635a;
    display: inline-flex;
    font-size: .68rem;
    font-style: normal;
    font-weight: 800;
    height: 18px;
    justify-content: center;
    min-width: 18px;
    padding: 0 5px;
}

.side-tab--active {
    background: #173b35;
    box-shadow: 0 8px 20px rgba(23, 59, 53, .18);
    color: #ffffff;
}

.side-tab--active em {
    background: rgba(255, 255, 255, .18);
    color: #ffffff;
}

.side-content {
    display: flex;
    flex: 1 1 auto;
    min-height: 0;
}

.side-content > .case-panel {
    flex: 1 1 auto;
    min-height: 0;
    width: 100%;
}

.case-side .case-panel__header {
    align-items: flex-start;
    min-height: auto;
    padding: 12px 14px;
}

.case-side .case-panel__title {
    align-items: flex-start;
}

.case-side .case-panel__title .mud-icon-root {
    font-size: 1.22rem;
    margin-top: 2px;
}

.case-side .case-panel__title .mud-typography-h6 {
    font-size: 1rem;
    line-height: 1.1;
}

.case-side .case-panel__title .mud-typography-body2 {
    font-size: .8rem;
    line-height: 1.3;
}

.case-panel {
    background: rgba(255, 255, 255, .88);
    border: 1px solid #dce5ea;
    border-radius: 8px;
    box-shadow: 0 8px 22px rgba(15, 23, 42, .04);
    overflow: hidden;
}

.case-panel__header {
    align-items: center;
    background: rgba(255, 255, 255, .74);
    border-bottom: 1px solid #e3eaee;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    min-height: 64px;
    padding: 12px 16px;
}

.case-panel__title {
    align-items: center;
    display: flex;
    gap: 9px;
    min-width: 0;
}

.case-panel__title .mud-typography-h6 {
    line-height: 1.2;
}

.case-panel__title .mud-typography-body2 {
    line-height: 1.25;
}

.case-panel__title .mud-icon-root {
    color: #1f7a83;
    flex: 0 0 auto;
    font-size: 1.45rem;
}

.case-panel__title .mud-typography-h6 {
    color: #152536;
    font-size: 1.18rem;
    font-weight: 750;
}

.case-panel__title .mud-typography-body2 {
    color: #6a7784;
}

.case-chat,
.ai-chat {
    display: flex;
    flex-direction: column;
    gap: 10px;
    min-height: 0;
    overflow-y: auto;
    padding: 16px;
}

.case-panel--conversation,
.ai-panel {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: none;
    min-height: 0;
}

.case-panel--primary {
    border-color: #c9e1dd;
}

.case-chat,
.ai-chat {
    flex: 1 1 auto;
}

.case-workspace--ai-first .case-main {
    overflow-y: auto;
}

.case-workspace--ai-first .ai-panel {
    height: auto;
    min-height: 100%;
    overflow: visible;
}

.case-workspace--ai-first .ai-chat {
    flex: 0 0 auto;
    max-height: none;
    overflow: visible;
}

.estudio-chat {
    min-height: 0;
}

.ai-chat {
    background: linear-gradient(180deg, #fbfdfd 0%, #f6f8f8 100%);
    gap: 16px;
    padding: 16px 18px;
}

.ai-workbench {
    display: flex;
    flex-direction: column;
    gap: 16px;
    min-height: 0;
    padding: 16px 18px;
}

.ai-workbench > .ai-chat {
    background: transparent;
    padding: 0;
}

.case-empty {
    align-items: center;
    border: 1px dashed #c9d4dc;
    border-radius: 8px;
    color: #667685;
    display: flex;
    flex-direction: column;
    gap: 8px;
    justify-content: center;
    min-height: 180px;
    padding: 24px;
    text-align: center;
}

.case-empty--compact {
    min-height: 110px;
}

.message-row {
    align-items: flex-start;
    display: flex;
    gap: 10px;
    max-width: 82%;
}

.message-row--me {
    align-self: flex-end;
    flex-direction: row-reverse;
}

.message-row--review {
    max-width: 92%;
}

.message-row--validated {
    max-width: 92%;
}

.message-avatar {
    align-items: center;
    background: #eaf3f3;
    border-radius: 999px;
    color: #277c83;
    display: flex;
    flex: 0 0 32px;
    height: 32px;
    justify-content: center;
    width: 32px;
}

.message-row--me .message-avatar {
    background: #e8eef9;
    color: #355f99;
}

.message-row--review .message-avatar {
    background: #fff3d8;
    color: #93620f;
}

.message-row--validated .message-avatar {
    background: #e4f5f1;
    color: #177266;
}

.message-stack {
    min-width: 0;
}

.message-bubble,
.ai-message__bubble {
    background: #f4f7f8;
    border-radius: 8px;
    color: #263441;
    padding: 10px 12px;
    overflow-wrap: anywhere;
}

.message-row--me .message-bubble,
.ai-message--me .ai-message__bubble {
    background: #e8f3ee;
}

.message-row--review .message-bubble {
    background: #fff9ed;
    border: 1px solid #f2d99c;
}

.message-row--validated .message-bubble {
    background: #eef9f6;
    border: 1px solid #a8d8ce;
}

.message-kicker {
    color: #926313;
    display: block;
    font-weight: 700;
    margin-bottom: 4px;
}

.message-kicker--validated {
    color: #177266;
}

.message-review-note {
    color: #4d6b68;
    display: block;
    margin-bottom: 6px;
}

.message-meta {
    color: #85919c;
    display: block;
    margin-top: 4px;
}

.case-composer,
.ai-composer {
    background: rgba(255, 255, 255, .92);
    border-top: 1px solid #e6ebef;
    padding: 12px 14px;
}

.case-composer {
    align-items: flex-end;
    display: flex;
    gap: 10px;
}

.case-composer__input,
.ai-composer__input {
    flex: 1 1 auto;
}

.ai-panel__header {
    background: #fbfdfd;
}

.legal-desk {
    background: #ffffff;
    border-color: #cfdfe0;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .06);
}

.ai-modebar {
    align-items: center;
    background: #edf4f3;
    border: 1px solid #d7e6e4;
    border-radius: 8px;
    display: flex;
    gap: 4px;
    padding: 4px;
}

.ai-modebar__button {
    background: rgba(255, 255, 255, .72);
    border: 0;
    border-radius: 6px;
    color: #31514d;
    cursor: pointer;
    font-size: .72rem;
    font-weight: 800;
    line-height: 1;
    padding: 8px 9px;
    transition: background .15s ease, color .15s ease, box-shadow .15s ease;
    white-space: nowrap;
}

.ai-modebar__button--active {
    background: #173b35;
    box-shadow: 0 6px 16px rgba(23, 59, 53, .16);
    color: #ffffff;
}

.ai-mode-context {
    background: #f8fbfb;
    border: 1px solid #d9e6e5;
    border-radius: 8px;
    box-shadow: none;
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 12px 14px;
}

.ai-mode-context > div:first-child {
    align-items: flex-start;
    display: flex;
    gap: 10px;
}

.ai-mode-context .mud-icon-root {
    color: #1f7a83;
    flex: 0 0 auto;
    font-size: 1.25rem;
    margin-top: 1px;
}

.ai-mode-context .mud-typography-subtitle2 {
    color: #173b35;
    font-weight: 850;
    line-height: 1.2;
}

.ai-mode-context .mud-typography-body2 {
    color: #62717e;
    line-height: 1.35;
}

.validation-candidates {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.validation-candidates > span {
    color: #73808c;
    font-size: .82rem;
}

.validation-candidates button {
    align-items: flex-start;
    background: #ffffff;
    border: 1px solid #cfe2de;
    border-radius: 8px;
    color: #22313f;
    cursor: pointer;
    display: flex;
    gap: 8px;
    padding: 9px 10px;
    text-align: left;
}

.validation-candidates button .mud-icon-root {
    color: #1f7a43;
    font-size: 1rem;
    margin-top: 1px;
}

.validation-candidates button span {
    font-size: .82rem;
    line-height: 1.25;
}

.validation-candidates button:hover {
    background: #edf8f4;
    border-color: #9ed2c6;
}

.ai-message {
    align-self: flex-start;
    max-width: 100%;
}

.ai-message--me {
    align-self: flex-end;
    max-width: 72%;
}

.ai-message--document {
    width: min(880px, 100%);
}

.ai-message--document .ai-message__bubble {
    background: transparent;
    padding: 0;
}

.client-prompt {
    align-items: flex-start;
    display: flex;
    gap: 9px;
}

.client-prompt .mud-icon-root {
    color: #48716d;
    flex: 0 0 auto;
    font-size: 1.05rem;
}

.legal-doc {
    background: #ffffff;
    border: 1px solid #dbe5e9;
    border-radius: 8px;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .06);
    overflow: hidden;
}

.legal-doc__chrome {
    align-items: center;
    background: linear-gradient(180deg, #ffffff 0%, #f5f8f8 100%);
    border-bottom: 1px solid #e1e9ec;
    color: #5c6975;
    display: flex;
    justify-content: space-between;
    padding: 9px 14px;
}

.legal-doc__chrome span {
    color: #173b35;
    font-size: .78rem;
    font-weight: 850;
    text-transform: uppercase;
}

.legal-doc__chrome small {
    color: #8a96a1;
    font-size: .72rem;
    font-weight: 700;
}

.legal-doc__body {
    padding: 18px 24px 22px;
}

.case-intake-card {
    background: #f5fbf8;
    border: 1px solid #cfe2de;
    border-radius: 10px;
    box-shadow: 0 14px 30px rgba(15, 23, 42, .07);
    flex: 0 0 auto;
    padding: 14px;
}

.case-intake-card--new {
    border-color: #21a67a;
    box-shadow: 0 0 0 3px rgba(33, 166, 122, .14), 0 16px 36px rgba(15, 23, 42, .1);
}

.case-intake-card__header {
    align-items: flex-start;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    margin-bottom: 14px;
}

.case-intake-card__header .mud-typography-caption {
    color: #1b7368;
    font-weight: 850;
    text-transform: uppercase;
}

.case-intake-card__header .mud-typography-h6 {
    color: #092b27;
    font-weight: 900;
    line-height: 1.15;
}

.case-intake-card__header .mud-typography-body2 {
    color: #59706c;
    margin-top: 2px;
}

.case-intake-progress {
    align-items: center;
    background: #ffffff;
    border: 1px solid #bddbd3;
    border-radius: 8px;
    color: #164d45;
    display: flex;
    flex-direction: column;
    min-width: 78px;
    padding: 8px 10px;
}

.case-intake-progress strong {
    font-size: 1.45rem;
    line-height: 1;
}

.case-intake-progress span {
    color: #6b7f7b;
    font-size: .72rem;
    font-weight: 800;
    text-transform: uppercase;
}

.case-intake-fields {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ai-intake-inline {
    align-self: center;
    max-width: 880px;
    width: 100%;
}

.ai-intake-inline .case-intake-fields {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.case-intake-section-title {
    color: #173b35;
    display: block;
    font-weight: 900;
    margin: 10px 0 8px;
}

.case-intake-field {
    background: #ffffff;
    border: 1px solid #d6e5e1;
    border-radius: 8px;
    min-width: 0;
    padding: 12px;
    transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease;
}

.case-intake-field--answered {
    background: #f0fbf4;
    border-color: #9bd1bd;
    box-shadow: inset 3px 0 0 #17a75b;
}

.case-intake-field--unknown {
    background: #fffaf0;
    border-color: #f4c36c;
    box-shadow: inset 3px 0 0 #f59f00;
}

.case-intake-fields--completed .case-intake-field {
    background: #fbfdfd;
}

.case-intake-field__label {
    margin-bottom: 8px;
}

.case-intake-field__label .mud-typography-subtitle2 {
    color: #17322f;
    font-weight: 850;
    line-height: 1.25;
}

.case-intake-field__label .mud-typography-caption {
    color: #6c7d79;
    display: block;
    margin-top: 2px;
}

.case-intake-field__actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: flex-end;
    margin-top: 8px;
}

.case-intake-field__actions .mud-chip {
    margin-right: auto;
}

.case-intake-autosave {
    color: #6b7f7b;
    font-size: .78rem;
    font-weight: 800;
    margin-right: auto;
}

.case-intake-saved-summary {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.case-intake-saved-summary > div {
    background: #ffffff;
    border: 1px solid #d8e8e3;
    border-radius: 8px;
    padding: 9px 11px;
}

.case-intake-saved-summary span {
    color: #60736f;
    display: block;
    font-size: .76rem;
    font-weight: 850;
    line-height: 1.25;
}

.case-intake-saved-summary strong {
    color: #12322d;
    display: block;
    font-size: .95rem;
    font-weight: 850;
    margin-top: 4px;
    overflow-wrap: anywhere;
}

.case-intake-card__footer {
    align-items: stretch;
    background: #f5fbf8;
    border-top: 1px solid #d8e8e3;
    display: flex;
    flex-direction: column;
    gap: 14px;
    justify-content: space-between;
    margin: 14px -14px -14px;
    padding: 12px 14px 14px;
}

.case-intake-card__footer .mud-typography-caption {
    color: #5c716d;
    line-height: 1.3;
}

.case-intake-card__footer-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.case-intake-card__footer-actions .mud-button-root {
    flex: 1 1 190px;
}

.case-intake-more.mud-button-root {
    margin-top: 10px;
}

.case-intake-completed {
    margin-top: 14px;
}

.case-intake-completed .mud-expand-panel {
    background: rgba(255, 255, 255, .72);
    border: 1px solid #d7e7e2;
    border-radius: 8px;
    overflow: hidden;
}

.case-intake-completed .mud-expand-panel-header {
    min-height: 42px;
}

.case-intake-completed .mud-expand-panel-text {
    color: #31544e;
    font-weight: 850;
}

.case-intake-completed-visible {
    background: #fbfefd;
    border: 1px solid #d7e7e2;
    border-radius: 8px;
    display: grid;
    gap: 10px;
    margin-top: 14px;
    padding: 12px;
}

.case-intake-completed-visible__head {
    display: grid;
    gap: 3px;
}

.case-intake-completed-visible__head .mud-typography-caption:not(.case-intake-section-title) {
    color: #5c716d;
}

.case-intake-fields--saved .case-intake-field {
    background: #ffffff;
    border-color: #b7e4c7;
}

.case-ai-preparing {
    overflow: hidden;
    position: relative;
}

.case-ai-preparing::after {
    animation: casePreparingSweep 1.35s ease-in-out infinite;
    background: linear-gradient(90deg, transparent, rgba(33, 166, 122, .14), transparent);
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
    transform: translateX(-100%);
}

.case-ai-preparing__body {
    align-items: center;
    background: linear-gradient(135deg, #effbf6, #ffffff);
    border: 1px solid #cbe6dc;
    border-radius: 10px;
    display: flex;
    gap: 18px;
    margin-top: 14px;
    padding: 22px;
}

.case-ai-preparing__body .mud-typography-subtitle1 {
    color: #0d3d35;
    font-weight: 900;
}

.case-ai-preparing__body .mud-typography-body2 {
    color: #5d716d;
    margin-top: 3px;
}

.case-ai-preparing__steps {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 14px;
}

.case-ai-preparing__step {
    background: #f8fbfa;
    border: 1px solid #d9e8e3;
    border-radius: 999px;
    color: #66807a;
    font-size: .82rem;
    font-weight: 850;
    padding: 9px 12px;
    text-align: center;
}

.case-ai-preparing__step--active {
    background: #0f4b43;
    border-color: #0f4b43;
    color: #ffffff;
}

.case-flow-transition {
    overflow: hidden;
    position: relative;
}

.case-flow-transition::after {
    animation: casePreparingSweep 1.35s ease-in-out infinite;
    background: linear-gradient(90deg, transparent, rgba(20, 83, 75, .12), transparent);
    content: "";
    inset: 0;
    pointer-events: none;
    position: absolute;
    transform: translateX(-100%);
}

.case-flow-transition__body {
    align-items: center;
    background: linear-gradient(135deg, #effbf6, #ffffff);
    border: 1px solid #cbe6dc;
    border-radius: 10px;
    display: flex;
    gap: 18px;
    padding: 22px;
}

.case-flow-transition__body > div {
    display: grid;
    gap: 4px;
}

.case-flow-transition__body .mud-icon-root {
    color: #0f766e;
}

.case-flow-transition__body .mud-typography-subtitle1 {
    color: #0d3d35;
    font-weight: 900;
}

.case-flow-transition__body .mud-typography-body2 {
    color: #5d716d;
}

.case-flow-transition__steps {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.case-flow-transition__step {
    background: #f8fbfa;
    border: 1px solid #d9e8e3;
    border-radius: 999px;
    color: #66807a;
    font-size: .82rem;
    font-weight: 850;
    padding: 9px 12px;
    text-align: center;
}

.case-flow-transition__step--active {
    background: #0f4b43;
    border-color: #0f4b43;
    color: #ffffff;
}

.case-flow-result {
    align-items: flex-start;
    background: #f0f7ff;
    border: 1px solid #b9d8ff;
    border-radius: 10px;
    display: grid;
    gap: 12px;
    grid-template-columns: auto 1fr auto;
    padding: 14px;
}

.case-flow-result > .mud-icon-root {
    background: #dbeafe;
    border-radius: 999px;
    color: #1d4ed8;
    padding: 7px;
}

.case-flow-result .mud-typography-caption {
    color: #2563eb;
    font-weight: 900;
    text-transform: uppercase;
}

.case-flow-result .mud-typography-subtitle1 {
    color: #102333;
    font-weight: 900;
}

.case-flow-result .mud-typography-body2 {
    color: #506273;
}

.case-flow-result--study,
.case-flow-result--validation,
.case-flow-result--proposal {
    background: #eef7ff;
    border-color: #b9d8ff;
}

.case-flow-result--intake {
    background: #fff8e9;
    border-color: #f6d58a;
}

.case-flow-result--intake > .mud-icon-root {
    background: #fef3c7;
    color: #b45309;
}

@keyframes casePreparingSweep {
    0% { transform: translateX(-100%); }
    60%, 100% { transform: translateX(100%); }
}

.case-intake-history-card {
    align-self: center;
    background: #ffffff;
    border: 1px solid #d8e6e3;
    border-radius: 10px;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .045);
    max-width: 880px;
    padding: 12px 14px;
    width: 100%;
}

.case-intake-history-card > div:first-child {
    align-items: flex-start;
    display: flex;
    gap: 10px;
}

.case-intake-history-card > div:first-child > .mud-icon-root {
    background: #e9f6f2;
    border-radius: 8px;
    color: #1b7368;
    flex: 0 0 auto;
    padding: 6px;
}

.case-intake-history-card .mud-typography-caption {
    color: #60736f;
    font-weight: 850;
    text-transform: uppercase;
}

.case-intake-history-card .mud-typography-subtitle2 {
    color: #16352f;
    font-weight: 900;
}

.optional-data-card {
    align-self: center;
    background: #ffffff;
    border: 1px solid #d8e6e3;
    border-radius: 10px;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .045);
    max-width: 880px;
    padding: 14px;
    width: 100%;
}

.optional-data-card__head {
    align-items: flex-start;
    display: flex;
    gap: 10px;
    margin-bottom: 12px;
}

.optional-data-card__head > .mud-icon-root {
    background: #edf7f4;
    border-radius: 8px;
    color: #1b7368;
    flex: 0 0 auto;
    padding: 6px;
}

.optional-data-card__head .mud-typography-caption {
    color: #60736f;
    font-weight: 850;
    text-transform: uppercase;
}

.optional-data-card__head .mud-typography-subtitle2 {
    color: #16352f;
    font-weight: 900;
}

.optional-data-card__head .mud-typography-body2 {
    color: #60736f;
}

.optional-data-card__grid {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.optional-data-chip {
    background: #f8fbfb;
    border: 1px solid #d8e8e3;
    border-radius: 8px;
    min-height: 76px;
    padding: 0;
}

.optional-data-chip--open {
    background: #ffffff;
    border-color: #9bd1bd;
}

.optional-data-chip__head {
    align-items: flex-start;
    color: #16352f;
    cursor: pointer;
    display: flex;
    font: inherit;
    font-weight: 800;
    gap: 8px;
    justify-content: space-between;
    min-height: 74px;
    padding: 10px;
    text-align: left;
    width: 100%;
    background: transparent;
    border: 0;
}

.optional-data-chip:hover,
.optional-data-chip__head:hover {
    background: #eff8f5;
}

.optional-data-chip__head .mud-icon-root {
    color: #1b7368;
    flex: 0 0 auto;
    font-size: 1.05rem;
}

.optional-data-chip__input {
    padding: 0 10px 8px;
}

.optional-data-chip__actions {
    align-items: center;
    border-top: 1px solid #e0ebea;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    padding: 8px 10px 10px;
}

.optional-data-chip__actions span {
    color: #60736f;
    font-size: .76rem;
    font-weight: 800;
}

.optional-data-card__hint {
    color: #6b7f7b;
    display: block;
    margin-top: 10px;
}

.case-intake-facts {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.case-intake-facts > div {
    background: #f8fbfb;
    border: 1px solid #e0ebea;
    border-radius: 8px;
    padding: 8px 10px;
}

.case-intake-facts span {
    color: #66757c;
    display: block;
    font-size: .75rem;
    font-weight: 800;
}

.case-intake-facts strong {
    color: #122b33;
    display: block;
    font-size: .9rem;
    margin-top: 2px;
    overflow-wrap: anywhere;
}

.studio-intake-list {
    display: grid;
    gap: 12px;
}

.studio-intake-list--facts {
    gap: 10px;
    margin: 10px 0 22px;
}

.estudio-summary-grid--intake {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-bottom: 18px;
}

.studio-intake-item {
    background: #ffffff;
    border: 1px solid #d9e5e8;
    border-radius: 14px;
    padding: 14px 16px;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

.studio-intake-item .mud-typography-caption {
    color: #49606c;
    display: block;
    font-weight: 800;
    letter-spacing: .01em;
    line-height: 1.35;
    margin-bottom: 0;
}

.studio-intake-item .mud-typography-body2 {
    color: #172b36;
    line-height: 1.55;
    overflow-wrap: anywhere;
}

@media (max-width: 900px) {
    .case-intake-fields {
        grid-template-columns: 1fr;
    }

    .ai-intake-inline .case-intake-fields {
        grid-template-columns: 1fr;
    }

    .case-intake-saved-summary {
        grid-template-columns: 1fr;
    }

    .optional-data-card__grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 720px) {
    .ai-workbench {
        gap: 10px;
        padding: 10px;
    }

    .case-intake-card {
        padding: 12px;
    }

    .case-intake-card__header,
    .case-intake-card__footer {
        align-items: stretch;
        flex-direction: column;
    }

    .case-intake-progress {
        align-items: flex-start;
        flex-direction: row;
        gap: 6px;
        justify-content: flex-start;
        min-width: 0;
        width: 100%;
    }

    .case-intake-progress strong {
        font-size: 1.15rem;
    }

    .case-intake-card__footer .mud-button-root {
        width: 100%;
    }

    .case-intake-field__actions {
        justify-content: stretch;
    }

    .case-intake-field__actions .mud-button-root {
        flex: 1 1 110px;
    }
}

.ai-message__actions {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    margin-top: 10px;
}

.ai-review-summary {
    background: #eef9f6;
    border: 1px solid #a8d8ce;
    border-radius: 8px;
    color: #263441;
    max-width: 100%;
    padding: 10px 12px;
}

.review-diff {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.review-diff > div {
    background: rgba(255, 255, 255, .78);
    border: 1px solid #cfe2de;
    border-radius: 8px;
    min-width: 0;
    padding: 10px;
}

.review-diff span {
    color: #177266;
    display: block;
    font-size: .72rem;
    font-weight: 850;
    margin-bottom: 6px;
    text-transform: uppercase;
}

.ai-review-summary--approved {
    background: #f4fbf8;
}

.ai-review-summary .mud-typography-caption {
    color: #177266;
    display: block;
    font-weight: 700;
    margin-bottom: 4px;
}

.work-action-card {
    align-items: flex-start;
    background: #f7fbfb;
    border: 1px solid #d8e8e6;
    border-radius: 8px;
    display: flex;
    gap: 10px;
    max-width: min(760px, 100%);
    padding: 10px 12px;
}

.work-action-card > .mud-icon-root {
    background: #eaf6f3;
    border-radius: 999px;
    color: #1f7a83;
    flex: 0 0 auto;
    font-size: 1.1rem;
    height: 30px;
    padding: 6px;
    width: 30px;
}

.work-action-card .mud-typography-subtitle2 {
    color: #173b35;
    font-weight: 850;
    line-height: 1.2;
}

.work-action-card .mud-typography-caption {
    color: #647381;
    display: block;
    line-height: 1.3;
    margin-top: 3px;
}

.work-action-card__actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 8px;
}

.work-action-card__hint {
    color: #607182;
    font-size: .76rem;
    font-weight: 800;
    text-transform: uppercase;
}

.work-action-card--study {
    background: #f2f8ff;
    border-color: #c9ddf1;
}

.work-action-card--study > .mud-icon-root {
    background: #e2efff;
    color: #285c91;
}

.work-action-card--validation {
    background: #fff8eb;
    border-color: #efd79d;
}

.work-action-card--validation > .mud-icon-root {
    background: #fff1cc;
    color: #93620f;
}

.work-action-card--official {
    background: #eef9f6;
    border-color: #a8d8ce;
}

.work-action-card--official > .mud-icon-root {
    background: #dff5ef;
    color: #177266;
}

.ai-composer__row {
    align-items: center;
    display: flex;
    gap: 8px;
}

.ai-typing {
    align-items: center;
    color: #667685;
    display: flex;
    gap: 8px;
}

.markdown-body {
    color: #22313f;
    font-size: .98rem;
    line-height: 1.62;
}

.markdown-body h1,
.markdown-body h2,
.markdown-body h3 {
    color: #102532;
    font-weight: 750;
    line-height: 1.25;
    margin: 14px 0 6px;
}

.markdown-body h1 {
    font-size: 1.35rem;
}

.markdown-body h2 {
    border-top: 1px solid #e2e8ee;
    font-size: 1.12rem;
    margin-top: 18px;
    padding-top: 12px;
}

.markdown-body h3 {
    font-size: 1rem;
}

.markdown-body p {
    margin: 0 0 10px;
}

.markdown-body ul,
.markdown-body ol {
    margin: 6px 0 12px;
    padding-left: 22px;
}

.markdown-body li {
    margin: 4px 0;
}

.markdown-body blockquote {
    background: #f7fbfa;
    border-left: 4px solid #277c83;
    border-radius: 0 8px 8px 0;
    margin: 10px 0;
    padding: 10px 12px;
}

.markdown-body strong {
    color: #142838;
    font-weight: 750;
}

.markdown-body :first-child {
    margin-top: 0;
}

.markdown-body :last-child {
    margin-bottom: 0;
}

.markdown-body--compact {
    font-size: .92rem;
    line-height: 1.45;
}

.markdown-body--compact h1,
.markdown-body--compact h2,
.markdown-body--compact h3 {
    font-size: .95rem;
    margin-top: 10px;
}

.markdown-body--compact h2 {
    padding-top: 8px;
}

.document-empty {
    color: #7a8793;
    padding: 18px 20px;
}

.document-panel {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 0;
}

.review-panel {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 0;
}

.document-panel .case-panel__header,
.review-panel .case-panel__header {
    min-height: 58px;
    padding: 11px 12px;
}

.document-panel .case-panel__title,
.review-panel .case-panel__title {
    gap: 8px;
}

.document-panel .case-panel__title .mud-typography-h6,
.review-panel .case-panel__title .mud-typography-h6 {
    font-size: 1.05rem;
}

.document-panel .case-panel__title .mud-typography-body2,
.review-panel .case-panel__title .mud-typography-body2 {
    display: none;
}

.document-upload {
    align-items: center;
    background: #203b35;
    border: 1px solid #203b35;
    border-radius: 8px;
    color: #ffffff;
    cursor: pointer;
    display: inline-flex;
    flex: 0 0 auto;
    gap: 6px;
    font-size: .82rem;
    font-weight: 750;
    height: 34px;
    justify-content: center;
    padding: 0 11px;
    transition: background .15s ease, border-color .15s ease, transform .15s ease;
}

.document-upload:hover {
    background: #285249;
    border-color: #285249;
}

.document-upload:active {
    transform: translateY(1px);
}

.document-upload .mud-icon-root {
    color: inherit;
    font-size: 1.05rem;
}

.document-upload__input {
    height: 1px;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    width: 1px;
}

.document-list,
.review-list,
.note-list,
.case-action-stack {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 14px 18px;
}

.document-panel .document-list {
    flex: 1 1 auto;
    max-height: none;
    overflow-y: auto;
    padding: 10px 12px;
}

.document-item {
    align-items: center;
    background: #ffffff;
    border: 1px solid #e3e9ee;
    border-radius: 8px;
    display: flex;
    gap: 12px;
    padding: 12px;
}

.document-panel .document-item {
    gap: 8px;
    padding: 9px;
}

.document-panel .document-item .mud-icon-button {
    flex: 0 0 auto;
}

.document-item .mud-icon-root {
    color: #c86f09;
}

.document-item__body {
    flex: 1 1 auto;
    min-width: 0;
}

.document-item__body .mud-typography-body2 {
    color: #1f2f3d;
    font-size: .9rem;
    font-weight: 650;
    overflow-wrap: anywhere;
}

.document-item__body .mud-typography-caption {
    color: #7a8793;
    font-size: .78rem;
}

.review-list {
    flex: 1 1 auto;
    padding-top: 0;
    max-height: none;
    min-height: 0;
    overflow-y: auto;
}

.review-item,
.review-card,
.note-item {
    background: #ffffff;
    border: 1px solid #e3e9ee;
    border-radius: 8px;
    padding: 11px;
}

.review-item__top,
.review-card__header {
    align-items: center;
    display: flex;
    gap: 12px;
    justify-content: space-between;
}

.review-item__content {
    color: #344452;
    display: -webkit-box;
    margin-top: 8px;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
}

.review-item__content.markdown-body {
    display: block;
}

.review-item__published {
    background: #eef9f6;
    border: 1px solid #a8d8ce;
    border-radius: 8px;
    margin-top: 10px;
    padding: 10px;
}

.review-item__published .mud-typography-caption,
.review-item__approved-note {
    color: #177266;
    display: block;
    font-weight: 700;
    margin-top: 8px;
}

.review-queue {
    display: flex;
    flex-direction: column;
    gap: 14px;
    padding: 14px 18px 18px;
}

.case-workspace--ai-first {
    background: linear-gradient(180deg, #f8fbfa 0%, #f2f7f6 52%, #edf4f3 100%);
    height: auto;
    min-height: calc(100vh - 64px);
    overflow: visible;
}

html:has(.case-workspace--ai-first),
body:has(.case-workspace--ai-first) {
    overflow: auto;
}

.case-workspace--ai-first > .case-hero,
.case-workspace--ai-first > .case-command-center,
.case-workspace--ai-first > .case-layout {
    align-self: center;
    max-width: 1120px;
    width: 100%;
}

.case-hero--ai-first {
    background: rgba(255, 255, 255, .9);
    box-shadow: 0 10px 30px rgba(15, 23, 42, .045);
}

.case-flow-chip {
    align-items: center;
    background: #ecf8f4;
    border: 1px solid #b9dfd3;
    border-radius: 999px;
    color: #176c5d;
    display: inline-flex;
    font-size: .76rem;
    font-weight: 850;
    gap: 5px;
    line-height: 1;
    padding: 7px 10px;
    white-space: nowrap;
}

.case-flow-chip .mud-icon-root {
    font-size: .95rem;
}

.case-command-center {
    align-items: center;
    background: #ffffff;
    border: 1px solid #d8e6e5;
    border-radius: 8px;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .055);
    display: grid;
    flex: 0 0 auto;
    gap: 14px;
    grid-template-columns: minmax(0, 1fr) auto;
    margin-bottom: 10px;
    padding: 12px;
}

.case-command-center__state {
    align-items: flex-start;
    display: flex;
    gap: 12px;
    min-width: 0;
}

.case-command-center__state > .mud-icon-root {
    background: #173b35;
    border-radius: 8px;
    color: #ffffff;
    flex: 0 0 auto;
    font-size: 1.15rem;
    height: 38px;
    padding: 8px;
    width: 38px;
}

.case-command-center__state .mud-typography-caption {
    color: #607182;
    display: block;
    font-size: .68rem;
    font-weight: 850;
    line-height: 1;
    text-transform: uppercase;
}

.case-command-center__state .mud-typography-h6 {
    color: #142838;
    font-size: 1.08rem;
    font-weight: 850;
    line-height: 1.15;
    margin-top: 3px;
}

.case-command-center__state .mud-typography-body2 {
    color: #5d6d7b;
    line-height: 1.3;
    margin-top: 4px;
}

.case-command-center__cta.mud-button-root {
    border-radius: 8px;
    font-weight: 850;
    letter-spacing: 0;
    min-height: 44px;
    white-space: nowrap;
}

.case-command-center__chat.mud-button-root {
    border-radius: 8px;
    font-weight: 850;
    letter-spacing: 0;
    min-height: 44px;
    white-space: nowrap;
}

.case-workspace--ai-first .case-command-center__cta.mud-button-root {
    max-width: 100%;
}

.work-action-card--active {
    box-shadow: none;
}

.work-action-card__content {
    margin-top: 12px;
    max-height: 360px;
    overflow: auto;
}

.case-map-v9 {
    margin-bottom: 14px;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    overflow: visible;
    padding: 0;
}

.case-layout--map-only-v91 .case-side--client {
    display: none;
}

.case-layout--map-only-v91 .case-main {
    width: 100%;
}

.case-map-experience-v9 {
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    display: grid;
    grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
    gap: 16px;
}

.case-flow-guide-v93 {
    grid-column: 1 / -1;
    align-items: center;
    background: linear-gradient(135deg, #ffffff 0%, #f4fbf8 100%);
    border: 1px solid #d8e6e5;
    border-radius: 12px;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .05);
    display: grid;
    gap: 10px 16px;
    grid-template-columns: minmax(0, 1fr) auto;
    padding: 16px 18px;
}

.case-flow-guide-v93__content .mud-typography-caption {
    color: #0f766e;
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}

.case-flow-guide-v93__content .mud-typography-h6 {
    color: #122838;
    font-size: 1.15rem;
    font-weight: 900;
    margin-top: 2px;
}

.case-flow-guide-v93__content .mud-typography-body2 {
    color: #5f7080;
    margin-top: 3px;
}

.case-flow-guide-v93__aside {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}

.case-flow-guide-v93__step {
    background: #173b35;
    border-radius: 999px;
    color: #ffffff;
    display: inline-flex;
    font-size: .78rem;
    font-weight: 850;
    padding: 8px 12px;
    white-space: nowrap;
}

.case-flow-guide-v93__progress {
    background: #deebe8;
    border-radius: 999px;
    grid-column: 1 / -1;
    height: 8px;
    overflow: hidden;
}

.case-flow-guide-v93__progress span {
    background: linear-gradient(90deg, #1f7a43 0%, #2aa36d 100%);
    border-radius: inherit;
    display: block;
    height: 100%;
    transition: width .2s ease;
}

.case-map-v9__rail {
    align-content: start;
    align-self: start;
    display: grid;
    gap: 10px;
    height: max-content;
    position: relative;
}

.case-map-v9__rail::before {
    background: #d8e6e5;
    content: "";
    height: calc(100% - 56px);
    left: 27px;
    position: absolute;
    top: 28px;
    width: 2px;
}

.case-map-node-v9 {
    align-items: center;
    border: 1px solid #d8e6e5;
    border-radius: 8px;
    background: #ffffff;
    color: #243646;
    cursor: pointer;
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 12px;
    min-height: 66px;
    padding: 12px;
    position: relative;
    text-align: left;
    z-index: 1;
}

.case-map-node-v9__icon {
    align-items: center;
    background: #eef5f4;
    border-radius: 999px;
    color: #64748b;
    display: inline-flex;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.case-map-node-v9 strong,
.case-map-node-v9 small {
    display: block;
}

.case-map-node-v9 strong {
    font-weight: 850;
}

.case-map-node-v9 small {
    color: var(--ll-text-soft);
    font-size: .78rem;
    font-weight: 750;
    text-transform: uppercase;
}

.case-map-node-v9--done .case-map-node-v9__icon {
    background: rgba(176, 228, 204, 0.44);
    color: var(--ll-primary-dark);
}

.case-map-node-v9--working {
    background: rgba(176, 228, 204, 0.18);
    border-color: var(--ll-border-strong);
}

.case-map-node-v9--working .case-map-node-v9__icon {
    background: rgba(176, 228, 204, 0.40);
    color: var(--ll-primary);
}

.case-map-node-v9--active {
    border-color: #173b35;
    background: #ecf8f4;
}

.case-map-node-v9--active .case-map-node-v9__icon,
.case-map-node-v9--selected .case-map-node-v9__icon {
    background: #173b35;
    color: #ffffff;
}

.case-map-node-v9--selected {
    box-shadow: inset 0 0 0 1px #173b35, 0 12px 24px rgba(15, 23, 42, .08);
}

.case-map-v9__detail {
    min-width: 0;
}

.case-map-detail-v9 {
    border: 1px solid #dce8e6;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .045);
    display: grid;
    gap: 14px;
    min-height: 520px;
    padding: 22px;
}

.case-map-detail-v9__header {
    align-items: flex-start;
    border-bottom: 1px solid #e5efed;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    padding-bottom: 14px;
}

.case-map-detail-v9__header .mud-typography-caption {
    color: #0f766e;
    font-size: .7rem;
    font-weight: 900;
    text-transform: uppercase;
}

.case-map-detail-v9__header .mud-typography-h6 {
    color: #122838;
    font-size: 1.28rem;
    font-weight: 900;
    margin-top: 3px;
}

.case-map-detail-v9__header .mud-typography-body2 {
    color: #5f7080;
    margin-top: 4px;
    max-width: 68ch;
}

.case-map-detail-v9__status {
    border-radius: 999px;
    font-size: .75rem;
    font-weight: 850;
    padding: 8px 12px;
    text-transform: uppercase;
    white-space: nowrap;
}

.case-map-detail-v9__status--active {
    background: #ecf8f4;
    color: #176c5d;
}

.case-map-detail-v9__status--done {
    background: #e8f7ec;
    color: #176a35;
}

.case-map-detail-v9__status--working {
    background: #eef9ff;
    color: #1d5f91;
}

.case-map-detail-v9__status--pending {
    background: #f5f7f8;
    color: #64748b;
}

.case-map-detail-v9__body {
    display: grid;
    gap: 14px;
    min-height: 320px;
}

.case-map-detail-v9__footer {
    align-items: center;
    border-top: 1px solid #e5efed;
    display: flex;
    gap: 14px;
    justify-content: space-between;
    margin-top: auto;
    padding-top: 16px;
}

.case-map-detail-v9__hint {
    color: #5f7080;
    margin: 0;
    max-width: 64ch;
}

.case-map-detail-v9__actions {
    display: flex;
    flex-shrink: 0;
    gap: 10px;
}

.case-map-detail-v9 .map-node-panel-v91 {
    gap: 16px;
}

.case-map-detail-v9 .map-node-panel-v91__header {
    padding-bottom: 14px;
}

.case-map-detail-v9 .map-node-panel-v91__block {
    border-color: #e2ece9;
    border-radius: 12px;
    padding: 16px;
}

.case-map-detail-v9 > .mud-typography-caption {
    color: #607182;
    font-size: .68rem;
    font-weight: 850;
    text-transform: uppercase;
}

.map-node-panel-v91 {
    display: grid;
    gap: 14px;
    min-width: 0;
}

.map-node-panel-v91__header {
    border-bottom: 1px solid #e0ebea;
    display: grid;
    gap: 4px;
    padding-bottom: 12px;
}

.map-node-panel-v91__header .mud-typography-caption {
    color: #0f766e;
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}

.map-node-panel-v91__header .mud-typography-h5 {
    color: #102333;
    font-weight: 900;
    line-height: 1.12;
}

.map-node-panel-v91__header .mud-typography-body2 {
    color: #5f7080;
}

.map-node-panel-v91__block {
    border: 1px solid #dce8e8;
    border-radius: 8px;
    display: grid;
    gap: 12px;
    padding: 14px;
}

.map-node-panel-v91__alert {
    border-radius: 8px;
}

.case-map-summary-v91 {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.case-map-summary-v91 span {
    background: #f8fbfb;
    border: 1px solid #dce8e8;
    border-radius: 8px;
    color: #64748b;
    display: block;
    font-size: .78rem;
    font-weight: 850;
    padding: 12px;
    text-transform: uppercase;
}

.case-map-summary-v91 strong {
    color: #123d35;
    display: block;
    font-size: 1.35rem;
    line-height: 1;
    margin-bottom: 4px;
}

.ai-workbench--map-v91 {
    border: 0;
    padding: 0;
}

.ai-chat--map-v91 {
    max-height: none;
    overflow: visible;
}

.study-event-list--map-v91 {
    max-height: none;
}

.case-composer--map-v91 {
    border-top: 1px solid #e0ebea;
    padding-top: 12px;
}

.document-list--map-v91,
.review-list--map-v91 {
    max-height: none;
}

.case-ai-drawer {
    inset: 0;
    pointer-events: none;
    position: fixed;
    z-index: 1400;
}

.case-ai-drawer--open {
    pointer-events: auto;
}

.case-ai-drawer__scrim {
    background: rgba(15, 23, 42, .28);
    border: 0;
    inset: 0;
    opacity: 1;
    position: absolute;
}

.case-ai-drawer__panel {
    background: #ffffff;
    border-left: 1px solid #d8e6e5;
    box-shadow: -22px 0 44px rgba(15, 23, 42, .18);
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    height: 100%;
    max-width: 520px;
    min-width: 420px;
    position: absolute;
    right: 0;
    top: 0;
    transform: translateX(105%);
    transition: transform .2s ease;
    width: min(520px, 92vw);
}

.case-ai-drawer--open .case-ai-drawer__panel {
    transform: translateX(0);
}

.case-ai-drawer__header {
    align-items: flex-start;
    border-bottom: 1px solid #e0ebea;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    padding: 18px;
}

.case-ai-drawer__header .mud-typography-caption {
    color: #0f766e;
    font-size: .72rem;
    font-weight: 900;
    text-transform: uppercase;
}

.case-ai-drawer__header .mud-typography-h6 {
    color: #102333;
    font-weight: 900;
}

.case-ai-drawer__header .mud-typography-body2 {
    color: #5f7080;
}

.case-ai-drawer__panel > .map-node-panel-v91 {
    grid-template-rows: minmax(0, 1fr);
    min-height: 0;
    overflow: hidden;
    padding: 0;
}

.case-ai-drawer__panel .map-node-panel-v91__header {
    display: none;
}

.case-ai-drawer__panel .ai-workbench {
    border: 0;
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    min-height: 0;
    padding: 0;
}

.case-ai-drawer__panel .ai-chat {
    max-height: none;
    min-height: 0;
    overflow: auto;
    padding: 18px;
}

.case-ai-drawer__panel .ai-composer {
    border-top: 1px solid #e0ebea;
    padding: 12px;
}

.case-journey {
    background: rgba(255, 255, 255, .72);
    border: 1px solid #dfe9ec;
    border-radius: 8px;
    display: grid;
    flex: 0 0 auto;
    gap: 6px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 10px;
    padding: 5px;
}

.case-journey__step {
    align-items: center;
    border-radius: 7px;
    color: #6b7a88;
    display: grid;
    gap: 2px 8px;
    grid-template-columns: 28px minmax(0, 1fr);
    min-height: 50px;
    padding: 7px 9px;
}

.case-journey__step em {
    align-items: center;
    background: #eef3f5;
    border-radius: 999px;
    color: #607182;
    display: inline-flex;
    font-size: .78rem;
    font-style: normal;
    font-weight: 850;
    grid-row: 1 / span 2;
    height: 28px;
    justify-content: center;
    width: 28px;
}

.case-journey__step strong,
.case-journey__step small {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.case-journey__step strong {
    color: #2d3d4b;
    font-size: .78rem;
    font-weight: 850;
    line-height: 1.1;
}

.case-journey__step small {
    color: #728190;
    font-size: .68rem;
    line-height: 1.1;
}

.case-journey__step--active {
    background: #173b35;
    box-shadow: 0 10px 22px rgba(23, 59, 53, .14);
}

.case-journey__step--active em {
    background: rgba(255, 255, 255, .16);
    color: #ffffff;
}

.case-journey__step--active strong,
.case-journey__step--active small {
    color: #ffffff;
}

.case-journey__step--done {
    background: #ecf8f4;
}

.case-journey__step--done em {
    background: #1f7a43;
    color: #ffffff;
}

.case-workspace--ai-first .case-layout {
    align-items: start;
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    gap: 14px;
    justify-content: flex-start;
    overflow: visible;
}

.case-workspace--ai-first .case-main,
.case-workspace--ai-first .case-side--client {
    min-width: 0;
    width: 100%;
}

.case-workspace--ai-first .case-main {
    display: block;
    height: auto;
    overflow: visible;
    padding-right: 0;
}

.case-workspace--ai-first .ai-panel {
    display: block;
    height: auto;
    min-height: 0;
    overflow: visible;
}

.case-workspace--ai-first .ai-chat {
    flex: none;
    overflow: visible;
}

.case-side--client {
    overflow: visible;
    padding-right: 0;
}

.case-side--client > .case-panel,
.case-side--client > .case-status-card {
    flex: 0 0 auto;
}

.case-material-head {
    background: rgba(255, 255, 255, .86);
    border: 1px solid #dce7e9;
    border-radius: 8px;
    box-shadow: 0 8px 20px rgba(15, 23, 42, .035);
    flex: 0 0 auto;
    padding: 12px;
}

.case-material-head > div:first-child {
    align-items: flex-start;
    display: flex;
    gap: 10px;
}

.case-material-head > div:first-child > .mud-icon-root {
    color: #1f7a83;
    font-size: 1.25rem;
    margin-top: 1px;
}

.case-material-head .mud-typography-caption {
    color: #607182;
    display: block;
    font-size: .68rem;
    font-weight: 850;
    line-height: 1;
    text-transform: uppercase;
}

.case-material-head .mud-typography-subtitle1 {
    color: #142838;
    font-size: .98rem;
    font-weight: 850;
    line-height: 1.15;
    margin-top: 4px;
}

.case-material-head__metrics {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 12px;
}

.case-material-head__metrics span {
    background: #f5faf9;
    border: 1px solid #d9e8e5;
    border-radius: 8px;
    color: #617283;
    display: flex;
    flex-direction: column;
    font-size: .64rem;
    font-weight: 800;
    gap: 2px;
    padding: 7px;
    text-transform: uppercase;
}

.case-material-head__metrics strong {
    color: #173b35;
    font-size: 1.05rem;
    line-height: 1;
}

.client-guidance {
    align-items: stretch;
    background: linear-gradient(135deg, #173b35 0%, #255f58 100%);
    border-radius: 8px;
    color: #ffffff;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(0, 1fr) auto;
    overflow: hidden;
    padding: 16px;
    position: relative;
}

.client-guidance::after {
    background: rgba(255, 255, 255, .1);
    border-radius: 999px;
    content: "";
    height: 130px;
    position: absolute;
    right: -44px;
    top: -58px;
    width: 130px;
}

.client-guidance__main {
    min-width: 0;
    position: relative;
    z-index: 1;
}

.client-guidance__main .mud-typography-caption {
    color: rgba(255, 255, 255, .74);
    display: block;
    font-weight: 850;
    text-transform: uppercase;
}

.client-guidance__main .mud-typography-subtitle1 {
    color: #ffffff;
    font-size: 1.05rem;
    font-weight: 850;
    line-height: 1.15;
    margin-top: 3px;
}

.client-guidance__main .mud-typography-body2 {
    color: rgba(255, 255, 255, .86);
    line-height: 1.35;
    margin-top: 6px;
}

.client-guidance__actions {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(2, 112px);
    position: relative;
    z-index: 1;
}

.client-guidance__actions button {
    align-items: center;
    background: rgba(255, 255, 255, .94);
    border: 1px solid rgba(255, 255, 255, .72);
    border-radius: 8px;
    color: #173b35;
    cursor: pointer;
    display: flex;
    gap: 7px;
    justify-content: center;
    min-height: 38px;
    padding: 0 10px;
}

.client-guidance__actions button .mud-icon-root {
    color: #1f7a83;
    font-size: 1rem;
}

.client-guidance__actions button span {
    font-size: .78rem;
    font-weight: 850;
}

.client-guidance__actions button:hover {
    background: #ffffff;
    box-shadow: 0 8px 20px rgba(0, 0, 0, .14);
}

.quick-action-menu {
    margin-top: 10px;
}

.quick-action-menu summary {
    align-items: center;
    color: #31554f;
    cursor: pointer;
    display: inline-flex;
    font-size: .82rem;
    font-weight: 850;
    gap: 6px;
    list-style: none;
    min-height: 32px;
}

.quick-action-menu summary::-webkit-details-marker {
    display: none;
}

.quick-action-menu summary .mud-icon-root {
    font-size: 1rem;
}

.quick-action-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 8px;
}

.quick-action-chips button {
    align-items: center;
    background: #f7fbfa;
    border: 1px solid #d8e6e5;
    border-radius: 999px;
    color: #16443d;
    cursor: pointer;
    display: inline-flex;
    font-size: .82rem;
    font-weight: 800;
    gap: 6px;
    min-height: 34px;
    padding: 6px 11px;
}

.quick-action-chips button:hover {
    background: #edf8f4;
    border-color: #a8d6cc;
}

.quick-action-chips button:disabled {
    cursor: default;
    opacity: .55;
}

.quick-action-chips .mud-icon-root {
    font-size: 1rem;
}

.case-side--guided {
    gap: 10px;
}

.case-side-accordion {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.case-side-accordion .mud-expand-panel {
    border: 1px solid #dce8e8;
    border-radius: 8px;
    box-shadow: 0 10px 24px rgba(15, 23, 42, .045);
    overflow: hidden;
}

.case-side-accordion .mud-expand-panel-header {
    min-height: 50px;
}

.case-side-accordion .mud-expand-panel-text {
    color: #1d3141;
    font-weight: 850;
}

.case-side-accordion .mud-expand-panel-content {
    padding: 0 14px 14px;
}

.case-accordion-toolbar {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    margin-bottom: 12px;
}

.case-side-accordion .case-chat {
    border: 1px solid #edf2f2;
    border-radius: 8px;
    max-height: 240px;
    min-height: 0;
}

.study-status-card {
    align-items: flex-start;
    background: #f8fbfb;
    border: 1px solid #dce8e8;
    border-radius: 8px;
    display: flex;
    gap: 10px;
    margin-bottom: 12px;
    padding: 12px;
}

.study-status-card__body {
    align-items: flex-start;
    display: flex;
    flex: 1 1 auto;
    gap: 12px;
    justify-content: space-between;
}

.study-status-card__body > div:first-child {
    min-width: 0;
}

.study-status-card__body .mud-button-root {
    flex: 0 0 auto;
    margin-left: auto;
    white-space: nowrap;
}

.study-status-card > .mud-icon-root {
    background: #e8f3f1;
    border-radius: 8px;
    color: #1b7368;
    flex: 0 0 auto;
    padding: 6px;
}

.study-status-card--pending > .mud-icon-root {
    background: #fff5df;
    color: #a86100;
}

.study-status-card--official > .mud-icon-root {
    background: #e6f6ed;
    color: #168545;
}

.study-status-card .mud-typography-caption {
    color: #66757c;
    font-weight: 850;
    text-transform: uppercase;
}

.study-status-card .mud-typography-subtitle2 {
    color: #162f3a;
    font-weight: 900;
}

.study-status-card .mud-typography-body2 {
    color: #60736f;
}

.study-event-list {
    border: 1px solid #edf2f2;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-height: 300px;
    min-height: 0;
    overflow: auto;
    padding: 10px;
}

.study-event {
    align-items: flex-start;
    display: flex;
    gap: 10px;
}

.study-event__icon {
    align-items: center;
    background: #edf7f4;
    border-radius: 999px;
    color: #1b7368;
    display: flex;
    flex: 0 0 34px;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.study-event--review .study-event__icon {
    background: #fff5df;
    color: #a86100;
}

.study-event--official .study-event__icon {
    background: #e6f6ed;
    color: #168545;
}

.study-event__body {
    background: #ffffff;
    border: 1px solid #dce8e8;
    border-radius: 8px;
    min-width: 0;
    padding: 10px;
    width: 100%;
}

.study-event__head {
    align-items: flex-start;
    display: flex;
    gap: 8px;
    justify-content: space-between;
}

.study-event__head .mud-typography-caption {
    color: #66757c;
    font-weight: 850;
    text-transform: uppercase;
}

.study-event__head .mud-typography-subtitle2 {
    color: #172b36;
    font-weight: 900;
}

.study-event__summary {
    color: #405664;
    margin-top: 6px;
    overflow-wrap: anywhere;
}

.study-event__detail {
    margin-top: 8px;
}

.study-event__detail .mud-expand-panel {
    border: 0;
    box-shadow: none;
}

.study-event__detail .mud-expand-panel-header {
    min-height: 34px;
    padding-inline: 0;
}

.study-event__meta {
    color: #80909a;
    display: block;
    margin-top: 6px;
}

.studio-work-status {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 14px;
    margin-bottom: 14px;
    padding: 16px;
    border: 1px solid #d7e6e4;
    border-radius: 8px;
    background: #f8fcfb;
}

.studio-work-status > .mud-icon-root {
    display: grid;
    place-items: center;
    width: 44px;
    height: 44px;
    padding: 10px;
    border-radius: 8px;
    background: #164e43;
    color: #ffffff;
}

.studio-work-status--pending {
    border-color: #f6d58b;
    background: #fff9ea;
}

.studio-work-status--waiting-client {
    border-color: #bfdbfe;
    background: #eff6ff;
}

.studio-work-status--intake {
    border-color: #99d4cc;
    background: #ecfdf9;
}

.studio-work-status .mud-typography-caption {
    color: #0f766e;
    font-weight: 850;
    text-transform: uppercase;
}

.studio-work-status .mud-typography-subtitle1 {
    color: #071a2d;
    font-weight: 850;
}

.studio-work-status .mud-typography-body2 {
    color: #526173;
}

.studio-section-label {
    display: block;
    margin: 16px 0 8px;
    color: #0f766e;
    font-weight: 850;
    text-transform: uppercase;
}

.studio-work-item-card .review-answer .mud-typography-body2 {
    white-space: pre-wrap;
}

.studio-client-draft-list {
    display: grid;
    gap: 10px;
}

.studio-client-draft-item {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 12px;
    padding: 14px;
    border: 1px dashed #bfdbfe;
    border-radius: 8px;
    background: #f8fbff;
}

.studio-client-draft-item > .mud-icon-root {
    color: #2563eb;
}

.studio-client-draft-item .mud-typography-subtitle2 {
    color: #071a2d;
    font-weight: 850;
}

.studio-client-draft-item .mud-typography-body2 {
    color: #526173;
}

.studio-client-draft-item .mud-typography-caption {
    color: #64748b;
}

.studio-intake-panel {
    margin-bottom: 18px;
}

.studio-intake-panel > :not(.case-panel__header) {
    margin-left: 18px;
    margin-right: 18px;
}

.studio-intake-panel > .case-panel__header + * {
    margin-top: 18px;
}

.studio-intake-panel > :last-child {
    margin-bottom: 18px;
}

.estudio-workspace .case-main > .case-panel.case-panel--primary > .studio-intake-panel {
    margin-bottom: 0;
}

.studio-intake-panel--compact {
    margin-bottom: 0;
}

.studio-intake-panel--compact .studio-intake-list--detail {
    display: none;
}

.studio-intake-list--detail .studio-intake-item {
    display: grid;
    gap: 10px;
}

.studio-intake-panel .estudio-summary-grid--intake > div {
    background: linear-gradient(180deg, #f8fcfc 0%, #f3f9f8 100%);
    border: 1px solid #dbe9ea;
    border-radius: 14px;
    min-height: 88px;
    padding: 16px 18px;
}

.studio-intake-panel .estudio-summary-grid--intake strong {
    color: #113b46;
    display: block;
    font-size: 1.75rem;
    font-weight: 850;
    letter-spacing: -.03em;
    line-height: 1;
    margin-bottom: 6px;
}

.studio-intake-panel .estudio-summary-grid--intake span {
    color: #55707a;
    display: block;
    font-size: .86rem;
    font-weight: 700;
    letter-spacing: .01em;
    line-height: 1.35;
}

.studio-intake-section-eyebrow {
    color: #0c6c70 !important;
    display: block;
    font-size: .76rem;
    font-weight: 850;
    letter-spacing: .08em;
    margin: 6px 0 10px;
    text-transform: uppercase;
}

.studio-intake-list--facts .studio-intake-item {
    background: linear-gradient(180deg, #fbfefe 0%, #f6fbfa 100%);
    border-color: #dbe9ea;
    box-shadow: 0 8px 18px rgba(21, 71, 80, .04);
}

.studio-intake-list--facts .studio-intake-item .mud-typography-body2 {
    font-size: 1rem;
    margin-top: 8px;
}

.studio-intake-list--detail {
    gap: 14px;
}

.studio-intake-panel .studio-intake-list--facts,
.studio-intake-panel .studio-intake-list--detail {
    padding-left: 0;
    padding-right: 0;
}

.studio-intake-item__meta {
    display: grid;
    gap: 4px;
}

.studio-intake-list--detail .studio-intake-item .muted-text {
    color: #6b7f89 !important;
    font-size: .86rem;
    font-weight: 500;
    line-height: 1.45;
}

.studio-intake-list--detail .studio-intake-item .mud-typography-body2 {
    background: #f9fcfc;
    border-radius: 10px;
    margin-top: 2px;
    min-height: 54px;
    padding: 12px 14px;
    white-space: pre-wrap;
}

.studio-intake-item--pending .mud-typography-body2,
.studio-intake-item--unknown .mud-typography-body2 {
    color: #5e6f79;
}

.studio-intake-item--answered .mud-typography-body2 {
    color: #173c35;
}

.studio-intake-list--detail .studio-intake-item:hover {
    border-color: #bfd7d9;
    box-shadow: 0 10px 24px rgba(19, 63, 70, .06);
    transform: translateY(-1px);
}

.studio-intake-item--pending {
    border-color: #f2d08e;
    background: linear-gradient(180deg, #fffdf6 0%, #fff8e8 100%);
}

.studio-intake-item--answered {
    border-color: #b9e1cd;
    background: linear-gradient(180deg, #f8fdfa 0%, #f1faf5 100%);
}

.studio-intake-item--unknown {
    border-color: #dbe3ea;
    background: linear-gradient(180deg, #fbfcfd 0%, #f5f8fa 100%);
}

.studio-intake-panel--compact .estudio-summary-grid--intake {
    margin-bottom: 12px;
}

.studio-intake-panel--compact .studio-intake-list--facts {
    margin-bottom: 0;
}

.case-side-accordion .case-composer {
    border-top: 0;
    padding: 10px 0 0;
}

.case-side-accordion .document-list,
.case-side-accordion .review-list {
    max-height: 240px;
}

.case-status-card {
    background: linear-gradient(135deg, #173b35 0%, #2b6c64 100%);
    border-radius: 8px;
    box-shadow: 0 14px 30px rgba(23, 59, 53, .18);
    color: #ffffff;
    overflow: hidden;
    padding: 14px;
    position: relative;
}

.case-status-card::after {
    background: rgba(255, 255, 255, .12);
    border-radius: 999px;
    content: "";
    height: 118px;
    position: absolute;
    right: -36px;
    top: -54px;
    width: 118px;
}

.case-status-card__state {
    align-items: flex-start;
    display: flex;
    gap: 10px;
    position: relative;
    z-index: 1;
}

.case-status-card__state > .mud-icon-root {
    color: #d9fff4;
    font-size: 1.55rem;
    margin-top: 2px;
}

.case-status-card .mud-typography-caption {
    color: rgba(255, 255, 255, .75);
    display: block;
    font-size: .7rem;
    font-weight: 850;
    text-transform: uppercase;
}

.case-status-card .mud-typography-subtitle1 {
    color: #ffffff;
    font-size: 1.05rem;
    font-weight: 850;
    line-height: 1.15;
}

.case-status-card > .mud-typography-body2 {
    color: rgba(255, 255, 255, .9);
    line-height: 1.35;
    margin-top: 12px;
    position: relative;
    z-index: 1;
}

.case-status-card__metrics {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-top: 14px;
    position: relative;
    z-index: 1;
}

.case-status-card__metrics span {
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .16);
    border-radius: 8px;
    color: rgba(255, 255, 255, .78);
    display: flex;
    flex-direction: column;
    font-size: .65rem;
    font-weight: 800;
    gap: 2px;
    padding: 8px;
    text-transform: uppercase;
}

.case-status-card__metrics strong {
    color: #ffffff;
    font-size: 1.1rem;
    line-height: 1;
}

.case-panel--compact .case-panel__header {
    min-height: 56px;
}

.case-panel--compact.case-panel--conversation .case-chat {
    max-height: 250px;
    min-height: 170px;
    padding: 12px;
}

.case-panel--compact.document-panel .document-list,
.case-panel--compact.review-panel .review-list {
    max-height: 210px;
}

.case-panel--compact .case-empty {
    min-height: 130px;
    padding: 16px;
}

.case-panel--compact .case-composer {
    padding: 10px;
}

.case-panel--compact .case-composer .mud-button-root {
    min-width: 0;
}

@media (min-width: 1101px) and (max-height: 900px) {
    .case-workspace {
        padding-top: 8px;
    }

    .case-hero {
        padding: 7px 12px;
    }

    .case-title.mud-typography-h4 {
        font-size: 1.22rem;
    }

    .case-description {
        font-size: .86rem;
    }

    .case-panel__header {
        min-height: 62px;
        padding: 10px 14px;
    }

    .case-panel__title .mud-typography-body2 {
        font-size: .86rem;
    }

    .case-panel--conversation,
    .ai-panel {
        height: 100%;
        min-height: 390px;
    }

}

.review-card--pending {
    border-color: #e8c266;
    box-shadow: inset 4px 0 0 #d99b1d;
}

.review-context,
.review-answer {
    background: #f6f8fa;
    border-radius: 8px;
    margin-top: 12px;
    padding: 12px;
}

.review-answer--published {
    background: #edf8f2;
}

.review-context .mud-typography-caption,
.review-answer .mud-typography-caption {
    color: #697784;
    display: block;
    font-weight: 700;
    margin-bottom: 4px;
}

.review-note {
    color: #5f6f7d;
    display: block;
    margin-top: 10px;
}

.review-editor {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 14px;
}

.review-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 14px;
}

.note-list {
    max-height: 340px;
    overflow-y: auto;
    padding-bottom: 0;
}

.note-composer {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 16px;
}

.note-item {
    background: #f6f8fa;
}

.note-item--internal {
    background: #fff8e8;
    border-color: #f1d899;
}

.studio-inbox {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.studio-inbox__hero {
    align-items: center;
    background: linear-gradient(135deg, #ffffff 0%, #eef7f5 100%);
    border: 1px solid #dce5ea;
    border-radius: 8px;
    display: flex;
    justify-content: space-between;
    padding: 18px 20px;
}

.studio-inbox__hero .mud-typography-caption {
    color: #607182;
    font-weight: 800;
    text-transform: uppercase;
}

.studio-inbox__hero .mud-typography-h4 {
    color: #142838;
    font-size: 1.65rem;
    font-weight: 850;
}

.studio-inbox__metrics {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.studio-inbox-metric {
    align-items: center;
    background: #ffffff;
    border: 1px solid #dce5ea;
    border-radius: 8px;
    color: #243443;
    cursor: pointer;
    display: grid;
    gap: 4px;
    grid-template-columns: 34px min-content 1fr;
    min-height: 70px;
    padding: 14px;
    text-align: left;
}

.studio-inbox-metric .mud-icon-root {
    color: #1f7a83;
}

.studio-inbox-metric strong {
    color: #173b35;
    font-size: 1.45rem;
}

.studio-inbox-metric span {
    color: #667685;
    font-size: .82rem;
    font-weight: 750;
}

.studio-inbox-metric--active {
    background: #173b35;
    border-color: #173b35;
    box-shadow: 0 12px 28px rgba(23, 59, 53, .18);
}

.studio-inbox-metric--active,
.studio-inbox-metric--active strong,
.studio-inbox-metric--active span,
.studio-inbox-metric--active .mud-icon-root {
    color: #ffffff;
}

.studio-inbox__queue {
    border: 1px solid #dce5ea;
    border-radius: 8px;
    overflow: hidden;
}

.studio-inbox-item {
    background: #ffffff;
    border-bottom: 1px solid #e7edf0;
    display: grid;
    gap: 14px;
    grid-template-columns: 42px minmax(0, 1fr);
    padding: 16px 18px;
}

.studio-inbox-item:last-child {
    border-bottom: 0;
}

.studio-inbox-item__icon {
    align-items: center;
    background: #eaf3f3;
    border-radius: 999px;
    color: #1f7a83;
    display: flex;
    height: 42px;
    justify-content: center;
    width: 42px;
}

.studio-inbox-item--ai-review .studio-inbox-item__icon {
    background: #fff4dd;
    color: #9a6400;
}

.studio-inbox-item--unassigned-case .studio-inbox-item__icon {
    background: #eef3fb;
    color: #315f9a;
}

.studio-inbox-item__top,
.studio-inbox-item__actions,
.studio-inbox-item__chips {
    align-items: center;
    display: flex;
    gap: 8px;
}

.studio-inbox-item__top {
    justify-content: space-between;
}

.studio-inbox-item__chips {
    flex-wrap: wrap;
    justify-content: flex-end;
}

.studio-inbox-item__detail {
    color: #4e5f6e;
    margin: 8px 0 12px;
}

.studio-clients {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.studio-clients__hero {
    align-items: flex-start;
    background: #ffffff;
    border: 1px solid #dce5ea;
    border-radius: 8px;
    display: flex;
    gap: 10px;
    justify-content: space-between;
    padding: 12px 14px;
}

.studio-clients__metrics {
    display: grid;
    gap: 8px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.studio-clients-metric {
    background: #ffffff;
    border: 1px solid #dce5ea;
    border-radius: 8px;
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 9px 10px;
}

.studio-clients-metric strong {
    color: #152536;
    font-size: 1.2rem;
    font-weight: 800;
    line-height: 1;
}

.studio-clients-metric span {
    color: #607182;
    font-size: .72rem;
    font-weight: 700;
}

.studio-clients-metric--attention {
    background: #edf8f4;
    border-color: #b9dfd3;
}

.studio-clients__search .mud-input-control {
    margin-top: 0;
}

.studio-clients__list {
    background: transparent;
    border: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.studio-client-card {
    background: #ffffff;
    border: 1px solid #dce5ea;
    border-radius: 8px;
    padding: 10px;
}

.studio-client-card__top {
    align-items: flex-start;
    display: flex;
    gap: 8px;
    justify-content: space-between;
}

.studio-client-card__metrics {
    align-items: center;
    color: #5d6d7b;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 8px;
}

.studio-client-card__pending {
    color: #0f6c5a;
}

.studio-client-card__latest {
    align-items: flex-start;
    background: #f7fafc;
    border: 1px solid #deebf1;
    border-radius: 8px;
    display: flex;
    gap: 8px;
    margin-top: 8px;
    padding: 8px;
}

.studio-client-card__latest .mud-icon-root {
    color: #1f7a83;
    font-size: 1.05rem;
    margin-top: 2px;
}

.studio-client-card__actions {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
    margin-top: 10px;
}

.case-pending-chips {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

@media (max-width: 1100px) {
    html:has(.case-workspace),
    body:has(.case-workspace) {
        overflow: auto;
    }

    .case-workspace {
        height: auto;
        min-height: calc(100vh - 64px);
        overflow: visible;
    }

    .case-layout {
        grid-template-columns: 1fr;
        overflow: visible;
    }

    .case-workspace--ai-first .case-layout {
        grid-template-columns: 1fr;
    }

    .case-map-experience-v9 {
        grid-template-columns: 1fr;
    }

    .case-flow-steps-v92 .case-map-v9__rail {
        display: flex;
        gap: 8px;
        overflow-x: auto;
        padding-bottom: 4px;
        position: relative;
        scroll-snap-type: x proximity;
    }

    .case-flow-steps-v92 .case-map-v9__rail::before {
        display: none;
    }

    .case-flow-steps-v92 .case-map-node-v9 {
        flex: 0 0 min(190px, 74vw);
        min-height: 60px;
        scroll-snap-align: start;
    }

    .case-flow-guide-v93 {
        grid-template-columns: 1fr;
    }

    .case-flow-guide-v93__aside {
        justify-content: flex-start;
    }

    .case-map-summary-v91 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .case-main {
        grid-template-columns: 1fr;
        overflow: visible;
    }

    .case-main > .case-panel:not(.case-panel--primary):not(.case-panel--conversation) {
        grid-column: auto;
    }

    .case-side {
        overflow: visible;
    }

    .case-side--client {
        overflow: visible;
    }

    .side-content {
        display: block;
    }

    .estudio-tabs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 720px) {
    .studio-clients__hero {
        align-items: stretch;
        flex-direction: column;
    }

    .studio-clients__hero .mud-button-root {
        width: 100%;
    }

    .studio-clients__metrics {
        grid-template-columns: 1fr;
    }

    .studio-client-card__actions {
        justify-content: stretch;
    }

    .studio-client-card__actions .mud-button-root {
        flex: 1 1 0;
    }

    .estudio-tabs {
        grid-template-columns: 1fr;
    }

    .case-map-node-v9 {
        min-height: 62px;
    }

    .case-map-detail-v9 {
        min-height: 0;
        padding: 12px;
    }

    .case-map-detail-v9__header,
    .case-map-detail-v9__footer {
        align-items: stretch;
        flex-direction: column;
    }

    .case-map-detail-v9__actions {
        width: 100%;
    }

    .case-map-detail-v9__actions .mud-button-root {
        flex: 1 1 0;
    }

    .case-command-center {
        align-items: stretch;
        flex-direction: column;
    }

    .case-command-center__cta.mud-button-root,
    .case-command-center__chat.mud-button-root {
        width: 100%;
    }

    .case-map-summary-v91 {
        grid-template-columns: 1fr;
    }

    .case-flow-guide-v93__aside,
    .case-map-detail-v9__actions {
        flex-direction: column;
    }

    .case-flow-guide-v93__aside .mud-button-root,
    .case-map-detail-v9__actions .mud-button-root {
        width: 100%;
    }

    .case-ai-drawer__panel {
        border-left: 0;
        border-radius: 18px 18px 0 0;
        bottom: 0;
        box-shadow: 0 -22px 44px rgba(15, 23, 42, .22);
        height: min(86vh, 760px);
        max-width: none;
        min-width: 0;
        right: 0;
        top: auto;
        transform: translateY(105%);
        width: 100%;
    }

    .case-ai-drawer--open .case-ai-drawer__panel {
        transform: translateY(0);
    }

    .study-status-card__body {
        align-items: stretch;
        flex-direction: column;
    }

    .study-status-card__body .mud-button-root {
        margin-left: 0;
        width: 100%;
    }

    .estudio-main {
        padding: 58px 10px 12px !important;
    }

    .estudio-app-title.mud-typography-h6 {
        font-size: 1rem;
        min-width: 0;
    }

    .estudio-user-name {
        display: none;
    }

    .estudio-drawer .mud-drawer {
        max-width: min(82vw, 300px);
    }

    .studio-inbox {
        gap: 10px;
    }

    .studio-inbox__hero {
        align-items: stretch;
        flex-direction: column;
        gap: 12px;
        padding: 14px;
    }

    .studio-inbox__hero .mud-button-root {
        width: 100%;
    }

    .studio-inbox__hero .mud-typography-h4 {
        font-size: 1.35rem;
        line-height: 1.1;
    }

    .studio-inbox__metrics {
        gap: 8px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .studio-inbox-metric {
        grid-template-columns: 28px 1fr;
        min-height: 78px;
        padding: 12px;
    }

    .studio-inbox-metric strong {
        font-size: 1.3rem;
        line-height: 1;
    }

    .studio-inbox-metric span {
        grid-column: 1 / -1;
        line-height: 1.15;
    }

    .studio-inbox-item {
        gap: 10px;
        grid-template-columns: 34px minmax(0, 1fr);
        padding: 14px 12px;
    }

    .studio-inbox-item__icon {
        height: 34px;
        width: 34px;
    }

    .studio-inbox-item__top,
    .studio-inbox-item__actions {
        align-items: stretch;
        flex-direction: column;
    }

    .studio-inbox-item__chips {
        justify-content: flex-start;
    }

    .studio-inbox-item__actions .mud-button-root {
        width: 100%;
    }

    .mud-table-container {
        overflow-x: auto;
    }

    .mud-table-root {
        min-width: 760px;
    }

    .case-workspace {
        min-height: calc(100vh - 56px);
        padding: 8px;
    }

    .case-hero,
    .case-panel__header,
    .case-composer {
        align-items: stretch;
        flex-direction: column;
    }

    .case-hero {
        gap: 8px;
        margin-bottom: 8px;
        padding: 10px;
    }

    .case-title.mud-typography-h4 {
        font-size: 1.25rem;
    }

    .case-description {
        font-size: .84rem;
    }

    .case-hero__meta {
        align-items: flex-start;
        justify-content: flex-start;
        min-width: 0;
    }

    .case-command-center {
        align-items: stretch;
        grid-template-columns: 1fr;
        margin-bottom: 8px;
        padding: 10px;
    }

    .case-command-center__state {
        gap: 10px;
    }

    .case-command-center__state > .mud-icon-root {
        height: 34px;
        padding: 7px;
        width: 34px;
    }

    .case-command-center__state .mud-typography-h6 {
        font-size: 1rem;
    }

    .case-command-center__cta.mud-button-root {
        width: 100%;
    }

    .case-journey {
        gap: 4px;
        grid-template-columns: 1fr;
        margin-bottom: 8px;
    }

    .case-journey__step {
        grid-template-columns: 26px minmax(0, 1fr);
        min-height: 44px;
        padding: 7px;
    }

    .case-journey__step em {
        height: 26px;
        width: 26px;
    }

    .case-panel__header.ai-panel__header {
        gap: 10px;
    }

    .ai-modebar {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100%;
    }

    .ai-modebar__button {
        min-height: 38px;
        white-space: normal;
    }

    .client-guidance {
        grid-template-columns: 1fr;
        padding: 14px;
    }

    .client-guidance__actions {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .client-guidance__actions button {
        min-height: 42px;
    }

    .quick-action-chips {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .quick-action-chips button {
        justify-content: center;
        min-width: 0;
        white-space: normal;
    }

    .case-accordion-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    .case-side-accordion .case-chat,
    .case-side-accordion .document-list,
    .case-side-accordion .review-list {
        max-height: none;
    }

    .case-material-head__metrics {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .case-status-card__metrics {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .case-panel--compact.case-panel--conversation .case-chat,
    .case-panel--compact.document-panel .document-list,
    .case-panel--compact.review-panel .review-list {
        max-height: none;
    }

    .message-row,
    .message-row--review,
    .message-row--validated,
    .ai-message,
    .ai-message--me {
        max-width: 100%;
    }

    .case-chat,
    .ai-chat {
        max-height: none;
        min-height: 260px;
    }

    .case-panel--conversation,
    .ai-panel {
        height: auto;
        min-height: 360px;
    }

    .estudio-workspace {
        padding: 10px;
    }

    .estudio-workspace .case-layout,
    .estudio-workspace .case-main,
    .estudio-workspace .case-side {
        gap: 10px;
        grid-template-columns: 1fr;
        height: auto;
        max-height: none;
        overflow: visible;
    }

    .estudio-workspace .case-main > .case-panel:first-child,
    .estudio-workspace .case-panel--conversation,
    .estudio-workspace .case-main > .case-panel:nth-child(3) {
        flex: 0 0 auto;
        max-height: none;
        min-height: 0;
    }

    .estudio-workspace .case-main:has(> .case-panel--conversation) {
        overflow: visible;
    }

    .estudio-workspace .case-layout:has(.case-panel--conversation) {
        height: auto;
        overflow: visible;
    }

    .estudio-workspace .case-main > .case-panel.case-panel--conversation {
        height: auto;
        max-height: none;
    }

    .review-queue,
    .note-list {
        max-height: none;
        overflow: visible;
    }

    .review-card,
    .document-item,
    .note-item {
        overflow-wrap: anywhere;
    }

    .review-card__header,
    .review-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .review-actions .mud-button-root {
        width: 100%;
    }

    .case-action-stack .mud-button-root,
    .case-composer .mud-button-root {
        width: 100%;
    }

    .document-item {
        align-items: flex-start;
        gap: 10px;
    }

    .review-panel {
        display: block;
    }

    .ai-message--me {
        max-width: 100%;
    }
}
