:root{
  --bg:#f7f5f0;--surface:#ffffff;--text:#1d1c1a;--muted:#6b675f;--line:#e6e1d8;
  --accent:#3b5bdb;--accent-ink:#ffffff;--ok:#2f7d4f;--danger:#b4362c;--code:#f0ece4;
  --radius:14px;--font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
  --serif:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root{--bg:#16161a;--surface:#1f1f24;--text:#ecebe7;--muted:#a19d95;--line:#2e2e35;
    --accent:#8ea2ff;--accent-ink:#111;--ok:#6cc08b;--danger:#ff8a80;--code:#26262c;color-scheme:dark}
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--text);font:16px/1.5 var(--font);
  padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}
a{color:var(--accent)}
.bar{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;align-items:center;
  padding:12px 16px;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.brand{font-weight:700;letter-spacing:.02em;text-decoration:none;color:var(--text);font-size:18px}
.bar-link{text-decoration:none;font-size:15px}
.wrap{max-width:720px;margin:0 auto;padding:16px 16px 64px}
h1{font-size:26px;line-height:1.2;margin:8px 0 12px}
h2{font-size:18px;margin:0 0 8px}
.muted{color:var(--muted)} .small{font-size:14px} .center{text-align:center}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px;margin:12px 0}
.narrow{max-width:440px;margin:40px auto}
.stack{display:flex;flex-direction:column;gap:10px}
.inline{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.inline input{flex:1;min-width:180px}
label{font-weight:600;font-size:14px}
input{font:inherit;padding:12px 14px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--text);width:100%}
input:focus{outline:2px solid var(--accent);outline-offset:1px}
button,.button{font:inherit;font-weight:600;padding:12px 16px;border-radius:10px;border:0;background:var(--accent);color:var(--accent-ink);cursor:pointer;text-decoration:none;display:inline-block;text-align:center}
button.secondary{background:transparent;color:var(--text);border:1px solid var(--line)}
button.small{padding:6px 10px;font-size:14px}
.error{color:var(--danger);font-weight:600}
.device{font-size:18px;padding:12px;border:1px dashed var(--line);border-radius:10px}
.tag{font-style:normal;font-size:12px;background:var(--code);padding:2px 6px;border-radius:6px}
.copy{white-space:pre-wrap;word-break:break-all;background:var(--code);padding:12px;border-radius:10px;font-size:14px;user-select:all}
.search input{background:var(--surface)}
.chips{display:flex;gap:8px;overflow-x:auto;padding:12px 0 4px;scrollbar-width:none}
.chip{flex:none;padding:6px 12px;border-radius:999px;border:1px solid var(--line);text-decoration:none;color:var(--text);font-size:14px;background:var(--surface)}
.chip span{color:var(--muted)} .chip.on{background:var(--text);color:var(--bg);border-color:var(--text)} .chip.on span{color:var(--bg);opacity:.7}
.list{list-style:none;margin:12px 0;padding:0}
.item{position:relative;display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);
  margin-bottom:10px;transition:transform .2s ease,opacity .2s ease;touch-action:pan-y}
