/* /root/isolated/sc-rag/web/style.css */
:root{color-scheme:dark;--bg:#091019;--surface:#101b28;--surface2:#142231;--line:#253444;--text:#edf3f8;--muted:#99aabb;--accent:#91e4c3;--xs:.375rem;--sm:.75rem;--space:1.25rem;--lg:2rem;--xl:3rem;--radius:.875rem;--small:.8rem;font-family:Inter,Segoe UI,Tahoma,system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--text);background:radial-gradient(ellipse at 5% -20%,#183a44 0,transparent 45%),var(--bg);min-height:100vh}button,input,textarea,select{font:inherit}button,a,input,textarea,select{outline-offset:4px}a{color:inherit}button{cursor:pointer}button:disabled{opacity:.55;cursor:wait}.shell{max-width:1380px;margin:auto;padding:var(--lg) var(--xl)}.header{display:flex;justify-content:space-between;align-items:center;gap:var(--space);margin-bottom:var(--xl)}.brand{display:flex;gap:var(--sm);align-items:center;text-decoration:none;font-size:var(--small);line-height:1.3;color:var(--muted)}.brand b{color:var(--text);font-weight:550}.mark{font-size:1.25rem;font-weight:800;letter-spacing:-.05em;border:1px solid #91e4c344;border-radius:var(--radius);padding:var(--sm);color:var(--accent);background:#91e4c30c}.header-actions{display:flex;gap:var(--sm);align-items:center}select{background:var(--bg);color:var(--muted);border:1px solid var(--line);border-radius:var(--radius);padding:var(--sm)}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--sm);border:1px solid var(--line);border-radius:var(--radius);background:var(--surface2);color:var(--text);padding:var(--sm) var(--space);text-decoration:none;font-weight:600;font-size:.9rem}.button.ghost{background:transparent}.button.primary{background:var(--accent);border-color:var(--accent);color:#10251f}.button.small{padding:var(--sm);font-size:var(--small)}.button.full{width:100%;margin-top:var(--sm)}.disabled{pointer-events:none;opacity:.5}.workspace{display:grid;grid-template-columns:minmax(250px,.85fr) minmax(400px,1.45fr);gap:var(--xl);align-items:start}.intro{padding-top:var(--space)}.eyebrow{font-size:.7rem;text-transform:uppercase;letter-spacing:.16em;color:var(--accent);margin-bottom:var(--space)}h1{font-size:clamp(2.5rem,4.6vw,4.3rem);font-weight:650;letter-spacing:-.055em;line-height:1.06;margin:0 0 var(--space)}.lead{font-size:1rem;color:var(--muted);line-height:1.7;margin-bottom:var(--lg)}.channel,.telegram-link{display:flex;align-items:center;gap:var(--sm);font-size:.9rem}.channel{color:var(--accent)}.status-dot{display:inline-block;width:.45rem;height:.45rem;border-radius:50%;background:var(--accent);box-shadow:0 0 .7rem #91e4c355;flex-shrink:0}.telegram-link{justify-content:space-between;border-bottom:1px solid var(--line);padding:var(--space) 0;text-decoration:none;color:var(--muted)}.telegram-link:hover{color:var(--text)}.plan{margin-top:var(--lg)}.plan-title{display:flex;gap:var(--sm);align-items:center;font-size:.9rem;font-weight:600}.tag{padding:.2rem .45rem;font-size:.65rem;font-weight:700;border:1px solid var(--line);border-radius:.4rem;color:var(--muted)}.tag.paid{color:var(--accent);border-color:#91e4c344}.plan p{font-size:var(--small);line-height:1.65;color:var(--muted);margin:var(--sm) 0 var(--space)}.source-note{font-size:.7rem;color:var(--muted);line-height:1.6}.text-button{padding:var(--xs) 0;margin-inline-end:var(--sm);background:none;border:none;color:var(--accent);text-align:start;font-size:inherit;text-decoration:underline;text-underline-offset:.2em}.chat-panel{border:1px solid var(--line);background:linear-gradient(140deg,#14212e,#0e1723);border-radius:var(--space);box-shadow:0 2rem 5rem #0004;overflow:hidden;display:flex;flex-direction:column;height:min(760px,calc(100dvh - 160px));min-height:540px}.chat-toolbar{padding:var(--space);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:var(--sm)}.chat-toolbar b{font-size:.85rem;margin-inline-start:var(--sm)}.chat-toolbar small{display:block;color:var(--muted);font-size:.7rem;margin-top:var(--xs);margin-inline-start:var(--space)}.messages{flex:1;overflow:auto;padding:var(--lg) var(--space);scroll-behavior:smooth}.message{display:flex;gap:var(--sm);margin-bottom:var(--lg);font-size:.9rem;line-height:1.75}.message>div{min-width:0}.message p{margin:var(--xs) 0;white-space:pre-wrap;overflow-wrap:anywhere}.message-label{font-size:.65rem;font-weight:750;letter-spacing:.08em;color:var(--muted)}.avatar{display:flex;align-items:center;justify-content:center;background:#91e4c315;color:var(--accent);border:1px solid #91e4c333;border-radius:.55rem;flex:0 0 1.8rem;height:1.8rem;font-size:.75rem;font-weight:700}.message.user{background:#ffffff04;border:1px solid var(--line);padding:var(--sm) var(--space);border-radius:var(--radius);margin-inline-start:var(--lg)}.message.user .avatar{display:none}.suggestions{display:flex;flex-wrap:wrap;gap:var(--xs);margin-top:var(--space)}.suggestions button{font-size:.7rem;border:1px solid var(--line);background:var(--surface2);color:var(--muted);padding:var(--sm);border-radius:var(--radius)}.composer-wrap{padding:0 var(--space) var(--sm)}#chatForm{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);padding:var(--sm)}textarea{width:100%;border:none;background:transparent;color:var(--text);resize:none;padding:var(--xs);font-size:.9rem;line-height:1.5;max-height:10rem}textarea:focus{outline:none}.composer-actions{display:flex;justify-content:space-between;align-items:center;gap:var(--sm)}.composer-actions>div{display:flex;flex-wrap:wrap;gap:var(--sm)}.option{display:inline-flex;align-items:center;gap:var(--xs);font-size:.7rem;color:var(--muted)}input[type=checkbox]{accent-color:var(--accent)}.send{border:none;background:var(--accent);color:var(--bg);border-radius:.6rem;width:2rem;height:2rem;font-size:1.3rem;flex-shrink:0}.fine{font-size:.65rem;line-height:1.6;color:var(--muted)}footer{display:flex;justify-content:space-between;gap:var(--space);margin-top:var(--lg);font-size:.65rem;color:var(--muted)}dialog{background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:var(--space);padding:var(--lg);width:min(560px,calc(100% - 2rem));max-height:90dvh;box-shadow:0 2rem 5rem #0004}dialog::backdrop{background:#000a;backdrop-filter:blur(4px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:var(--space)}h2{font-size:1.3rem;margin:0}.close{border:none;background:transparent;color:var(--muted);font-size:1.6rem}dialog p{font-size:.85rem;line-height:1.6;color:var(--muted)}.packages{display:flex;gap:var(--sm);margin:var(--space) 0}.package{flex:1;border:1px solid var(--line);background:var(--bg);color:var(--text);padding:var(--sm);border-radius:var(--radius)}.package.selected{border-color:var(--accent);background:#91e4c30c}.package strong,.package span{display:block}.package span{font-size:.6rem;color:var(--muted);margin-top:var(--xs)}.consent{display:flex;align-items:flex-start;gap:var(--sm);font-size:.75rem;line-height:1.6;margin:var(--sm) 0}.consent input{margin-top:.25rem}.notice{color:var(--accent);font-size:.8rem}.policy{white-space:pre-wrap;font-size:.85rem;line-height:1.8;margin-top:var(--space)}code{display:block;overflow-wrap:anywhere;padding:var(--sm);background:var(--bg);border-radius:var(--radius);font-size:.8rem;direction:ltr}#restoreForm input{width:100%;padding:var(--sm);background:var(--bg);color:var(--text);border:1px solid var(--line);border-radius:var(--radius)}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}[dir=rtl] h1{letter-spacing:normal;line-height:1.35}[dir=rtl] .eyebrow{letter-spacing:normal}@media(max-width:900px){.shell{padding:var(--space)}.workspace{grid-template-columns:1fr;gap:var(--lg)}.intro h1{font-size:2.8rem;max-width:16ch}.intro .lead{max-width:60ch}.plan{display:grid;grid-template-columns:auto 1fr;gap:var(--sm);align-items:start}.plan p{margin:0}.plan-title{margin-top:.15rem}.source-note{margin-top:var(--space)}.chat-panel{height:690px;min-height:500px}.header{margin-bottom:var(--lg)}}@media(max-width:480px){.header-actions .ghost{display:none}.shell{padding:var(--sm)}.intro h1{font-size:2.3rem}.chat-panel{height:75dvh;min-height:460px}.messages{padding:var(--space)}.plan{display:block}.plan p{margin:var(--sm) 0 var(--space)}footer{display:block}.packages{gap:var(--xs)}dialog{padding:var(--space)}}