:root{color-scheme:dark;--bg: #2a2521;--bg-raised: #241f1c;--bg-sunken: #1f1b18;--heading: #e3dcd2;--body: #b5aa9c;--secondary: #9c9080;--muted: #8a7f6f;--faint: #696050;--hairline: #423a2e;--accent: #c4ad8f;--accent-hover: #d6c8b3;--underline: #a49787;--on-accent: #2a2521;--ok: #a5c497;--warn: #d9a36b;--danger: #e0a090;--danger-border: #c97b6b;--overlay: rgba(18, 14, 11, .72);--focus: #d6c8b3;--font-serif: "EB Garamond", Georgia, "Times New Roman", serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, monospace;--text-meta: 12px;--text-label: 11px;--text-small: 15px;--text-ui: 16px;--text-body: 17px;--text-lede: 19px;--text-row: 22px;--text-h2: 24px;--text-h1: clamp(30px, 1.5rem + 1.6vw, 38px);--text-display: clamp(32px, 1.5rem + 1.9vw, 40px);--leading-body: 1.85;--leading-tight: 1.2;--track-meta: .1em;--track-label: .18em;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 20px;--s-6: 24px;--s-8: 32px;--s-10: 40px;--s-12: 48px;--s-14: 56px;--s-16: 64px;--s-18: 72px;--s-24: 96px;--radius: 2px;--radius-md: 3px;--shell-max: 1100px;--sidebar-w: 180px;--main-max: 720px;--measure: 68ch;--page-x: 20px;--page-y: 40px;--dur: .15s;--ease: cubic-bezier(.16, 1, .3, 1)}@media (min-width: 700px){:root{--text-body: 18px;--leading-body: 1.9;--page-x: 60px;--page-y: 72px}}@media (prefers-color-scheme: light){:root{color-scheme:light;--bg: #efe8dc;--bg-raised: #f5efe5;--bg-sunken: #e6dfd2;--heading: #2a2521;--body: #4a4036;--secondary: #665b4f;--muted: #6f6356;--faint: #a0958a;--hairline: #d9cfbf;--accent: #7a5f3f;--accent-hover: #5c4730;--underline: #b3a28e;--on-accent: #f5efe5;--ok: #4e7a3f;--warn: #9a6520;--danger: #9a4a3a;--danger-border: #c08676;--overlay: rgba(42, 37, 33, .55);--focus: #5c4730}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0;border-color:var(--hairline)}html{background:var(--bg);-webkit-text-size-adjust:100%}body{min-width:320px;min-height:100vh;background:var(--bg);color:var(--body);font-family:var(--font-serif);font-size:var(--text-ui);font-weight:400;line-height:1.6;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#root{min-height:100vh}::selection{background:var(--hairline);color:var(--heading)}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:500;color:var(--heading);line-height:var(--leading-tight);text-wrap:balance}h1{font-size:var(--text-h1)}h2{font-size:var(--text-h2)}h3{font-size:20px}p{text-wrap:pretty}a{color:inherit;text-decoration:none}.prose a,.markdown-content a,.auth-footer a,.empty-state a,.no-interests a,.error-container a:not(.btn){color:var(--heading);border-bottom:1px solid var(--underline);transition:color var(--dur) ease,border-color var(--dur) ease}.prose a:hover,.markdown-content a:hover,.auth-footer a:hover,.empty-state a:hover,.no-interests a:hover{color:var(--accent-hover);border-color:var(--accent-hover)}img,svg{display:block;max-width:100%}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}button:disabled{cursor:default}code,kbd,pre{font-family:var(--font-mono)}:focus-visible{outline:2px solid var(--focus);outline-offset:3px;border-radius:var(--radius)}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.meta{font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta);line-height:1.6}.meta-label{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:var(--track-label);text-transform:uppercase;line-height:1.6;color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.6em;font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta);line-height:1;padding:.8em 1.1em;color:var(--heading);background:transparent;border:1px solid var(--underline);border-radius:var(--radius);white-space:nowrap;text-decoration:none;transition:color var(--dur) ease,border-color var(--dur) ease,background var(--dur) ease}.btn svg{width:1.2em;height:1.2em;flex-shrink:0}.btn:hover{border-color:var(--accent);color:var(--accent-hover)}.btn:disabled{opacity:.5}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--on-accent)}.btn-ghost{border-color:transparent;color:var(--muted);padding-left:.6em;padding-right:.6em}.btn-ghost:hover{border-color:transparent;color:var(--heading)}.btn-sm{padding:.6em .85em;font-size:var(--text-label)}.btn-lg{padding:1em 1.4em;font-size:13px}.btn-icon{padding:.55em}.btn-danger{color:var(--danger);border-color:var(--danger-border)}.btn-danger:hover{background:var(--danger-border);border-color:var(--danger-border);color:var(--bg)}.btn-danger-icon{color:var(--danger);border-color:transparent}.btn-danger-icon:hover{border-color:var(--danger-border);color:var(--danger)}.btn-subscribed{color:var(--accent);border-color:var(--accent)}.btn-subscribed:hover{color:var(--accent-hover)}.form-group{display:flex;flex-direction:column;gap:var(--s-2)}.form-group label{display:flex;align-items:center;gap:var(--s-2);font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}.form-group label svg{display:none}.form-group small{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.04em;color:var(--faint)}input,textarea,select{width:100%;font-family:var(--font-serif);font-size:var(--text-ui);line-height:1.5;color:var(--heading);background:var(--bg-raised);border:1px solid var(--hairline);border-radius:var(--radius-md);padding:.55em .75em;outline:none;transition:border-color var(--dur) ease,box-shadow var(--dur) ease}input:focus,textarea:focus,select:focus{border-color:var(--underline);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 18%,transparent)}input::placeholder,textarea::placeholder{color:var(--faint)}input:disabled,textarea:disabled{color:var(--secondary);background:transparent}textarea{resize:vertical;min-height:5.5rem}input[type=checkbox]{width:auto;accent-color:var(--accent)}select option{background:var(--bg-raised)}.checkbox-group .checkbox-label{font-family:var(--font-serif);font-size:var(--text-ui);letter-spacing:0;text-transform:none;color:var(--body);gap:var(--s-3)}.search-box{display:flex;align-items:center;gap:var(--s-3);max-width:420px;padding:var(--s-2) 0;border-bottom:1px solid var(--hairline);color:var(--muted)}.search-box svg{width:16px;height:16px;flex-shrink:0}.search-box input{background:none;border:0;border-radius:0;padding:var(--s-1) 0}.search-box input:focus{box-shadow:none}.error-message,.success-message,.info-message,.error-banner{display:flex;align-items:flex-start;gap:var(--s-3);margin-top:var(--s-5);padding:var(--s-3) var(--s-4);border:1px solid var(--hairline);border-radius:var(--radius);font-size:var(--text-small);line-height:1.5;color:var(--body)}.error-message svg,.success-message svg,.info-message svg{width:16px;height:16px;flex-shrink:0;margin-top:2px}.error-message,.error-banner{border-color:var(--danger-border);color:var(--danger)}.success-message{border-color:var(--ok);color:var(--ok)}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--s-4);padding:var(--s-24) 0;color:var(--muted);font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta)}.loading-container.compact{padding:var(--s-8) 0}.spinner{color:var(--muted);animation:spin 1.4s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.empty-state{padding:var(--s-16) 0;max-width:48ch}.empty-state svg{display:none}.empty-state h2{font-size:var(--text-row)}.empty-state p{margin-top:var(--s-2);font-size:18px;font-style:italic;line-height:1.6;color:var(--secondary)}.error-container{padding:var(--s-16) 0;max-width:48ch}.error-container svg{width:24px;height:24px;color:var(--danger)}.error-container h2{margin-top:var(--s-4);font-size:var(--text-row)}.error-container p{margin-top:var(--s-2);font-size:18px;font-style:italic;line-height:1.6;color:var(--secondary)}.error-container .btn{margin-top:var(--s-6)}.page-header p{margin-top:var(--s-3);font-size:var(--text-lede);font-style:italic;line-height:1.5;color:var(--secondary)}.page-header-content{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--s-4) var(--s-6)}.page-title{display:flex;align-items:flex-start;gap:var(--s-4)}.page-icon{display:none}.page-header .back-link{margin-bottom:var(--s-6)}.back-link{display:inline-flex;align-items:center;gap:var(--s-2);font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta);color:var(--muted);transition:color var(--dur) ease}.back-link svg{width:14px;height:14px}.back-link:hover{color:var(--heading)}.status-badge{display:inline-flex;align-items:center;gap:.6em;font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta);color:var(--secondary);white-space:nowrap}.status-badge:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex-shrink:0}.status-badge.status-enabled,.status-badge.running,.status-badge.scheduled,.status-badge.allowed{color:var(--ok)}.status-badge.status-disabled,.status-badge.stopped,.status-badge.not-allowed{color:var(--danger)}.status-badge.pending{color:var(--warn)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:var(--s-5);background:var(--overlay)}.modal,.modal-content{position:relative;width:100%;max-width:480px;max-height:calc(100vh - 40px);overflow:auto;padding:var(--s-8);background:var(--bg);border:1px solid var(--hairline);border-radius:var(--radius-md)}.delete-modal,.feed-status-modal{max-width:560px}.modal-header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-4);margin-bottom:var(--s-5)}.modal-header h2,.modal-header h3{font-size:var(--text-row)}.modal-close{display:inline-flex;padding:var(--s-1);color:var(--muted);transition:color var(--dur) ease}.modal-close svg{width:18px;height:18px}.modal-close:hover{color:var(--heading)}.modal-content>.modal-close{position:absolute;top:var(--s-4);right:var(--s-4)}.modal-content>h2{font-size:var(--text-row);margin-bottom:var(--s-5)}.modal-form{display:flex;flex-direction:column;gap:var(--s-5)}.modal-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:var(--s-3);margin-top:var(--s-6)}.mobile-only{display:none}.app-layout{display:flex;flex-direction:column;gap:var(--s-10);min-height:100vh;max-width:var(--shell-max);margin:0 auto;padding:var(--page-y) var(--page-x)}.navbar-container{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-4) var(--s-6)}.navbar-brand{display:inline-flex;align-items:center;gap:var(--s-3);order:1;font-size:18px;font-weight:500;color:var(--heading);white-space:nowrap}.brand-mark{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;border:1px solid var(--underline);border-radius:50%;font-family:var(--font-serif);font-size:16px;font-weight:400;color:var(--heading);line-height:1}.navbar-links{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2) var(--s-5);order:3;flex-basis:100%}.nav-link{display:inline-flex;align-items:center;font-family:var(--font-serif);font-size:var(--text-ui);color:var(--muted);white-space:nowrap;transition:color var(--dur) ease}.nav-link:hover,.nav-link.active{color:var(--heading)}.nav-link:before{content:"";display:none;width:1rem;color:var(--accent)}.nav-link.active:before{content:"● "}.navbar-user{display:flex;align-items:center;gap:var(--s-3);order:2;margin-left:auto}.user-name{font-style:italic;font-size:var(--text-ui);color:var(--secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:10rem}.admin-logout{position:relative}.admin-logout .exit-icon{position:absolute;right:3px;bottom:3px}.main-content{display:flex;flex-direction:column;flex:1;min-width:0;width:100%;max-width:var(--main-max)}.main-content>*:first-child{flex:1}.site-footer{margin-top:var(--s-16);padding-top:var(--s-5);border-top:1px solid var(--hairline)}.site-footer p{font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta);line-height:1.7;color:var(--muted)}.site-footer p+p{margin-top:var(--s-2);color:var(--faint)}@media (min-width: 820px){.app-layout{display:grid;grid-template-columns:var(--sidebar-w) minmax(0,1fr);gap:var(--s-14)}.navbar-container{position:sticky;top:var(--page-y);flex-direction:column;flex-wrap:nowrap;align-items:flex-start;gap:var(--s-10);min-height:calc(100vh - 2 * var(--page-y))}.navbar-brand{flex-direction:column;align-items:flex-start;gap:var(--s-4);white-space:normal;line-height:1.3}.navbar-links{flex-direction:column;align-items:flex-start;gap:var(--s-3);flex-basis:auto;order:2}.nav-link:before{display:inline-block}.navbar-user{order:3;margin-left:0;margin-top:auto;flex-wrap:wrap}.main-content{min-height:calc(100vh - 2 * var(--page-y))}.site-footer{margin-top:var(--s-18)}}.app-layout:has(.admin-page,.admin-dashboard){max-width:1280px}.main-content:has(.admin-page,.admin-dashboard){max-width:none}.explore-hero h1,.page-header h1{font-size:var(--text-h1)}.explore-lede{margin-top:var(--s-6);font-size:var(--text-body);line-height:var(--leading-body);color:var(--body);max-width:58ch}.explore-stats{margin-top:var(--s-5);font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta);color:var(--muted)}.explore-filters{display:flex;flex-direction:column;gap:var(--s-3);margin-top:var(--s-10);padding-top:var(--s-5);border-top:1px solid var(--hairline)}.filter-row{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s-1) var(--s-5)}.filter-chip,.filter-toggle{display:inline-flex;align-items:baseline;gap:.5em;padding:2px 0;font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta);line-height:1.6;color:var(--muted);border-bottom:1px solid transparent;white-space:nowrap;transition:color var(--dur) ease,border-color var(--dur) ease}.filter-chip:hover,.filter-toggle:hover{color:var(--heading)}.filter-chip.active{color:var(--heading);border-bottom-color:var(--underline)}.filter-chip-count{font-size:var(--text-label);color:var(--faint)}.filter-toggle{color:var(--accent)}.filter-toggle:hover{color:var(--accent-hover)}.knowledge-grid{margin-top:var(--s-8);border-top:1px solid var(--hairline);transition:opacity var(--dur) ease}.knowledge-grid.is-refreshing{opacity:.5}.knowledge-card{display:block;padding:var(--s-6) 0;border-bottom:1px solid var(--hairline);color:inherit;transition:padding-left var(--dur) ease}.knowledge-card:after{content:"";display:table;clear:both}.knowledge-card:hover{padding-left:var(--s-3)}.knowledge-card .knowledge-card-image{float:right;width:96px;margin:var(--s-1) 0 var(--s-2) var(--s-4)}.knowledge-card-body{min-width:0}.knowledge-card-body>*+*{margin-top:var(--s-2)}.knowledge-card-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s-1) var(--s-4);font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta);line-height:1.6;color:var(--secondary)}.knowledge-card-topic{color:var(--muted)}.knowledge-card-date{color:var(--muted);white-space:nowrap}@media (min-width: 560px){.knowledge-card-date{margin-left:auto}}.knowledge-card-title{font-size:var(--text-row);font-weight:500;line-height:1.25;color:var(--heading);transition:color var(--dur) ease}.knowledge-card:hover .knowledge-card-title{color:var(--accent-hover)}.knowledge-card-excerpt{max-width:64ch;font-size:var(--text-ui);line-height:1.6;color:var(--body);display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}@media (min-width: 560px){.knowledge-card{display:grid;grid-template-columns:minmax(0,1fr) 128px;column-gap:var(--s-6);padding:var(--s-8) 0}.knowledge-card.no-image{grid-template-columns:minmax(0,1fr)}.knowledge-card:after{display:none}.knowledge-card .knowledge-card-image{float:none;width:100%;margin:var(--s-1) 0 0;grid-column:2;grid-row:1;align-self:start}.knowledge-card-body{grid-column:1;grid-row:1}}.content-type-badge{font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta);color:var(--accent);white-space:nowrap}.knowledge-image{position:relative;width:100%;aspect-ratio:4 / 3;overflow:hidden;background:var(--bg-raised);border:1px solid var(--hairline);border-radius:var(--radius)}.knowledge-image img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .5s var(--ease)}.knowledge-image.is-loaded img{opacity:1}.knowledge-image.is-waiting:after,.knowledge-image.is-loading:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(100deg,transparent 35%,color-mix(in srgb,var(--hairline) 55%,transparent) 50%,transparent 65%);background-size:260% 100%;animation:shimmer 2.2s linear infinite}@keyframes shimmer{0%{background-position:120% 0}to{background-position:-140% 0}}.knowledge-image.is-failed{background:var(--bg-sunken)}.knowledge-image-fallback{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--faint)}.knowledge-image-fallback svg{width:18px;height:18px}@media (prefers-reduced-motion: reduce){.knowledge-image.is-waiting:after,.knowledge-image.is-loading:after{animation:none;background:none}}.pagination{display:flex;align-items:center;justify-content:space-between;gap:var(--s-4);margin-top:var(--s-8);font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta)}.pagination-step{display:inline-flex;align-items:center;gap:.5em;padding:var(--s-2) 0;color:var(--muted);white-space:nowrap;transition:color var(--dur) ease}.pagination-step:hover:not(:disabled){color:var(--heading)}.pagination-step:disabled{color:var(--faint);opacity:.6}.pagination-pages{display:none;list-style:none;gap:var(--s-1)}.pagination-page{display:grid;place-items:center;min-width:32px;height:32px;padding:0 var(--s-1);color:var(--muted);border-bottom:1px solid transparent;transition:color var(--dur) ease,border-color var(--dur) ease}.pagination-page:hover{color:var(--heading)}.pagination-page.active{color:var(--heading);border-bottom-color:var(--underline)}.pagination-gap{display:grid;place-items:center;min-width:24px;height:32px;color:var(--faint)}.pagination-summary{color:var(--secondary);white-space:nowrap}@media (min-width: 560px){.pagination-pages{display:flex}.pagination-summary{display:none}}.feed-item-page .back-link{margin-bottom:var(--s-8)}.feed-item-article{max-width:var(--measure)}.feed-item-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--s-1) var(--s-4);font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta);line-height:1.6;color:var(--secondary)}.feed-item-topic{color:var(--muted);border-bottom:1px solid transparent;transition:color var(--dur) ease,border-color var(--dur) ease}.feed-item-topic:hover{color:var(--heading);border-bottom-color:var(--underline)}.feed-item-meta time{color:var(--muted)}.feed-item-header h1{margin-top:var(--s-4);font-size:var(--text-display);line-height:1.15}.feed-item-image{margin:var(--s-8) 0 0}.feed-item-image img{display:block;width:100%;height:auto;border:1px solid var(--hairline);border-radius:var(--radius-md)}.feed-item-image figcaption{margin-top:var(--s-3)}.feed-item-image-full{display:inline-flex;align-items:center;gap:.6em;font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta);color:var(--accent);transition:color var(--dur) ease}.feed-item-image-full svg{width:13px;height:13px}.feed-item-image-full:hover{color:var(--accent-hover)}.feed-item-content{margin-top:var(--s-10)}.markdown-content{font-size:var(--text-body);line-height:var(--leading-body);color:var(--body);overflow-wrap:break-word}.markdown-content>*+*{margin-top:1.4em}.markdown-content>p:first-of-type:first-letter{float:left;font-family:var(--font-serif);color:var(--accent);font-size:3.4em;line-height:.85;padding-right:.08em;padding-top:.05em}.markdown-content h1,.markdown-content h2,.markdown-content h3,.markdown-content h4,.markdown-content h5,.markdown-content h6{font-weight:500;color:var(--heading);line-height:1.25}.markdown-content h1,.markdown-content h2{font-size:1.55em;margin-top:2.2em}.markdown-content h3{font-size:1.25em;margin-top:2em}.markdown-content h4,.markdown-content h5,.markdown-content h6{font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-label);text-transform:uppercase;color:var(--muted);margin-top:2em}.markdown-content h1+*,.markdown-content h2+*,.markdown-content h3+*,.markdown-content h4+*{margin-top:.8em}.markdown-content>h1:first-child,.markdown-content>h2:first-child,.markdown-content>h3:first-child{margin-top:0}.markdown-content strong{font-weight:500;color:var(--heading)}.markdown-content em{font-style:italic}.markdown-content del{color:var(--faint)}.markdown-content ul,.markdown-content ol{padding-left:1.4em}.markdown-content ul{list-style:none}.markdown-content ul>li{position:relative}.markdown-content ul>li:before{content:"–";position:absolute;left:-1.2em;color:var(--faint)}.markdown-content ol{list-style:decimal}.markdown-content ol>li::marker{font-family:var(--font-mono);font-size:.8em;color:var(--faint)}.markdown-content li+li{margin-top:.4em}.markdown-content li>p+p,.markdown-content li>ul,.markdown-content li>ol{margin-top:.5em}.markdown-content blockquote{margin-left:0;padding:.2em 0 .2em 1.4em;border-left:2px solid var(--underline);font-style:italic;font-size:1.05em;color:var(--secondary)}.markdown-content blockquote p+p{margin-top:.8em}.markdown-content hr{border:0;margin:3em 0;text-align:center;color:var(--muted)}.markdown-content hr:before{content:"· · ·";letter-spacing:.6em}.markdown-content code{font-family:var(--font-mono);font-size:.82em}.markdown-content :not(pre)>code{color:var(--heading);background:color-mix(in srgb,var(--hairline) 60%,transparent);padding:.1em .4em;border-radius:var(--radius-md)}.markdown-content pre{overflow-x:auto;padding:1.1em 1.3em;border:1px solid var(--hairline);border-radius:var(--radius-md);background:var(--bg-sunken);line-height:1.65;font-size:14px}.markdown-content pre code{font-size:inherit;color:var(--body)}.markdown-content table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;font-size:.92em}.markdown-content th,.markdown-content td{text-align:left;padding:.55em .8em .55em 0;border-bottom:1px solid var(--hairline);vertical-align:top}.markdown-content th{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);font-weight:400}.markdown-content img{display:block;max-width:100%;height:auto;border-radius:var(--radius-md)}.markdown-content kbd{font-family:var(--font-mono);font-size:.8em;border:1px solid var(--underline);border-bottom-width:2px;border-radius:var(--radius-md);padding:0 .4em}.auth-container{display:grid;place-items:center;min-height:100vh;padding:var(--s-10) var(--s-5)}.auth-card{width:100%;max-width:380px}.auth-header{display:flex;flex-direction:column;align-items:flex-start;gap:var(--s-6)}.auth-header h1{font-size:var(--text-h1)}.auth-header p{margin-top:calc(-1 * var(--s-3));font-size:var(--text-lede);font-style:italic;line-height:1.5;color:var(--secondary)}.auth-form{display:flex;flex-direction:column;gap:var(--s-5);margin-top:var(--s-8)}.auth-form .btn{align-self:flex-start;margin-top:var(--s-2)}.auth-footer{margin-top:var(--s-10);padding-top:var(--s-5);border-top:1px solid var(--hairline);font-size:var(--text-ui);color:var(--secondary)}.topics-page .search-box{margin-top:var(--s-8)}.topics-section{margin-top:var(--s-12)}.topics-section h2{font-size:var(--text-row)}.topics-grid{margin-top:var(--s-4);border-top:1px solid var(--hairline)}.topic-card{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-3) var(--s-5);padding:var(--s-5) 0;border-bottom:1px solid var(--hairline)}.topic-icon{display:none}.topic-info{flex:1 1 16rem;min-width:0}.topic-info h3{font-size:20px}.topic-info p{margin-top:var(--s-1);font-size:var(--text-ui);line-height:1.55;color:var(--body)}.topic-actions{display:flex;align-items:center;gap:var(--s-2);flex-shrink:0}.delete-warning{display:flex;align-items:flex-start;gap:var(--s-3);color:var(--warn)}.delete-warning svg{flex-shrink:0;margin-top:3px}.delete-warning p{color:var(--body);line-height:1.55}.delete-warning strong{color:var(--heading);font-weight:500}.impact-summary{margin-top:var(--s-6)}.impact-summary h3,.affected-users h4,.scheduled-jobs-list h4{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:var(--track-label);text-transform:uppercase;font-weight:400;color:var(--muted)}.impact-grid{display:grid;gap:var(--s-2);margin-top:var(--s-3)}.impact-item{display:flex;align-items:center;gap:var(--s-4);padding:var(--s-3) var(--s-4);border:1px solid var(--hairline);border-radius:var(--radius)}.impact-item svg{flex-shrink:0;color:var(--muted)}.impact-number{display:block;font-size:var(--text-row);font-weight:500;line-height:1.2;color:var(--heading)}.impact-label{display:block;font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:var(--track-meta);color:var(--muted)}.affected-users{margin-top:var(--s-6)}.affected-users ul{list-style:none;margin-top:var(--s-3);border-top:1px solid var(--hairline)}.affected-users li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s-1) var(--s-4);padding:var(--s-2) 0;border-bottom:1px solid var(--hairline)}.affected-users .user-name{font-style:normal;color:var(--heading)}.affected-users .user-email{font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:.04em;color:var(--muted)}.affected-users .more-users{font-style:italic;color:var(--faint)}.profile-content{display:grid;gap:var(--s-12);margin-top:var(--s-10)}.profile-card h2{display:flex;align-items:center;gap:var(--s-3);font-size:var(--text-row);padding-bottom:var(--s-3);border-bottom:1px solid var(--hairline)}.profile-card h2 svg{display:none}.profile-form{display:flex;flex-direction:column;gap:var(--s-5);margin-top:var(--s-6);max-width:420px}.profile-form .btn{align-self:flex-start;margin-top:var(--s-2)}.interests-list{display:flex;flex-wrap:wrap;gap:var(--s-2);margin-top:var(--s-5)}.interest-tag{display:inline-flex;align-items:center;gap:.4em;padding:.4em .8em;border:1px solid var(--hairline);border-radius:var(--radius);font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta);color:var(--accent)}.interest-tag svg{display:none}.no-interests{margin-top:var(--s-5);font-size:18px;font-style:italic;line-height:1.6;color:var(--secondary)}.admin-login-header{display:flex;flex-direction:column;gap:var(--s-2);padding-right:var(--s-8)}.admin-login-header .admin-icon{display:none}.admin-login-header h2{font-size:var(--text-row)}.admin-login-header p{font-size:var(--text-ui);line-height:1.5;color:var(--secondary)}.admin-login-form{display:flex;flex-direction:column;gap:var(--s-5);margin-top:var(--s-6)}.admin-login-form .btn{align-self:flex-start}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:var(--s-4);margin-top:var(--s-10)}.stat-card{display:flex;flex-direction:column;gap:var(--s-3);padding:var(--s-5);border:1px solid var(--hairline);border-radius:var(--radius);color:inherit;transition:border-color var(--dur) ease}.stat-card:hover{border-color:var(--underline)}.stat-icon{color:var(--muted)}.stat-icon svg{width:18px;height:18px}.stat-content{display:flex;flex-direction:column;gap:var(--s-1)}.stat-value{font-size:32px;font-weight:500;line-height:1.1;color:var(--heading)}.stat-label{font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta);color:var(--muted)}.stat-green .stat-icon{color:var(--ok)}.stat-red .stat-icon,.stat-red .stat-value{color:var(--danger)}.admin-section{margin-top:var(--s-12)}.admin-section h2{font-size:var(--text-row)}.quick-actions-grid{margin-top:var(--s-4);border-top:1px solid var(--hairline)}.quick-action-card{display:flex;align-items:center;gap:var(--s-5);padding:var(--s-5) 0;border-bottom:1px solid var(--hairline);color:inherit;transition:padding-left var(--dur) ease}.quick-action-card:hover{padding-left:var(--s-3)}.quick-action-icon{flex-shrink:0;color:var(--muted)}.quick-action-icon svg{width:18px;height:18px}.quick-action-content{min-width:0}.quick-action-content h3{font-size:20px}.quick-action-content p{margin-top:var(--s-1);font-size:var(--text-ui);line-height:1.5;color:var(--body)}.quick-action-arrow{margin-left:auto;flex-shrink:0;color:var(--faint)}.admin-actions-bar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-4);margin-top:var(--s-8)}.admin-actions-bar .search-box{flex:1 1 240px}.admin-page>.search-box{margin-top:var(--s-8)}.filter-buttons{display:flex;flex-wrap:wrap;gap:var(--s-2)}.admin-table-container{margin-top:var(--s-6);overflow-x:auto;border-top:1px solid var(--hairline)}.admin-table,.jobs-table{width:100%;border-collapse:collapse;font-size:var(--text-small)}.admin-table th,.admin-table td,.jobs-table th,.jobs-table td{text-align:left;padding:.75em 1em .75em 0;border-bottom:1px solid var(--hairline);vertical-align:middle}.admin-table th,.jobs-table th{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.14em;text-transform:uppercase;font-weight:400;color:var(--muted);white-space:nowrap}.admin-table td:last-child,.jobs-table td:last-child{padding-right:0}.cell-id,.cell-date,.job-id{font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:.04em;color:var(--muted);white-space:nowrap}.cell-email{color:var(--heading);word-break:break-all}.cell-note{color:var(--secondary)}.cell-actions{text-align:right}.feed-status-cell{display:flex;align-items:center;gap:var(--s-3)}.job-count{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:var(--track-meta);color:var(--faint);white-space:nowrap}.action-dropdown{z-index:110;min-width:200px;padding:var(--s-1);background:var(--bg-raised);border:1px solid var(--hairline);border-radius:var(--radius-md)}.dropdown-item{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-2) var(--s-3);border-radius:var(--radius);font-size:var(--text-small);color:var(--body);cursor:pointer;outline:none;-webkit-user-select:none;user-select:none}.dropdown-item svg{width:15px;height:15px;flex-shrink:0}.dropdown-item[data-highlighted]{background:var(--hairline);color:var(--heading)}.dropdown-item[data-disabled]{opacity:.5;cursor:default}.dropdown-item.danger{color:var(--danger)}.dropdown-item.primary{color:var(--accent)}.dropdown-item.warning{color:var(--warn)}.dropdown-item.success{color:var(--ok)}.feed-status-details{border-top:1px solid var(--hairline)}.status-row{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--s-2) var(--s-4);padding:var(--s-3) 0;border-bottom:1px solid var(--hairline)}.status-label{font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta);color:var(--muted)}.status-value{display:inline-flex;align-items:center;gap:.5em;color:var(--heading)}.status-value.enabled{color:var(--ok)}.status-value.disabled{color:var(--danger)}.scheduled-jobs-list{margin-top:var(--s-6)}.scheduled-jobs-list table{margin-top:var(--s-3)}.no-jobs-message{display:flex;align-items:center;gap:var(--s-3);margin-top:var(--s-5);color:var(--muted);font-style:italic}.check-email-section{margin-top:var(--s-8);padding:var(--s-5) var(--s-6);border:1px solid var(--hairline);border-radius:var(--radius)}.check-email-section h3{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:var(--track-label);text-transform:uppercase;font-weight:400;color:var(--muted)}.check-email-form{display:flex;flex-wrap:wrap;gap:var(--s-3);margin-top:var(--s-4)}.check-email-form input{flex:1 1 200px}.check-result{display:flex;align-items:center;gap:var(--s-2);margin-top:var(--s-4);font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta)}.check-result svg{width:14px;height:14px}.check-result.allowed{color:var(--ok)}.check-result.not-allowed{color:var(--danger)}.scheduler-status-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--s-4);margin-top:var(--s-8);padding:var(--s-4) var(--s-5);border:1px solid var(--hairline);border-radius:var(--radius)}.status-indicator{display:flex;align-items:center;gap:var(--s-3);color:var(--body)}.status-indicator svg{width:18px;height:18px;color:var(--muted)}.jobs-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:var(--s-4);margin-top:var(--s-6)}.job-card{padding:var(--s-5);border:1px solid var(--hairline);border-radius:var(--radius)}.job-header{display:flex;align-items:baseline;justify-content:space-between;gap:var(--s-3)}.job-type-badge{display:inline-flex;align-items:center;gap:.5em;font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta);color:var(--accent)}.job-type-badge svg{width:12px;height:12px}.user-link{font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:var(--track-meta);color:var(--muted);white-space:nowrap;transition:color var(--dur) ease}.user-link:hover{color:var(--heading)}.job-name{margin-top:var(--s-3);font-size:18px;overflow-wrap:anywhere}.job-details{display:grid;gap:var(--s-2);margin-top:var(--s-4)}.job-detail{display:grid;grid-template-columns:5.5rem minmax(0,1fr);gap:var(--s-3);font-size:var(--text-small)}.detail-label{font-family:var(--font-mono);font-size:var(--text-label);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);padding-top:3px}.detail-value{color:var(--body);overflow-wrap:anywhere}code.detail-value{font-size:13px;color:var(--heading)}.generate-feed-container{display:grid;gap:var(--s-12);margin-top:var(--s-10)}@media (min-width: 820px){.generate-feed-container{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}}.generate-feed-form{display:flex;flex-direction:column;gap:var(--s-5);max-width:440px}.generate-feed-form .btn{align-self:flex-start;margin-top:var(--s-2)}.generate-feed-result-section .error-message{margin-top:0}.feed-result{padding:var(--s-6);border:1px solid var(--hairline);border-radius:var(--radius)}.result-header{display:flex;align-items:flex-start;gap:var(--s-3)}.success-icon{flex-shrink:0;margin-top:2px;color:var(--ok)}.result-header h3{font-size:20px}.result-header p{margin-top:var(--s-1);font-size:var(--text-small);color:var(--secondary)}.result-details{display:grid;gap:var(--s-3);margin-top:var(--s-5)}.result-detail-item{display:flex;flex-wrap:wrap;align-items:center;gap:var(--s-2) var(--s-3);font-size:var(--text-small)}.result-detail-item svg{width:14px;height:14px;color:var(--muted)}.result-detail-item .detail-label{padding-top:0}.job-id-code{padding:.15em .5em;border-radius:var(--radius);background:var(--bg-sunken);font-size:var(--text-meta);color:var(--heading);overflow-wrap:anywhere}.result-note{display:flex;align-items:flex-start;gap:var(--s-2);margin-top:var(--s-5);padding-top:var(--s-4);border-top:1px solid var(--hairline);font-family:var(--font-mono);font-size:var(--text-meta);letter-spacing:.04em;line-height:1.6;color:var(--muted)}.result-note svg{width:14px;height:14px;flex-shrink:0;margin-top:2px}.empty-result{display:flex;flex-direction:column;align-items:center;gap:var(--s-3);padding:var(--s-12) var(--s-6);border:1px solid var(--hairline);border-radius:var(--radius);text-align:center;font-style:italic;color:var(--muted)}.empty-result svg{color:var(--faint)}
