:root{--bg: #ffffff;--fg: #1f2532;--muted: #6b7280;--border: #e3e6ea;--accent: #1f6feb;--accent-fg: #ffffff;--surface: #f7f8fa;--success-bg: #e8f6ee;--success-fg: #12693c;--warning-bg: #fdf3e2;--warning-fg: #8a5a00;--error-bg: #fdecec;--error-fg: #a01818;--info-bg: #eef3fd;--info-fg: #1f4b99}@media (prefers-color-scheme: dark){:root{--bg: #1c1f26;--fg: #e7eaf0;--muted: #9aa3b2;--border: #2f343e;--accent: #4c8dff;--surface: #23262e;--success-bg: #16321f;--success-fg: #7fd8a5;--warning-bg: #3a2c14;--warning-fg: #f0c274;--error-bg: #3a1d1d;--error-fg: #f4a3a3;--info-bg: #1e2a3f;--info-fg: #9dc0ff}}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--fg);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:13px;line-height:1.45}.app{display:flex;flex-direction:column;gap:12px;padding:12px}.section{border:1px solid var(--border);border-radius:6px;padding:10px;background:var(--bg)}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.section-header h2{margin:0;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.banner{border-radius:6px;padding:8px 10px;font-size:12px}.banner-info{background:var(--info-bg);color:var(--info-fg)}.banner-success{background:var(--success-bg);color:var(--success-fg)}.banner-warning{background:var(--warning-bg);color:var(--warning-fg)}.banner-error{background:var(--error-bg);color:var(--error-fg)}.button{border:1px solid var(--border);border-radius:5px;background:var(--surface);color:var(--fg);padding:5px 10px;font-size:12px;cursor:pointer}.button:hover:not(:disabled){border-color:var(--accent)}.button:disabled{opacity:.5;cursor:default}.button-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-fg);font-weight:600}.button-link{background:none;border:none;color:var(--accent);padding:2px 4px}.chips{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.chip{border:1px solid var(--border);border-radius:999px;background:var(--surface);color:var(--fg);padding:3px 10px;font-size:12px;cursor:pointer}.chip-active{border-color:var(--accent);background:var(--info-bg);color:var(--info-fg);font-weight:600}.ref-editor{display:grid;grid-template-columns:minmax(78px,auto) 1fr auto;gap:6px;margin-bottom:8px}.ref-editor input,.ref-editor select{border:1px solid var(--border);border-radius:5px;background:var(--bg);color:var(--fg);padding:5px 6px;font-size:12px;min-width:0}.doc-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.doc-list li{display:grid;grid-template-columns:1fr auto;align-items:baseline;gap:4px;padding:6px 8px;background:var(--surface);border-radius:5px}.doc-ref{font-weight:600}.doc-meta{grid-column:1 / -1;color:var(--muted);font-size:11px}.template-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:4px}.template-item{display:flex;gap:8px;align-items:flex-start;padding:7px 8px;border:1px solid transparent;border-radius:5px;cursor:pointer}.template-item:hover{background:var(--surface)}.template-item-active{border-color:var(--accent);background:var(--info-bg)}.template-body{display:flex;flex-direction:column;gap:2px}.template-label{font-weight:600;display:flex;align-items:center;gap:6px}.template-meta,.template-desc{color:var(--muted);font-size:11px}.badge{background:var(--accent);color:var(--accent-fg);border-radius:3px;padding:1px 5px;font-size:10px;font-weight:600;text-transform:uppercase}.checkbox{display:flex;align-items:center;gap:6px;margin-bottom:6px}.actions{display:flex;gap:8px}.actions .button-primary{flex:1}.muted{color:var(--muted);font-size:11px;margin:4px 0 0}.spinner{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px;margin:0}.spinner-dot{width:10px;height:10px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.preview-subject{font-weight:600;margin:0 0 6px}.preview-body{border-left:2px solid var(--border);padding-left:8px;font-size:12px}.preview-body p{margin:0 0 6px}.ged-list{list-style:none;margin:6px 0 0;padding:0;font-size:11px;color:var(--muted)}.ged-list li{padding:1px 0;overflow-wrap:anywhere}.ged-selected{color:var(--fg);font-weight:600}
