:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#0f172a;background:#fff;line-height:1.6;--brand:#fbbf24;--border:#e2e8f0}
*{box-sizing:border-box}body{margin:0}a{color:#92400e}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #fbbf24;outline-offset:3px}
.case-header{display:flex;align-items:center;flex-wrap:wrap;gap:.75rem;padding:.75rem 1.25rem;background:#0f172a;color:#fff}.case-brand{font-size:1.125rem;font-weight:700;letter-spacing:-.025em;color:#fbbf24;text-decoration:none;white-space:nowrap}.case-brand span{color:#cbd5e1;margin-left:.25rem}.case-library-label{color:#cbd5e1;font-size:.875rem}.case-header nav{display:flex;gap:1.25rem;margin-left:auto}.case-header nav a{color:#e2e8f0;text-decoration:none;font-size:.875rem}
.case-shell{display:grid;grid-template-columns:19rem minmax(0,1fr);width:100%;min-height:calc(100svh - 3.5rem)}.case-sidebar{padding:1rem;background:#f8fafc;border-right:1px solid var(--border);min-width:0}.case-sidebar label{display:block;font-size:.8125rem;font-weight:600}.case-sidebar input{width:100%;padding:.5rem .625rem;border:1px solid #cbd5e1;border-radius:.375rem;margin-top:.375rem;background:#fff}#case-count{font-size:.8125rem;color:#64748b;margin:.75rem 0}#case-list{max-height:calc(100svh - 11rem);overflow:auto;display:grid;gap:.5rem}.case-item{display:block;width:100%;text-align:left;padding:.75rem;background:#fff;border:1px solid var(--border);border-radius:.375rem;line-height:1.4}.case-item strong{display:block;font-size:.875rem}.case-item small{display:block;color:#64748b;margin-top:.375rem}.case-item[aria-current=true]{background:#fffbeb;border-color:#fbbf24}
.case-detail{padding:1.25rem clamp(1rem,3vw,3rem) 3rem;min-width:0;overflow-wrap:anywhere}.case-controls{display:flex;justify-content:flex-end;gap:1rem;flex-wrap:wrap;font-size:.8125rem}.case-controls input{vertical-align:middle}.case-controls select{border:1px solid var(--border);background:#fff;border-radius:.25rem;padding:.125rem .25rem}#case-status{color:#64748b;font-size:.875rem}#case-status:empty{display:none}#case-heading h1{font-size:clamp(1.5rem,2.2vw,2rem);line-height:1.25;margin:1rem 0}.case-tags{display:flex;flex-wrap:wrap;gap:.5rem;font-size:.8125rem;color:#475569}.case-tags span{background:#f1f5f9;padding:.125rem .5rem;border-radius:.25rem}.case-metadata{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:1rem;margin:1rem 0;font-size:.875rem}.case-metadata dt{color:#64748b;font-size:.75rem}.case-metadata dd{margin:0}.case-tabs{display:flex;flex-wrap:wrap;gap:0;border-bottom:1px solid var(--border);margin:1.5rem 0}.case-tabs button{border:0;border-bottom:2px solid transparent;background:none;padding:.625rem .875rem;font-size:.875rem;color:#64748b}.case-tabs button[aria-pressed=true]{color:#92400e;border-bottom-color:#f59e0b}.case-columns{display:grid;grid-template-columns:minmax(0,1fr);gap:1.5rem}.case-columns.is-bilingual{grid-template-columns:repeat(2,minmax(0,1fr))}.case-section{min-width:0}.case-section>h2,.case-quality h2{font-size:.875rem;color:#475569;margin:0 0 1rem}.case-prose{font-size:1rem;line-height:1.75}.case-prose p{margin:0 0 1rem}.case-prose h1,.case-prose h2,.case-prose h3{line-height:1.3;margin:1.5rem 0 .75rem}.case-prose blockquote{border-left:3px solid #cbd5e1;margin:1rem 0;padding:.5rem 1rem}.case-prose blockquote>:last-child{margin-bottom:0}.case-prose table{display:block;overflow:auto;border-collapse:collapse;max-width:100%;margin:1rem 0}.case-prose th,.case-prose td{border:1px solid var(--border);padding:.5rem;vertical-align:top}.case-prose pre{overflow:auto;white-space:pre-wrap}.case-quality{border-top:1px solid var(--border);margin-top:2rem;padding-top:1rem;color:#475569;font-size:.875rem}.case-history{background:#fffbeb;padding:1rem;margin:1rem 0;border:1px solid #fde68a;border-radius:.375rem}.case-history h2{font-size:1rem;margin:0}.case-history li{margin:1rem 0}.case-reference{border-bottom:1px solid var(--border);padding:.75rem 0;font-size:.875rem}.case-reference p{margin:.375rem 0}.case-reference small{color:#64748b}
@media(max-width:700px){.case-header{padding:.625rem 1rem}.case-header nav{gap:.75rem}.case-shell{grid-template-columns:minmax(0,1fr)}.case-sidebar{border-right:0;border-bottom:1px solid var(--border)}#case-list{max-height:26svh}.case-detail{padding:1rem}.case-columns.is-bilingual{grid-template-columns:minmax(0,1fr)}.case-tabs button{padding:.625rem .5rem}.case-header nav a{font-size:.8125rem}.case-controls{justify-content:flex-start}}
