:root{--bg:#fafaf9;--surface:#fff;--border:#e5e5e3;--muted:#78716c;--accent:#4f46e5;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#1c1917;--surface:#292524;--border:#44403c;--muted:#a8a29e;--accent:#818cf8}}*{box-sizing:border-box}body{background:var(--bg);color:var(--lightningcss-light,#1c1917)var(--lightningcss-dark,#e7e5e4);margin:0}.app{max-width:860px;margin:0 auto;padding:1.5rem 1rem 4rem}.topbar{align-items:center;gap:.75rem;margin-bottom:1.5rem;display:flex}.topbar h1{flex:1;margin:0;font-size:1.3rem}.controls{flex-direction:column;gap:.75rem;margin-bottom:1rem;display:flex}.search{border:1px solid var(--border);background:var(--surface);width:100%;color:inherit;border-radius:8px;padding:.65rem .9rem;font-size:1rem}.filters{gap:.4rem;display:flex}.chip{border:1px solid var(--border);cursor:pointer;color:inherit;background:0 0;border-radius:999px;padding:.3rem .8rem;font-size:.85rem}.chip.active{background:var(--accent);border-color:var(--accent);color:#fff}.item-list{flex-direction:column;gap:.5rem;margin:0;padding:0;list-style:none;display:flex}.item-row{text-align:left;border:1px solid var(--border);background:var(--surface);cursor:pointer;width:100%;color:inherit;font:inherit;border-radius:10px;grid-template-columns:auto 1fr auto;grid-template-areas:"badge title date""badge snippet snippet";gap:.15rem .75rem;padding:.7rem .9rem;display:grid}.item-row:hover,.item-row.selected{border-color:var(--accent)}.badge{text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;border-radius:6px;grid-area:badge;align-self:start;padding:.2rem .5rem;font-size:.7rem;font-weight:600}.badge-circleback{color:#1d4ed8;background:#e0ecff}.badge-email{color:#15803d;background:#e7f6ec}.badge-docx{color:#7e22ce;background:#f3e8ff}.badge-note{color:#a16207;background:#fef3c7}.item-title{grid-area:title;font-weight:600}.item-snippet{color:var(--muted);grid-area:snippet;font-size:.85rem}.item-date{color:var(--muted);white-space:nowrap;grid-area:date;font-size:.8rem}.detail header{flex-wrap:wrap;align-items:center;gap:.6rem;margin-bottom:1rem;display:flex}.detail h2{flex:100%;margin:0}.detail time{color:var(--muted);font-size:.85rem}.detail-actions{gap:.5rem;margin-left:auto;display:flex}.detail-meta{border:1px solid var(--border);background:var(--surface);border-radius:10px;flex-wrap:wrap;gap:.4rem 1.5rem;margin:0 0 1rem;padding:.75rem .9rem;font-size:.85rem;display:flex}.detail-meta dt{color:var(--muted);margin-right:.35rem;display:inline}.detail-meta dd{margin:0;display:inline}.detail-body{white-space:pre-wrap;background:var(--surface);border:1px solid var(--border);border-radius:10px;margin:0;padding:1rem 1.1rem;font-family:inherit;font-size:.95rem;line-height:1.55}.login{text-align:center;max-width:320px;margin:15vh auto 0}.login form{flex-direction:column;gap:.6rem;display:flex}.login input{border:1px solid var(--border);background:var(--surface);color:inherit;border-radius:8px;padding:.6rem .8rem;font-size:1rem}button{font:inherit}.login button,.upload button,.detail-actions button{border:1px solid var(--border);background:var(--surface);cursor:pointer;color:inherit;border-radius:8px;padding:.5rem 1rem}.login button{background:var(--accent);border-color:var(--accent);color:#fff}.ghost{color:var(--muted);cursor:pointer;background:0 0;border:none}.danger{color:#b91c1c}.error{color:#b91c1c;font-size:.9rem}.muted{color:var(--muted)}
