@charset "UTF-8";:root{--radius: .625rem;--fg-primary: #fefefe;--fg-primary-hover: #e6e6e6;--fg-secondary: #c3c2b6;--fg-secondary-strong: #c3c2b6;--fg-tertiary: #898780;--fg-body: #deded6;--fg-brand: var(--surface-accent);--fg-brand-soft: var(--fg-brand);--fg-on-brand: #ffffff;--fg-on-brand-soft: var(--fg-on-brand);--fg-destructive: #ff6567;--fg-warning: oklch(.88 .09 70.08);--fg-favorite: #f1c106;--surface-page: #1f1f1e;--surface-menu: #383835;--surface-hover: rgba(255, 255, 255, .08);--surface-hover-strong: rgba(255, 255, 255, .14);--surface-menu-hover: #444441;--surface-brand: var(--surface-strong);--surface-brand-hover: var(--surface-strong-hover);--surface-brand-soft: var(--surface-brand);--surface-brand-soft-hover: var(--surface-brand-hover);--surface-destructive: rgba(255, 101, 103, .08);--surface-destructive-hover: rgba(255, 101, 103, .16);--surface-tooltip: #3b3b3b;--surface-tooltip-fg: #ffffff;--surface-tooltip-fg-muted: #c1c1c1;--tooltip-shadow: 0px 2px 4px 0px rgba(0, 0, 0, .16);--row-hover: rgba(255, 255, 255, .04);--tag-fade: #313130;--border-subtle: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .18);--border-hover: var(--surface-border-hover);--ring-focus: var(--surface-ring);--input-focus-stroke: #0d0d0d;--input-focus-ring: var(--ring-focus);--menu-border: rgba(255, 255, 255, .16);--menu-shadow: 0px 0px 1px 0px rgba(0, 0, 0, .48), 0px 8px 16px 0px rgba(0, 0, 0, .16), 0px 0px 8px 0px rgba(0, 0, 0, .08);--modal-border: rgba(255, 255, 255, .24);--modal-shadow: 0px 0px 1px 0px rgba(255, 255, 255, 1), 0px 0px 32px 0px rgba(0, 0, 0, .32), 0px 0px 8px 0px rgba(0, 0, 0, .16);--switcher-active: rgba(255, 255, 255, .16);--switcher-shadow: 0px 3px 4px 0px rgba(0, 0, 0, .08);--icon-hover: rgba(255, 255, 255, .08);--table-surface: rgba(255, 255, 255, .04);--sidebar-shadow: 0px 0px 1px 0px rgba(255, 255, 255, .32), 0px 0px 32px 0px rgba(0, 0, 0, .08), 0px 0px 8px 0px rgba(0, 0, 0, .04);--background: var(--surface-page);--foreground: var(--fg-primary);--card: var(--surface-menu);--card-foreground: var(--fg-primary);--popover: var(--surface-menu);--popover-foreground: var(--fg-primary);--primary: var(--surface-brand);--primary-foreground: var(--fg-on-brand);--secondary: var(--surface-hover);--secondary-foreground: var(--fg-primary);--muted: var(--surface-hover);--muted-hover: var(--surface-hover-strong);--muted-foreground: var(--fg-secondary);--accent: var(--surface-hover);--accent-foreground: var(--fg-primary);--destructive: var(--fg-destructive);--destructive-foreground: #ffffff;--border: var(--border-subtle);--input: var(--border-strong);--ring: var(--ring-focus);--success: oklch(.696 .17 162.48);--success-foreground: oklch(.985 0 0);--warning: oklch(.769 .188 70.08);--warning-foreground: oklch(.141 .005 285.823);--info: oklch(.623 .214 259.815);--info-foreground: oklch(.985 0 0);--chart-1: oklch(.811 .111 293.571);--chart-2: oklch(.606 .25 292.717);--chart-3: oklch(.541 .281 293.009);--chart-4: oklch(.491 .27 292.581);--chart-5: oklch(.432 .232 292.759);--chart-cat-1: oklch(.606 .25 292.7);--chart-cat-2: oklch(.646 .19 27);--chart-cat-3: oklch(.66 .16 152);--chart-cat-4: oklch(.636 .17 232);--chart-cat-5: oklch(.72 .16 70);--chart-cat-6: oklch(.646 .2 340);--chart-cat-7: oklch(.68 .13 195);--chart-cat-8: oklch(.7 .15 115);--sidebar: #262626;--sidebar-foreground: var(--fg-secondary-strong);--sidebar-primary: var(--surface-brand);--sidebar-primary-foreground: var(--fg-on-brand);--sidebar-accent: var(--surface-hover);--sidebar-accent-foreground: #fefefe;--sidebar-border: var(--border-subtle);--sidebar-ring: var(--ring-focus);--bubble-fill-l: .34;--bubble-fill-c: .055;--bubble-text-l: .87;--bubble-text-c: .09;--sidebar-width: 240px}.dark{--radius: .625rem;--fg-primary: #fefefe;--fg-primary-hover: #e6e6e6;--fg-secondary: #c3c2b6;--fg-secondary-strong: #c3c2b6;--fg-tertiary: #898780;--fg-body: #deded6;--fg-brand: var(--surface-accent);--fg-brand-soft: var(--fg-brand);--fg-on-brand: #ffffff;--fg-on-brand-soft: var(--fg-on-brand);--fg-destructive: #ff6567;--fg-warning: oklch(.88 .09 70.08);--fg-favorite: #f1c106;--surface-page: #1f1f1e;--surface-menu: #383835;--surface-hover: rgba(255, 255, 255, .08);--surface-hover-strong: rgba(255, 255, 255, .14);--surface-menu-hover: #444441;--surface-brand: var(--surface-strong);--surface-brand-hover: var(--surface-strong-hover);--surface-brand-soft: var(--surface-brand);--surface-brand-soft-hover: var(--surface-brand-hover);--surface-destructive: rgba(255, 101, 103, .08);--surface-destructive-hover: rgba(255, 101, 103, .16);--surface-tooltip: #3b3b3b;--surface-tooltip-fg: #ffffff;--surface-tooltip-fg-muted: #c1c1c1;--tooltip-shadow: 0px 2px 4px 0px rgba(0, 0, 0, .16);--row-hover: rgba(255, 255, 255, .04);--tag-fade: #313130;--border-subtle: rgba(255, 255, 255, .08);--border-strong: rgba(255, 255, 255, .18);--border-hover: var(--surface-border-hover);--ring-focus: var(--surface-ring);--input-focus-stroke: #0d0d0d;--input-focus-ring: var(--ring-focus);--menu-border: rgba(255, 255, 255, .16);--menu-shadow: 0px 0px 1px 0px rgba(0, 0, 0, .48), 0px 8px 16px 0px rgba(0, 0, 0, .16), 0px 0px 8px 0px rgba(0, 0, 0, .08);--modal-border: rgba(255, 255, 255, .24);--modal-shadow: 0px 0px 1px 0px rgba(255, 255, 255, 1), 0px 0px 32px 0px rgba(0, 0, 0, .32), 0px 0px 8px 0px rgba(0, 0, 0, .16);--switcher-active: rgba(255, 255, 255, .16);--switcher-shadow: 0px 3px 4px 0px rgba(0, 0, 0, .08);--icon-hover: rgba(255, 255, 255, .08);--table-surface: rgba(255, 255, 255, .04);--sidebar-shadow: 0px 0px 1px 0px rgba(255, 255, 255, .32), 0px 0px 32px 0px rgba(0, 0, 0, .08), 0px 0px 8px 0px rgba(0, 0, 0, .04);--background: var(--surface-page);--foreground: var(--fg-primary);--card: var(--surface-menu);--card-foreground: var(--fg-primary);--popover: var(--surface-menu);--popover-foreground: var(--fg-primary);--primary: var(--surface-brand);--primary-foreground: var(--fg-on-brand);--secondary: var(--surface-hover);--secondary-foreground: var(--fg-primary);--muted: var(--surface-hover);--muted-hover: var(--surface-hover-strong);--muted-foreground: var(--fg-secondary);--accent: var(--surface-hover);--accent-foreground: var(--fg-primary);--destructive: var(--fg-destructive);--destructive-foreground: #ffffff;--border: var(--border-subtle);--input: var(--border-strong);--ring: var(--ring-focus);--success: oklch(.696 .17 162.48);--success-foreground: oklch(.985 0 0);--warning: oklch(.769 .188 70.08);--warning-foreground: oklch(.141 .005 285.823);--info: oklch(.623 .214 259.815);--info-foreground: oklch(.985 0 0);--chart-1: oklch(.811 .111 293.571);--chart-2: oklch(.606 .25 292.717);--chart-3: oklch(.541 .281 293.009);--chart-4: oklch(.491 .27 292.581);--chart-5: oklch(.432 .232 292.759);--chart-cat-1: oklch(.606 .25 292.7);--chart-cat-2: oklch(.646 .19 27);--chart-cat-3: oklch(.66 .16 152);--chart-cat-4: oklch(.636 .17 232);--chart-cat-5: oklch(.72 .16 70);--chart-cat-6: oklch(.646 .2 340);--chart-cat-7: oklch(.68 .13 195);--chart-cat-8: oklch(.7 .15 115);--sidebar: #262626;--sidebar-foreground: var(--fg-secondary-strong);--sidebar-primary: var(--surface-brand);--sidebar-primary-foreground: var(--fg-on-brand);--sidebar-accent: var(--surface-hover);--sidebar-accent-foreground: #fefefe;--sidebar-border: var(--border-subtle);--sidebar-ring: var(--ring-focus);--bubble-fill-l: .34;--bubble-fill-c: .055;--bubble-text-l: .87;--bubble-text-c: .09;--sidebar-width: 240px}.light{--radius: .625rem;--fg-primary: #0b0b0b;--fg-primary-hover: #2b2b2b;--fg-secondary: #7b7a73;--fg-secondary-strong: #373734;--fg-tertiary: #898780;--fg-body: #272622;--fg-brand: var(--surface-strong);--fg-brand-soft: var(--surface-deep);--fg-on-brand: #ffffff;--fg-on-brand-soft: var(--surface-deep);--fg-destructive: #d92d30;--fg-warning: oklch(.49 .117 58.318);--fg-favorite: #f1c106;--surface-page: #fdfdfc;--surface-menu: #ffffff;--surface-hover: #efeeec;--surface-hover-strong: #e6e5e1;--surface-menu-hover: #e6e5e1;--surface-brand: var(--surface-strong);--surface-brand-hover: var(--surface-strong-hover);--surface-brand-soft: var(--surface-pale);--surface-brand-soft-hover: var(--surface-pale-hover);--surface-destructive: rgba(217, 45, 48, .08);--surface-destructive-hover: rgba(217, 45, 48, .16);--surface-tooltip: #323232;--surface-tooltip-fg: #ffffff;--surface-tooltip-fg-muted: #c1c1c1;--tooltip-shadow: 0px 2px 4px 0px rgba(0, 0, 0, .16);--row-hover: #f9f8f7;--tag-fade: #efeeec;--border-subtle: rgba(20, 20, 20, .08);--border-strong: rgba(0, 0, 0, .16);--border-hover: var(--surface-border-hover-light);--ring-focus: var(--surface-ring-light);--input-focus-stroke: #f9f9f7;--input-focus-ring: var(--ring-focus);--menu-border: transparent;--menu-shadow: 0px 0px 1px 0px rgba(0, 0, 0, .24), 0px 8px 16px 0px rgba(0, 0, 0, .08), 0px 0px 8px 0px rgba(0, 0, 0, .04);--modal-border: transparent;--modal-shadow: 0px 0px 1px 0px rgba(0, 0, 0, .24), 0px 8px 40px 0px rgba(0, 0, 0, .12), 0px 0px 8px 0px rgba(0, 0, 0, .04);--switcher-active: #ffffff;--switcher-shadow: 0px 3px 4px 0px rgba(0, 0, 0, .08);--icon-hover: rgba(0, 0, 0, .08);--table-surface: #fafaf9;--sidebar-shadow: 0px 0px 1px 0px rgba(0, 0, 0, .24), 0px 0px 32px 0px rgba(0, 0, 0, .08), 0px 0px 8px 0px rgba(0, 0, 0, .04);--background: var(--surface-page);--foreground: var(--fg-primary);--card: var(--surface-menu);--card-foreground: var(--fg-primary);--popover: var(--surface-menu);--popover-foreground: var(--fg-primary);--primary: var(--surface-brand);--primary-foreground: var(--fg-on-brand);--secondary: var(--surface-hover);--secondary-foreground: var(--fg-primary);--muted: var(--surface-hover);--muted-hover: var(--surface-hover-strong);--muted-foreground: var(--fg-secondary);--accent: var(--surface-hover);--accent-foreground: var(--fg-primary);--destructive: var(--fg-destructive);--destructive-foreground: #ffffff;--border: var(--border-subtle);--input: var(--border-strong);--ring: var(--ring-focus);--success: oklch(.596 .145 163.225);--success-foreground: oklch(.985 0 0);--warning: oklch(.666 .179 58.318);--warning-foreground: oklch(.985 0 0);--info: oklch(.546 .245 262.881);--info-foreground: oklch(.985 0 0);--chart-1: oklch(.811 .111 293.571);--chart-2: oklch(.606 .25 292.717);--chart-3: oklch(.541 .281 293.009);--chart-4: oklch(.491 .27 292.581);--chart-5: oklch(.432 .232 292.759);--chart-cat-1: oklch(.606 .25 292.7);--chart-cat-2: oklch(.646 .19 27);--chart-cat-3: oklch(.66 .16 152);--chart-cat-4: oklch(.636 .17 232);--chart-cat-5: oklch(.72 .16 70);--chart-cat-6: oklch(.646 .2 340);--chart-cat-7: oklch(.68 .13 195);--chart-cat-8: oklch(.7 .15 115);--sidebar: #ffffff;--sidebar-foreground: var(--fg-secondary-strong);--sidebar-primary: var(--surface-brand);--sidebar-primary-foreground: var(--fg-on-brand);--sidebar-accent: var(--surface-hover);--sidebar-accent-foreground: #4d4d4d;--sidebar-border: var(--border-subtle);--sidebar-ring: var(--ring-focus);--bubble-fill-l: .93;--bubble-fill-c: .05;--bubble-text-l: .45;--bubble-text-c: .13}:root,[data-surface=product]{--surface-strong: #7a3cff;--surface-strong-hover: #8850ff;--surface-accent: #cab0ff;--surface-dim: #5f5e8a;--surface-deep: #512c9f;--surface-pale: #ebe1ff;--surface-pale-hover: #e5d9ff;--surface-ring: #b592ff;--surface-border-hover: rgba(122, 60, 255, .4);--surface-border-hover-light: rgba(122, 60, 255, .28);--surface-ring-light: #d1bbff}[data-surface=sales]{--surface-strong: #c65100;--surface-strong-hover: #be5924;--surface-accent: #f6af73;--surface-dim: #855641;--surface-deep: #803914;--surface-pale: #f7e2d9;--surface-pale-hover: #f4dacf;--surface-ring: #de9675;--surface-border-hover: rgba(198, 81, 0, .4);--surface-border-hover-light: rgba(198, 81, 0, .28);--surface-ring-light: #ebbda8}[data-surface=success]{--surface-strong: #00856a;--surface-strong-hover: #33846e;--surface-accent: #6cd8b5;--surface-dim: #33705f;--surface-deep: #135544;--surface-pale: #dcebe5;--surface-pale-hover: #d2e6de;--surface-ring: #80b7a5;--surface-border-hover: rgba(0, 133, 106, .4);--surface-border-hover-light: rgba(0, 133, 106, .28);--surface-ring-light: #b0d1c6}[data-surface=support]{--surface-strong: #0077cd;--surface-strong-hover: #2779c4;--surface-accent: #71ccfe;--surface-dim: #43668a;--surface-deep: #134e82;--surface-pale: #dbe9f7;--surface-pale-hover: #d1e3f5;--surface-ring: #7baee3;--surface-border-hover: rgba(0, 119, 205, .4);--surface-border-hover-light: rgba(0, 119, 205, .28);--surface-ring-light: #adccee}[data-surface=build]{--surface-strong: #8b5a2b;--surface-strong-hover: #9a6a3b;--surface-accent: #d9b48f;--surface-dim: #7a6552;--surface-deep: #5c3a1e;--surface-pale: #efe4d8;--surface-pale-hover: #eadbcb;--surface-ring: #c9a27c;--surface-border-hover: rgba(139, 90, 43, .4);--surface-border-hover-light: rgba(139, 90, 43, .28);--surface-ring-light: #e0c9b1}[data-surface]{--fg-brand: var(--surface-accent);--fg-brand-soft: var(--surface-accent);--surface-brand: var(--surface-strong);--surface-brand-hover: var(--surface-strong-hover);--surface-brand-soft: var(--surface-strong);--surface-brand-soft-hover: var(--surface-strong-hover);--border-hover: var(--surface-border-hover);--ring-focus: var(--surface-ring);--primary: var(--surface-brand);--ring: var(--ring-focus);--input-focus-ring: var(--ring-focus);--sidebar-primary: var(--surface-brand);--sidebar-ring: var(--ring-focus);--color-fg-brand: var(--fg-brand);--color-fg-brand-soft: var(--fg-brand-soft);--color-fg-on-brand-soft: var(--fg-on-brand-soft);--color-surface-brand: var(--surface-brand);--color-surface-brand-hover: var(--surface-brand-hover);--color-surface-brand-soft: var(--surface-brand-soft);--color-surface-brand-soft-hover: var(--surface-brand-soft-hover);--color-primary: var(--primary);--color-ring: var(--ring);--color-sidebar-primary: var(--sidebar-primary);--color-sidebar-ring: var(--sidebar-ring)}.light [data-surface],.light[data-surface]{--fg-brand: var(--surface-strong);--fg-brand-soft: var(--surface-deep);--fg-on-brand-soft: var(--surface-deep);--surface-brand-soft: var(--surface-pale);--surface-brand-soft-hover: var(--surface-pale-hover);--border-hover: var(--surface-border-hover-light);--ring-focus: var(--surface-ring-light)}.dark [data-surface],.dark[data-surface]{--fg-brand: var(--surface-accent);--fg-brand-soft: var(--surface-accent);--fg-on-brand-soft: var(--fg-on-brand);--surface-brand-soft: var(--surface-strong);--surface-brand-soft-hover: var(--surface-strong-hover);--border-hover: var(--surface-border-hover);--ring-focus: var(--surface-ring)}:root{--brand: var(--surface-brand);--bg: var(--background);--card: var(--surface-menu);--border: var(--border-subtle);--text: var(--foreground);--text-2: var(--fg-secondary)}.dark{--brand-text: var(--fg-brand)}.light{--brand-text: var(--brand)}:focus-visible{outline:2px solid var(--ring-focus);outline-offset:2px}*{box-sizing:border-box}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background:var(--bg);color:var(--text);font-size:15px;line-height:1.5}.portal{max-width:1080px;margin:0 auto;padding:24px 20px 64px}.portal--embedded{max-width:none;margin:0;padding:16px 16px 24px}@container (max-width: 400px){.portal--embedded .portal-tabs{flex-wrap:wrap}.portal--embedded .portal-toolbar{flex-direction:column;align-items:stretch}.portal--embedded .portal-search{min-width:0;width:100%}.portal--embedded .portal-identity-names{flex-direction:column}.portal--embedded .portal-comment-form-row>*{min-width:0}.portal--embedded .portal-changelog-switcher{flex-wrap:wrap}.portal--embedded .portal-changelog-switcher select{min-width:0;max-width:100%}}.portal--embedded{container-type:inline-size}.portal--embedded .portal-centered{min-height:200px}.portal-centered{display:flex;min-height:60vh;align-items:center;justify-content:center;color:var(--text-2)}.portal-error{color:var(--fg-destructive)}.portal-sub{color:var(--text-2);font-size:14px}.portal-access-card{width:min(100%,30rem);border:1px solid var(--border);border-radius:12px;background:var(--card);padding:24px}.portal-access-card h1{margin:0 0 8px;font-size:22px}.portal-access-card form{display:flex;flex-direction:column;gap:8px;margin:20px 0 12px}.portal-access-card label{font-size:13px;font-weight:600}.portal-access-open{display:inline-flex;margin-top:12px;text-decoration:none}.portal-header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;padding-bottom:14px;border-bottom:1px solid var(--border);margin-bottom:24px}.portal-brand{display:flex;align-items:center;gap:12px}.portal-brand h1{margin:0;font-size:20px}.portal-logo{height:32px;width:auto;border-radius:6px}.portal-tabs{display:flex;gap:4px}.portal-tab{background:none;border:none;padding:8px 14px;font:inherit;font-weight:600;color:var(--text-2);cursor:pointer;border-radius:8px}.portal-tab:hover{background:var(--surface-hover)}.portal-tab.active{color:var(--brand-text);background:color-mix(in srgb,var(--brand) 10%,transparent)}.portal-layout{display:grid;grid-template-columns:220px 1fr;gap:28px;align-items:start}@media(max-width:760px){.portal-layout{grid-template-columns:1fr}}.portal-sidebar{position:sticky;top:16px}.portal-sidebar-title{font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--text-2);margin:4px 0 8px}.portal-board-link{display:flex;width:100%;align-items:center;justify-content:space-between;gap:8px;background:none;border:none;padding:8px 10px;font:inherit;text-align:left;border-radius:8px;cursor:pointer;color:var(--text)}.portal-board-link:hover{background:var(--surface-hover)}.portal-board-link.active{background:var(--card);box-shadow:0 1px 2px #0000000f;font-weight:600}.portal-board-count{font-size:12px;color:var(--text-2)}.portal-board-desc{margin:0 0 12px}.portal-submit{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:16px;margin-bottom:16px}.portal-submit input,.portal-submit textarea{width:100%;border:1px solid var(--border);border-radius:8px;padding:10px 12px;font:inherit;margin-bottom:10px;background:var(--bg)}.portal-submit textarea{resize:vertical}.portal-submit-row{display:flex;gap:10px}.portal-submit-row input{flex:1;margin-bottom:0}.portal-submit-row button{border:none;border-radius:8px;background:var(--brand);color:#fff;font:inherit;font-weight:600;padding:10px 18px;cursor:pointer;white-space:nowrap}.portal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:4px 0 12px}.portal-sorts{display:flex;gap:4px}.portal-sort{background:none;border:1px solid transparent;padding:6px 12px;font:inherit;font-size:14px;font-weight:600;color:var(--text-2);cursor:pointer;border-radius:8px}.portal-sort.active{color:var(--text);background:var(--card);border-color:var(--border)}.portal-subscribe{margin:0 0 20px}.portal-subscribe-form{display:flex;flex-direction:column;gap:8px;padding:14px 16px;border:1px solid var(--border);border-radius:10px;background:var(--card)}.portal-subscribe-label{font-size:14px;font-weight:600}.portal-subscribe-row{display:flex;flex-wrap:wrap;gap:8px}.portal-subscribe-row .portal-input{flex:1 1 220px;min-width:0}.portal-input{border:1px solid var(--border);border-radius:8px;padding:10px 12px;font:inherit;color:inherit;background:var(--bg)}.portal-input::placeholder{color:var(--text-2)}.portal-input:focus-visible{outline:none;border-color:var(--brand-text);box-shadow:0 0 0 3px color-mix(in srgb,var(--brand) 18%,transparent)}.portal-button{border:none;border-radius:8px;padding:10px 18px;font:inherit;font-weight:600;color:#fff;background:var(--brand);cursor:pointer;white-space:nowrap}.portal-button:hover:not(:disabled){filter:brightness(.95)}.portal-button:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.portal-button:disabled{opacity:.6;cursor:default}.portal-search{border:1px solid var(--border);border-radius:8px;padding:8px 12px;font:inherit;font-size:14px;background:var(--card);min-width:200px}.portal-list{display:flex;flex-direction:column}.portal-post{display:flex;gap:14px;background:var(--card);border:1px solid var(--border);border-radius:12px;padding:14px 16px;margin-bottom:10px;cursor:pointer;transition:box-shadow .12s}.portal-post:hover{box-shadow:0 2px 8px #00000012}.portal-post-body{min-width:0;flex:1}.portal-post-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.portal-post-head h3{margin:0;font-size:15px}.portal-post-body p{margin:4px 0 0;color:var(--text-2);font-size:14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.portal-post-meta{margin-top:6px;font-size:13px;color:var(--text-2)}.portal-vote{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:44px;height:52px;border:1px solid var(--border);border-radius:10px;background:var(--card);cursor:pointer;font:inherit;flex-shrink:0}.portal-vote:hover{border-color:var(--brand-text);color:var(--brand-text)}.portal-vote-caret{font-size:11px;line-height:1}.portal-vote-count{font-weight:700;font-size:14px}.portal-pill{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:2px 8px;border-radius:999px}.portal-pill--planned{background:#dbeafe;color:#1d4ed8}.portal-pill--active{background:#ede9fe;color:#6d28d9}.portal-pill--done{background:#d1fae5;color:#047857}.portal-detail{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:20px}.portal-back{background:none;border:none;font:inherit;color:var(--text-2);cursor:pointer;padding:0;margin-bottom:14px}.portal-back:hover{color:var(--text)}.portal-detail-head{display:flex;gap:14px;align-items:flex-start}.portal-detail-head h2{margin:0 0 6px;font-size:20px}.portal-detail-body{margin:14px 0 6px;white-space:pre-wrap}.portal-detail-date{font-size:13px;color:var(--text-2);margin-bottom:18px}.portal-detail-comments{border-top:1px solid var(--border);padding-top:14px}.portal-detail-comments h3{margin:0 0 8px;font-size:15px}.portal-comment{padding:8px 0;border-bottom:1px solid var(--border)}.portal-comment p{margin:0 0 2px;font-size:14px}.portal-comment-date{font-size:12px;color:var(--text-2)}.portal-comment-form{display:flex;gap:8px;margin-top:12px}.portal-comment-form input{flex:1;padding:10px 12px;border:1px solid var(--border);border-radius:8px;font:inherit;background:var(--bg)}.portal-comment-form button{padding:10px 16px;border:none;border-radius:8px;background:var(--brand);color:#fff;font:inherit;font-weight:600;cursor:pointer}.portal-roadmap{display:flex;gap:16px;overflow-x:auto;padding-bottom:8px}.portal-roadmap-col{flex:0 0 300px;background:#00000008;border-radius:12px;padding:12px}.portal-roadmap-col-head{display:flex;justify-content:space-between;align-items:center;font-weight:700;margin-bottom:10px}.portal-roadmap-count{font-size:12px;color:var(--text-2);font-weight:600}.portal-roadmap-empty{text-align:center;padding:16px 0}.portal-roadmap-card{display:flex;gap:10px;background:var(--card);border:1px solid var(--border);border-radius:10px;padding:10px;margin-bottom:8px;cursor:pointer}.portal-roadmap-card:hover{box-shadow:0 2px 6px #00000012}.portal-roadmap-card{cursor:default}.portal-roadmap-card-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px;font-size:11px;color:var(--text-2)}.portal-roadmap-card-body h4{margin:0 0 4px;font-size:14px}.portal-roadmap-card-body p{margin:0;font-size:12px;color:var(--text-2);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.portal-changelog-title{margin:0;font-size:22px}.portal-changelog-entry{display:grid;grid-template-columns:170px 1fr;gap:20px;padding:22px 0;border-bottom:1px solid var(--border)}@media(max-width:640px){.portal-changelog-entry{grid-template-columns:1fr;gap:6px}}.portal-changelog-date{color:var(--text-2);font-size:14px;padding-top:2px}.portal-changelog-content h3{margin:6px 0;font-size:18px}.portal-changelog-labels{display:flex;gap:6px;flex-wrap:wrap}.portal-changelog-cover{display:block;width:100%;max-height:360px;margin:0 0 18px;border-radius:12px;object-fit:cover}.portal-changelog-links{display:grid;gap:8px;margin-top:20px}.portal-chip-link{color:inherit;text-decoration:none}.portal-chip-link:hover{text-decoration:underline}.portal-chip{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:2px 8px;border-radius:999px;background:color-mix(in srgb,var(--brand) 12%,transparent);color:var(--brand-text)}.portal-md{line-height:1.6}.portal-md h1,.portal-md h2,.portal-md h3{margin:.6em 0 .3em;line-height:1.25}.portal-md p{margin:.5em 0}.portal-md ul,.portal-md ol{margin:.5em 0;padding-left:1.4em}.portal-md li{margin:.2em 0}.portal-md code{background:#0000000f;padding:1px 5px;border-radius:4px;font-size:.9em}.portal-md pre{background:#0000000f;padding:12px;border-radius:8px;overflow-x:auto}.portal-md pre code{background:none;padding:0}.portal-md a{color:var(--brand-text)}.portal-md img{max-width:100%;border-radius:8px}.portal-md blockquote{margin:.5em 0;padding-left:12px;border-left:3px solid rgba(0,0,0,.15);color:#4b5563}.portal-footer{margin-top:40px;text-align:center;font-size:13px;color:var(--text-2)}.portal-similar{background:var(--card);border:1px solid var(--border);border-radius:12px;padding:12px 14px;margin-bottom:16px}.portal-similar-title{font-size:13px;font-weight:700;color:var(--text-2);margin-bottom:6px}.portal-similar-row{display:flex;width:100%;align-items:center;justify-content:space-between;gap:10px;background:none;border:none;border-top:1px solid var(--border);padding:8px 2px;font:inherit;text-align:left;cursor:pointer;color:var(--text)}.portal-similar-row:hover .portal-similar-name{color:var(--brand-text);text-decoration:underline}.portal-similar-name{font-weight:600;font-size:14px}.portal-similar-meta{font-size:12px;color:var(--text-2);white-space:nowrap}.portal-props{border:1px solid color-mix(in srgb,var(--brand) 35%,transparent);background:color-mix(in srgb,var(--brand) 6%,transparent);border-radius:10px;padding:12px;margin-bottom:10px}.portal-props-title{font-size:13px;font-weight:700;margin-bottom:8px}.portal-props-row{display:flex;gap:12px;flex-wrap:wrap}.portal-prop{display:flex;flex-direction:column;gap:4px;font-size:12px;font-weight:600;text-transform:capitalize;color:var(--text-2)}.portal-prop select{border:1px solid var(--border);border-radius:8px;padding:6px 10px;font:inherit;font-size:13px;background:var(--card);text-transform:capitalize}.portal-translation-picker{display:flex;align-items:center;gap:8px;margin:12px 0;color:var(--muted);font-size:13px}.portal-translation-picker select{border:1px solid var(--border);border-radius:8px;padding:6px 10px;font:inherit;font-size:13px;background:var(--card);color:var(--text)}.portal-btn-ghost{border:1px solid var(--border);border-radius:8px;background:var(--card);color:var(--text-2);font:inherit;font-weight:600;padding:10px 14px;cursor:pointer}.portal-embed-wrap{display:block;margin:10px 0}.portal-embed{width:100%;aspect-ratio:16 / 9;border:none;border-radius:10px;background:#000}.portal-footer a{color:inherit;text-decoration:none}.portal-footer a:hover{color:var(--text)}.portal-avatar{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;color:#fff;font-size:13px;font-weight:700;flex-shrink:0}.portal-comment{display:flex;gap:10px;align-items:flex-start}.portal-comment-main{min-width:0;flex:1}.portal-comment-author{font-size:13px;font-weight:600}.portal-comment-actions{display:flex;align-items:flex-start;gap:10px;margin-top:4px}.portal-like{border:0;border-radius:999px;background:var(--surface-hover);color:var(--text-2);cursor:pointer;padding:3px 8px;font:inherit;font-size:12px}.portal-like--active{color:var(--brand-text);background:color-mix(in srgb,var(--brand) 12%,transparent)}.portal-like:disabled{cursor:default;opacity:.55}.portal-engagement-list{margin:8px 0;font-size:12px}.portal-engagement-list .portal-back{margin:0}.portal-engagement-identities{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px}.portal-comment-email{max-width:200px;padding:10px 12px;border:1px solid var(--border);border-radius:8px;font:inherit;background:var(--bg)}.portal-taxonomy{width:100%;border:1px solid var(--border);border-radius:8px;padding:10px 12px;font:inherit;background:var(--bg);margin-bottom:10px;color:var(--text)}.portal-confirm-post{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}.portal-identity{border:1px solid var(--border);background:var(--bg);border-radius:10px;padding:12px;margin:10px 0}.portal-identity input{width:100%;border:1px solid var(--border);border-radius:8px;padding:10px 12px;font:inherit;background:var(--card);margin-bottom:8px}.portal-identity-names{display:flex;gap:8px}.portal-identity-names input{margin-bottom:0}.portal-comment-form{display:block;margin-top:12px}.portal-comment-form-row{display:flex;gap:8px}.portal-comment-form-row input{flex:1;padding:10px 12px;border:1px solid var(--border);border-radius:8px;font:inherit;background:var(--bg)}.portal-changelog-switcher{display:flex;align-items:center;gap:12px}.portal-changelog-switcher select{border:1px solid var(--border);border-radius:8px;padding:6px 10px;font:inherit;font-size:14px;background:var(--card);color:var(--text)}.portal-custom-fields{display:grid;gap:10px;margin-bottom:10px}.portal-custom-fields label{display:grid;gap:4px;color:var(--text-2);font-size:12px;font-weight:600}.portal-custom-fields input,.portal-custom-fields select,.portal-custom-fields textarea{width:100%;border:1px solid var(--border);border-radius:8px;padding:10px 12px;background:var(--bg);color:var(--text);font:inherit}.portal-custom-fields select[multiple]{min-height:96px}.portal-custom-fields .portal-checkbox-field{display:flex;align-items:center;gap:8px;color:var(--text)}.portal-custom-fields .portal-checkbox-field input{width:auto}.portal-custom-field-values{display:grid;gap:8px;margin:14px 0;padding:12px;border:1px solid var(--border);border-radius:10px}.portal-custom-field-values div{display:grid;grid-template-columns:minmax(120px,.35fr) 1fr;gap:12px}.portal-custom-field-values dt{color:var(--text-2);font-size:12px;font-weight:700}.portal-custom-field-values dd{margin:0;font-size:13px}.portal-search-result{width:100%;text-align:left;color:inherit}.portal-rss-link{font-size:12px;font-weight:600;color:var(--muted, #888);border:1px solid var(--border, #ddd);border-radius:6px;padding:2px 8px;text-decoration:none}.portal-rss-link:hover{color:var(--brand, #4f46e5);border-color:var(--brand, #4f46e5)}
