@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&family=Noto+Serif+SC:wght@500;600;700&display=swap');

:root {
  --paper: #f4f2ed;
  --paper-deep: #e9e6df;
  --ink: #191a17;
  --muted: #85857e;
  --faint: #adada5;
  --line: #deddd6;
  --white: #fbfaf7;
  --signal: #ee7652;
  --signal-light: #fbe9e2;
  --blue: #729bb3;
  --purple: #9b83a9;
  --shadow: 0 18px 50px rgba(28, 28, 24, .08);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: Manrope, -apple-system, BlinkMacSystemFont, "PingFang SC", sans-serif; }
button, input, textarea, select { font: inherit; }
button { cursor: pointer; }
.idea-body, .idea-card h3 { overflow-wrap: anywhere; }

.app-shell { min-height: 100vh; display: grid; grid-template-columns: 220px minmax(0, 1fr); }
.sidebar { border-right: 1px solid var(--line); padding: 29px 18px 22px; display: flex; flex-direction: column; background: rgba(251,250,247,.26); }
.brand { color: var(--ink); text-decoration: none; display: flex; align-items: center; gap: 10px; padding: 0 8px; }
.brand-word { font-family: "DM Mono", monospace; font-size: 13px; letter-spacing: -.05em; }
.brand-word span { color: var(--muted); }
.brand-mark { width: 26px; height: 26px; display: inline-flex; position: relative; align-items: center; justify-content: center; }
.brand-mark:before { content: ''; position: absolute; inset: 3px; border: 1px solid var(--ink); border-radius: 50%; }
.brand-mark:after { content: ''; position: absolute; width: 6px; height: 6px; background: var(--signal); border-radius: 50%; top: 0; right: 1px; }
.brand-mark span { width: 3px; height: 3px; background: var(--blue); border-radius: 50%; position: absolute; }
.brand-mark span:first-child { left: 3px; top: 8px; }.brand-mark span:nth-child(2) { right: 2px; bottom: 4px; }.brand-mark span:nth-child(3) { left: 9px; bottom: 1px; }
.orbit-card { margin: 52px 4px 34px; height: 136px; background: #e5e8df; overflow: hidden; padding: 18px; position: relative; }
.orbit-label { display: block; color: #777c72; font-family: "DM Mono", monospace; font-size: 9px; letter-spacing: .1em; text-transform: uppercase; }
.orbit-card strong { display: block; font-family: "Noto Serif SC", serif; font-size: 46px; line-height: 1; margin-top: 12px; font-weight: 500; }
.orbit-orb { position: absolute; border-radius: 50%; opacity: .76; }.orb-one { width: 100px; height: 100px; background: #ccd6c8; right: -27px; top: 34px; }.orb-two { width: 27px; height: 27px; background: #edaa8b; right: 17px; top: 19px; }.orb-three { width: 8px; height: 8px; background: #7194a7; right: 25px; bottom: 20px; }
.nav-list { display: grid; gap: 3px; }
.nav-item { text-decoration: none; color: var(--muted); font-family: "DM Mono", monospace; font-size: 11px; border-left: 1px solid transparent; padding: 10px 9px; display: flex; align-items: center; gap: 10px; transition: .18s ease; }
.nav-item:hover { color: var(--ink); border-left-color: var(--line); }
.nav-item.active { color: var(--ink); border-left-color: var(--signal); background: rgba(255,255,255,.44); }
.nav-item b { margin-left: auto; font-weight: 400; color: var(--faint); font-size: 10px; }
.nav-icon { width: 14px; text-align: center; font-family: Manrope, sans-serif; font-size: 14px; color: var(--signal); }
.sidebar-bottom { margin-top: auto; padding: 0 8px; display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.text-button { border: 0; padding: 0; background: none; color: var(--muted); font-family: "DM Mono", monospace; font-size: 10px; }.text-button:hover { color: var(--ink); }.text-button span { color: var(--signal); margin-right: 4px; }
.local-note { color: #b0b0a8; font-family: "DM Mono", monospace; font-size: 8px; }
.tag-nav { margin: 30px 8px 0; display: grid; gap: 8px; }.tag-nav-label { color: var(--faint); font: 9px "DM Mono", monospace; text-transform: uppercase; letter-spacing: .08em; margin-bottom: 3px; }.tag-nav a { color: var(--muted); text-decoration: none; font: 10px "DM Mono", monospace; display:flex; align-items:center; justify-content:space-between; }.tag-nav a:hover { color: var(--ink); }.tag-nav button { border:0; color:var(--faint); background:transparent; font-size:16px; line-height:10px; padding:0; }.tag-nav button:hover { color:var(--signal); }.idea-tags { display: flex; gap: 7px; flex-wrap: wrap; margin-top: 13px; }.idea-tag { border: 0; color: var(--muted); background: transparent; padding: 0; font: 9px "DM Mono", monospace; }.idea-tag:before { content: '#'; color: var(--signal); }.idea-tag:hover { color: var(--ink); }

.main-content { max-width: 1280px; width: 100%; padding: 39px clamp(24px, 5vw, 78px) 90px; margin: 0 auto; }
.topbar { display: flex; justify-content: space-between; align-items: flex-end; gap: 25px; margin-bottom: 44px; }
.eyebrow { font-family: "DM Mono", monospace; font-size: 9px; letter-spacing: .12em; color: var(--faint); margin: 0 0 10px; text-transform: uppercase; }.topbar h1 { font-family: "Noto Serif SC", serif; font-weight: 500; letter-spacing: -.06em; font-size: clamp(31px, 4vw, 50px); margin: 0; line-height: 1.1; }
.top-actions { display: flex; gap: 13px; align-items: center; }.search-box { display: flex; align-items: center; border-bottom: 1px solid var(--line); padding: 0 2px 7px; color: var(--muted); height: 31px; width: 160px; }.search-box input { border: 0; background: transparent; outline: none; width: 100%; margin-left: 7px; font-family: "DM Mono", monospace; font-size: 10px; color: var(--ink); }.search-box:focus-within { border-bottom-color: var(--ink); }.primary-button, .solid-button { border: 1px solid var(--ink); background: var(--ink); color: var(--white); border-radius: 0; padding: 10px 13px; font-family: "DM Mono", monospace; font-size: 10px; transition: .18s ease; }.primary-button:hover, .solid-button:hover { background: var(--signal); border-color: var(--signal); }.primary-button span { font-size: 15px; line-height: 0; vertical-align: -2px; margin-right: 4px; }.primary-button em { font-style: normal; }

.section-head { display: flex; justify-content: space-between; align-items: flex-end; border-bottom: 1px solid var(--ink); padding-bottom: 11px; margin: 0 0 3px; }.section-head h2 { font-family: "DM Mono", monospace; font-size: 11px; font-weight: 500; letter-spacing: -.02em; margin: 0; }.section-head p { margin: 0; color: var(--muted); font-size: 10px; }.section-head .count { font-family: "DM Mono", monospace; color: var(--faint); font-size: 9px; }
.content-grid { display: grid; grid-template-columns: minmax(0, 1.6fr) minmax(220px, .58fr); gap: clamp(26px, 5vw, 70px); align-items: start; }.stack { display: grid; }
.idea-card { background: transparent; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; padding: 24px 4px 22px 0; position: relative; transition: .18s ease; }.idea-card:hover { background: rgba(255,255,255,.34); padding-left: 12px; padding-right: 12px; }.card-top { display: flex; justify-content: space-between; gap: 10px; align-items: center; margin-bottom: 14px; }.source-pill { display: inline-flex; align-items: center; gap: 6px; font-family: "DM Mono", monospace; font-size: 9px; color: var(--muted); letter-spacing: .02em; }.source-pill i { display: inline-block; width: 6px; height: 6px; border-radius: 50%; background: var(--signal); }.source-pill.like i { background: var(--blue); }.source-pill.direct i { background: var(--purple); }.source-pill.parent i { background: #aaa; }.card-age { font-family: "DM Mono", monospace; color: var(--faint); font-size: 9px; }
.idea-card h3 { font-family: "Noto Serif SC", serif; font-size: clamp(19px, 2vw, 25px); line-height: 1.45; font-weight: 500; letter-spacing: -.045em; margin: 0 0 12px; max-width: 760px; }.idea-body { color: #62645d; font-size: 12px; line-height: 1.8; margin: 0; white-space: pre-wrap; max-width: 740px; }.idea-body.clamp { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }.read-more { border: 0; background: none; color: var(--muted); font-family: "DM Mono", monospace; font-size: 9px; padding: 9px 0 0; }.read-more:hover { color: var(--ink); }.read-more span { font-size: 12px; margin-left: 3px; }.card-source { margin: 14px 0 0; border-left: 1px solid var(--line); padding: 2px 0 2px 10px; color: #8d8e86; font-size: 10px; line-height: 1.6; }.card-source.thought { border-left-color: #b5c7ba; color: #63776b; }.card-source a { color: var(--muted); text-decoration: none; }.card-source a:hover { color: var(--ink); text-decoration: underline; }.card-footer { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 13px; min-height: 20px; }.card-actions { display: flex; gap: 10px; flex-wrap: wrap; opacity: 0; transition: opacity .18s ease; }.idea-card:hover .card-actions, .idea-card:focus-within .card-actions { opacity: 1; }.ghost-button { border: 0; border-bottom: 1px solid var(--line); background: none; color: var(--muted); border-radius: 0; font-family: "DM Mono", monospace; font-size: 9px; padding: 3px 0; }.ghost-button:hover { border-color: var(--ink); color: var(--ink); }.ghost-button.accent { color: var(--signal); border-color: #f4c2b2; }.card-author { color: var(--faint); font-family: "DM Mono", monospace; font-size: 9px; white-space: nowrap; }
.source-marker { display: inline-flex; width: 13px; height: 13px; align-items: center; justify-content: center; }.source-marker i { display: block; width: 7px; height: 7px; background: var(--signal); border-radius: 50%; }.source-marker.marker-article i { width: 7px; height: 7px; border-radius: 1px; transform: rotate(45deg); }.source-marker.marker-like i { background: var(--blue); }.source-marker.marker-authored i, .source-marker.marker-direct i { background: var(--purple); }.source-marker.marker-reply i { background: #7da98d; }.source-marker.marker-parent i { background: #999b96; }.source-marker.marker-bookmark i { background: var(--signal); }
.side-panel { border-left: 1px solid var(--line); padding: 5px 0 0 22px; position: sticky; top: 25px; }.side-panel h3 { font-family: "DM Mono", monospace; margin: 0 0 19px; font-size: 10px; font-weight: 500; text-transform: uppercase; letter-spacing: .08em; }.side-panel > p { color: var(--muted); line-height: 1.7; font-size: 10px; margin: 0 0 17px; max-width: 220px; }.signal-row { display: flex; gap: 9px; align-items: flex-start; padding: 11px 0; border-top: 1px solid var(--line); }.signal-row strong { font-family: "DM Mono", monospace; font-size: 10px; display: block; margin-bottom: 3px; font-weight: 500; }.signal-row span { color: var(--muted); font-size: 9px; line-height: 1.5; }.signal-dot { flex: 0 0 auto; width: 6px; height: 6px; margin-top: 4px; border-radius: 50%; background: var(--signal); }.signal-dot.blue { background: var(--blue); }.signal-dot.purple { background: var(--purple); }.mini-stat { margin-top: 16px; border-top: 1px solid var(--ink); padding: 11px 0; display: flex; justify-content: space-between; align-items: center; }.mini-stat span { font-family: "DM Mono", monospace; font-size: 9px; color: var(--muted); }.mini-stat strong { font-family: "DM Mono", monospace; font-size: 15px; font-weight: 500; }
.candidate-label { margin: 35px 0 0; padding: 9px 0 0; border-top: 1px solid var(--ink); display: flex; align-items: center; gap: 8px; color: var(--muted); font-family: "DM Mono", monospace; font-size: 9px; }.candidate-label:after { content: ''; height: 1px; flex: 1; background: var(--line); }.candidate-label span { color: var(--faint); font-size: 8px; }
.timeline { position: relative; padding-left: 22px; }.timeline:before { content: ''; position: absolute; left: 3px; top: 8px; bottom: 8px; width: 1px; background: var(--line); }.timeline-entry { position: relative; padding: 0 0 30px; }.timeline-entry:before { content: ''; position: absolute; left: -22px; top: 5px; width: 6px; height: 6px; border: 1px solid var(--paper); border-radius: 50%; background: var(--signal); box-shadow: 0 0 0 1px var(--signal); }.timeline-date { font-family: "DM Mono", monospace; font-size: 9px; color: var(--muted); margin: 0 0 8px; }.timeline-entry h3 { font-family: "Noto Serif SC", serif; font-size: 19px; font-weight: 500; letter-spacing: -.035em; margin: 0 0 7px; }.timeline-entry p { color: #666760; font-size: 11px; line-height: 1.75; margin: 0; }.timeline-meta { margin-top: 9px; font-family: "DM Mono", monospace; font-size: 9px; color: var(--faint); }
.empty-state { text-align: center; padding: 92px 20px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); color: var(--muted); }.empty-state .empty-icon { color: var(--signal); font-size: 23px; margin-bottom: 10px; }.empty-state strong { display: block; color: var(--ink); font-family: "Noto Serif SC", serif; font-weight: 500; font-size: 20px; margin-bottom: 7px; }.empty-state p { font-family: "DM Mono", monospace; font-size: 9px; margin: 0; }
.ask-shell { max-width: 760px; }.ask-intro { padding: 24px 0 35px; border-bottom: 1px solid var(--ink); }.ask-intro h2 { font-family: "Noto Serif SC", serif; font-weight: 500; font-size: clamp(28px, 4vw, 48px); line-height: 1.25; letter-spacing: -.06em; margin: 0 0 17px; }.ask-intro > p:last-child { color: var(--muted); font-size: 12px; line-height: 1.8; max-width: 520px; margin: 0; }.ask-form { padding: 25px 0 30px; border-bottom: 1px solid var(--line); }.ask-types { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; }.ask-type { border: 1px solid var(--ink); background: var(--ink); color: var(--white); padding: 8px 11px; font: 10px "DM Mono", monospace; }.ask-types span { color: var(--faint); font: 9px "DM Mono", monospace; }.ask-form textarea { display: block; width: 100%; min-height: 126px; resize: vertical; border: 1px solid var(--line); background: var(--white); color: var(--ink); outline: none; padding: 15px; font: 15px/1.75 "Noto Serif SC", serif; }.ask-form textarea:focus { border-color: var(--ink); }.ask-form textarea:disabled { opacity: .65; }.ask-form-footer { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-top: 13px; }.ask-form-footer span { color: var(--faint); font: 9px "DM Mono", monospace; }.ask-form-footer button:disabled { opacity: .5; cursor: wait; }.ask-error { margin-top: 20px; padding: 13px 15px; background: var(--signal-light); color: #925a46; font-size: 11px; line-height: 1.6; }.agent-result { margin-top: 30px; border-top: 1px solid var(--ink); border-bottom: 1px solid var(--line); padding: 13px 0 20px; }.agent-result-head { display: flex; justify-content: space-between; color: var(--muted); font: 9px "DM Mono", monospace; letter-spacing: .07em; }.agent-result-head small { color: var(--faint); font: inherit; letter-spacing: 0; }.agent-result-body { margin-top: 20px; white-space: pre-wrap; color: #62645d; font-size: 13px; line-height: 1.85; }.agent-citations { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 20px; }.agent-citations button { border: 1px solid var(--line); background: transparent; color: var(--muted); padding: 7px 9px; text-align: left; font: 9px/1.4 "DM Mono", monospace; }.agent-citations button:hover { border-color: var(--ink); color: var(--ink); }.agent-result-actions { display: flex; justify-content: flex-end; margin-top: 21px; }
.library-toolbar { display: flex; gap: 16px; flex-wrap: wrap; margin: 0 0 3px; border-bottom: 1px solid var(--line); }.filter-button { border: 0; border-bottom: 1px solid transparent; background: transparent; color: var(--muted); font-family: "DM Mono", monospace; font-size: 9px; padding: 9px 0 8px; }.filter-button:hover, .filter-button.active { border-bottom-color: var(--ink); color: var(--ink); }.library-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); column-gap: 32px; }.library-grid .idea-card { height: 100%; }
.practice-card { display: flex; justify-content: space-between; gap: 25px; align-items: flex-start; }.practice-card .practice-state { min-width: 92px; text-align: right; }.status-label { color: var(--muted); font-family: "DM Mono", monospace; font-size: 9px; }.status-label.done { color: #69927b; }.progress-bar { height: 2px; background: var(--line); margin-top: 9px; overflow: hidden; }.progress-bar span { display: block; height: 100%; background: var(--signal); }
.modal-backdrop { position: fixed; inset: 0; background: rgba(25,26,23,.27); display: grid; place-items: center; padding: 20px; z-index: 10; backdrop-filter: blur(5px); }.modal-backdrop[hidden] { display: none; }.modal { width: min(620px, 100%); max-height: min(800px, 92vh); overflow: auto; background: var(--paper); border: 1px solid var(--ink); border-radius: 0; box-shadow: var(--shadow); padding: 29px; position: relative; }.modal-close { position: absolute; top: 14px; right: 17px; border: 0; background: none; color: var(--muted); font-size: 21px; }.modal h2 { font-family: "Noto Serif SC", serif; font-size: 25px; font-weight: 500; margin: 0 0 5px; }.modal-intro { color: var(--muted); font-size: 10px; margin: 0 0 23px; }.form-grid { display: grid; gap: 15px; }.field { display: grid; gap: 6px; }.field label { font-family: "DM Mono", monospace; font-size: 9px; color: var(--muted); }.field input, .field textarea, .field select { width: 100%; border: 1px solid var(--line); background: var(--white); border-radius: 0; padding: 11px 12px; outline: none; color: var(--ink); font-size: 12px; }.field textarea { resize: vertical; min-height: 110px; line-height: 1.6; }.field input:focus, .field textarea:focus, .field select:focus { border-color: var(--ink); box-shadow: none; }.form-actions { display: flex; justify-content: flex-end; gap: 15px; margin-top: 5px; }.cancel-button { border: 0; border-bottom: 1px solid var(--line); background: transparent; color: var(--muted); font-family: "DM Mono", monospace; font-size: 10px; padding: 10px 0; }.source-preview { padding: 13px; background: var(--white); border: 1px solid var(--line); border-radius: 0; font-size: 11px; color: #697a70; line-height: 1.6; max-height: 130px; overflow: auto; white-space: pre-wrap; }.practice-callout { background: var(--signal-light); padding: 13px 15px; border-radius: 0; color: #925a46; font-size: 11px; line-height: 1.6; margin-bottom: 17px; }.toast { position: fixed; z-index: 20; bottom: 23px; left: 50%; transform: translate(-50%, 20px); opacity: 0; pointer-events: none; background: var(--ink); color: var(--white); border-radius: 0; padding: 11px 15px; font-family: "DM Mono", monospace; font-size: 10px; transition: .25s ease; }.toast.show { opacity: 1; transform: translate(-50%, 0); }
@media (max-width: 880px) { .app-shell { grid-template-columns: 1fr; }.sidebar { border-right: 0; border-bottom: 1px solid var(--line); padding: 17px 18px 12px; display: block; }.brand { width: max-content; }.orbit-card, .sidebar-bottom { display: none; }.nav-list { display: flex; overflow: auto; gap: 3px; margin-top: 17px; }.nav-item { white-space: nowrap; padding: 9px 11px; border-left: 0; border-bottom: 1px solid transparent; }.nav-item.active { border-left: 0; border-bottom-color: var(--signal); }.main-content { padding: 29px 18px 55px; }.topbar { display: block; margin-bottom: 31px; }.top-actions { margin-top: 21px; }.search-box { flex: 1; }.content-grid { grid-template-columns: 1fr; }.side-panel { position: static; border-left: 0; border-top: 1px solid var(--line); padding: 25px 0 0; }.library-grid { grid-template-columns: 1fr; } }
@media (max-width: 480px) { .top-actions { gap: 10px; }.primary-button { padding-left: 10px; padding-right: 10px; }.primary-button em { display: none; }.idea-card { padding: 21px 2px 19px; }.idea-card:hover { padding-left: 6px; padding-right: 6px; }.card-actions { opacity: 1; }.card-footer { align-items: flex-start; flex-direction: column; }.card-author { align-self: flex-end; }.modal { padding: 25px 19px; } }

.read-more { width: 32px; height: 32px; padding: 0; display:inline-flex; align-items:center; justify-content:center; border:0; background:transparent; color:var(--muted); }
.read-more:hover { color:var(--ink); background:rgba(25,26,23,.05); }
.fold-arrow { display:block; width:9px; height:9px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg) translate(-2px,-2px); transition:transform .18s ease; }
.fold-arrow.open { transform:rotate(225deg) translate(-2px,-2px); }
.idea-body.clamp { -webkit-line-clamp: 6; }
.rich-body { white-space:normal; }.rich-body p { margin:0 0 10px; }.rich-body p:last-child { margin-bottom:0; }.rich-body ul,.rich-body ol { margin:8px 0 10px 22px; padding:0; }.rich-body li { margin:4px 0; }.rich-body strong,.rich-body b { color:var(--ink); font-weight:700; }.rich-body a { color:var(--ink); text-decoration:underline; text-decoration-color:var(--line); text-underline-offset:3px; }.rich-body blockquote { border-left:2px solid var(--line); margin:10px 0; padding-left:14px; color:var(--muted); }.rich-body code { background:var(--paper-deep); padding:2px 4px; font:11px "DM Mono",monospace; }.rich-body pre { white-space:pre-wrap; background:var(--paper-deep); padding:12px; overflow:auto; }
.tag-icon { display:inline-block; width:14px; height:10px; border:1.5px solid currentColor; border-radius:2px; transform:rotate(-35deg); position:relative; }.tag-icon:before { content:''; position:absolute; width:3px; height:3px; border:1px solid currentColor; border-radius:50%; left:2px; top:2px; }
.rich-body.clamp { display:block; max-height:10.8em; overflow:hidden; }
.parent-divider { height:1px; background:var(--line); margin:22px 0 14px; }.parent-quote { border-left:2px solid var(--line); padding:0 0 0 13px; color:var(--muted); font-size:11px; line-height:1.7; }.parent-quote > span { display:block; margin-bottom:5px; color:var(--faint); font:9px "DM Mono",monospace; text-transform:uppercase; }.parent-quote small { display:block; margin-top:8px; color:var(--faint); font:9px "DM Mono",monospace; }
.board-pin { width:16px; height:16px; display:block; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }.tag-nav button { width:24px; height:24px; display:inline-flex; align-items:center; justify-content:center; font-size:0; }.tag-nav button:hover .board-pin { stroke:var(--ink); }.tag-nav button.pinned .board-pin { fill:currentColor; stroke:currentColor; }
.pin-icon { display:block; width:11px; height:11px; border:1.3px solid currentColor; border-radius:50% 50% 45% 45%; transform:rotate(45deg); position:relative; }.pin-icon:after { content:''; position:absolute; width:1px; height:6px; background:currentColor; right:-3px; bottom:-4px; transform:rotate(-45deg); }.tag-nav button.pinned { color:var(--signal); }.tag-nav button.pinned .pin-icon { background:currentColor; box-shadow:0 0 0 2px var(--paper); }.content-grid-full { grid-template-columns:1fr; }
.idea-card [data-edit] { cursor:text; }.idea-card [data-edit]:hover { outline:1px dashed var(--line); outline-offset:5px; }.idea-card [data-edit].editing { outline:1px solid var(--signal); outline-offset:6px; background:var(--white); }
.card-actions { display:flex; align-items:center; gap:8px; min-height:32px; }
.ghost-button { width:32px; height:32px; display:inline-flex; align-items:center; justify-content:center; padding:0; border:0; color:var(--muted); }
.ghost-button:hover { color:var(--ink); background:rgba(25,26,23,.05); }
.ghost-button.accent { color:var(--signal); }
.ui-icon { display:block; width:20px; height:20px; color:currentColor; }
.icon-sweep:before,.icon-sweep:after { content:''; position:absolute; width:13px; height:1.5px; left:1px; top:7px; background:currentColor; transform:rotate(45deg); }.icon-sweep:after { transform:rotate(-45deg); }
.icon-idea:before { content:''; position:absolute; width:11px; height:11px; left:2px; top:1px; border:1.5px solid currentColor; border-radius:50%; }.icon-idea:after { content:''; position:absolute; width:7px; height:1.5px; left:4px; top:13px; background:currentColor; box-shadow:1px 3px 0 -0.2px currentColor; }
.icon-tag { width:16px; height:13px; border:1.5px solid currentColor; border-radius:2px; transform:rotate(-35deg); margin:1px; }.icon-tag:before { content:''; position:absolute; width:3px; height:3px; border:1px solid currentColor; border-radius:50%; left:2px; top:3px; }
.icon-restore:before { content:''; position:absolute; width:12px; height:12px; left:1px; top:1px; border:1.5px solid currentColor; border-right-color:transparent; border-radius:50%; }.icon-restore:after { content:''; position:absolute; left:0; top:0; border-top:4px solid transparent; border-bottom:4px solid transparent; border-right:5px solid currentColor; }
.card-origin { margin-left:auto; }.card-origin a { color:var(--faint); text-decoration:none; font:16px Arial,sans-serif; }.card-origin a:hover { color:var(--ink); }.idea-card.sweeping { animation: sweepAway .24s ease forwards; pointer-events:none; }.source-quote { position:relative; border-left:2px solid var(--line); padding:16px 18px 14px 25px; max-height:260px; overflow:auto; background:rgba(255,255,255,.35); color:#62645d; font-size:12px; line-height:1.8; white-space:pre-wrap; }.source-quote .quote-mark { position:absolute; left:7px; top:10px; color:var(--signal); font:25px Georgia,serif; }.source-quote small { display:block; margin-top:10px; color:var(--faint); font:9px "DM Mono",monospace; }.tag-picker { display:flex; flex-wrap:wrap; gap:7px; }.tag-choice { border:1px solid var(--line); background:transparent; color:var(--muted); border-radius:999px; padding:7px 10px; font:10px "DM Mono",monospace; }.tag-choice:hover,.tag-choice.selected { border-color:transparent; background:var(--signal-light); color:#a24f39; }.tag-choice:nth-child(2n).selected { background:#e4eef4; color:#50748a; }.tag-choice:nth-child(3n).selected { background:#eee6f1; color:#7b5c88; }@keyframes sweepAway { 0%{opacity:1;transform:translateX(0) scale(1)} 55%{opacity:.45;transform:translateX(12px) scale(.98)} 100%{opacity:0;transform:translateX(35px) scale(.94);filter:blur(3px)} }
.source-marker { width: 20px; height: 20px; }.source-marker i { width: 11px; height: 11px; }.source-marker.marker-article i { width: 11px; height: 11px; }.card-actions { gap: 14px; }.ghost-button { font-size: 17px; line-height: 1; border: 0; padding: 2px; }.pinned-boards { display:grid; gap:18px; border-left:1px solid var(--line); padding-left:22px; position:sticky; top:25px; }.pinned-board { border-top:1px solid var(--ink); padding-top:10px; }.pinned-head { display:flex; justify-content:space-between; align-items:center; margin-bottom:8px; }.pinned-head button:first-child { border:0; background:transparent; padding:0; color:var(--ink); font:10px "DM Mono",monospace; }.shuffle-board { border:0; background:transparent; color:var(--muted); font-size:18px; }.pinned-idea { display:block; width:100%; text-align:left; border:0; border-bottom:1px solid var(--line); background:transparent; color:var(--muted); padding:9px 0; font:10px/1.5 "DM Mono",monospace; }.pinned-idea:hover { color:var(--ink); }.pinned-empty { color:var(--faint); font:9px "DM Mono",monospace; }
