@import url('https://fonts.googleapis.com/css2?family=Geist:wght@400;450;500&family=Geist+Mono:wght@400;500&display=swap');
:root{--paper:#fafafa;--ink:#171717;--line:#ebebeb;--muted:#666;--sans:'Geist',Inter,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--mono:'Geist Mono',ui-monospace,SFMono-Regular,Menlo,monospace;font-family:var(--sans);color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}html,body{height:100%;overflow:hidden}body{margin:0;font-size:14px;-webkit-font-smoothing:antialiased;display:flex;flex-direction:column;height:100dvh}button,input,textarea,select{font:inherit;color:inherit}button,a,input,textarea,summary,select{-webkit-tap-highlight-color:transparent}button,.button,summary{cursor:pointer}button,.button{background:#fff;border:1px solid var(--line);border-radius:6px;padding:9px 12px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}button:hover,.button:hover,summary:hover{background:#f2f2f2}button:disabled{opacity:.45;cursor:default}a{color:inherit}button:focus-visible,a:focus-visible,summary:focus-visible,select:focus-visible{outline:2px solid #171717;outline-offset:2px}input:focus,textarea:focus{outline:none;border-color:#8f8f8f}input,textarea,select{font-size:16px;background:#fff;border:1px solid var(--line);border-radius:6px;padding:10px;width:100%;line-height:1.4}input::placeholder,textarea::placeholder{color:#7d7d7d}textarea{resize:vertical}code{font-family:var(--mono);font-size:12px;overflow-wrap:anywhere}.mono{font-family:var(--mono);font-size:10px;font-weight:400;letter-spacing:.04em;line-height:1.5;text-transform:uppercase}.micro{font-size:12px;line-height:1.5;color:var(--muted)}h1,h2,p{margin-top:0}h1,h2{font-weight:450;letter-spacing:-.04em}p{line-height:1.6;color:#4d4d4d}hr{border:0;border-top:1px solid var(--line);margin:6px 0}[hidden]{display:none!important}.text-button{background:transparent;border:0;padding:4px 0}.icon-button{height:36px;width:36px;min-width:36px;padding:0;font-size:20px;line-height:1}.primary{background:var(--ink);color:white;border-color:var(--ink)}.primary:hover{background:#333}
.topbar{flex:none;min-height:60px;padding:10px 24px;display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--line);z-index:30;background:var(--paper)}.wordmark{font-size:23px;font-weight:500;letter-spacing:-1px;text-decoration:none;display:flex;align-items:baseline;gap:8px;white-space:nowrap}.wordmark .bgc{font-family:var(--mono);font-size:13px;letter-spacing:-.3px;font-weight:500}.board-picker{width:170px;flex-shrink:1;min-width:100px}.board-picker select{font-size:12px;background:transparent;height:36px;padding:6px 28px 6px 10px;text-overflow:ellipsis}.week-navigation{display:flex;align-items:center;gap:3px;white-space:nowrap}.week-navigation .icon-button{border:0;background:none;width:30px;min-width:30px}.week-label{border:0;background:none;padding:7px;gap:8px;font-size:14px}.count{font:10px var(--mono);border:1px solid var(--line);border-radius:4px;padding:2px 5px;color:#666}.top-tools{display:flex;gap:6px;align-items:center;margin-left:auto}.tool-button{height:34px;padding:6px 10px;border:1px solid var(--line);background:transparent;border-radius:6px;font-size:12px;white-space:nowrap;display:flex;align-items:center;justify-content:center;gap:8px}.tool-button.is-active{border-color:#171717;background:#171717;color:#fff}.more-menu{margin-left:0}details{position:relative}summary{list-style:none}summary::-webkit-details-marker{display:none}.dropdown{position:absolute;right:0;top:42px;width:250px;padding:8px;background:#fff;border:1px solid #ccc;border-radius:6px;z-index:40}.dropdown>button{border:0;background:none;width:100%;justify-content:space-between;font-size:12px;padding:11px 10px;text-align:left}.dropdown>button:hover{background:#f3f3f3}.dropdown label{display:block;margin:6px 0 5px}.dropdown select{font-size:13px;margin-bottom:10px}.dropdown input{margin:2px 0 10px}.dropdown .micro{margin:0 4px 5px}.search-dropdown{width:310px}.menu-version{display:block;padding:12px 10px 6px;color:#777}.center{flex:1;overflow:auto;display:flex;align-items:center;justify-content:center;padding:32px 24px}.auth-box{width:100%;max-width:392px}.auth-box h1{font-size:56px;line-height:1.02;margin:24px 0}.auth-box label{display:block;margin:16px 0 8px}.auth-box .primary{width:100%;margin-top:24px;min-height:46px;justify-content:space-between}.auth-box .micro{margin-top:20px}
#workspace{flex:1;min-height:0;display:flex;flex-direction:column;padding:12px 24px 0;width:100%;margin:auto}#demo-banner{flex:none;display:flex;gap:12px;align-items:center;margin:0 0 10px;padding:6px 10px;border:1px dashed #bbb;font-size:11px;color:#666}#reset-demo{margin-left:auto;font-size:11px}.capture-area{flex:none;margin-bottom:12px}.capture-box{background:#fff;border:1px solid #d7d7d7;border-radius:6px;display:flex;align-items:center;padding:5px 6px 5px 14px;gap:10px;min-height:52px}.capture-box:focus-within{border-color:#777}.capture-box.drag-over{border:1px dashed #171717;background:#f0f0f0}.capture-box textarea{border:0;background:transparent;resize:none;padding:8px 0;min-height:38px;max-height:140px;line-height:22px;border-radius:0;flex:1;min-width:0}.capture-box .icon-button{border:0;background:#fafafa;font-size:24px}.capture-box #sync-status{font-size:9px;white-space:nowrap;color:#666;max-width:130px;overflow:hidden;text-overflow:ellipsis}.active-filters{flex:none;display:flex;gap:6px;align-items:center;padding:0 0 8px;flex-wrap:wrap}.active-filters button{font-size:10px;padding:4px 8px}.active-filters .context-label{font-size:11px;color:#666}
#board-viewport{flex:1;min-height:0;position:relative;overflow:auto;border:1px solid var(--line);border-radius:6px;background:radial-gradient(circle,#dcdcdc .65px,transparent .8px) 8px 8px/20px 20px;overscroll-behavior:contain;scrollbar-width:thin}#board-viewport.spatial{touch-action:none;cursor:grab}#board-viewport.panning{cursor:grabbing}#board-sizer{position:relative;min-width:100%;min-height:100%}#board{position:relative;transform-origin:0 0}#empty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;padding:20px;pointer-events:none}#empty h2{font-size:22px;margin:0 0 8px}#empty p{font-size:13px;margin:0}.card{position:absolute;left:var(--x);top:var(--y);width:var(--w);height:var(--h);background:#fff;border:1px solid #ddd;border-radius:6px;overflow:hidden;display:flex;flex-direction:column}.card:hover{border-color:#aaa}.card.dragging{z-index:15;outline:1px solid #171717;border-color:#171717}.card.pending{border-style:dashed}.card-head{display:flex;align-items:center;justify-content:space-between;min-height:34px;padding:0 10px;border-bottom:1px solid #f4f4f4;cursor:grab;touch-action:none;user-select:none;gap:6px}.card-head>.mono{font-size:9px;color:#666;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.card-action{border:0;background:none;padding:3px;font-size:15px;min-width:27px;height:28px;color:#666}.card-head:focus-visible{outline:2px solid #171717;outline-offset:-2px}.card-body{min-height:0;flex:1;display:flex;flex-direction:column;cursor:pointer;overflow:hidden}.card-media{flex:1;min-height:0;position:relative;overflow:hidden;background:#f5f5f5;display:flex;align-items:center;justify-content:center}.card-media img{width:100%;height:100%;object-fit:contain;display:block;pointer-events:none;-webkit-user-drag:none}.card.kind-link .card-media img{object-fit:cover}.preview-placeholder{padding:14px;display:flex;flex-direction:column;justify-content:space-between;height:100%;width:100%;background:#f5f5f5;gap:6px}.placeholder-mark{font-size:28px;font-weight:450;color:#a8a8a8}.preview-placeholder .mono{font-size:9px;color:#666;overflow-wrap:anywhere}.card-caption{padding:10px 12px 6px;flex:none}.card-caption h3{font-size:14px;font-weight:500;line-height:1.35;letter-spacing:-.015em;margin:0;overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.card-note{font-size:18px;line-height:1.5;padding:14px;overflow:hidden;white-space:pre-wrap;overflow-wrap:anywhere}.card-foot{min-height:31px;display:flex;align-items:center;gap:4px;padding:4px 9px;color:#777;flex:none;overflow:hidden}.card-foot .stamp{font-size:8px;margin-right:auto;white-space:nowrap}.card-tags{display:flex;gap:3px;align-items:center;min-width:0;overflow:hidden}.card-tag{display:inline-flex;align-items:center;gap:4px;border:0;background:color-mix(in srgb,var(--tag-color) 9%,white);border-radius:3px;font:9px var(--mono);padding:3px 5px;color:var(--tag-color);max-width:80px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tag-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--tag-color);flex:none}.add-tag-small{border:0;padding:2px 4px;font-size:13px;flex:none;color:#777;background:transparent}.resize-handle{position:absolute;right:1px;bottom:1px;width:14px;height:14px;padding:0;border:0;background:transparent;cursor:nwse-resize;touch-action:none}.resize-handle:after{content:'';width:6px;height:6px;border-right:1px solid #aaa;border-bottom:1px solid #aaa}
#board-viewport.grid-view{background:none;border:0;cursor:auto;touch-action:auto}#board-viewport.grid-view #board-sizer{width:100%!important;height:auto!important}#board-viewport.grid-view #board{transform:none!important;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;width:100%!important;height:auto!important;padding:0 0 12px;grid-auto-rows:280px}#board-viewport.grid-view .card{position:relative;left:auto;top:auto;width:100%;height:100%}#board-viewport.grid-view .card-head{cursor:pointer;touch-action:pan-y}#board-viewport.grid-view .resize-handle{display:none}.group-label{grid-column:1/-1;align-self:stretch;display:flex;align-items:center;font:11px var(--mono);text-transform:uppercase;gap:10px;color:#666;min-height:30px}#board-viewport.grouped #board{display:block}#board-viewport.grouped .card-group{margin-bottom:24px;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));grid-auto-rows:280px;gap:12px}#board-viewport.grouped .group-label{grid-row:auto;height:30px;margin-bottom:8px}
.workspace-footer{min-height:35px;flex:none;display:flex;align-items:center;gap:12px;padding:4px 0 calc(4px + env(safe-area-inset-bottom));overflow:hidden}.week-cloud{display:flex;align-items:center;gap:9px;overflow:hidden;min-width:0;white-space:nowrap;flex:1}.week-cloud button{background:none;border:0;border-radius:0;padding:3px 0;font:10px var(--mono);color:#777;white-space:nowrap}.week-cloud button+button:before{content:'·';margin-right:7px;color:#aaa}.week-cloud button:hover{color:#171717}.zoom-controls{display:flex;align-items:center;gap:4px}.zoom-controls .icon-button{width:24px;height:26px;min-width:24px;border:0;background:transparent;font-size:15px}.zoom-controls .text-button{width:40px;color:#666;font-size:10px}
.notice{position:fixed;left:50%;bottom:18px;transform:translateX(-50%);background:#171717;color:#fff;border:1px solid #444;border-radius:6px;padding:8px 10px 8px 14px;display:flex;align-items:center;gap:12px;z-index:100;width:max-content;max-width:calc(100% - 24px);font-size:12px;line-height:1.4}.notice button{color:#fff;background:transparent;border-color:#666;font-size:11px}.notice .icon-button{border:0;width:26px;min-width:26px;height:26px;font-size:18px}dialog{border:1px solid #ccc;border-radius:6px;padding:18px;width:min(700px,calc(100% - 24px));max-height:calc(100dvh - 32px);overflow-y:auto;background:#fafafa;color:#171717}dialog::backdrop{background:#0005;backdrop-filter:blur(3px)}.detail-head{display:flex;align-items:center;gap:10px;margin-bottom:14px}.detail-head>.icon-button{margin-left:auto}.detail-head h2{font-size:22px;margin:0}.detail-head #detail-save{margin-left:auto;font-size:10px;max-width:60%;text-align:right}.detail-head #detail-meta{color:#777}#detail-image:empty{display:none}#detail-image{margin-bottom:14px;background:#f0f0f0;border-radius:6px;overflow:hidden;text-align:center}#detail-image img{max-width:100%;max-height:53dvh;object-fit:contain;display:block;margin:auto}.share-actions{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}.share-actions button,.share-actions .button{font-size:12px;min-height:38px}#detail-title{font-size:20px;font-weight:450;margin-bottom:10px}#detail-text{font-size:16px;line-height:1.5;min-height:130px}#detail-description{font-size:13px;margin-top:12px}.entry-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}.entry-options label>span{display:block;margin:0 0 5px}.entry-options select{font-size:13px}.tag-editor{padding:12px;border:1px solid var(--line);border-radius:6px;background:#fff}#detail-tags{display:flex;gap:5px;flex-wrap:wrap}#detail-tags:not(:empty){margin-bottom:10px}.detail-tag{border:1px solid color-mix(in srgb,var(--tag-color) 35%,white);color:var(--tag-color);background:color-mix(in srgb,var(--tag-color) 8%,white);font-size:12px;padding:5px 8px;gap:8px}.tag-entry{display:flex;gap:8px}.tag-entry input{flex:1;min-width:0;font-size:14px}.tag-entry button{font-size:12px}.tag-colors{display:flex;gap:7px;margin-top:10px}.tag-color{width:28px;height:28px;min-width:28px;border:2px solid transparent;padding:4px;background:#fff}.tag-color:after{content:'';width:16px;height:16px;background:var(--tag-color);border-radius:50%}.tag-color[aria-pressed=true]{border-color:#171717}.detail-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:16px}.detail-actions button{font-size:11px;color:#666}#new-board-dialog{max-width:410px}#new-board-name{margin:8px 0}#new-board-submit{margin-top:10px}
@media(max-width:1000px) and (min-width:801px){.topbar{gap:8px;padding:10px 16px}.board-picker{width:135px}.tool-button{padding:6px 8px}.wordmark{font-size:21px}.week-label{font-size:12px;padding:5px}.top-tools{gap:4px}}
@media(max-width:800px){.topbar{padding:6px 12px 8px;display:grid;grid-template-columns:auto minmax(90px,1fr) auto;gap:4px 9px;min-height:96px}.wordmark{font-size:22px;gap:7px}.wordmark .bgc{font-size:12px}.board-picker{grid-column:2;width:auto;min-width:0;justify-self:stretch}.board-picker select{font-size:12px;height:36px}.more-menu{grid-column:3;grid-row:1;justify-self:end}.week-navigation{grid-row:2;grid-column:1/3;justify-self:start;gap:0}.week-navigation .icon-button{width:25px;min-width:25px;height:32px}.week-label{font-size:12px;padding:6px 3px;gap:5px}.count{font-size:9px;padding:1px 4px}.top-tools{grid-row:2;grid-column:2/4;justify-self:end;margin-left:0;gap:4px;z-index:1}.tool-button{font-size:11px;padding:5px 7px;height:32px}.top-tools details .dropdown{position:fixed;right:12px;top:99px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 120px);overflow-y:auto}.more-menu .dropdown{top:40px;right:0}.filter-dropdown{width:270px}.search-dropdown{width:calc(100vw - 24px)}#workspace{padding:8px 12px 0}.capture-area{margin-bottom:8px}.capture-box{padding:4px 4px 4px 10px;gap:5px;min-height:49px}.capture-box textarea{font-size:16px;line-height:22px;padding:7px 0}.capture-box #sync-status{font-size:8px;max-width:85px}.capture-box .icon-button{width:33px;min-width:33px;height:35px}.capture-box textarea::placeholder{font-size:14px}#board-viewport{border-radius:4px}#board-viewport.grid-view #board{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;grid-auto-rows:var(--grid-row,235px)}#board-viewport.grouped .card-group{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:var(--grid-row,235px);gap:10px}.grid-view .card-head{min-height:30px;padding:0 7px}.grid-view .card-head>.mono{font-size:8px}.grid-view .card-action{min-width:25px;width:25px;height:28px}.grid-view .card-caption{padding:8px 9px 5px}.grid-view .card-caption h3{font-size:12px;line-height:1.35}.grid-view .card-note{font-size:14px;line-height:1.45;padding:10px}.grid-view .card-foot{padding:4px 6px;min-height:27px;gap:2px}.grid-view .card-foot .stamp{font-size:7px}.grid-view .card-tag{padding:2px 3px;font-size:8px;max-width:62px}.grid-view .tag-dot{width:5px;height:5px}.grid-view .placeholder-mark{font-size:24px}.grid-view .preview-placeholder{padding:10px}.grid-view .preview-placeholder .mono{font-size:8px}.workspace-footer{min-height:30px;padding-top:2px}.week-cloud{gap:5px}.week-cloud button{font-size:9px}.week-cloud button+button:before{margin-right:3px}.zoom-controls{gap:1px}#demo-banner{font-size:9px;margin-bottom:7px;gap:7px;line-height:1.3;padding:4px 6px}#demo-banner>span:nth-child(2){max-width:160px}#demo-banner .mono{font-size:8px}.center{padding:24px 20px}.auth-box h1{font-size:46px}dialog{padding:14px;max-height:calc(100dvh - 20px)}#detail-image img{max-height:42dvh}.share-actions{gap:5px}.share-actions button,.share-actions .button{font-size:11px;padding:8px 10px}.entry-options{gap:8px}.tag-colors{gap:5px}.tag-color{width:27px;height:27px;min-width:27px}.detail-head #detail-meta{font-size:9px}.detail-actions button{min-height:37px}}
@media(max-width:350px){.topbar{padding-left:8px;padding-right:8px;gap:4px}.wordmark{font-size:20px}.wordmark .bgc{font-size:10px}.tool-button{padding:5px}.week-label{font-size:11px}.week-navigation .icon-button{width:21px;min-width:21px}#workspace{padding-left:8px;padding-right:8px}}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

/* View choices share the compact toolbar; Index is a table, never a flattened screenshot. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.view-dropdown{width:230px}.view-dropdown button[aria-pressed=true]{background:#f2f2f2}.view-dropdown .micro{margin:0;font-size:11px}.expand-button{width:34px;padding:4px;font-size:21px;line-height:1}.card-media[href]{text-decoration:none;color:inherit;cursor:pointer;touch-action:manipulation}.card-media[href]:focus-visible{outline:2px solid #171717;outline-offset:-3px}
#board-viewport.index-view{background:#fff;cursor:auto;touch-action:auto}#board-viewport.index-view #board-sizer{width:100%!important;height:auto!important}#board-viewport.index-view #board{width:100%!important;height:auto!important;transform:none!important}
.index-table{width:100%;border-collapse:collapse;table-layout:fixed}.index-table th{text-align:left;font:10px var(--mono);text-transform:uppercase;letter-spacing:.04em;color:#666}.index-table thead th{position:sticky;top:0;z-index:2;background:#fafafa;border-bottom:1px solid #ebebeb;padding:12px 10px}.index-table td{padding:10px;vertical-align:middle;border-bottom:1px solid #f0f0f0}.index-row:hover{background:#fcfcfc}.index-row.pending .index-open{color:#666}.index-preview-col{width:66px}.index-title-col{width:auto}.index-type-col{width:80px}.index-tags-col{width:19%}.index-date-col{width:112px;font:11px var(--mono);color:#666;white-space:nowrap}.index-action-col{width:64px}.index-table .index-thumb,.index-note{height:44px;width:44px;min-height:44px;border:1px solid #ebebeb;border-radius:4px;overflow:hidden}.index-note{font:18px var(--mono);padding:0;color:#666;background:#fafafa}.index-thumb img{object-fit:cover}.index-thumb .preview-placeholder{padding:6px;align-items:center;justify-content:center}.index-thumb .placeholder-mark{font:14px var(--mono)}.index-thumb .preview-placeholder .mono{display:none}.index-open{display:block;max-width:100%;font-size:14px;font-weight:500;border:0;background:transparent;padding:4px 0;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-radius:0}.index-open:hover{background:none;text-decoration:underline}.index-description{display:block;font-size:12px;line-height:1.6;color:#777;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.index-meta{display:block;font:9px var(--mono);line-height:1.7;color:#888;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.index-tags{display:flex;flex-wrap:wrap;gap:4px}.index-tags .card-tag{max-width:100%;font-size:10px;padding:4px 6px}.index-details{width:34px;height:34px;padding:4px;border:0;background:transparent;font-size:18px}.index-group th{padding:12px 14px;background:#f5f5f5;border-bottom:1px solid #ebebeb;color:#333}
/* Full-window mode is local UI state. No browser fullscreen permissions are required. */
.expanded-controls{position:fixed;top:12px;right:12px;z-index:75;display:flex;gap:6px;padding:5px;background:#fafafa;border:1px solid #ddd;border-radius:6px}.expanded-controls button{font-size:12px;min-height:34px}.board-expanded .topbar,.board-expanded .capture-area,.board-expanded .workspace-footer,.board-expanded #active-filters,.board-expanded #demo-banner{visibility:hidden}.board-expanded #board-viewport{position:fixed;inset:0;z-index:60;width:100vw;height:100dvh;border:0;border-radius:0;background-color:#fafafa}.board-expanded #board-viewport.index-view,.board-expanded #board-viewport.grid-view{padding:64px 16px 16px}.board-expanded #board-viewport.index-view thead th{top:0}
@media(max-width:1000px){.index-type-col{width:68px}.index-date-col{width:103px}.index-tags-col{width:17%}}
@media(max-width:800px){.expand-button{display:none}.index-table .index-type-col,.index-table .index-date-col,.index-table .index-tags-col{display:none}.index-preview-col{width:58px}.index-action-col{width:48px}.index-table td{padding:8px}.index-table thead th{padding:10px 8px}.index-open{font-size:13px}.index-description{font-size:11px}.index-meta{font-size:8px}.index-details{width:32px}.index-thumb,.index-note{height:40px!important;width:40px!important;min-height:40px!important}.index-group th{padding:12px 8px}}
