/* 404 Quotes — the pin board. Loaded after lobby.css (tokens, menu bar, glass,
   buttons); this file adds only the board. Generated into quotes/assets/ by
   tools/quotes/build_board.py. */
[hidden]{display:none!important}
.bwrap{position:relative;z-index:2;max-width:var(--maxw);margin:0 auto;padding:calc(var(--bar) + 24px) var(--gut) 40px}
.bhead,.shared{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;padding:26px 28px;border-radius:24px}
.bhead h1{font-family:var(--serif);font-weight:400;font-size:clamp(30px,1rem + 2.4vw,48px);letter-spacing:-.015em;margin-top:6px}
.shared{margin-top:18px;border:1px dashed var(--hair-2)}
.shared h2{font-family:var(--serif);font-weight:400;font-size:clamp(22px,1rem + 1vw,30px);margin-top:6px}
.shared .grid{flex-basis:100%}
.eyebrow{font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.sub{color:var(--ink-2);margin-top:8px;max-width:60ch}
.bacts{display:flex;gap:8px;flex-wrap:wrap}
.layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:22px;margin-top:22px;align-items:start}
.filters{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:14px}
.filters button{height:34px;padding:0 14px;border-radius:99px;border:1px solid var(--hair-2);font-size:13px;font-weight:600;color:var(--ink-2);background:color-mix(in oklch,var(--wash) 55%,transparent);transition:background .2s,color .2s}
.filters button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.grid{list-style:none;margin:0;padding:0;columns:3 250px;column-gap:16px}
.pinc{--pc:var(--sand);position:relative;break-inside:avoid;margin:0 0 16px;padding:30px 18px 12px;border-radius:18px;transition:transform .3s var(--out),box-shadow .3s}
.pinc::before{content:"";position:absolute;left:50%;top:9px;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:radial-gradient(circle at 35% 30%,color-mix(in oklch,var(--pc) 60%,white),var(--pc) 60%);box-shadow:0 3px 5px oklch(0 0 0 / .25)}
.pinc.dragging{opacity:.45}
.pinc.over{transform:translateY(4px);box-shadow:var(--shadow),0 0 0 2px var(--red)}
.pinc .kind{display:flex;justify-content:space-between;gap:8px;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-3)}
.pinc blockquote{margin:6px 0 0;font-family:var(--serif);font-size:19px;line-height:1.36;letter-spacing:-.005em}
.pinc .hw{display:block;margin-top:6px;font-family:var(--serif);font-size:26px;line-height:1.1;text-decoration:none}
.pinc .hw:hover{text-decoration:underline}
.pinc .by{font-size:13px;color:var(--ink-3);margin-top:8px;line-height:1.4}
.pinc .by b{color:var(--ink);font-weight:600}
.pinc .mean{font-size:14px;color:var(--ink-2);margin-top:6px}
.pinc.thought{background:color-mix(in oklch,var(--pc) 22%,var(--glass-2))}
.pinc.thought blockquote{font-family:var(--sans);font-size:17px;white-space:pre-wrap;overflow-wrap:anywhere}
.pinc .mine{margin-top:10px;padding:8px 10px;border-radius:10px;background:color-mix(in oklch,var(--tint) 5%,transparent);font-size:13.5px;color:var(--ink-2);white-space:pre-wrap;overflow-wrap:anywhere}
.pinc .mine::before{content:"Your note · ";font-weight:700;color:var(--ink-3)}
.pinc textarea,.tcard textarea{width:100%;margin-top:10px;padding:10px 12px;border-radius:12px;border:1px solid var(--hair-2);background:color-mix(in oklch,var(--wash) 60%,transparent);color:var(--ink);font:inherit;font-size:14px;resize:vertical}
.pinc textarea:focus,.tcard textarea:focus{outline:2px solid var(--red);outline-offset:1px}
.tools{display:flex;align-items:center;gap:2px;margin-top:12px;padding-top:10px;border-top:1px solid var(--hair)}
.tools button{display:grid;place-items:center;min-width:30px;height:30px;padding:0 6px;border-radius:8px;font-size:12.5px;font-weight:600;color:var(--ink-2)}
.tools button:hover{background:color-mix(in oklch,var(--tint) 8%,transparent);color:var(--ink)}
.tools svg{width:14px;height:14px}
.tools .sw{display:flex;gap:4px;margin-right:auto}
.tools .sw button{min-width:0;width:16px;height:16px;padding:0;border-radius:50%;border:1px solid var(--hair-2)}
.tools .sw button[aria-pressed=true]{box-shadow:0 0 0 2px var(--paper),0 0 0 3.5px var(--ink)}
.grid.ro .tools{display:none}
.empty{padding:34px 30px;border-radius:22px;text-align:center}
.empty h3{font-family:var(--serif);font-weight:400;font-size:24px;margin-top:8px}
.tray{position:sticky;top:calc(var(--bar) + 16px);display:grid;gap:16px}
.tcard{padding:16px;border-radius:20px}
.tcard .search{width:100%;height:36px;margin-top:10px}
.trow{display:flex;justify-content:space-between;align-items:center;margin-top:8px}
.trow .left{font-size:12px;color:var(--ink-3);font-variant-numeric:tabular-nums}
.tlist{list-style:none;margin:10px 0 0;padding:0;max-height:52vh;overflow:auto}
.tlist li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 4px;border-top:1px solid var(--hair)}
.tlist q{display:block;font-family:var(--serif);font-size:15px;line-height:1.3;quotes:"“" "”"}
.tlist small{display:block;margin-top:3px;font-size:12px;color:var(--ink-3)}
.tlist button{height:30px;padding:0 12px;border-radius:99px;border:1px solid var(--hair-2);font-size:12.5px;font-weight:600}
.tlist button[aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.qfoot{position:relative;z-index:2;max-width:var(--maxw);margin:0 auto;padding:20px var(--gut) 40px;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;font-size:12.5px;color:var(--ink-3)}
@media (max-width:980px){.layout{grid-template-columns:minmax(0,1fr)}.tray{position:static}.tlist{max-height:40vh}}
@media (max-width:560px){.grid{columns:1}.bhead,.shared{padding:20px}}
@media print{.menubar,.tray,.wall,.grain,.tools,.filters,.bacts,.toast,.qfoot,.shared,.skip{display:none!important}
  body{background:#fff;padding:0}.bwrap{padding:0}.glass{background:#fff!important;box-shadow:none!important;border:1px solid #ccc!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important}
  .grid{columns:2}.pinc::before{display:none}}
body{padding-bottom:0}
.menubar .boardlink b{font-weight:600}
.bhead .sub a,.empty a{border-bottom:1px solid var(--hair-2)}
.tlist .more{padding:10px 4px;font-size:12.5px;color:var(--ink-3);display:block}
@media (pointer:coarse){
  .tools{flex-wrap:wrap;row-gap:6px}.tools button{min-width:44px;height:44px}
  .tools .sw{gap:14px;margin-right:auto;padding:0 6px}.tools .sw button{position:relative}.tools .sw button::after{content:"";position:absolute;inset:-14px}
  .tlist button{height:44px}.filters button{height:44px}
}
.tlist .tw{display:block;font-family:var(--serif);font-size:17px;font-weight:600}