.item.swiping{transition:none}
.item.gone{opacity:0;transform:translateX(-110%)}
.item-link{flex:1;display:flex;flex-direction:column;padding:14px 16px;text-decoration:none;color:var(--text);min-width:0}
.item-title{font-weight:600;font-size:17px;line-height:1.3;overflow-wrap:anywhere}
.item-meta{color:var(--muted);font-size:13px;margin-top:4px}
.item-done{background:transparent;color:var(--muted);border:1px solid var(--line);border-radius:999px;width:40px;height:40px;padding:0;margin-right:12px;flex:none}
.item-done:hover{color:var(--ok);border-color:var(--ok)}
.empty{text-align:center;padding:60px 16px}
.rows{list-style:none;padding:0;margin:0}
.rows li{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 0;border-top:1px solid var(--line)}
.rows li:first-child{border-top:0}
.note-meta{color:var(--muted);font-size:14px;margin:4px 0}
.note-meta a{text-decoration:none}
.note-title{font-size:30px;margin-top:6px}
.prose{font:19px/1.65 var(--serif);overflow-wrap:break-word}
.prose h1,.prose h2,.prose h3,.prose h4{font-family:var(--font);line-height:1.3;margin:1.6em 0 .5em}
.prose h1{font-size:24px}.prose h2{font-size:21px}.prose h3{font-size:18px}
.prose img,.prose video{max-width:100%;height:auto;border-radius:10px}
.prose pre{background:var(--code);padding:12px;border-radius:10px;overflow-x:auto;font-size:14px}
.prose code{background:var(--code);padding:1px 5px;border-radius:5px;font-size:.85em}
.prose pre code{background:none;padding:0}
.prose blockquote{margin:1em 0;padding:.4em 1em;border-left:3px solid var(--line);color:var(--muted)}
.prose table{border-collapse:collapse;display:block;overflow-x:auto;font:15px/1.4 var(--font)}
.prose th,.prose td{border:1px solid var(--line);padding:6px 10px}
.prose ul.contains-task-list{list-style:none;padding-left:1em}
.prose hr{border:0;border-top:1px solid var(--line);margin:2em 0}
.callout{border-left:4px solid var(--accent)!important;background:color-mix(in srgb,var(--accent) 8%,var(--surface));border-radius:0 10px 10px 0;color:var(--text)!important}
.callout-title{font:600 15px/1.4 var(--font);margin:.4em 0}
.callout-warning,.callout-caution,.callout-attention{border-left-color:#d9822b!important}
.callout-danger,.callout-error,.callout-bug,.callout-failure{border-left-color:var(--danger)!important}
.callout-success,.callout-check,.callout-done,.callout-tip{border-left-color:var(--ok)!important}
.callout-quote,.callout-cite{border-left-color:var(--muted)!important}
.note-actions{margin:40px 0 20px;display:flex;justify-content:center}
.note-actions button{min-width:220px;padding:14px 20px}
.toast{position:fixed;left:50%;bottom:calc(24px + env(safe-area-inset-bottom));transform:translateX(-50%);background:var(--text);color:var(--bg);
  padding:12px 16px;border-radius:12px;display:flex;gap:16px;align-items:center;box-shadow:0 6px 24px rgba(0,0,0,.2);z-index:10;font-size:15px}
.toast button{background:none;color:var(--bg);padding:0;text-decoration:underline}
.toast[hidden]{display:none}
.bar-nav{display:flex;gap:14px;overflow-x:auto;scrollbar-width:none}
.bar-link.on{color:var(--text);font-weight:600}
.ok{color:var(--ok);font-weight:600}
.row{display:flex;gap:8px;flex-wrap:wrap}
.row button{flex:1}
select,textarea{font:inherit;padding:12px 14px;border-radius:10px;border:1px solid var(--line);background:var(--bg);color:var(--text);width:100%}
textarea{resize:vertical;min-height:90px}
.inline select{flex:1;min-width:160px;width:auto}
button.danger{background:transparent;color:var(--danger);border:1px solid var(--danger)}
button.link{background:none;border:0;padding:0;color:var(--muted);font-weight:400;text-decoration:underline}
.button.secondary{background:transparent;color:var(--text);border:1px solid var(--line)}
.button.small{padding:6px 12px;font-size:14px}
.share-line{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:0 0 16px}
.shares li{flex-wrap:wrap;align-items:flex-start}
.shares li.new,.new{background:color-mix(in srgb,var(--accent) 8%,transparent);border-radius:10px;padding:10px}
.share-who{flex:1;min-width:220px}
.share-actions{display:flex;gap:6px;flex-wrap:wrap}
.copy-row{display:flex;gap:6px;margin-top:8px}
.copy-input{font-size:13px;padding:8px 10px}
.comments{margin:32px 0;border-top:1px solid var(--line);padding-top:16px}
.comment{padding:12px 0;border-bottom:1px solid var(--line);position:relative}
.comment-head{margin:0 0 4px}
.comment-body{margin:0;overflow-wrap:anywhere}
.comment.by-owner .comment-head strong{color:var(--accent)}
.comment-del{position:absolute;top:12px;right:0}
.comments form.stack{margin-top:16px}
