:root{--frm-avatar-sm: 32px;--frm-avatar-md: 40px;--frm-avatar-lg: 56px}[hidden]{display:none!important}.frm-avatar{display:inline-flex;align-items:center;justify-content:center;width:var(--frm-avatar-md);height:var(--frm-avatar-md);border-radius:var(--radius-full);overflow:hidden;flex-shrink:0;background:var(--surface-raised);font-family:var(--font-body);line-height:1;user-select:none}.frm-avatar--sm{width:var(--frm-avatar-sm);height:var(--frm-avatar-sm);font-size:12px}.frm-avatar--lg{width:var(--frm-avatar-lg);height:var(--frm-avatar-lg);font-size:20px}.frm-avatar img{width:100%;height:100%;object-fit:cover;display:block}.frm-avatar-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-weight:600;font-size:14px}.frm-badge{display:inline-flex;align-items:center;gap:4px;height:22px;padding:0 8px;border-radius:0;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;line-height:1;white-space:nowrap}.frm-badge .material-symbols-rounded{font-size:14px}.frm-badge--pinned{background:var(--primary-bg);color:var(--primary)}.frm-badge--locked{background:var(--surface-raised);color:var(--text-secondary)}.frm-badge--solution{background:var(--green-bg);color:var(--accent)}.frm-badge--language{background:var(--surface-raised);color:var(--text-muted)}.frm-badge-group{display:inline-flex;align-items:center;gap:6px}.frm-badge-detail{font-size:12px;font-weight:500;color:var(--text-muted);text-transform:none;letter-spacing:normal;white-space:nowrap}.frm-moderator-label{display:inline-flex;align-items:center;gap:4px;color:var(--primary);font-size:12px;font-weight:600}.frm-moderator-label .material-symbols-rounded{font-size:15px}.frm-author-badges{display:inline-flex;flex-wrap:wrap;align-items:center;gap:6px;min-width:0}.frm-badge--staff{background:var(--primary-bg);color:var(--primary)}.frm-badge--staff .material-symbols-rounded{font-size:13px}.frm-badge--level{background:var(--surface-raised);color:var(--text-secondary)}.frm-badge--level-expert{background:var(--primary-bg);color:var(--primary)}.frm-badge--chip-helpful{background:var(--green-bg);color:var(--accent)}.frm-badge--chip-expert{background:var(--yellow-bg);color:var(--warning)}.frm-author-title{color:var(--text-muted);font-size:12px;font-style:italic;overflow-wrap:anywhere}.frm-author-link{position:relative;display:inline-flex;align-items:center;color:var(--text-secondary);font-weight:600;text-decoration:none;min-width:0}a.frm-author-link:hover,a.frm-author-link:focus-visible{color:var(--primary)}a.frm-author-link:before{content:"";position:absolute;inset:50% auto auto 50%;width:max(100%,var(--tap-min));height:var(--tap-min);transform:translate(-50%,-50%)}.frm-author-link--plain{font-weight:500;color:var(--text-secondary)}.frm-user-card{position:fixed;z-index:50;display:flex;gap:var(--space-sm);width:260px;padding:var(--space-md);background:var(--surface-raised);border:1px solid var(--border);box-shadow:0 12px 32px #00000059;pointer-events:none;opacity:0;transform:translateY(-4px);transition:opacity var(--motion-fast, .15s) var(--ease, ease),transform var(--motion-fast, .15s) var(--ease, ease)}.frm-user-card.is-visible{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.frm-user-card{transition:none}}.frm-user-card-avatar{display:inline-flex;align-items:center;justify-content:center;width:var(--frm-avatar-md);height:var(--frm-avatar-md);border-radius:var(--radius-full);overflow:hidden;flex-shrink:0;background:var(--surface)}.frm-user-card-avatar img{width:100%;height:100%;object-fit:cover;display:block}.frm-user-card-avatar-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-weight:600;font-size:14px;color:var(--text-secondary)}.frm-user-card-body{display:flex;flex-direction:column;gap:4px;min-width:0}.frm-user-card-name{margin:0;color:var(--text);font-weight:600;font-size:14px;overflow-wrap:anywhere}.frm-user-card-title{margin:0;color:var(--text-muted);font-size:12px;font-style:italic;overflow-wrap:anywhere}.frm-time{color:var(--text-muted);font-size:13px;white-space:nowrap}.frm-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-md);padding:var(--space-xxxl) var(--space-xl);border:1px solid var(--border-subtle);background:var(--surface);color:var(--text-secondary)}.frm-empty .material-symbols-rounded{font-size:40px;color:var(--text-muted)}.frm-empty h3{font-family:var(--font-display);font-size:18px;font-weight:500;color:var(--text);margin:0}.frm-empty p{font-size:14px;line-height:1.5;margin:0;max-width:48ch}.frm-empty-action{display:inline-flex;align-items:center;height:40px;padding-inline:var(--space-md);border:1px solid var(--border-strong);color:var(--text);font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap}.frm-empty-action:hover{border-color:var(--primary);color:var(--primary)}.frm-chrome-search{border-bottom:1px solid var(--border-subtle);background:var(--surface)}.frm-chrome-search~.page-hero{margin-block-start:0}.frm-chrome-search-inner{display:flex;align-items:center;gap:var(--space-md);padding-block:var(--space-sm)}.frm-search-box{position:relative;flex:1;min-width:0}.frm-hero-search-row{display:flex;align-items:center;gap:var(--space-md)}.frm-search-form{display:flex;gap:var(--space-sm)}.frm-search-form--chrome{align-items:center;gap:0;height:40px;padding-inline:var(--space-md);border:1px solid var(--border);background:var(--bg)}.frm-search-form--chrome:focus-within{border-color:var(--primary)}.frm-chrome-search-icon{flex-shrink:0;font-size:20px;color:var(--text-muted)}.frm-search-form--chrome input{flex:1;min-width:0;height:100%;padding-inline:var(--space-sm);border:0;background:transparent;color:var(--text);font-family:var(--font-body);font-size:14px}.frm-search-form--chrome input:focus{outline:none}.frm-search-form--chrome input::placeholder{color:var(--text-muted)}.frm-chrome-search-submit{flex-shrink:0;border:0;padding:0 var(--space-sm);background:transparent;color:var(--text-secondary);font-family:var(--font-body);font-size:13px;font-weight:500;cursor:pointer}.frm-chrome-search-submit:hover{color:var(--text)}.frm-chrome-search-submit:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.frm-chrome-search-new{display:inline-flex;flex-shrink:0;align-items:center;gap:var(--space-xs);height:40px;padding-inline:var(--space-md);border:1px solid var(--border-strong);color:var(--text);font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap}.frm-chrome-search-new:hover{border-color:var(--primary);color:var(--primary)}.frm-chrome-search-new .material-symbols-rounded{font-size:18px}.frm-chrome-search-new-label-short{display:none}@media(max-width:720px){.frm-chrome-search-new-label{display:none}.frm-chrome-search-new-label-short{display:inline}.frm-chrome-search-new{padding-inline:var(--space-sm)}.frm-chrome-search-submit{display:none}}.frm-search-suggestions{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:40;margin:0;padding:var(--space-xs);list-style:none;background:var(--surface-raised);border:1px solid var(--border);box-shadow:0 12px 32px #00000059}.frm-search-suggestion{display:block;padding:var(--space-sm);color:var(--text);font-size:14px;text-decoration:none;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.frm-search-suggestion:hover,.frm-search-suggestion:focus{background:var(--card-hover)}.frm-section{padding-block:var(--space-section);border-top:1px solid var(--border-subtle)}@media(max-width:720px){.frm-section{padding-block:var(--space-xxxl)}}.frm-section-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:var(--space-md);margin-bottom:var(--space-xl)}.frm-section-title{margin:0;font-family:var(--font-body);font-size:13px;font-weight:500;letter-spacing:.26px;line-height:1.2;text-transform:uppercase;color:var(--text-secondary)}.frm-section-action{color:var(--primary);font-size:13px;font-weight:500;text-decoration:none}.frm-section-action:hover{color:var(--primary-dim);text-decoration:underline}.frm-category-tile-grid{display:grid;gap:1px;background:var(--border-subtle);border:1px solid var(--border-subtle);grid-template-columns:1fr}@media(min-width:600px){.frm-category-tile-grid{grid-template-columns:1fr 1fr}}@media(min-width:1024px){.frm-category-tile-grid{grid-template-columns:repeat(3,1fr)}}.frm-category-tile{display:flex;gap:var(--space-lg);align-items:flex-start;padding:var(--space-xl) var(--space-lg);background:var(--bg);color:var(--text);text-decoration:none;transition:background var(--motion-fast, .15s) var(--ease, ease)}.frm-category-tile:hover{background:var(--card-hover)}.frm-category-tile:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}@media(prefers-reduced-motion:reduce){.frm-category-tile{transition:none}}.frm-category-tile-icon{flex-shrink:0;color:var(--primary);font-size:28px}.frm-category-tile-body{display:flex;flex-direction:column;gap:var(--space-xs);min-width:0}.frm-category-tile-name{font-family:var(--font-display);font-size:16px;font-weight:500}.frm-category-tile-desc{color:var(--text-secondary);font-size:13px;line-height:1.5}.frm-category-tile-meta{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-sm);padding-top:var(--space-xxs);color:var(--text-muted);font-size:12px;font-variant-numeric:tabular-nums}.frm-category-tile-meta .frm-time{font-size:12px}.frm-category-disclosure{margin-top:var(--space-lg)}.frm-category-disclosure>summary{display:inline-flex;align-items:center;gap:var(--space-xs);padding:var(--space-sm) 0;color:var(--primary);font-size:13px;font-weight:500;cursor:pointer;list-style:none}.frm-category-disclosure>summary::-webkit-details-marker{display:none}.frm-category-disclosure>summary:hover{color:var(--primary-dim)}.frm-category-disclosure>summary:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.frm-category-disclosure>summary .material-symbols-rounded{font-size:18px;transition:transform var(--motion-fast, .15s) var(--ease, ease)}.frm-category-disclosure[open]>summary .material-symbols-rounded{transform:rotate(180deg)}.frm-category-disclosure>summary .frm-disclosure-open-label{display:none}.frm-category-disclosure[open]>summary .frm-disclosure-open-label{display:inline}.frm-category-disclosure[open]>summary .frm-disclosure-closed-label{display:none}.frm-category-disclosure-body{margin-top:var(--space-md)}@media(prefers-reduced-motion:reduce){.frm-category-disclosure>summary .material-symbols-rounded{transition:none}}.frm-section-groups{display:grid;grid-template-columns:1fr;gap:var(--space-xxxl) var(--space-xxl)}@media(min-width:900px){.frm-section-groups{grid-template-columns:1fr 1fr}}.frm-section-group{min-width:0}.frm-section-group-title{margin:0 0 var(--space-md);font-family:var(--font-body);font-size:13px;font-weight:500;letter-spacing:.26px;line-height:1.3;text-transform:uppercase;color:var(--text-secondary);overflow-wrap:anywhere}.frm-category-row-list{display:flex;flex-direction:column;border:1px solid var(--border-subtle)}.frm-category-row{position:relative;display:flex;gap:var(--space-md);align-items:flex-start;padding:var(--space-md) var(--space-lg);border-top:1px solid var(--border-subtle);border-left:2px solid transparent;color:var(--text);text-decoration:none;transition:background var(--motion-fast, .15s) var(--ease, ease),border-color var(--motion-fast, .15s) var(--ease, ease)}.frm-category-row:first-child{border-top:0}.frm-category-row:hover{background:var(--card-hover);border-left-color:var(--primary)}.frm-category-row:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}@media(prefers-reduced-motion:reduce){.frm-category-row{transition:none}}.frm-category-row-icon{flex-shrink:0;color:var(--primary);font-size:22px}.frm-category-row-body{display:flex;flex-direction:column;gap:2px;min-width:0}.frm-category-row-name{font-family:var(--font-display);font-size:15px;font-weight:500}.frm-category-row-desc{color:var(--text-secondary);font-size:13px;line-height:1.5;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.frm-category-row-meta{color:var(--text-muted);font-size:12px;font-variant-numeric:tabular-nums}.frm-thread-list{display:flex;flex-direction:column;border:1px solid var(--border-subtle)}.frm-thread-row{position:relative;display:flex;gap:var(--space-md);padding:var(--space-lg);border-top:1px solid var(--border-subtle);border-left:2px solid transparent;transition:background var(--motion-fast, .15s) var(--ease, ease),border-color var(--motion-fast, .15s) var(--ease, ease)}.frm-thread-row:first-child{border-top:0}.frm-thread-row:hover{background:var(--card-hover);border-left-color:var(--primary)}.frm-thread-row:has(.frm-thread-row-title:focus-visible){background:var(--card-hover);border-left-color:var(--primary)}@media(prefers-reduced-motion:reduce){.frm-thread-row{transition:none}}.frm-thread-row-body{display:flex;flex-direction:column;gap:var(--space-xs);min-width:0;flex:1}.frm-thread-row-heading{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm)}.frm-thread-row-title{color:var(--text);font-family:var(--font-display);font-size:18px;font-weight:500;letter-spacing:-.02em;line-height:1.25;text-decoration:none}.frm-thread-row-title:after{content:"";position:absolute;inset:0}.frm-thread-row-title:hover{color:var(--primary)}.frm-thread-row-title:focus-visible{outline:none}.frm-thread-row-excerpt{color:var(--text-secondary);font-size:14px;line-height:1.55;margin:0;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.frm-thread-row-tags{display:flex;flex-wrap:wrap;gap:var(--space-xs);list-style:none;padding:0;margin:0}.frm-tag-chip{display:inline-flex;align-items:center;height:22px;padding:0 var(--space-sm);border-radius:0;border:1px solid var(--border);background:transparent;color:var(--text-secondary);font-size:11px;text-decoration:none}a.frm-tag-chip:hover{color:var(--text);border-color:var(--border-strong)}.frm-thread-row-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-md);color:var(--text-muted);font-size:12px;font-variant-numeric:tabular-nums}.frm-thread-row-author{display:inline-flex;align-items:center;gap:6px;max-width:100%;color:var(--text-secondary)}.frm-thread-row-stat{display:inline-flex;align-items:center;gap:4px}.frm-thread-row-stat .material-symbols-rounded{font-size:15px}.frm-thread-row-time{font-size:12px}.frm-thread-row .frm-tag-chip,.frm-thread-row .frm-thread-row-like,.frm-thread-row .frm-author-link{position:relative;z-index:1}.frm-sort-tabs{display:flex;flex-wrap:wrap;gap:0}.frm-sort-tab{display:inline-flex;align-items:center;height:34px;padding:0 var(--space-md);border-radius:0;color:var(--text-secondary);font-size:13px;font-weight:500;text-decoration:none;background:transparent;border:0;border-bottom:2px solid transparent}.frm-sort-tab:hover{color:var(--text);border-bottom-color:var(--border-strong)}.frm-sort-tab:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.frm-sort-tab[aria-current=page]{background:transparent;color:var(--text);border-bottom-color:var(--primary)}.frm-lang-filter{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-sm) var(--space-md);margin-bottom:var(--space-lg)}.frm-lang-filter-chips{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.frm-lang-chip{display:inline-flex;align-items:center;height:30px;padding:0 var(--space-sm);border-radius:999px;border:1px solid var(--border-subtle);color:var(--text-secondary);font-size:12px;font-weight:500;text-decoration:none;background:transparent}.frm-lang-chip:hover{color:var(--text);border-color:var(--border-strong)}.frm-lang-chip:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.frm-lang-chip[aria-current=true]{color:var(--text);background:var(--surface-raised);border-color:var(--primary)}.frm-lang-filter-select{display:flex;align-items:center;gap:var(--space-xs)}.frm-lang-filter-select select{height:30px;padding:0 var(--space-sm);border-radius:var(--radius-sm);border:1px solid var(--border-subtle);background:transparent;color:var(--text-secondary);font-size:12px}.frm-lang-filter-clear{margin-top:var(--space-md);font-size:13px}.frm-lang-filter-clear a{color:var(--primary);text-decoration:underline}.frm-pagination{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-xs)}.frm-pagination-link{display:inline-flex;align-items:center;justify-content:center;min-width:36px;height:36px;padding:0 var(--space-sm);border-radius:var(--radius-md);color:var(--text-secondary);font-size:13px;font-variant-numeric:tabular-nums;text-decoration:none}a.frm-pagination-link:hover{background:var(--card-hover);color:var(--text)}.frm-pagination-current{background:var(--primary);color:var(--on-primary);font-weight:600}.frm-pagination-disabled{color:var(--text-muted);opacity:.5}.frm-pagination-ellipsis{color:var(--text-muted);padding:0 4px}.frm-pagination-prev,.frm-pagination-next{padding:0 var(--space-lg)}.frm-cta{display:flex;flex-wrap:wrap;gap:var(--space-md)}.frm-cta--hero{margin-top:var(--space-xl)}.frm-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.frm-auth-page{display:flex;justify-content:center;padding:var(--space-xxxl) var(--space-lg)}.frm-auth-callback{min-height:40vh;align-items:center}.frm-auth-callback-inner{text-align:center;max-width:420px}.frm-auth-callback-inner h1{font-family:var(--font-display);font-size:22px;font-weight:500;margin:0 0 var(--space-md)}.frm-auth-callback-inner p{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:0 0 var(--space-sm)}.frm-auth{width:100%;max-width:420px;display:flex;flex-direction:column;gap:var(--space-lg);padding:var(--space-xxl) var(--space-xl);background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-lg)}.frm-auth-header h2{font-family:var(--font-display);font-size:20px;font-weight:500;color:var(--text);margin:0 0 var(--space-xs)}.frm-auth-header p{color:var(--text-secondary);font-size:13px;line-height:1.5;margin:0}.frm-auth-tabs{display:flex;gap:var(--space-xs);border-bottom:1px solid var(--border-subtle)}.frm-auth-tab{flex:1;padding:var(--space-sm) var(--space-md);background:transparent;border:0;color:var(--text-secondary);font-family:var(--font-body);font-size:13px;font-weight:500;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px}.frm-auth-tab:hover{color:var(--text)}.frm-auth-tab.is-active{color:var(--primary);border-bottom-color:var(--primary)}.frm-auth-panel form{display:flex;flex-direction:column;gap:var(--space-md)}.frm-auth-panel label{display:flex;flex-direction:column;gap:var(--space-xs);font-size:12px;font-weight:500;color:var(--text-secondary)}.frm-auth-panel input{padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:14px}.frm-auth-panel input:focus{outline:2px solid var(--primary);outline-offset:1px;border-color:var(--primary)}.frm-auth-submit{padding:10px 16px;border-radius:var(--radius-md);border:0;background:var(--primary);color:var(--on-primary);font-family:var(--font-body);font-size:14px;font-weight:600;cursor:pointer}.frm-auth-submit:disabled{opacity:.6;cursor:progress}.frm-auth-forgot{margin:0;text-align:right;font-size:12px}.frm-auth-forgot a{color:var(--text-secondary);text-decoration:underline}.frm-auth-forgot a:hover{color:var(--text)}.frm-auth-legal{font-size:11px;line-height:1.5;color:var(--text-muted);margin:0}.frm-auth-legal a{color:var(--text-secondary);text-decoration:underline}.frm-auth-legal a:hover{color:var(--text)}.frm-auth-divider{display:flex;align-items:center;gap:var(--space-sm);color:var(--text-muted);font-size:11px;text-transform:uppercase;letter-spacing:.08em}.frm-auth-divider:before,.frm-auth-divider:after{content:"";flex:1;height:1px;background:var(--border-subtle)}.frm-auth-oauth{display:flex;flex-direction:column;gap:var(--space-sm)}.frm-auth-oauth-btn{padding:10px 16px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:14px;font-weight:500;cursor:pointer}.frm-auth-oauth-btn:hover{border-color:var(--border-strong)}.frm-auth-oauth-btn:disabled{opacity:.6;cursor:progress}.frm-auth-status{min-height:1em;font-size:13px;color:var(--text-secondary)}.frm-auth-status[data-tone=err]{color:var(--danger, #ff6b6b)}.frm-auth-dialog{border:1px solid var(--border-subtle);background:var(--surface-raised);color:var(--text);padding:0;border-radius:var(--radius-lg);max-width:460px;width:100%}.frm-auth-dialog::backdrop{background:#0009}.frm-auth-close{position:absolute;top:8px;right:8px;width:32px;height:32px;border:0;border-radius:var(--radius-full);background:transparent;color:var(--text-secondary);font-size:22px;line-height:1;cursor:pointer}.frm-auth-close:hover{color:var(--text);background:var(--card-hover)}.frm-auth-dialog .frm-auth{border:0;background:transparent}.frm-namegate-dialog{border:1px solid var(--border-subtle);background:var(--surface-raised);color:var(--text);padding:0;border-radius:var(--radius-lg);max-width:420px;width:100%}.frm-namegate-dialog::backdrop{background:#0009}.frm-namegate-close{position:absolute;top:8px;right:8px;width:32px;height:32px;border:0;border-radius:var(--radius-full);background:transparent;color:var(--text-secondary);font-size:22px;line-height:1;cursor:pointer}.frm-namegate-close:hover{color:var(--text);background:var(--card-hover)}.frm-namegate{display:flex;flex-direction:column;gap:var(--space-lg);padding:var(--space-xxl) var(--space-xl)}.frm-namegate-header h2{font-family:var(--font-display);font-size:20px;font-weight:500;color:var(--text);margin:0 0 var(--space-xs)}.frm-namegate-header p{color:var(--text-secondary);font-size:13px;line-height:1.5;margin:0}.frm-namegate form{display:flex;flex-direction:column;gap:var(--space-md)}.frm-namegate label{display:flex;flex-direction:column;gap:var(--space-xs);font-size:12px;font-weight:500;color:var(--text-secondary)}.frm-namegate input{padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:14px}.frm-namegate input:focus{outline:2px solid var(--primary);outline-offset:1px;border-color:var(--primary)}.frm-namegate-submit{padding:10px 16px;border-radius:var(--radius-md);border:0;background:var(--primary);color:var(--on-primary);font-family:var(--font-body);font-size:14px;font-weight:600;cursor:pointer}.frm-namegate-submit:disabled{opacity:.6;cursor:progress}.frm-namegate-status{min-height:1em;font-size:13px;color:var(--text-secondary)}.frm-namegate-status[data-tone=err]{color:var(--danger, #ff6b6b)}.frm-body{color:var(--text);font-size:15px;line-height:1.7;word-break:break-word}.frm-body>*+*{margin-block-start:var(--space-md)}.frm-body h3,.frm-body h4,.frm-body h5{font-family:var(--font-display);font-weight:500;color:var(--text);margin:0}.frm-body h3{font-size:18px}.frm-body h4{font-size:16px}.frm-body h5{font-size:15px}.frm-body p{margin:0}.frm-body a{color:var(--primary);text-decoration:underline}.frm-body a:hover{color:var(--primary-dim)}.frm-body strong{font-weight:600}.frm-body code{padding:2px 6px;background:var(--surface-raised);color:var(--text);font-size:13px}.frm-body pre{padding:var(--space-md);background:var(--surface-raised);overflow-x:auto;margin:0}.frm-body pre code{padding:0;background:transparent}.frm-body blockquote{margin:0;padding-left:var(--space-md);border-left:2px solid var(--border-strong);color:var(--text-secondary)}.frm-body ul,.frm-body ol{margin:0;padding-left:var(--space-xl)}.frm-body li+li{margin-block-start:var(--space-xs)}.frm-body table{width:100%;border-collapse:collapse;font-size:14px}.frm-body th,.frm-body td{padding:var(--space-xs) var(--space-sm);border:1px solid var(--border);text-align:left}.frm-body th{font-weight:600;background:var(--surface-raised)}.frm-reply-tree{display:flex;flex-direction:column;gap:var(--space-lg);list-style:none;padding:0;margin:0}.frm-reply-children{display:flex;flex-direction:column;gap:var(--space-lg);list-style:none;padding:var(--space-lg) 0 0 var(--space-lg);margin:var(--space-lg) 0 0;border-left:1px solid var(--border-subtle)}.frm-reply-card{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-lg);background:var(--surface);border:1px solid var(--border-subtle)}.frm-reply{scroll-margin-top:calc(var(--space-xxl) + var(--space-lg))}.frm-reply:target>.frm-reply-card{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 24%,transparent)}.frm-reply--solution>.frm-reply-card{background:var(--green-bg);border-color:var(--accent)}.frm-reply-header{display:flex;align-items:center;gap:var(--space-sm)}.frm-reply-header-meta{display:flex;flex-direction:column;min-width:0;flex:1}.frm-reply-author{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:13px;font-weight:600;color:var(--text)}.frm-reply-time{font-size:12px}.frm-reply-body{font-size:14px}.frm-reply-tombstone{gap:var(--space-sm);background:transparent;border-style:dashed;color:var(--text-muted)}.frm-reply-tombstone-line{display:flex;align-items:center;gap:var(--space-sm);margin:0;min-height:32px;color:var(--text-muted);font-size:13px;font-style:italic}.frm-reply-tombstone-line .material-symbols-rounded{font-size:18px}.frm-reply-tombstone-mod{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm)}.frm-reply-tombstone-reason{margin:0;flex:1 1 100%;color:var(--text-secondary);font-size:13px}.frm-reply-tombstone-content{flex:1 1 100%;margin:0;padding:var(--space-sm);background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text);font-size:14px;white-space:pre-wrap;overflow-wrap:anywhere}.frm-poll{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-lg);background:var(--surface-raised);border:1px solid var(--border-subtle)}.frm-poll-question{font-family:var(--font-display);font-size:16px;font-weight:500;color:var(--text);margin:0}.frm-poll-options{display:flex;flex-direction:column;gap:var(--space-sm);list-style:none;padding:0;margin:0}.frm-poll-option-row{display:flex;justify-content:space-between;gap:var(--space-md);font-size:13px;color:var(--text)}.frm-poll-option-pct{font-variant-numeric:tabular-nums;color:var(--text-secondary);flex-shrink:0}.frm-poll-bar{height:8px;background:var(--surface);border:1px solid var(--border-subtle);margin-top:var(--space-xs)}.frm-poll-bar-fill{height:100%;background:var(--primary)}.frm-poll-meta{color:var(--text-muted);font-size:12px;margin:0}.frm-attachments{display:flex;flex-direction:column;gap:var(--space-md)}.frm-attachment-photos{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:var(--space-sm);list-style:none;padding:0;margin:0}.frm-attachment-photo{display:block;width:100%;aspect-ratio:1 / 1;object-fit:cover;background:var(--surface-raised)}.frm-attachment-native{display:flex;flex-direction:column;gap:var(--space-sm);list-style:none;padding:0;margin:0}.frm-attachment-native-card{display:flex;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--surface-raised);border:1px solid var(--border-subtle);color:var(--text);text-decoration:none}.frm-attachment-native-card:hover{background:var(--card-hover)}.frm-attachment-native-icon{color:var(--primary);font-size:22px;flex-shrink:0}.frm-attachment-native-body{display:flex;flex-direction:column;min-width:0;flex:1}.frm-attachment-native-eyebrow{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.frm-attachment-native-title{font-size:14px;font-weight:500;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.frm-attachment-native-arrow{color:var(--text-muted);font-size:18px;flex-shrink:0}.frm-recover{display:flex;justify-content:center;padding:var(--space-xxxl) var(--space-lg)}.frm-recover-inner{width:100%;max-width:420px;display:flex;flex-direction:column;gap:var(--space-lg)}.frm-recover-heading{font-family:var(--font-display);font-size:22px;font-weight:500;margin:0;color:var(--text)}.frm-recover-copy{color:var(--text-secondary);font-size:14px;line-height:1.5;margin:0}.frm-recover-form{display:flex;flex-direction:column;gap:var(--space-md)}.frm-recover-form label{display:flex;flex-direction:column;gap:var(--space-xs);font-size:12px;font-weight:500;color:var(--text-secondary)}.frm-recover-form input{padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:14px}.frm-recover-form input:focus{outline:2px solid var(--primary);outline-offset:1px;border-color:var(--primary)}.frm-recover-status{min-height:1em;font-size:13px;color:var(--text-secondary)}.frm-recover-back{margin:0;font-size:13px}.frm-recover-back a{color:var(--text-secondary);text-decoration:underline}.frm-recover-back a:hover{color:var(--text)}.frm-thread-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-md)}.frm-like-btn,.frm-bookmark-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--border-subtle);border-radius:var(--radius-full);background:var(--surface-raised);color:var(--text-secondary);font-family:var(--font-body);font-size:13px;font-weight:500;cursor:pointer}.frm-like-btn .material-symbols-rounded,.frm-bookmark-btn .material-symbols-rounded{font-size:17px}.frm-like-btn:hover,.frm-bookmark-btn:hover{color:var(--text);background:var(--card-hover)}.frm-like-btn:focus-visible,.frm-bookmark-btn:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.frm-like-btn[aria-pressed=true],.frm-bookmark-btn[aria-pressed=true]{border-color:var(--primary);background:var(--primary-bg);color:var(--primary)}.frm-engage-status{min-height:1em;font-size:13px;color:var(--text-secondary)}.frm-engage-status[data-tone=err]{color:var(--danger, #ff6b6b)}.frm-thread-row-like{border:0;background:transparent;color:var(--text-muted);font-family:var(--font-body);cursor:pointer}.frm-thread-row-like:hover{color:var(--text)}.frm-thread-row-like:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.frm-thread-row-like[aria-pressed=true]{color:var(--primary)}.frm-composer-page{max-width:720px}.frm-composer-page form[data-frm-composer-form]{display:flex;flex-direction:column;gap:var(--space-lg)}.frm-composer-field{display:flex;flex-direction:column;gap:var(--space-xs);font-size:12px;font-weight:500;color:var(--text-secondary)}.frm-composer-field input,.frm-composer-field select{padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:14px}.frm-composer-field input:focus,.frm-composer-field select:focus{outline:2px solid var(--primary);outline-offset:1px;border-color:var(--primary)}.frm-composer-body-field{display:flex;flex-direction:column}.frm-composer-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-sm);padding:var(--space-xs) var(--space-sm);border:1px solid var(--border);border-bottom:0;background:var(--surface-raised)}.frm-composer-tools{display:flex;gap:4px}.frm-composer-tool-btn{padding:4px 10px;border:1px solid var(--border-subtle);border-radius:var(--radius-sm);background:var(--surface);color:var(--text-secondary);font-family:var(--font-body);font-size:13px;cursor:pointer}.frm-composer-tool-btn:hover{color:var(--text);background:var(--card-hover)}.frm-composer-tabs{display:flex;gap:4px}.frm-composer-tab{padding:4px 12px;border:1px solid transparent;border-radius:var(--radius-full);background:transparent;color:var(--text-secondary);font-family:var(--font-body);font-size:13px;cursor:pointer}.frm-composer-tab:hover{color:var(--text)}.frm-composer-tab.is-active{background:var(--surface);border-color:var(--border-subtle);color:var(--text)}.frm-composer-body-field textarea[data-frm-composer-body]{padding:var(--space-md);border-radius:0;border:1px solid var(--border);background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:14px;line-height:1.6;resize:vertical;min-height:220px}.frm-composer-body-field textarea[data-frm-composer-body]:focus{outline:2px solid var(--primary);outline-offset:-2px}.frm-composer-preview{padding:var(--space-md);border:1px solid var(--border);background:var(--surface);min-height:220px}.frm-composer-status{min-height:1em;font-size:13px;color:var(--text-secondary)}.frm-composer-status[data-tone=err]{color:var(--danger, #ff6b6b)}.frm-composer-photos-field{display:flex;flex-direction:column;gap:var(--space-sm)}.frm-composer-photos-label{font-size:12px;font-weight:500;color:var(--text-secondary)}.frm-composer-photos{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.frm-composer-photo-thumb{position:relative;width:84px;height:84px;border-radius:var(--radius-md);overflow:hidden;border:1px solid var(--border)}.frm-composer-photo-thumb img{width:100%;height:100%;object-fit:cover;display:block}.frm-composer-photo-remove{position:absolute;top:2px;right:2px;width:20px;height:20px;line-height:1;border:none;border-radius:var(--radius-full);background:#000000a6;color:#fff;cursor:pointer}.frm-composer-photo-add{align-self:flex-start;cursor:pointer}.frm-composer-poll-field{display:flex;flex-direction:column;gap:var(--space-sm)}.frm-composer-poll-add{align-self:flex-start}.frm-composer-poll{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-md);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.frm-composer-poll-header{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:600;color:var(--text)}.frm-composer-poll-remove{width:22px;height:22px;line-height:1;border:none;border-radius:var(--radius-full);background:var(--card-hover);color:var(--text-secondary);cursor:pointer}.frm-composer-poll-options-label{font-size:12px;font-weight:500;color:var(--text-secondary)}.frm-composer-poll-options{display:flex;flex-direction:column;gap:var(--space-xs)}.frm-composer-poll-option{display:flex;align-items:center;gap:var(--space-xs)}.frm-composer-poll-option input{flex:1;padding:8px 10px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:14px}.frm-composer-poll-option-remove{width:22px;height:22px;line-height:1;border:none;border-radius:var(--radius-full);background:var(--card-hover);color:var(--text-secondary);cursor:pointer;flex-shrink:0}.frm-composer-poll-option-add{align-self:flex-start}.frm-composer-poll-multiple{display:flex;align-items:center;gap:var(--space-xs);font-size:13px;color:var(--text-secondary)}.frm-composer-poll-closes{max-width:220px}.frm-composer-tags-field,.frm-composer-native-attachments-field,.frm-composer-route-field{display:flex;flex-direction:column;gap:var(--space-sm)}.frm-composer-tags-label,.frm-composer-native-attachments-label,.frm-composer-route-label{font-size:12px;font-weight:500;color:var(--text-secondary)}.frm-composer-tags{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.frm-composer-tag-chip{display:flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius-full);font-size:13px;color:var(--text);cursor:pointer}.frm-composer-tag-chip:has(input:checked){border-color:var(--primary);background:var(--accent-primary-soft)}.frm-composer-tag-chip input:disabled{cursor:not-allowed}.frm-mention-dropdown{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);overflow:hidden;margin-top:-1px}.frm-mention-option{padding:8px 12px;border:none;background:transparent;text-align:left;font-size:14px;color:var(--text);cursor:pointer}.frm-mention-option:hover,.frm-mention-option:focus-visible{background:var(--card-hover)}.frm-composer-native-attachment-picker{display:flex;flex-wrap:wrap;gap:var(--space-xs);align-items:center}.frm-composer-native-attachment-picker select{padding:8px 10px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:14px}.frm-composer-native-attachments{display:flex;flex-wrap:wrap;gap:var(--space-xs)}.frm-composer-attachment-chip{display:flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid var(--border);border-radius:var(--radius-full);font-size:13px;color:var(--text);background:var(--surface)}.frm-composer-attachment-remove{width:18px;height:18px;line-height:1;border:none;border-radius:var(--radius-full);background:var(--card-hover);color:var(--text-secondary);cursor:pointer}.frm-composer-route-add{align-self:flex-start;cursor:pointer}.frm-composer-route-summary{font-size:13px;color:var(--text-secondary)}.frm-composer-route-fields{display:flex;flex-direction:column;gap:var(--space-sm);padding:var(--space-md);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.frm-composer-route-metrics{display:flex;gap:var(--space-sm)}.frm-composer-route-metrics .frm-composer-field{flex:1}.frm-skeleton{border-radius:var(--radius-md);background:linear-gradient(90deg,var(--surface-raised) 25%,var(--card-hover) 37%,var(--surface-raised) 63%);background-size:400% 100%;animation:frm-skeleton-shimmer 1.4s ease infinite}.frm-skeleton-row{height:88px;margin-bottom:var(--space-md)}.frm-skeleton-row:last-child{margin-bottom:0}@keyframes frm-skeleton-shimmer{0%{background-position:100% 50%}to{background-position:0 50%}}.frm-danger-btn{border-color:var(--danger, #ff6b6b);color:var(--danger, #ff6b6b)}.frm-danger-btn:hover{background:var(--danger, #ff6b6b);color:var(--on-primary, #fff)}.frm-moderation-zone{display:flex;flex-direction:column;gap:var(--space-md);padding:var(--space-md);background:var(--surface-raised);border:1px solid var(--border-subtle);border-top:2px solid var(--primary);border-radius:var(--radius-md)}.frm-moderation-label{display:flex;align-items:center;gap:6px;margin:0;color:var(--text-secondary);font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.frm-moderation-label .material-symbols-rounded{font-size:17px}.frm-moderation-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-sm)}.frm-moderation-move{display:inline-flex;align-items:center;gap:var(--space-xs)}.frm-moderation-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--border-subtle);border-radius:var(--radius-full);background:transparent;color:var(--text-secondary);font-family:var(--font-body);font-size:13px;font-weight:500;cursor:pointer}.frm-moderation-btn:hover:not(:disabled){color:var(--text);background:var(--card-hover)}.frm-moderation-btn:focus-visible{outline:2px solid var(--primary);outline-offset:1px}.frm-moderation-btn:disabled{opacity:.5;cursor:not-allowed}.frm-moderation-btn--danger{border-color:var(--danger, #ef4444);color:var(--danger, #ef4444)}.frm-moderation-btn--danger:hover:not(:disabled){background:var(--danger, #ef4444);color:var(--on-primary, #fff)}.frm-moderation-select{height:36px;max-width:220px;padding:0 var(--space-sm);background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text);font-size:13px}.frm-moderation-hint,.frm-moderation-toast{margin:0;font-size:13px;color:var(--text-secondary)}.frm-moderation-toast{display:flex;align-items:center;gap:var(--space-sm)}.frm-moderation-toast [data-tone=err]{color:var(--danger, #ef4444)}.frm-moderation-undo{padding:0;border:0;background:none;color:var(--primary);font-family:var(--font-body);font-size:13px;font-weight:600;cursor:pointer;text-decoration:underline}.frm-moderation-dialog{width:min(520px,calc(100vw - 32px));padding:var(--space-lg);background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-lg);color:var(--text)}.frm-moderation-dialog::backdrop{background:#0000008c}.frm-moderation-dialog h2{margin:0 0 var(--space-sm);font-size:18px}.frm-moderation-dialog-copy{margin:0 0 var(--space-md);color:var(--text-secondary);font-size:14px}.frm-moderation-dialog-label{display:block;margin-bottom:var(--space-xs);font-size:13px;font-weight:600}.frm-moderation-dialog-input{width:100%;padding:var(--space-sm);background:var(--surface-raised);border:1px solid var(--border-subtle);border-radius:var(--radius-md);color:var(--text);font-family:var(--font-body);font-size:14px;resize:vertical}.frm-moderation-dialog-error{margin:var(--space-xs) 0 0;color:var(--danger, #ef4444);font-size:13px}.frm-moderation-dialog-actions{display:flex;justify-content:flex-end;gap:var(--space-sm);margin-top:var(--space-md)}.frm-profile-hero{display:flex;align-items:flex-start;flex-wrap:wrap;gap:var(--space-lg)}.frm-profile-avatar{margin-block-start:var(--space-xs)}.frm-profile-identity{display:flex;flex-direction:column;gap:var(--space-sm);min-width:0;flex:1 1 240px}.frm-profile-name{margin:0;font-size:clamp(28px,6vw,44px);line-height:1.1;overflow-wrap:anywhere}.frm-profile-member-since{margin:0;color:var(--text-muted);font-size:14px}.frm-profile-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:1px;margin:0;border:1px solid var(--border-subtle);background:var(--border-subtle)}.frm-profile-stat{display:flex;flex-direction:column;gap:var(--space-xxs);padding:var(--space-lg);background:var(--surface)}.frm-profile-stat-label{color:var(--text-muted);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;overflow-wrap:anywhere}.frm-profile-stat-value{margin:0;color:var(--text);font-family:var(--font-display);font-size:24px;font-weight:500;line-height:1.1}.frm-profile-activity{display:flex;flex-direction:column;border:1px solid var(--border-subtle)}.frm-profile-activity-row{display:flex;flex-direction:column;gap:var(--space-xs);padding:var(--space-lg);border-top:1px solid var(--border-subtle);min-width:0}.frm-profile-activity-row:first-child{border-top:0}.frm-profile-activity-title{color:var(--text);font-family:var(--font-display);font-size:17px;font-weight:500;line-height:1.3;text-decoration:none;overflow-wrap:anywhere}.frm-profile-activity-title:hover,.frm-profile-activity-title:focus-visible{color:var(--primary)}.frm-profile-activity-excerpt{margin:0;color:var(--text-secondary);font-size:14px;line-height:1.55;overflow-wrap:anywhere}.frm-profile-activity-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-md);color:var(--text-muted);font-size:13px}.frm-profile-activity-stat{display:inline-flex;align-items:center;gap:var(--space-xxs)}.frm-profile-activity-stat .material-symbols-rounded{font-size:16px}.frm-profile-owner-edit{align-self:flex-start;margin-block-start:var(--space-xs)}.frm-profile-card{display:flex;flex-direction:column;gap:var(--space-lg);margin-block-end:var(--space-xl)}.frm-profile-avatar-edit{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-xs)}[data-frm-profile-avatar-pick]:has(input:disabled){opacity:.6;cursor:progress}.frm-identity-hint{margin:0 0 var(--space-md);color:var(--text-secondary);font-size:14px;max-width:60ch}.frm-identity-form{display:flex;flex-direction:column;gap:var(--space-md);max-width:420px}.frm-identity-label{display:flex;flex-direction:column;gap:var(--space-xs);font-size:12px;font-weight:500;color:var(--text-secondary)}.frm-identity-input{padding:10px 12px;border-radius:var(--radius-md);border:1px solid var(--border);background:var(--bg);color:var(--text);font-family:var(--font-body);font-size:14px}.frm-identity-input:focus{outline:2px solid var(--primary);outline-offset:1px;border-color:var(--primary)}.frm-identity-actions{display:flex;gap:var(--space-sm)}.frm-identity-status{display:block;min-height:1em;margin-block-start:var(--space-sm);font-size:13px;color:var(--text-secondary)}
