:root {
    --ink: #1f2937;
    --muted: #64748b;
    --line: #dbe3ea;
    --soft: #f5f8fa;
    --paper: #ffffff;
    --accent: #b3262e;
    --accent-dark: #861c23;
    --accent-soft: #fff1f2;
    --success: #166534;
    --warning: #8a4b08;
    --danger: #991b1b;
    --shadow: 0 12px 32px rgba(15, 23, 42, 0.08);
    --radius: 16px;
}

* { box-sizing: border-box; }
html { background: #eef2f5; }
body {
    margin: 0;
    color: var(--ink);
    background: #eef2f5;
    font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    font-size: 16px;
    line-height: 1.55;
}
a { color: var(--accent-dark); text-decoration: none; }
a:hover { text-decoration: underline; }
button, input, select, textarea { font: inherit; }
button { cursor: pointer; }
img { max-width: 100%; }
[hidden] { display: none !important; }

.shell {
    width: 100%;
    max-width: none;
    margin-inline: 0;
    padding-inline: clamp(14px, 2.25vw, 38px);
}

.site-header {
    position: sticky;
    top: 0;
    z-index: 20;
    background: rgba(255,255,255,.96);
    border-bottom: 1px solid var(--line);
    backdrop-filter: blur(14px);
}
.header-inner {
    min-height: 72px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}
.brand {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    color: var(--ink);
}
.brand:hover { text-decoration: none; }
.brand-mark {
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 12px;
    background: var(--accent);
    color: white;
    font-weight: 800;
    font-size: 22px;
    box-shadow: 0 8px 20px rgba(179,38,46,.2);
}
.brand strong, .brand small { display: block; }
.brand strong { font-size: 19px; letter-spacing: -.02em; }
.brand small { color: var(--muted); font-size: 12px; }

.top-nav {
    display: flex;
    align-items: center;
    gap: 18px;
}
.user-name {
    color: var(--muted);
    font-size: 14px;
}
.inline-form { display: inline; margin: 0; }
.link-button {
    padding: 0;
    border: 0;
    background: none;
    color: var(--accent-dark);
}

.site-main { min-height: calc(100vh - 150px); padding: 28px 0 56px; }
.site-footer {
    background: white;
    border-top: 1px solid var(--line);
    color: var(--muted);
}
.footer-inner {
    min-height: 78px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    font-size: 13px;
}
.footer-inner p { margin: 0; }

.hero {
    display: grid;
    grid-template-columns: 1.25fr .75fr;
    gap: 36px;
    align-items: center;
    padding: 56px 0 34px;
}
.hero h1 {
    margin: 0 0 18px;
    font-size: clamp(38px, 6vw, 66px);
    line-height: 1.02;
    letter-spacing: -.05em;
}
.hero p {
    max-width: 720px;
    color: var(--muted);
    font-size: 19px;
}
.hero-card {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: 24px;
    padding: 28px;
    box-shadow: var(--shadow);
}
.hero-card ol { margin: 0; padding-left: 22px; }
.hero-card li + li { margin-top: 14px; }

.page-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 24px;
    margin-bottom: 24px;
}
.page-head h1, .page-head h2 { margin: 0 0 4px; line-height: 1.16; }
.page-head p { margin: 0; color: var(--muted); }

.case-header {
    padding: 24px;
    margin-bottom: 0;
    background: white;
    border: 1px solid var(--line);
    border-radius: var(--radius) var(--radius) 0 0;
}
.case-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
    color: var(--muted);
    font-size: 14px;
}
.case-nav {
    display: flex;
    overflow-x: auto;
    gap: 4px;
    padding: 0 14px;
    margin-bottom: 24px;
    background: white;
    border: 1px solid var(--line);
    border-top: 0;
    border-radius: 0 0 var(--radius) var(--radius);
}
.case-nav a {
    padding: 15px 13px 13px;
    white-space: nowrap;
    color: var(--muted);
    border-bottom: 3px solid transparent;
}
.case-nav a:hover { color: var(--ink); text-decoration: none; }
.case-nav a.active {
    color: var(--accent-dark);
    border-bottom-color: var(--accent);
    font-weight: 700;
}

.grid { display: grid; gap: 20px; }
.grid.two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid.three { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid.four { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.card {
    background: var(--paper);
    border: 1px solid var(--line);
    border-radius: var(--radius);
    box-shadow: 0 4px 16px rgba(15,23,42,.035);
}
.card.pad { padding: 22px; }
.card h2, .card h3 { margin-top: 0; }
.card-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    padding: 20px 22px;
    border-bottom: 1px solid var(--line);
}
.card-head h2, .card-head h3, .card-head p { margin: 0; }
.card-body { padding: 22px; }

.stat {
    padding: 20px;
    background: white;
    border: 1px solid var(--line);
    border-radius: var(--radius);
}
.stat strong { display: block; font-size: 30px; line-height: 1; }
.stat span { display: block; margin-top: 8px; color: var(--muted); font-size: 14px; }

.button, button.button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 44px;
    padding: 10px 17px;
    border: 1px solid var(--accent);
    border-radius: 10px;
    background: var(--accent);
    color: white;
    font-weight: 700;
    line-height: 1.2;
    text-decoration: none;
}
.button:hover { background: var(--accent-dark); border-color: var(--accent-dark); text-decoration: none; }
.button.secondary {
    background: white;
    color: var(--accent-dark);
    border-color: #e8b7ba;
}
.button.secondary:hover { background: var(--accent-soft); }
.button.neutral {
    background: white;
    color: var(--ink);
    border-color: var(--line);
}
.button.danger {
    background: white;
    color: var(--danger);
    border-color: #fecaca;
}
.button.small { min-height: 36px; padding: 7px 12px; font-size: 14px; }
.button-row { display: flex; flex-wrap: wrap; gap: 10px; align-items: center; }

form { margin: 0; }
.form-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 16px;
}
.form-grid.three { grid-template-columns: repeat(3, minmax(0,1fr)); }
.field { display: flex; flex-direction: column; gap: 7px; }
.field.full { grid-column: 1 / -1; }
.field label { font-weight: 700; font-size: 14px; }
.field .help { color: var(--muted); font-size: 12px; }
input, select, textarea {
    width: 100%;
    min-height: 44px;
    padding: 10px 12px;
    color: var(--ink);
    background: white;
    border: 1px solid #cbd5e1;
    border-radius: 9px;
    outline: none;
}
textarea { min-height: 110px; resize: vertical; }
input:focus, select:focus, textarea:focus {
    border-color: var(--accent);
    box-shadow: 0 0 0 3px rgba(179,38,46,.11);
}
input[type="checkbox"] { width: 18px; min-height: 18px; }
.checkbox {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    font-weight: 600;
}
.form-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    padding-top: 18px;
    margin-top: 18px;
    border-top: 1px solid var(--line);
}

