@font-face{font-family:Timeless Sans;src:url(assets/fonts/TimelessSansVF-subset.woff2) format("woff2");font-weight:300 800;font-style:normal;font-display:swap}@font-face{font-family:"Timeless Serif Italic";src:url(assets/fonts/TimelessSerifItalicVF-subset.woff2) format("woff2");font-weight:300 700;font-style:normal;font-display:swap}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}button{appearance:none;-webkit-appearance:none}::selection{background:var(--accent);color:var(--accent-fg)}:root{--bg: #f5f5f7;--surface: #ffffff;--surface-2: #ececee;--border: rgba(0, 0, 0, .12);--border-strong: rgba(0, 0, 0, .22);--text: #1c1c1e;--text-2: #48484a;--text-3: #66666c;--brand-1: #111111;--brand-2: #111111;--brand-gradient: #111111;--brand-gradient-cta: #111111;--brand-gradient-cta-hover: #2b2b2b;--brand-gradient-text: #111111;--brand-subtle-gradient: #f0f0f2;--hero-glow: none;--noise-texture: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAQAAADZc7J/AAADSklEQVR42j2VjRKEIAiELTV/svSRe/RbPpwbp7syQNhdKHwva33Xl/U79Rv13L70nd/xDd3nL+iNPR2yKnp6v67r0m4JMp3aOrVRv0f/VS+LXjV2o0JE3Q/dB61L65DH0DLrK+BwyqTr9SPjJPeo+0MhLZ9r55f0dhDw0ZP52REKkNk+ZHCRRVAoP9GWp3xrvbKYuoY8kiyKlsq2pIZenIp7KJCFWgpTtGslTZkuuZxkNinxIoOT92/QtoGTZXjL1KC79Wsw2dMh06mdxt1JCCs3kd/73YHku0zOnUcAVAMp7DIiZ3UYsXUq9PoMfvkYsgba1KpU20DD0u7AWHC1xB+SH+wYqIYJGVg1zv7chgNFdAox/ivXDe6JTJyH8qUAdK+uG8wvgmQKMWQKjouM7OyT8IlSLMgwjflJFxxc4O9AeUmuQbN4tDMRk3NmRaYAt3bCC4gF2TRkvRDLkEPDxtwvxLaA2bJfARmZa4aWB8AKoCZOneQYcbW6E44XuhATAQrNIXItYFwYm2gXYr62mItsLfHOnhWdjMQED5bJo5WgKnCmSTiSwaLyubtkkZ/1bwz8mQ69H16E46Kx82/Yv3fa2cRL2OHuhkGA60GahnzVdoaqjnvexidN5jncCleAuHszZUIsUI67gIjJy/7xL6uyOigtU1DYcyfTkxn5GPIPXTh2izXk1VCit1+Gr8My4A8FPJgVQIr0fwGZB6XaJPJ+jXs62H61KeTbbXd85ESDr0JpZXAUeDho6kp3ehMUezyRkXE86f0Lpif0RjT/ImMD9gbcRgm3Y9AJYOm/e5A2OG/0Y9vy6Zh3hp6L/WX40kyFKXRDz4C0m9PylncDuLXnVmAaN2g9DYPITQCch1E5d4cOTu4MjglbD8cMwgZwCuEv4AKVGZ17FzQGyUSljYwOHCe8ReR1BxCeFGLfoEoQ590+H50OKJB9MY28zQ96kZH2ooDMZelWSK3UnJhNPv9OiF10rQ/W/WF5wPyF5Wd/Hdv/49IwvvkuRFosUsYgr2bd+O4zGsLtuNU9fyOB6h6wA10krsycUGFhN7Dr2wE9mUSLjk+c1feA8c+uf08vgr+BxLyVG41c+e75JE57Fvkgdak/UOuIqKAfUv4gSQazJccAAAAASUVORK5CYII=);--accent: #111111;--accent-fg: #ffffff;--accent-subtle: #ededf0;--danger: #b3261e;--danger-ring: rgba(179, 38, 30, .16);--shadow-card: 0 1px 3px rgba(0,0,0,.06), 0 4px 12px rgba(0,0,0,.05);--shadow-card-hover: 0 2px 8px rgba(0,0,0,.09), 0 8px 24px rgba(0,0,0,.07);--shadow-elevated: 0 12px 40px rgba(0, 0, 0, .08);--shadow-header: 0 10px 30px rgba(0, 0, 0, .07);--radius-sm: 6px;--radius: 10px;--radius-card: 20px;--radius-pill: 999px;--page-max: 1180px;color-scheme:light;accent-color:#111111}[data-theme=dark]{--bg: #000000;--surface: #111111;--surface-2: #1b1b1b;--border: rgba(255, 255, 255, .12);--border-strong: rgba(255, 255, 255, .24);--text: #f5f5f7;--text-2: #b3b3b8;--text-3: #8e8e93;--brand-1: #f5f5f7;--brand-2: #f5f5f7;--brand-gradient: #f5f5f7;--brand-gradient-cta: #f5f5f7;--brand-gradient-cta-hover: #d8d8dc;--brand-gradient-text: #f5f5f7;--brand-subtle-gradient: #141414;--hero-glow: none;--accent: #f5f5f7;--accent-fg: #111111;--accent-subtle: #1c1c1c;--danger: #ff9d94;--danger-ring: rgba(255, 157, 148, .18);--shadow-card: 0 1px 3px rgba(0,0,0,.4), 0 4px 12px rgba(0,0,0,.3);--shadow-card-hover: 0 2px 8px rgba(0,0,0,.5), 0 8px 24px rgba(0,0,0,.4);--shadow-elevated: 0 16px 40px rgba(0, 0, 0, .35);--shadow-header: 0 10px 30px rgba(0, 0, 0, .4);color-scheme:dark;accent-color:#f5f5f7}@media (prefers-color-scheme: dark){:root:not([data-theme=light]):not([data-theme=dark]){--bg: #000000;--surface: #111111;--surface-2: #1b1b1b;--border: rgba(255, 255, 255, .12);--border-strong: rgba(255, 255, 255, .24);--text: #f5f5f7;--text-2: #b3b3b8;--text-3: #8e8e93;--brand-1: #f5f5f7;--brand-2: #f5f5f7;--brand-gradient: #f5f5f7;--brand-gradient-cta: #f5f5f7;--brand-gradient-cta-hover: #d8d8dc;--brand-gradient-text: #f5f5f7;--brand-subtle-gradient: #141414;--hero-glow: none;--accent: #f5f5f7;--accent-fg: #111111;--accent-subtle: #1c1c1c;--danger: #ff9d94;--danger-ring: rgba(255, 157, 148, .18);--shadow-card: 0 1px 3px rgba(0,0,0,.4), 0 4px 12px rgba(0,0,0,.3);--shadow-card-hover: 0 2px 8px rgba(0,0,0,.5), 0 8px 24px rgba(0,0,0,.4);--shadow-elevated: 0 16px 40px rgba(0, 0, 0, .35);--shadow-header: 0 10px 30px rgba(0, 0, 0, .4);color-scheme:dark;accent-color:#f5f5f7}}body{display:flex;flex-direction:column;background-color:var(--bg);background-image:var(--noise-texture);background-repeat:repeat;background-size:48px 48px;color:var(--text);font-family:Timeless Sans,system-ui,-apple-system,sans-serif;font-size:15px;line-height:1.6;min-height:100vh;-webkit-font-smoothing:antialiased}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}.about-panel p a,.about-strip a,.footer-note a,a.crisis-url{text-decoration-line:underline;text-decoration-thickness:1px;text-underline-offset:4px;text-decoration-color:color-mix(in srgb,currentColor 45%,transparent);text-decoration-skip-ink:auto;transition:text-decoration-color .15s,text-underline-offset .15s,text-decoration-thickness .15s}.about-panel p a:hover,.about-strip a:hover,.footer-note a:hover,a.crisis-url:hover{text-decoration-color:currentColor;text-decoration-thickness:2px;text-underline-offset:2px}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.site-wrapper{max-width:1180px;max-width:var(--page-max);margin:0 auto;padding:0 24px}.site-header{position:sticky;top:0;z-index:100;padding:12px 24px 0;background:transparent;border-bottom:0}.site-header:after{display:none}.site-header .site-wrapper{display:flex;align-items:center;gap:16px;height:60px;padding:0 10px 0 20px;border-radius:var(--radius-pill);background:var(--surface);border:1px solid color-mix(in srgb,var(--brand-2) 18%,var(--border));box-shadow:var(--shadow-header)}.site-title{display:inline-flex;align-items:center;line-height:1}.site-title-text{display:inline-block;font-family:Timeless Sans,sans-serif;font-size:1.25rem;line-height:1.2;font-weight:500;font-style:italic;letter-spacing:-.015em;padding:.06em .08em .14em;background:var(--brand-gradient-text);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;white-space:nowrap}.wordmark-strong{font-weight:600}.site-title:hover{text-decoration:none;opacity:.8}.site-nav{display:flex;gap:4px;list-style:none}.site-header .site-wrapper>nav{margin-left:auto}.site-nav a{display:inline-flex;align-items:center;height:38px;color:var(--text-2);font-size:.875rem;font-weight:500;padding:0 14px;border-radius:var(--radius-pill)}.site-nav a:hover{color:var(--text);background:var(--surface-2);text-decoration:none}.site-nav a[aria-current=page]{color:var(--accent);background:var(--accent-subtle);font-weight:600}.site-nav a[aria-current=page]:after{content:"";width:4px;height:4px;margin-left:6px;border-radius:50%;background:currentColor}.site-nav-contribute{display:inline-flex;align-items:center;height:38px;font-family:Timeless Sans,system-ui,sans-serif;font-size:.875rem;font-weight:600;color:var(--accent-fg);background:var(--brand-gradient-cta);border:none;padding:0 16px;border-radius:var(--radius-pill);cursor:pointer;background-clip:padding-box;box-shadow:none;text-decoration:none;white-space:nowrap;transition:background .15s}.site-nav-contribute:hover{background:var(--brand-gradient-cta-hover);color:var(--accent-fg);text-decoration:none}.nav-actions{display:flex;align-items:center;gap:8px;margin-left:0}.site-nav-posters{display:inline-flex;align-items:center;height:38px;font-family:Timeless Sans,system-ui,sans-serif;font-size:.875rem;font-weight:500;color:var(--text-2);background:var(--surface-2);border:1px solid var(--border);padding:0 14px;border-radius:var(--radius-pill);cursor:pointer;text-decoration:none;transition:background .15s,color .15s,border-color .15s;white-space:nowrap}.site-nav-posters:hover{background:color-mix(in srgb,var(--accent) 10%,var(--surface-2));color:var(--text);border-color:var(--border-strong);text-decoration:none}.posters-card{max-width:500px}.posters-list{display:flex;flex-direction:column;padding:0 12px 4px;overflow-y:auto;flex:1}.poster-row{display:flex;align-items:center;gap:12px;padding:11px 10px;border-radius:var(--radius);border-bottom:1px solid var(--border)}.poster-row:last-child{border-bottom:none}.poster-row:hover{background:var(--surface-2)}.poster-name{flex:1;font-size:.9rem;font-weight:500;color:var(--text);line-height:1.35}.poster-size{font-size:.78rem;color:var(--text-3);font-weight:400;white-space:nowrap;min-width:64px;text-align:right}.poster-download{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 13px;font-family:Timeless Sans,system-ui,sans-serif;font-size:.78rem;font-weight:600;color:var(--text-2);background:transparent;border:1px solid var(--border-strong);border-radius:var(--radius-pill);cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .15s,color .15s,border-color .15s;flex-shrink:0}.poster-download:hover{background:var(--surface-2);border-color:var(--text-3);color:var(--text);text-decoration:none}.poster-download svg{width:13px;height:13px;flex-shrink:0}.posters-empty{padding:28px 10px;color:var(--text-3);font-size:.875rem;font-style:italic;text-align:center}.posters-footer-note{font-size:.75rem;color:var(--text-3);padding:10px 20px 16px;border-top:1px solid var(--border);flex-shrink:0;line-height:1.5}.hero{position:relative;isolation:isolate;padding:56px 0 44px}.hero:before{content:"";position:absolute;inset:-80px 0 0;z-index:-1;background:var(--hero-glow);pointer-events:none}.hero-title{font-family:"Timeless Serif Italic",Georgia,serif;font-size:clamp(2.25rem,5vw,3.25rem);font-weight:450;background:var(--brand-gradient-text);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;line-height:1.15;letter-spacing:-.02em;max-width:780px;padding:0 .12em .18em .06em;margin-left:-.06em;margin-bottom:4px}.hero-subtitle{color:var(--text-2);font-size:clamp(1rem,1.6vw,1.125rem);line-height:1.5;margin-bottom:30px;max-width:620px}.search-block{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);padding:10px 12px;box-shadow:var(--shadow-elevated)}.search-row{display:flex;align-items:center;gap:8px}.search-field{position:relative;display:flex;align-items:center;flex:1;min-width:0;min-height:46px;background:var(--surface-2);border:1px solid transparent;border-radius:var(--radius-pill);transition:border-color .15s,box-shadow .15s,background .15s}.search-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent);background:var(--surface)}.search-input{flex:1;align-self:stretch;min-width:0;padding:0 16px 0 6px;font-family:Timeless Sans,system-ui,sans-serif;font-size:1rem;color:var(--text);background:transparent;border:0;border-radius:0;outline:none;appearance:none}.search-input::placeholder{color:var(--text-3)}.search-btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 28px;background:var(--brand-gradient-cta);color:var(--accent-fg);font-family:Timeless Sans,sans-serif;font-size:.875rem;font-weight:600;border:none;border-radius:var(--radius-pill);cursor:pointer;white-space:nowrap;transition:background .15s}.search-btn:hover{background:var(--brand-gradient-cta-hover)}.tag-filter-toggle{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;height:36px;margin-left:3px;padding:0 10px;background:transparent;border:none;border-radius:var(--radius-pill);color:var(--text-2);cursor:pointer;transition:background .15s,color .15s}.tag-filter-toggle:hover{background:var(--surface);color:var(--text)}.tag-filter-toggle[aria-expanded=true]{background:var(--accent-subtle);color:var(--accent)}.filter-icon{width:15px;height:15px;flex-shrink:0}.filter-label{font-size:.8125rem;font-weight:500;white-space:nowrap;user-select:none}.tag-filter-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--accent);color:var(--accent-fg);font-size:.7rem;font-weight:600}.tag-filter-count[hidden]{display:none}.toggle-chevron{width:13px;height:13px;color:currentColor;flex-shrink:0;transition:transform .2s}.tag-filter-toggle[aria-expanded=true] .toggle-chevron{transform:rotate(180deg)}.tag-filter-panel{position:absolute;top:calc(100% + 16px);left:0;z-index:40;width:min(560px,100%);padding:14px;background:var(--surface);border:1px solid var(--border-strong);border-radius:16px;box-shadow:var(--shadow-elevated)}.tag-pills{display:flex;flex-wrap:wrap;gap:6px}.filter-pill{display:inline-flex;align-items:center;padding:5px 12px;font-family:Timeless Sans,system-ui,sans-serif;font-size:.75rem;font-weight:500;border-radius:999px;border:1px solid var(--border);background:var(--surface-2);color:var(--text-2);cursor:pointer;white-space:nowrap;transition:background .12s,color .12s,border-color .12s}.filter-pill:hover{border-color:var(--text-3);color:var(--text)}.filter-pill.active{background:var(--tag-solid, var(--accent));color:#fff;border-color:var(--tag-solid, var(--accent))}.filter-pill.active:hover{filter:brightness(1.08)}.filter-pill-clear{color:var(--text-3);border-style:dashed}.filter-pill-clear:hover{color:var(--text);border-color:var(--text-3);background:var(--surface-2)}.main-content{padding:52px 0 88px;scroll-margin-top:100px}.about-strip{scroll-margin-top:100px;width:calc(100% - 48px);max-width:1132px;max-width:calc(var(--page-max) - 48px);margin:0 auto;background:var(--brand-subtle-gradient);border:1px solid var(--border);border-radius:var(--radius-card);padding:0}.about-strip .site-wrapper{max-width:none;padding:20px 24px}.about-strip p{font-size:.9375rem;color:var(--text-2);line-height:1.65}.about-strip strong{color:var(--text);font-weight:600}.section-header{display:flex;align-items:center;gap:12px;margin-bottom:20px}.section-title{font-family:Timeless Sans,system-ui,sans-serif;font-size:clamp(1.5rem,2.4vw,1.75rem);font-weight:500;color:var(--text);letter-spacing:-.02em;min-width:0}.result-count{font-size:.8125rem;color:var(--text-3);font-weight:500}.section-reset-btn{display:inline-flex;align-items:center;justify-content:center;margin-left:auto;min-height:34px;padding:0 13px;font-family:Timeless Sans,system-ui,sans-serif;font-size:.78rem;font-weight:600;color:var(--text-2);background:transparent;border:1px solid var(--border-strong);border-radius:var(--radius-pill);cursor:pointer;transition:color .15s,border-color .15s,background .15s;white-space:nowrap}.section-reset-btn:hover{color:var(--text);border-color:var(--text-3);background:var(--surface-2)}.book-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px}.book-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);padding:20px 22px 18px;display:flex;flex-direction:column;gap:8px;box-shadow:var(--shadow-card);transition:box-shadow .2s,transform .2s,border-color .2s}.book-card:hover{box-shadow:var(--shadow-card-hover);transform:translateY(-3px);border-color:color-mix(in srgb,var(--brand-2) 45%,var(--border))}.book-title{font-size:.9375rem;font-weight:600;color:var(--text);line-height:1.35}.book-meta{font-size:.8125rem;color:var(--text-3);font-weight:400}.book-desc{font-size:.85rem;color:var(--text-2);line-height:1.6;flex:1;margin-top:2px}.book-tags{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.tag{display:inline-flex;align-items:center;padding:3px 10px;font-size:.72rem;font-family:Timeless Sans,sans-serif;font-weight:500;border-radius:100px;border:1px solid transparent;cursor:pointer;line-height:1.7;letter-spacing:.01em;appearance:none;-webkit-appearance:none;transition:filter .12s,transform .12s}.tag:hover{filter:saturate(1.15) brightness(.98);text-decoration:none}.tag:active{transform:scale(.97)}.tag.tag-static{cursor:default}.tag.tag-static:hover{filter:none}.tag.tag-static:active{transform:none}.tag[data-tag=alcohol],.filter-pill[data-tag=alcohol],.contribute-tag-pill[data-tag-id=alcohol]{--tag-bg: #fee2e2;--tag-fg: #b3261e;--tag-border: #fca5a5;--tag-solid: #b3261e}.tag[data-tag=drugs],.filter-pill[data-tag=drugs],.contribute-tag-pill[data-tag-id=drugs]{--tag-bg: #f3e8ff;--tag-fg: #7e22ce;--tag-border: #d8b4fe;--tag-solid: #7e22ce}.tag[data-tag=smoking],.filter-pill[data-tag=smoking],.contribute-tag-pill[data-tag-id=smoking]{--tag-bg: #e2e8f0;--tag-fg: #334155;--tag-border: #cbd5e1;--tag-solid: #334155}.tag[data-tag=gambling],.filter-pill[data-tag=gambling],.contribute-tag-pill[data-tag-id=gambling]{--tag-bg: #ccfbf1;--tag-fg: #0f766e;--tag-border: #5eead4;--tag-solid: #0f766e}.tag[data-tag=technology],.filter-pill[data-tag=technology],.contribute-tag-pill[data-tag-id=technology]{--tag-bg: #dbeafe;--tag-fg: #1d4ed8;--tag-border: #93c5fd;--tag-solid: #1d4ed8}.tag[data-tag=food],.filter-pill[data-tag=food],.contribute-tag-pill[data-tag-id=food]{--tag-bg: #ffedd5;--tag-fg: #c2410c;--tag-border: #fdba74;--tag-solid: #c2410c}.tag[data-tag=pornography],.filter-pill[data-tag=pornography],.contribute-tag-pill[data-tag-id=pornography]{--tag-bg: #fae8ff;--tag-fg: #a21caf;--tag-border: #f0abfc;--tag-solid: #a21caf}.tag[data-tag=general],.filter-pill[data-tag=general],.contribute-tag-pill[data-tag-id=general]{--tag-bg: #dcfce7;--tag-fg: #15803d;--tag-border: #86efac;--tag-solid: #15803d}.tag[data-tag=family],.filter-pill[data-tag=family],.contribute-tag-pill[data-tag-id=family]{--tag-bg: #fef3c7;--tag-fg: #b45309;--tag-border: #fcd34d;--tag-solid: #b45309}.tag[data-tag="12-step"],.filter-pill[data-tag="12-step"],.contribute-tag-pill[data-tag-id="12-step"]{--tag-bg: #ede9fe;--tag-fg: #6d28d9;--tag-border: #c4b5fd;--tag-solid: #6d28d9}.tag[data-tag=SMART],.filter-pill[data-tag=SMART],.contribute-tag-pill[data-tag-id=SMART]{--tag-bg: #cffafe;--tag-fg: #0e7490;--tag-border: #67e8f9;--tag-solid: #0e7490}.tag[data-tag=CBT],.filter-pill[data-tag=CBT],.contribute-tag-pill[data-tag-id=CBT]{--tag-bg: #e0f2fe;--tag-fg: #0369a1;--tag-border: #7dd3fc;--tag-solid: #0369a1}.tag[data-tag=science],.filter-pill[data-tag=science],.contribute-tag-pill[data-tag-id=science]{--tag-bg: #e0e7ff;--tag-fg: #4338ca;--tag-border: #a5b4fc;--tag-solid: #4338ca}.tag[data-tag=research],.filter-pill[data-tag=research],.contribute-tag-pill[data-tag-id=research]{--tag-bg: #e4e4e7;--tag-fg: #52525b;--tag-border: #d4d4d8;--tag-solid: #52525b}.tag[data-tag=memoir],.filter-pill[data-tag=memoir],.contribute-tag-pill[data-tag-id=memoir]{--tag-bg: #ffe4e6;--tag-fg: #be123c;--tag-border: #fda4af;--tag-solid: #be123c}.tag[data-tag=self-help],.filter-pill[data-tag=self-help],.contribute-tag-pill[data-tag-id=self-help]{--tag-bg: #ecfccb;--tag-fg: #3f6212;--tag-border: #bef264;--tag-solid: #3f6212}.tag[data-tag=classic],.filter-pill[data-tag=classic],.contribute-tag-pill[data-tag-id=classic]{--tag-bg: #fef9c3;--tag-fg: #854d0e;--tag-border: #fde047;--tag-solid: #854d0e}.tag[data-tag=free],.filter-pill[data-tag=free],.contribute-tag-pill[data-tag-id=free]{--tag-bg: #f5e6dc;--tag-fg: #7c2d12;--tag-border: #d6b8a6;--tag-solid: #7c2d12}.tag[data-tag]{background:var(--tag-bg, var(--surface-2));color:var(--tag-fg, var(--text-2));border-color:var(--tag-border, var(--border))}[data-theme=dark] .tag[data-tag=alcohol]{--tag-bg: #3a1210;--tag-fg: #ffa199;--tag-border: #8a2b22}[data-theme=dark] .tag[data-tag=drugs]{--tag-bg: #35104f;--tag-fg: #d9a1ff;--tag-border: #6f2f9d}[data-theme=dark] .tag[data-tag=smoking]{--tag-bg: #202333;--tag-fg: #b6bde8;--tag-border: #4a5170}[data-theme=dark] .tag[data-tag=gambling]{--tag-bg: #0d332a;--tag-fg: #43f0ca;--tag-border: #1c7a63}[data-theme=dark] .tag[data-tag=technology]{--tag-bg: #0e2747;--tag-fg: #7cc2ff;--tag-border: #24518c}[data-theme=dark] .tag[data-tag=food]{--tag-bg: #3a1d00;--tag-fg: #ffb166;--tag-border: #7a4a00}[data-theme=dark] .tag[data-tag=pornography]{--tag-bg: #3b0a2a;--tag-fg: #ffa1d8;--tag-border: #8a2060}[data-theme=dark] .tag[data-tag=general]{--tag-bg: #0c2c1d;--tag-fg: #64f19b;--tag-border: #1f6b40}[data-theme=dark] .tag[data-tag=family]{--tag-bg: #3a2300;--tag-fg: #ffc466;--tag-border: #7a4e00}[data-theme=dark] .tag[data-tag="12-step"]{--tag-bg: #22103d;--tag-fg: #c4b5fd;--tag-border: #5a3a9e}[data-theme=dark] .tag[data-tag=SMART]{--tag-bg: #0a2b33;--tag-fg: #4fe8f0;--tag-border: #1a5f6b}[data-theme=dark] .tag[data-tag=CBT]{--tag-bg: #0a2436;--tag-fg: #7cc8ff;--tag-border: #1f527a}[data-theme=dark] .tag[data-tag=science]{--tag-bg: #171a3d;--tag-fg: #a5b4fc;--tag-border: #3d4a9e}[data-theme=dark] .tag[data-tag=research]{--tag-bg: #24262e;--tag-fg: #adb3c7;--tag-border: #4a4f60}[data-theme=dark] .tag[data-tag=memoir]{--tag-bg: #3a0f1a;--tag-fg: #ffa3b8;--tag-border: #8a2a45}[data-theme=dark] .tag[data-tag=self-help]{--tag-bg: #1f2a08;--tag-fg: #c3f06b;--tag-border: #4a5f10}[data-theme=dark] .tag[data-tag=classic]{--tag-bg: #302a08;--tag-fg: #f2da4f;--tag-border: #5f5410}[data-theme=dark] .tag[data-tag=free]{--tag-bg: #2e1a10;--tag-fg: #e6b39a;--tag-border: #5f3a28}@media (prefers-color-scheme: dark){:root:not([data-theme=light]):not([data-theme=dark]) .tag[data-tag=alcohol]{--tag-bg: #3a1210;--tag-fg: #ffa199;--tag-border: #8a2b22}:root:not([data-theme=light]):not([data-theme=dark]) .tag[data-tag=drugs]{--tag-bg: #35104f;--tag-fg: #d9a1ff;--tag-border: #6f2f9d}:root:not([data-theme=light]):not([data-theme=dark]) .tag[data-tag=smoking]{--tag-bg: #202333;--tag-fg: #b6bde8;--tag-border: #4a5170}:root:not([data-theme=light]):not([data-theme=dark]) .tag[data-tag=gambling]{--tag-bg: #0d332a;--tag-fg: #43f0ca;--tag-border: #1c7a63}:root:not([data-theme=light]):not([data-theme=dark]) .tag[data-tag=technology]{--tag-bg: #0e2747;--tag-fg: #7cc2ff;--tag-border: #24518c}:root:not([data-theme=light]):not([data-theme=dark]) .tag[data-tag=food]{--tag-bg: #3a1d00;--tag-fg: #ffb166;--tag-border: #7a4a00}:root:not([data-theme=light]):not([data-theme=dark]) .tag[data-tag=pornography]{--tag-bg: #3b0a2a;--tag-fg: #ffa1d8;--tag-border: #8a2060}:root:not([data-theme=light]):not([data-theme=dark]) .tag[data-tag=general]{--tag-bg: #0c2c1d;--tag-fg: #64f19b;--tag-border: #1f6b40}:root:not([data-theme=light]):not([data-theme=dark]) .tag[data-tag=family]{--tag-bg: #3a2300;--tag-fg: #ffc466;--tag-border: #7a4e00}:root:not([data-theme=light]):not([data-theme=dark]) .tag[data-tag="12-step"]{--tag-bg: #22103d;--tag-fg: #c4b5fd;--tag-border: #5a3a9e}:root:not([data-theme=light]):not([data-theme=dark]) .tag[data-tag=SMART]{--tag-bg: #0a2b33;--tag-fg: #4fe8f0;--tag-border: #1a5f6b}:root:not([data-theme=light]):not([data-theme=dark]) .tag[data-tag=CBT]{--tag-bg: #0a2436;--tag-fg: #7cc8ff;--tag-border: #1f527a}:root:not([data-theme=light]):not([data-theme=dark]) .tag[data-tag=science]{--tag-bg: #171a3d;--tag-fg: #a5b4fc;--tag-border: #3d4a9e}:root:not([data-theme=light]):not([data-theme=dark]) .tag[data-tag=research]{--tag-bg: #24262e;--tag-fg: #adb3c7;--tag-border: #4a4f60}:root:not([data-theme=light]):not([data-theme=dark]) .tag[data-tag=memoir]{--tag-bg: #3a0f1a;--tag-fg: #ffa3b8;--tag-border: #8a2a45}:root:not([data-theme=light]):not([data-theme=dark]) .tag[data-tag=self-help]{--tag-bg: #1f2a08;--tag-fg: #c3f06b;--tag-border: #4a5f10}:root:not([data-theme=light]):not([data-theme=dark]) .tag[data-tag=classic]{--tag-bg: #302a08;--tag-fg: #f2da4f;--tag-border: #5f5410}:root:not([data-theme=light]):not([data-theme=dark]) .tag[data-tag=free]{--tag-bg: #2e1a10;--tag-fg: #e6b39a;--tag-border: #5f3a28}}.book-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.book-action{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 13px;border-radius:var(--radius-pill);border:1px solid transparent;font-size:.78rem;font-weight:600;line-height:1;white-space:nowrap;text-decoration:none;transition:opacity .15s,transform .15s,background .15s,border-color .15s,color .15s}.book-action:hover{text-decoration:none}.book-action-primary{background:var(--surface-2);border-color:var(--border-strong);color:var(--text)}.book-action-primary:hover{background:var(--surface);border-color:var(--text-3);color:var(--text);transform:translateY(-1px)}.book-action-secondary{background:transparent;border-color:var(--border-strong);color:var(--text-2)}.book-action-secondary:hover{background:var(--surface-2);border-color:var(--text-3);color:var(--text)}.no-results{grid-column:1 / -1;padding:32px 0;color:var(--text-3);font-size:.9rem}.page-hero{padding-bottom:8px}.page-hero .hero-title{max-width:900px}.about-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-card);padding:clamp(24px,4vw,40px);box-shadow:var(--shadow-card)}.about-panel .section-title{margin-bottom:18px}.about-panel p{font-size:1rem;line-height:1.7;color:var(--text-2);max-width:none}.about-panel p+p{margin-top:16px}@media (max-width: 640px){.about-panel{padding:22px}}.site-footer{position:relative;margin-top:auto;border-top:1px solid var(--border-strong);padding:20px 0;background:var(--surface)}.footer-inner{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:36px;gap:16px}.theme-picker{justify-self:end}.footer-note{font-size:.8125rem;color:var(--text-3)}.footer-instagram{color:var(--text-3);display:inline-flex;transition:color .15s}.footer-instagram:hover{color:var(--text);text-decoration:none}.crisis-footer-link{font-weight:400;color:var(--accent)}.theme-picker{position:relative}.theme-btn{display:inline-flex;align-items:center;gap:5px;background:none;border:1px solid var(--border);border-radius:var(--radius-pill);padding:6px 12px;color:var(--text-3);font-family:Timeless Sans,sans-serif;font-size:.78rem;font-weight:500;cursor:pointer;transition:border-color .15s,color .15s;white-space:nowrap}.theme-btn:hover{border-color:var(--text-3);color:var(--text-2)}.theme-btn svg{width:13px;height:13px;flex-shrink:0}.theme-chevron{transition:transform .2s}.theme-btn[aria-expanded=true] .theme-chevron{transform:rotate(180deg)}.theme-menu{display:none;position:absolute;bottom:calc(100% + 6px);right:0;background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:4px;list-style:none;min-width:110px;box-shadow:0 4px 16px #0000001a;z-index:10}.theme-menu.open{display:block}.theme-menu li{display:flex;align-items:center;gap:7px;padding:6px 10px;border-radius:5px;font-family:Timeless Sans,sans-serif;font-size:.8rem;color:var(--text-3);cursor:pointer;transition:background .12s,color .12s}.theme-menu li:hover{background:var(--surface-2);color:var(--text)}.theme-menu li.active{color:var(--text);font-weight:500}.theme-menu li svg{width:13px;height:13px;flex-shrink:0}.modal-backdrop{position:fixed;inset:0;z-index:200;background:#080e1ca3;display:flex;align-items:center;justify-content:center;padding:20px}.modal-backdrop[hidden]{display:none}.modal-card{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-card);box-shadow:0 24px 64px #00000038;width:100%;max-width:520px;max-height:80vh;display:flex;flex-direction:column;overflow:hidden}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 20px 0;flex-shrink:0}.modal-title{font-family:Timeless Sans,system-ui,sans-serif;font-size:1.35rem;font-weight:500;color:var(--text);letter-spacing:-.01em}.close-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:var(--surface-2);border-radius:50%;cursor:pointer;color:var(--text-2);flex-shrink:0;transition:background .15s,color .15s}.close-btn:hover{background:var(--border-strong);color:var(--text)}.close-btn svg{width:14px;height:14px}.modal-subtitle{font-size:.875rem;color:var(--text-3);padding:6px 20px 14px;flex-shrink:0}.crisis-search{margin:0 20px 12px;flex-shrink:0;padding:9px 12px;font-family:Timeless Sans,sans-serif;font-size:1rem;color:var(--text);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);outline:none;transition:border-color .15s,box-shadow .15s}.crisis-search:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}.crisis-search::placeholder{color:var(--text-3)}.crisis-list{list-style:none;overflow-y:auto;flex:1;padding:0 12px 12px}.crisis-item{display:flex;flex-direction:column;gap:3px;padding:12px 10px;border-radius:var(--radius);border-bottom:1px solid var(--border)}.crisis-item:last-child{border-bottom:none}.crisis-item:hover{background:var(--surface-2)}.crisis-item-top{display:flex;align-items:baseline;justify-content:space-between;gap:8px;flex-wrap:wrap}.crisis-name{font-size:.9rem;font-weight:600;color:var(--text)}.crisis-country{font-size:.75rem;color:var(--text-3);font-weight:400;white-space:nowrap}.crisis-type{font-size:.78rem;color:var(--text-3)}.crisis-item-bottom{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:2px}.crisis-phone{font-size:.875rem;font-weight:600;color:var(--accent);font-variant-numeric:tabular-nums}.crisis-url{font-size:.8rem;color:var(--text-2)}.crisis-no-results{padding:24px 10px;color:var(--text-3);font-size:.875rem;font-style:italic}.modal-footer-note{font-size:.75rem;color:var(--danger);padding:10px 20px 16px;border-top:1px solid var(--border);flex-shrink:0;line-height:1.5}.book-card{cursor:pointer}.resource-modal-card{max-width:640px;max-height:90vh;overflow-y:auto;display:flex;flex-direction:column;gap:0}.resource-modal-hero{display:flex;flex-direction:column;gap:10px;padding:20px 24px;border-bottom:1px solid var(--border)}.resource-modal-links{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin-top:4px}.resource-modal-author{font-size:.875rem;color:var(--text-2);margin:0}.resource-modal-price{font-size:.8125rem;color:var(--text-3);margin:0}.resource-modal-section{padding:20px 24px;border-bottom:1px solid var(--border)}.resource-modal-section:last-child{border-bottom:none}.resource-modal-section-title{font-size:.8125rem;font-weight:600;letter-spacing:0;color:var(--text-3);margin:0 0 10px}.resource-modal-desc{font-size:.9375rem;line-height:1.65;color:var(--text-2);margin:0}.resource-modal-similar{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}.similar-card{background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px;cursor:pointer;transition:box-shadow .12s}.similar-card:hover{box-shadow:0 2px 10px #00000014}.similar-card:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.similar-card-title{font-size:.8125rem;font-weight:600;color:var(--text);margin:0 0 4px;line-height:1.3}.similar-card-author{font-size:.75rem;color:var(--text-3);margin:0}.contribute-card{max-width:560px;max-height:88vh}.contribute-form{display:flex;flex-direction:column;flex:1;overflow:hidden}.contribute-fields{display:flex;flex-direction:column;gap:16px;padding:4px 20px 20px;overflow-y:auto;flex:1}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.field-group{display:flex;flex-direction:column;gap:6px}.field-label{font-size:.8125rem;font-weight:500;color:var(--text-2)}.field-required{color:var(--accent)}.field-optional{color:var(--text-3);font-weight:400}.field-input{font-family:Timeless Sans,system-ui,sans-serif;font-size:1rem;color:var(--text);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius);padding:9px 12px;outline:none;transition:border-color .15s,box-shadow .15s;width:100%}.field-input::placeholder{color:var(--text-3)}.field-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent)}.field-input.field-invalid{border-color:var(--danger)}.field-input.field-invalid:focus{box-shadow:0 0 0 3px var(--danger-ring)}.field-select{cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%238e8e93' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;background-size:16px;padding-right:32px}.field-textarea{resize:vertical;min-height:72px}.contribute-tags{display:flex;flex-wrap:wrap;gap:6px}.contribute-tag-pill{font-size:.78rem;font-weight:500;padding:5px 11px;border-radius:var(--radius-pill);border:1px solid var(--border-strong);background:var(--surface-2);color:var(--text-2);cursor:pointer;transition:background .12s,color .12s,border-color .12s;user-select:none}.contribute-tag-pill:hover{background:var(--border);color:var(--text)}.contribute-tag-pill.selected{background:var(--tag-solid, var(--accent));color:#fff;border-color:var(--tag-solid, var(--accent))}.contribute-tag-pill.selected:hover{background:var(--tag-solid, var(--accent));color:#fff;filter:brightness(1.08)}.contribute-error{font-size:.8125rem;color:var(--danger);padding:0 20px 8px;flex-shrink:0}.contribute-actions{padding:12px 20px 20px;border-top:1px solid var(--border);flex-shrink:0}.contribute-submit{font-family:Timeless Sans,system-ui,sans-serif;font-size:.875rem;font-weight:600;color:var(--accent-fg);background:var(--brand-gradient-cta);border:none;padding:11px 22px;border-radius:var(--radius-pill);cursor:pointer;transition:background .15s,filter .15s}.contribute-submit:hover{background:var(--brand-gradient-cta-hover)}.contribute-submit:disabled{opacity:.6;cursor:not-allowed}.contribute-success{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 20px;text-align:center;color:var(--text-2);font-size:.9375rem;flex:1}.contribute-success[hidden]{display:none}.contribute-success svg{width:40px;height:40px;color:var(--accent)}.contribute-another{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 13px;font-family:Timeless Sans,system-ui,sans-serif;font-size:.78rem;font-weight:600;color:var(--text-2);background:transparent;border:1px solid var(--border-strong);border-radius:var(--radius-pill);cursor:pointer;text-decoration:none;transition:background .15s,color .15s,border-color .15s}.contribute-another:hover{background:var(--surface-2);border-color:var(--text-3);color:var(--text);text-decoration:none}.hidden{display:none!important}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.site-nav a{white-space:nowrap}@media (max-width: 640px){.site-wrapper{padding:0 16px}.field-row{grid-template-columns:1fr}.site-header{padding:10px 12px 0}.site-header .site-wrapper{height:54px;padding:0 8px 0 14px;gap:8px}.site-title-text{font-size:1rem}.site-nav{gap:2px}.site-nav a{padding:0 10px;font-size:.8125rem}.site-nav-posters,.site-nav-contribute{height:36px;padding:0 11px}.nav-label-extra{display:none}.nav-actions{gap:6px}.hero{padding:40px 0 32px}.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem;margin-bottom:22px}.search-block{padding:8px;border-radius:16px}.search-row{gap:6px}.search-field{min-height:44px}.search-input{padding:0 10px 0 4px;font-size:1rem;border-radius:0}.search-btn{min-height:44px;padding:0 16px;font-size:.875rem;border-radius:var(--radius-pill)}.tag-filter-toggle{height:34px;margin-left:2px;padding:0 8px;gap:5px}.filter-label{font-size:.75rem}.tag-filter-panel{top:calc(100% + 12px);padding:12px}.filter-pill{padding:7px 13px}.about-strip{width:calc(100% - 32px);border-radius:16px}.about-strip .site-wrapper{padding:18px}.main-content{padding:40px 0 64px;scroll-margin-top:84px}.book-grid{grid-template-columns:1fr;gap:16px}.footer-inner{grid-template-columns:1fr;justify-items:center;gap:12px}.theme-picker{justify-self:center}}@media (max-width: 560px){.site-header .site-wrapper>nav{margin-left:0}.site-nav{display:none}.nav-actions{margin-left:auto}}@media (max-width: 380px){.site-nav-posters{display:none}}.cookie-banner{position:fixed;bottom:clamp(12px,3vw,24px);left:50%;transform:translate(-50%) translateY(120%);z-index:9999;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:clamp(10px,2vw,16px);padding:clamp(10px,2vw,14px) clamp(14px,3vw,20px);width:max-content;max-width:calc(100vw - 32px);border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);box-shadow:0 8px 32px #0000002e;animation:cookie-rise .3s ease .15s both}.cookie-banner.dismissed{animation:cookie-fall .28s ease forwards}@keyframes cookie-rise{0%{transform:translate(-50%) translateY(120%)}to{transform:translate(-50%) translateY(0)}}@keyframes cookie-fall{0%{transform:translate(-50%) translateY(0);opacity:1}to{transform:translate(-50%) translateY(140%);opacity:0}}@media (prefers-reduced-motion: reduce){.cookie-banner{animation:none;transform:translate(-50%) translateY(0)}.cookie-banner.dismissed{display:none}}.cookie-text{font-size:clamp(.75rem,1.5vw,.8125rem);color:var(--text-2);margin:0;text-align:center}.cookie-btn{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-height:34px;padding:0 16px;font-family:Timeless Sans,system-ui,sans-serif;font-size:.78rem;font-weight:600;color:var(--accent-fg);background:var(--brand-gradient-cta);border:none;border-radius:var(--radius-pill);cursor:pointer;transition:opacity .15s,filter .15s}.cookie-btn:hover{opacity:.9}[hidden]{display:none!important}
