@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Source+Serif+4:opsz,wght@8..60,500;8..60,600&display=swap";:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-ui:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display:"Source Serif 4", Georgia, "Times New Roman", serif;--bg:#f9f7f4;--bg-raised:#fff;--bg-sunken:#f1eee7;--bg-hover:#f1ede5;--border:#e5e1d8;--border-strong:#d7d2c4;--text-primary:#1f1e1c;--text-secondary:#625f59;--text-muted:#96928a;--text-on-accent:#fff;--accent:#c15f3c;--accent-hover:#a94f30;--accent-soft:#f2e3d8;--accent-soft-border:#e6c7b2;--success:#4c7a50;--success-soft:#e4eee1;--warning:#9c6b1f;--warning-soft:#f4e9d3;--danger:#ab3b2a;--danger-soft:#f5e1dc;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--shadow-sm:0 1px 2px #1f1e1c0d;--shadow-md:0 6px 20px #1f1e1c14;--shadow-focus:0 0 0 3px #c15f3c2e}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--bg);color:var(--text-primary);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;overflow-x:hidden}#root{min-height:100vh}h1,h2,h3{font-family:var(--font-display);color:var(--text-primary);margin:0;font-weight:600}p{margin:0}button,input,textarea{font-family:inherit}a{color:inherit}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.btn{font-family:var(--font-ui);border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:10px 16px;font-size:14px;font-weight:600;transition:background .15s,border-color .15s,color .15s,transform .1s;display:inline-flex}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--accent);color:var(--text-on-accent)}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:var(--bg-raised);border-color:var(--border-strong);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover)}.btn:focus-visible,input:focus-visible,textarea:focus-visible,a:focus-visible{box-shadow:var(--shadow-focus);outline:none}.card{background:var(--bg-raised);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.tag{background:var(--accent-soft);color:var(--accent-hover);border:1px solid var(--accent-soft-border);border-radius:999px;align-items:center;padding:5px 11px;font-size:12.5px;font-weight:600;display:inline-flex}.status-badge{text-transform:uppercase;letter-spacing:.03em;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:11px;font-weight:700;display:inline-flex}.status-badge.completed{background:var(--success-soft);color:var(--success)}.status-badge.processing{background:var(--warning-soft);color:var(--warning)}.status-badge.failed{background:var(--danger-soft);color:var(--danger)}.loader-block{color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:60px 20px;font-size:14px;display:flex}.spinner{border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:30px;height:30px;animation:.8s linear infinite spin}.spinner.sm{border-width:2px;width:16px;height:16px}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:10px;padding:60px 24px;display:flex}.empty-state-icon{margin-bottom:4px;font-size:34px}.empty-state h3{color:var(--text-primary);font-size:17px}.empty-state p{max-width:380px;font-size:14px;line-height:1.6}.app-shell{flex-direction:column;min-height:100vh;display:flex}.app-main{flex:1}.site-header{border-bottom:1px solid var(--border);background:var(--bg-raised);z-index:20;align-items:center;gap:24px;padding:14px 28px;display:flex;position:sticky;top:0}.site-logo{flex-shrink:0;align-items:center;gap:10px;text-decoration:none;display:flex}.site-logo-mark{background:var(--accent);width:30px;height:30px;color:var(--text-on-accent);font-family:var(--font-display);border-radius:8px;justify-content:center;align-items:center;font-size:16px;font-weight:600;display:flex}.site-logo-text{font-family:var(--font-display);color:var(--text-primary);font-size:19px;font-weight:600}.site-search{flex:1;max-width:480px;position:relative}.site-search-icon{color:var(--text-muted);pointer-events:none;position:absolute;top:50%;left:13px;transform:translateY(-50%)}.site-search input{border:1px solid var(--border);background:var(--bg-sunken);width:100%;color:var(--text-primary);border-radius:999px;padding:9px 14px 9px 36px;font-size:13.5px;transition:background .15s,border-color .15s}.site-search input::placeholder{color:var(--text-muted)}.site-search input:focus{background:var(--bg-raised);border-color:var(--accent-soft-border);box-shadow:var(--shadow-focus);outline:none}.site-nav-link{color:var(--text-secondary);margin-left:auto;font-size:13.5px;font-weight:600;text-decoration:none}.site-nav-link:hover{color:var(--accent)}.case-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:calc(100vh - 61px);display:grid}.case-doc{border-right:1px solid var(--border);background:var(--bg);max-height:calc(100vh - 61px);padding:32px 36px;overflow-y:auto}.case-doc-title{margin-bottom:10px;font-size:22px}.case-doc-meta{color:var(--text-muted);border-bottom:1px solid var(--border);align-items:center;gap:10px;margin-bottom:20px;padding-bottom:16px;font-size:13px;display:flex}.case-doc-body{color:var(--text-secondary);font-size:14.5px;line-height:1.75}.case-doc-empty{color:var(--text-muted)}.case-doc-paragraph{border-radius:var(--radius-sm);margin-bottom:18px;padding:10px 14px;transition:background .15s}.case-doc-paragraph:hover{background:var(--bg-raised)}.case-doc-paragraph-num{font-family:var(--font-display);color:var(--accent);margin-bottom:4px;font-size:11.5px;font-weight:600;display:block}.case-workspace{background:var(--bg-raised);flex-direction:column;max-height:calc(100vh - 61px);display:flex}.case-tabs{border-bottom:1px solid var(--border);flex-shrink:0;display:flex}.case-tab{text-align:center;color:var(--text-muted);border-bottom:2px solid #0000;flex:1;padding:15px 8px;font-size:13px;font-weight:600;text-decoration:none;transition:color .15s,border-color .15s,background .15s}.case-tab:hover{color:var(--text-primary);background:var(--bg-hover)}.case-tab.active{color:var(--accent);border-bottom-color:var(--accent)}.case-tab-content{flex:1;padding:28px 32px;overflow-y:auto}@media (width<=900px){.case-layout{grid-template-columns:1fr}.case-doc{border-right:none;border-bottom:1px solid var(--border);max-height:50vh}.case-workspace{max-height:none}}.tab-intro{color:var(--text-secondary);margin-bottom:18px;font-size:13.5px;line-height:1.6}.tab-error{color:var(--danger);margin-top:12px;font-size:13px}.brief-card{flex-direction:column;gap:18px;display:flex}.brief-section{border-radius:var(--radius-md);background:var(--bg-sunken);border-left:3px solid var(--accent);padding:16px 18px}.brief-section h4{font-family:var(--font-ui);text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);margin-bottom:8px;font-size:12.5px;font-weight:700}.brief-section p{color:var(--text-primary);font-size:14px;line-height:1.65}.brief-section-facts{border-left-color:var(--accent)}.brief-section-issues{border-left-color:#8a7654}.brief-section-verdict{border-left-color:var(--success)}.brief-section-reasoning{border-left-color:var(--warning)}.citation-container{flex-wrap:wrap;gap:8px;display:flex}.citation-tag{background:var(--accent-soft);border:1px solid var(--accent-soft-border);color:var(--accent-hover);border-radius:999px;padding:7px 13px;font-size:12.5px;font-weight:600}.oppose-form{flex-direction:column;gap:12px;display:flex}.oppose-input{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-sunken);height:110px;color:var(--text-primary);resize:vertical;padding:12px 14px;font-size:13.5px;line-height:1.5}.oppose-input:focus{border-color:var(--accent-soft-border);box-shadow:var(--shadow-focus);outline:none}.oppose-output{border-radius:var(--radius-md);background:var(--bg-sunken);border:1px solid var(--border);margin-top:20px;padding:18px}.oppose-output h4{text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);margin-bottom:10px;font-size:12.5px;font-weight:700}.oppose-output p{color:var(--text-primary);white-space:pre-wrap;font-size:13.5px;line-height:1.65}.chat-tab{flex-direction:column;height:100%;min-height:420px;display:flex}.chat-messages{flex-direction:column;flex:1;gap:10px;padding-bottom:16px;display:flex;overflow-y:auto}.chat-bubble{border-radius:14px;max-width:82%;padding:11px 15px;font-size:13.5px;line-height:1.6}.chat-bubble.bot{background:var(--bg-sunken);border:1px solid var(--border);color:var(--text-primary);border-bottom-left-radius:3px;align-self:flex-start}.chat-bubble.user{background:var(--accent);color:var(--text-on-accent);border-bottom-right-radius:3px;align-self:flex-end}.chat-bubble-loading{align-items:center;gap:8px;display:flex}.chat-input-bar{border-top:1px solid var(--border);gap:8px;padding-top:14px;display:flex}.chat-input-bar input{border:1px solid var(--border);background:var(--bg-sunken);color:var(--text-primary);border-radius:999px;flex:1;padding:10px 16px;font-size:13.5px}.chat-input-bar input:focus{border-color:var(--accent-soft-border);box-shadow:var(--shadow-focus);outline:none}.chat-send-btn{background:var(--accent);width:38px;height:38px;color:var(--text-on-accent);cursor:pointer;border:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s;display:flex}.chat-send-btn:hover:not(:disabled){background:var(--accent-hover)}.chat-send-btn:disabled{opacity:.5;cursor:not-allowed}.case-card{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-raised);color:inherit;flex-direction:column;gap:10px;padding:18px;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s;display:flex}.case-card:hover{border-color:var(--accent-soft-border);box-shadow:var(--shadow-md);transform:translateY(-1px)}.case-card-top{justify-content:space-between;align-items:center;display:flex}.case-card-title{font-family:var(--font-display);color:var(--text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:16px;font-weight:600;line-height:1.4;display:-webkit-box;overflow:hidden}.case-card-meta{color:var(--text-muted);gap:8px;font-size:12.5px;display:flex}.case-card-citations{flex-wrap:wrap;gap:6px;margin-top:2px;display:flex}.case-card-citation{background:var(--bg-sunken);color:var(--text-secondary);white-space:nowrap;border-radius:999px;padding:3px 8px;font-size:11px}.case-card-citation.more{color:var(--text-muted)}.library-page{max-width:1080px;margin:0 auto;padding:40px 32px 64px}.library-header{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:36px;display:flex}.library-header h1{margin-bottom:8px;font-size:28px}.library-subtitle{color:var(--text-secondary);max-width:520px;font-size:14.5px;line-height:1.6}.case-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;display:grid}.search-page{max-width:760px;margin:0 auto;padding:40px 32px 64px}.search-page h1{margin-bottom:8px;font-size:26px}.search-page-query{color:var(--text-secondary);margin-bottom:28px;font-size:14.5px}.search-results{flex-direction:column;gap:12px;display:flex}.search-result-card{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg-raised);color:inherit;flex-direction:column;gap:8px;padding:16px 18px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex}.search-result-card:hover{border-color:var(--accent-soft-border);box-shadow:var(--shadow-md)}.search-result-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.search-result-title{color:var(--text-primary);font-size:14.5px;font-weight:600}.search-result-year{color:var(--text-muted);font-weight:400}.search-result-snippet{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:13.5px;line-height:1.6;display:-webkit-box;overflow:hidden}
