:root{--bg: #f6f7f9;--surface: #ffffff;--surface-2: #f0f2f5;--text: #1d2330;--muted: #6b7380;--border: #e3e6ea;--accent: #1f6feb;--accent-text: #ffffff;--note-bg: #fff8db;--note-border: #f0d77a;--comment-bg: #f1f6ff;--comment-border: #4f86e0;--important: #e0a800;--important-bg: #fffaf0;--selected-bg: #e7f0ff;--selected-border: #7aa7ef;--danger: #c62828;--mic: #2ea043;--shadow: 0 1px 2px rgba(16, 24, 40, .06);color-scheme:light}@media (prefers-color-scheme: dark){:root{--bg: #0f1218;--surface: #171b23;--surface-2: #1f2430;--text: #e6e9ef;--muted: #98a0ad;--border: #2a303c;--accent: #4c8dff;--accent-text: #0b1020;--note-bg: #2b2614;--note-border: #6b5a1f;--comment-bg: #172238;--comment-border: #5b8fe8;--important: #e6b422;--important-bg: #262014;--selected-bg: #1b2a45;--selected-border: #4c7fd6;--danger: #ff6b6b;--mic: #3fb950;--shadow: none;color-scheme:dark}}*{box-sizing:border-box}html,body{margin:0;background:var(--bg);color:var(--text);font:15px/1.5 system-ui,-apple-system,Segoe UI,Roboto,sans-serif;-webkit-text-size-adjust:100%}#app{max-width:860px;margin:0 auto;padding:0 16px calc(96px + env(safe-area-inset-bottom))}button,input,textarea,select{font:inherit;color:inherit}button{min-height:36px;padding:6px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);cursor:pointer}button:hover{background:var(--surface-2)}button:disabled{opacity:.5;cursor:default}button:focus-visible,a:focus-visible,.row:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-text);font-weight:600}button.danger-btn{background:var(--danger);border-color:var(--danger);color:#fff;font-weight:600}input[type=text],input[type=search],textarea,select{width:100%;padding:9px 11px;border:1px solid var(--border);border-radius:8px;background:var(--surface)}textarea{resize:vertical;min-height:120px}.muted{color:var(--muted)}.small{font-size:13px}.topbar{display:flex;align-items:center;gap:8px;min-height:56px}.brand{display:flex;align-items:center;gap:8px;font-weight:700;font-size:18px}.brand-icon{width:24px;height:24px}.icon-btn{display:inline-flex;align-items:center;justify-content:center;min-width:40px;min-height:40px;padding:0 10px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--text);text-decoration:none;font-size:18px}.icon-btn:hover{background:var(--surface-2)}.search-row{position:sticky;top:0;z-index:2;padding:4px 0 12px;background:var(--bg)}.count{color:var(--muted);font-size:13px;margin:0 0 8px}.empty{color:var(--muted);text-align:center;padding:48px 0}.empty.error,.error{color:var(--danger)}.card{display:block;margin-bottom:10px;padding:12px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow);color:inherit;text-decoration:none}.card:hover{border-color:var(--selected-border)}.card-title{display:flex;flex-wrap:wrap;align-items:center;gap:6px;font-weight:600}.card-meta,.card-counts{color:var(--muted);font-size:13px}.card-preview{margin:4px 0;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.chip{display:inline-block;padding:1px 8px;border-radius:999px;background:var(--surface-2);font-size:12px;font-weight:600;white-space:nowrap}.chip.imp-high{color:#b54708}.chip.imp-critical{color:var(--danger)}.chip.status{color:var(--accent)}.chip.mic{color:var(--mic)}.session-head .topbar{align-items:flex-start;padding-top:8px}.session-title{flex:1;margin:6px 0 0;font-size:20px;line-height:1.3;overflow-wrap:anywhere}.session-title.placeholder{color:var(--muted)}.session-meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center;color:var(--muted);font-size:13px}.session-people,.session-source{color:var(--muted);font-size:13px;overflow-wrap:anywhere}.toolbar{position:sticky;top:0;z-index:2;display:flex;gap:6px;margin:10px -16px;padding:8px 16px;overflow-x:auto;background:var(--bg);border-bottom:1px solid var(--border);scrollbar-width:none}.toolbar button{flex:none}.toolbar button[aria-pressed=true]{border-color:var(--accent);color:var(--accent)}.toolbar .has-notes{font-weight:600}.notes-panel{margin-bottom:12px;padding:12px 14px;border:1px solid var(--note-border);border-radius:10px;background:var(--note-bg)}.notes-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.notes-text{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:6px}.items{display:flex;flex-direction:column;gap:6px}.row{display:flex;gap:10px;padding:10px 12px;border:1px solid var(--border);border-left-width:4px;border-left-color:var(--border);border-radius:8px;background:var(--surface);cursor:pointer}.row .ts{flex:none;width:44px;padding-top:2px;color:var(--muted);font:12px/1.6 ui-monospace,Consolas,monospace}.row-main{flex:1;min-width:0}.row-head{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.row-head:empty{display:none}.row-text{white-space:pre-wrap;overflow-wrap:anywhere}.speaker{font-weight:600;font-size:13px}.star{color:var(--important);font-weight:600;font-size:13px}.row.important{border-left-color:var(--important);background:var(--important-bg)}.row.commented{border-right:4px solid var(--comment-border)}.row.selected{border-color:var(--selected-border);background:var(--selected-bg)}.note-row{background:var(--note-bg);border-color:var(--note-border);border-left-color:var(--note-border)}.heading-row{display:block;border:none;background:transparent;padding:14px 4px 4px}.heading-row h3{margin:0;font-size:17px}.comment-row{display:block;margin-left:24px;background:var(--comment-bg);border-color:var(--comment-border);border-left-color:var(--comment-border)}.comment-head{min-height:0;padding:0;border:none;background:none;color:var(--comment-border);font-weight:600;font-size:13px}.comment-head:hover{background:none;text-decoration:underline}.shot-row{cursor:default}.shot{display:block;max-width:100%;height:auto;border:1px solid var(--border);border-radius:6px;cursor:zoom-in}.shot-missing{padding:24px;border:1px dashed var(--border);border-radius:6px;color:var(--muted);text-align:center}.caption{margin-top:6px}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;align-items:center}.tag{display:inline-flex;align-items:center;gap:2px;padding:0 0 0 10px;border-radius:999px;background:var(--surface-2);font-size:13px;font-weight:600}.tag-x{min-height:28px;padding:0 8px;border:none;background:none;color:var(--muted)}.tag-add{min-height:28px;padding:0 10px;font-size:13px;border-style:dashed}.ocr{margin-top:8px}.ocr summary{cursor:pointer;color:var(--accent);font-size:13px}.ocr pre{margin:6px 0;padding:8px 10px;max-height:320px;overflow:auto;border-radius:6px;background:var(--surface-2);font:12px/1.5 ui-monospace,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere}.selection-bar{position:fixed;left:50%;bottom:calc(16px + env(safe-area-inset-bottom));z-index:5;display:flex;gap:8px;align-items:center;width:min(828px,calc(100% - 32px));transform:translate(-50%);padding:10px 12px;border:1px solid var(--selected-border);border-radius:12px;background:var(--selected-bg);box-shadow:0 6px 24px #0000002e}.selection-bar span{flex:1;font-size:14px}.backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:flex;align-items:flex-end;justify-content:center;background:#0006}.sheet{width:min(560px,100%);max-height:88vh;overflow:auto;padding:8px 16px calc(16px + env(safe-area-inset-bottom));border-radius:16px 16px 0 0;background:var(--surface)}@media (min-width: 640px){.backdrop{align-items:center}.sheet{border-radius:16px}}.sheet-head{display:flex;align-items:center;justify-content:space-between}.sheet-head h2{margin:8px 0;font-size:17px}.sheet-body{display:flex;flex-direction:column;gap:10px}.sheet-action{display:flex;flex-direction:column;align-items:flex-start;width:100%;min-height:44px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;background:var(--surface);color:var(--text);text-align:left;text-decoration:none}.sheet-action:hover{background:var(--surface-2)}.sheet-action.danger{color:var(--danger)}.sheet-buttons{display:flex;justify-content:flex-end;gap:8px}.field{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted)}.field>input,.field>textarea,.field>select{color:var(--text);font-size:15px}.preset-tags{display:flex;flex-wrap:wrap;gap:6px}.tag-preset{border-radius:999px}.viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:flex;flex-direction:column;background:#000;color:#fff}.viewer-bar{display:flex;align-items:center;gap:8px;padding:8px 12px}.viewer-bar span{flex:1;font-size:14px}.viewer-bar .icon-btn{color:#fff}.viewer-bar .icon-btn:hover{background:#222}.viewer-stage{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center}.viewer-img{max-width:100%;max-height:100%;cursor:zoom-in}.viewer-img.actual{max-width:none;max-height:none;cursor:zoom-out}.toast{position:fixed;left:50%;bottom:calc(84px + env(safe-area-inset-bottom));z-index:30;max-width:calc(100% - 32px);padding:10px 16px;border-radius:10px;background:#1d2330;color:#fff;font-size:14px;opacity:0;transform:translate(-50%,8px);transition:opacity .15s,transform .15s;pointer-events:none}.toast.show{opacity:1;transform:translate(-50%)}.toast.error{background:var(--danger)}.demo-banner{padding:8px 16px;background:var(--note-bg);border-bottom:1px solid var(--note-border);color:var(--text);font-size:.875rem;text-align:center}.hidden-file{position:fixed;left:-9999px;width:1px;height:1px;opacity:0}.row.focused{outline:2px solid var(--selected-border);outline-offset:-2px}.row.drop-below{box-shadow:0 3px 0 0 var(--accent)}.paste-hint{text-align:center;margin:16px 0 32px}.reading:before{content:"↻ ";display:inline-block;animation:spin 1.2s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.reading:before{animation:none}}.sheet-body h4{margin:12px 0 4px;font-size:.8rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.sheet-action[disabled]{opacity:.5;cursor:not-allowed}.record-btn{color:var(--danger);font-weight:600}.topbar .record-new{margin-left:auto}.rec-pill{display:block;margin:0 0 12px;padding:8px 12px;border-radius:999px;background:var(--danger);color:#fff;text-align:center;text-decoration:none;font-weight:600}.rec-elsewhere{margin-top:6px;color:var(--danger);font-size:.875rem}.rec-bar{position:sticky;bottom:0;z-index:5;margin:12px -4px 0;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:var(--surface);border:1px solid var(--border);border-radius:12px 12px 0 0;box-shadow:0 -4px 16px #00000014}.rec-line{display:flex;gap:8px;align-items:baseline;min-width:0}.rec-dot{color:var(--danger);animation:blink 1.4s ease-in-out infinite}.rec-dot.finishing{color:var(--muted);animation:none}@keyframes blink{50%{opacity:.25}}@media (prefers-reduced-motion: reduce){.rec-dot{animation:none}}.rec-time{font-variant-numeric:tabular-nums;font-weight:600}.rec-partial{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-style:italic}.rec-buttons{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.rec-buttons button{flex:1 1 auto}.area-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;flex-direction:column;background:#000000d9;color:#fff}.area-bar{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px 16px}.area-bar span{flex:1 1 auto}.area-bar button:not(.primary){color:var(--text)}.area-remember{display:flex;gap:6px;align-items:center;font-size:.875rem}.area-stage{position:relative;flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;padding:8px}.area-frame{max-width:100%;max-height:100%;cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none}.area-box{position:absolute;border:2px solid #4c8dff;background:#4c8dff26;pointer-events:none}.standby{max-width:30rem;margin:15vh auto 0;padding:0 16px;text-align:center}.standby-icon{width:56px;height:56px}.standby h1{font-size:1.3rem;margin:12px 0 8px}.mini-body{margin:0;padding:10px 12px;background:var(--surface)}.mini .rec-line{font-size:1rem}.mini-words{margin:6px 0;font-style:italic;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
