:root{--paper: #fdf7f0;--ink: #2a1f1a;--muted: #8a7f76;--coral: #ff7a5c;--coral-soft: #ffe3da;--cream: #fff4e6;--mint: #b8e6c1;--line: #e8dfd4;--shadow: 0 8px 24px rgba(60, 40, 30, .08)}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:Fraunces,Iowan Old Style,Georgia,serif;background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 20% 10%,#ffeadb 0%,transparent 40%),radial-gradient(circle at 90% 90%,#e8f3ea 0%,transparent 40%)}.app{display:flex;flex-direction:column;height:100%;max-width:780px;margin:0 auto;padding:20px 16px 16px}.header{display:flex;justify-content:space-between;align-items:center;padding:10px 4px 18px;border-bottom:1px dashed var(--line)}.title{display:flex;align-items:baseline;gap:10px}.title h1{font-size:22px;font-weight:600;margin:0;letter-spacing:-.01em}.title .subtitle{font-size:13px;color:var(--muted);font-style:italic}.pulse{width:10px;height:10px;border-radius:50%;display:inline-block;align-self:center;background:var(--muted);box-shadow:0 0 #0000}.pulse--ready{background:var(--mint)}.pulse--thinking{background:var(--coral);animation:pulse 1.1s ease-in-out infinite}.pulse--warming\ up{background:#f2c14e;animation:pulse 1.4s ease-in-out infinite}.pulse--offline{background:#d46a6a}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.35);opacity:.6}}.workspace{flex:1;overflow-y:auto;padding:24px 4px}.dots{color:var(--muted);font-style:italic}.loader{background:var(--cream);border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:var(--shadow);margin:20px 0}.loader h2{margin:0 0 4px;font-weight:500;font-size:22px}.loader-note{color:var(--muted);font-size:13px;font-style:italic;margin:0 0 20px}.bar{position:relative;background:var(--coral-soft);border-radius:999px;overflow:hidden;height:10px}.bar--overall{height:22px;margin-bottom:20px}.bar-fill{background:linear-gradient(90deg,var(--coral),#ffa27a);height:100%;transition:width .2s ease}.bar-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--ink);font-weight:500}.files{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.files li{display:grid;grid-template-columns:1fr 140px 60px;align-items:center;gap:10px;font-size:12px;color:var(--muted)}.file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:JetBrains Mono,ui-monospace,monospace}.file-size{text-align:right;font-variant-numeric:tabular-nums}.error-card{background:#fff0ec;border:1px solid #ffccbf;border-radius:16px;padding:24px;margin:20px 0}.error-card h2{margin:0 0 8px;color:#c64a2e;font-weight:500}.error-card p{margin:0 0 10px;line-height:1.5;color:var(--ink)}.stop-bar{display:flex;justify-content:center;padding-top:12px;border-top:1px dashed var(--line)}.stop-bar .stop{background:transparent;color:var(--coral);border:1px solid var(--coral);padding:8px 18px;border-radius:12px;font-family:inherit;font-size:13px;cursor:pointer}.stop-bar .stop:hover{background:var(--coral-soft)}.tabs{display:flex;gap:4px;background:var(--cream);border:1px solid var(--line);padding:3px;border-radius:999px}.tabs button{background:transparent;border:none;font-family:inherit;font-size:13px;color:var(--muted);padding:6px 14px;border-radius:999px;cursor:pointer}.tabs button.active{background:var(--coral);color:#fff}.news{display:flex;flex-direction:column;gap:20px;padding:4px}.news-section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:10px}.news h2{font-weight:500;font-size:18px;margin:0;color:var(--ink)}.ghost.tiny{padding:4px 10px;font-size:12px;background:transparent;border:1px solid var(--line);color:var(--muted);border-radius:999px;cursor:pointer;font-family:inherit}.ghost.tiny:hover:not(:disabled){border-color:var(--coral);color:var(--coral)}.feed-list{list-style:none;padding:0;margin:0 0 12px;display:flex;flex-direction:column;gap:6px}.feed-list li{display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:10px;background:var(--cream);border:1px solid var(--line);border-radius:12px;padding:8px 12px;font-size:13px}.feed-host{font-weight:500;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feed-url{color:var(--muted);font-family:JetBrains Mono,ui-monospace,monospace;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feed-remove{background:transparent;border:none;color:var(--muted);font-size:20px;line-height:1;cursor:pointer;padding:0 6px;border-radius:999px}.feed-remove:hover:not(:disabled){color:var(--coral);background:var(--coral-soft)}.feed-empty{justify-self:center;grid-template-columns:1fr!important;color:var(--muted);font-style:italic;text-align:center}.feed-add{display:flex;gap:8px}.feed-add input{flex:1;padding:10px 12px;border:1px solid var(--line);border-radius:12px;font-family:inherit;font-size:13px;background:#fff;color:var(--ink);outline:none}.feed-add input:focus{border-color:var(--coral)}.feed-add button{background:var(--coral);color:#fff;border:none;padding:0 18px;border-radius:12px;font-family:inherit;font-size:13px;cursor:pointer}.feed-add button:disabled{opacity:.4;cursor:not-allowed}.news-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 640px){.news-actions{grid-template-columns:1fr}}.action-card{background:var(--cream);border:1px solid var(--line);border-radius:16px;padding:16px;display:flex;flex-direction:column;gap:10px}.action-card h3{margin:0;font-size:16px;font-weight:500}.action-card p{margin:0;font-size:13px;color:var(--muted);line-height:1.4}.action-card textarea{resize:vertical;min-height:60px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;font-family:inherit;font-size:13px;background:#fff;color:var(--ink);outline:none}.action-card textarea:focus{border-color:var(--coral)}.action-card .primary{background:var(--coral);color:#fff;border:none;padding:10px 16px;border-radius:10px;font-family:inherit;font-size:14px;font-weight:500;cursor:pointer;align-self:flex-start}.action-card .primary:disabled{opacity:.4;cursor:not-allowed}.news-output{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;box-shadow:var(--shadow)}.news-output-head{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:12px;padding-bottom:10px;border-bottom:1px dashed var(--line)}.news-output-head h3{margin:0;font-weight:500}.news-meta{font-size:12px;color:var(--muted)}.news-body{font-size:14px;line-height:1.6;white-space:pre-wrap;color:var(--ink);font-family:JetBrains Mono,ui-monospace,monospace}.citation{color:var(--coral);text-decoration:none;font-weight:500;padding:0 2px;border-radius:4px;transition:background .12s ease}.citation:hover{background:var(--coral-soft);text-decoration:underline}.news-citations{margin-top:16px;border-top:1px dashed var(--line);padding-top:12px}.news-citations summary{cursor:pointer;color:var(--muted);font-size:13px}.news-citations ol{margin:10px 0 0;padding-left:22px;font-size:12px;line-height:1.6;color:var(--ink)}.news-citations a{color:var(--ink);text-decoration:underline dotted}.news-citations a:hover{color:var(--coral)}.cite-source{color:var(--muted);font-style:italic}.error-card.compact{padding:12px 16px;font-size:13px;margin:0}.annotate{display:flex;flex-direction:column;gap:20px;padding:4px}.annotate-inputs{display:flex;flex-direction:column;gap:14px;background:var(--cream);border:1px solid var(--line);border-radius:16px;padding:16px}.field{display:flex;flex-direction:column;gap:6px}.field>span{font-size:13px;color:var(--muted);font-weight:500}.field textarea{padding:10px 12px;border:1px solid var(--line);border-radius:12px;font-family:inherit;font-size:14px;line-height:1.5;background:#fff;color:var(--ink);outline:none;resize:vertical}.field textarea:focus{border-color:var(--coral)}.annotate-actions{display:flex;gap:10px;align-items:center}.annotate-actions .primary{background:var(--coral);color:#fff;border:none;padding:10px 18px;border-radius:12px;font-family:inherit;font-size:14px;font-weight:500;cursor:pointer}.annotate-actions .primary:disabled{opacity:.4;cursor:not-allowed}.annotate-actions .stop{background:transparent;color:var(--coral);border:1px solid var(--coral);padding:8px 16px;border-radius:12px;font-family:inherit;font-size:13px;cursor:pointer}.annotate-raw{margin:0;font-family:JetBrains Mono,ui-monospace,monospace;font-size:12px;white-space:pre-wrap;color:var(--muted);max-height:220px;overflow-y:auto}.annotated-body{font-size:15px;line-height:1.7;white-space:pre-wrap;color:var(--ink)}.annotation{position:relative;display:inline;cursor:help}.annotation mark{background:linear-gradient(transparent 55%,var(--coral-soft) 55%);color:inherit;padding:0 1px;border-radius:2px;transition:background .15s ease}.annotation:hover mark{background:linear-gradient(transparent 0%,var(--coral-soft) 0%)}.annotation .tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);min-width:200px;max-width:320px;background:var(--ink);color:var(--paper);padding:8px 12px;border-radius:10px;font-size:12px;line-height:1.45;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;white-space:normal;box-shadow:0 8px 20px #28190f40;opacity:0;visibility:hidden;transition:opacity .12s ease,visibility .12s;z-index:10;pointer-events:none;text-align:left}.annotation .tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:var(--ink)}.annotation:hover .tooltip,.annotation:focus-within .tooltip{opacity:1;visibility:visible}
