html,body{width:100%;height:100%}input::-ms-clear{display:none}input::-ms-reveal{display:none}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%;-ms-overflow-style:scrollbar;-webkit-tap-highlight-color:#0000;font-family:sans-serif;line-height:1.15}body{margin:0}[tabindex="-1"]:focus{outline:none}hr{box-sizing:content-box;height:0;overflow:visible}h1,h2,h3,h4,h5,h6{margin-top:0;margin-bottom:.5em;font-weight:500}p{margin-top:0;margin-bottom:1em}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}address{font-style:normal;line-height:inherit;margin-bottom:1em}input[type=text],input[type=password],input[type=number],textarea{-webkit-appearance:none}ol,ul,dl{margin-top:0;margin-bottom:1em}ol ol,ul ul,ol ul,ul ol{margin-bottom:0}dt{font-weight:500}dd{margin-bottom:.5em;margin-left:0}blockquote{margin:0 0 1em}dfn{font-style:italic}b,strong{font-weight:bolder}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}pre,code,kbd,samp{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,Courier,monospace;font-size:1em}pre{margin-top:0;margin-bottom:1em;overflow:auto}figure{margin:0 0 1em}img{vertical-align:middle;border-style:none}a,area,button,[role=button],input:not([type=range]),label,select,summary,textarea{touch-action:manipulation}table{border-collapse:collapse}caption{text-align:left;caption-side:bottom;padding-top:.75em;padding-bottom:.3em}input,button,select,optgroup,textarea{color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;margin:0}button,input{overflow:visible}button,select{text-transform:none}button,html [type=button],[type=reset],[type=submit]{-webkit-appearance:button}button::-moz-focus-inner{border-style:none;padding:0}[type=button]::-moz-focus-inner{border-style:none;padding:0}[type=reset]::-moz-focus-inner{border-style:none;padding:0}[type=submit]::-moz-focus-inner{border-style:none;padding:0}input[type=radio],input[type=checkbox]{box-sizing:border-box;padding:0}input[type=date],input[type=time],input[type=datetime-local],input[type=month]{-webkit-appearance:listbox}textarea{resize:vertical;overflow:auto}fieldset{border:0;min-width:0;margin:0;padding:0}legend{width:100%;max-width:100%;color:inherit;font-size:1.5em;line-height:inherit;white-space:normal;margin-bottom:.5em;padding:0;display:block}progress{vertical-align:baseline}[type=number]::-webkit-inner-spin-button{height:auto}[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{outline-offset:-2px;-webkit-appearance:none}[type=search]::-webkit-search-cancel-button{-webkit-appearance:none}[type=search]::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{font:inherit;-webkit-appearance:button}output{display:inline-block}summary{display:list-item}template{display:none}[hidden]{display:none!important}@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-sm:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.static{position:static}.block{display:block}.contents{display:contents}.flex{display:flex}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x, ) var(--tw-rotate-y, ) var(--tw-rotate-z, ) var(--tw-skew-x, ) var(--tw-skew-y, )}.italic{font-style:italic}.filter{filter:var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.delay-1{transition-delay:1ms}.delay-2{transition-delay:2ms}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f3f5f8;--bg-subtle:#edf0f4;--bg-muted:#eef1f5;--card:#fff;--card-glass:#ffffffc7;--card-translucent:#ffffffd6;--header-bg:#ffffffd6;--modal-bg:#fff;--table-head:#f8fafd;--switch-knob:#fff;--line:#e2e7ee;--line-strong:#cfd7e2;--line-soft:#eef1f5;--glass-line:#32508224;--text:#1b2430;--text-sub:#4f5a68;--text-faint:#636d7a;--accent:#67b2ee;--accent-strong:#2c7cb5;--accent-fill-strong:#4a9ad8;--accent-soft:#eaf5fd;--accent-softer:#f6fbff;--accent-tint:#e3f2fc;--accent-ink:#1d5f8c;--accent-line:#67b2ee59;--on-accent:#fff;--gold:#7a5a00;--gold-soft:#fbf2d9;--red:#b3261e;--red-soft:#fbe9e7;--green:#126b45;--green-soft:#e8f5ee;--ink-soft:#eef1f5;--avatar-bg:#d8dfe9;--avatar-bg-strong:#d3dae4;--avatar-text:#56606d;--ring-on-media:#fff;--placeholder-a:#eef1f5;--placeholder-b:#e2e7ef;--overlay-bg:#120f0de6;--overlay-control:#ffffff1f;--overlay-control-hover:#ffffff38;--overlay-line:#ffffff2e;--inverse-bg:#141b26;--inverse-bg-2:#0c1119;--inverse-line:#26313f;--inverse-text:#f4f7fb;--inverse-sub:#aab5c4;--inverse-faint:#e9eef5;--editor-bg:#101722;--video-bg:#000;--grad-surface:linear-gradient(180deg, #fff, #fbfcfe);--grad-surface-soft:linear-gradient(180deg, #f8fbff, #edf4ff);--grad-hero:linear-gradient(135deg, #fbfdff 0%, #eff5fe 52%, #e7effd 100%);--grad-login:linear-gradient(135deg, #fbfdff, #e9f1fe);--grad-pinned:linear-gradient(180deg, #fbfdff, #f4f8ff);--grad-promo:linear-gradient(160deg, #f6faff, #eaf2ff);--grad-course-blue:linear-gradient(135deg, #eef4ff, #e2ecfc 55%, #dbe7f7);--grad-course-purple:linear-gradient(135deg, #f0f2ff, #e4e8fb 60%, #dfe4f6);--grad-course-gray:linear-gradient(135deg, #eef1f5, #e7ebf1 60%, #e1e6ed);--course-card-ink:#28468273;--hero-fade-a:#fbfdfff7;--hero-fade-b:#f6faffe6;--hero-fade-c:#eef5ff99;--cover-overlay:linear-gradient(120deg, #67b2ee2e, #f8fbff8c);--cat-ai-from:#173a75;--cat-ai-to:#2a67d5;--cat-teal-from:#0f4f5c;--cat-teal-to:#177f8f;--cat-indigo-from:#2f356e;--cat-indigo-to:#565ba8;--cat-blue-from:#1c3f6e;--cat-blue-to:#2f6f9e;--cat-slate-from:#3f4a5c;--cat-slate-to:#5f6f86;--cat-green-from:#214a55;--cat-green-to:#2c6b66;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:22px;--shadow-sm:0 1px 2px #101c2d0d;--shadow-md:0 10px 24px -14px #101c2d38;--shadow-lg:0 30px 60px -30px #101c2d47;--header-h:62px;--ease:cubic-bezier(.2, .7, .3, 1)}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f141b;--bg-subtle:#151c25;--bg-muted:#1a2230;--card:#161d27;--card-glass:#161d27bd;--card-translucent:#0f141bdb;--header-bg:#0f141bd1;--modal-bg:#161d27;--table-head:#1a2230;--switch-knob:#eef3fa;--line:#263040;--line-strong:#344154;--line-soft:#1d2634;--glass-line:#96b4dc2e;--text:#e7edf6;--text-sub:#a9b6c8;--text-faint:#8794a7;--accent:#67b2ee;--accent-strong:#9bd3f9;--accent-fill-strong:#4a9ad8;--accent-soft:#183446;--accent-softer:#142b3b;--accent-tint:#1d3b50;--accent-ink:#c8e7fb;--accent-line:#67b2ee59;--on-accent:#fff;--gold:#e5c46a;--gold-soft:#33290f;--red:#ff8a80;--red-soft:#3a1a18;--green:#6fdcae;--green-soft:#123126;--ink-soft:#1d2634;--avatar-bg:#2a3444;--avatar-bg-strong:#354255;--avatar-text:#cbd6e4;--ring-on-media:#e7edf6;--placeholder-a:#1d2634;--placeholder-b:#263040;--overlay-bg:#04080eeb;--overlay-control:#ffffff1f;--overlay-control-hover:#ffffff3d;--overlay-line:#fff3;--inverse-bg:#0b1017;--inverse-bg-2:#070b10;--inverse-line:#2a3546;--inverse-text:#eef3fa;--inverse-sub:#9aa8ba;--inverse-faint:#d7e0ec;--editor-bg:#0b1017;--video-bg:#000;--grad-surface:linear-gradient(180deg, #1a2230, #151c25);--grad-surface-soft:linear-gradient(180deg, #172132, #141c28);--grad-hero:linear-gradient(135deg, #16202f 0%, #182741 52%, #1b2c4a 100%);--grad-login:linear-gradient(135deg, #182233, #1b2c4a);--grad-pinned:linear-gradient(180deg, #182233, #151e2b);--grad-promo:linear-gradient(160deg, #172132, #1a2a44);--grad-course-blue:linear-gradient(135deg, #16233a, #1b2c4a 55%, #1e3357);--grad-course-purple:linear-gradient(135deg, #1d1f3a, #232647 60%, #272b52);--grad-course-gray:linear-gradient(135deg, #1a2130, #202938 60%, #263144);--course-card-ink:#bed2f08c;--hero-fade-a:#111720f7;--hero-fade-b:#141c28e6;--hero-fade-c:#17213099;--cover-overlay:linear-gradient(120deg, #67b2ee3d, #0f141b8c);--shadow-sm:0 1px 2px #0006;--shadow-md:0 10px 24px -14px #000000b3;--shadow-lg:0 30px 60px -30px #000c}*,:before,:after{box-sizing:border-box}*{margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;font-size:15px;line-height:1.65}img{max-width:100%}a{color:inherit}button,input,select,textarea{font:inherit}button{cursor:pointer}::selection{background:var(--accent-soft);color:var(--accent-strong)}:where(a,button,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:999;background:var(--inverse-bg);color:var(--inverse-text);transition:top .18s var(--ease);border-radius:0 0 10px 10px;padding:10px 18px;font-size:14px;font-weight:600;text-decoration:none;position:fixed;top:-70px;left:16px}.skip-link:focus{top:0}header{z-index:50;background:var(--header-bg);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line);position:sticky;top:0}.nav-inner{max-width:1180px;min-height:var(--header-h);align-items:center;gap:22px;margin:0 auto;padding:0 20px;display:flex}.logo{letter-spacing:-.2px;white-space:nowrap;color:var(--text);align-items:center;gap:10px;font-size:16px;font-weight:800;text-decoration:none;display:flex}.logo .mark{background:linear-gradient(145deg, var(--accent), var(--accent-fill-strong));width:32px;height:32px;color:var(--on-accent);letter-spacing:-.5px;border-radius:9px;justify-content:center;align-items:center;font-size:13px;font-weight:800;display:flex;overflow:hidden;box-shadow:0 6px 14px -6px #67b2eebf}.logo .mark img,.footer-brand .mark img{object-fit:cover;width:100%;height:100%;display:block}nav.tabs{flex:none;align-self:stretch;gap:2px;display:flex}nav.tabs a{color:var(--text-sub);transition:color .18s var(--ease);align-items:center;padding:0 14px;font-size:14px;text-decoration:none;display:inline-flex;position:relative}nav.tabs a:after{content:"";height:2px;transition:background .18s var(--ease);background:0 0;border-radius:2px 2px 0 0;position:absolute;bottom:0;left:10px;right:10px}nav.tabs a:hover{color:var(--text)}nav.tabs a.active{color:var(--accent-strong);font-weight:600}nav.tabs a.active:after{background:var(--accent-strong)}.nav-search{border:1px solid var(--line);background:var(--bg-subtle);min-width:0;max-width:340px;min-height:36px;color:var(--text-faint);transition:border-color .18s var(--ease), background .18s var(--ease), box-shadow .18s var(--ease);border-radius:999px;flex:220px;align-items:center;gap:8px;padding:0 12px;display:flex}.nav-search-desktop{margin-left:auto}.nav-search:focus-within{border-color:var(--accent);background:var(--card);box-shadow:0 0 0 3px var(--accent-soft)}.nav-search input{min-width:0;color:var(--text);background:0 0;border:0;outline:none;flex:1;font-family:inherit;font-size:13px}.nav-search input::placeholder{color:var(--text-faint)}.nav-search-clear{width:18px;height:18px;color:var(--text-faint);cursor:pointer;background:0 0;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.nav-search-clear:hover{background:var(--ink-soft);color:var(--text)}.nav-search-toggle{width:34px;height:34px;color:var(--text-sub);cursor:pointer;background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;display:none}.nav-search-toggle:hover{background:var(--ink-soft);color:var(--text)}.btn.nav-post-btn{border-radius:50%;flex:none;width:34px;height:34px;min-height:34px;padding:0}.nav-post-btn svg{flex:none}.nav-mobile-search{max-width:1180px;margin:0 auto;padding:0 16px 10px}.nav-mobile-search .nav-search{max-width:none}.nav-right{align-items:center;gap:10px;margin-left:auto;display:flex}.nav-tools{align-items:center;gap:2px;display:flex}.user-menu{position:relative}.avatar-btn{background:0 0;border:none;border-radius:999px;align-items:center;gap:4px;min-height:42px;padding:2px;display:flex}.avatar-btn .avatar{width:37px;height:37px;transition:box-shadow .15s var(--ease);font-size:15px}.avatar-btn:hover .avatar{box-shadow:0 0 0 3px var(--accent-soft)}.avatar-caret{color:var(--text-sub);transition:transform .18s var(--ease);font-size:10px;line-height:1;display:inline-flex}.avatar-btn[aria-expanded=true] .avatar-caret{transform:rotate(180deg)}.user-dropdown{z-index:90;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);width:300px;box-shadow:var(--shadow-lg);padding:10px;position:absolute;top:calc(100% + 12px);right:0}.user-dropdown:before{content:"";background:var(--card);border-top:1px solid var(--line);border-left:1px solid var(--line);width:10px;height:10px;position:absolute;top:-6px;right:18px;transform:rotate(45deg)}.ud-head{align-items:center;gap:12px;padding:8px 8px 10px;display:flex}.ud-head .avatar-lg{width:48px;height:48px;font-size:18px}.ud-name{font-size:15px;font-weight:700;line-height:1.3}.ud-role{align-items:center;gap:6px;margin-top:3px;display:flex}.ud-meta{color:var(--text-sub);padding:0 10px 10px;font-size:12px}.ud-divider{background:var(--line);height:1px;margin:4px 6px}.ud-item{width:100%;min-height:40px;color:var(--text);text-align:left;transition:background .15s var(--ease);background:0 0;border:none;border-radius:9px;justify-content:space-between;align-items:center;gap:12px;padding:8px 10px;font-size:13px;display:flex}.ud-item:hover{background:var(--ink-soft)}.ud-item.danger{color:var(--red)}.ud-hint{color:var(--text-faint);white-space:nowrap;font-size:11px}.notice-menu{position:relative}.notice-btn{width:40px;height:40px;color:var(--text-sub);transition:background .18s var(--ease), color .18s var(--ease);background:0 0;border:none;border-radius:50%;place-items:center;display:grid;position:relative}.notice-btn:hover{background:var(--ink-soft);color:var(--text)}.notice-badge{border:2px solid var(--ring-on-media);background:var(--red);min-width:17px;height:17px;color:var(--on-accent);border-radius:999px;place-items:center;padding:0 4px;font-size:10px;font-weight:700;line-height:1;display:grid;position:absolute;top:3px;right:2px}.notice-dropdown{z-index:90;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);width:min(370px,100vw - 32px);box-shadow:var(--shadow-lg);position:absolute;top:calc(100% + 12px);right:0;overflow:hidden}.notice-dropdown:before{content:"";border-top:1px solid var(--line);border-left:1px solid var(--line);background:var(--card);width:10px;height:10px;position:absolute;top:-6px;right:17px;transform:rotate(45deg)}.notice-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.notice-head-title{align-items:baseline;gap:8px;display:flex}.notice-title{font-size:14px;font-weight:700}.notice-read-all{color:var(--accent-strong);transition:background .15s var(--ease);background:0 0;border:none;border-radius:7px;padding:4px 7px;font-size:12px;font-weight:600}.notice-read-all:hover:not(:disabled){background:var(--accent-soft)}.notice-read-all:disabled{color:var(--text-faint);cursor:default}.notice-list{max-height:356px;padding:6px;overflow-y:auto}.notice-item{text-align:left;width:100%;transition:background .15s var(--ease);background:0 0;border:none;border-radius:10px;gap:11px;padding:11px 10px;display:flex}.notice-item:hover{background:var(--bg-subtle)}.notice-item.unread{background:var(--accent-softer)}.notice-item.unread:hover{background:var(--accent-soft)}.notice-icon{background:var(--ink-soft);width:32px;height:32px;color:var(--text-sub);border-radius:9px;flex:none;place-items:center;display:grid}.notice-icon.event{background:var(--accent-soft);color:var(--accent-strong)}.notice-icon.system{background:var(--green-soft);color:var(--green)}.notice-icon.post{background:var(--gold-soft);color:var(--gold)}.notice-content{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.notice-item-head{align-items:center;gap:6px;display:flex}.notice-item-head b{font-size:12.5px;font-weight:600}.notice-dot{background:var(--accent);border-radius:50%;flex:none;width:6px;height:6px}.notice-body{color:var(--text-sub);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:11.5px;line-height:1.55;display:-webkit-box;overflow:hidden}.notice-time{color:var(--text-faint);margin-top:2px;font-size:10.5px}body{position:relative}#root{z-index:1;position:relative;overflow-x:clip}.app-top-glow{z-index:0;pointer-events:none;background:radial-gradient(1100px 480px at 8% -10%,#67b2ee57,#0000 68%),radial-gradient(880px 440px at 92% -16%,#0e789638,#0000 70%),linear-gradient(#67b2ee1f,#67b2ee00 88%);height:460px;position:absolute;top:0;left:0;right:0}[data-theme=dark] .app-top-glow{background:radial-gradient(1100px 480px at 8% -10%,#67b2ee52,#0000 68%),radial-gradient(880px 440px at 92% -16%,#178fa333,#0000 70%),linear-gradient(#67b2ee1f,#67b2ee00 88%)}.bind-phone-banner{border-bottom:1px solid var(--line);background:var(--accent-soft);color:var(--accent-strong);flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;padding:8px 18px;font-size:12.5px;display:flex}.bind-phone-banner-icon{flex:none;display:inline-flex}.bind-phone-banner-text{line-height:1.5}.bind-phone-banner .btn{min-height:30px;padding:0 12px;font-size:12px}.bind-phone-banner-close{width:24px;height:24px;color:var(--accent-strong);opacity:.7;cursor:pointer;transition:background .15s var(--ease), opacity .15s var(--ease);background:0 0;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.bind-phone-banner-close:hover{background:var(--card);opacity:1}.bind-phone-modal .ant-modal-body{padding-top:6px}.bind-phone-lead{color:var(--text-sub);margin-bottom:16px;font-size:12.5px;line-height:1.6}.bind-phone-form{flex-direction:column;gap:8px;display:flex}.bind-phone-form label{color:var(--text-sub);font-size:12px;font-weight:600}.bind-phone-form .ant-btn{margin-top:8px}.bind-phone-code-row{align-items:center;gap:8px;display:flex}.bind-phone-code-row .ant-input-affix-wrapper,.bind-phone-code-row .ant-input{flex:1;min-width:0}.bind-phone-code-row .ant-btn{flex:none;margin-top:0}@media (width<=640px){.bind-phone-banner{justify-content:flex-start}.bind-phone-banner-text{flex:100%}}main{max-width:1180px;margin:26px auto 56px;padding:0 20px}main:focus{outline:none}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:16px;padding:22px 24px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.page-head h1{letter-spacing:-.03em;font-size:26px;font-weight:800;line-height:1.25}.page-head p{color:var(--text-sub);margin-top:4px;font-size:13px}.pill-note{background:var(--card);border:1px solid var(--line);min-height:30px;color:var(--text-sub);border-radius:999px;align-items:center;gap:6px;padding:0 12px;font-size:12px;font-weight:500;display:inline-flex}.section-head{justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:18px;display:flex}.section-head h2{letter-spacing:-.02em;font-size:21px;font-weight:800}.section-head p{color:var(--text-sub);margin-top:4px;font-size:13px}.h2{align-items:center;gap:8px;margin-bottom:16px;font-size:18px;font-weight:700;display:flex}.muted{color:var(--text-sub);font-size:12px}.lbl{color:var(--text-sub);margin-bottom:6px;font-size:12px;font-weight:600;display:block}.row{align-items:flex-start;gap:12px;display:flex}.avatar{background:var(--avatar-bg);width:36px;height:36px;color:var(--avatar-text);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:14px;text-decoration:none;display:flex}.p-avatar{background:var(--avatar-bg);width:38px;height:38px;color:var(--avatar-text);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:14px;display:flex}.avatar-lg{background:var(--avatar-bg-strong);width:64px;height:64px;color:var(--avatar-text);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:22px;display:flex}.avatar,.p-avatar,.avatar-lg{position:relative;overflow:hidden}.avatar img,.p-avatar img,.avatar-lg img{object-fit:cover;border-radius:inherit;width:100%;height:100%;position:absolute;inset:0}.badge{white-space:nowrap;border-radius:999px;align-items:center;padding:1px 9px;font-size:11px;font-weight:600;display:inline-flex}.badge.role{background:var(--gold-soft);color:var(--gold)}.badge.expire{background:var(--ink-soft);color:var(--text-sub)}.badge.demo-role.owner{background:var(--accent-tint);color:var(--accent-ink)}.badge.demo-role.admin{background:var(--accent-soft);color:var(--accent-strong)}.badge.demo-role.member{background:var(--ink-soft);color:var(--text-sub)}.btn{border:1px solid var(--line-strong);background:var(--card);min-height:40px;color:var(--text);white-space:nowrap;transition:background .18s var(--ease), border-color .18s var(--ease), color .18s var(--ease), box-shadow .18s var(--ease), transform .18s var(--ease);border-radius:10px;justify-content:center;align-items:center;gap:7px;padding:0 18px;font-size:14px;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.btn:hover{border-color:var(--text-faint);transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn.primary{background:linear-gradient(180deg, var(--accent), var(--accent-fill-strong));border-color:var(--accent-fill-strong);color:var(--on-accent);box-shadow:0 12px 22px -14px #67b2eee6}.btn.primary:hover{filter:brightness(1.05);box-shadow:0 16px 28px -14px #67b2eebf}.btn.ghost{border-color:var(--line-strong);color:var(--text-sub);background:0 0}.btn.ghost:hover{border-color:var(--accent);color:var(--accent-strong);background:var(--accent-soft)}.btn.external{border-color:var(--accent);color:var(--accent-strong);background:var(--card)}.btn.external:hover{background:var(--accent-soft)}.btn.lg{border-radius:12px;min-height:46px;padding:0 24px;font-size:15px}.btn.block{width:100%}.btn:disabled{opacity:.5;cursor:not-allowed;box-shadow:none;transform:none}.danger-text{color:var(--red)!important}.field{margin-bottom:16px}.field .lbl{margin-bottom:6px}.input{border:1px solid var(--line);background:var(--bg-subtle);width:100%;min-height:42px;color:var(--text);transition:border-color .18s var(--ease), background .18s var(--ease), box-shadow .18s var(--ease);border-radius:10px;outline:none;padding:9px 13px;font-size:14px}.input::placeholder{color:var(--text-faint)}.input:hover{border-color:var(--line-strong)}.input:focus{border-color:var(--accent);background:var(--card);box-shadow:0 0 0 3px var(--accent-soft)}textarea.input{resize:vertical;min-height:78px;line-height:1.65}.ph{background:var(--bg-subtle);border:1px dashed var(--line-strong);color:var(--text-faint);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:4px;font-size:12px;display:flex}.switch-row{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-height:46px;padding:8px 0;font-size:13px;display:flex}.switch-row:last-child{border-bottom:none}.switch{background:var(--accent);width:46px;height:27px;transition:background .18s var(--ease);border:none;border-radius:999px;flex:none;padding:0;position:relative}.switch:after{content:"";background:var(--switch-knob);width:21px;height:21px;transition:left .2s var(--ease), right .2s var(--ease);border-radius:50%;position:absolute;top:3px;right:3px;box-shadow:0 1px 3px #0000002e}.switch.off{background:var(--line-strong)}.switch.off:after{left:3px;right:auto}.table-wrap{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{text-align:left;border-bottom:1px solid var(--line);white-space:nowrap;padding:11px 12px}tbody tr{transition:background .15s var(--ease)}tbody tr:hover{background:var(--table-head)}th{color:var(--text-sub);background:var(--bg-subtle);font-size:12px;font-weight:600}th:first-child{border-radius:8px 0 0 8px}th:last-child{border-radius:0 8px 8px 0}.status{background:var(--ink-soft);color:var(--text-sub);border-radius:999px;align-items:center;padding:2px 9px;font-size:11px;font-weight:600;display:inline-flex}.status.live{background:var(--green-soft);color:var(--green)}.status.pending{background:var(--gold-soft);color:var(--gold)}.table-actions{color:var(--accent-strong);font-size:12px;font-weight:600}.nav-icon-btn{width:40px;height:40px;color:var(--text-sub);transition:background .18s var(--ease), color .18s var(--ease);background:0 0;border:none;border-radius:50%;place-items:center;display:grid}.nav-icon-btn:hover{background:var(--ink-soft);color:var(--text)}.page-loading{min-height:46vh;color:var(--text-sub);justify-content:center;align-items:center;gap:10px;padding:40px 20px;font-size:14px;display:flex}.spinner{border:2px solid var(--line-strong);border-top-color:var(--accent);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite ai-circle-spin}@keyframes ai-circle-spin{to{transform:rotate(360deg)}}.state-empty,.state-error{border:1px dashed var(--line-strong);border-radius:var(--radius-lg);background:var(--card);text-align:center;color:var(--text-sub);flex-direction:column;align-items:center;gap:8px;padding:44px 24px;display:flex}.state-empty-icon{background:var(--ink-soft);width:44px;height:44px;color:var(--text-faint);border-radius:50%;place-items:center;display:grid}.state-empty b,.state-error b{color:var(--text);font-size:15px}.state-empty p,.state-error p{max-width:420px;color:var(--text-faint);font-size:13px}.state-error{border-style:solid;border-color:var(--red-soft);background:var(--red-soft)}.notice-empty{text-align:center;color:var(--text-faint);padding:30px 16px;font-size:13px}.table-action{color:var(--accent-strong);cursor:pointer;background:0 0;border:0;margin-right:10px;padding:0;font-size:12px;font-weight:600}.table-action:hover{color:var(--accent);text-decoration:underline}.table-action.danger{color:var(--red)}.table-action:disabled{color:var(--text-faint);cursor:not-allowed;text-decoration:none}.status.rejected{background:var(--red-soft);color:var(--red)}.login-demo-title{color:var(--text-faint);align-items:center;gap:10px;padding:16px 26px 0;font-size:12px;display:flex}.login-demo-title:before,.login-demo-title:after{content:"";background:var(--line);flex:1;height:1px}.login-head .ant-btn{margin-top:16px}.filter-bar{scroll-margin-top:calc(var(--header-h) + 16px);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:14px 24px;margin-bottom:18px;display:flex}.filter-bar-main{flex-wrap:wrap;align-items:center;gap:10px 18px;display:flex}.filter-bar-main .filter-row{margin-bottom:0}.filter-bar-side{flex-wrap:wrap;align-items:center;gap:10px;margin-left:auto;display:flex}.scope-tabs{border:1px solid var(--line);background:var(--bg-subtle);border-radius:10px;gap:4px;padding:4px;display:inline-flex}.scope-tab{min-height:34px;color:var(--text-sub);transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:0;border-radius:7px;align-items:center;gap:6px;padding:0 14px;font-size:13px;font-weight:500;display:inline-flex}.scope-tab span{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:11px}.scope-tab:hover{color:var(--accent-strong)}.scope-tab[aria-pressed=true]{background:var(--card);color:var(--text);box-shadow:var(--shadow-sm);font-weight:600}.scope-tab[aria-pressed=true] span{color:var(--accent-strong)}@media (width<=640px){.filter-bar,.filter-bar-main{flex-direction:column;align-items:stretch}.filter-bar-main .filter-row{width:100%}.filter-bar-main .pill-note{align-self:flex-start}.filter-bar-side{justify-content:space-between;margin-left:0}.scope-tabs{width:100%;display:flex}.scope-tab{flex:1;justify-content:center;padding:0 8px}}@media (prefers-reduced-motion:reduce){.spinner{animation-duration:1.6s}}html.theme-transition,html.theme-transition *{transition:background-color .2s var(--ease), border-color .2s var(--ease), color .2s var(--ease)}.home-layout{align-items:flex-start;gap:20px;display:flex}.home-main{flex:1;min-width:0}.home-panel{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm);padding:16px 18px 4px}.home-panel .post{border:0;border-bottom:1px solid var(--line);box-shadow:none;background:0 0;border-radius:0;margin:0;padding:18px 2px}.home-panel .post:last-child{border-bottom:0}.home-panel .empty-board{box-shadow:none;background:0 0;border:0;padding:18px 2px}.feed-skeleton{flex-direction:column;display:flex;overflow:hidden}.post-skeleton{border-bottom:1px solid var(--line);flex-direction:column;gap:12px;min-height:168px;padding:20px 2px;display:flex}.post-skeleton:last-child{border-bottom:0}.post-skeleton.is-compact{min-height:132px}.sk-head{align-items:center;gap:10px;display:flex}.sk-avatar{border-radius:50%;flex:none;width:32px;height:32px}.sk-line{border-radius:6px;width:100%;height:12px;display:block}.sk-name{width:96px}.sk-role{width:48px;height:10px}.sk-title{width:62%;height:18px}.sk-w-80{width:80%}.sk-actions{gap:26px;margin-top:4px;display:flex}.sk-pill{border-radius:999px;width:62px;height:14px}.sk-avatar,.sk-line,.sk-pill{background:linear-gradient(90deg, var(--bg-subtle) 20%, var(--line-strong) 40%, var(--bg-subtle) 60%);background-size:300% 100%;animation:1.4s ease-in-out infinite sk-shimmer}@keyframes sk-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.home-side{top:calc(var(--header-h) + 18px);flex:0 0 312px;position:sticky}.circle-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.circle-cover{background-position:50%;background-size:cover;height:104px;position:relative}.circle-cover:after{content:"";background:linear-gradient(120deg,#67b2ee2e,#ffffff0d 55%);position:absolute;inset:0}.circle-card-body{padding:0 20px 20px}.circle-card .avatar-lg{border:4px solid var(--ring-on-media);width:68px;height:68px;box-shadow:var(--shadow-md);margin-top:-34px;font-size:21px}.circle-name{letter-spacing:-.02em;margin-top:10px;font-size:18px;font-weight:800}.circle-divider{border-top:1px solid var(--line);margin:16px 0 4px}.circle-card .intro{color:var(--text-sub);font-size:12.5px;line-height:1.75}.circle-card .circle-intro{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.circle-cta{flex-direction:column;gap:8px;margin-top:16px;display:flex}.stats{color:var(--text-sub);gap:26px;margin-top:12px;font-size:13px;display:flex}.stats b{color:var(--text);font-variant-numeric:tabular-nums;margin-right:4px;font-size:18px;font-weight:800}.intro{color:var(--text-sub);white-space:pre-line;margin-top:8px;font-size:13px}.plates{flex-wrap:wrap;gap:6px 22px;margin-bottom:0;display:flex}.plate{min-height:46px;color:var(--text-sub);transition:color .16s var(--ease);background:0 0;border:0;border-radius:0;padding:0;font-family:inherit;font-size:14.5px;font-weight:500;position:relative}.plate:hover{color:var(--text)}.plate.active{color:var(--accent-strong);box-shadow:none;font-weight:700}.plate.custom{border-style:none}.home-subbar{border-bottom:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 0 14px;display:flex}.post-feed{padding-top:16px}.sub-filters{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.sub-filter{min-height:30px;color:var(--text-sub);cursor:pointer;transition:color .15s var(--ease);background:0 0;border:0;padding:0;font-family:inherit;font-size:13.5px}.sub-filter:hover{color:var(--text)}.sub-filter.active{color:var(--accent-strong);font-weight:700}.home-subbar-tools{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.compact-toggle{border:1px solid var(--line);background:var(--card);height:36px;color:var(--text-sub);white-space:nowrap;cursor:pointer;transition:background .15s var(--ease), border-color .15s var(--ease), color .15s var(--ease);border-radius:8px;flex:none;align-items:center;gap:6px;padding:0 12px;font-family:inherit;font-size:12.5px;display:inline-flex}.compact-toggle:hover{border-color:var(--accent);color:var(--accent-strong)}.compact-toggle.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong);font-weight:600}.home-subbar-tools .date-range-picker.ant-picker{border-color:var(--line);background:var(--card);border-radius:8px;width:236px;height:36px;padding:0 11px;font-size:12.5px}.home-subbar-tools .date-range-picker.ant-picker:hover{border-color:var(--accent)}.home-subbar-tools .date-range-picker.ant-picker-focused{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.date-range-mobile{flex:100%;align-items:center;gap:6px;display:none}.date-range-mobile .date-range-single.ant-picker{border-radius:8px;flex:1;min-width:0;height:36px;font-size:12.5px}.date-range-sep{color:var(--text-faint);font-size:12px}.plate .cnt{color:var(--text-faint);font-variant-numeric:tabular-nums;margin-left:5px;font-size:11px}.plate.active .cnt{color:var(--accent-strong);opacity:.72}.post{background:var(--card);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);margin-bottom:14px;padding:18px 20px}.post.compact-post.has-thumb{grid-template-columns:minmax(0,1fr) 120px;grid-template-areas:"head thumb""title thumb""body thumb""attach thumb""actions thumb";align-content:start;column-gap:16px;display:grid}.compact-post .p-head{grid-area:head;gap:8px;margin-bottom:8px}.compact-post .p-head .avatar{width:24px;height:24px;font-size:10px}.compact-post .p-name{font-size:12.5px}.compact-post .p-role{border-radius:6px;padding:1px 6px;font-size:10px}.compact-post .p-time{font-size:11px}.compact-post .tag{padding:1px 7px;font-size:10px}.compact-post .p-title-row{grid-area:title;gap:6px}.compact-post .p-title-row .tags{gap:4px}.compact-post .p-title{font-size:15px}.compact-post .p-body{-webkit-line-clamp:2;-webkit-box-orient:vertical;grid-area:body;margin-bottom:8px;font-size:13px;line-height:1.6;display:-webkit-box;overflow:hidden}.compact-post .p-attach{grid-area:attach;margin-bottom:8px;padding:6px 10px;font-size:11.5px}.compact-post .p-actions{border-top:0;grid-area:actions;margin-top:6px;padding-top:0}.compact-post .p-act{min-height:28px;padding:0 8px;font-size:12px}.compact-thumb{border:1px solid var(--line);background:var(--editor-bg);border-radius:10px;grid-area:thumb;align-self:center;width:120px;height:90px;display:block;position:relative;overflow:hidden}.compact-thumb img,.compact-thumb video{object-fit:cover;width:100%;height:100%;display:block}.compact-thumb-play{color:var(--on-accent);background:#10182659;place-items:center;display:grid;position:absolute;inset:0}.compact-thumb-count{color:var(--on-accent);background:#101826a6;border-radius:6px;padding:0 6px;font-size:10px;line-height:16px;position:absolute;bottom:6px;right:6px}.p-head{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:12px;display:flex}.p-name{font-size:14px;font-weight:600}.p-role{border:1px solid var(--accent-line);background:var(--accent-soft);color:var(--accent-strong);border-radius:6px;align-items:center;gap:3px;padding:1px 7px;font-size:11px;font-weight:600;display:inline-flex}.p-role.owner{background:var(--gold-soft);color:var(--gold);border-color:#7a5a0047}.p-time{color:var(--text-faint);margin-left:auto;font-size:12px}.p-title{letter-spacing:-.01em;margin-bottom:8px;font-size:17px;font-weight:700;line-height:1.45}.p-title a{color:inherit;transition:color .15s var(--ease);text-decoration:none}.p-title a:hover{color:var(--accent-strong)}.p-title-row{flex-wrap:nowrap;align-items:center;gap:8px;margin-bottom:8px;display:flex}.p-title-row .tags{flex:none;gap:6px;margin:0}.p-title-row .p-title{flex:auto;min-width:0;margin:0}.p-body{color:var(--text);white-space:pre-line;margin-bottom:12px;font-size:14.5px;line-height:1.75}.markdown-body{white-space:normal;word-break:break-word}.markdown-body>:first-child{margin-top:0}.markdown-body>:last-child{margin-bottom:0}.markdown-body p{margin:0 0 10px}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{color:var(--text);margin:20px 0 8px;font-weight:700;line-height:1.35}.markdown-body h1{font-size:22px}.markdown-body h2{font-size:18px}.markdown-body h3{font-size:16px}.markdown-body h4,.markdown-body h5,.markdown-body h6{font-size:14.5px}.markdown-body ul,.markdown-body ol{margin:0 0 10px;padding-left:22px}.markdown-body ul{list-style:outside}.markdown-body ol{list-style:decimal}.markdown-body ul ul{list-style:circle}.markdown-body ul ul ul{list-style:square}.markdown-body li{margin:4px 0}.markdown-body li.task-list-item{list-style:none}.markdown-body li>ul,.markdown-body li>ol{margin:4px 0 0}.markdown-body blockquote{border-left:3px solid var(--accent);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--bg-subtle);color:var(--text-sub);margin:0 0 10px;padding:8px 14px}.markdown-body code{background:var(--ink-soft);color:var(--accent-strong);border-radius:5px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9em}.markdown-body pre{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--bg-subtle);margin:0 0 10px;padding:12px 14px;overflow-x:auto}.markdown-body pre code{color:var(--text);background:0 0;padding:0;font-size:12.5px;line-height:1.6}.markdown-body a{color:var(--accent-strong);text-underline-offset:2px;text-decoration:underline}.markdown-body a:hover{color:var(--accent)}.markdown-body hr{border:0;border-top:1px solid var(--line);margin:18px 0}.markdown-body img{border-radius:var(--radius-md);max-width:100%}.markdown-body table{border-collapse:collapse;width:100%;margin:0 0 10px;font-size:13.5px}.markdown-body th,.markdown-body td{border:1px solid var(--line);text-align:left;padding:7px 10px}.markdown-body th{background:var(--bg-subtle);font-weight:600}.markdown-body input[type=checkbox]{margin-right:6px}.p-media{flex-wrap:wrap;align-items:flex-start;gap:10px;margin-bottom:12px;display:flex}.media-file{border:1px solid var(--line);background:var(--bg-subtle);max-width:100%;color:var(--text-sub);transition:background .15s var(--ease), border-color .15s var(--ease), color .15s var(--ease);border-radius:10px;align-items:center;gap:8px;padding:9px 12px;font-size:12.5px;text-decoration:none;display:inline-flex}.media-file:hover{border-color:var(--line-strong);background:var(--card);color:var(--text)}.media-file-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.media-thumb{border:1px solid var(--line);background:linear-gradient(135deg, var(--placeholder-a), var(--placeholder-b));cursor:zoom-in;width:fit-content;min-width:96px;max-width:min(420px,100%);height:clamp(180px,32vw,280px);transition:border-color .15s var(--ease), box-shadow .15s var(--ease);border-radius:10px;justify-content:center;align-items:center;padding:0;display:flex;position:relative;overflow:hidden}.media-thumb:hover{border-color:var(--accent);box-shadow:var(--shadow-md)}.media-thumb img{z-index:1;object-fit:cover;width:auto;max-width:100%;height:100%;display:block;position:relative}.media-thumb-label{color:var(--text-faint);align-items:center;gap:6px;font-size:12px;display:flex;position:absolute}.detail-media .media-thumb{max-width:min(560px,100%);height:clamp(220px,40vw,360px)}.p-media.p-media-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:10px;display:grid}.p-media.p-media-grid .media-thumb,.detail-media.p-media-grid .media-thumb{aspect-ratio:4/3;width:100%;min-width:0;max-width:none;height:auto}.p-media.p-media-grid .media-thumb img{width:100%;height:100%}.p-attach{background:var(--bg-subtle);border:1px solid var(--line);color:var(--text-sub);border-radius:10px;align-items:center;gap:8px;margin-bottom:12px;padding:9px 13px;font-size:13px;display:inline-flex}.tags{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.tag{border-radius:6px;padding:2px 9px;font-size:11px;font-weight:600}.tag.top{background:var(--red-soft);color:var(--red)}.tag.good{background:var(--gold-soft);color:var(--gold)}.tag.anon,.tag.vote,.tag.long{background:var(--ink-soft);color:var(--text-sub)}.tag.paid{background:var(--red-soft);color:var(--red)}.tag.product{background:var(--green-soft);color:var(--green)}.tag.topic{background:var(--accent-soft);color:var(--accent-strong)}.p-actions{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:4px;margin-top:10px;padding-top:10px;display:flex}.p-act{min-height:34px;color:var(--text-sub);transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:none;border-radius:9px;align-items:center;gap:6px;padding:0 10px;font-size:13px;text-decoration:none;display:inline-flex}.p-act:hover{background:var(--ink-soft);color:var(--text)}.p-act[aria-pressed=true]{background:var(--accent-soft);color:var(--accent-strong)}.p-act svg{flex:none}.pager{justify-content:center;align-items:center;gap:6px;margin:20px 0 4px;display:flex}.pager .pg{border:1px solid var(--line);min-width:36px;height:36px;color:var(--text-sub);background:var(--card);font-variant-numeric:tabular-nums;border-radius:10px;justify-content:center;align-items:center;padding:0 10px;font-size:13px;display:flex}.pager .pg.on{background:var(--accent);color:var(--on-accent);border-color:var(--accent);font-weight:600}.lightbox{z-index:200;cursor:zoom-out;background:#120f0de6;justify-content:center;align-items:center;padding:48px;display:flex;position:fixed;inset:0}.lightbox-img{background:var(--card);cursor:default;border-radius:12px;width:auto;max-width:90vw;height:auto;max-height:85vh;box-shadow:0 30px 80px #00000080}.lightbox-close{min-height:40px;color:var(--on-accent);transition:background .15s var(--ease);background:#ffffff1f;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:6px;padding:0 16px;font-size:13px;display:inline-flex;position:absolute;top:20px;right:24px}.lightbox-close:hover{background:#ffffff38}.lightbox-caption{text-align:center;color:var(--text-faint);font-size:12px;position:absolute;bottom:22px;left:0;right:0}.detail-page{max-width:880px;margin:0 auto}.detail .p-title{margin-bottom:12px;font-size:23px;line-height:1.4}.back-link{min-height:40px;color:var(--text-sub);transition:color .15s var(--ease), background .15s var(--ease);background:0 0;border:none;border-radius:9px;align-items:center;gap:6px;margin:0 0 12px -10px;padding:0 10px;font-size:13px;font-weight:500;text-decoration:none;display:inline-flex}.back-link:hover{color:var(--accent-strong);background:var(--accent-soft)}.comment{margin-top:4px}.comment .c{border-bottom:1px solid var(--line);gap:12px;padding:12px 0;display:flex}.comment .c:last-child{border-bottom:none}.comment .c .c-body{flex:1;min-width:0;font-size:14px}.reply{background:var(--bg-subtle);color:var(--text-sub);border-left:3px solid var(--accent-soft);border-radius:9px;margin-top:8px;padding:8px 11px;font-size:13px}.reply .u{color:var(--accent-strong);font-weight:600}.empty-state{border:1px dashed var(--line-strong);color:var(--text-sub);text-align:center;border-radius:10px;padding:22px 12px;font-size:13px}.input-box{border-top:1px solid var(--line);align-items:center;gap:10px;margin-top:16px;padding-top:16px;display:flex}.input-box input{border:1px solid var(--line);background:var(--bg-subtle);min-width:0;height:42px;color:var(--text);transition:border-color .18s var(--ease), background .18s var(--ease), box-shadow .18s var(--ease);border-radius:10px;outline:none;flex:1;padding:0 14px;font-size:14px}.input-box input::placeholder{color:var(--text-faint)}.input-box input:focus{border-color:var(--accent);background:var(--card);box-shadow:0 0 0 3px var(--accent-soft)}.filter-row{flex-wrap:wrap;gap:8px;margin-bottom:18px;display:flex}.filter-chip{border:1px solid var(--line);background:var(--card);min-height:36px;color:var(--text-sub);transition:background .15s var(--ease), border-color .15s var(--ease), color .15s var(--ease);border-radius:8px;align-items:center;gap:6px;padding:0 14px;font-size:13px;display:inline-flex}.filter-chip span{color:var(--text-faint);font-variant-numeric:tabular-nums;font-size:11px}.filter-chip:hover{border-color:var(--accent);color:var(--accent-strong)}.filter-chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:600}.filter-chip[aria-pressed=true] span{color:#ffffffc7}.course-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px;display:grid}.course{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);min-width:0;color:inherit;text-align:left;box-shadow:var(--shadow-sm);transition:border-color .2s var(--ease), transform .2s var(--ease), box-shadow .2s var(--ease);flex-direction:column;text-decoration:none;display:flex;overflow:hidden}button.course{width:100%;padding:0}.course:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md);transform:translateY(-3px)}.course .cover{background:var(--grad-course-blue);height:138px;color:var(--course-card-ink);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.course .cover:after{content:"";background:radial-gradient(240px 130px at 82% 16%,#ffffffd9,#0000 70%);position:absolute;inset:0}.course .cover-img{object-fit:cover;opacity:.92;width:100%;height:100%;position:absolute;inset:0}.course .cover-img+.cover-icon{box-shadow:0 8px 22px -10px #0a1428bf}.course .cover:has(.cover-img):after{opacity:.28}.course .cover:before{content:"";z-index:0;background:linear-gradient(#0a16280d,#0a162847);position:absolute;inset:0}.course .c-meta{color:var(--text-faint);font-variant-numeric:tabular-nums;margin-top:10px;font-size:11.5px}.course .cover.state-soon{background:var(--grad-course-purple)}.course .cover.state-done{background:var(--grad-course-gray)}.cover-icon{z-index:1;background:var(--card-glass);width:50px;height:50px;color:var(--accent);border:1px solid var(--accent-line);border-radius:50%;place-items:center;display:grid;position:relative;box-shadow:0 8px 18px -10px #1e3c8299}.course-locked .cover-icon{color:var(--text-sub);border-color:#505f732e}.course .c-body{flex-direction:column;flex:1;padding:16px 18px 18px;display:flex}.course .c-title{margin-bottom:6px;font-size:15.5px;font-weight:700;line-height:1.45}.course .c-desc{color:var(--text-sub);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:14px;font-size:13px;line-height:1.65;display:-webkit-box;overflow:hidden}.course .c-foot{justify-content:space-between;align-items:center;gap:10px;margin-top:auto;display:flex}.course .c-price{color:var(--accent-strong);font-variant-numeric:tabular-nums;font-size:15px;font-weight:700}.course .c-state{border-radius:999px;padding:2px 9px;font-size:11px;font-weight:600}.c-state.live{background:var(--green-soft);color:var(--green)}.c-state.soon{background:var(--gold-soft);color:var(--gold)}.c-state.done{background:var(--ink-soft);color:var(--text-sub)}.ext-link{border-top:1px dashed var(--line);color:var(--accent-strong);justify-content:space-between;align-items:center;gap:6px;margin-top:14px;padding-top:12px;font-size:12px;font-weight:600;display:flex}.course-locked .ext-link{color:var(--text-sub)}.course-detail-page{max-width:980px;margin:0 auto}.course-detail-hero{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);box-shadow:var(--shadow-sm);grid-template-columns:minmax(240px,360px) 1fr;gap:24px;padding:20px;display:grid}.course-detail-cover{aspect-ratio:16/10;border-radius:var(--radius-md);background:var(--grad-course-blue);color:var(--course-card-ink);place-items:center;display:grid;position:relative;overflow:hidden}.course-detail-cover.state-soon{background:var(--grad-course-purple)}.course-detail-cover.state-done{background:var(--grad-course-gray)}.course-detail-cover img{object-fit:cover;width:100%;height:100%}.course-detail-cover-icon{z-index:1;position:relative}.course-detail-info{min-width:0}.course-detail-badges{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.course-own{background:var(--ink-soft);color:var(--text-sub);border-radius:999px;padding:2px 9px;font-size:11px;font-weight:600}.course-own.owned{background:var(--green-soft);color:var(--green)}.course-detail-info h1{margin:10px 0;font-size:25px;line-height:1.35}.course-detail-desc{color:var(--text-sub);white-space:pre-wrap;margin:0 0 16px;font-size:14px;line-height:1.75}.course-detail-meta{color:var(--text-faint);flex-wrap:wrap;align-items:baseline;gap:16px;font-size:12.5px;display:flex}.course-detail-price{color:var(--accent-strong);font-variant-numeric:tabular-nums;font-size:24px;font-weight:800}.course-detail-actions{flex-direction:column;align-items:flex-start;gap:8px;margin-top:18px;display:flex}.course-detail-hint{color:var(--text-sub);margin:0;font-size:12.5px}.course-chapters{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);margin-top:20px;overflow:hidden}.course-chapters-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:16px 18px;display:flex}.course-chapters-head h2{margin:0;font-size:16px}.course-chapters-head span{color:var(--text-faint);font-size:12px}.course-chapter-list{margin:0;padding:0;list-style:none}.course-chapter-row{border:0;border-bottom:1px solid var(--line-soft);width:100%;min-height:52px;color:var(--text);text-align:left;cursor:pointer;transition:background .15s var(--ease);background:0 0;align-items:center;gap:10px;padding:10px 14px;display:flex}.course-chapter-row:last-child{border-bottom:0}.course-chapter-row:hover{background:var(--accent-softer)}.course-chapter-row.locked{color:var(--text-faint);cursor:default}.course-chapter-row.locked:hover{background:var(--bg-subtle)}.course-chapter-index{width:24px;color:var(--text-faint);font-variant-numeric:tabular-nums;flex:none;place-items:center;font-size:12px;display:grid}.course-chapter-title{flex:1;min-width:0;font-size:14px}.course-chapter-try{background:var(--green-soft);color:var(--green);border-radius:999px;flex:none;padding:2px 8px;font-size:10.5px;font-weight:700}.course-chapter-kind{color:var(--text-faint);flex:none;font-size:11.5px}.course-chapter-empty{color:var(--text-sub);align-items:center;gap:8px;padding:22px 18px;font-size:13px;display:flex}.xiaoe-status{border:1px solid var(--line);background:var(--bg-subtle);color:var(--text-sub);border-radius:10px;flex-wrap:wrap;gap:10px 18px;margin:12px 0;padding:12px 14px;font-size:12.5px;display:flex}.xiaoe-status b{color:var(--text);margin-right:6px;font-weight:600}.xiaoe-status.ok{border-color:var(--green-soft);background:var(--green-soft);color:var(--green)}.xiaoe-status.warn{border-color:var(--gold-soft);background:var(--gold-soft);color:var(--gold)}.xiaoe-status-error{width:100%;color:var(--red)}.course-admin-list{border:1px solid var(--line);border-radius:10px;flex-direction:column;margin-top:14px;display:flex;overflow:hidden}.course-admin-row{border-bottom:1px solid var(--line-soft);align-items:center;gap:12px;padding:10px 14px;display:flex}.course-admin-row:last-child{border-bottom:0}.course-admin-cover{background:var(--grad-course-blue);width:64px;height:38px;color:var(--course-card-ink);border-radius:6px;flex:none;place-items:center;display:grid;overflow:hidden}.course-admin-cover img{object-fit:cover;width:100%;height:100%}.course-admin-body{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.course-admin-body b{white-space:nowrap;text-overflow:ellipsis;font-size:13.5px;overflow:hidden}.course-admin-body span{color:var(--text-faint);font-size:11.5px}.course-admin-price{color:var(--accent-strong);font-size:13px;font-weight:700}@media (width<=720px){.course-detail-hero{grid-template-columns:1fr}.course-detail-cover{aspect-ratio:16/9}.course-detail-info h1{font-size:21px}.course-admin-price{display:none}}.profile-hero{margin-bottom:18px;padding:26px 28px 0;overflow:hidden}.profile-hero-top{align-items:flex-start;gap:20px;display:flex}.profile-avatar{border:3px solid var(--card);width:76px;height:76px;box-shadow:var(--shadow-md);font-size:26px}.profile-head-main{flex:1;min-width:0}.profile-head-main h1{letter-spacing:-.02em;flex-wrap:wrap;align-items:center;gap:8px;font-size:24px;font-weight:800;display:flex}.profile-meta{color:var(--text-sub);flex-wrap:wrap;gap:8px 18px;margin-top:10px;font-size:13px;display:flex}.profile-meta span{align-items:center;gap:5px;display:inline-flex}.profile-phone-bind{color:var(--accent-strong);font-family:inherit;font-size:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.profile-phone-bind:hover{text-decoration:underline}.profile-account{border-top:1px dashed var(--line);margin-top:20px;padding-top:16px}.profile-account-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}.profile-account-head .h2{margin:0;font-size:16px}.profile-account-grid{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px;display:grid}.profile-account-item{border:1px solid var(--line);background:var(--bg-subtle);border-radius:10px;flex-direction:column;gap:4px;padding:10px 12px;display:flex}.profile-account-item>span{color:var(--text-faint);font-size:11.5px}.profile-account-item>b{color:var(--text);word-break:break-all;font-size:13px;font-weight:600}.profile-account-item .profile-phone-bind{align-self:flex-start;margin-top:2px;font-size:11.5px}.profile-fees{border-top:1px dashed var(--line);color:var(--text-faint);flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:12px;padding-top:12px;font-size:12px;display:flex}.profile-fee-action{color:var(--accent-strong);cursor:pointer;background:0 0;border:0;padding:0;font-size:12px;font-weight:600}.profile-fee-action:hover{text-decoration:underline}.profile-fee-action:disabled{cursor:not-allowed;opacity:.55}.profile-fee-action.danger-text{color:var(--red)}.profile-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:360px;display:flex}.profile-actions .btn{padding:7px 12px;font-size:12px}.profile-stats{border-top:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));margin:22px -28px 0;display:grid}.profile-stat{border-right:1px solid var(--line);color:var(--text-sub);cursor:default;flex-direction:column;align-items:center;gap:2px;padding:14px 8px;display:flex}.profile-stat:last-child{border-right:0}.profile-stat b{color:var(--text);font-variant-numeric:tabular-nums;font-size:20px;font-weight:800}.profile-stat span{font-size:12px}.profile-content{padding:0;overflow:hidden}.profile-tabs{border-bottom:1px solid var(--line);gap:4px;padding:8px 10px 0;display:flex;overflow-x:auto}.profile-tab{color:var(--text-sub);white-space:nowrap;transition:color .18s var(--ease), background .18s var(--ease), border-color .18s var(--ease);background:0 0;border:0;border-bottom:2px solid #0000;align-items:center;gap:7px;padding:12px 16px;font-size:14px;font-weight:600;display:inline-flex}.profile-tab:hover{background:var(--accent-softer);color:var(--text)}.profile-tab.active{border-bottom-color:var(--accent);color:var(--accent-strong)}.profile-tab-count{background:var(--ink-soft);min-width:20px;color:var(--text-sub);text-align:center;border-radius:999px;padding:1px 6px;font-size:11px;font-weight:600}.profile-tab-label-short{display:none}.profile-tab.active .profile-tab-count{background:var(--accent-soft);color:var(--accent-strong)}.profile-tab-panel{padding:8px 20px 20px}.profile-list{flex-direction:column;display:flex}.profile-row{border-bottom:1px solid var(--line-soft);color:inherit;transition:background .18s var(--ease);align-items:flex-start;gap:14px;padding:16px 6px;text-decoration:none;display:flex}.profile-row:last-child{border-bottom:0}.profile-row:hover{background:var(--accent-softer)}.profile-row-main{flex:1;min-width:0}.profile-row-title{color:var(--text);transition:color .18s var(--ease);font-size:15px;font-weight:700;line-height:1.45}.profile-row:hover .profile-row-title{color:var(--accent-strong)}.profile-row-excerpt{color:var(--text-sub);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:5px 0 0;font-size:13px;line-height:1.65;display:-webkit-box;overflow:hidden}.profile-row-meta{color:var(--text-faint);flex-wrap:wrap;align-items:center;gap:6px 14px;margin-top:8px;font-size:12px;display:flex}.profile-row-meta>span{align-items:center;gap:4px;display:inline-flex}.profile-row-arrow{color:var(--text-faint);transition:color .18s var(--ease), transform .18s var(--ease);margin-top:4px}.profile-row:hover .profile-row-arrow{color:var(--accent);transform:translate(2px)}.profile-plate{background:var(--accent-soft);color:var(--accent-strong);border-radius:999px;padding:2px 8px;font-weight:600}.profile-status{background:var(--gold-soft);color:var(--gold);border-radius:999px;padding:2px 8px;font-weight:600}.profile-status.approved{background:var(--green-soft);color:var(--green)}.profile-status.rejected{background:var(--red-soft);color:var(--red)}.profile-comment-mark{background:var(--accent-soft);width:32px;height:32px;color:var(--accent-strong);border-radius:10px;flex:none;place-items:center;margin-top:2px;display:grid}.profile-comment-content{color:var(--text);margin:0;font-size:14px;line-height:1.7}.profile-comment-post{color:var(--accent-strong);font-weight:500}.profile-meetup-row{align-items:center}.profile-meetup-date{background:var(--accent-soft);width:58px;height:58px;color:var(--accent-strong);border-radius:14px;flex-direction:column;flex:none;justify-content:center;align-items:center;display:flex}.profile-meetup-date b{font-size:20px;font-weight:800;line-height:1}.profile-meetup-date span{margin-top:3px;font-size:11px}.profile-meetup-date.full{background:var(--gold-soft);color:var(--gold)}.profile-meetup-date.finished{background:var(--ink-soft);color:var(--text-faint)}.profile-badge{border-radius:999px;padding:2px 8px;font-size:11px;font-weight:600}.profile-badge.host{background:var(--gold-soft);color:var(--gold)}.profile-badge.joined{background:var(--green-soft);color:var(--green)}.profile-course-grid{padding-top:10px}.profile-empty{flex-direction:column;align-items:center;gap:14px;padding:44px 20px 36px;display:flex}.profile-loading{min-height:240px;color:var(--text-sub);justify-content:center;align-items:center;font-size:13px;display:flex}.profile-tab-panel .state-error{margin:20px 0}@media (width<=860px){.profile-hero{padding:20px 18px 0}.profile-hero-top{flex-wrap:wrap}.profile-head-main{flex-basis:calc(100% - 96px)}.profile-actions{justify-content:flex-start;width:100%;max-width:none}.profile-stats{margin:18px -18px 0}.profile-tabs{padding:6px 4px 0}.profile-tab-panel{padding:6px 12px 16px}}@media (width<=560px){.profile-avatar{width:64px;height:64px;font-size:22px}.profile-head-main{flex-basis:calc(100% - 84px)}.profile-head-main h1{font-size:20px}.profile-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.profile-stat:nth-child(2){border-right:0}.profile-stat:nth-child(-n+2){border-bottom:1px solid var(--line)}.profile-tab{gap:3px;padding:10px 4px;font-size:12px}.profile-tab svg{width:14px;height:14px}.profile-tab-label-full{display:none}.profile-tab-label-short{display:inline}.profile-tab-count{min-width:18px;padding:0 5px}.profile-meetup-date{width:48px;height:48px}}.admin-layout{align-items:flex-start;gap:18px;display:flex}.admin-side{top:calc(var(--header-h) + 18px);flex:0 0 200px;position:sticky}.admin-side .item{text-align:left;background:var(--card);border:1px solid var(--line);width:100%;min-height:42px;color:var(--text-sub);transition:background .15s var(--ease), border-color .15s var(--ease), color .15s var(--ease);border-radius:10px;align-items:center;gap:9px;margin-bottom:8px;padding:0 14px;font-size:13px;display:flex}.admin-side .item:hover{border-color:var(--line-strong);color:var(--text)}.admin-side .item.active{background:var(--accent);color:var(--on-accent);border-color:var(--accent);font-weight:600;box-shadow:0 10px 20px -14px #67b2eee6}.admin-main{flex:1;min-width:0}.admin-identity{border:1px solid var(--line);background:var(--grad-surface);border-radius:12px;flex-direction:column;align-items:flex-start;gap:5px;margin-bottom:12px;padding:13px 15px;display:flex}.admin-scope{color:var(--text-sub);font-size:11px}.access-denied{text-align:center;padding:60px 24px}.ad-code{color:var(--line-strong);letter-spacing:2px;font-size:52px;font-weight:800;line-height:1}.access-denied h1{margin:10px 0;font-size:22px;font-weight:800}.access-denied p{max-width:520px;color:var(--text-sub);margin:0 auto;font-size:13px}.ad-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:20px;display:flex}.lp{--lp-violet:#6b4fd8;--lp-violet-soft:#f1edff;--lp-violet-line:#6b4fd838;--lp-panel:linear-gradient(180deg, #fff, #fbfdff);--lp-float-bg:#ffffffeb;--lp-float-line:#1428501a;--lp-float-shadow:0 16px 32px -18px #101c2d59;--lp-card-shadow:0 2px 12px #101c2d14;--lp-hero-glow:#67b2ee33;--lp-hero-top:#fbfdfff5;--lp-hero-bottom:#eef5ffe0;--lp-ghost-line:#67b2ee24;max-width:1240px;margin:0 auto 56px;padding:0 20px}[data-theme=dark] .lp{--lp-violet:#a48bff;--lp-violet-soft:#2a2450;--lp-violet-line:#a48bff4d;--lp-panel:linear-gradient(180deg, #1a2230, #151c25);--lp-float-bg:#1a2230eb;--lp-float-line:#96b4dc2e;--lp-float-shadow:0 18px 36px -18px #000000b3;--lp-card-shadow:0 2px 12px #0006;--lp-hero-glow:#67b2ee38;--lp-hero-top:#17202ff5;--lp-hero-bottom:#111927e6;--lp-ghost-line:#96beff24}.lp-hero{width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);padding:0 0 clamp(44px,5vw,64px)}.lp-hero-shell{background:radial-gradient(760px 430px at 50% -10%, var(--lp-hero-glow), transparent 70%), linear-gradient(180deg, var(--lp-hero-top) 0%, var(--lp-hero-bottom) 62%, var(--bg) 100%);text-align:center;border:0;border-radius:0;padding:clamp(64px,8vw,112px) clamp(20px,5vw,60px) clamp(28px,4vw,48px);position:relative;overflow:hidden}.lp-hero-ghost{z-index:0;color:#0000;letter-spacing:.08em;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;-webkit-text-stroke:1px var(--lp-ghost-line);font-size:clamp(80px,14vw,190px);font-weight:900;line-height:1;position:absolute;top:clamp(10px,2.5vw,26px);left:50%;transform:translate(-50%)}.lp-hero-copy{z-index:2;max-width:760px;margin:0 auto;position:relative}.lp-badge{border:1px solid var(--accent-line);background:var(--accent-soft);color:var(--accent-strong);border-radius:999px;align-items:center;gap:8px;padding:6px 14px;font-size:12px;font-weight:600;display:inline-flex}.lp-badge svg{color:var(--accent);flex:none}.lp-title{letter-spacing:-.04em;background:linear-gradient(90deg, var(--text) 0%, var(--accent) 100%);color:#0000;-webkit-background-clip:text;background-clip:text;margin-top:24px;font-size:clamp(38px,5.6vw,62px);font-weight:800;line-height:1.08}.lp-sub{max-width:620px;color:var(--text-sub);margin:22px auto 0;font-size:17.5px;line-height:1.75}.lp-sub .hl{color:var(--accent-strong);font-weight:700}.lp-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:14px;margin-top:32px;display:flex}.lp-actions .btn.ghost{background:var(--card)}.lp-points{color:var(--text-sub);flex-wrap:wrap;justify-content:center;gap:24px;margin-top:28px;font-size:13px;display:flex}.lp-point{align-items:center;gap:8px;display:inline-flex}.lp-point svg{color:var(--accent-strong);flex:none}.lp-phones{z-index:1;justify-content:center;align-items:flex-start;width:100%;max-width:760px;height:clamp(500px,46vw,660px);margin:clamp(34px,5vw,52px) auto 0;display:flex;position:relative}.lp-phone{aspect-ratio:9/19.3;background:linear-gradient(135deg,#f7f8fa 0%,#c9d0d8 16%,#7d8793 38%,#eef1f4 55%,#9aa4b0 76%,#626c78 100%);border-radius:clamp(36px,3.2vw,50px);flex:none;width:clamp(210px,19vw,280px);padding:5px;position:relative;box-shadow:0 52px 92px -44px #0c182c9e,0 24px 46px -30px #0c182c7a}.lp-phone-left{z-index:2;transform:rotate(-9deg)translateY(22px)}.lp-phone-right{z-index:1;margin-left:-72px;transform:rotate(7deg)translateY(-10px)}.lp-phone-side{z-index:0;background:linear-gradient(#d6dbe1,#7f8994);border-radius:3px;width:3px;position:absolute;box-shadow:0 1px 2px #0c182c59}.lp-phone-side.volume-a{height:6%;top:17%;left:-3px}.lp-phone-side.volume-b{height:9%;top:26%;left:-3px}.lp-phone-side.power{height:11%;top:24%;right:-3px}.lp-phone-screen{background:var(--bg);border:clamp(5px,.5vw,7px) solid #0a0e13;border-radius:clamp(30px,2.7vw,44px);flex-direction:column;height:100%;display:flex;position:relative;overflow:hidden}.lp-phone-screen:after{content:"";z-index:9;pointer-events:none;background:linear-gradient(118deg,#ffffff29,#0000 34% 72%,#ffffff0d);position:absolute;inset:0}.lp-phone-notch{z-index:6;background:#05080c;border-radius:999px;width:30%;height:12px;position:absolute;top:4px;left:50%;transform:translate(-50%);box-shadow:inset 0 0 0 1px #ffffff0d}.lp-phone-status{color:var(--text-sub);justify-content:space-between;align-items:center;padding:8px 12px 4px;font-size:7px;font-weight:600;display:flex}.lp-phone-status-icons{align-items:center;gap:4px;display:flex}.lp-status-signal{align-items:flex-end;gap:1px;height:6px;display:flex}.lp-status-signal i{background:currentColor;border-radius:1px;width:2px;display:block}.lp-status-signal i:first-child{height:3px}.lp-status-signal i:nth-child(2){height:4.5px}.lp-status-signal i:nth-child(3){height:6px}.lp-status-wifi{border:1.2px solid;border-bottom:0;border-radius:8px 8px 0 0;width:8px;height:6px}.lp-status-battery{border:1px solid;border-radius:2px;width:12px;height:6px;position:relative}.lp-status-battery i{background:currentColor;border-radius:1px;width:72%;position:absolute;top:1px;bottom:1px;left:1px}.lp-phone-topbar{color:var(--text-sub);align-items:center;gap:6px;padding:2px 12px 6px;display:flex}.lp-phone-topbar strong{color:var(--text);text-align:center;flex:1;font-size:8.5px}.lp-phone-dots{color:var(--text-faint);letter-spacing:1px;font-size:7px}.lp-phone-home-indicator{z-index:7;background:var(--text);opacity:.3;border-radius:999px;width:34%;height:3px;position:absolute;bottom:5px;left:50%;transform:translate(-50%)}.lp-phone-circle{background:radial-gradient(120px 80px at 50% 0%, #ffffff2e, transparent 70%), linear-gradient(155deg, var(--accent), var(--accent-strong));color:var(--on-accent);text-align:center;flex-direction:column;align-items:center;gap:4px;padding:14px 12px 12px;display:flex}.lp-phone-logo{background:#fffffff0;border-radius:12px;place-items:center;width:36px;height:36px;display:grid;overflow:hidden}.lp-phone-logo.big{border-radius:50%;width:58px;height:58px;box-shadow:0 0 0 4px #ffffff3d,0 8px 18px #0000002e}.lp-phone-logo.small{border-radius:8px;flex:none;width:26px;height:26px}.lp-phone-logo img{object-fit:cover;width:100%;height:100%}.lp-phone-circle strong{align-items:center;gap:4px;font-size:12.5px;font-weight:800;display:flex}.lp-phone-verified{width:12px;height:12px;color:var(--accent-strong);background:#ffffffeb;border-radius:50%;place-items:center;display:grid}.lp-phone-circle-sub{opacity:.78;font-size:6.5px}.lp-phone-stats{opacity:.92;gap:12px;margin-top:4px;font-size:6px;display:flex}.lp-phone-stats b{font-size:9px;font-weight:800}.lp-phone-body{background:var(--bg);flex:1;min-height:0;padding:8px;overflow:hidden}.lp-phone-feed{border-bottom:1px solid var(--line);text-align:left;gap:6px;padding:7px 4px;display:flex}.lp-phone-feed>div{flex:1;min-width:0}.lp-phone-avatar{background:var(--accent-soft);width:18px;height:18px;color:var(--accent-strong);border-radius:50%;flex:none;place-items:center;font-size:6px;font-weight:700;display:grid}.lp-phone-avatar.round{color:#fff;width:26px;height:26px;font-size:7px}.lp-phone-avatar.round.warm{background:linear-gradient(145deg,#ff8a65,#e14b3b);box-shadow:inset 0 0 0 1px #ffffff59}.lp-phone-avatar.round.cool{background:linear-gradient(145deg,#67b2ee,#4a9ad8);box-shadow:inset 0 0 0 1px #ffffff59}.lp-phone-feed-head{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.lp-phone-feed-head b{font-size:7.5px;font-weight:700}.lp-phone-feed-head i{background:var(--gold-soft);color:var(--gold);border-radius:999px;padding:0 4px;font-size:5.5px;font-style:normal;font-weight:600}.lp-phone-feed-head span{color:var(--text-faint);margin-left:auto;font-size:5.5px}.lp-phone-feed p{color:var(--text-sub);margin-top:3px;font-size:7px;line-height:1.5}.lp-phone-overview{border:1px solid var(--line);background:var(--card);text-align:left;border-radius:8px;margin-top:6px;padding:7px}.lp-phone-overview-head{align-items:center;gap:5px;display:flex}.lp-phone-overview-head b{font-size:7.5px;font-weight:700}.lp-phone-overview-head span{background:var(--accent-soft);color:var(--accent-strong);border-radius:999px;align-items:center;gap:2px;padding:1px 4px;font-size:5.5px;display:inline-flex}.lp-phone-overview p{color:var(--text-sub);margin-top:3px;font-size:6.5px;line-height:1.5}.lp-phone-appbar{background:var(--accent-soft);color:var(--accent-strong);align-items:center;gap:6px;padding:8px 11px 6px;display:flex}.lp-phone-appbar strong{color:var(--text);text-align:center;flex:1;font-size:8.5px}.lp-phone-appbar-actions{gap:6px;display:flex}.lp-phone-cover{background:var(--accent-soft);text-align:left;align-items:center;gap:6px;padding:8px 11px;display:flex}.lp-phone-cover b{font-size:7.5px;font-weight:700;display:block}.lp-phone-cover div span{color:var(--text-faint);font-size:6px;display:block}.lp-phone-share{background:var(--card);color:var(--accent-strong);border-radius:999px;margin-left:auto;padding:2px 7px;font-size:6px}.lp-phone-tabs{border-bottom:1px solid var(--line);background:var(--card);color:var(--text-faint);gap:10px;padding:6px 11px 7px;font-size:7px;display:flex}.lp-phone-tabs .on{color:var(--accent-strong);font-weight:700;position:relative}.lp-phone-tabs .on:after{content:"";background:var(--accent);border-radius:2px;height:2px;position:absolute;bottom:-8px;left:0;right:0}.lp-phone-card{border:1px solid var(--line);background:var(--card);text-align:left;border-radius:8px;margin-bottom:6px;padding:7px}.lp-phone-card p{color:var(--text);margin-top:4px;font-size:7.5px;line-height:1.45}.lp-phone-tag-row{color:var(--text-faint);align-items:center;gap:4px;font-size:6px;display:flex}.lp-phone-tag-row span{background:var(--bg-subtle);border-radius:4px;padding:0 4px}.lp-phone-tag-row span.strong{background:var(--gold-soft);color:var(--gold);font-weight:700}.lp-phone-tag-row i{margin-left:auto;font-style:normal}.lp-phone-card-meta{color:var(--text-faint);margin-top:3px;font-size:5.5px;display:block}.lp-phone-thumb{object-fit:cover;border-radius:6px;width:100%;height:52px;margin-top:5px;display:block}.lp-phone-bar{border-top:1px solid var(--line);background:var(--card);color:var(--text-faint);justify-content:space-around;padding:6px 8px 12px;display:flex}.lp-phone-bar span{place-items:center;width:20px;height:16px;display:grid}.lp-phone-bar .on{color:var(--accent-strong)}.lp-story-art,.lp-join-art{position:relative}.lp-art-panel{border:1px solid var(--line);background:var(--lp-panel);height:460px;box-shadow:var(--lp-card-shadow);border-radius:36px;position:relative;overflow:hidden}.lp-art-card{z-index:1;border:1px solid var(--lp-float-line);background:var(--lp-float-bg);width:220px;box-shadow:var(--lp-float-shadow);-webkit-backdrop-filter:blur(10px);border-radius:16px;flex-direction:column;gap:8px;padding:16px 20px;animation:6s ease-in-out infinite lp-float;display:flex;position:absolute}.lp-art-card.delay-1{animation-delay:-1.4s}.lp-art-card.delay-2{animation-delay:-2.8s}.lp-art-card.delay-3{animation-delay:-4.2s}.lp-art-card.pos-a{top:8%;left:8%}.lp-art-card.pos-b{width:200px;top:25%;right:5.5%}.lp-art-card.pos-c{width:220px;bottom:9%;left:9%}.lp-art-card.pos-d{width:200px;bottom:10%;right:9%}@keyframes lp-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.lp-art-eyebrow{color:var(--accent-strong);letter-spacing:.04em;font-size:11px;font-weight:700}.lp-art-eyebrow.violet{color:var(--lp-violet)}.lp-art-title{color:var(--text);font-size:15px;font-weight:700}.lp-art-card-head{align-items:center;gap:8px;display:flex}.lp-art-icon{border:1px solid var(--accent-line);background:var(--accent-soft);width:30px;height:30px;color:var(--accent-strong);border-radius:9px;flex:none;place-items:center;display:grid}.lp-art-icon.violet{border-color:var(--lp-violet-line);background:var(--lp-violet-soft);color:var(--lp-violet)}.lp-icon-chips{flex-wrap:wrap;gap:5px;margin-top:2px;display:flex}.lp-icon-chip{background:var(--bg-subtle);color:var(--text-sub);white-space:nowrap;border-radius:999px;align-items:center;gap:4px;padding:2px 7px;font-size:10.5px;font-weight:500;line-height:1.45;display:inline-flex}.lp-icon-chip svg{color:var(--accent-strong);flex:none}.lp-divider{background:var(--line);max-width:1080px;height:1px;margin:0 auto}.lp-section{padding:clamp(56px,7vw,92px) 0}.lp-section-join{padding-bottom:clamp(20px,3vw,32px)}.lp-head{text-align:center;max-width:640px;margin:0 auto clamp(36px,4.5vw,52px)}.lp-head h2,.lp-story h2,.lp-join h2{letter-spacing:-.03em;align-items:center;gap:10px;font-size:clamp(26px,3.4vw,36px);font-weight:800;line-height:1.25;display:flex}.lp-head h2{justify-content:center}.lp-h2-icon{color:var(--accent);flex:none}.lp-head p,.lp-story-sub,.lp-join-copy>p{color:var(--text-sub);margin-top:12px;font-size:15px;line-height:1.75}.lp-reasons{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.lp-reason{border:1px solid var(--line);background:var(--lp-panel);box-shadow:var(--lp-card-shadow);transition:transform .3s var(--ease), box-shadow .3s var(--ease), border-color .3s var(--ease);border-radius:18px;padding:26px}.lp-reason:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md);transform:translateY(-4px)}.lp-reason-icon{border:1px solid var(--accent-line);background:var(--accent-soft);width:52px;height:52px;color:var(--accent-strong);border-radius:14px;place-items:center;display:grid}.lp-reason-icon.violet{border-color:var(--lp-violet-line);background:var(--lp-violet-soft);color:var(--lp-violet)}.lp-reason h3{margin-top:18px;font-size:18px;font-weight:700}.lp-reason p{color:var(--text-sub);margin-top:8px;font-size:13.5px;line-height:1.75}.lp-story{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(32px,5vw,56px);display:grid}.lp-story-list{flex-direction:column;gap:14px;margin-top:28px;display:flex}.lp-story-item{border:1px solid var(--line);background:var(--lp-panel);box-shadow:var(--lp-card-shadow);transition:transform .25s var(--ease), box-shadow .25s var(--ease), border-color .25s var(--ease);border-radius:16px;align-items:center;gap:16px;padding:16px 18px;display:flex}.lp-story-item:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.lp-story-icon{border:1px solid var(--accent-line);background:var(--accent-soft);width:46px;height:46px;color:var(--accent-strong);border-radius:12px;flex:none;place-items:center;display:grid}.lp-story-item strong{font-size:15px;font-weight:700;display:block}.lp-story-item p{color:var(--text-sub);margin-top:2px;font-size:12.5px}.lp-story-art .lp-art-panel{height:440px}.lp-topics{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.lp-topic{border:1px solid var(--line);background:var(--lp-panel);box-shadow:var(--lp-card-shadow);color:inherit;font:inherit;text-align:left;transition:transform .3s var(--ease), box-shadow .3s var(--ease), border-color .3s var(--ease);border-radius:18px;padding:26px;display:block}.lp-topic:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md);transform:translateY(-4px)}.lp-topic-icon{border:1px solid var(--accent-line);background:var(--accent-soft);width:52px;height:52px;color:var(--accent-strong);border-radius:14px;place-items:center;display:grid}.lp-topic.violet .lp-topic-icon{border-color:var(--lp-violet-line);background:var(--lp-violet-soft);color:var(--lp-violet)}.lp-topic h3{margin-top:18px;font-size:17px;font-weight:700}.lp-topic p{color:var(--text-sub);margin-top:6px;font-size:13px}.lp-join{border:1px solid var(--line);background:var(--lp-panel);box-shadow:var(--shadow-md);border-radius:24px;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:clamp(28px,4vw,48px);padding:clamp(28px,4vw,52px);display:grid}.lp-join-art .lp-art-panel{border-radius:22px;height:400px}.lp-join-art .lp-art-card{width:210px;padding:14px 17px}.lp-join-art .lp-art-card.pos-a{top:24px;left:24px}.lp-join-art .lp-art-card.pos-b{top:158px;right:20px}.lp-join-art .lp-art-card.pos-c{width:220px;bottom:24px;left:40px}.lp-join-note{color:var(--text-faint);margin-top:22px;font-size:12.5px}.preview-post{position:relative}.preview-gate{border:1px dashed var(--line-strong);background:var(--grad-surface-soft);border-radius:12px;justify-content:center;margin-top:16px;padding:22px;display:flex}.preview-gate-card{border:1px solid var(--line);background:var(--card);width:min(100%,420px);box-shadow:var(--shadow-md);text-align:center;border-radius:14px;padding:20px 22px}.preview-gate-icon{background:var(--accent-soft);width:42px;height:42px;color:var(--accent-strong);border-radius:50%;place-items:center;margin:0 auto 10px;display:grid}.preview-gate-title{margin-bottom:6px;font-size:15px;font-weight:700}.preview-gate-card p{color:var(--text-sub);margin-bottom:14px;font-size:12.5px}@media (width<=1024px){.lp-reasons,.lp-topics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=900px){.lp-story,.lp-join{grid-template-columns:1fr}.lp-story-art,.lp-join-art{display:none}.lp-title{font-size:clamp(34px,8vw,48px)}}@media (width<=640px){.lp{padding:0 16px}.lp-hero{padding-top:0}.lp-hero-shell{border-radius:0;padding:52px 16px 28px}.lp-hero-ghost{font-size:clamp(64px,20vw,100px)}.lp-phones{height:390px;margin-top:32px}.lp-phone{width:160px}.lp-phone-right{margin-left:-36px}.lp-reasons,.lp-topics{grid-template-columns:1fr}.lp-actions{width:100%}.lp-actions .btn{flex:1}.lp-points{gap:14px 20px}.lp-reason,.lp-topic{padding:22px}}.footer{border-top:1px solid var(--line);background:var(--card);width:100%;max-width:none;color:var(--text-sub);text-align:left;margin:30px 0 0;padding:0;font-size:12px}.footer-inner{max-width:1180px;margin:0 auto;padding:28px 20px 32px}.footer-top{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.footer-brand{color:var(--text);align-items:center;gap:9px;margin-bottom:6px;font-size:15px;font-weight:800;display:flex}.footer-brand .mark{background:linear-gradient(145deg, var(--accent), var(--accent-fill-strong));width:28px;height:28px;color:var(--on-accent);border-radius:8px;justify-content:center;align-items:center;font-size:12px;font-weight:800;display:flex;overflow:hidden}.footer p{color:var(--text-sub);font-size:12px}.footer-links{color:var(--text-sub);flex-wrap:wrap;gap:18px;display:flex}.footer-links a{color:inherit;transition:color .15s var(--ease);text-decoration:none}.footer-links a:hover{color:var(--accent-strong)}.footer-bottom{border-top:1px solid var(--line);color:var(--text-faint);flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:22px;padding-top:16px;font-size:11.5px;display:flex}.login-modal{max-width:calc(100vw - 32px)}.login-modal .ant-modal-content{border-radius:var(--radius-xl);box-shadow:var(--shadow-lg);padding:0;overflow:hidden}.login-modal .ant-modal-close{z-index:2;color:var(--text-sub);border-radius:50%;top:18px;right:18px}.login-modal .ant-modal-close:hover{color:var(--text);background:var(--accent-soft)}.login-split{grid-template-columns:340px minmax(0,1fr);min-height:500px;display:grid}.login-aside{border-right:1px solid var(--line);background:radial-gradient(320px 220px at 50% 0%, #67b2ee2e, transparent 70%), var(--grad-login);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:36px 28px 28px;display:flex}.login-aside-pill{background:var(--accent-soft);color:var(--accent-strong);border-radius:999px;align-items:center;padding:7px 16px;font-size:12.5px;font-weight:600;display:inline-flex}.login-aside-logo{object-fit:cover;width:58px;height:58px;box-shadow:var(--shadow-sm);border-radius:16px}.login-qr{width:190px;box-shadow:var(--shadow-md);background:#fff;border-radius:14px;padding:10px}.login-qr img{width:100%;height:auto;display:block}.login-aside-scan{color:var(--text-sub);margin:0;font-size:12.5px}.login-scan-brand{color:#0a9a54;font-weight:700}.login-aside-help{color:var(--text-faint);text-underline-offset:3px;cursor:pointer;transition:color .15s var(--ease);background:0 0;border:0;padding:0;font-family:inherit;font-size:12px;text-decoration:underline}.login-aside-help:hover{color:var(--accent-strong)}.login-main{flex-direction:column;justify-content:center;padding:46px 48px 36px;display:flex;position:relative}.login-main h2{letter-spacing:-.02em;text-align:center;margin:0 0 24px;font-size:22px;font-weight:800}.login-form{flex-direction:column;gap:14px;display:flex}.login-field.ant-input-affix-wrapper{background:var(--bg-subtle);min-height:50px;box-shadow:none;transition:border-color .18s var(--ease), background .18s var(--ease), box-shadow .18s var(--ease);border:1px solid #0000;border-radius:12px;padding:0 16px}.login-field.ant-input-affix-wrapper:hover{border-color:var(--line-strong)}.login-field.ant-input-affix-wrapper-focused,.login-field.ant-input-affix-wrapper:focus-within{border-color:var(--accent);background:var(--card);box-shadow:0 0 0 3px var(--accent-soft)}.login-field .ant-input{background:0 0;font-size:14px}.login-prefix{border-right:1px solid var(--line);color:var(--text-sub);margin-right:8px;padding-right:8px;font-size:13px}.login-code-link{color:var(--accent-strong);white-space:nowrap;cursor:pointer;transition:color .15s var(--ease);background:0 0;border:0;padding:0 0 0 8px;font-family:inherit;font-size:12.5px;font-weight:600}.login-code-link:hover:not(:disabled){color:var(--accent)}.login-code-link:disabled{color:var(--text-faint);cursor:not-allowed}.login-submit{background:linear-gradient(135deg, var(--accent), var(--accent-fill-strong));height:48px;color:var(--on-accent);cursor:pointer;box-shadow:var(--shadow-sm);transition:opacity .15s var(--ease), transform .15s var(--ease);border:0;border-radius:999px;margin-top:4px;font-family:inherit;font-size:15px;font-weight:700}.login-submit:hover:not(:disabled){transform:translateY(-1px)}.login-submit:disabled{opacity:.5;cursor:not-allowed}.login-agreement{color:var(--text-faint);cursor:pointer;align-items:flex-start;gap:8px;font-size:11.5px;line-height:1.65;display:flex}.login-agreement input{accent-color:var(--accent);flex:none;margin-top:2px}.login-agreement-link{color:var(--accent-strong);font-family:inherit;font-size:inherit;cursor:pointer;background:0 0;border:0;padding:0}.login-agreement-link:hover{text-decoration:underline}.login-demo-row{border-top:1px dashed var(--line);flex-wrap:wrap;align-items:center;gap:6px;margin-top:20px;padding-top:16px;display:flex}.login-demo-label{color:var(--text-faint);margin-right:2px;font-size:11.5px}.login-demo-tag{border:1px solid var(--line);background:var(--card);color:var(--text-sub);cursor:pointer;transition:border-color .15s var(--ease), background .15s var(--ease), color .15s var(--ease);border-radius:999px;padding:3px 10px;font-family:inherit;font-size:11.5px;font-weight:600}.login-demo-tag:hover,.login-demo-tag.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.login-new-user{color:var(--text-faint);text-align:center;margin:14px 0 0;font-size:11.5px}@media (width<=760px){.login-split{grid-template-columns:minmax(0,1fr);min-height:0}.login-aside{display:none}.login-main{padding:36px 24px 28px}.login-main h2{margin-bottom:18px}}.page-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.page-toolbar .btn{min-height:44px}.page-search{flex:320px;min-width:0;position:relative}.page-search-icon{color:var(--text-faint);pointer-events:none;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.page-search-input{border:1px solid var(--line);background:var(--card);width:100%;height:44px;color:var(--text);box-shadow:var(--shadow-sm);appearance:none;transition:border-color .18s var(--ease), box-shadow .18s var(--ease);border-radius:12px;outline:none;padding:0 42px 0 40px;font-size:14px}.page-search-input::placeholder{color:var(--text-faint)}.page-search-input:hover{border-color:var(--line-strong)}.page-search-input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.page-search-input::-webkit-search-cancel-button{display:none}.page-search-clear{background:var(--ink-soft);width:24px;height:24px;color:var(--text-sub);transition:background .15s var(--ease), color .15s var(--ease);border:none;border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;right:10px;transform:translateY(-50%)}.page-search-clear:hover{background:var(--accent-soft);color:var(--accent-strong)}.head-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.head-actions .btn{min-height:38px;padding:0 15px;font-size:13px}.form-section-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;display:flex}.form-section-head .h2{margin-bottom:0}.form-grid{grid-template-columns:1fr 1fr;gap:0 18px;display:grid}.field.full{grid-column:1/-1}.form-hint{color:var(--text-faint);margin-top:6px;font-size:11.5px;line-height:1.6}.form-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:10px;margin-top:4px;padding-top:18px;display:flex}.form-actions .btn{min-width:96px}.compose-page{max-width:820px}.compose-author{border-bottom:1px solid var(--line);align-items:center;gap:12px;margin-bottom:18px;padding:2px 0 18px;display:flex}.compose-author .avatar{width:44px;height:44px;font-size:16px}.compose-author-main{flex:1;min-width:0}.switch-inline{color:var(--text-sub);white-space:nowrap;align-items:center;gap:8px;font-size:12px;display:flex}.switch-inline .switch{width:42px;height:25px}.switch-inline .switch:after{width:19px;height:19px}.compose-counter{color:var(--text-faint);text-align:right;margin-top:6px;font-size:11.5px}.md-editor{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--card);transition:border-color .18s var(--ease), box-shadow .18s var(--ease);overflow:hidden}.md-editor:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.md-bar{border-bottom:1px solid var(--line);background:var(--bg-subtle);justify-content:space-between;align-items:flex-start;gap:10px;padding:6px 8px;display:flex}.md-tools{flex-wrap:wrap;align-items:center;gap:2px;min-width:0;display:flex}.md-tools-sep{background:var(--line-strong);width:1px;height:18px;margin:0 5px}.md-tool{height:28px;color:var(--text-sub);white-space:nowrap;cursor:pointer;transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:0;border-radius:6px;align-items:center;gap:5px;padding:0 8px;font-family:inherit;font-size:12.5px;display:inline-flex}.md-tool svg{flex:none}.md-tool:hover{background:var(--card);color:var(--text)}.md-tool:disabled{color:var(--text-faint);opacity:.5;cursor:not-allowed;background:0 0}.md-tool:active,.md-tool.active{background:var(--accent-soft);color:var(--accent-strong)}.md-modes{border:1px solid var(--line);background:var(--card);border-radius:999px;flex:none;gap:2px;margin-top:1px;padding:2px;display:flex}.md-mode{color:var(--text-sub);cursor:pointer;transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:0;border-radius:999px;padding:3px 10px;font-family:inherit;font-size:12px}.md-mode:hover{color:var(--text)}.md-mode.active{background:var(--accent-fill-strong);color:var(--on-accent)}.md-textarea{background:var(--card);width:100%;min-height:260px;color:var(--text);resize:vertical;border:0;outline:none;padding:14px 16px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13.5px;line-height:1.75;display:block}.md-textarea::placeholder{color:var(--text-faint)}.md-preview{min-height:260px;padding:14px 16px}.md-empty{color:var(--text-faint);font-size:13.5px}.md-foot{border-top:1px solid var(--line);background:var(--card);justify-content:space-between;align-items:center;gap:12px;padding:6px 14px 8px;display:flex}.md-foot .form-hint,.md-foot .compose-counter{margin:0}.md-video-panel{border-bottom:1px solid var(--line);background:var(--bg-subtle);flex-direction:column;gap:6px;padding:10px 12px;display:flex}.md-video-panel .video-url-row{align-items:center}.md-video-panel .form-hint{margin:0}.upload-thumb{border:1px solid var(--line);background:var(--bg-subtle);border-radius:10px;width:96px;height:96px;position:relative;overflow:hidden}.upload-thumb img,.upload-thumb video{object-fit:cover;width:100%;height:100%;display:block}.md-video-thumb{background:var(--editor-bg)}.upload-remove{width:22px;height:22px;color:var(--on-accent);transition:background .15s var(--ease);background:#141c289e;border:none;border-radius:50%;place-items:center;display:grid;position:absolute;top:5px;right:5px}.upload-remove:hover{background:#141c28db}.md-media{flex-wrap:wrap;align-items:center;gap:10px;padding:12px 16px 0;display:flex}.md-thumb-play{width:34px;height:34px;color:var(--on-accent);pointer-events:none;background:#10182699;border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.md-file-chip{border:1px solid var(--line);background:var(--card);max-width:260px;height:34px;color:var(--text-sub);border-radius:9px;align-items:center;gap:7px;padding:0 6px 0 10px;font-size:12px;display:inline-flex}.md-file-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.md-file-remove{width:20px;height:20px;color:var(--text-faint);cursor:pointer;transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:0;border-radius:50%;flex:none;place-items:center;display:grid}.md-file-remove:hover{background:var(--ink-soft);color:var(--text)}.video-url-row{flex-wrap:wrap;gap:8px;display:flex}.video-url-row .input{flex:1;min-width:200px}.media-thumb.video{background:var(--editor-bg)}.media-thumb .media-video{z-index:1;object-fit:cover;width:100%;height:100%;display:block;position:relative}.media-play{z-index:2;width:46px;height:46px;color:var(--on-accent);pointer-events:none;background:#1018268c;border:1px solid #fff6;border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.media-thumb.video .media-thumb-label{z-index:2;color:var(--on-accent);background:#10182699;border-radius:999px;padding:2px 8px;font-size:11px;inset:auto auto 10px 10px}.lightbox-video{background:var(--video-bg);cursor:default;border-radius:12px;width:min(90vw,960px);max-height:85vh;box-shadow:0 30px 80px #00000080}.empty-board{flex-direction:column;align-items:center;gap:14px;display:flex}.empty-board .empty-state{width:100%}.pinned-block{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--grad-pinned);box-shadow:var(--shadow-sm);margin-bottom:14px;padding:2px 18px 10px}.pinned-head{color:var(--accent-strong);letter-spacing:.3px;align-items:center;gap:7px;padding:12px 0 8px;font-size:12px;font-weight:700;display:flex}.pinned-head .muted{font-weight:500}.pinned-list{flex-direction:column;display:flex}.pinned-item{border-top:1px solid var(--line);min-width:0;color:inherit;align-items:center;gap:9px;padding:12px 0;text-decoration:none;display:flex}.pinned-item>svg{color:var(--accent);flex:none}.pinned-title{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;transition:color .15s var(--ease);flex:1;font-size:13.5px;font-weight:600;overflow:hidden}.pinned-item:hover .pinned-title{color:var(--accent-strong)}.pinned-avatar{width:22px;height:22px;font-size:9px}.pinned-meta{color:var(--text-faint);flex:none;font-size:11px}.meetup-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;display:grid}.meetup-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--card);min-width:0;color:inherit;box-shadow:var(--shadow-sm);transition:border-color .2s var(--ease), transform .2s var(--ease), box-shadow .2s var(--ease);flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.meetup-card:hover{border-color:var(--line-strong);box-shadow:var(--shadow-md);transform:translateY(-3px)}.meetup-cover{aspect-ratio:16/9;min-height:154px;color:var(--on-accent);background:linear-gradient(135deg, var(--cat-ai-from), var(--cat-ai-to));flex-direction:column;justify-content:space-between;padding:14px 16px;display:flex;position:relative;overflow:hidden}.meetup-cover:after{content:"";pointer-events:none;background:radial-gradient(240px 150px at 88% 8%,#ffffff4d,#0000 65%),linear-gradient(#0000 55%,#08101e42);position:absolute;inset:0}.meetup-cover.has-cover:after{background:0 0}.meetup-cover>*{z-index:1;position:relative}.meetup-cover-empty{border:1px dashed var(--line-strong);border-radius:var(--radius-md);background:var(--bg-subtle);width:100%;min-height:140px;color:var(--text-sub);cursor:pointer;transition:border-color .15s var(--ease), background .15s var(--ease), color .15s var(--ease);flex-direction:column;justify-content:center;align-items:center;gap:6px;font-family:inherit;font-size:13px;display:flex}.meetup-cover-empty:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent-strong)}.meetup-cover-empty .form-hint{margin:0}.meetup-cover-upload{border:1px solid var(--line);border-radius:var(--radius-md);background:var(--card);width:100%;max-width:420px;overflow:hidden}.meetup-cover-upload img{aspect-ratio:16/9;object-fit:cover;width:100%;display:block}.meetup-cover-actions{border-top:1px solid var(--line);gap:8px;padding:8px;display:flex}.meetup-cover-actions .btn{min-height:32px;padding:0 12px;font-size:12px}.meetup-cover.cat-ai,.meetup-cover-banner.cat-ai{background:linear-gradient(135deg, var(--cat-ai-from), var(--cat-ai-to))}.meetup-cover.cat-trade,.meetup-cover-banner.cat-trade{background:linear-gradient(135deg, var(--cat-teal-from), var(--cat-teal-to))}.meetup-cover.cat-ecom,.meetup-cover-banner.cat-ecom{background:linear-gradient(135deg, var(--cat-indigo-from), var(--cat-indigo-to))}.meetup-cover.cat-media,.meetup-cover-banner.cat-media{background:linear-gradient(135deg, var(--cat-blue-from), var(--cat-blue-to))}.meetup-cover.cat-dinner,.meetup-cover-banner.cat-dinner{background:linear-gradient(135deg, var(--cat-slate-from), var(--cat-slate-to))}.meetup-cover.cat-resource,.meetup-cover-banner.cat-resource{background:linear-gradient(135deg, var(--cat-green-from), var(--cat-green-to))}.meetup-cover-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.meetup-cat{-webkit-backdrop-filter:blur(4px);background:#ffffff29;border:1px solid #ffffff38;border-radius:999px;align-items:center;padding:2px 9px;font-size:11px;font-weight:600;display:inline-flex}.meetup-state{white-space:nowrap;border-radius:999px;align-items:center;padding:2px 9px;font-size:11px;font-weight:600;display:inline-flex}.meetup-state.open{background:var(--green-soft);color:var(--green)}.meetup-state.full{background:var(--gold-soft);color:var(--gold)}.meetup-state.finished{background:var(--ink-soft);color:var(--text-sub)}.meetup-cover-center{align-items:center;gap:12px;display:flex}.meetup-cover-icon{background:#ffffff29;border:1px solid #ffffff3d;border-radius:14px;place-items:center;width:44px;height:44px;display:grid}.meetup-cover-date b{letter-spacing:-.03em;text-shadow:0 1px 10px #08101e66;font-size:30px;font-weight:800;line-height:1;display:block}.meetup-cover-date span{color:#ffffffdb;text-shadow:0 1px 8px #08101e66;font-size:11.5px}.meetup-cover-city{color:#ffffffeb;text-shadow:0 1px 8px #08101e66;align-items:center;gap:5px;font-size:12px;display:inline-flex}.meetup-body{flex-direction:column;flex:1;padding:16px 18px 18px;display:flex}.meetup-title{margin-bottom:6px;font-size:16px;font-weight:700;line-height:1.45}.meetup-summary{color:var(--text-sub);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:12px;font-size:12.5px;line-height:1.65;display:-webkit-box;overflow:hidden}.meetup-meta{color:var(--text-sub);flex-direction:column;gap:5px;margin-top:auto;font-size:12px;display:flex}.meetup-meta span{align-items:center;gap:6px;display:inline-flex}.meetup-meta svg{color:var(--text-faint);flex:none}.meetup-foot{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;margin-top:12px;padding-top:12px;display:flex}.meetup-price{color:var(--accent-strong);font-size:15px;font-weight:700}.meetup-seats{color:var(--text-faint);font-size:11.5px}.meetup-seats b{color:var(--text)}.mini-meetup{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--grad-promo);box-shadow:var(--shadow-sm);margin-bottom:16px;padding:16px 18px;display:block}.mini-meetup-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.mini-meetup-eyebrow{color:var(--accent-strong);letter-spacing:.5px;align-items:center;gap:6px;font-size:11px;font-weight:700;display:flex}.mini-meetup-more{color:var(--accent-strong);align-items:center;gap:2px;font-size:11.5px;font-weight:600;text-decoration:none;display:inline-flex}.mini-meetup-more:hover{color:var(--accent)}.mini-meetup-list{flex-direction:column;margin-top:4px;display:flex}.mini-meetup-row{border-top:1px dashed var(--line);color:inherit;align-items:center;gap:11px;padding:11px 0;text-decoration:none;display:flex}.mini-meetup-row:first-child{border-top:0}.mini-meetup-date{border:1px solid var(--line);background:var(--card);width:44px;color:var(--accent-strong);border-radius:8px;flex-direction:column;flex:none;justify-content:center;align-items:center;padding:5px 0;line-height:1.15;display:flex}.mini-meetup-date b{font-variant-numeric:tabular-nums;font-size:17px;font-weight:800}.mini-meetup-date span{color:var(--text-sub);font-size:10px}.mini-meetup-row-main{flex-direction:column;gap:5px;min-width:0;display:flex}.mini-meetup-row-title{color:var(--text);text-overflow:ellipsis;white-space:nowrap;transition:color .15s var(--ease);font-size:13px;font-weight:700;line-height:1.4;overflow:hidden}.mini-meetup-row:hover .mini-meetup-row-title{color:var(--accent-strong)}.mini-meetup-row-meta{color:var(--text-sub);flex-wrap:wrap;align-items:center;gap:4px;font-size:11px;display:flex}.mini-meetup-row-avatar{width:18px;height:18px;font-size:8px}.meetup-detail-page{width:100%;max-width:none}.meetup-detail-top{border:1px solid var(--line);border-radius:var(--radius-xl);background:var(--card);box-shadow:var(--shadow-sm);grid-template-columns:minmax(360px,.7fr) minmax(0,1.3fr);align-items:stretch;gap:0;margin-bottom:16px;display:grid;overflow:hidden}.meetup-detail-top>*{min-width:0}.meetup-detail-top .meetup-cover-banner{box-shadow:none;border-radius:0;align-self:start;margin-bottom:0}.meetup-cover-banner{aspect-ratio:16/9;border-radius:var(--radius-xl);background:linear-gradient(135deg, var(--cat-ai-from), var(--cat-ai-to));box-shadow:var(--shadow-md);margin-bottom:16px;position:relative;overflow:hidden}.meetup-cover-banner img{object-fit:cover;width:100%;height:100%;display:block}.meetup-cover-fallback{color:var(--on-accent);flex-direction:column;justify-content:center;align-items:center;gap:10px;font-size:14px;font-weight:600;display:flex;position:absolute;inset:0}.meetup-cover-badges{justify-content:space-between;align-items:center;gap:10px;display:flex;position:absolute;top:16px;left:16px;right:16px}.meetup-cover-badges .meetup-cat{color:var(--on-accent);-webkit-backdrop-filter:blur(8px);background:#0a142494;border-color:#fff3}.meetup-info-card{border-right:1px solid var(--line);flex-direction:column;margin-bottom:0;padding:22px 24px;display:flex}.meetup-info-head{flex-direction:column;gap:14px;display:flex}.meetup-info-title{min-width:0}.meetup-info-title h1{letter-spacing:-.02em;margin-bottom:10px;font-size:clamp(20px,2.4vw,26px);font-weight:800;line-height:1.28}.meetup-info-meta{color:var(--text-sub);flex-wrap:wrap;gap:8px 16px;font-size:12.5px;display:flex}.meetup-info-meta span{align-items:center;gap:6px;display:inline-flex}.meetup-info-meta svg{color:var(--accent)}.meetup-info-price{border-top:1px solid var(--line);text-align:left;align-items:baseline;gap:8px;padding-top:14px;display:flex}.meetup-info-price .muted{flex:none;font-size:11.5px}.meetup-info-price b{color:var(--accent-strong);letter-spacing:-.02em;font-size:26px;font-weight:800;line-height:1.2}.meetup-info-foot{border-top:1px solid var(--line);flex-direction:column;align-items:stretch;gap:14px;margin-top:auto;padding-top:16px;display:flex}.meetup-info-foot .meetup-host .p-avatar{border:2px solid var(--line)}.meetup-info-foot .meetup-host .muted{color:var(--text-sub)}.meetup-info-progress{min-width:0}.meetup-info-progress .join-progress{margin:0 0 4px}.meetup-info-progress .join-seats{margin-bottom:0}.meetup-info-actions{flex-wrap:wrap;gap:8px;display:flex}.meetup-info-actions .btn{flex:1;justify-content:center;min-height:40px}.meetup-tabs{border:1px solid var(--line);background:var(--bg-subtle);border-radius:12px;gap:4px;margin-bottom:16px;padding:4px;display:flex}.meetup-tab{min-height:40px;color:var(--text-sub);transition:background .15s var(--ease), color .15s var(--ease);background:0 0;border:0;border-radius:9px;flex:1;justify-content:center;align-items:center;gap:6px;padding:0 14px;font-size:13.5px;font-weight:500;display:inline-flex}.meetup-tab span{background:var(--card);min-width:20px;color:var(--text-faint);font-variant-numeric:tabular-nums;text-align:center;border-radius:999px;padding:0 6px;font-size:11px}.meetup-tab:hover{color:var(--accent-strong)}.meetup-tab[aria-selected=true]{background:var(--card);color:var(--text);box-shadow:var(--shadow-sm);font-weight:600}.meetup-tab[aria-selected=true] span{background:var(--accent-soft);color:var(--accent-strong)}.meetup-tab-panel{min-height:180px}.meetup-host{align-items:center;gap:10px;display:flex}.meetup-host b{font-size:13px;display:block}.meetup-host .muted{color:var(--text-sub);font-size:11px;display:block}.meetup-layout{align-items:flex-start;gap:18px;display:flex}.meetup-main{flex:1;min-width:0}.meetup-aside{top:calc(var(--header-h) + 18px);flex:0 0 300px;position:sticky}.join-card{margin-bottom:0}.join-card-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.join-fee{color:var(--accent-strong);letter-spacing:-.02em;font-size:26px;font-weight:800}.join-progress{border:1px solid var(--line);background:var(--bg-subtle);border-radius:999px;height:8px;margin:14px 0 8px;overflow:hidden}.join-progress span{border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--accent-fill-strong));height:100%;transition:width .4s var(--ease);display:block}.join-seats{color:var(--text-sub);margin-bottom:16px;font-size:12px}.join-seats b{color:var(--text)}.join-card .btn{margin-top:8px}.join-meta-row{color:var(--text-sub);align-items:flex-start;gap:8px;padding:5px 0;font-size:12.5px;display:flex}.join-meta-row svg{color:var(--accent);flex:none;margin-top:2px}.agenda-list{flex-direction:column;list-style:none;display:flex}.agenda-list li{border-bottom:1px dashed var(--line);color:var(--text);align-items:baseline;gap:14px;padding:11px 0;font-size:13.5px;display:flex}.agenda-list li:first-child{padding-top:0}.agenda-list li:last-child{border-bottom:none;padding-bottom:0}.agenda-index{color:var(--accent);letter-spacing:.5px;font-variant-numeric:tabular-nums;font-size:11px;font-weight:700}.attendee-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;display:grid}.attendee{border:1px solid var(--line);background:var(--bg-subtle);border-radius:11px;align-items:center;gap:9px;min-width:0;padding:9px 11px;display:flex}.attendee-main{flex:1;min-width:0}.attendee .p-name{text-overflow:ellipsis;white-space:nowrap;font-size:12.5px;overflow:hidden}.attendee .muted{font-size:10.5px}.attendee-tag{background:var(--accent-soft);color:var(--accent-strong);white-space:nowrap;border-radius:999px;flex:none;margin-left:auto;padding:1px 7px;font-size:10px;font-weight:600}.attendee-locked{border:1px dashed var(--line-strong);background:var(--bg-subtle);color:var(--text-sub);border-radius:12px;align-items:flex-start;gap:12px;padding:16px;display:flex}.attendee-locked svg{color:var(--text-faint);flex:none;margin-top:2px}.attendee-locked b{color:var(--text);margin-bottom:2px;font-size:13.5px;display:block}.attendee-locked p{font-size:12.5px}.events-layout{align-items:flex-start;gap:24px;display:flex}.events-main{flex:1;min-width:0}.meetup-year-group{scroll-margin-top:calc(var(--header-h) + 20px)}.meetup-year-group+.meetup-year-group{border-top:1px dashed var(--line);margin-top:30px;padding-top:26px}.year-rail{top:calc(var(--header-h) + 18px);flex-direction:column;flex:0 0 72px;align-items:flex-end;gap:18px;padding-top:4px;display:flex;position:sticky}.year-rail-item{color:var(--text-faint);letter-spacing:-.02em;transition:color .15s var(--ease);background:0 0;border:0;font-size:22px;font-weight:700;line-height:1}.year-rail-item:hover{color:var(--accent)}.year-rail-item[aria-current=true]{color:var(--text)}.discussion-head{margin-bottom:14px}.discussion-head .form-hint{margin-top:2px}.discussion-compose{border:1px solid var(--line);background:var(--bg-subtle);border-radius:14px;padding:14px}.discussion-compose textarea{background:var(--card);resize:vertical;min-height:84px}.discussion-previews{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.discussion-preview{border:1px solid var(--line);background:var(--card);border-radius:10px;width:82px;height:82px;position:relative;overflow:hidden}.discussion-preview img{object-fit:cover;width:100%;height:100%}.discussion-preview button{width:20px;height:20px;color:var(--on-accent);background:#0f1928ad;border:0;border-radius:50%;place-items:center;display:grid;position:absolute;top:4px;right:4px}.discussion-compose-row{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.discussion-video-input{flex:220px;min-width:0}.discussion-lock{border:1px dashed var(--line-strong);background:var(--bg-subtle);color:var(--text-sub);border-radius:12px;align-items:center;gap:8px;padding:12px 14px;font-size:12.5px;display:flex}.discussion-lock.small{background:0 0;border:0;padding:8px 0}.discussion-list{flex-direction:column;gap:14px;margin-top:16px;display:flex}.discussion-item{border:1px solid var(--line);background:var(--card);border-radius:14px;padding:14px}.discussion-author{align-items:center;gap:10px;display:flex}.discussion-author-main{min-width:0}.discussion-author-main b{font-size:13px;display:block}.discussion-author-main .muted{font-size:11px;display:block}.discussion-content{color:var(--text);white-space:pre-wrap;margin-top:10px;font-size:13.5px}.discussion-item .p-media{margin-top:10px}.discussion-foot{border-top:1px solid var(--line);align-items:center;gap:8px;margin-top:12px;padding-top:10px;display:flex}.discussion-action{min-height:30px;color:var(--text-sub);background:0 0;border:0;border-radius:8px;align-items:center;gap:5px;padding:0 10px;font-size:12px;display:inline-flex}.discussion-action:hover{background:var(--bg-subtle);color:var(--accent-strong)}.discussion-action.active{background:var(--red-soft);color:var(--red)}.discussion-comments{background:var(--bg-subtle);border-radius:10px;margin-top:10px;padding:10px 12px}.discussion-comment{gap:8px;padding:6px 0;display:flex}.discussion-comment-main{flex:1;min-width:0}.discussion-comment-head{align-items:center;gap:8px;display:flex}.discussion-comment-head b{font-size:12px}.discussion-comment-head .muted{font-size:10.5px}.discussion-comment-main p{color:var(--text);white-space:pre-wrap;margin-top:2px;font-size:12.5px}.discussion-comment-form{gap:8px;margin-top:8px;display:flex}.discussion-comment-form .input{flex:1;min-width:0}.p-avatar.sm{width:28px;height:28px;font-size:11px}.meetup-create-head-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.meetup-create-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:18px;max-width:1180px;display:grid}.meetup-create-main{flex-direction:column;gap:14px;min-width:0;display:flex}.meetup-form-section{margin-bottom:0;padding:18px 20px}.meetup-form-section .field{margin-bottom:12px}.meetup-form-section .field:last-child{margin-bottom:0}.meetup-section-head{border-bottom:1px dashed var(--line);justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:14px;padding-bottom:10px;display:flex}.meetup-section-head .h2{margin:0;font-size:15px;font-weight:700}.meetup-section-head .muted{font-size:11.5px}.form-grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.meetup-form-section .form-grid{gap:0 12px}.meetup-form-section .compose-counter{margin-top:4px;display:block}.meetup-cover-row{grid-template-columns:200px minmax(0,1fr);align-items:start;gap:18px;display:grid}.meetup-cover-field{margin-bottom:0}.meetup-cover-upload.compact{max-width:none}.meetup-cover-upload.compact .meetup-cover-actions .btn{flex:1;justify-content:center}.meetup-cover-empty.compact{min-height:112px;padding:12px}.meetup-when-where{flex-direction:column;gap:0;display:flex}.meetup-when-where .field:last-child{margin-bottom:0}.meetup-settings-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:18px;display:grid}.meetup-settings-grid .field{margin-bottom:0}.meetup-create-aside{top:calc(var(--header-h) + 16px);position:sticky}.meetup-summary-card{flex-direction:column;gap:10px;margin-bottom:0;padding:14px;display:flex}.meetup-summary-cover{aspect-ratio:16/9;background:linear-gradient(135deg, var(--cat-ai-from), var(--cat-ai-to));color:var(--on-accent);border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:600;display:flex;position:relative;overflow:hidden}.meetup-summary-cover img{object-fit:cover;width:100%;height:100%;display:block}.meetup-summary-cover.cat-ai{background:linear-gradient(135deg, var(--cat-ai-from), var(--cat-ai-to))}.meetup-summary-cover.cat-trade{background:linear-gradient(135deg, var(--cat-teal-from), var(--cat-teal-to))}.meetup-summary-cover.cat-ecom{background:linear-gradient(135deg, var(--cat-indigo-from), var(--cat-indigo-to))}.meetup-summary-cover.cat-media{background:linear-gradient(135deg, var(--cat-blue-from), var(--cat-blue-to))}.meetup-summary-cover.cat-dinner{background:linear-gradient(135deg, var(--cat-slate-from), var(--cat-slate-to))}.meetup-summary-cover.cat-resource{background:linear-gradient(135deg, var(--cat-green-from), var(--cat-green-to))}.meetup-summary-card h3{font-size:15px;font-weight:700;line-height:1.45}.meetup-summary-card>.muted{color:var(--text-sub);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.6;display:-webkit-box;overflow:hidden}.meetup-summary-meta{border-top:1px dashed var(--line);border-bottom:1px dashed var(--line);color:var(--text-sub);flex-direction:column;gap:6px;padding:10px 0;font-size:12px;display:flex}.meetup-summary-meta span{align-items:center;gap:6px;display:inline-flex}.meetup-summary-meta svg{color:var(--accent);flex:none}.meetup-summary-price{color:var(--text-sub);justify-content:space-between;align-items:baseline;font-size:12px;display:flex}.meetup-summary-price b{color:var(--accent-strong);font-size:22px;font-weight:800}.meetup-summary-actions{flex-direction:column;gap:8px;display:flex}.meetup-summary-actions .btn{justify-content:center;min-height:38px}.meetup-summary-card .form-hint{border-top:1px dashed var(--line);margin-top:0;padding-top:10px}.meetup-preview-modal .ant-modal-content{padding:0;overflow:hidden}.meetup-preview-modal .ant-modal-header{border-bottom:1px solid var(--line);margin:0;padding:14px 20px}.meetup-preview-modal .ant-modal-body{max-height:68vh;padding:18px 20px;overflow-y:auto}.meetup-preview-modal .ant-modal-footer{border-top:1px solid var(--line);justify-content:flex-end;gap:10px;margin:0;padding:12px 20px;display:flex}.meetup-preview{max-width:760px;margin:0 auto}.meetup-preview .meetup-cover-banner{aspect-ratio:auto;height:220px;margin-bottom:0}.meetup-preview-head{justify-content:space-between;align-items:flex-start;gap:18px;margin-top:16px;display:flex}.meetup-preview-head h1{letter-spacing:-.02em;margin-bottom:8px;font-size:22px;font-weight:800;line-height:1.3}.meetup-preview-host{border-top:1px dashed var(--line);border-bottom:1px dashed var(--line);color:var(--text-sub);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:14px 0 18px;padding:12px 0;font-size:12.5px;display:flex}.meetup-preview-host .meetup-seats b{color:var(--text)}.meetup-preview-section{margin-bottom:18px}.meetup-preview-section .p-body{color:var(--text-sub);margin-bottom:10px}.meetup-details{margin-top:4px}.markdown-body .markdown-image{border:1px solid var(--line);background:var(--bg-subtle);border-radius:12px;max-width:100%;height:auto;margin:12px 0;display:block}.markdown-video-wrap{margin:12px 0;display:block}.markdown-video{border:1px solid var(--line);background:var(--video-bg);border-radius:12px;width:100%;max-height:420px;display:block}.markdown-video-link{margin-top:6px;font-size:12px;display:inline-block}.md-editor-split .md-split-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:280px;display:grid}.md-editor-split .md-split-body.mode-write,.md-editor-split .md-split-body.mode-preview{grid-template-columns:minmax(0,1fr)}.md-split-pane{min-width:0}.md-split-write{border-right:1px solid var(--line)}.md-split-body.mode-write .md-split-write,.md-split-body.mode-preview .md-split-preview{border-right:0}.md-editor-split .md-textarea{border-radius:0;height:100%;font-family:inherit}.md-split-preview{max-height:560px;padding:14px 16px;overflow-y:auto}@media (width<=1000px){.meetup-create-layout{grid-template-columns:minmax(0,1fr)}.meetup-create-aside{position:static}.meetup-summary-card{max-width:420px}}@media (width<=900px){.md-editor-split .md-split-body{grid-template-columns:minmax(0,1fr)}.md-split-write{border-right:0;border-bottom:1px solid var(--line)}.md-split-preview{max-height:none}}@media (width<=720px){.form-grid.cols-3{grid-template-columns:minmax(0,1fr)}.form-grid.cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}.meetup-cover-row,.meetup-settings-grid{grid-template-columns:minmax(0,1fr)}.meetup-preview-head{flex-direction:column;gap:10px}.md-tool-label{display:none}.md-tool{padding:0 7px}}@media (width<=480px){.form-grid.cols-4{grid-template-columns:minmax(0,1fr)}.meetup-create-head-actions{width:100%}.meetup-create-head-actions .btn{flex:1;justify-content:center}}.link-danger{color:var(--red);background:0 0;border:0;margin-left:auto;font-size:11.5px}.link-danger:hover{text-decoration:underline}@media (width<=640px){.meetup-info-head{flex-direction:column;gap:16px}.meetup-info-price{border-top:1px solid var(--line);text-align:left;border-left:0;width:100%;padding-top:12px;padding-left:0}.meetup-info-foot{flex-direction:column;align-items:stretch}.meetup-info-actions{margin-left:0}.meetup-info-actions .btn{flex:1;justify-content:center}.meetup-tabs{scrollbar-width:none;overflow-x:auto}.meetup-tabs::-webkit-scrollbar{display:none}.meetup-tab{white-space:nowrap;flex:none;padding:0 12px;font-size:12.5px}.discussion-compose-row{flex-direction:column;align-items:stretch}.discussion-compose-row .btn{justify-content:center}.discussion-video-input{flex:auto}.discussion-comment-form{flex-direction:column}}@media (width<=1024px){.course-grid{grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.nav-search-desktop{display:none}.nav-search-toggle{display:inline-flex}}@media (width<=1000px){.meetup-detail-top{grid-template-columns:1fr}.meetup-info-card{border-right:0;border-bottom:1px solid var(--line)}}@media (width<=900px){.home-layout{flex-direction:column}.home-side{flex:none;width:100%;position:static}.home-main{width:100%}.meetup-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}.events-layout{flex-direction:column}.year-rail{display:none}.meetup-layout{flex-direction:column}.meetup-aside{flex:none;width:100%;position:static}.admin-layout{flex-direction:column}.admin-side{flex-wrap:wrap;flex:none;gap:8px;width:100%;display:flex;position:static}.admin-side .item{width:auto;margin-bottom:0}.admin-identity{width:100%}}@media (width<=640px){.nav-inner{gap:10px;padding:0 16px}nav.tabs a{padding:0 11px;font-size:13px}.date-range-desktop{display:none}.date-range-mobile{display:flex}.home-tabs .plates{scrollbar-width:none;flex-wrap:nowrap;gap:18px;overflow-x:auto}.home-tabs .plates::-webkit-scrollbar{display:none}.home-tabs .plate{flex:none}.home-subbar-tools{justify-content:space-between;width:100%}.home-subbar-tools .compact-toggle{margin-left:auto}.post.compact-post.has-thumb{grid-template-columns:minmax(0,1fr) 92px;column-gap:12px}.compact-thumb{width:92px;height:72px}.md-tool span{display:none}.md-tool{padding:0 7px}.md-tools-sep{margin:0 3px}main{margin:18px auto 40px;padding:0 16px}.card{border-radius:14px;padding:18px}.form-grid{grid-template-columns:1fr}.head-actions{width:100%}.page-toolbar{align-items:stretch}.page-toolbar .btn{width:100%}.page-search{flex-basis:100%}.pinned-meta{display:none}.nav-tools{gap:0}.notice-dropdown{right:-56px}.notice-dropdown:before{display:none}.meetup-info-card{padding:18px}.meetup-cover{min-height:170px}.compose-author{flex-wrap:wrap}.switch-inline{justify-content:flex-end;width:100%}.form-actions .btn{flex:1}.video-url-row .btn{width:100%}.page-head h1{font-size:22px}.profile-head-main h1{font-size:19px}.login-foot{flex-direction:column;align-items:flex-start}.login-head{padding:26px 22px 20px}.login-accounts{padding:16px 16px 6px}.lightbox{padding:24px 16px}}@media (width<=520px){.logo-text{display:none}.section-head{align-items:flex-start}.section-head h2{font-size:19px}.p-title{font-size:16px}.p-time{width:100%;margin-left:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (width<=640px){.nav-inner{gap:8px}.nav-tools{gap:0}.nav-tools .notice-btn,.nav-tools .nav-icon-btn,.nav-tools .nav-search-toggle,.nav-tools .btn.nav-post-btn{width:32px;height:32px;min-height:32px}.avatar-caret{display:none}nav.tabs a{padding:0 8px;font-size:12.5px}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
