:root{--bg: #ffffff;--bg-elev: #f7f7f8;--fg: #1f2328;--fg-muted: #65707d;--fg-dim: #99a3af;--border: #e2e5e9;--border-strong: #c4cad1;--accent: #cc0000;--accent-fg: #ffffff;--green: #15803d;--link: #0066cc;--link-visited: #0066cc;--bg-soft: #fafafc;--radius: 8px;--radius-lg: 14px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;--shadow: 0 1px 2px rgba(0,0,0,.04), 0 2px 8px rgba(0,0,0,.04)}:root[data-theme=dark]{--bg: #0d1117;--bg-elev: #161b22;--fg: #e6edf3;--fg-muted: #8b95a3;--fg-dim: #6e7681;--border: #30363d;--border-strong: #484f58;--link: #58a6ff;--link-visited: #58a6ff;--bg-soft: #0d1117;--shadow: 0 0 0 1px rgba(255,255,255,.04)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #0d1117;--bg-elev: #161b22;--fg: #e6edf3;--fg-muted: #8b95a3;--fg-dim: #6e7681;--border: #30363d;--border-strong: #484f58;--link: #58a6ff;--link-visited: #58a6ff;--bg-soft: #0d1117;--shadow: 0 0 0 1px rgba(255,255,255,.04)}}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font);font-size:16px;line-height:1.55;background:var(--bg);color:var(--fg);-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased}.ot-forum a{color:var(--link);text-decoration:none}.ot-forum a:hover{text-decoration:underline}.ot-forum a:visited{color:var(--link-visited)}.ot-forum{display:flex;flex-direction:column}.ot-main{flex:1;padding:var(--space-5) 0}.ot-loading,.ot-error{padding:var(--space-5);text-align:center;color:var(--fg-muted)}.ot-error{color:var(--accent)}h1,h2,h3{margin:0 0 var(--space-3);line-height:1.25}h1{font-size:1.6rem}h2{font-size:1.3rem}h3{font-size:1.1rem}.ot-list{list-style:none;margin:0;padding:0}.ot-list>li+li{border-top:1px solid var(--border)}.ot-card{background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius-lg);padding:var(--space-4);margin-bottom:var(--space-4)}.ot-card h2{margin-top:0}.ot-forum-table{list-style:none;margin:0;padding:0;border-top:2px solid var(--border-strong, #c8c8d0)}.ot-forum-row{display:grid;grid-template-columns:1fr 200px 110px 110px;gap:var(--space-3);padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--border);align-items:center}.ot-forum-row[data-depth="1"]{padding-left:calc(var(--space-2) + var(--space-4));background:var(--bg-soft, #fafafc);font-size:.95rem}.ot-forum-row-head{background:transparent;border-bottom:1px solid var(--border);padding-top:var(--space-2);padding-bottom:var(--space-2);font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--fg-muted);font-weight:600}.ot-forum-row-head .ot-forum-cell-name{padding-left:0}.ot-forum-cell{min-width:0}.ot-forum-cell-name .ot-cat-name{font-weight:600;font-size:1.05rem;text-decoration:none}.ot-forum-cell-name .ot-cat-name:hover{text-decoration:underline}.ot-cat-desc{margin:4px 0 0;color:var(--fg-muted);font-size:.9rem}.ot-cat-tags{margin:8px 0 0;display:flex;flex-wrap:wrap;gap:4px}.ot-forum-cell-num{text-align:center;color:var(--fg-muted);font-size:.9rem;display:flex;flex-direction:column;align-items:center;gap:2px}.ot-num-label{display:none}.ot-num-value{color:var(--fg);font-weight:500;font-size:1rem}.ot-forum-cell-last{font-size:.9rem}.ot-lp-time{display:block;color:var(--link);text-decoration:none;font-weight:500}.ot-lp-time:hover{text-decoration:underline}.ot-lp-author{display:flex;align-items:center;gap:6px;margin-top:4px;color:var(--fg-muted);font-size:.85rem}.ot-lp-author a,.ot-lp-author a:visited{color:inherit;text-decoration:none}.ot-lp-author a:hover{color:var(--link)}.ot-lp-avatar{width:20px;height:20px;border-radius:3px;object-fit:cover}.ot-lp-empty{color:var(--fg-muted)}@media (max-width: 720px){.ot-lp-name.ot-lp-name--hide-mobile{display:none}}@media (min-width: 721px){.ot-lp-name.ot-lp-name--hide-desktop{display:none}}@media (max-width: 720px){.ot-forum-row{grid-template-columns:1fr auto;grid-template-areas:"name last";gap:var(--space-2);align-items:start}.ot-forum-row-head{display:none}.ot-forum-cell-name{grid-area:name}.ot-forum-cell-num{display:none}.ot-forum-cell-last{grid-area:last;align-self:start;text-align:right;font-size:.8rem;white-space:nowrap}.ot-forum-cell-last .ot-lp-author{justify-content:flex-end;margin-top:2px}}.ot-topic-table{list-style:none;margin:0 0 var(--space-3);padding:0;border-top:2px solid var(--border-strong, #c8c8d0)}.ot-topic-row{display:grid;grid-template-columns:1fr 180px 90px 90px;gap:var(--space-3);padding:var(--space-3) var(--space-2);border-bottom:1px solid var(--border);align-items:center}.ot-topic-row.is-locked{background:linear-gradient(to bottom,#f7f7f7,#fff)}.ot-topic-row.is-sticky-pin{background:linear-gradient(to bottom,#eff5fb,#fff)}.ot-topic-row.is-sticky-super{background:linear-gradient(to bottom,#fcf5dd,#fff)}@media (prefers-color-scheme: dark){.ot-topic-row.is-locked{background:linear-gradient(to bottom,#1a1c20,#0d1117)}.ot-topic-row.is-sticky-pin{background:linear-gradient(to bottom,#15243a,#0d1117)}.ot-topic-row.is-sticky-super{background:linear-gradient(to bottom,#2c2516,#0d1117)}}.ot-topic-row-head{font-size:.85rem;text-transform:uppercase;letter-spacing:.04em;color:var(--fg-muted);font-weight:600;background:transparent;padding-top:var(--space-2);padding-bottom:var(--space-2)}.ot-topic-cell{min-width:0}.ot-topic-cell-title{display:flex;flex-direction:column;gap:4px}.ot-topic-title-row{display:flex;align-items:start;flex-wrap:nowrap;gap:8px;min-width:0}.ot-topic-title-row>.ot-topic-title{flex:1 1 auto;min-width:0;overflow-wrap:anywhere}.ot-topic-flags{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;margin-top:2px}.ot-flag{display:inline-flex;align-items:center;font-size:.75rem;line-height:1}.ot-flag-hot{background:#ff8a00;color:#fff;padding:2px 6px;border-radius:3px;font-weight:700;letter-spacing:.04em}.ot-flag-sticky,.ot-flag-super,.ot-flag-locked,.ot-flag-solved{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;color:#fff;flex:0 0 auto}.ot-flag-sticky{background:#06c}.ot-flag-super{background:#d97706}.ot-flag-locked{background:#6b7280}.ot-flag-solved{background:var(--green)}.ot-flag-sticky .ot-icon,.ot-flag-super .ot-icon,.ot-flag-locked .ot-icon,.ot-flag-solved .ot-icon{vertical-align:0;stroke-width:2.5}.ot-topic-cell-title .ot-topic-title{font-weight:600;font-size:1rem;text-decoration:none;color:var(--link)}.ot-topic-cell-title .ot-topic-title:hover{text-decoration:underline}.ot-topic-cell-title .ot-topic-title.unread{font-weight:700}.ot-topic-excerpt{margin:0;color:var(--fg-muted);font-size:.9rem;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis}.ot-topic-summary{margin:0;font-size:.9rem;line-height:1.4;color:var(--fg-muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-overflow:ellipsis;word-break:break-word}.ot-summary-author,.ot-summary-author:visited{color:var(--fg);font-weight:600;text-decoration:none}.ot-summary-author:hover{color:var(--link)}.ot-summary-sep{margin:0 .35em;color:var(--fg-muted);vertical-align:middle;opacity:.7}.ot-summary-body{color:var(--fg-muted)}.ot-topic-byline{margin:0;color:var(--fg-muted);font-size:.85rem;display:flex;align-items:center;flex-wrap:wrap;gap:4px}.ot-byline-prefix{color:var(--fg-muted)}.ot-byline-avatar{width:18px;height:18px;border-radius:3px;object-fit:cover;vertical-align:middle}.ot-byline-cat,.ot-byline-cat:visited{background:#e8f0fe;color:#1a5fb4;padding:1px 8px;border-radius:3px;font-weight:500}@media (prefers-color-scheme: dark){.ot-byline-cat,.ot-byline-cat:visited{background:#16243b;color:#7fb0e0}}.ot-topic-byline a,.ot-topic-byline a:visited{color:inherit;text-decoration:none;font-weight:500}.ot-topic-byline a:hover{color:var(--link)}.ot-topic-cell-num{text-align:center;color:var(--fg-muted);font-size:.9rem;display:flex;flex-direction:column;align-items:center;gap:2px}.ot-topic-cell-num .ot-num-label{display:none}.ot-topic-cell-num .ot-num-value{color:var(--fg);font-weight:500;font-size:1rem}.ot-topic-cell-last{font-size:.85rem}.ot-topic-cell-last .ot-lp-time{display:block;color:var(--link);text-decoration:none}.ot-topic-cell-last .ot-lp-time:hover{text-decoration:underline}.ot-topic-cell-last .ot-lp-author{display:flex;align-items:center;gap:6px;margin-top:4px;color:var(--fg-muted)}.ot-topic-cell-last .ot-lp-author a,.ot-topic-cell-last .ot-lp-author a:visited{color:inherit;text-decoration:none}.ot-topic-cell-last .ot-lp-author a:hover{color:var(--link)}.ot-topic-cell-last .ot-lp-avatar{width:18px;height:18px;border-radius:3px;object-fit:cover}.ot-unread-badge{display:inline-flex;flex:0 0 auto;align-self:center;align-items:center;justify-content:center;background:var(--accent, #2271b1);color:#fff;border-radius:999px;padding:1px 8px;font-size:.75rem;font-weight:600;line-height:1.4;white-space:nowrap;width:auto;min-width:22px;vertical-align:middle}@media (max-width: 720px){.ot-topic-row{grid-template-columns:1fr auto;grid-template-areas:"title last";gap:var(--space-2);align-items:start}.ot-topic-row-head{display:none}.ot-topic-cell-title{grid-area:title}.ot-topic-cell-last{grid-area:last;align-self:start;text-align:right;font-size:.8rem;white-space:nowrap}.ot-topic-cell-last .ot-lp-author{justify-content:flex-end;margin-top:2px}.ot-topic-cell-num{display:none}}.ot-post{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--bg-elev);margin-bottom:var(--space-4)}.ot-post-head{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.ot-post-head .ot-author-link,.ot-post-head a:has(.ot-avatar){display:inline-flex;align-items:center;gap:8px;text-decoration:none;color:inherit}.ot-avatar{width:32px;height:32px;border-radius:50%;display:block}.ot-author{font-weight:600;line-height:1}.ot-time{font-size:.85rem;color:var(--fg-muted);margin-left:auto}.ot-post-head [style*=--green]{display:inline-flex;align-items:center;gap:4px;line-height:1}.ot-post-head .ot-role-badge{vertical-align:baseline}.ot-content{word-wrap:break-word;overflow-wrap:anywhere;font-size:1.0625rem;line-height:1.55}.ot-content>:first-child{margin-top:0}.ot-content>:last-child{margin-bottom:0}.ot-content img{max-width:100%;height:auto}.ot-content blockquote{border-left:3px solid var(--border-strong);padding-left:var(--space-3);color:var(--fg-muted);margin:var(--space-3) 0}.ot-content code{font-family:var(--font-mono);background:var(--border);padding:0 4px;border-radius:3px;font-size:.92em}.ot-content pre{overflow-x:auto;padding:var(--space-3);background:var(--border);border-radius:var(--radius)}.ot-online-line{margin:var(--space-5) 0 0;padding:var(--space-3) 0;border-top:1px solid var(--border);color:var(--fg-muted);font-size:.9rem;line-height:1.6}.ot-online-label{font-weight:600;color:var(--fg-muted);margin-right:4px}.ot-online-name{color:var(--link);text-decoration:none;margin-right:2px}.ot-online-name:hover{text-decoration:underline}.ot-online-more{color:var(--fg-muted);margin-left:2px}.ot-tag{display:inline-block;font-size:.8125rem;font-weight:600;line-height:1.4;padding:2px 10px;border-radius:999px;background:#06c;color:#fff;text-decoration:none;margin-right:var(--space-1);white-space:nowrap}a.ot-tag,a.ot-tag:visited{color:#fff;text-decoration:none}a.ot-tag:hover{color:#fff;opacity:.88}.ot-tag-lg{font-size:.9rem;padding:3px 12px}.ot-tag-clear{display:inline-block;font-size:.8125rem;font-weight:500;line-height:1.4;padding:2px 10px;border-radius:999px;background:transparent;color:var(--fg-muted);border:1px solid var(--border-strong);text-decoration:none;margin-right:var(--space-1);white-space:nowrap}a.ot-tag-clear:hover{color:var(--fg);border-color:var(--fg-muted)}.ot-cat-title{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3)}.ot-tag-active{font-size:1rem;font-weight:600;padding:4px 14px;vertical-align:middle}.ot-tag-active span{margin-left:4px;opacity:.8;font-weight:400}a.ot-tag-active:hover span{opacity:1}.ot-solution-badge{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:999px;background:var(--green);color:#fff;vertical-align:middle;margin-top:-1px}.ot-solution-badge .ot-icon{vertical-align:0;stroke-width:2.5}.ot-topic-title-h1{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-3)}.ot-topic-title-tag{font-size:.9rem;padding:3px 12px}.ot-paginate{display:flex;justify-content:center;margin-top:var(--space-5)}.ot-paginate button{font:inherit;background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius);padding:var(--space-2) var(--space-4);cursor:pointer;color:var(--fg)}.ot-paginate button:hover{border-color:var(--border-strong)}.ot-paginate button:disabled{opacity:.5;cursor:not-allowed}.ot-field{display:block;margin-bottom:var(--space-4)}.ot-field>span,.ot-field>legend{display:block;font-weight:600;margin-bottom:var(--space-2)}.ot-field input[type=text],.ot-field textarea{font:inherit;width:100%;padding:var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--bg);color:var(--fg);resize:vertical}.ot-field input[type=text]:focus,.ot-field textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.ot-field textarea{min-height:120px;font-family:var(--font)}.ot-tag-picker{display:flex;flex-wrap:wrap;gap:var(--space-2)}.ot-tag-choice{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--border);border-radius:999px;background:var(--bg);cursor:pointer;font-size:.9rem}.ot-tag-choice input{margin:0}.ot-tag-choice:has(input:checked){background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.ot-form-error{background:#ffe9e7;color:#8a1f10;padding:var(--space-2) var(--space-3);border-radius:var(--radius);margin:0 0 var(--space-3);font-size:.9rem}@media (prefers-color-scheme: dark){.ot-form-error{background:#3a1f1c;color:#ffb1a3}}.ot-actions{display:flex;gap:var(--space-2);justify-content:flex-end;margin-top:var(--space-3)}.ot-actions button{font:inherit;background:var(--accent);color:var(--accent-fg);border:none;border-radius:var(--radius);padding:var(--space-2) var(--space-4);cursor:pointer}.ot-actions button:disabled{opacity:.55;cursor:not-allowed}.ot-actions .ot-btn-secondary{background:var(--bg-elev);color:var(--fg);border:1px solid var(--border-strong)}.ot-reply-form{margin-top:var(--space-5);padding:var(--space-4);background:var(--bg-elev);border:1px solid var(--border);border-radius:var(--radius)}.ot-reply-form textarea{font:inherit;width:100%;padding:var(--space-3);border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--bg);color:var(--fg);resize:vertical;min-height:100px;font-family:var(--font)}.ot-cta-bar{display:flex;justify-content:flex-end;gap:var(--space-2);margin:var(--space-3) 0}.ot-cta-bar button,.ot-cta-bar .ot-link-button{font:inherit;background:var(--accent);color:var(--accent-fg);border:none;border-radius:var(--radius);padding:var(--space-2) var(--space-4);cursor:pointer;text-decoration:none}.ot-post-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-2);border-top:1px dashed var(--border);font-size:.85rem;align-items:center}.ot-post-actions>.ot-reaction-bar{margin-top:0;gap:var(--space-2)}.ot-toolbar-btn.ot-success{color:var(--green);border-color:var(--green)}.ot-toolbar-btn.ot-success:hover:not(:disabled){background:color-mix(in srgb,var(--green) 8%,var(--bg-elev));color:var(--green);border-color:var(--green)}.ot-toolbar-btn.ot-success.is-active{background:var(--green);border-color:var(--green);color:#fff}.ot-toolbar-btn.ot-success.is-active:hover:not(:disabled){background:color-mix(in srgb,var(--green) 88%,#000);border-color:color-mix(in srgb,var(--green) 88%,#000);color:#fff}@media (hover: hover){.ot-on-hover-only{opacity:0;transition:opacity .15s ease}.ot-post:hover .ot-on-hover-only,.ot-on-hover-only:focus-within,.ot-on-hover-only:hover{opacity:1}}.ot-md-hint{font-size:.85rem;color:var(--fg-muted);margin:0 0 var(--space-2);display:flex;flex-wrap:wrap;gap:6px;align-items:baseline}.ot-md-hint code{font-family:var(--font-mono);font-size:.85em;background:var(--border);padding:1px 6px;border-radius:3px}.ot-md-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:4px;padding:4px 6px;margin:0 0 -1px;border:1px solid var(--border);border-bottom:0;border-radius:var(--radius) var(--radius) 0 0;background:var(--bg-elev)}.ot-md-toolbar+textarea{border-top-left-radius:0;border-top-right-radius:0}.ot-md-btn{-moz-appearance:none;appearance:none;-webkit-appearance:none;background:transparent;border:1px solid transparent;color:var(--fg-muted);cursor:pointer;font-size:.85rem;font-family:inherit;padding:4px 8px;border-radius:4px;line-height:1.2;min-width:28px;transition:background .12s ease,color .12s ease,border-color .12s ease}.ot-md-btn:hover{background:var(--bg);color:var(--fg);border-color:var(--border)}.ot-md-btn:active{background:var(--border)}.ot-md-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.ot-md-btn.b strong{font-weight:700}.ot-md-btn.i em{font-style:italic}.ot-md-sep{display:inline-block;width:1px;height:18px;background:var(--border);margin:0 4px}.ot-md-upload-error{margin-left:auto;padding:2px 8px;font-size:.8em;color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,transparent);border-radius:4px}@media (max-width: 480px){.ot-md-btn.is-secondary,.ot-md-sep.is-secondary,.ot-md-sep:not(.is-secondary){display:none}.ot-md-toolbar{gap:8px;padding:6px 8px}.ot-md-btn{padding:8px 12px;font-size:1rem;min-width:38px}}.ot-content .katex-display{margin:var(--space-3) 0;overflow-x:auto}.ot-login-cta{background:var(--bg-elev);border:1px dashed var(--border-strong);padding:var(--space-3);border-radius:var(--radius);text-align:center;color:var(--fg-muted);margin-top:var(--space-5)}.ot-post-body{display:flex;align-items:flex-start;gap:4px}.ot-post-body>.ot-content{flex:1 1 auto;min-width:0}.ot-reaction-bar{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin-top:8px}.ot-reaction-chip{display:inline-flex;align-items:center;gap:4px;background:var(--bg-elev);border:1px solid var(--border);border-radius:999px;padding:2px 10px 2px 6px;cursor:pointer;font-size:.85rem;line-height:1.4;color:var(--fg);transition:background .12s ease,border-color .12s ease;font-family:inherit}.ot-reaction-chip:hover:not(:disabled){background:var(--bg);border-color:var(--border-strong)}.ot-reaction-chip:disabled{cursor:default;opacity:.7}.ot-reaction-chip.is-mine{background:color-mix(in srgb,var(--accent) 12%,var(--bg-elev));border-color:var(--accent);color:var(--accent)}.ot-reaction-emoji{font-size:1rem;line-height:1}.ot-reaction-count{font-weight:600;font-variant-numeric:tabular-nums}.ot-reaction-picker-wrap{position:relative;display:inline-block}.ot-reaction-add-icon{line-height:1}.ot-reaction-add-label{font-weight:500}@media (max-width: 480px){.ot-reaction-add-label{display:none}}.ot-reaction-picker{position:absolute;top:100%;left:0;margin-top:4px;display:flex;gap:2px;padding:4px;background:var(--bg-elev);border:1px solid var(--border-strong);border-radius:8px;box-shadow:0 4px 12px #00000014;z-index:10;white-space:nowrap}.ot-reaction-pick{border:0;background:transparent;cursor:pointer;padding:4px 8px;font-size:1.1rem;line-height:1;border-radius:4px;transition:background .1s ease}.ot-reaction-pick:hover{background:var(--bg)}.ot-status-banner{display:flex;align-items:center;gap:var(--space-2);margin:var(--space-3) 0;padding:var(--space-2) var(--space-3);border-radius:var(--radius);font-size:.95em;border-left:3px solid currentColor}.ot-status-pending{background:#fff7ed;color:#9a3412}.ot-status-scheduled{background:#ecfeff;color:#155e75}@media (prefers-color-scheme: dark){.ot-status-pending{background:#2a1206;color:#fb923c}.ot-status-scheduled{background:#051e26;color:#67e8f9}}.ot-status-banner a{color:inherit;font-weight:600}.ot-banner-dismiss{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:0;font:inherit;font-size:1.4em;line-height:1;color:inherit;cursor:pointer;opacity:.6;padding:0 4px}.ot-banner-dismiss:hover{opacity:1}.ot-toolbar-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:transparent;border:1px solid var(--border-strong);color:var(--fg-muted);cursor:pointer;border-radius:999px;padding:4px 12px 4px 10px;display:inline-flex;align-items:center;gap:5px;font-size:.85rem;line-height:1.2;font-family:inherit;transition:background .12s ease,color .12s ease,border-color .12s ease}.ot-toolbar-btn:hover:not(:disabled){background:var(--bg-elev);color:var(--fg);border-color:var(--fg-muted)}.ot-toolbar-btn:disabled{cursor:default;opacity:.55}.ot-toolbar-btn.is-active{background:var(--accent);color:var(--accent-fg);border-color:var(--accent)}.ot-toolbar-btn.is-active:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 88%,#000);border-color:color-mix(in srgb,var(--accent) 88%,#000);color:var(--accent-fg)}.ot-toolbar-btn.is-danger{color:#b3261e;border-color:#b3261e73}.ot-toolbar-btn.is-danger:hover:not(:disabled){background:#b3261e0f;border-color:#b3261e}.ot-toolbar-btn.is-busy{opacity:.65;cursor:wait}.ot-toolbar-btn.is-compact{padding:3px 8px;font-size:.8rem}.ot-fav-star{font-size:1rem;line-height:1;display:inline-block}.ot-fav-count{font-weight:600;font-variant-numeric:tabular-nums;font-size:.85em;margin-left:2px}.ot-edited-link{margin-left:8px;font-size:.8em;color:var(--fg-muted);font-style:italic;text-decoration:none;border-bottom:1px dotted var(--fg-muted)}.ot-edited-link:hover{color:var(--fg);border-bottom-color:var(--fg)}.ot-role-badge{display:inline-block;margin-left:6px;padding:1px 8px;font-size:.68rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border-radius:4px;vertical-align:1px;white-space:nowrap}.ot-role-badge-lg{font-size:.85rem;padding:3px 10px;letter-spacing:.05em;vertical-align:middle;margin-left:10px;border-radius:6px}.ot-role-badge.role-admin{color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent)}.ot-role-badge.role-tutor{color:#1d4e8e;background:color-mix(in srgb,#2271b1 14%,transparent)}.ot-role-badge.role-moderator{color:var(--green);background:color-mix(in srgb,var(--green) 14%,transparent)}@media (prefers-color-scheme: dark){.ot-role-badge.role-admin{color:#ff8585;background:#cc00002e}.ot-role-badge.role-tutor{color:#6fb3f5;background:#2271b133}.ot-role-badge.role-moderator{color:#6ee7a7;background:#16a34a33}}.ot-warn-wrap{display:inline-block}.ot-warn-btn.is-issued{font-style:italic}.ot-warn-label{font-weight:500}.ot-suspended-banner{background:color-mix(in srgb,var(--accent) 12%,var(--bg-elev));border:1px solid var(--accent);border-radius:6px;padding:12px 16px;margin:12px 0 16px;color:var(--accent);font-size:.92rem;line-height:1.5}.ot-suspended-banner strong{color:var(--accent)}.ot-warning-banner{background:#fff3cd;border:1px solid #f1c574;border-radius:6px;padding:12px 16px;margin:12px 0 16px;color:#8a4500;font-size:.92rem;line-height:1.5}@media (prefers-color-scheme: dark){.ot-warning-banner{background:#2a2106;border-color:#6b5316;color:#f5c46d}}.ot-report-wrap{display:inline-block}.ot-report-btn.is-reported{font-style:italic}.ot-report-label{font-weight:500}.ot-report-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:100;padding:16px}.ot-report-modal{background:var(--bg);border:1px solid var(--border-strong);border-radius:8px;padding:20px 22px;width:100%;max-width:480px;box-shadow:0 12px 32px #0000002e;display:flex;flex-direction:column;gap:14px}.ot-report-modal h3{margin:0;font-size:1.1rem}.ot-report-help{margin:0;color:var(--fg-muted);font-size:.9em;line-height:1.4}.ot-report-field{display:flex;flex-direction:column;gap:4px}.ot-report-field>span{font-weight:500;font-size:.9em}.ot-report-field select,.ot-report-field textarea{width:100%;padding:6px 8px;border:1px solid var(--border);border-radius:4px;font-family:inherit;font-size:.95em;background:var(--bg);color:var(--fg)}.ot-report-error{margin:0;padding:8px 10px;background:color-mix(in srgb,var(--accent) 12%,transparent);border:1px solid var(--accent);border-radius:4px;color:var(--accent);font-size:.9em}.ot-report-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}.ot-vote-widget{display:inline-flex;flex-direction:column;align-items:center;gap:2px;-webkit-user-select:none;user-select:none;margin-right:12px;vertical-align:top}.ot-vote-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--fg-muted);cursor:pointer;font-size:1rem;line-height:1;padding:2px 6px;border-radius:4px;font-family:inherit;transition:color .1s ease,background .1s ease}.ot-vote-btn:hover:not(:disabled){background:var(--bg-elev);color:var(--fg)}.ot-vote-btn.up.is-active{color:#ff6b35}.ot-vote-btn.down.is-active{color:#4a90e2}.ot-vote-btn:disabled{cursor:default;opacity:.6}.ot-vote-score{font-size:.85rem;font-weight:600;font-variant-numeric:tabular-nums;color:var(--fg-muted);min-width:1.5em;text-align:center}.ot-vote-score.pos{color:#ff6b35}.ot-vote-score.neg{color:#4a90e2}@media (min-width: 768px){body{font-size:17px}.ot-header{padding:var(--space-5) 0}.ot-topic-meta{grid-column:1}.ot-content{font-size:1.125rem}}
