:root{--bg:#efe9e0;--surface:#fffdfa;--surface-hover:#f3ede2;--border:#ddd4c4;--border-strong:#c7bba5;--text:#241f18;--text-muted:#6f6656;--text-faint:#a89d89;--accent:#b45309;--accent-contrast:#fffdfa;--danger:#b3261e;--paper-yellow:#eddebb;--paper-pink:#eccad0;--paper-blue:#c2d8eb;--paper-green:#bddbbe;--paper-purple:#d5cbe7;--paper-yellow-border:color-mix(in srgb,var(--paper-yellow) 75%,var(--text));--paper-pink-border:color-mix(in srgb,var(--paper-pink) 75%,var(--text));--paper-blue-border:color-mix(in srgb,var(--paper-blue) 75%,var(--text));--paper-green-border:color-mix(in srgb,var(--paper-green) 75%,var(--text));--paper-purple-border:color-mix(in srgb,var(--paper-purple) 75%,var(--text));--paper-ink:#1c1c1c;--paper-muted:rgba(28,28,28,0.71);--paper-faint:rgba(28,28,28,0.68);--paper-line:rgba(28,28,28,0.18);--paper-link:#0f4c96;--paper-well:rgba(0,0,0,0.06);--paper-well-border:rgba(0,0,0,0.14);--paper-shadow:0 1px 2px rgba(28,20,10,0.14),0 8px 18px rgba(28,20,10,0.12);--paper-shadow-hover:0 3px 8px rgba(28,20,10,0.18),0 16px 30px rgba(28,20,10,0.18);--tape-bg:rgba(255,255,255,0.6);--tape-border:rgba(0,0,0,0.08);--code-panel:#282c34;--code-panel-border:rgba(255,255,255,0.12);--code-ink:#f1efe8;--radius-sm:6px;--radius-md:9px;--radius-lg:12px;--font-sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;--font-mono:ui-monospace,SFMono-Regular,"SF Mono",Menlo,Consolas,monospace}@media (prefers-color-scheme:dark){:root{--bg:#14110d;--surface:#201b14;--surface-hover:#2a231a;--border:#362d20;--border-strong:#4a3d29;--text:#f0ece2;--text-muted:#a89d89;--text-faint:#786d5c;--accent:#fbbf24;--accent-contrast:#1c1508;--danger:#f2867a;--paper-yellow:#fcee88;--paper-pink:#e9afbc;--paper-blue:#a8c8e7;--paper-green:#aed7b0;--paper-purple:#c5b4e0;--paper-ink:#1c1c1c;--paper-muted:rgba(28,28,28,0.78);--paper-faint:rgba(28,28,28,0.76);--paper-line:rgba(28,28,28,0.18);--paper-link:#0b3d80;--paper-well:rgba(0,0,0,0.06);--paper-well-border:rgba(0,0,0,0.14);--paper-shadow:0 1px 2px rgba(0,0,0,0.5),0 10px 26px rgba(0,0,0,0.55);--paper-shadow-hover:0 4px 10px rgba(0,0,0,0.55),0 20px 38px rgba(0,0,0,0.6);--tape-bg:rgba(255,255,255,0.16);--tape-border:rgba(255,255,255,0.1)}:root .md del{opacity:1}:root .sheet-close{opacity:.7}:root .composer{--surface:#efe7d8}:root .composer:focus-within{outline-color:var(--text)}:root .sheet:has(>textarea.field):focus-within{outline-color:var(--text)}:root .expand :focus-visible,:root .note .pin:focus-visible,:root .sheet :focus-visible{outline-color:var(--paper-ink)}:root .expand .codeblock-copy:focus-visible,:root .expand .codeblock-pre:focus-visible,:root .sheet .codeblock-copy:focus-visible,:root .sheet .codeblock-pre:focus-visible{outline-color:var(--code-ink)}:root .expand .btn.danger:hover,:root .sheet .btn.danger:hover{border-color:#7f1a14;color:#7f1a14}@media (max-width:480px){:root .sheet:has(>textarea.field):focus-within{outline-color:var(--paper-ink)}}}*{box-sizing:border-box}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;transition-duration:.001ms!important}}body,html{margin:0;padding:0;min-height:100%;color:var(--text);font:15px/1.5 var(--font-sans)}html{height:100%}body{display:flex;flex-direction:column;background:radial-gradient(ellipse 1200px 700px at 50% -10%,rgba(255,255,255,.35),transparent),var(--bg)}@media (prefers-color-scheme:dark){body{background:radial-gradient(ellipse 1200px 700px at 50% -10%,rgba(255,255,255,.04),transparent),var(--bg)}}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}kbd{font-family:var(--font-mono);font-size:11px;line-height:1;padding:2px 5px;border:1px solid var(--border-strong);border-radius:4px;background:var(--surface-hover)}.muted,kbd{color:var(--text-muted)}.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}.icon{width:16px;height:16px;display:block}[data-tip]{position:relative}[data-tip]:after,[data-tip]:before{position:absolute;opacity:0;visibility:hidden;pointer-events:none;z-index:40}[data-tip]:after{content:attr(data-tip);bottom:calc(100% + 8px);background:var(--text);color:var(--bg);font-family:var(--font-sans);font-size:11.5px;font-weight:500;white-space:nowrap;padding:4px 8px;border-radius:5px;box-shadow:0 2px 6px rgba(0,0,0,.2)}[data-tip]:after,[data-tip]:before{left:50%;transform:translateX(-50%)}[data-tip]:before{content:"";bottom:calc(100% + 3px);border:5px solid transparent;border-top:5px solid var(--text)}@media (prefers-reduced-motion:no-preference){[data-tip]:after,[data-tip]:before{transition:opacity .12s ease,visibility .12s ease}}[data-tip]:hover:after,[data-tip]:hover:before{opacity:1;visibility:visible;transition-delay:.3s}[data-tip]:focus-visible:after,[data-tip]:focus-visible:before{opacity:1;visibility:visible;transition-delay:0s}.tip-below:after{bottom:auto;top:calc(100% + 8px)}.tip-below:before{bottom:auto;top:calc(100% + 3px);border-top-color:transparent;border-bottom-color:var(--text)}.tip-left:after{left:auto;right:0;transform:none}.tip-left:before{content:none}@media (hover:none){[data-tip]:hover:after,[data-tip]:hover:before{opacity:0;visibility:hidden}}.wrap{flex:1 1;width:100%;padding:28px clamp(16px,3vw,44px) 60px}.top{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.top h1{margin:0;font-family:var(--font-mono);font-size:18px;font-weight:600;letter-spacing:-.01em}.back,.top .sub{color:var(--text-muted);font-size:13px}.back:hover{color:var(--text)}.btn{display:inline-flex;align-items:center;gap:7px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);padding:7px 13px;font-size:13.5px;cursor:pointer;transition:border-color .12s,background .12s,color .12s}.btn:hover{border-color:var(--border-strong);background:var(--surface-hover)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-contrast);font-weight:600}.btn.primary:hover{filter:brightness(1.08)}.btn.danger:hover{border-color:var(--danger);color:var(--danger)}.btn:disabled{opacity:.5;cursor:not-allowed}.field{width:100%;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:12px 14px;outline:none;resize:vertical}.field:focus{border-color:var(--accent)}textarea.field{font-family:var(--font-mono);font-size:13.5px;line-height:1.6;min-height:140px}.row{gap:10px;flex-wrap:wrap}.home,.row{display:flex;align-items:center}.home{flex:1 1;flex-direction:column;justify-content:center;padding:0 20px;text-align:center}.home>*{width:100%;max-width:420px}.home h1{font-family:var(--font-mono);font-size:26px;margin:0 0 8px;letter-spacing:-.01em}.home p{color:var(--text-muted);margin:0 0 28px}.composer{color:var(--paper-ink);border:1px solid var(--paper-well-border);border-radius:var(--radius-md);padding:16px;box-shadow:var(--paper-shadow);transition:background .15s ease}.composer .field{background:transparent;border:0;padding:0;color:inherit}.composer .field::placeholder{color:var(--paper-muted)}.composer .composer-preview{min-height:140px;max-height:320px;overflow:auto}.composer .muted{color:var(--paper-muted)}.composer:focus-within{outline:2px solid currentColor;outline-offset:2px}.composer-preview:focus-visible{outline:2px solid currentColor;outline-offset:2px}.composer .composer-preview:focus-visible{outline:none}.composer-controls{justify-content:space-between;gap:10px;margin-top:12px}.composer-actions,.composer-controls{display:flex;align-items:center;flex-wrap:wrap}.composer-actions{row-gap:8px;column-gap:10px}.composer-actions>.btn.primary{margin-left:auto}.composer-actions .seg{margin-left:0}.hint{display:inline-flex;align-items:center;gap:3px;color:var(--text-faint);font-size:12px}.divider{border:0;border-top:1px solid var(--border);margin:20px 0}.swatches{display:flex;gap:8px}.swatch{width:20px;height:15px;border-radius:3px;border:1px solid rgba(0,0,0,.15);box-shadow:0 1px 2px rgba(0,0,0,.18);cursor:pointer;padding:0;opacity:.7;transition:opacity .12s ease,transform .12s ease}.swatch:hover{opacity:.9}.swatch[aria-pressed=true]{opacity:1;outline:2px solid var(--text);outline-offset:2px}.toolbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}.search{position:relative;flex:1 1;min-width:200px}.search-field{padding-right:34px}.search-hint{position:absolute;right:10px;top:50%;transform:translateY(-50%);pointer-events:none}.search-field:focus~.search-hint,.search-field:not(:placeholder-shown)~.search-hint{opacity:0}.chips{display:flex;flex-wrap:wrap}.chip,.chips{align-items:center;gap:6px}.chip{display:inline-flex;background:var(--surface);border:1px solid var(--border);border-radius:999px;padding:5px 11px;font-size:12.5px;color:var(--text-muted);cursor:pointer;transition:border-color .12s,color .12s,background .12s}.chip:hover{border-color:var(--border-strong);color:var(--text)}.chip[aria-pressed=true]{border-color:var(--text);color:var(--text);background:var(--surface-hover)}.chip-dot{width:12px;height:9px;border-radius:2px;border:1px solid rgba(0,0,0,.15);box-shadow:0 1px 1px rgba(0,0,0,.2);flex:none}.chip.clear{border-style:dashed}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(360px,100%),1fr));grid-gap:18px;gap:18px}.note{position:relative;display:flex;flex-direction:column;border:1px solid transparent;border-radius:var(--radius-sm);padding:16px;min-width:0;min-height:150px;color:var(--paper-ink);box-shadow:var(--paper-shadow)}@media (prefers-reduced-motion:no-preference){.note{transition:transform .15s ease,box-shadow .15s ease}.grid .note:nth-child(4n){transform:rotate(-1.1deg)}.grid .note:nth-child(4n+1){transform:rotate(.7deg)}.grid .note:nth-child(4n+2){transform:rotate(-.5deg)}.grid .note:nth-child(4n+3){transform:rotate(1deg)}.note:focus-within,.note:hover{transform:rotate(0deg) translateY(-3px);box-shadow:var(--paper-shadow-hover)}@media (max-width:480px){.grid .note:nth-child(4n),.grid .note:nth-child(4n+1),.grid .note:nth-child(4n+2),.grid .note:nth-child(4n+3){transform:none}}}.note.pinned:before{content:"";position:absolute;top:-8px;left:50%;width:52px;height:18px;transform:translateX(-50%) rotate(-2.5deg);background:var(--tape-bg);border:1px solid var(--tape-border);box-shadow:0 1px 2px rgba(0,0,0,.15);border-radius:1px}.note .open{position:absolute;inset:0;z-index:1}.note .pin{position:absolute;top:6px;right:6px;z-index:2}.note .title{padding-right:40px;font-size:15px;font-weight:700;line-height:1.35;letter-spacing:-.01em;margin-bottom:8px;-webkit-line-clamp:2}.note .title,.note pre{word-break:break-word;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.note pre{margin:0;font-family:var(--font-mono);font-size:12.5px;line-height:1.55;color:var(--paper-muted);white-space:pre-wrap;flex:1 1;min-height:0;-webkit-line-clamp:5}.note .stamp{margin-top:auto;padding-top:10px;font-size:11px;color:var(--paper-faint)}.empty{display:flex;flex-direction:column;gap:12px;color:var(--text-muted);text-align:center;padding:60px 0}.empty,.pin{align-items:center}.pin{display:inline-flex;justify-content:center;padding:0;background:none;border:0;border-radius:var(--radius-sm);color:inherit;opacity:.58;cursor:pointer;transition:opacity .12s ease,background .12s ease}.pin:hover{opacity:.9;background:rgba(0,0,0,.06)}.pin:focus-visible{opacity:1}.note.pinned .pin{opacity:.9}.pin:disabled{cursor:wait}.bar{display:flex;align-items:center;gap:10px;margin-top:16px;flex-wrap:wrap}.btn.with-icon{display:inline-flex;align-items:center;gap:7px}.btn.icon-only{padding:0;justify-content:center}.btn.icon-only,.codeblock-copy,.pin,.sheet-close{min-width:36px;min-height:36px}@media (hover:none),(pointer:coarse){.btn.icon-only,.codeblock-copy,.pin,.sheet-close{min-width:40px;min-height:40px}}.seg{display:flex;margin-left:auto;background:var(--surface-hover);border:1px solid var(--border);border-radius:var(--radius-sm);padding:2px}.seg-btn{background:none;border:0;border-radius:5px;padding:6px 12px;font-size:13px;color:var(--text-muted);cursor:pointer;transition:background .12s,color .12s}.seg-btn:hover{color:var(--text)}.seg-btn[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:0 1px 2px rgba(0,0,0,.08)}.color-btn{gap:5px;padding:0 8px;min-width:44px}:root .color-btn:focus-visible{outline:2px solid var(--paper-ink);outline-offset:2px}.color-btn[aria-expanded=true]:after,.color-btn[aria-expanded=true]:before{display:none}.color-dot{border-radius:50%;border:1.5px solid}.color-dot,.color-rainbow{flex:none;width:16px;height:16px;box-sizing:border-box}.color-rainbow{border-radius:50%;border:1.5px solid var(--paper-ink);background:conic-gradient(#ff3b30,#ff9500,#ffcc00,#34c759,#007aff,#af52de,#ff3b30)}.color-menu{position:fixed;inset:auto;margin:0;z-index:60;min-width:168px;max-width:calc(100vw - 16px);padding:4px;overflow:visible;background:var(--surface);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:0 8px 24px rgba(0,0,0,.28);font-size:13.5px}.color-item{display:flex;align-items:center;gap:10px;width:100%;min-height:36px;padding:6px 10px;background:none;border:0;border-radius:var(--radius-sm);color:inherit;font:inherit;text-align:left;text-transform:capitalize;cursor:pointer}.color-name{flex:1 1}.color-check{flex:none}.color-item:hover,.color-item[aria-checked=true]{background:var(--surface-hover)}:root .color-menu .color-item:focus-visible{outline:2px solid var(--text);outline-offset:-2px;background:var(--surface-hover)}@media (hover:none),(pointer:coarse){.color-item{min-height:44px}}.expand .btn,.sheet .btn{background:var(--paper-well);border-color:var(--paper-well-border);color:inherit}.expand .btn:hover,.sheet .btn:hover{border-color:currentColor}.expand .btn.primary,.sheet .btn.primary{background:var(--paper-ink);border-color:var(--paper-ink);color:var(--paper-yellow)}.expand .btn.danger:hover,.sheet .btn.danger:hover{border-color:var(--danger);color:var(--danger)}.expand .seg,.sheet .seg{background:var(--paper-well);border-color:var(--paper-well-border)}.expand .seg-btn,.sheet .seg-btn{color:var(--paper-muted)}.expand .seg-btn:hover,.sheet .seg-btn:hover{color:inherit}.expand .seg-btn[aria-pressed=true],.sheet .seg-btn[aria-pressed=true]{background:var(--paper-well-border);color:inherit;box-shadow:none}.sheet .bar :where(.btn:not(.primary),.seg){border-color:rgba(28,28,28,.55)}.sheet .field{background:var(--paper-well);border-color:var(--paper-well-border);color:inherit}.sheet .field:focus{border-color:currentColor}.md{font-size:14.5px;line-height:1.65}.md>:first-child{margin-top:0}.md>:last-child{margin-bottom:0}.md h2,.md h3,.md h4,.md h5,.md h6{margin:22px 0 8px;line-height:1.3;letter-spacing:-.01em}.md h2{font-size:20px}.md h3{font-size:17px}.md h4,.md h5,.md h6{font-size:15px}.md ol,.md p,.md ul{margin:0 0 14px}.md ol,.md ul{padding-left:22px}.md li{margin:3px 0}.md a{color:var(--paper-link);text-decoration:underline;text-underline-offset:2px}.md code{background:var(--paper-well);border:1px solid var(--paper-well-border);border-radius:5px;padding:1px 5px;font-family:var(--font-mono);font-size:12.5px;color:inherit}.md blockquote{margin:0 0 14px;padding:2px 0 2px 14px;border-left:3px solid var(--paper-line);color:var(--paper-muted)}.md hr{border:0;border-top:1px solid var(--paper-line);margin:20px 0}.md del{opacity:.6}.codeblock{margin:0 0 14px;border-radius:var(--radius-md);background:var(--code-panel);border:1px solid var(--code-panel-border)}.codeblock-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 10px;border-bottom:1px solid var(--code-panel-border)}.codeblock-lang{font-family:var(--font-mono);font-size:11px;color:rgba(255,255,255,.55)}.codeblock-copy{display:inline-flex;align-items:center;justify-content:center;padding:0;color:rgba(255,255,255,.65);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.4);border-radius:var(--radius-sm);cursor:pointer;transition:color .12s ease,background .12s ease}.codeblock-copy:hover{color:#fff;background:rgba(255,255,255,.16)}.codeblock-copy[data-copied=true]{color:#8be08b;border-color:rgba(139,224,139,.5)}.codeblock-pre{margin:0;padding:12px 14px;overflow-x:auto}.codeblock-pre code{font-family:var(--font-mono);font-size:13px;line-height:1.55;color:var(--code-ink);background:none;border:0;padding:0}.tk-kw{color:#c678dd}.tk-str{color:#98c379}.tk-num{color:#d19a66}.tk-com{color:#9099a2;font-style:italic}.tk-fn{color:#61afef}.tk-prop{color:#56b6c2}.tk-tag{color:#e4767f}.backdrop{position:fixed;inset:0;z-index:50;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(20,16,10,.45);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:backdrop-in .15s ease-out}@keyframes backdrop-in{0%{opacity:0}}.sheet{position:relative;display:flex;flex-direction:column;width:min(720px,100%);max-height:calc(100dvh - 64px);color:var(--paper-ink);border-radius:var(--radius-lg);padding:30px;box-shadow:0 24px 48px rgba(0,0,0,.35);animation:sheet-in .15s ease-out}@keyframes sheet-in{0%{opacity:0;transform:translateY(8px) scale(.985)}}.sheet.page{width:100%;max-width:900px;max-height:none;animation:none}.sheet:focus{outline:none}.sheet-close{position:absolute;top:8px;right:8px;z-index:2;display:flex;align-items:center;justify-content:center;padding:0;background:none;border:0;border-radius:var(--radius-sm);color:inherit;opacity:.5;cursor:pointer;transition:opacity .12s ease,background .12s ease}.sheet-close:hover{opacity:1;background:rgba(0,0,0,.06)}.sheet>.composer-preview,.sheet>.field,.sheet>.md,.sheet>pre{flex:1 1;min-height:0;overflow:auto;padding-right:30px}.sheet>pre{margin:0;font-family:var(--font-mono);font-size:13.5px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.sheet .bar{margin-top:16px}.sheet.page .field{min-height:320px}.expand[open]{position:fixed;inset:0;width:100vw;height:auto;max-width:none;max-height:none;margin:0;border:0;padding:0;display:flex;flex-direction:column;overflow:hidden;overscroll-behavior:contain;color:var(--paper-ink)}.expand::-webkit-backdrop{background:rgba(0,0,0,.5)}.expand::backdrop{background:rgba(0,0,0,.5)}.expand-stripe{flex:none;height:4px;background:rgba(0,0,0,.12)}.expand-bar{flex:none;display:flex;align-items:center;gap:10px;padding:12px clamp(16px,3vw,44px);border-bottom:1px solid var(--paper-line);-webkit-user-select:none;-moz-user-select:none;user-select:none}.expand-meta{margin-right:auto;color:var(--paper-muted);font-size:13px}.expand-bar .seg{margin-left:0}.expand-reader{flex:1 1;min-height:0;overflow:auto;overscroll-behavior:contain;padding:24px clamp(16px,3vw,44px) max(40px,env(safe-area-inset-bottom))}.expand-reader:focus{outline:none}.expand-reader:focus-visible{outline:2px solid var(--paper-ink);outline-offset:-2px}.expand-reader>*{max-width:90ch}.expand-text{margin:0;font-family:var(--font-mono);font-size:14px;line-height:1.7;white-space:pre-wrap;word-break:normal;overflow-wrap:anywhere}@media (max-width:560px){.expand-meta{display:none}}@media (max-width:420px){.sheet{padding:22px 16px 16px}.toolbar{flex-direction:column;align-items:stretch}}.conflict{display:flex;flex-direction:column;gap:10px;margin-top:12px;padding:14px 16px;background:var(--paper-well);border:1px solid var(--paper-well-border);border-radius:var(--radius-md);outline:none}.conflict-msg{margin:0;font-size:13.5px;line-height:1.5}.conflict-body{margin:0;max-height:30vh;overflow:auto;padding:10px 12px;background:var(--paper-well);border:1px solid var(--paper-well-border);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:13px;line-height:1.6;white-space:pre-wrap;word-break:break-word}.conflict-actions{display:flex;gap:8px;flex-wrap:wrap}.sheet:has(>textarea.field){width:min(960px,100%);max-width:none;height:min(88vh,900px);max-height:min(88vh,900px);overflow-y:auto}.sheet.page:has(>textarea.field){height:auto}.sheet:has(>textarea.field)>textarea.field{min-height:clamp(8rem,30vh,24rem)}.sheet:has(>textarea.field):focus-within{outline:2px solid var(--paper-ink);outline-offset:2px}.sheet .field{background:transparent;border:none;box-shadow:none;padding:0 30px 0 0}@media (max-width:480px){.sheet:not(.page):has(>textarea.field){width:100%;height:var(--vvh,100dvh);max-height:var(--vvh,100dvh);border-radius:0;padding:16px 16px calc(16px + env(safe-area-inset-bottom, 0px))}.backdrop.editing{padding:0;align-items:flex-start;top:var(--vvt,0);height:var(--vvh,100dvh)}.sheet.page:has(>textarea.field)>textarea.field{min-height:55vh}.sheet:has(>textarea.field) .bar{position:-webkit-sticky;position:sticky;bottom:0;background:inherit;padding-top:10px}.sheet:has(>textarea.field):focus-within{outline-offset:-4px}}