.alert {
    margin-bottom: 18px;
    padding: 13px 16px;
    border-radius: 10px;
    border: 1px solid #bfdbfe;
    background: #eff6ff;
    color: #1e3a8a;
}
.alert.success { border-color: #bbf7d0; background: #f0fdf4; color: var(--success); }
.alert.warning { border-color: #fed7aa; background: #fff7ed; color: var(--warning); }
.alert.danger, .alert.error { border-color: #fecaca; background: #fef2f2; color: var(--danger); }

.badge {
    display: inline-flex;
    align-items: center;
    min-height: 26px;
    padding: 4px 9px;
    border-radius: 999px;
    background: var(--soft);
    color: var(--muted);
    font-size: 12px;
    font-weight: 800;
}
.badge.accent { background: var(--accent-soft); color: var(--accent-dark); }
.badge.success { background: #dcfce7; color: var(--success); }

.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; }
th, td {
    padding: 13px 14px;
    text-align: left;
    vertical-align: top;
    border-bottom: 1px solid var(--line);
}
th {
    color: var(--muted);
    background: #f8fafc;
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: .04em;
}
tr:last-child td { border-bottom: 0; }

.record-list { display: grid; gap: 12px; }
.record {
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: white;
}
.record h3, .record p { margin-top: 0; }
.record p:last-child { margin-bottom: 0; }
.record-top {
    display: flex;
    justify-content: space-between;
    gap: 16px;
}
.record-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 5px 14px;
    color: var(--muted);
    font-size: 13px;
}

.empty {
    padding: 28px;
    text-align: center;
    color: var(--muted);
    background: #fafcfd;
    border: 1px dashed #cbd5e1;
    border-radius: 12px;
}
.empty h3 { color: var(--ink); margin-top: 0; }

.auth-shell { width: min(520px, 100%); margin: 28px auto; }
.auth-shell .card { padding: 28px; }

.steps {
    display: flex;
    gap: 10px;
    margin-bottom: 22px;
}
.step {
    flex: 1;
    padding: 10px 12px;
    border-radius: 10px;
    background: white;
    border: 1px solid var(--line);
    color: var(--muted);
    font-size: 13px;
    font-weight: 700;
}
.step.active { color: var(--accent-dark); border-color: #e8b7ba; background: var(--accent-soft); }

.repeat-row {
    position: relative;
    padding: 18px;
    margin-bottom: 12px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #fbfcfd;
}
.repeat-row .remove-row {
    position: absolute;
    top: 10px;
    right: 10px;
}
.section-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
    margin: 28px 0 12px;
}
.section-title h2, .section-title h3 { margin: 0; }
.muted { color: var(--muted); }
.small-text { font-size: 13px; }
.pre-line { white-space: pre-line; }
.document-name { overflow-wrap: anywhere; }
.progress-note {
    padding: 20px;
    border-radius: 12px;
    background: var(--accent-soft);
    border: 1px solid #e8b7ba;
}
.details-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 24px;
}
.details-grid dt { color: var(--muted); font-size: 12px; text-transform: uppercase; }
.details-grid dd { margin: 3px 0 0; }

@media (max-width: 900px) {
    .hero, .grid.three, .grid.four { grid-template-columns: 1fr 1fr; }
    .header-inner { min-height: 64px; }
    .brand small, .user-name { display: none; }
}
@media (max-width: 700px) {
    .shell { width: 100%; padding-inline: 10px; }
    .site-main { padding-top: 20px; }
    .hero, .grid.two, .grid.three, .grid.four, .form-grid, .form-grid.three, .details-grid {
        grid-template-columns: 1fr;
    }
    .page-head { flex-direction: column; }
    .top-nav { gap: 10px; font-size: 14px; }
    .case-header { padding: 18px; }
    .case-nav { padding-inline: 8px; }
    .footer-inner { padding: 18px 0; display: block; }
    .footer-inner p + p { margin-top: 8px; }
    .steps { overflow-x: auto; }
    .step { min-width: 150px; }
}

/* CivilDocket v1.1 procedure and timeline components */
.button-row { display:flex; flex-wrap:wrap; gap:10px; align-items:center; }
.check-row { display:flex; gap:9px; align-items:center; font-weight:700; min-height:42px; }
.check-row input { width:auto; }
.notice { padding:16px 18px; border-radius:12px; border:1px solid var(--line); background:#fff; }
.notice.warning { background:#fff8e8; border-color:#ecd6a1; }
.source-box { display:flex; flex-wrap:wrap; gap:8px 14px; align-items:center; margin-top:12px; padding:11px 13px; border-radius:10px; background:#f7f9fb; border:1px solid var(--line); font-size:13px; }
.source-box strong { color:var(--ink); }
.deadline-card { border-left:4px solid var(--accent); }
.muted-record { opacity:.75; }
.subnav { display:flex; gap:8px; overflow-x:auto; padding:8px 0 4px; }
.subnav a { white-space:nowrap; padding:9px 13px; border-radius:999px; border:1px solid var(--line); background:#fff; color:var(--muted); font-weight:700; font-size:13px; }
.subnav a.active { background:var(--accent-soft); border-color:#e8b7ba; color:var(--accent-dark); }
.timeline { position:relative; display:grid; gap:16px; margin-top:22px; padding-left:30px; }
.timeline::before { content:""; position:absolute; left:10px; top:3px; bottom:3px; width:2px; background:#d9e0e7; }
.timeline-item { position:relative; }
.timeline-marker { position:absolute; left:-26px; top:22px; width:12px; height:12px; border-radius:50%; background:var(--accent); box-shadow:0 0 0 4px #fff, 0 0 0 5px #d9e0e7; }
.timeline-content h3 { margin:7px 0 0; }
@media (max-width:700px) {
    .button-row { width:100%; }
    .button-row .button { flex:1; text-align:center; }
    .timeline { padding-left:22px; }
    .timeline-marker { left:-20px; }
}


/* Full-viewport application loading state */
html.app-busy,
html.app-busy body { overflow: hidden; }

.app-loader {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: grid;
    place-items: center;
    padding: 24px;
    background: rgba(248, 250, 252, .86);
    backdrop-filter: blur(5px);
}
.app-loader[hidden] { display: none !important; }
.app-loader-panel {
    min-width: min(360px, calc(100vw - 32px));
    max-width: 520px;
    padding: 26px 28px;
    text-align: center;
    background: rgba(255,255,255,.98);
    border: 1px solid var(--line);
    border-radius: 18px;
    box-shadow: 0 24px 70px rgba(15,23,42,.18);
}
.app-spinner {
    width: 48px;
    height: 48px;
    margin: 0 auto 14px;
    border: 5px solid #e2e8f0;
    border-top-color: var(--accent);
    border-radius: 50%;
    animation: civildocket-spin .72s linear infinite;
}
.app-loader-title {
    display: block;
    margin-bottom: 4px;
    color: var(--ink);
    font-size: 18px;
}
.app-loader-message { margin: 0; color: var(--muted); }
@keyframes civildocket-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
    .app-spinner { animation-duration: 1.5s; }
}

button[disabled], .button[aria-disabled="true"] {
    cursor: wait;
    opacity: .68;
}

/* The case workspace uses the available browser width. */
.case-header,
.case-nav,
.card,
.stat { max-width: none; }

/* Keep authentication forms readable while the application itself is fluid. */
.auth-wrap { width: min(560px, 100%); margin-inline: auto; }

@media (min-width: 1500px) {
    .grid.three { grid-template-columns: repeat(3, minmax(280px, 1fr)); }
    .grid.four { grid-template-columns: repeat(4, minmax(240px, 1fr)); }
}

/* CivilDocket v1.3 verified opening-intake review */
.claim-review-grid { display:grid; gap:10px; }
.claim-review-row {
    display:grid;
    grid-template-columns:minmax(300px, .85fr) minmax(320px, 1.15fr);
    gap:12px 18px;
    align-items:end;
    padding:14px;
    border:1px solid var(--line);
    border-radius:12px;
    background:#fbfcfd;
}
.claim-review-row.selected { border-color:#e8b7ba; background:var(--accent-soft); }
.claim-review-row .record-meta { grid-column:1 / -1; }
.claim-check { align-items:flex-start; }
.claim-check span { display:grid; gap:3px; }
.claim-check small { color:var(--muted); font-weight:600; }
.relationship-grid { display:grid; gap:10px; }
.relationship-row {
    display:grid;
    grid-template-columns:minmax(220px,.75fr) minmax(220px,1fr) minmax(260px,1.2fr);
    gap:12px;
    align-items:end;
    padding:12px;
    border:1px solid var(--line);
    border-radius:10px;
    background:#fff;
}
.relationship-row > strong { align-self:center; overflow-wrap:anywhere; }
@media (max-width:900px) {
    .claim-review-row,
    .relationship-row { grid-template-columns:1fr; }
    .claim-review-row .record-meta { grid-column:auto; }
}
.roadmap-grid { display:grid; grid-template-columns:repeat(4,minmax(220px,1fr)); gap:12px; }
.roadmap-step { display:flex; gap:12px; padding:15px; border:1px solid var(--line); border-radius:12px; background:#fbfcfd; }
.roadmap-step > span { flex:0 0 34px; width:34px; height:34px; display:grid; place-items:center; border-radius:50%; background:#e8edf2; color:var(--muted); font-weight:800; }
.roadmap-step strong { display:block; margin-bottom:5px; }
.roadmap-step p { margin:0; color:var(--muted); font-size:13px; }
.roadmap-step.complete > span { background:#dcf4e6; color:#17653a; }
.roadmap-step.attention > span { background:#fff0cd; color:#7b5611; }
.roadmap-step.active > span { background:var(--accent-soft); color:var(--accent-dark); }
@media (max-width:1100px) { .roadmap-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:700px) { .roadmap-grid { grid-template-columns:1fr; } }

/* CivilDocket v1.3.1 opening/response intake */
.file-picker input[type="file"],
input[type="file"][data-persistent-files] {
    width: 100%;
    padding: 14px;
    border: 1px dashed #b9c5d1;
    border-radius: 12px;
    background: #fbfcfd;
}
.file-tray {
    display: grid;
    gap: 9px;
    margin-top: 12px;
}
.file-tray:empty { display: none; }
.file-tray-item,
.compact-document-row {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    padding: 11px 12px;
    border: 1px solid var(--line);
    border-radius: 11px;
    background: #fff;
}
.file-type-badge {
    flex: 0 0 42px;
    width: 42px;
    min-height: 48px;
    display: grid;
    place-items: center;
    padding: 4px;
    border-radius: 8px;
    background: #eef2f7;
    border: 1px solid #d6dee7;
    color: #344256;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .03em;
    overflow: hidden;
}
.file-type-badge[data-file-extension="PDF"] { background: #fff0f0; border-color: #f3c4c4; color: #9b1c1c; }
.file-type-badge[data-file-extension="DOCX"],
.file-type-badge[data-file-extension="DOC"] { background: #edf5ff; border-color: #bfd7f6; color: #1d4f91; }
.file-type-badge[data-file-extension="JPG"],
.file-type-badge[data-file-extension="JPEG"],
.file-type-badge[data-file-extension="PNG"] { background: #effaf2; border-color: #c7e8d0; color: #25643a; }
.file-tray-details {
    min-width: 0;
    flex: 1;
}
.file-tray-details strong,
.file-tray-details small { display: block; }
.file-tray-details strong {
    overflow-wrap: anywhere;
    line-height: 1.3;
}
.file-tray-details small { color: var(--muted); margin-top: 2px; }
.file-tray-remove {
    flex: 0 0 auto;
    border: 0;
    background: transparent;
    color: var(--danger);
    font-weight: 700;
    padding: 7px 4px;
}
.response-package-list { display: grid; gap: 14px; }
.response-package-card {
    padding: 18px;
    border: 1px solid var(--line);
    border-radius: 13px;
    background: #fbfcfd;
}
.response-package-card h3 { margin: 7px 0 0; }
.compact-document-list { display: grid; gap: 8px; margin-top: 14px; }
.grow { min-width: 0; flex: 1; }
.position-grid { display: grid; gap: 12px; }
.position-card {
    position: relative;
    padding: 16px;
    border: 1px solid var(--line);
    border-radius: 12px;
    background: #fbfcfd;
}
.position-card .remove-row { position: absolute; top: 10px; right: 12px; }

@media (max-width: 700px) {
    .file-tray-item, .compact-document-row { align-items: flex-start; }
    .file-tray-remove { margin-left: auto; }
    .steps-four .step { min-width: 170px; }
}
.file-row-inline { display:flex; align-items:center; gap:10px; min-width:0; }
.file-row-inline .file-type-badge { flex-basis:34px; width:34px; min-height:38px; }

/* CivilDocket v1.3.2 evidence-backed intake review */
.evidence-quote {
    margin-top: 10px;
    padding: 10px 12px;
    border-left: 3px solid #7f8fa4;
    border-radius: 0 8px 8px 0;
    background: #f5f7fa;
    color: #334155;
    font-size: 13px;
    line-height: 1.5;
}
.evidence-quote strong { color: #1f2937; }

/* CivilDocket v1.3.2 evidence correction controls */
.section-title.compact { align-items: flex-start; margin: 12px 0; }
.deceased-parent-review { position: relative; padding: 14px; border: 1px solid var(--border); border-radius: 12px; background: var(--surface-soft, #fafafa); }
.deceased-parent-review .remove-row { position: absolute; top: 10px; right: 12px; }
.verifier-cost-note { max-width: 360px; margin: 0; }
@media (max-width: 760px) { .verifier-cost-note { max-width: none; width: 100%; } }

/* v1.3.3 compact intake verification */
.compact-list{gap:8px}.compact-record{padding:12px 14px}.party-position-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:14px}.party-position-summary{border:1px solid var(--border);border-radius:14px;padding:16px;background:var(--surface)}.party-position-summary p{margin:8px 0;line-height:1.5}.compact-terms{margin-top:10px;padding:10px 12px;background:var(--surface-soft,#f7f8fa);border-radius:10px}.compact-terms ul{margin:6px 0 0;padding-left:20px}.position-editor{padding:14px 0;border-top:1px solid var(--border);margin-top:12px}.child-review-card{padding:16px}.child-review-card .relationship-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.child-review-card .relationship-row{padding:12px}.child-review-card details{margin-top:8px}.deceased-parent-review{padding:10px}.party-review-card .form-grid{gap:10px}

/* CivilDocket v1.3.3 compact case summaries */
.compact-position-grid,
.children-compact-grid {
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(340px,1fr));
    gap:14px;
}
.position-summary-card,
.child-summary-card {
    border:1px solid var(--line);
    border-radius:14px;
    background:#fff;
    padding:16px;
    min-width:0;
}
.compact-copy { margin:10px 0; line-height:1.5; }
.compact-terms { margin-top:12px; }
.compact-terms ul { margin:7px 0 0; padding-left:20px; }
.child-name { font-size:17px; }
.child-core-facts { display:grid; gap:12px; margin-top:14px; }
.child-core-facts > div { display:grid; gap:5px; }
.fact-label { color:var(--muted); font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
.relationship-chip-list { display:flex; flex-wrap:wrap; gap:7px; }
.relationship-chip { display:inline-flex; gap:5px; align-items:center; padding:7px 9px; border:1px solid var(--line); border-radius:999px; background:#f7f9fb; font-size:12px; }
.source-details { margin-top:14px; border-top:1px solid var(--line); padding-top:12px; }
.source-details summary { cursor:pointer; color:var(--accent-dark); font-weight:700; }
.details-stack { display:grid; gap:10px; padding-top:10px; }
.details-stack p { margin:0; }
.compact-review-link { margin:12px 0 0; }
@media (max-width:700px) {
    .compact-position-grid,
    .children-compact-grid { grid-template-columns:1fr; }
}

/* CivilDocket v1.3.4 child-centred verification and case display */
.child-verification-list,
.parent-record-list,
.relationship-review-list,
.other-resident-list { display:grid; gap:12px; }
.child-verification-card,
.child-profile-card {
    min-width:0;
    border:1px solid var(--line);
    border-radius:16px;
    background:#fff;
    overflow:hidden;
}
.child-verification-header,
.child-profile-header {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:16px;
    padding:18px 20px;
    border-bottom:1px solid var(--line);
    background:#fbfcfd;
}
.child-verification-header h3,
.child-profile-header h3 { margin:3px 0 0; font-size:21px; line-height:1.2; overflow-wrap:anywhere; }
.eyebrow { color:var(--muted); font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.child-fact-grid,
.child-profile-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:16px 20px; }
.child-fact,
.child-fact-panel { min-width:0; padding:13px 14px; border:1px solid var(--line); border-radius:12px; background:#fff; }
.child-fact strong,
.child-fact-panel strong { display:block; margin-top:5px; overflow-wrap:anywhere; }
.fact-chip-list { display:flex; flex-wrap:wrap; gap:7px; margin-top:7px; }
.fact-chip { max-width:100%; padding:6px 9px; border:1px solid var(--line); border-radius:999px; background:#f5f8fa; font-size:12px; overflow-wrap:anywhere; }
.child-review-details,
.child-source-details { margin:0 20px 18px; }
.child-review-details > summary,
.child-source-details > summary { padding:12px 0; }
.child-review-body { display:grid; gap:18px; padding:2px 0 4px; }
.nested-review-section { min-width:0; padding:15px; border:1px solid var(--line); border-radius:12px; background:#fbfcfd; }
.nested-review-section h4 { margin:0 0 5px; }
.inline-repeat-row { display:flex; align-items:center; gap:9px; min-width:0; }
.inline-repeat-row input { min-width:0; flex:1; }
.parent-record,
.relationship-review-row { position:relative; min-width:0; padding:15px; border:1px solid var(--line); border-radius:12px; background:#fff; }
.parent-record > .remove-row,
.relationship-review-row > .remove-row { position:absolute; top:9px; right:10px; z-index:1; }
.relationship-review-row .form-grid,
.parent-record .form-grid { min-width:0; }
.relationship-review-row input,
.relationship-review-row select,
.relationship-review-row textarea,
.parent-record input,
.parent-record select,
.parent-record textarea { max-width:100%; min-width:0; }
.child-relationship-section { padding:0 20px 16px; }
.relationship-fact-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:9px; margin-top:8px; }
.relationship-fact-row { min-width:0; display:grid; gap:3px; padding:10px 12px; border:1px solid var(--line); border-radius:10px; background:#f8fafc; }
.relationship-fact-row strong,
.relationship-fact-row span { overflow-wrap:anywhere; }
.relationship-fact-row span { color:var(--muted); font-size:13px; }
.parent-summary-list { display:grid; gap:8px; margin-top:7px; }
.parent-summary-row { min-width:0; display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding-bottom:7px; border-bottom:1px solid #edf0f3; }
.parent-summary-row:last-child { padding-bottom:0; border-bottom:0; }
.parent-summary-row strong { margin:0; }
.parent-summary-row span { color:var(--muted); font-size:12px; text-align:right; overflow-wrap:anywhere; }
.source-record { min-width:0; padding:10px 0; border-bottom:1px solid var(--line); }
.source-record:last-child { border-bottom:0; }
@media (max-width:760px) {
    .child-verification-header,
    .child-profile-header { flex-direction:column; padding:16px; }
    .child-fact-grid,
    .child-profile-facts { grid-template-columns:1fr; padding:14px 16px; }
    .child-review-details,
    .child-source-details { margin-left:16px; margin-right:16px; }
    .child-relationship-section { padding-left:16px; padding-right:16px; }
    .relationship-fact-grid { grid-template-columns:1fr; }
    .inline-repeat-row { align-items:flex-start; }
    .parent-summary-row { display:grid; gap:3px; }
    .parent-summary-row span { text-align:left; }
}

/* CivilDocket v1.3.5 focused setup wizard */
.wizard-progress {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    margin: 0 0 28px;
}
.wizard-progress-step {
    position: relative;
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    grid-template-rows: auto auto;
    column-gap: 10px;
    align-items: center;
    min-width: 0;
    padding: 12px 14px;
    color: var(--muted);
    background: rgba(255,255,255,.72);
    border: 1px solid var(--line);
    border-radius: 13px;
    text-decoration: none;
}
a.wizard-progress-step:hover { text-decoration: none; border-color: #c7d2dc; background: white; }
.wizard-progress-step > span {
    grid-row: 1 / 3;
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #e8edf2;
    color: var(--muted);
    font-weight: 800;
}
.wizard-progress-step strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: inherit; font-size: 13px; }
.wizard-progress-step small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11px; }
.wizard-progress-step.active { color: var(--accent-dark); border-color: #e8b7ba; background: var(--accent-soft); box-shadow: 0 7px 22px rgba(179,38,46,.07); }
.wizard-progress-step.active > span { background: var(--accent); color: white; }
.wizard-progress-step.complete { color: var(--ink); }
.wizard-progress-step.complete > span { background: #dcf4e6; color: #17653a; }
.wizard-progress-step.complete > span::after { content: "✓"; }
.wizard-progress-step.complete > span { font-size: 0; }
.wizard-progress-step.complete > span::after { font-size: 16px; }

.wizard-page-head { display: flex; justify-content: space-between; gap: 24px; margin: 0 0 22px; }
.wizard-page-head h1 { margin: 3px 0 7px; font-size: clamp(28px, 3.5vw, 43px); line-height: 1.08; letter-spacing: -.035em; }
.wizard-page-head p { max-width: 900px; margin: 0; color: var(--muted); font-size: 17px; }
.eyebrow { display: block; color: var(--accent-dark); font-size: 12px; font-weight: 850; letter-spacing: .08em; text-transform: uppercase; }

.wizard-card {
    display: grid;
    grid-template-columns: minmax(0, 1.7fr) minmax(260px, .65fr);
    overflow: hidden;
}
.wizard-card-main { padding: clamp(20px, 2.5vw, 34px); }
.wizard-card-side { padding: clamp(20px, 2.2vw, 30px); background: #f8fafc; border-left: 1px solid var(--line); }
.wizard-card-side h2 { margin: 0 0 8px; }
.wizard-start-card { max-width: none; }
.wizard-dropzone {
    position: relative;
    display: grid;
    gap: 4px;
    min-height: 126px;
    place-content: center;
    padding: 22px;
    text-align: center;
    background: #fbfcfd;
    border: 2px dashed #c8d2dc;
    border-radius: 14px;
    transition: border-color .15s ease, background .15s ease;
}
.wizard-dropzone:hover { border-color: var(--accent); background: var(--accent-soft); }
.wizard-dropzone input[type="file"] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    min-height: 0;
    padding: 0;
    opacity: 0;
    cursor: pointer;
}
.wizard-dropzone strong { font-size: 17px; }
.wizard-dropzone span { color: var(--muted); font-size: 13px; }
.wizard-checklist { margin: 0; padding-left: 20px; }
.wizard-checklist li + li { margin-top: 8px; }
.wizard-record-card { margin-top: 20px; }
.count-pill { min-width: 36px; height: 36px; padding: 0 11px; display: grid; place-items: center; border-radius: 999px; background: var(--soft); font-weight: 800; }
.wizard-file-list { display: grid; gap: 9px; }
.wizard-file-row { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 12px; align-items: center; padding: 12px 13px; border: 1px solid var(--line); border-radius: 11px; background: white; min-width: 0; }
.wizard-file-row > div { min-width: 0; }
.wizard-file-row a, .wizard-file-row strong { overflow-wrap: anywhere; }
.wizard-file-row small { display: block; color: var(--muted); }
.wizard-file-row.compact { padding: 8px 0; border: 0; border-top: 1px solid var(--line); border-radius: 0; }
.wizard-navigation { display: flex; justify-content: space-between; gap: 12px; align-items: center; margin-top: 22px; }
.wizard-disclosure > summary { cursor: pointer; list-style: none; padding: 4px 0 18px; font-size: 19px; font-weight: 800; }
.wizard-disclosure > summary::-webkit-details-marker { display: none; }
.wizard-disclosure > summary::before { content: "+"; display: inline-grid; place-items: center; width: 28px; height: 28px; margin-right: 10px; border-radius: 50%; background: var(--accent-soft); color: var(--accent-dark); }
.wizard-disclosure[open] > summary::before { content: "−"; }
.wizard-analysis-card { overflow: hidden; }
.analysis-summary-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); border-bottom: 1px solid var(--line); background: #f8fafc; }
.analysis-summary-grid > div { padding: 23px; text-align: center; border-right: 1px solid var(--line); }
.analysis-summary-grid > div:last-child { border-right: 0; }
.analysis-summary-grid strong { display: block; font-size: 30px; line-height: 1; }
.analysis-summary-grid span { display: block; margin-top: 7px; color: var(--muted); font-size: 13px; }
.compact-grid { gap: 28px; }

@media (max-width: 980px) {
    .wizard-progress { display: flex; overflow-x: auto; padding-bottom: 5px; }
    .wizard-progress-step { flex: 0 0 190px; }
    .wizard-card { grid-template-columns: 1fr; }
    .wizard-card-side { border-left: 0; border-top: 1px solid var(--line); }
}
@media (max-width: 640px) {
    .wizard-page-head p { font-size: 15px; }
    .wizard-progress-step { flex-basis: 165px; padding: 10px; }
    .wizard-progress-step small { display: none; }
    .wizard-card-main, .wizard-card-side { padding: 18px; }
    .analysis-summary-grid { grid-template-columns: 1fr; }
    .analysis-summary-grid > div { border-right: 0; border-bottom: 1px solid var(--line); }
    .analysis-summary-grid > div:last-child { border-bottom: 0; }
    .wizard-navigation { align-items: stretch; flex-direction: column-reverse; }
    .wizard-navigation .button { width: 100%; }
    .wizard-file-row { grid-template-columns: auto minmax(0, 1fr); }
    .wizard-file-row form { grid-column: 2; }
}

/* CivilDocket v1.3.8 scoped guided verification */
.verification-review {
    --review-blue: #2563eb;
    --review-blue-soft: #eff6ff;
    --review-violet: #7c3aed;
    --review-violet-soft: #f5f3ff;
    --review-amber: #b45309;
    --review-amber-soft: #fff7ed;
    --review-teal: #0f766e;
    --review-teal-soft: #f0fdfa;
    --review-green: #15803d;
    --review-green-soft: #f0fdf4;
}
.verification-review .badge.warning { background: #ffedd5; color: #9a3412; }
.verification-review .badge.neutral { background: #eef2f7; color: #475569; }
.verification-review .verification-substeps {
    position: sticky;
    top: 82px;
    z-index: 12;
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 8px;
    margin: 0 0 22px;
    padding: 10px;
    background: rgba(238, 242, 245, .94);
    border: 1px solid rgba(203, 213, 225, .88);
    border-radius: 17px;
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
    box-shadow: 0 8px 28px rgba(15, 23, 42, .07);
}
.verification-review .verification-substep {
    display: grid;
    grid-template-columns: 34px minmax(0, 1fr);
    gap: 10px;
    align-items: center;
    min-width: 0;
    padding: 11px 12px;
    border: 1px solid transparent;
    border-radius: 12px;
    background: transparent;
    color: var(--muted);
    text-align: left;
    transition: background .15s ease, border-color .15s ease, color .15s ease, transform .15s ease;
}
.verification-review .verification-substep:hover { background: white; border-color: var(--line); transform: translateY(-1px); }
.verification-review .verification-substep.active { background: white; border-color: #d8a8ac; color: var(--ink); box-shadow: 0 5px 17px rgba(15, 23, 42, .06); }
.verification-review .verification-substep-number {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 50%;
    background: #e5eaf0;
    color: #526173;
    font-size: 13px;
    font-weight: 850;
}
.verification-review .verification-substep.active .verification-substep-number { background: var(--accent); color: white; }
.verification-review .verification-substep strong, .verification-review .verification-substep small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.verification-review .verification-substep strong { font-size: 13px; }
.verification-review .verification-substep small { margin-top: 2px; color: inherit; font-size: 11px; opacity: .82; }
.verification-review .verification-panel { min-width: 0; }
.verification-review .verification-panel[hidden] { display: none !important; }
.verification-review .verification-panel-header {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    padding: 20px 22px;
    border: 1px solid var(--line);
    border-radius: 16px;
    background: white;
    box-shadow: 0 4px 16px rgba(15, 23, 42, .035);
}
.verification-review .verification-panel-header h2 { margin: 2px 0 4px; font-size: clamp(22px, 2.4vw, 30px); }
.verification-review .verification-panel-header p { max-width: 900px; margin: 0; color: var(--muted); }
.verification-review .verification-panel-icon {
    flex: 0 0 auto;
    width: 42px;
    height: 42px;
    display: grid;
    place-items: center;
    border-radius: 13px;
    color: white;
    background: var(--accent);
    font-size: 17px;
    font-weight: 900;
    box-shadow: 0 8px 18px rgba(15, 23, 42, .12);
}
.verification-review .verification-panel-header.tone-overview { border-left: 5px solid var(--accent); background: linear-gradient(110deg, #fff, #fff7f7); }
.verification-review .verification-panel-header.tone-court { border-left: 5px solid var(--review-blue); background: linear-gradient(110deg, #fff, var(--review-blue-soft)); }
.verification-review .verification-panel-header.tone-court .verification-panel-icon { background: var(--review-blue); }
.verification-review .verification-panel-header.tone-parties { border-left: 5px solid var(--review-amber); background: linear-gradient(110deg, #fff, var(--review-amber-soft)); }
.verification-review .verification-panel-header.tone-parties .verification-panel-icon { background: var(--review-amber); }
.verification-review .verification-panel-header.tone-children { border-left: 5px solid var(--review-teal); background: linear-gradient(110deg, #fff, var(--review-teal-soft)); }
.verification-review .verification-panel-header.tone-children .verification-panel-icon { background: var(--review-teal); }
.verification-review .verification-panel-header.tone-confirm { border-left: 5px solid var(--review-green); background: linear-gradient(110deg, #fff, var(--review-green-soft)); }
.verification-review .verification-panel-header.tone-confirm .verification-panel-icon { background: var(--review-green); }
.verification-review .review-step-actions {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    margin-top: 22px;
    padding-top: 20px;
    border-top: 1px solid var(--line);
}
.verification-review .overview-primary-card { margin-top: 20px; border-left: 5px solid var(--accent); background: linear-gradient(120deg, #fff, #fffafa); }
.verification-review .overview-primary-card .case-description-preview { max-width: 1150px; font-size: 17px; line-height: 1.68; }
.verification-review .verification-panel[data-review-panel="overview"] > .grid.two > .card:first-child { border-top: 4px solid var(--review-violet); }
.verification-review .verification-panel[data-review-panel="overview"] > .grid.two > .card:last-child { border-top: 4px solid var(--review-blue); }
/* Summary appears first; the expand control always sits below it. */
.verification-review .review-disclosure {
    --review-tone: var(--accent);
    --review-tone-soft: var(--accent-soft);
    padding: 0 !important;
    border-left: 5px solid var(--review-tone);
    background: white;
}
.verification-review .review-disclosure.tone-court { --review-tone: var(--review-blue); --review-tone-soft: var(--review-blue-soft); }
.verification-review .review-disclosure.tone-responses { --review-tone: var(--review-violet); --review-tone-soft: var(--review-violet-soft); }
.verification-review .review-disclosure.tone-parties { --review-tone: var(--review-amber); --review-tone-soft: var(--review-amber-soft); }
.verification-review .review-disclosure.tone-related { --review-tone: #64748b; --review-tone-soft: #f8fafc; }
.verification-review .review-disclosure > summary {
    display: block;
    margin: 0;
    padding: 21px 22px 0;
    list-style: none;
    cursor: pointer;
}
.verification-review .review-disclosure > summary::-webkit-details-marker { display: none; }
.verification-review .review-disclosure-content { min-width: 0; }
.verification-review .review-summary-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
}
.verification-review .review-summary-heading h2 { margin: 2px 0 0; }
.verification-review .review-summary-note { margin: 12px 0 0; color: var(--muted); }
.verification-review .review-disclosure-action {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    margin-top: 18px;
    padding: 12px 4px 14px;
    border-top: 1px solid rgba(148, 163, 184, .24);
    color: var(--review-tone);
    background: linear-gradient(180deg, rgba(255,255,255,0), var(--review-tone-soft));
    font-size: 13px;
    font-weight: 850;
}
.verification-review .review-disclosure-action::before { content: none !important; }
.verification-review .review-disclosure-action::after {
    content: "";
    width: 9px;
    height: 9px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg) translateY(-2px);
    transition: transform .16s ease;
}
.verification-review .review-disclosure[open] .review-disclosure-action::after { transform: rotate(225deg) translate(-2px, -1px); }
.verification-review .review-disclosure-body {
    margin: 0;
    padding: 22px;
    border-top: 1px solid var(--line);
    background: #fbfcfe;
}
.verification-review .review-summary-facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 10px;
    margin-top: 15px;
}
.verification-review .review-summary-facts > div {
    min-width: 0;
    padding: 11px 12px;
    border: 1px solid #e4e9ef;
    border-radius: 11px;
    background: rgba(255,255,255,.85);
}
.verification-review .review-summary-facts span { display: block; color: var(--muted); font-size: 11px; font-weight: 750; letter-spacing: .035em; text-transform: uppercase; }
.verification-review .review-summary-facts strong { display: block; margin-top: 4px; overflow-wrap: anywhere; }
.verification-review .response-summary-list, .verification-review .party-summary-list { display: grid; gap: 8px; margin-top: 15px; }
.verification-review .response-summary-row, .verification-review .party-summary-row {
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 10px 12px;
    border: 1px solid #e4e9ef;
    border-radius: 10px;
    background: white;
}
.verification-review .party-summary-row > div { min-width: 0; }
.verification-review .party-summary-row strong { display: block; overflow-wrap: anywhere; }
.verification-review .party-summary-row > span { color: var(--muted); font-size: 13px; text-align: right; overflow-wrap: anywhere; }
.verification-review .party-role-label { display: block; color: var(--review-amber); font-size: 11px; font-weight: 850; letter-spacing: .045em; text-transform: uppercase; }
.verification-review .party-review-card {
    padding: 0;
    overflow: hidden;
    border-left: 4px solid #94a3b8;
    background: white;
}
.verification-review .party-review-card.role-applicant { border-left-color: var(--review-violet); }
.verification-review .party-review-card.role-respondent { border-left-color: var(--review-blue); }
.verification-review .party-editor-heading {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 14px;
    padding: 14px 16px;
    background: #f8fafc;
    border-bottom: 1px solid var(--line);
}
.verification-review .party-editor-heading h3 { margin: 2px 0 0; }
.verification-review .party-review-card > .form-grid { padding: 16px; }
.verification-review .current-party-choice { flex: 0 0 auto; margin: 0; padding: 8px 10px; border: 1px solid #dbe4ec; border-radius: 9px; background: white; }
.verification-review .positions-review-section { border-left: 5px solid #d97706; background: linear-gradient(120deg, #fff, #fffcf7); }
.verification-review .party-position-list { grid-template-columns: repeat(auto-fit, minmax(min(100%, 380px), 1fr)); }
.verification-review .party-position-summary {
    position: relative;
    overflow: hidden;
    padding: 0;
    border: 1px solid var(--line);
    border-left: 4px solid #94a3b8;
    background: white;
}
.verification-review .party-position-summary.role-applicant { border-left-color: var(--review-violet); }
.verification-review .party-position-summary.role-respondent { border-left-color: var(--review-blue); }
.verification-review .party-position-summary > .record-title, .verification-review .party-position-summary > p, .verification-review .party-position-summary > .compact-terms, .verification-review .party-position-summary > .record-meta { margin-left: 16px; margin-right: 16px; }
.verification-review .party-position-summary > .record-title { margin-top: 16px; }
.verification-review .party-position-summary > .record-meta { margin-bottom: 14px; }
.verification-review .position-review-details { margin-top: 14px; border-top: 1px solid var(--line); }
.verification-review .position-review-details > summary, .verification-review .child-review-details > summary, .verification-review .source-details > summary {
    list-style: none;
    cursor: pointer;
    color: var(--accent-dark);
    font-weight: 800;
}
.verification-review .position-review-details > summary::-webkit-details-marker, .verification-review .child-review-details > summary::-webkit-details-marker, .verification-review .source-details > summary::-webkit-details-marker { display: none; }
.verification-review .position-review-details > summary, .verification-review .child-review-details > summary {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 16px;
    background: #f8fafc;
}
.verification-review .position-review-details > summary::after, .verification-review .child-review-details > summary::after, .verification-review .source-details > summary::after {
    content: "";
    width: 8px;
    height: 8px;
    border-right: 2px solid currentColor;
    border-bottom: 2px solid currentColor;
    transform: rotate(45deg) translateY(-2px);
    transition: transform .16s ease;
}
.verification-review .position-review-details[open] > summary::after, .verification-review .child-review-details[open] > summary::after, .verification-review .source-details[open] > summary::after { transform: rotate(225deg) translate(-2px, -1px); }
.verification-review .position-review-details .position-editor { padding: 16px; background: #fbfcfe; }
.verification-review .children-review-section { border-left: 5px solid var(--review-teal); background: linear-gradient(120deg, #fff, #f9fffe); }
.verification-review .child-verification-card {
    border: 1px solid #cfe8e4;
    border-left: 5px solid var(--review-teal);
    box-shadow: 0 7px 20px rgba(15, 118, 110, .06);
}
.verification-review .child-verification-header { background: linear-gradient(110deg, #fff, var(--review-teal-soft)); }
.verification-review .child-fact { background: white; }
.verification-review .child-review-details { margin: 0 20px 18px; border: 1px solid #dce9e7; border-radius: 11px; overflow: hidden; }
.verification-review .child-review-details > summary { color: var(--review-teal); background: #f5fbfa; }
.verification-review .child-review-body { padding: 16px; background: #fcfefe; }
.verification-review .nested-review-section { background: white; border-color: #dce7e6; }
.verification-review .source-details > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 10px 0;
    color: #526173;
}
.verification-review .field { min-width: 0; }
.verification-review .field label { color: #334155; font-size: 13px; font-weight: 750; }
.verification-review .field input, .verification-review .field select, .verification-review .field textarea {
    background: white;
    border-color: #cfd8e2;
    box-shadow: inset 0 1px 2px rgba(15, 23, 42, .025);
}
.verification-review .field input:focus, .verification-review .field select:focus, .verification-review .field textarea:focus { border-color: #94a3b8; box-shadow: 0 0 0 3px rgba(148, 163, 184, .17); }
.verification-review .tone-related { margin-top: 20px; }
.verification-review .verification-confirmation.tone-confirm { border-left: 5px solid var(--review-green); background: linear-gradient(115deg, #fff, var(--review-green-soft)); }
.verification-review .final-review-summary {
    display: grid;
    grid-template-columns: minmax(0, 1.2fr) minmax(280px, .8fr);
    gap: 24px;
    align-items: start;
}
.verification-review .final-review-summary h2 { margin: 3px 0 4px; }
.verification-review .final-review-summary p { margin: 0; color: var(--muted); }
.verification-review .final-review-checks { display: grid; gap: 7px; color: var(--success); font-size: 13px; font-weight: 750; }
.verification-review .confirmation-checkbox { margin-top: 18px; padding: 14px 15px; border: 1px solid #bbdfc6; border-radius: 11px; background: white; }
.verification-review .review-final-actions { justify-content: flex-end; }
.verification-review .review-final-actions [data-review-back] { margin-right: auto; }
@media (max-width: 1050px) {
.verification-review .verification-substeps { position: static; display: flex; overflow-x: auto; }
.verification-review .verification-substep { flex: 0 0 180px; }
.verification-review .review-summary-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
.verification-review .verification-panel-header { padding: 16px; }
.verification-review .verification-panel-icon { width: 38px; height: 38px; }
.verification-review .review-disclosure > summary { padding: 17px 16px 0; }
.verification-review .review-disclosure-body { padding: 16px; }
.verification-review .review-summary-heading { display: grid; gap: 10px; }
.verification-review .review-summary-heading .badge { justify-self: start; }
.verification-review .review-summary-facts { grid-template-columns: 1fr; }
.verification-review .response-summary-row, .verification-review .party-summary-row { display: grid; gap: 6px; align-items: start; }
.verification-review .party-summary-row > span { text-align: left; }
.verification-review .party-editor-heading { align-items: flex-start; flex-direction: column; }
.verification-review .review-step-actions { align-items: stretch; flex-direction: column-reverse; }
.verification-review .review-step-actions .button, .verification-review .review-step-actions > span + .button { width: 100%; }
.verification-review .final-review-summary { grid-template-columns: 1fr; }
.verification-review .review-final-actions { flex-direction: column; }
.verification-review .review-final-actions .button { width: 100%; }
.verification-review .review-final-actions [data-review-back] { margin-right: 0; }
}

/* v1.4.1 verification error navigation */
.review-error-link {
    align-items: center;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    text-decoration: none;
}
.review-error-link:hover {
    border-color: #dc2626;
    box-shadow: 0 6px 18px rgba(185, 28, 28, .10);
    transform: translateY(-1px);
}
.review-error-action {
    flex: 0 0 auto;
    font-size: 12px;
    font-weight: 850;
    white-space: nowrap;
}
.verification-review .review-attention {
    border-color: #dc2626 !important;
    box-shadow: 0 0 0 4px rgba(220, 38, 38, .13), 0 10px 28px rgba(127, 29, 29, .10) !important;
    scroll-margin-top: 110px;
}
.verification-review .review-field-attention {
    border-color: #dc2626 !important;
    box-shadow: 0 0 0 3px rgba(220, 38, 38, .18) !important;
    background: #fff7f7 !important;
}
@media (max-width: 680px) {
    .review-error-link { align-items: flex-start; flex-direction: column; gap: 8px; }
    .review-error-action { white-space: normal; }
}

/* v1.4.2 intelligent motion workspace */
.badge.warning { background:#ffedd5; color:#9a3412; }
.badge.danger { background:#fee2e2; color:#991b1b; }
.badge.neutral { background:#eef2f7; color:#475569; }
.eyebrow { display:block; margin-bottom:5px; color:var(--accent-dark); font-size:11px; font-weight:850; letter-spacing:.09em; text-transform:uppercase; }
.grow { min-width:0; flex:1; }
.pre-line { white-space:pre-line; }
.small-text { font-size:13px; }
.muted { color:var(--muted); }
.compact-empty { padding:18px; }
.check-stack { display:grid; gap:9px; }
.compact-check-grid { grid-template-columns:repeat(auto-fit,minmax(210px,1fr)); }
.tall-textarea { min-height:150px; }

.motion-intake-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(280px,360px); gap:20px; align-items:start; }
.motion-intake-step { display:grid; grid-template-columns:42px minmax(0,1fr); gap:16px; padding:22px 0; border-bottom:1px solid var(--line); }
.motion-intake-step:first-child { padding-top:0; }
.motion-intake-step:last-of-type { border-bottom:0; }
.motion-intake-step h2 { margin:0 0 5px; font-size:20px; }
.motion-intake-step p { margin:0 0 16px; }
.motion-step-number { width:38px; height:38px; display:grid; place-items:center; border-radius:12px; background:var(--accent-soft); color:var(--accent-dark); font-weight:850; }
.motion-intake-guide { position:sticky; top:98px; }
.feature-list { display:grid; gap:14px; }
.feature-list > div { padding:14px; border:1px solid var(--line); border-radius:12px; background:#f8fafc; }
.feature-list strong,.feature-list span { display:block; }
.feature-list span { margin-top:3px; color:var(--muted); font-size:13px; }
.service-state-check { padding:13px 14px; border:1px solid #fdba74; border-radius:10px; background:#fff7ed; }
.motion-review-form { max-width:1180px; margin-inline:auto; }
.motion-review-overview { background:linear-gradient(135deg,#fff 0%,#fff7f7 100%); }
.motion-summary-copy { margin:18px 0 0; padding:16px 18px; border-left:4px solid var(--accent); border-radius:0 10px 10px 0; background:#f8fafc; }
.motion-review-documents { display:grid; gap:10px; }
.compact-document-row { display:flex; align-items:flex-start; gap:13px; padding:14px; border:1px solid var(--line); border-radius:12px; background:#fbfcfd; }
.file-type-badge { width:44px; min-height:44px; display:grid; place-items:center; flex:0 0 auto; border-radius:10px; background:#edf2f7; color:#475569; font-size:10px; font-weight:850; }
.document-reading-issue { margin-top:8px; padding:8px 10px; border-radius:8px; background:#fff7ed; color:#9a3412; font-size:12px; }
.sticky-review-actions { position:sticky; bottom:12px; z-index:8; padding:14px; border:1px solid var(--line); border-radius:12px; background:rgba(255,255,255,.96); box-shadow:var(--shadow); backdrop-filter:blur(10px); }

.motion-title-line { display:flex; flex-wrap:wrap; gap:7px; align-items:center; margin-bottom:8px; }
.motion-case-header h1 { max-width:900px; }
.motion-workspace-shell { display:grid; grid-template-columns:minmax(175px,215px) minmax(0,1fr) minmax(285px,350px); gap:18px; align-items:start; }
.motion-case-rail,.motion-deadline-rail { position:sticky; top:96px; display:grid; gap:14px; max-height:calc(100vh - 112px); overflow:auto; scrollbar-width:thin; }
.motion-workspace-main { min-width:0; display:grid; gap:18px; }
.motion-rail-nav,.motion-rail-card,.motion-deadline-card { background:var(--paper); border:1px solid var(--line); border-radius:14px; box-shadow:0 4px 16px rgba(15,23,42,.035); }
.motion-rail-nav { display:grid; padding:8px; }
.motion-rail-nav a { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:10px 11px; color:var(--ink); border-radius:9px; font-size:14px; }
.motion-rail-nav a:hover { background:var(--soft); text-decoration:none; }
.motion-rail-nav a span { min-width:24px; padding:2px 7px; text-align:center; border-radius:99px; background:#eef2f7; color:var(--muted); font-size:11px; font-weight:800; }
.motion-rail-card { padding:15px; }
.motion-party-mini { display:grid; gap:2px; padding:10px 0; border-bottom:1px solid var(--line); }
.motion-party-mini:last-child { border-bottom:0; }
.motion-party-mini span { color:var(--muted); font-size:11px; text-transform:uppercase; letter-spacing:.04em; }
.motion-party-mini strong { font-size:14px; line-height:1.35; }

.motion-section-card { scroll-margin-top:105px; overflow:visible; }
.motion-section-head { display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:18px 20px; border-bottom:1px solid var(--line); }
.motion-section-head h2,.motion-section-head p { margin:0; }
.motion-section-head h2 { font-size:22px; }
.motion-section-head p { max-width:780px; margin-top:4px; color:var(--muted); font-size:13px; }
.motion-inline-editor { position:relative; flex:0 0 auto; }
.motion-inline-editor > summary { list-style:none; padding:7px 12px; border:1px solid var(--line); border-radius:9px; background:white; color:var(--accent-dark); font-size:13px; font-weight:800; cursor:pointer; }
.motion-inline-editor > summary::-webkit-details-marker { display:none; }
.motion-inline-editor[open] { width:100%; flex-basis:100%; }
.motion-section-head:has(.motion-inline-editor[open]) { flex-wrap:wrap; }
.motion-inline-editor[open] > summary { display:inline-flex; float:right; }
.motion-edit-form { clear:both; padding-top:16px; }
.motion-overview-grid { padding:20px 20px 0; }
.motion-fact-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.motion-fact-grid > div { min-width:0; padding:13px 14px; border:1px solid #e2e8f0; border-radius:11px; background:#f8fafc; }
.motion-fact-grid span,.motion-service-grid span { display:block; margin-bottom:3px; color:var(--muted); font-size:11px; font-weight:800; text-transform:uppercase; letter-spacing:.04em; }
.motion-fact-grid strong { display:block; overflow-wrap:anywhere; font-size:14px; }
.motion-fact-grid.compact { grid-template-columns:repeat(2,minmax(0,1fr)); }
.motion-source-note { margin:12px 20px 0; padding:10px 13px; border-radius:9px; background:#f1f5f9; color:#475569; font-size:13px; }
.motion-section-card > .motion-summary-copy { margin:16px 20px 0; }
.motion-relief-box { margin:16px 20px 20px; padding:16px; border:1px solid #fecdd3; border-radius:12px; background:#fff7f8; }
.motion-section-card > .empty { margin:20px; }

.motion-classification-health { display:flex; align-items:center; justify-content:space-between; gap:18px; margin:16px 20px 0; padding:14px 16px; border:1px solid #bbf7d0; border-radius:12px; background:#f0fdf4; }
.motion-classification-health.warning { border-color:#fdba74; background:#fff7ed; }
.motion-classification-health strong { display:block; margin-top:2px; font-size:15px; }
.motion-classification-health p { max-width:760px; margin:4px 0 0; color:#475569; font-size:12px; line-height:1.45; }
.motion-classification-health-counts { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:7px; }
.motion-classification-health-counts span { min-width:82px; padding:7px 9px; border:1px solid rgba(15,23,42,.08); border-radius:9px; background:rgba(255,255,255,.72); color:#475569; text-align:center; font-size:11px; }
.motion-classification-health-counts strong { display:inline; margin:0 3px 0 0; color:var(--ink); font-size:13px; }
.motion-material-groups { display:grid; gap:0; }
.motion-material-group { padding:17px 20px; border-bottom:1px solid var(--line); }
.motion-material-group:last-child { border-bottom:0; }
.motion-material-group-title { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:10px; }
.motion-material-group-title h3 { margin:0; font-size:15px; }
.motion-document-list { display:grid; gap:8px; }
.motion-document-party-break { display:flex; align-items:center; gap:10px; margin:5px 2px 0; color:var(--muted); font-size:11px; font-weight:800; letter-spacing:.08em; text-transform:uppercase; }
.motion-document-party-break::after { content:""; height:1px; background:var(--line); flex:1; }
.motion-document-row { display:flex; align-items:center; gap:10px; padding:8px; border:1px solid transparent; border-radius:11px; background:#f8fafc; }
.motion-document-row:hover { border-color:#d4dde6; background:white; }
.motion-document-open { flex:1; min-width:0; display:flex; align-items:center; gap:11px; padding:0; border:0; background:transparent; color:var(--ink); text-align:left; }
.motion-file-icon { width:42px; height:42px; display:grid; place-items:center; flex:0 0 auto; border-radius:10px; background:white; border:1px solid var(--line); color:var(--accent-dark); font-size:9px; font-weight:900; }
.motion-document-copy { min-width:0; display:grid; }
.motion-document-copy strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:14px; }
.motion-document-copy > span { color:var(--muted); font-size:12px; }
.motion-document-copy small { margin-top:3px; overflow:hidden; color:#475569; font-size:12px; line-height:1.35; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; }
.motion-document-state { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:5px; flex:0 0 auto; }
.motion-document-dialog { width:min(900px,calc(100vw - 28px)); max-height:88vh; padding:0; border:0; border-radius:18px; box-shadow:0 30px 80px rgba(15,23,42,.28); }
.motion-document-dialog::backdrop { background:rgba(15,23,42,.58); backdrop-filter:blur(3px); }
.motion-dialog-head { position:sticky; top:0; z-index:2; display:flex; align-items:flex-start; justify-content:space-between; gap:18px; padding:20px 22px; border-bottom:1px solid var(--line); background:white; }
.motion-dialog-head h2 { margin:0; font-size:22px; }
.motion-dialog-close { width:38px; height:38px; border:0; border-radius:10px; background:#f1f5f9; color:#475569; font-size:24px; line-height:1; }
.motion-dialog-body { display:grid; gap:19px; padding:22px; overflow:auto; }
.motion-dialog-body section { padding-top:14px; border-top:1px solid var(--line); }
.motion-dialog-body h3 { margin:0 0 8px; font-size:16px; }
.motion-dialog-body p,.motion-dialog-body ul { margin:0; }
.motion-reading-issues { padding:14px !important; border:1px solid #fdba74 !important; border-radius:11px; background:#fff7ed; color:#9a3412; }
.motion-dialog-actions { position:sticky; bottom:0; display:flex; justify-content:flex-end; gap:9px; padding:14px 22px; border-top:1px solid var(--line); background:white; }

.motion-service-events { display:grid; gap:10px; padding:20px; }
.motion-service-event { padding:15px; border:1px solid var(--line); border-radius:12px; background:#fbfcfd; }
.motion-service-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin:13px 0; }
.motion-service-grid > div { padding:10px 12px; border-radius:9px; background:white; border:1px solid #e2e8f0; }
.motion-service-grid strong { display:block; font-size:13px; line-height:1.45; }
.motion-service-document-picker { display:grid; grid-template-columns:repeat(auto-fit,minmax(245px,1fr)); gap:8px; max-height:280px; padding:10px; overflow:auto; border:1px solid var(--line); border-radius:10px; background:#f8fafc; }
.motion-service-document-picker .checkbox { align-items:flex-start; padding:9px; border-radius:8px; background:white; border:1px solid #e2e8f0; }
.motion-service-document-picker span,.motion-service-document-picker strong,.motion-service-document-picker small { display:block; }
.motion-service-document-picker small { color:var(--muted); font-weight:500; }

.motion-position-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(300px,1fr)); gap:12px; padding:20px; }
.motion-position-card { padding:16px; border:1px solid var(--line); border-radius:12px; background:#fbfcfd; }
.motion-position-card > p { margin:12px 0; }
.motion-position-list { margin-top:12px; padding-top:10px; border-top:1px solid var(--line); }
.motion-position-list > span { color:var(--muted); font-size:11px; font-weight:850; text-transform:uppercase; }
.motion-position-list ul { margin:7px 0 0; padding-left:19px; }
.motion-evidence-list { display:grid; gap:12px; padding:20px; }
.motion-evidence-card { padding:16px; border:1px solid var(--line); border-radius:12px; }
.motion-evidence-card h3 { margin:0 0 13px; }
.motion-evidence-columns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.motion-evidence-columns > div { padding:12px; border-radius:10px; background:#f8fafc; }
.motion-evidence-columns > div > span { color:var(--muted); font-size:11px; font-weight:850; text-transform:uppercase; }
.motion-evidence-columns ul { margin:7px 0 0; padding-left:18px; }

.motion-deadline-card { padding:15px; }
.motion-rail-heading { display:flex; align-items:flex-start; justify-content:space-between; gap:10px; margin-bottom:12px; }
.motion-rail-heading h2 { margin:0; font-size:18px; }
.motion-action-count { min-width:34px; height:34px; display:grid; place-items:center; border-radius:11px; background:var(--accent); color:white; font-size:14px; font-weight:850; }
.motion-requirement-list,.motion-deadline-list { display:grid; gap:8px; }
.motion-requirement { display:grid; grid-template-columns:8px minmax(0,1fr); gap:10px; padding:10px; border:1px solid var(--line); border-radius:10px; background:#fbfcfd; }
.motion-requirement-marker { width:8px; height:100%; min-height:38px; border-radius:99px; background:#cbd5e1; }
.motion-requirement.open .motion-requirement-marker { background:var(--accent); }
.motion-requirement.needs_review .motion-requirement-marker { background:#f97316; }
.motion-requirement.waiting .motion-requirement-marker { background:#94a3b8; }
.motion-requirement.completed .motion-requirement-marker { background:#16a34a; }
.motion-requirement strong { display:block; font-size:13px; line-height:1.35; }
.motion-requirement p { margin:5px 0 0; color:var(--muted); font-size:12px; line-height:1.4; }
.motion-deadline-row { display:grid; gap:2px; padding:10px; border-left:3px solid var(--accent); border-radius:0 9px 9px 0; background:#fff7f8; }
.motion-deadline-row.completed { border-left-color:#16a34a; background:#f0fdf4; opacity:.78; }
.motion-deadline-row time { color:var(--accent-dark); font-size:11px; font-weight:850; text-transform:uppercase; }
.motion-deadline-row strong { font-size:13px; line-height:1.35; }
.motion-deadline-row span,.motion-deadline-row small { color:var(--muted); font-size:11px; line-height:1.4; }
.motion-completed-card > summary { cursor:pointer; font-size:13px; font-weight:800; }

.motion-index-head p { max-width:900px; }
.motion-index-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(400px,1fr)); gap:16px; }
.motion-index-card { overflow:hidden; }
.motion-index-link { display:block; height:100%; padding:18px; color:var(--ink); }
.motion-index-link:hover { text-decoration:none; background:#fffdfd; }
.motion-index-top { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; }
.motion-index-top h3 { margin:0; font-size:19px; line-height:1.25; }
.motion-index-date { flex:0 0 auto; color:var(--muted); font-size:12px; text-align:right; }
.motion-index-facts { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:7px; margin-top:15px; }
.motion-index-facts span { display:grid; padding:9px; border-radius:9px; background:#f8fafc; color:var(--muted); font-size:11px; }
.motion-index-facts strong { color:var(--ink); font-size:13px; }
.motion-index-facts .needs-attention { background:#fff7ed; color:#9a3412; }
.motion-index-summary { margin:14px 0 0; color:#475569; font-size:13px; line-height:1.5; }
.motion-index-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:16px; padding-top:13px; border-top:1px solid var(--line); color:var(--muted); font-size:12px; }
.motion-index-footer strong { color:var(--accent-dark); }
.motion-index-empty { grid-column:1/-1; }

.dashboard-action-centre .card-head { align-items:center; }
.dashboard-action-list { display:grid; gap:8px; }
.dashboard-action-row { display:grid; grid-template-columns:58px minmax(0,1fr) auto; gap:12px; align-items:center; padding:10px 12px; border:1px solid var(--line); border-radius:10px; color:var(--ink); }
.dashboard-action-row:hover { border-color:#e8b7ba; background:#fffafa; text-decoration:none; }
.dashboard-action-date { display:grid; place-items:center; min-height:42px; border-radius:9px; background:var(--accent-soft); color:var(--accent-dark); font-size:12px; font-weight:850; }
.dashboard-action-copy { min-width:0; display:grid; }
.dashboard-action-copy strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:14px; }
.dashboard-action-copy small { overflow:hidden; color:var(--muted); text-overflow:ellipsis; white-space:nowrap; }
.case-card-counts { display:grid; justify-items:end; gap:6px; }

@media (max-width:1250px) {
    .motion-workspace-shell { grid-template-columns:180px minmax(0,1fr) 300px; gap:14px; }
    .motion-fact-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:1020px) {
    .motion-workspace-shell { grid-template-columns:180px minmax(0,1fr); }
    .motion-deadline-rail { position:static; grid-column:1/-1; grid-template-columns:repeat(2,minmax(0,1fr)); max-height:none; overflow:visible; }
    .motion-completed-card { grid-column:1/-1; }
    .motion-intake-layout { grid-template-columns:1fr; }
    .motion-intake-guide { position:static; }
}
@media (max-width:760px) {
    .motion-case-header .page-head { display:grid; }
    .motion-workspace-shell { display:block; }
    .motion-case-rail { position:static; display:block; max-height:none; overflow:visible; margin-bottom:14px; }
    .motion-rail-nav { display:flex; overflow-x:auto; padding:6px; }
    .motion-rail-nav a { flex:0 0 auto; }
    .motion-rail-card { display:none; }
    .motion-workspace-main { gap:14px; }
    .motion-deadline-rail { display:grid; grid-template-columns:1fr; margin-top:14px; }
    .motion-section-head { padding:15px; }
    .motion-section-head h2 { font-size:19px; }
    .motion-overview-grid,.motion-material-group,.motion-service-events,.motion-position-grid,.motion-evidence-list { padding:15px; }
    .motion-fact-grid,.motion-fact-grid.compact,.motion-service-grid,.motion-evidence-columns { grid-template-columns:1fr; }
    .motion-source-note { margin-inline:15px; }
    .motion-section-card > .motion-summary-copy { margin-inline:15px; }
    .motion-relief-box { margin:15px; }
    .motion-document-row { align-items:flex-start; }
    .motion-document-state { display:none; }
    .motion-document-copy strong { white-space:normal; }
    .motion-dialog-head,.motion-dialog-body,.motion-dialog-actions { padding:15px; }
    .motion-dialog-actions { flex-direction:column; }
    .motion-dialog-actions .button { width:100%; }
    .motion-index-grid { grid-template-columns:1fr; }
    .motion-index-top { display:grid; }
    .motion-index-date { text-align:left; }
    .motion-index-facts { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .dashboard-action-row { grid-template-columns:52px minmax(0,1fr); }
    .dashboard-action-row .badge { grid-column:2; justify-self:start; }
    .compact-check-grid,.motion-service-document-picker { grid-template-columns:1fr; }
    .motion-intake-step { grid-template-columns:34px minmax(0,1fr); gap:11px; }
    .motion-step-number { width:32px; height:32px; border-radius:9px; }
}


/* v1.4.2 — desktop-first case workspace */
.case-workspace-page {
    --workspace-navy: #172033;
    --workspace-navy-soft: #202b42;
    --workspace-canvas: #f1f4f8;
    --workspace-panel: #f8fafc;
    --workspace-border: #d8e0e9;
    --view-accent: #b3262e;
    --view-accent-soft: #fff0f1;
}
.case-view-parties { --view-accent: #2563a8; --view-accent-soft: #edf5ff; }
.case-view-documents { --view-accent: #6d4bc3; --view-accent-soft: #f4f0ff; }
.case-view-motions { --view-accent: #bd6b0b; --view-accent-soft: #fff6e7; }
.case-view-conferences { --view-accent: #087d8d; --view-accent-soft: #eaf9fb; }
.case-view-orders { --view-accent: #277149; --view-accent-soft: #edf8f1; }
.case-view-trial { --view-accent: #6840a5; --view-accent-soft: #f4effb; }
.case-view-calendar { --view-accent: #b2541a; --view-accent-soft: #fff3eb; }
.case-view-timeline { --view-accent: #16706e; --view-accent-soft: #ebf8f7; }

.case-workspace-page .site-main {
    padding: 18px 0 34px;
    background:
        radial-gradient(circle at 82% 0%, rgba(179, 38, 46, .055), transparent 30%),
        var(--workspace-canvas);
}
.case-workspace-page .site-main > .shell {
    padding-inline: clamp(12px, 1.4vw, 24px);
}
.case-workspace-grid {
    display: grid;
    grid-template-columns: minmax(218px, 246px) minmax(0, 1fr) minmax(250px, 292px);
    gap: 18px;
    align-items: start;
    width: 100%;
}

.case-sidebar {
    position: sticky;
    top: 90px;
    max-height: calc(100vh - 108px);
    overflow: auto;
    padding: 17px 14px 16px;
    color: #eef3fa;
    background:
        linear-gradient(155deg, rgba(255,255,255,.055), transparent 42%),
        linear-gradient(180deg, var(--workspace-navy), #111827);
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 19px;
    box-shadow: 0 16px 38px rgba(15, 23, 42, .17);
    scrollbar-width: thin;
    scrollbar-color: rgba(255,255,255,.22) transparent;
}
.case-sidebar a { color: inherit; }
.case-sidebar-back {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 34px;
    padding: 5px 8px;
    color: #c7d2e3 !important;
    font-size: 13px;
    font-weight: 700;
}
.case-sidebar-back:hover { color: white !important; text-decoration: none; }
.case-sidebar-identity {
    margin: 10px 2px 15px;
    padding: 14px 12px 16px;
    border: 1px solid rgba(255,255,255,.1);
    border-radius: 14px;
    background: rgba(255,255,255,.055);
}
.case-sidebar-status-row {
    display: flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 9px;
    color: #cbd5e1;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.case-status-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #53d18a;
    box-shadow: 0 0 0 4px rgba(83,209,138,.13);
}
.case-sidebar-identity h1 {
    margin: 0;
    color: white;
    font-size: clamp(17px, 1.35vw, 21px);
    line-height: 1.25;
    letter-spacing: -.025em;
    overflow-wrap: anywhere;
}
.case-sidebar-identity p {
    margin: 8px 0 0;
    color: #aebbd0;
    font-size: 12px;
}
.case-sidebar .case-nav {
    display: grid;
    gap: 5px;
    margin: 0;
    padding: 0;
    overflow: visible;
    background: transparent;
    border: 0;
    border-radius: 0;
}
.case-sidebar .case-nav a {
    display: flex;
    align-items: center;
    gap: 11px;
    min-height: 43px;
    padding: 9px 11px;
    color: #c7d2e3;
    border: 1px solid transparent;
    border-radius: 11px;
    font-size: 14px;
    font-weight: 700;
    transition: background .16s ease, color .16s ease, border-color .16s ease, transform .16s ease;
}
.case-sidebar .case-nav a:hover {
    color: white;
    background: rgba(255,255,255,.07);
    text-decoration: none;
    transform: translateX(2px);
}
.case-sidebar .case-nav a.active {
    color: white;
    background: var(--view-accent);
    border-color: rgba(255,255,255,.1);
    box-shadow: 0 8px 20px rgba(0,0,0,.18);
}
.case-nav-icon {
    flex: 0 0 20px;
    width: 20px;
    height: 20px;
    display: grid;
    place-items: center;
}
.case-nav-icon svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}
.case-sidebar-details {
    display: grid;
    gap: 10px;
    margin-top: 16px;
    padding: 14px 12px 2px;
    border-top: 1px solid rgba(255,255,255,.1);
}
.case-sidebar-details div { display: grid; gap: 2px; min-width: 0; }
.case-sidebar-details span {
    color: #8fa0ba;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.case-sidebar-details strong {
    color: #e8eef7;
    font-size: 12px;
    line-height: 1.35;
    overflow-wrap: anywhere;
}

.case-workspace-main { min-width: 0; }
.case-workspace-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 22px;
    min-height: 104px;
    margin-bottom: 16px;
    padding: 17px 20px 17px 22px;
    background:
        linear-gradient(105deg, var(--view-accent-soft), rgba(255,255,255,.96) 48%),
        white;
    border: 1px solid var(--workspace-border);
    border-left: 5px solid var(--view-accent);
    border-radius: 17px;
    box-shadow: 0 7px 22px rgba(15,23,42,.055);
}
.case-workspace-eyebrow {
    display: block;
    margin-bottom: 4px;
    color: var(--view-accent);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .11em;
    text-transform: uppercase;
}
.case-workspace-toolbar h2 {
    margin: 0;
    font-size: clamp(24px, 2.2vw, 32px);
    line-height: 1.08;
    letter-spacing: -.035em;
}
.case-workspace-toolbar p {
    max-width: 760px;
    margin: 7px 0 0;
    color: var(--muted);
    font-size: 14px;
}
.case-toolbar-actions {
    display: flex;
    align-items: center;
    gap: 9px;
    flex: 0 0 auto;
}
.case-primary-content {
    display: grid;
    gap: 16px;
    min-width: 0;
}
.case-primary-content > * { margin-top: 0 !important; margin-bottom: 0 !important; }
.case-primary-content > .page-head {
    margin: 0;
    padding: 16px 18px;
    background: rgba(255,255,255,.72);
    border: 1px solid var(--workspace-border);
    border-radius: 15px;
}
.case-primary-content > .page-head h2 { font-size: 21px; }
.case-primary-content > .page-head p { max-width: 850px; font-size: 14px; }

.case-workspace-page .card {
    border-color: var(--workspace-border);
    border-radius: 15px;
    box-shadow: 0 5px 18px rgba(15,23,42,.045);
    overflow: hidden;
}
.case-workspace-page .card-head {
    padding: 16px 18px;
    background: linear-gradient(180deg, #fbfcfe, #f7f9fc);
    border-bottom-color: #e2e8f0;
}
.case-workspace-page .card-head h2 { font-size: 18px; line-height: 1.25; }
.case-workspace-page .card-head p { margin-top: 3px; font-size: 13px; }
.case-workspace-page .card-body { padding: 18px; }
.case-workspace-page .card.pad { padding: 18px; }
.case-workspace-page .record {
    background: #f8fafc;
    border-color: #e2e8f0;
}
.case-workspace-page .empty {
    background: #f7f9fc;
    border: 1px dashed #cad5e1;
    border-radius: 12px;
}
.case-workspace-page .table-wrap {
    max-width: 100%;
    border-radius: inherit;
    background: white;
}
.case-workspace-page table thead th {
    position: sticky;
    top: 0;
    z-index: 1;
    background: #edf2f7;
    color: #46566b;
}

.case-context-rail {
    position: sticky;
    top: 90px;
    display: grid;
    gap: 13px;
    max-height: calc(100vh - 108px);
    overflow: auto;
    scrollbar-width: thin;
}
.case-rail-card {
    padding: 15px;
    background: rgba(255,255,255,.86);
    border: 1px solid var(--workspace-border);
    border-radius: 15px;
    box-shadow: 0 5px 18px rgba(15,23,42,.045);
    backdrop-filter: blur(8px);
}
.case-rail-card--urgent {
    background: linear-gradient(145deg, #fff6f6, #fff);
    border-color: #efc7ca;
}
.case-rail-card h3 {
    margin: 0 0 11px;
    font-size: 13px;
    letter-spacing: .01em;
}
.case-rail-card p {
    margin: 10px 0 0;
    color: var(--muted);
    font-size: 12px;
    line-height: 1.45;
}
.case-rail-card time {
    display: block;
    margin: 12px 0 7px;
    color: #39485b;
    font-size: 13px;
    font-weight: 800;
}
.case-rail-card > a { font-size: 12px; font-weight: 800; }
.case-rail-heading {
    display: grid;
    grid-template-columns: 34px minmax(0,1fr);
    gap: 10px;
    align-items: start;
}
.case-rail-heading div { min-width: 0; }
.case-rail-heading div > span {
    display: block;
    color: var(--muted);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.case-rail-heading strong {
    display: block;
    margin-top: 3px;
    font-size: 13px;
    line-height: 1.35;
    overflow-wrap: anywhere;
}
.case-rail-icon {
    width: 34px;
    height: 34px;
    display: grid;
    place-items: center;
    border-radius: 10px;
    background: #fee7e8;
    color: #a51f28;
    font-weight: 900;
}
.case-rail-icon--event { background: #e8f2ff; color: #245d9a; }
.case-rail-actions { display: grid; gap: 7px; }
.case-rail-actions a,
.case-rail-actions button {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 39px;
    padding: 8px 10px;
    color: #2e3c50;
    background: #f6f8fb;
    border: 1px solid #e1e7ee;
    border-radius: 10px;
    text-align: left;
    font-size: 12px;
    font-weight: 800;
}
.case-rail-actions a:hover,
.case-rail-actions button:hover {
    color: var(--view-accent);
    background: var(--view-accent-soft);
    border-color: #c8d3df;
    text-decoration: none;
}
.case-rail-actions span {
    width: 22px;
    height: 22px;
    display: grid;
    place-items: center;
    flex: 0 0 22px;
    border-radius: 7px;
    color: white;
    background: var(--view-accent);
    font-size: 16px;
    line-height: 1;
}
.case-rail-stats {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 8px;
}
.case-rail-stats a {
    display: grid;
    gap: 3px;
    padding: 10px;
    color: var(--ink);
    background: #f6f8fb;
    border: 1px solid #e1e7ee;
    border-radius: 10px;
}
.case-rail-stats a:hover { background: var(--view-accent-soft); text-decoration: none; }
.case-rail-stats strong { font-size: 20px; line-height: 1; }
.case-rail-stats span { color: var(--muted); font-size: 10px; }

.case-overview-dashboard {
    display: grid;
    grid-template-columns: repeat(12, minmax(0, 1fr));
    gap: 16px;
    min-width: 0;
}
.case-overview-dashboard > * { min-width: 0; margin: 0 !important; }
.overview-case-brain-card { grid-column: 1 / -1; border-top: 4px solid #7b4caa !important; }
.overview-procedure-card { grid-column: 1 / -1; border-top: 4px solid #315f99 !important; }
.overview-issues-card { grid-column: span 5; border-top: 4px solid var(--accent) !important; }
.overview-issues-card--wide { grid-column: 1 / -1; }
.overview-positions-card { grid-column: span 7; border-top: 4px solid #7b4caa !important; }
.case-stat-grid { grid-column: 1 / -1; gap: 12px; }
.overview-roadmap-card { grid-column: 1 / -1; border-top: 4px solid #2e7a52 !important; }
.overview-operations-grid { grid-column: span 6; grid-template-columns: 1fr; gap: 12px; }
.overview-recent-grid { grid-column: span 6; grid-template-columns: 1fr; gap: 12px; }
.overview-case-information { grid-column: 1 / -1; border-left: 4px solid #7a889a !important; }
.case-stat-grid .stat {
    position: relative;
    overflow: hidden;
    padding: 15px 16px;
    background: linear-gradient(145deg, #fff, #f7f9fc);
    border-color: var(--workspace-border);
    border-radius: 13px;
}
.case-stat-grid .stat::after {
    content: "";
    position: absolute;
    right: -18px;
    bottom: -24px;
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: var(--view-accent-soft);
}
.case-stat-grid .stat strong { position: relative; z-index: 1; font-size: 25px; }
.case-stat-grid .stat span { position: relative; z-index: 1; margin-top: 5px; }
.overview-operations-grid .card-body,
.overview-recent-grid .card-body {
    max-height: 294px;
    overflow: auto;
}
.workspace-disclosure {
    margin-top: 15px;
    border: 1px solid #dce4ed;
    border-radius: 12px;
    background: #f8fafc;
}
.workspace-disclosure > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 12px 14px;
    cursor: pointer;
    font-weight: 800;
    list-style: none;
}
.workspace-disclosure > summary::-webkit-details-marker { display: none; }
.workspace-disclosure > summary::after {
    content: "+";
    width: 25px;
    height: 25px;
    display: grid;
    place-items: center;
    flex: 0 0 25px;
    border-radius: 8px;
    color: #315f99;
    background: #e8f1fb;
    font-size: 18px;
}
.workspace-disclosure[open] > summary::after { content: "−"; }
.workspace-disclosure > summary small { margin-left: auto; color: var(--muted); font-weight: 700; }
.workspace-disclosure-content { padding: 0 14px 14px; }
.overview-positions-card .card-body { padding: 15px; }
.overview-positions-card .compact-position-grid { grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 10px; }
.overview-positions-card .position-summary-card { padding: 13px; background: #faf8fd; }
.overview-issues-card .record { background: #fff8f8; }

.case-card-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 14px;
}
.case-card-grid > .empty { grid-column: 1 / -1; }
.party-card-grid { grid-template-columns: repeat(auto-fit, minmax(min(100%, 460px), 1fr)); }
.party-card-grid > .card { border-top: 3px solid #6f91b8; }
.entity-card-grid > .record {
    min-width: 0;
    padding: 16px;
    background: white;
    border-radius: 14px;
    box-shadow: 0 4px 14px rgba(15,23,42,.035);
}
.case-primary-content--documents > .card,
.case-primary-content--calendar > .card,
.case-primary-content--timeline > .card { min-width: 0; }
.case-primary-content--documents .table-wrap,
.case-primary-content--calendar .table-wrap,
.case-primary-content--timeline .table-wrap { max-height: calc(100vh - 210px); overflow: auto; }
.case-primary-content--parties .children-compact-grid { gap: 14px; }
.case-primary-content--parties .child-profile-card {
    background: white;
    border-top: 3px solid #16868c;
    box-shadow: 0 5px 17px rgba(15,23,42,.045);
}
.case-primary-content--calendar > .grid.two { gap: 14px; }
.case-primary-content--timeline .timeline { margin-top: 0; }

@media (max-width: 1279px) {
    .case-workspace-grid { grid-template-columns: minmax(205px, 232px) minmax(0,1fr); }
    .case-context-rail { display: none; }
}
@media (max-width: 1040px) {
    .case-workspace-grid { grid-template-columns: 190px minmax(0,1fr); gap: 14px; }
    .case-sidebar { padding-inline: 10px; }
    .case-sidebar-identity { padding-inline: 10px; }
    .case-sidebar .case-nav a { padding-inline: 9px; gap: 9px; }
    .case-overview-dashboard { grid-template-columns: repeat(6, minmax(0,1fr)); }
    .overview-issues-card,
    .overview-positions-card,
    .overview-operations-grid,
    .overview-recent-grid { grid-column: 1 / -1; }
    .overview-positions-card .compact-position-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .case-card-grid { grid-template-columns: 1fr; }
}
@media (max-width: 820px) {
    .case-workspace-page .site-main { padding-top: 12px; }
    .case-workspace-page .site-main > .shell { padding-inline: 10px; }
    .case-workspace-grid { grid-template-columns: 1fr; gap: 12px; }
    .case-sidebar {
        position: static;
        max-height: none;
        padding: 12px;
        border-radius: 16px;
    }
    .case-sidebar-back { display: none; }
    .case-sidebar-identity {
        display: grid;
        grid-template-columns: minmax(0,1fr) auto;
        gap: 4px 12px;
        align-items: center;
        margin: 0 0 10px;
        padding: 11px 12px;
    }
    .case-sidebar-status-row { grid-column: 2; grid-row: 1; margin: 0; }
    .case-sidebar-identity h1 { grid-column: 1; grid-row: 1; font-size: 17px; }
    .case-sidebar-identity p { grid-column: 1 / -1; margin-top: 2px; }
    .case-sidebar .case-nav {
        display: flex;
        gap: 6px;
        overflow-x: auto;
        padding-bottom: 2px;
        scrollbar-width: none;
    }
    .case-sidebar .case-nav::-webkit-scrollbar { display: none; }
    .case-sidebar .case-nav a {
        flex: 0 0 auto;
        min-height: 39px;
        padding: 8px 10px;
        white-space: nowrap;
    }
    .case-sidebar .case-nav a:hover { transform: none; }
    .case-sidebar-details { display: none; }
    .case-workspace-toolbar { min-height: 0; margin-bottom: 12px; padding: 15px 16px; }
    .case-workspace-toolbar h2 { font-size: 23px; }
    .case-toolbar-actions .badge { display: none; }
    .case-primary-content > .page-head { padding: 14px; }
    .case-overview-dashboard { grid-template-columns: 1fr; }
    .case-overview-dashboard > *,
    .overview-issues-card,
    .overview-positions-card,
    .overview-operations-grid,
    .overview-recent-grid { grid-column: 1; }
    .overview-positions-card .compact-position-grid { grid-template-columns: 1fr; }
    .case-stat-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
    .workspace-disclosure-content { grid-template-columns: 1fr; }
}
@media (max-width: 580px) {
    .case-workspace-toolbar { align-items: flex-start; }
    .case-workspace-toolbar p { font-size: 13px; }
    .case-toolbar-actions { display: none; }
    .case-sidebar-identity { grid-template-columns: 1fr; }
    .case-sidebar-status-row { grid-column: 1; grid-row: auto; }
    .case-sidebar-identity h1 { grid-column: 1; grid-row: auto; }
    .case-sidebar .case-nav-label { display: none; }
    .case-sidebar .case-nav a { width: 40px; justify-content: center; padding-inline: 8px; }
    .case-sidebar .case-nav-icon { flex-basis: 20px; }
    .case-primary-content > .page-head { align-items: stretch; }
    .case-primary-content > .page-head .button,
    .case-primary-content > .page-head .button-row { width: 100%; }
    .case-primary-content > .page-head .button-row { display: grid; }
    .case-stat-grid { gap: 8px; }
    .case-stat-grid .stat { padding: 13px; }
    .case-card-grid { gap: 10px; }
    .workspace-disclosure > summary small { display: none; }
}

/* v1.4.2 merged motion workspace — reuse the case command-centre shell */
.motion-case-workspace-grid {
    --view-accent: #bd6b0b;
    --view-accent-soft: #fff6e7;
}
.motion-workspace-column { min-width: 0; }
.motion-workspace-toolbar {
    align-items: flex-start;
    min-height: 0;
}
.motion-workspace-toolbar > div:first-child { min-width: 0; }
.motion-workspace-toolbar h2 {
    max-width: 820px;
    overflow-wrap: anywhere;
}
.motion-toolbar-badges { margin: 11px 0 0; }
.motion-toolbar-actions {
    align-items: stretch;
    flex-direction: column;
    min-width: 176px;
}
.motion-toolbar-actions form,
.motion-toolbar-actions .button { width: 100%; }
.motion-toolbar-actions .button { justify-content: center; }
.motion-section-nav {
    position: sticky;
    top: 78px;
    z-index: 8;
    display: flex;
    gap: 6px;
    margin-bottom: 16px;
    padding: 7px;
    overflow-x: auto;
    background: rgba(255,255,255,.94);
    border: 1px solid var(--workspace-border);
    border-radius: 14px;
    box-shadow: 0 5px 18px rgba(15,23,42,.05);
    backdrop-filter: blur(10px);
    scrollbar-width: thin;
}
.motion-section-nav a {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 37px;
    padding: 7px 11px;
    color: #46566b;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 800;
    white-space: nowrap;
}
.motion-section-nav a:hover {
    color: #8a4a05;
    background: var(--view-accent-soft);
    text-decoration: none;
}
.motion-section-nav a span {
    min-width: 22px;
    padding: 2px 6px;
    color: #8a4a05;
    background: #ffebc7;
    border-radius: 99px;
    font-size: 10px;
    text-align: center;
}
.motion-workspace-page .motion-workspace-main {
    display: grid;
    gap: 16px;
    min-width: 0;
}
.motion-workspace-page .motion-section-card {
    margin: 0;
    overflow: visible;
    scroll-margin-top: 132px;
}
.motion-workspace-page .motion-deadline-rail {
    top: 90px;
    gap: 13px;
    max-height: calc(100vh - 108px);
}
.motion-workspace-page .motion-deadline-card {
    padding: 15px;
    background: rgba(255,255,255,.88);
    border-color: var(--workspace-border);
    border-radius: 15px;
    box-shadow: 0 5px 18px rgba(15,23,42,.045);
}
.motion-workspace-page .motion-deadline-card .empty {
    margin: 0;
    padding: 12px;
}
.motion-rail-facts {
    display: grid;
    gap: 9px;
    margin-top: 12px;
}
.motion-rail-facts > div {
    display: grid;
    gap: 2px;
    padding-top: 9px;
    border-top: 1px solid #e4e9ef;
}
.motion-rail-facts span {
    color: var(--muted);
    font-size: 10px;
    font-weight: 850;
    letter-spacing: .07em;
    text-transform: uppercase;
}
.motion-rail-facts strong {
    color: #334155;
    font-size: 12px;
    line-height: 1.4;
}
.motion-parties-card .motion-party-mini { padding: 9px 0; }
.motion-parties-card p { margin-top: 9px; }
.motion-workspace-page .motion-rail-heading h2 { font-size: 17px; }
.motion-workspace-page .motion-requirement {
    background: #fbfcfe;
    border-color: #e1e7ee;
}
.motion-workspace-page .motion-document-dialog { z-index: 1000; }

@media (max-width: 1279px) {
    .motion-case-workspace-grid > .motion-deadline-rail {
        position: static;
        display: grid;
        grid-column: 2;
        grid-template-columns: repeat(2, minmax(0,1fr));
        max-height: none;
        overflow: visible;
    }
    .motion-case-workspace-grid > .motion-deadline-rail .motion-completed-card { grid-column: 1 / -1; }
}
@media (max-width: 1040px) {
    .motion-toolbar-actions { min-width: 158px; }
    .motion-case-workspace-grid > .motion-deadline-rail { grid-template-columns: 1fr; }
    .motion-case-workspace-grid > .motion-deadline-rail .motion-completed-card { grid-column: auto; }
}
@media (max-width: 820px) {
    .motion-case-workspace-grid > .motion-deadline-rail { grid-column: 1; }
    .motion-section-nav { top: 8px; margin-bottom: 12px; }
    .motion-workspace-toolbar { gap: 14px; }
    .motion-toolbar-actions { min-width: 152px; }
}
@media (max-width: 680px) {
    .motion-workspace-toolbar { display: grid; }
    .motion-toolbar-actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
        width: 100%;
    }
    .motion-toolbar-actions form { min-width: 0; }
    .motion-workspace-page .motion-section-head { align-items: stretch; }
}
@media (max-width: 480px) {
    .motion-toolbar-actions { grid-template-columns: 1fr; }
    .motion-section-nav a { padding-inline: 9px; }
}

/* Queued, hierarchical motion analysis */
.motion-analysis-queue-card {
    margin: 16px 0 0;
    padding: 16px 18px;
    border: 1px solid var(--border, #d9e0e8);
    border-radius: 16px;
    background: #f8fafc;
    box-shadow: 0 10px 28px rgba(15, 23, 42, .05);
}
.motion-analysis-queue-card.accent { border-color: #b8cff5; background: #f4f8ff; }
.motion-analysis-queue-card.success { border-color: #b8dec9; background: #f4fbf7; }
.motion-analysis-queue-card.warning { border-color: #ead59f; background: #fffaf0; }
.motion-analysis-queue-card.danger { border-color: #efb8b8; background: #fff6f6; }
.motion-analysis-queue-head,
.motion-analysis-progress-meta {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
}
.motion-analysis-queue-head h3 { margin: 2px 0 4px; }
.motion-analysis-queue-head p { margin: 0; color: var(--muted, #64748b); }
.motion-analysis-progress {
    height: 9px;
    margin: 14px 0 9px;
    overflow: hidden;
    border-radius: 999px;
    background: rgba(100, 116, 139, .18);
}
.motion-analysis-progress > span {
    display: block;
    height: 100%;
    min-width: 2px;
    border-radius: inherit;
    background: linear-gradient(90deg, #315f9d, #5285c8);
    transition: width .35s ease;
}
.motion-analysis-progress-meta {
    font-size: .82rem;
    color: var(--muted, #64748b);
}
.motion-analysis-cancel-form { margin-top: 10px; }
.motion-analysis-error { margin: 10px 0 0; color: #a11b1b; font-size: .88rem; }
@media (max-width: 680px) {
    .motion-analysis-queue-head,
    .motion-analysis-progress-meta { display: block; }
    .motion-analysis-progress-meta span { display: block; margin-top: 4px; }
}
.motion-analysis-warnings {
    margin-top: 12px;
    padding: 11px 13px;
    border: 1px solid #ead59f;
    border-radius: 12px;
    background: rgba(255, 250, 240, .9);
    color: #6f4f0d;
    font-size: .86rem;
}
.motion-analysis-warnings strong { display: block; margin-bottom: 5px; }
.motion-analysis-warnings ul { margin: 0; padding-left: 20px; }
.motion-analysis-warnings li + li { margin-top: 4px; }
.motion-analysis-warnings li span { font-weight: 700; }

@media (max-width:760px) {
  .motion-classification-health { align-items:flex-start; flex-direction:column; }
  .motion-classification-health-counts { justify-content:flex-start; width:100%; }
}

/* v1.5.0 Case Brain, guided pathway, and knowledge library */
.case-view-brain { --view-accent:#3758a5; --view-accent-soft:#eef3ff; }
.case-view-guidance { --view-accent:#9a4c16; --view-accent-soft:#fff4eb; }
.case-view-learning { --view-accent:#3f6f4f; --view-accent-soft:#eef8f1; }
.brain-tabs {
    display:flex; gap:6px; margin:0 0 16px; padding:7px; overflow-x:auto;
    background:rgba(255,255,255,.92); border:1px solid var(--workspace-border); border-radius:14px;
    box-shadow:0 5px 18px rgba(15,23,42,.045); scrollbar-width:thin;
}
.brain-tabs a { flex:0 0 auto; padding:8px 12px; border-radius:9px; color:#526176; font-size:13px; font-weight:800; }
.brain-tabs a:hover,.brain-tabs a.active { color:var(--view-accent); background:var(--view-accent-soft); text-decoration:none; }
.brain-stat-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.brain-stat { display:grid; gap:5px; min-width:0; padding:17px; color:var(--ink); background:white; border:1px solid var(--workspace-border); border-radius:15px; box-shadow:0 5px 18px rgba(15,23,42,.04); }
.brain-stat:hover { text-decoration:none; border-color:#b7c8df; transform:translateY(-1px); }
.brain-stat strong { font-size:29px; line-height:1; color:var(--view-accent); }
.brain-stat span { font-weight:850; }
.brain-stat small { color:var(--muted); line-height:1.35; }
.brain-stat.needs-review { border-color:#efc7a4; background:#fffaf3; }
.brain-stat.needs-review strong { color:#a85612; }
.brain-command-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:14px; }
.brain-command-grid > div { padding:16px; border:1px solid #e1e7ee; border-radius:13px; background:#f8fafc; }
.brain-command-grid p { min-height:64px; margin:7px 0 14px; color:var(--muted); font-size:13px; }
.brain-run-summary { margin-top:15px; padding:14px; border:1px solid #cbd9ed; border-radius:13px; background:#f5f8ff; }
.brain-run-summary.warning { border-color:#e6cf9a; background:#fffaf0; }
.brain-run-summary > div:first-child { display:grid; gap:2px; }
.brain-run-summary span,.brain-run-summary small { color:var(--muted); font-size:12px; }
.brain-progress { height:9px; margin:10px 0 7px; overflow:hidden; background:#dce5ef; border-radius:999px; }
.brain-progress span { display:block; height:100%; min-width:2px; background:linear-gradient(90deg,#315f9d,#5d8fd0); border-radius:inherit; transition:width .35s ease; }
.brain-principles { margin:0; padding-left:20px; }
.brain-principles li+li { margin-top:9px; }
.brain-editor { margin-bottom:16px; border:1px solid #dce4ec; border-radius:13px; background:#fbfcfe; }
.brain-editor > summary { padding:13px 15px; font-weight:850; cursor:pointer; }
.brain-editor > form { padding:0 15px 16px; }
.brain-check-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 14px; }
.brain-filter-bar { display:grid; grid-template-columns:minmax(180px,1.5fr) repeat(3,minmax(130px,.7fr)) auto; gap:9px; margin-bottom:16px; align-items:end; }
.brain-filter-bar input,.brain-filter-bar select { min-height:40px; }
.brain-fact-list { display:grid; gap:12px; }
.brain-fact-card { padding:17px; border:1px solid #dfe6ed; border-left:5px solid #94a3b8; border-radius:14px; background:white; }
.brain-fact-card.unreviewed { border-left-color:#d88722; background:#fffdf9; }
.brain-fact-card.confirmed { border-left-color:#2d8754; }
.brain-fact-card.corrected { border-left-color:#3e6db1; }
.brain-fact-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.brain-fact-statement { margin:13px 0 10px; font-size:16px; font-weight:700; line-height:1.5; }
.brain-chip-row { display:flex; flex-wrap:wrap; gap:6px; margin:10px 0; }
.brain-chip-row span,.brain-chip-row a { display:inline-flex; padding:4px 8px; color:#46566b; background:#edf2f7; border-radius:999px; font-size:11px; font-weight:750; }
.brain-source-list { margin-top:10px; padding:9px 11px; border:1px solid #e2e8f0; border-radius:10px; background:#f8fafc; }
.brain-source-list summary { cursor:pointer; font-weight:800; font-size:13px; }
.brain-source-list > div { margin-top:10px; padding-top:10px; border-top:1px solid #e2e8f0; }
.brain-source-list small { display:block; color:var(--muted); }
.brain-source-list blockquote { margin:8px 0 0; padding:9px 11px; background:white; border-left:3px solid #94a3b8; font-size:13px; }
.brain-inline-actions { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; margin-top:13px; padding-top:12px; border-top:1px solid #e5eaf0; }
.brain-inline-actions form { display:grid; grid-template-columns:minmax(110px,1fr) minmax(110px,1fr) auto; gap:7px; align-items:center; }
.brain-inline-actions select { min-height:36px; padding-block:6px; }
.brain-evidence-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.brain-evidence-card { padding:16px; border:1px solid #dfe6ed; border-radius:14px; background:#fff; }
.brain-evidence-card h3 { margin:12px 0 7px; }
.brain-evidence-card p { color:#46566b; }
.brain-issue-card .card-body { display:grid; gap:14px; }
.brain-issue-summary { display:flex; gap:10px; flex-wrap:wrap; }
.brain-issue-summary span { padding:9px 12px; background:#f2f5f9; border-radius:10px; font-size:13px; }
.brain-element-list { display:grid; gap:9px; }
.brain-element-list article { display:grid; grid-template-columns:minmax(0,1fr) 210px; gap:14px; align-items:center; padding:14px; border:1px solid #e1e7ed; border-radius:12px; background:#fbfcfe; }
.brain-element-list h3 { margin:7px 0 3px; font-size:15px; }
.brain-element-list p { margin:0 0 5px; color:var(--muted); font-size:13px; }
.brain-element-list form { display:grid; gap:7px; }
.brain-conflict-card { padding:16px; border:1px solid #efccca; border-radius:14px; background:#fffafa; }
.brain-conflict-pair { display:grid; grid-template-columns:1fr auto 1fr; gap:12px; align-items:center; margin:12px 0; }
.brain-conflict-pair blockquote { margin:0; padding:12px; background:white; border:1px solid #e4e8ed; border-radius:10px; }
.brain-conflict-pair > span { color:var(--danger); font-size:11px; font-weight:900; text-transform:uppercase; }
.brain-conflict-form { display:grid; grid-template-columns:220px minmax(0,1fr) auto; gap:9px; align-items:end; }
.brain-conflict-form textarea { min-height:72px; }
.brain-document-state-list { display:grid; gap:10px; margin-top:16px; }
.brain-document-state-list article { padding:14px; border:1px solid #e0e6ed; border-radius:12px; background:#fbfcfe; }
.brain-document-state-list article > div:first-child { display:flex; justify-content:space-between; gap:10px; }
.brain-document-state-list p { margin:9px 0; }
.brain-document-state-list ul { margin:8px 0; color:#8a4b08; font-size:13px; }
.brain-rail-metrics { display:grid; gap:8px; }
.brain-rail-metrics span { display:flex; justify-content:space-between; gap:8px; padding-bottom:7px; border-bottom:1px solid #e3e8ee; color:var(--muted); font-size:12px; }
.brain-rail-metrics strong { color:var(--ink); }
.case-rail-card .button + .button { margin-top:8px; }
.guidance-five { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; margin:12px 0; }
.guidance-five span { padding:11px; text-align:center; font-size:12px; font-weight:850; background:var(--view-accent-soft); border-radius:10px; }
.guidance-list { display:grid; gap:10px; }
.guidance-step { position:relative; display:grid; grid-template-columns:16px minmax(0,1fr); gap:12px; padding:15px; border:1px solid #e1e7ed; border-radius:13px; background:#fff; }
.guidance-step-marker { width:12px; height:12px; margin-top:5px; border:3px solid #94a3b8; border-radius:50%; background:white; }
.guidance-step.urgency-critical { border-color:#e9b9bd; background:#fff8f8; }
.guidance-step.urgency-critical .guidance-step-marker { border-color:#b3262e; }
.guidance-step.urgency-high .guidance-step-marker { border-color:#c46b19; }
.guidance-step--completed { opacity:.78; background:#f5fbf7; }
.guidance-step--completed .guidance-step-marker { border-color:#2d8754; background:#2d8754; }
.guidance-step-content h3 { margin:10px 0 4px; font-size:16px; }
.guidance-step-content p { margin:0; color:#526176; }
.guidance-step-actions { display:flex; flex-wrap:wrap; gap:9px; margin-top:12px; }
.guidance-step-actions form { display:flex; gap:7px; }
.guidance-step-actions select { min-height:36px; }
.guidance-completion-note { margin-top:8px !important; padding:8px 10px; background:#eef7f1; border-radius:8px; font-size:13px; }
.knowledge-authority-key { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:8px; }
.knowledge-authority-key span { display:flex; gap:7px; align-items:center; padding:9px; background:white; border:1px solid #dfe6ed; border-radius:10px; font-size:11px; font-weight:750; }
.knowledge-authority-key strong,.knowledge-rank { display:grid; place-items:center; width:24px; height:24px; flex:0 0 24px; color:white; background:var(--view-accent); border-radius:7px; }
.knowledge-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.knowledge-card { display:flex; flex-direction:column; padding:17px; border:1px solid #dfe6ed; border-top:5px solid #64748b; border-radius:14px; background:white; }
.knowledge-card.authority-1 { border-top-color:#7b1f25; }
.knowledge-card.authority-2 { border-top-color:#315f9d; }
.knowledge-card.authority-3 { border-top-color:#2d7b4f; }
.knowledge-card.authority-4 { border-top-color:#9a6217; }
.knowledge-card.authority-5 { border-top-color:#6b5a8c; }
.knowledge-card-top { display:flex; gap:10px; align-items:center; }
.knowledge-card h2 { margin:13px 0 3px; font-size:18px; line-height:1.3; }
.knowledge-publisher { margin:0 0 9px; color:var(--muted); font-size:13px; font-weight:750; }
.knowledge-actions { display:grid; grid-template-columns:auto minmax(0,1fr); gap:9px; align-items:end; margin-top:auto; padding-top:14px; }
.knowledge-actions form { display:grid; grid-template-columns:minmax(110px,1fr) auto auto; gap:7px; align-items:center; }

@media (max-width:1100px) {
    .brain-command-grid,.brain-stat-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .brain-filter-bar { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .brain-inline-actions { grid-template-columns:1fr; }
    .knowledge-authority-key { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:820px) {
    .brain-evidence-grid,.knowledge-grid { grid-template-columns:1fr; }
    .guidance-five { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .brain-element-list article { grid-template-columns:1fr; }
    .brain-conflict-pair { grid-template-columns:1fr; }
    .brain-conflict-pair > span { text-align:center; }
    .brain-conflict-form { grid-template-columns:1fr; }
    .knowledge-authority-key { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:580px) {
    .brain-stat-grid,.brain-command-grid,.brain-check-grid,.brain-filter-bar,.knowledge-authority-key { grid-template-columns:1fr; }
    .brain-inline-actions form,.knowledge-actions,.knowledge-actions form { grid-template-columns:1fr; }
    .guidance-five { grid-template-columns:1fr; }
    .guidance-step-actions,.guidance-step-actions form { display:grid; grid-template-columns:1fr; width:100%; }
}


/* Motion document targeted retry */
.motion-analysis-warning-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
}
.motion-analysis-warning-item > div { min-width: 0; }
.motion-analysis-retry-form,
.motion-document-retry-form {
    display: inline-flex;
    margin: 0;
    flex: 0 0 auto;
}
.motion-document-state .motion-document-retry-form .button {
    min-height: 28px;
    padding: 4px 9px;
}
@media (max-width: 720px) {
    .motion-analysis-warning-item {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Procedural countdowns and readiness */
.procedure-readiness-banner {
    display:grid;
    grid-template-columns:auto minmax(0,1fr) auto auto;
    align-items:center;
    gap:16px;
    margin:0 0 16px;
    padding:14px 16px;
    border:1px solid #dbe3ec;
    border-left:5px solid #4b6785;
    border-radius:14px;
    background:#f7f9fc;
    box-shadow:0 8px 22px rgba(24,39,58,.05);
}
.procedure-readiness-banner.critical { border-color:#e6b5ba; border-left-color:#a91e29; background:#fff7f8; }
.procedure-readiness-banner.high { border-color:#edca9e; border-left-color:#b9640e; background:#fffaf1; }
.procedure-readiness-banner.warning { border-color:#ead7a4; border-left-color:#967016; background:#fffdf3; }
.procedure-readiness-banner-date { display:grid; min-width:112px; padding-right:15px; border-right:1px solid #dce3ea; }
.procedure-readiness-banner-date span,.procedure-readiness-banner-copy > span { color:#68768a; font-size:10px; font-weight:900; letter-spacing:.09em; text-transform:uppercase; }
.procedure-readiness-banner-date strong { margin-top:3px; font-size:13px; }
.procedure-readiness-banner-copy { min-width:0; }
.procedure-readiness-banner-copy strong { display:block; margin:3px 0; font-size:16px; line-height:1.3; }
.procedure-readiness-banner-copy p { margin:0; color:#556478; font-size:13px; }
.procedure-form-chip { display:inline-flex; align-items:center; justify-content:center; min-width:48px; padding:7px 10px; border:1px solid #ccd7e3; border-radius:999px; color:#30465e; background:white; font-size:12px; font-weight:900; white-space:nowrap; }
.procedure-form-chip.small { min-width:0; padding:3px 7px; font-size:10px; }
.procedure-readiness-card { overflow:hidden; }
.procedure-readiness-card-head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }
.procedure-readiness-card-head h2 { margin:3px 0 0; font-size:18px; }
.procedure-readiness-svg { width:86px; height:86px; flex:0 0 86px; transform:rotate(-90deg); }
.procedure-readiness-svg circle { fill:none; stroke-width:4; }
.procedure-readiness-track { stroke:#e3e9ef; }
.procedure-readiness-value { stroke:var(--view-accent, var(--accent)); stroke-linecap:round; }
.procedure-readiness-svg text { fill:#1f2d3d; font-size:7px; font-weight:900; transform:rotate(90deg); transform-origin:20px 20px; }
.procedure-readiness-score-meta,.procedure-readiness-record-score { display:flex; align-items:baseline; justify-content:space-between; gap:10px; margin-top:10px; }
.procedure-readiness-score-meta strong { font-size:17px; }
.procedure-readiness-score-meta span,.procedure-readiness-record-score span { color:var(--muted); font-size:11px; }
.procedure-readiness-record-score { padding:9px 10px; border-radius:9px; background:#eef3f8; }
.procedure-readiness-disclaimer { margin:11px 0 0; color:#68768a; font-size:11px; line-height:1.45; }
.procedure-readiness-list { display:grid; gap:8px; margin-top:13px; }
.procedure-readiness-item { position:relative; padding:13px; border:1px solid #dfe6ed; border-radius:12px; background:#fff; }
.procedure-readiness-list.compact .procedure-readiness-item { padding:11px; }
.procedure-readiness-item.overdue { border-color:#e4b1b6; background:#fff7f8; }
.procedure-readiness-item.open { border-color:#e9ceb0; background:#fffaf4; }
.procedure-readiness-item.needs_review { border-color:#dfd7b1; background:#fffdf5; }
.procedure-readiness-item.completed { border-color:#b9d9c6; background:#f4fbf7; }
.procedure-readiness-item.waiting { background:#f8fafc; }
.procedure-readiness-item-top { display:grid; grid-template-columns:11px minmax(0,1fr); gap:9px; align-items:start; }
.procedure-readiness-item-top > div { display:grid; gap:2px; }
.procedure-readiness-item-top strong { font-size:13px; line-height:1.35; }
.procedure-readiness-item-top span:not(.procedure-status-dot) { color:var(--muted); font-size:10px; font-weight:800; text-transform:uppercase; }
.procedure-status-dot { width:10px; height:10px; margin-top:4px; border:3px solid #8695a6; border-radius:50%; background:#fff; }
.procedure-readiness-item.overdue .procedure-status-dot { border-color:#a91e29; }
.procedure-readiness-item.open .procedure-status-dot { border-color:#b9640e; }
.procedure-readiness-item.needs_review .procedure-status-dot { border-color:#967016; }
.procedure-readiness-item.completed .procedure-status-dot { border-color:#2d8754; background:#2d8754; }
.procedure-readiness-item p { margin:7px 0 0; color:#566579; font-size:12px; line-height:1.45; }
.procedure-readiness-item small { display:block; margin-top:7px; color:var(--muted); }
.procedure-task-form { margin-top:9px; }
.deadline-countdown { display:inline-flex; font-style:normal; width:max-content; max-width:100%; margin-top:7px; padding:4px 7px; border-radius:999px; color:#43546a; background:#edf2f7; font-size:10px; font-weight:900; }
.deadline-countdown.urgency-critical { color:#8f1721; background:#fbe5e7; }
.deadline-countdown.urgency-high { color:#8a4d0d; background:#fcebd6; }
.deadline-countdown.urgency-medium { color:#67540b; background:#fbf4cf; }
.deadline-countdown.urgency-complete { color:#236a42; background:#e4f4ea; }
.motion-deadline-time-row { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; }
.motion-deadline-row.urgency-critical { border-left-color:#a91e29; background:#fff2f3; }
.motion-deadline-row.urgency-high { border-left-color:#b9640e; background:#fff8ee; }
.motion-deadline-row.urgency-medium { border-left-color:#967016; background:#fffcf0; }
.motion-deadline-row.urgency-complete,.motion-deadline-row.completed { border-left-color:#2d8754; background:#f0faf4; opacity:.82; }
.motion-deadline-row .deadline-countdown { margin-top:0; }
.procedure-readiness-workspace { margin:18px 0; padding:20px; }
.procedure-readiness-workspace-head { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; padding-bottom:17px; border-bottom:1px solid #e2e8ef; }
.procedure-readiness-overview { display:flex; align-items:center; gap:16px; }
.procedure-readiness-overview h2 { margin:3px 0; }
.procedure-readiness-overview p { margin:0; color:var(--muted); }
.procedure-readiness-workspace-head > .procedure-readiness-disclaimer { max-width:390px; margin:0; padding:10px 12px; border-radius:10px; background:#f2f5f8; }
.procedure-readiness-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; margin-top:17px; }
.procedure-deadline-record { border-left:4px solid #708198; }
.procedure-deadline-record.urgency-critical { border-left-color:#a91e29; }
.procedure-deadline-record.urgency-high { border-left-color:#b9640e; }
.procedure-deadline-record.urgency-medium { border-left-color:#967016; }
.procedure-deadline-record.urgency-complete { border-left-color:#2d8754; }
.deadline-status-stack { display:grid; justify-items:end; gap:5px; }

@media (max-width:1100px) {
    .procedure-readiness-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
    .procedure-readiness-banner { grid-template-columns:1fr auto; }
    .procedure-readiness-banner-date { grid-column:1; border-right:0; padding-right:0; }
    .procedure-readiness-banner-copy { grid-column:1 / -1; }
    .procedure-readiness-banner .button { grid-column:1 / -1; width:100%; }
    .procedure-readiness-workspace-head { display:grid; }
    .procedure-readiness-grid { grid-template-columns:1fr; }
}
@media (max-width:520px) {
    .procedure-readiness-banner { grid-template-columns:1fr; }
    .procedure-form-chip { justify-self:start; }
    .procedure-readiness-overview { align-items:flex-start; }
    .procedure-readiness-svg { width:72px; height:72px; flex-basis:72px; }
    .motion-deadline-time-row { display:grid; }
}
.procedure-completed-manual { margin-top:12px; padding-top:10px; border-top:1px solid #e2e8ef; }
.procedure-completed-manual summary { cursor:pointer; color:#526176; font-size:11px; font-weight:850; }
.procedure-completed-manual-row { display:flex; align-items:center; justify-content:space-between; gap:8px; margin-top:8px; padding:8px; border-radius:8px; background:#f2f8f4; font-size:11px; }

.badge.critical { color:#8f1721; background:#fbe5e7; }
.badge.high { color:#8a4d0d; background:#fcebd6; }
.badge.medium,.badge.warning { color:#67540b; background:#fbf4cf; }
.badge.complete { color:#236a42; background:#e4f4ea; }

/* v1.6.0 — CivilDocket Document Studio */
.document-studio-list-page,
.document-editor-page,
.document-studio-forms-page { --view-accent:#5a45a2; --view-accent-soft:#f3f0ff; }
.document-studio-list-page .case-workspace-grid,
.document-studio-forms-page .case-workspace-grid { grid-template-columns:minmax(218px,246px) minmax(0,1fr); }

.studio-library-summary {
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:12px;
}
.studio-summary-card {
    display:grid;
    gap:4px;
    min-width:0;
    padding:17px 18px;
    background:linear-gradient(145deg,#fff,#f7f5ff);
    border:1px solid #ddd7f1;
    border-radius:15px;
    box-shadow:0 5px 17px rgba(33,27,67,.045);
}
.studio-summary-card span { color:#685a91; font-size:11px; font-weight:850; letter-spacing:.07em; text-transform:uppercase; }
.studio-summary-card strong { font-size:30px; line-height:1; }
.studio-summary-card small { color:var(--muted); }
.studio-document-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.studio-document-card {
    display:grid;
    align-content:start;
    gap:10px;
    min-width:0;
    padding:17px;
    background:#fff;
    border:1px solid #dce2ea;
    border-top:4px solid #6a55b3;
    border-radius:15px;
    box-shadow:0 6px 19px rgba(15,23,42,.045);
}
.studio-document-card__head { display:flex; justify-content:space-between; align-items:center; gap:9px; }
.studio-document-card h3 { margin:0; font-size:18px; line-height:1.3; }
.studio-document-card h3 a { color:#222b3a; }
.studio-document-card h3 a:hover { color:#5a45a2; text-decoration:none; }
.studio-document-card p { margin:0; }
.studio-card-metrics { display:flex; flex-wrap:wrap; gap:6px; }
.studio-card-metrics span { padding:5px 8px; border-radius:999px; color:#526176; background:#f0f3f7; font-size:10px; font-weight:800; }
.studio-fidelity-warning { padding:9px 10px; color:#76530a; background:#fff8dc; border:1px solid #eddda4; border-radius:9px; font-size:11px; line-height:1.4; }

.document-editor-shell { grid-template-columns:minmax(205px,228px) minmax(560px,1fr) minmax(265px,310px); gap:14px; }
.document-editor-main { min-width:0; }
.document-editor-header {
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:18px;
    margin-bottom:10px;
    padding:15px 17px;
    background:linear-gradient(110deg,var(--view-accent-soft),#fff 52%);
    border:1px solid var(--workspace-border);
    border-left:5px solid var(--view-accent);
    border-radius:15px;
    box-shadow:0 5px 17px rgba(15,23,42,.05);
}
.document-title-row { display:flex; align-items:center; flex-wrap:wrap; gap:9px; }
.document-title-row h2 { margin:0; font-size:clamp(20px,1.8vw,28px); line-height:1.15; }
.document-editor-header p { margin:6px 0 0; color:var(--muted); font-size:12px; }
.document-editor-header-actions { display:flex; align-items:center; gap:10px; flex:0 0 auto; }
.studio-save-state { display:inline-flex; align-items:center; gap:6px; color:#526176; font-size:11px; font-weight:850; white-space:nowrap; }
.studio-save-state::before { content:""; width:8px; height:8px; border-radius:50%; background:#718096; }
.studio-save-state[data-tone="success"]::before { background:#2d8754; }
.studio-save-state[data-tone="warning"]::before { background:#c07a13; }
.studio-save-state[data-tone="error"]::before { background:#b3262e; }
.studio-fidelity-banner { margin:0 0 10px; }
.document-editor-toolbar {
    position:sticky;
    top:78px;
    z-index:20;
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:5px;
    min-height:48px;
    padding:7px 9px;
    background:rgba(255,255,255,.97);
    border:1px solid #d7dee7;
    border-radius:12px 12px 8px 8px;
    box-shadow:0 8px 22px rgba(15,23,42,.08);
    backdrop-filter:blur(8px);
}
.document-editor-toolbar select { width:auto; min-width:125px; min-height:33px; padding:5px 28px 5px 8px; font-size:12px; }
.document-editor-toolbar > button:not(.button) {
    display:grid;
    place-items:center;
    min-width:33px;
    min-height:33px;
    padding:5px 8px;
    color:#354256;
    background:#fff;
    border:1px solid transparent;
    border-radius:7px;
    font-size:12px;
    font-weight:800;
}
.document-editor-toolbar > button:not(.button):hover { background:#f1effa; border-color:#d8d1ee; }
.document-editor-toolbar button:disabled,.document-editor-toolbar select:disabled { opacity:.45; cursor:not-allowed; }
.toolbar-divider { width:1px; height:24px; margin:0 2px; background:#dce2e9; }
.toolbar-spacer { flex:1 1 auto; }
.studio-ruler {
    display:flex;
    justify-content:space-between;
    margin:7px auto 0;
    max-width:816px;
    padding:3px 70px;
    color:#8290a1;
    background:#eef1f5;
    border:1px solid #d9dfe7;
    border-bottom:0;
    border-radius:6px 6px 0 0;
    font-size:9px;
}
.document-page-wrap {
    min-height:calc(100vh - 244px);
    padding:22px clamp(12px,2.3vw,28px) 50px;
    overflow:auto;
    background:#dfe4ea;
    border:1px solid #d1d8e1;
    border-radius:0 0 12px 12px;
}
.studio-page {
    width:min(100%,816px);
    min-height:1056px;
    margin:0 auto;
    padding:72px 72px 82px;
    color:#101318;
    background:#fff;
    border:1px solid #ccd2da;
    box-shadow:0 8px 27px rgba(15,23,42,.16);
    outline:none;
    font-family:Arial,Helvetica,sans-serif;
    font-size:11pt;
    line-height:1.35;
    overflow-wrap:anywhere;
}
.studio-page:focus { border-color:#8c7ac5; box-shadow:0 9px 31px rgba(55,42,105,.2); }
.studio-page p { margin:0 0 10px; min-height:1.2em; }
.studio-page h1 { margin:0 0 18px; font-size:17pt; text-align:center; }
.studio-page h2 { margin:18px 0 9px; font-size:14pt; }
.studio-page h3 { margin:14px 0 7px; font-size:12pt; }
.studio-page blockquote { margin:12px 36px; font-style:italic; }
.studio-page ol,.studio-page ul { margin:8px 0 11px 28px; padding-left:18px; }
.studio-page li { margin:3px 0; }
.studio-page table { width:100%; margin:12px 0; border-collapse:collapse; table-layout:fixed; }
.studio-page th,.studio-page td { min-width:55px; padding:7px 8px; vertical-align:top; border:1px solid #7b8490; }
.studio-page th { background:#f0f2f5; font-weight:700; }
.studio-page-break { display:flex; align-items:center; gap:8px; height:28px; margin:24px -72px; color:#7c8794; border-top:1px dashed #aab3be; border-bottom:1px dashed #aab3be; background:#f5f7f9; font-size:9px; text-transform:uppercase; }
.studio-page-break span { margin-left:72px; }
.document-editor-statusbar { display:flex; justify-content:flex-end; flex-wrap:wrap; gap:16px; padding:7px 10px; color:#647286; font-size:10px; font-weight:750; }
.document-editor-rail {
    position:sticky;
    top:90px;
    display:grid;
    gap:11px;
    max-height:calc(100vh - 106px);
    overflow:auto;
    padding-right:2px;
    scrollbar-width:thin;
}
.studio-tool-card { padding:14px; background:#fff; border:1px solid #dce2e9; border-radius:14px; box-shadow:0 5px 17px rgba(15,23,42,.045); }
.studio-tool-card p { margin:7px 0 11px; color:#5a687b; font-size:12px; line-height:1.45; }
.studio-tool-card label { display:grid; gap:5px; margin-top:9px; color:#445267; font-size:11px; font-weight:800; }
.studio-tool-card textarea,.studio-tool-card input,.studio-tool-card select { font-size:12px; }
.studio-tool-heading { display:flex; justify-content:space-between; align-items:start; gap:8px; }
.studio-tool-heading h3 { margin:2px 0 0; font-size:15px; }
.studio-fact-picker { margin:11px 0; border:1px solid #dfe4ec; border-radius:10px; overflow:hidden; }
.studio-fact-picker summary { padding:9px 10px; cursor:pointer; color:#3c4a5f; background:#f5f7fa; font-size:11px; font-weight:850; }
.studio-fact-picker summary span { float:right; color:#7766ad; }
.studio-fact-list { display:grid; max-height:270px; overflow:auto; }
.studio-fact-option { display:grid !important; grid-template-columns:auto minmax(0,1fr); gap:8px !important; margin:0 !important; padding:9px 10px; border-top:1px solid #e7ebf0; cursor:pointer; }
.studio-fact-option:hover { background:#faf9ff; }
.studio-fact-option input { width:auto; margin-top:2px; }
.studio-fact-option span { display:grid; gap:3px; min-width:0; }
.studio-fact-option strong { font-size:11px; font-weight:750; line-height:1.35; }
.studio-fact-option small { color:#718095; font-size:9px; line-height:1.35; }
.studio-ai-result { margin-top:11px; }
.studio-ai-proposal { display:grid; gap:9px; padding:11px; border:1px solid #d8d0ef; border-radius:10px; background:#faf8ff; }
.studio-ai-text { max-height:245px; overflow:auto; padding:9px; color:#273244; background:#fff; border:1px solid #e2dff0; border-radius:7px; font-size:12px; line-height:1.5; }
.studio-ai-proposal details summary { cursor:pointer; font-size:10px; font-weight:850; }
.studio-ai-proposal ul { margin:7px 0 0; padding-left:17px; }
.studio-ai-proposal li { margin:5px 0; font-size:10px; }
.studio-ai-proposal li small { display:block; color:#738095; }
.studio-version-list { display:grid; gap:7px; margin-top:9px; }
.studio-version-list article { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; padding:8px 0; border-top:1px solid #e8ebef; }
.studio-version-list article:first-child { border-top:0; }
.studio-version-list article > div { display:grid; min-width:0; gap:2px; }
.studio-version-list strong { font-size:11px; }
.studio-version-list small { color:#718095; font-size:9px; }
.studio-version-list p { margin:2px 0 0; font-size:10px; }
.studio-pdf-reference { display:grid; gap:12px; min-height:calc(100vh - 180px); }
.studio-pdf-reference iframe { width:100%; min-height:calc(100vh - 250px); background:#e8ecf1; border:1px solid #cdd5df; border-radius:12px; }
.studio-pdf-actions { display:flex; justify-content:flex-end; gap:9px; }

.court-form-card { align-items:center; }
.court-form-file-actions { display:grid; gap:8px; min-width:min(100%,390px); }
.court-form-file-action { display:grid; grid-template-columns:minmax(75px,auto) minmax(0,1fr); align-items:center; gap:9px; padding:8px 9px; background:#f6f8fb; border:1px solid #e2e7ed; border-radius:10px; }
.court-form-file-action > span { color:#5e6b7d; font-size:10px; font-weight:850; }

@media (max-width:1279px) {
    .document-studio-list-page .case-workspace-grid,
    .document-studio-forms-page .case-workspace-grid { grid-template-columns:minmax(205px,232px) minmax(0,1fr); }
    .document-editor-shell { grid-template-columns:minmax(205px,224px) minmax(0,1fr); }
    .document-editor-rail { position:static; grid-column:2; grid-template-columns:repeat(2,minmax(0,1fr)); max-height:none; overflow:visible; }
}
@media (max-width:1040px) {
    .document-studio-list-page .case-workspace-grid,
    .document-studio-forms-page .case-workspace-grid { grid-template-columns:190px minmax(0,1fr); }
    .document-editor-shell { grid-template-columns:190px minmax(0,1fr); }
    .studio-document-grid { grid-template-columns:1fr; }
    .studio-page { min-height:950px; padding:58px 54px 70px; }
    .studio-page-break { margin-inline:-54px; }
    .studio-page-break span { margin-left:54px; }
}
@media (max-width:820px) {
    .document-studio-list-page .case-workspace-grid,
    .document-studio-forms-page .case-workspace-grid,
    .document-editor-shell { grid-template-columns:1fr; }
    .document-editor-rail { grid-column:1; grid-template-columns:1fr; }
    .document-editor-toolbar { top:0; border-radius:10px; }
    .document-editor-header { display:grid; }
    .document-editor-header-actions { justify-content:space-between; }
    .studio-library-summary { grid-template-columns:repeat(3,minmax(0,1fr)); }
    .document-page-wrap { padding:14px 5px 35px; }
    .studio-ruler { display:none; }
    .studio-page { width:100%; min-height:900px; padding:44px 34px 58px; box-shadow:0 4px 15px rgba(15,23,42,.14); }
    .studio-page-break { margin-inline:-34px; }
    .studio-page-break span { margin-left:34px; }
    .court-form-card { display:grid; }
    .court-form-file-actions { min-width:0; width:100%; }
}
@media (max-width:580px) {
    .studio-library-summary { grid-template-columns:1fr; }
    .document-editor-toolbar { gap:3px; }
    .document-editor-toolbar .toolbar-divider { display:none; }
    .document-editor-toolbar .toolbar-spacer { flex-basis:100%; height:0; }
    .document-editor-toolbar select { flex:1 1 125px; }
    .document-editor-toolbar .button { flex:1 1 calc(50% - 4px); }
    .document-editor-header-actions { display:grid; grid-template-columns:1fr; }
    .studio-page { min-height:780px; padding:34px 22px 46px; font-size:10.5pt; }
    .studio-page-break { margin-inline:-22px; }
    .studio-page-break span { margin-left:22px; }
    .court-form-file-action { grid-template-columns:1fr; }
}

@media print {
    body.document-editor-page { background:#fff !important; }
    .document-editor-page .site-header,
    .document-editor-page .case-sidebar,
    .document-editor-page .document-editor-header,
    .document-editor-page .alert,
    .document-editor-page .document-editor-toolbar,
    .document-editor-page .studio-ruler,
    .document-editor-page .document-editor-statusbar,
    .document-editor-page .document-editor-rail,
    .document-editor-page .site-footer { display:none !important; }
    .document-editor-page .site-main,
    .document-editor-page .site-main > .shell,
    .document-editor-page .document-editor-shell,
    .document-editor-page .document-editor-main,
    .document-editor-page .document-page-wrap { display:block !important; width:auto !important; max-width:none !important; min-height:0 !important; margin:0 !important; padding:0 !important; overflow:visible !important; background:#fff !important; border:0 !important; box-shadow:none !important; }
    .document-editor-page .studio-page { width:auto !important; min-height:0 !important; margin:0 !important; padding:0 !important; border:0 !important; box-shadow:none !important; }
    .document-editor-page .studio-page-break { height:0; margin:0; visibility:hidden; border:0; break-after:page; page-break-after:always; }
    @page { size:letter; margin:.75in; }
}
.studio-import-existing { display:grid; grid-template-columns:minmax(0,1fr) minmax(300px,1.2fr); align-items:end; gap:16px; margin-top:18px; padding-top:16px; border-top:1px solid #e1e5eb; }
.studio-import-existing strong { display:block; font-size:13px; }
.studio-import-existing p { margin:4px 0 0; color:var(--muted); font-size:11px; }
.studio-import-existing form { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; align-items:end; }
.compact-actions { gap:8px; }
@media (max-width:720px) { .studio-import-existing,.studio-import-existing form { grid-template-columns:1fr; } }
.studio-source-link-list { display:grid; gap:7px; margin-top:8px; }
.studio-source-link-list article { display:grid; gap:3px; padding:8px 9px; border-left:3px solid #7561b5; border-radius:7px; background:#f7f5fd; }
.studio-source-link-list strong { font-size:10px; line-height:1.35; }
.studio-source-link-list small { color:#6d7889; font-size:9px; line-height:1.35; }

/* Document Studio draft deletion */
.studio-delete-disclosure {
    margin-top: 12px;
    border-top: 1px solid var(--border, #dfe5ec);
    padding-top: 10px;
}
.studio-delete-disclosure > summary {
    cursor: pointer;
    color: var(--danger, #b42318);
    font-weight: 700;
}
.studio-delete-form {
    display: grid;
    gap: 10px;
    margin-top: 10px;
    padding: 12px;
    border: 1px solid rgba(180, 35, 24, .22);
    border-radius: 12px;
    background: rgba(254, 243, 242, .72);
}
.studio-delete-form p {
    margin: 0;
    color: var(--muted, #5c6675);
    font-size: .92rem;
    line-height: 1.45;
}
.studio-delete-form .checkbox-line {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    font-size: .9rem;
}
.studio-delete-form .checkbox-line input {
    width: auto;
    margin-top: .18rem;
}
.studio-danger-card {
    border-color: rgba(180, 35, 24, .22);
}


/* Document Studio native Ontario form editor */
.native-form-workspace {
    display: grid;
    gap: 16px;
    min-width: 0;
    padding: 18px;
    border: 1px solid var(--border, #dfe5ec);
    border-radius: 16px;
    background: #f5f7fa;
}
.native-form-toolbar {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    padding: 16px 18px;
    border: 1px solid #dce3eb;
    border-radius: 14px;
    background: #fff;
    box-shadow: 0 5px 18px rgba(23, 35, 51, .05);
}
.native-form-toolbar h3 { margin: 3px 0 4px; }
.native-form-toolbar p { max-width: 780px; margin: 0; color: var(--muted, #5c6675); }
.native-form-fields {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
}
.native-form-group {
    min-width: 0;
    overflow: hidden;
    border: 1px solid #d8e0e9;
    border-radius: 14px;
    background: #f8fafc;
}
.native-form-group-prompt {
    display: grid;
    gap: 4px;
    padding: 12px 14px;
    border-bottom: 1px solid #dfe6ee;
    background: #eef4f8;
}
.native-form-group-prompt span {
    color: #526579;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.native-form-group-prompt p {
    margin: 0;
    color: #243246;
    font-size: .9rem;
    font-weight: 650;
    line-height: 1.48;
}
.native-form-group-fields {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    padding: 10px;
}
.native-form-field {
    display: grid;
    align-content: start;
    gap: 7px;
    min-width: 0;
    padding: 14px;
    border: 1px solid #dce3eb;
    border-radius: 12px;
    background: #fff;
    box-shadow: 0 2px 8px rgba(23, 35, 51, .035);
}
.native-form-field--wide { grid-column: 1 / -1; }
.native-form-field > label:not(.native-form-checkbox) {
    color: #243246;
    font-size: .88rem;
    font-weight: 750;
    line-height: 1.35;
}
.native-form-field input[type="text"],
.native-form-field input[type="date"],
.native-form-field select,
.native-form-field textarea {
    width: 100%;
    min-width: 0;
    border-color: #cfd8e3;
    background: #fbfcfe;
}
.native-form-field textarea { resize: vertical; line-height: 1.48; }
.native-form-field small {
    color: var(--muted, #687486);
    font-size: .76rem;
    line-height: 1.4;
}
.native-form-field details { color: var(--muted, #687486); font-size: .73rem; }
.native-form-field details summary { cursor: pointer; }
.native-form-field code { overflow-wrap: anywhere; }
.native-form-checkbox {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    cursor: pointer;
}
.native-form-checkbox input { flex: 0 0 auto; width: 18px; height: 18px; margin-top: 1px; }
.native-form-checkbox span { display: grid; gap: 3px; line-height: 1.35; }
.native-form-checkbox em { color: #8b5b16; font-size: .74rem; font-style: normal; font-weight: 700; }
.native-form-review-badge {
    display: inline-flex;
    align-items: center;
    margin-left: 5px;
    padding: 2px 6px;
    border: 1px solid #ead3a7;
    border-radius: 999px;
    background: #fff8e8;
    color: #855a17;
    font-size: .68rem;
    font-weight: 800;
    vertical-align: middle;
}

.native-form-field--needs-label {
    border-color: #e6c98c;
    background: #fffdf7;
}
.native-form-label-warning {
    color: #805b16 !important;
}
.native-form-diagnostics {
    margin-top: 14px;
    padding: 10px 12px;
    border: 1px solid #dce3eb;
    border-radius: 10px;
    background: #fff;
    color: var(--muted, #687486);
    font-size: .76rem;
}
.native-form-diagnostics summary { cursor: pointer; font-weight: 750; color: #3c4d61; }
.native-form-diagnostics ol { margin: 10px 0 0; padding-left: 22px; columns: 2; column-gap: 28px; }
.native-form-diagnostics li { break-inside: avoid; margin: 0 0 5px; }
.native-form-diagnostics code { margin-left: 5px; overflow-wrap: anywhere; }
.native-form-unavailable { max-width: 900px; }
.studio-save-state[data-tone="success"] { color: #087443; }
.studio-save-state[data-tone="warning"] { color: #8a5c0b; }
.studio-save-state[data-tone="error"] { color: #b42318; }
@media (max-width: 900px) {
    .native-form-toolbar { display: grid; }
    .native-form-toolbar .button-row { width: 100%; }
    .native-form-toolbar .button { flex: 1 1 180px; }
    .native-form-fields { grid-template-columns: 1fr; }
    .native-form-group-fields { grid-template-columns: 1fr; }
    .native-form-field--wide { grid-column: auto; }
    .native-form-diagnostics ol { columns: 1; }
}
@media (max-width: 580px) {
    .native-form-workspace { padding: 10px; border-radius: 12px; }
    .native-form-toolbar, .native-form-field { padding: 12px; }
    .native-form-toolbar .button-row { display: grid; grid-template-columns: 1fr; }
}

/* Strict Form-14-style official form sections */
.native-form-group-prompt h4 {
    margin: 0;
    color: #182638;
    font-size: 1.02rem;
    line-height: 1.3;
}
.native-form-field input[type="time"],
.native-form-field input[type="number"],
.native-form-field input[type="email"],
.native-form-field input[type="tel"] {
    width: 100%;
}
