:root{color-scheme:dark;--bg: #0d1117;--panel: #161b22;--border: #30363d;--text: #c9d1d9;--muted: #8b949e;--accent: #1f6feb;--accent-hover: #388bfd;--accent-fg: #58a6ff;--danger: #da3633}*{box-sizing:border-box}[hidden]{display:none!important}html,body{width:100%;height:100%;overflow:hidden}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text);background:var(--bg);height:100vh;height:100dvh;display:flex;flex-direction:column}button{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:6px 12px;cursor:pointer;font-size:13px}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.4;cursor:not-allowed}button.danger:hover:not(:disabled){border-color:var(--danger);color:var(--danger)}button.primary{background:var(--accent);border-color:var(--accent);color:#fff;font-weight:600}button.primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}button.primary:disabled{opacity:.5}button.link.danger-link{color:var(--muted)}button.link.danger-link:hover:not(:disabled){color:var(--danger)}.icon-btn{display:inline-flex;align-items:center;justify-content:center;padding:6px;line-height:0}.icon-btn svg,.fab svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}button.link{background:none;border:none;color:var(--muted, var(--accent));padding:4px;font-size:12px;text-decoration:underline}button.link:hover:not(:disabled){color:var(--accent-fg)}:where(button,input,textarea,[tabindex]):focus-visible{outline:2px solid var(--accent-hover);outline-offset:2px}input,textarea{background:var(--bg);color:var(--text);border:1px solid var(--border);border-radius:6px;padding:8px;font-size:14px}.grow{flex:1}.version{color:var(--muted);font-size:12px;font-weight:400}.gate{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:var(--bg);z-index:10}.gate-card{width:min(420px,90vw);border:1px solid var(--border);border-radius:12px;background:var(--panel);padding:28px;text-align:center}.gate-card h1{margin:0 0 8px;font-size:20px}.app-version{margin:0 0 12px;color:var(--muted);font-size:12px}.gate-msg{color:var(--muted);font-size:14px}.gate-warning{background:#da36331f;border:1px solid var(--danger);color:#f0b3b1;border-radius:8px;padding:10px;font-size:12px;margin:12px 0;text-align:left}.gate-actions{display:flex;flex-direction:column;gap:10px;margin-top:16px}.gate-actions button{padding:10px;font-size:14px}.recovery-display{margin-top:20px;border-top:1px solid var(--border);padding-top:16px}.recovery-display code{display:block;background:var(--bg);border:1px solid var(--border);border-radius:8px;padding:12px;margin:10px 0;font-size:13px;word-break:break-all}.topbar{display:flex;flex:0 0 auto;align-items:center;gap:12px;width:100%;min-width:0;padding:10px 16px;border-bottom:1px solid var(--border);background:var(--panel)}.app-title,.back-btn{flex:0 0 auto;font-family:inherit;font-size:15px;font-weight:700;color:var(--text)}.status{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;color:var(--muted)}.menu-wrap{position:relative;flex:0 0 auto}.menu-panel{position:absolute;top:calc(100% + 6px);right:0;z-index:20;min-width:210px;padding:6px;background:var(--panel);border:1px solid var(--border);border-radius:8px;box-shadow:0 8px 24px #00000073}.menu-group{display:flex;flex-direction:column}.menu-group+.menu-group{margin-top:4px;padding-top:4px;border-top:1px solid var(--border)}.menu-label{margin:4px 8px;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.menu-group button{width:100%;text-align:left;background:none;border:none;border-radius:6px;padding:8px}.menu-group button:hover:not(:disabled){background:var(--bg);border-color:transparent}.status.online{color:#2ea043}.layout{display:flex;flex:1;width:100%;min-width:0;min-height:0;overflow:hidden;position:relative}.sidebar{width:280px;border-right:1px solid var(--border);display:flex;flex-direction:column;min-height:0}.sidebar-bar{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:12px;border-top:1px solid var(--border)}.sidebar-bar .search-toggle{margin-right:auto}.note-search-row{padding:8px 12px;border-bottom:1px solid var(--border)}.note-search-row input{width:100%;box-sizing:border-box}.fab{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border-radius:50%;background:var(--accent);border-color:var(--accent);color:#fff}.fab:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.note-list{list-style:none;margin:0;padding:0;overflow-y:auto;flex:1}.note-list li{padding:10px 14px;border-bottom:1px solid var(--border);cursor:pointer;font-size:14px;display:flex;flex-direction:column;gap:2px}.note-list li.active{background:#1f6feb26}.note-list .note-head{display:flex;align-items:center;gap:7px;min-width:0}.note-list .note-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.note-list li.unread .note-title{font-weight:600}.note-list .meta{font-size:11px;color:var(--muted);padding-left:15px}.note-list li.zombie{opacity:.55}.note-list li.note-list-empty{cursor:default;color:var(--muted)}.dot{flex:0 0 auto;width:8px;height:8px;border-radius:50%;background:var(--muted)}.dot.synced{background:#3fb950}.dot.unsynced{background:#d29922}.dot.unread{background:var(--danger)}@keyframes spin{to{transform:rotate(360deg)}}.spinner{display:inline-block;width:14px;height:14px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .7s linear infinite;vertical-align:middle}.loading-row{display:flex;align-items:center;gap:8px;padding:12px 14px;color:var(--muted);font-size:13px}.loading-overlay{position:absolute;inset:0 0 0 280px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted);background:var(--bg);z-index:5}.modal{width:min(520px,calc(100vw - 32px));max-height:min(680px,calc(100vh - 32px));overflow-y:auto;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:10px}.modal::backdrop{background:#0000008c}.modal form{display:grid;gap:10px}.modal h2,.modal p{margin:0}.modal p{color:var(--muted);font-size:13px}.recipient-list{display:grid;gap:6px;max-height:280px;overflow-y:auto}.recipient-row{display:flex;align-items:center;gap:8px;padding:8px;border:1px solid var(--border);border-radius:6px}.recipient-row label,.recipient-name{flex:1;min-width:0}.recipient-name strong,.recipient-name small{display:block;overflow:hidden;text-overflow:ellipsis}.recipient-name small{color:var(--muted)}.fab-secondary{background:var(--bg);border-color:var(--accent);color:var(--accent-fg)}.fab-secondary:is(:hover,:focus-visible):not(:disabled){background:var(--accent);border-color:var(--accent);color:#fff}.sidebar-bar:has(.fab-secondary:hover) .fab:not(.fab-secondary),.sidebar-bar:not(:has(.fab:hover)):has(.fab-secondary:focus-visible) .fab:not(.fab-secondary){background:var(--bg);border-color:var(--accent);color:var(--accent-fg)}.sidebar-bar:has(.fab:not(.fab-secondary):hover) .fab-secondary{background:var(--bg);border-color:var(--accent);color:var(--accent-fg)}.note-kind{flex:none;width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;color:var(--muted)}.surface.sheet-surface{position:relative;display:block;overflow:auto;padding:12px}.sheet{border-collapse:collapse;table-layout:fixed}.sheet th,.sheet td{border:1px solid var(--border);padding:0;text-align:left;vertical-align:middle;position:relative}.sheet-select-col{width:38px}.sheet-gutter-col{width:44px}.sheet th{background:var(--panel);font-size:12px;font-weight:600}.col-head{width:100%;background:none;border:none;border-radius:0;text-align:left;padding:8px;font-weight:600}.col-add,.row-menu{background:none;border:none;border-radius:0;padding:8px;color:var(--muted)}.cell-input{width:100%;border:none;border-radius:0;background:none;padding:8px;font-size:14px;font-family:inherit}.cell-input:focus{outline:2px solid var(--accent);outline-offset:-2px}textarea.cell-input{display:block;resize:none;overflow:hidden;min-height:34px;line-height:1.35;white-space:pre-wrap;overflow-wrap:anywhere}textarea.cell-input.editing{position:relative;z-index:3;border-radius:4px;background:var(--bg);box-shadow:0 4px 14px #00000073}.formula-hints{position:absolute;z-index:5;min-width:220px;max-width:min(360px,90vw);max-height:220px;overflow-y:auto;padding:4px;border:1px solid var(--border);border-radius:8px;background:var(--panel);box-shadow:0 8px 24px #00000059}.formula-hint{display:flex;gap:10px;align-items:baseline;justify-content:space-between;width:100%;padding:8px 10px;border:0;border-radius:6px;background:none;color:var(--text);font:inherit;text-align:left;cursor:pointer}.formula-hint.selected,.formula-hint:hover{background:var(--accent);color:#fff}.formula-hint-label{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;white-space:nowrap}.formula-hint-detail{opacity:.75;font-size:12px;white-space:nowrap}.cell-input.formula-input:not(:focus){color:var(--accent-fg);font-variant-numeric:tabular-nums}.sheet td:has(>input[type=checkbox]){text-align:center}.cell-input[type=checkbox]{width:18px;height:18px;padding:0;margin:8px}.cell-comment{position:absolute;top:1px;right:3px;color:var(--accent-fg);font-size:14px;line-height:1;pointer-events:none}.sheet-select{text-align:center}.row-select,.row-select-all{width:18px;height:18px;padding:0;margin:8px 0;accent-color:var(--accent)}.sheet tbody tr.selected td{background:#1f6feb2e}.sheet tbody tr.selected{cursor:pointer;touch-action:pan-x}.sheet tbody tr.selected .cell-input{pointer-events:none}.sheet tbody tr.drop-before td{box-shadow:inset 0 2px 0 0 var(--accent)}.sheet tbody tr.drop-after td{box-shadow:inset 0 -2px 0 0 var(--accent)}.sheet thead th.drop-before{box-shadow:inset 2px 0 0 0 var(--accent)}.sheet thead th.drop-after{box-shadow:inset -2px 0 0 0 var(--accent)}.col-head{touch-action:pan-y;white-space:normal;overflow-wrap:anywhere}.fill-handle{position:absolute;right:calc(-5px - var(--fill-shift, 0px));bottom:-5px;z-index:4;width:12px;height:12px;border:2px solid var(--panel);border-radius:3px;background:var(--accent);cursor:ns-resize;touch-action:none}.sheet td.fill-target{outline:2px dashed var(--accent);outline-offset:-2px}.row-actions{position:absolute;z-index:6;display:flex;flex-direction:column;min-width:150px;padding:4px;border:1px solid var(--border);border-radius:8px;background:var(--panel);box-shadow:0 8px 24px #00000059}.selection-actions{margin:10px 0 0 6px;border-color:var(--accent);color:var(--accent-fg)}.row-actions-count{padding:6px 10px;font-size:12px;color:var(--muted)}.row-action{border:0;border-radius:6px;background:none;padding:8px 10px;text-align:left;font-size:14px}.row-action:hover{background:var(--accent);color:#fff}.sheet-gutter{width:44px;min-width:44px}.sheet-agg{padding:8px;font-size:12px;color:var(--muted);overflow-wrap:anywhere}.row-add{margin:10px 6px 0 0}.row-comments{display:grid;gap:8px;max-height:280px;overflow-y:auto}.modal-hint{color:var(--muted);font-size:12px}.id-field{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;text-align:center}.recipient-empty{color:var(--muted);padding:10px 0}.modal-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:6px}.field-label{font-size:12px;font-weight:600;color:var(--text);margin-bottom:-4px}.consent-list{margin:0;padding-left:18px;color:var(--muted);font-size:13px;line-height:1.45}.consent-list li{margin-bottom:4px}.consent-list strong{color:var(--text)}.editor,.empty{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;overflow:hidden}.empty{align-items:center;justify-content:center;color:var(--muted)}.zombie-banner{background:#8b949e1f;border-bottom:1px solid var(--border);color:var(--muted);padding:8px 16px;font-size:12px}.editor-actions{position:relative;display:flex;flex:0 0 auto;align-items:center;gap:8px;padding:12px;border-bottom:1px solid var(--border)}.dictate-btn.recording,.dictate-btn.recording:hover:not(:disabled){color:#fff;background:var(--danger);border-color:var(--danger)}.done-btn{background:var(--bg);border-color:var(--accent);color:var(--accent-fg)}.done-btn:is(:hover,:focus-visible):not(:disabled){background:var(--accent);border-color:var(--accent);color:#fff}.title-input{flex:1;min-width:0;font-size:16px;font-weight:600;text-align:left}.surface{display:flex;flex:1;width:100%;min-width:0;min-height:0}.content-input{flex:1;min-width:0;min-height:0;overflow-y:auto;border:none;border-radius:0;resize:none;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.6;padding:16px 24px}.preview{flex:1;overflow-y:auto;padding:16px 24px}.preview:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.preview .hint{color:var(--muted)}.preview :first-child{margin-top:0}.back-btn{display:none;align-items:center;justify-content:center;line-height:1.2}.preview pre{background:var(--panel);padding:12px;border-radius:6px;overflow-x:auto}.preview code{background:var(--panel);padding:2px 4px;border-radius:4px}.preview a{color:var(--accent-fg);text-decoration-thickness:1px;text-underline-offset:2px}.preview a:hover{text-decoration-thickness:2px}@media(pointer:coarse)and (orientation:portrait),(max-width:820px)and (orientation:portrait){.sidebar{width:100%;border-right:none}.empty{display:none!important}.layout.has-active .sidebar{display:none}.loading-overlay{left:0}.topbar.has-active .app-title{display:none}.topbar.has-active .back-btn{display:inline-flex;flex:none;white-space:nowrap;min-height:44px}}@media(pointer:coarse){.fill-handle{right:calc(-7px - var(--fill-shift, 0px));bottom:-7px;width:16px;height:16px}}.mode-btn{flex:0 0 auto;min-width:72px}@media(pointer:coarse){.done-btn{display:inline-flex;align-items:center;justify-content:center;flex:0 1 auto;min-height:44px;padding:10px 16px;border-radius:999px;font-size:14px}.mode-btn{flex:0 0 auto}}.semantic-purpose{font-size:1.05rem;line-height:1.45;margin:0 0 .75rem}.semantic-meta{display:grid;grid-template-columns:auto 1fr;gap:.15rem .75rem;margin:0 0 .75rem;font-size:.9rem}.semantic-meta dt{color:var(--muted, #6b7280)}.semantic-meta dd{margin:0}.semantic-list{margin:0 0 .75rem;padding-left:1.1rem;font-size:.9rem;line-height:1.45}.semantic-list li{margin-bottom:.3rem}.semantic-list span{color:var(--muted, #6b7280)}.semantic-raw{max-height:16rem;overflow:auto;font-size:.75rem;line-height:1.4;background:var(--code-bg, #f6f8fa);padding:.6rem;border-radius:4px;white-space:pre-wrap;word-break:break-word}.sheet-view-bar{align-items:center;display:flex;gap:.5rem;padding:.55rem 1rem}.sheet-view-bar strong{margin-right:auto}.surface.sheet-app-surface{display:block;overflow:auto;padding:1rem}.sheet-view-toolbar,.calendar-nav,.sheet-view-add{align-items:center;display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.calendar-nav{justify-content:space-between}.calendar-nav h2{margin:0}.sheet-view-toolbar button[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:#fff}.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(6.5rem,1fr));min-width:48rem}.calendar-day{border:1px solid var(--border);min-height:7rem;padding:.35rem}.calendar-weekday{padding:.35rem;text-align:center}.calendar-event{display:block;margin-top:.3rem;overflow:hidden;text-align:left;text-overflow:ellipsis;width:100%}.calendar-agenda,.sheet-customize-mapping{display:grid;gap:.75rem}.sheet-view-card,.checklist-item{align-items:center;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:.6rem;padding:.65rem 0}.sheet-view-card input:first-child,.checklist-item input[type=text]{flex:1 1 14rem}.checklist-summary{font-weight:600}.sheet-customize-mapping label{display:grid;gap:.3rem}@media(max-width:700px){.sheet-view-bar{overflow-x:auto}.sheet-view-bar strong{white-space:nowrap}}.call-modal[open]{display:grid;gap:10px;width:min(760px,calc(100vw - 32px));padding:16px}.call-modal h2{margin:0}.call-stage{position:relative;aspect-ratio:16 / 9;background:#000;border:1px solid var(--border);border-radius:8px;overflow:hidden}.call-remote{width:100%;height:100%;object-fit:contain;background:#000}.call-local{position:absolute;right:10px;bottom:10px;width:28%;max-width:180px;border:1px solid rgba(255,255,255,.35);border-radius:6px;object-fit:cover;transform:scaleX(-1)}.call-verify{display:grid;gap:6px}.checkbox-row{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}.checkbox-row input{flex:none}.call-modal[data-video=off] .call-stage{display:none}.board-surface{display:flex;flex-direction:column;min-height:60vh}.board-surface[hidden]{display:none}.board-actions{position:relative}.board-menu>summary{cursor:pointer;list-style:none;padding:.4rem .8rem}.board-menu>summary::-webkit-details-marker{display:none}.board-toolbar{position:absolute;top:100%;right:0;z-index:100;display:grid;gap:.25rem;padding:.5rem;min-width:190px;max-height:70vh;overflow:auto;background:#fff;border:1px solid #ddd;border-radius:8px;box-shadow:0 4px 16px #0002}.board-toolbar button{font:inherit;padding:.4rem .65rem;min-height:44px}.board-warning{margin:.25rem .5rem;color:#9b6500}.board-viewport{flex:1;min-height:55vh;overflow:hidden;position:relative;touch-action:none;background:#eef0f3}.board-canvas{position:absolute;inset:0;transform-origin:0 0}.board-card{position:absolute;box-sizing:border-box;display:flex;flex-direction:column;color:#000;background:#fff8c5;border:1px solid #b9c1cc;border-radius:8px;box-shadow:0 2px 8px #0002;overflow:hidden}.board-card.selected,.board-card:focus-within{outline:2px solid #5485d1}.board-card-header{padding:.5rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:0;cursor:grab;border-bottom:1px solid #ddd;user-select:none}.board-card textarea{flex:1;min-height:0;resize:none;border:0;padding:.6rem;width:100%;box-sizing:border-box;font:inherit;color:inherit;background:transparent;touch-action:auto}.board-card-preview{white-space:pre-wrap;overflow:auto;flex:1;margin:.5rem;overflow-wrap:anywhere}.board-card button{margin:.25rem .5rem;min-height:36px}.board-card img{display:block;width:100%;flex:1;min-height:0;object-fit:contain}.board-picture .board-card-preview{flex:0 0 auto;max-height:3em}.board-resize{position:absolute;width:24px;height:24px;bottom:0;right:0;cursor:nwse-resize;background:linear-gradient(135deg,transparent 65%,#9aa 65%,#9aa 72%,transparent 72%)}.board-card[data-color=yellow]{background:#fff8c5}.board-card[data-color=blue]{background:#deefff}.board-card[data-color=green]{background:#dff3df}.board-card[data-color=pink]{background:#ffe5ec}.board-reference-picker button{display:block;margin:.5rem;min-height:44px}.picture-viewer img{max-width:85vw;max-height:75vh;object-fit:contain}.storage-warning{padding:.5rem;background:#fff4d4;color:#754d00}
