:root{--md-primary:#2e6a45;--md-on-primary:#fff;--md-primary-container:#b0f1c2;--md-on-primary-container:#00210f;--md-secondary:#516356;--md-on-secondary:#fff;--md-secondary-container:#d3e8d8;--md-on-secondary-container:#102016;--md-tertiary-container:#c2e8ff;--md-on-tertiary-container:#001e2c;--md-error:#b3261e;--md-on-error:#fff;--md-error-container:#f9dedc;--md-on-error-container:#410e0b;--md-surface:#f6fbf4;--md-surface-dim:#d9dfdc;--md-surface-container-low:#f0f5ee;--md-surface-container:#eaf0e8;--md-surface-container-high:#e4eae2;--md-surface-container-highest:#dee4dc;--md-on-surface:#181d18;--md-on-surface-variant:#414941;--md-outline:#707972;--md-outline-variant:#bfc9c0;--md-inverse-surface:#2d322d;--md-inverse-on-surface:#eef2eb;--md-inverse-primary:#95d5a7;--md-shape-xs:4px;--md-shape-sm:8px;--md-shape-md:12px;--md-shape-lg:16px;--md-shape-xl:20px;--md-shape-2xl:28px;--md-shape-3xl:32px;--md-shape-full:9999px;--md-font:"Roboto", "PingFang SC", "HarmonyOS Sans SC", "Microsoft YaHei", -apple-system, "Segoe UI", "Noto Sans SC", sans-serif;--md-font-emphasized:"Roboto Flex", "Roboto", "PingFang SC", "HarmonyOS Sans SC", sans-serif;--md-display-large:57px;--md-display-medium:45px;--md-display-small:36px;--md-headline-large:32px;--md-headline-medium:28px;--md-headline-small:24px;--md-title-large:22px;--md-title-medium:16px;--md-title-small:14px;--md-body-large:16px;--md-body-medium:14px;--md-body-small:12px;--md-label-large:14px;--md-label-medium:12px;--md-label-small:11px;--md-state-hover:.08;--md-state-focus:.12;--md-state-pressed:.12;--md-ease-standard:cubic-bezier(.2, 0, 0, 1);--md-ease-standard-decel:cubic-bezier(0, 0, 0, 1);--md-ease-standard-accel:cubic-bezier(.3, 0, 1, 1);--md-duration-short-1:50ms;--md-duration-short-2:.1s;--md-duration-short-3:.15s;--md-duration-short-4:.2s;--md-duration-medium-2:.3s;--md-duration-long-2:.5s;--md-elev-1:0 1px 2px 0 #0000004d, 0 1px 3px 1px #00000026;--md-elev-2:0 1px 2px 0 #0000004d, 0 2px 6px 2px #00000026;--md-elev-3:0 1px 3px 0 #0000004d, 0 4px 8px 3px #00000026;--md-mobile-w:412px;--md-mobile-h:892px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--md-font);color:var(--md-on-surface);background:var(--md-surface-container-low);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;margin:0;font-size:16px;line-height:1.5;overflow-x:hidden}#root{min-height:100vh}a{color:var(--md-primary);text-decoration:none}a:hover{text-decoration:underline}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:none}input,textarea,select{font:inherit;color:inherit}img{max-width:100%;display:block}ul,ol{list-style:none}::selection{color:var(--md-on-surface);background:#2e6a452e}::-webkit-scrollbar{width:0;height:0}.app-shell{background:var(--md-surface);justify-content:center;width:100%;min-height:100vh;display:flex}.desktop-sidebar{display:none}@media (width>=480px){.app-shell{align-items:flex-start}.mobile-frame{width:var(--md-mobile-w);max-width:100%;min-height:100vh}}@media (width>=768px){.app-shell{justify-content:flex-start;align-items:stretch}.desktop-sidebar{flex-shrink:0;width:248px;min-height:100vh;display:flex;position:sticky;top:0}.mobile-frame{flex:1;width:auto;min-width:0;max-width:none;min-height:100vh}.home-bottom-bar,.mobile-only{display:none!important}}.mobile-frame{background:var(--md-surface);flex-direction:column;width:100%;min-height:100vh;display:flex;position:relative;overflow:hidden}.screen-stack{flex:1;position:relative;overflow:hidden}.screen{background:var(--md-surface);overscroll-behavior:contain;-webkit-overflow-scrolling:touch;flex-direction:column;display:flex;position:absolute;inset:0;overflow:hidden auto}.screen.enter-forward{animation:slideInRight var(--md-duration-medium-2) var(--md-ease-standard-decel);z-index:2}.screen.enter-backward{animation:slideInLeft var(--md-duration-medium-2) var(--md-ease-standard-accel);z-index:2}.screen.exit-forward{animation:slideOutLeft var(--md-duration-medium-2) var(--md-ease-standard-accel);z-index:1}.screen.exit-backward{animation:slideOutRight var(--md-duration-medium-2) var(--md-ease-standard-decel);z-index:1}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes slideOutLeft{0%{transform:translate(0)}to{transform:translate(-30%)}}@keyframes slideInLeft{0%{transform:translate(-30%)}to{transform:translate(0)}}@keyframes slideOutRight{0%{transform:translate(0)}to{transform:translate(100%)}}@media (prefers-reduced-motion:reduce){.screen.enter-forward,.screen.enter-backward,.screen.exit-forward,.screen.exit-backward{animation:none}}.top-app-bar{z-index:30;background:var(--md-surface);height:64px;color:var(--md-on-surface);transition:background var(--md-duration-short-3) var(--md-ease-standard);align-items:center;gap:12px;padding:0 4px;display:flex;position:sticky;top:0}.top-app-bar.scrolled{background:var(--md-surface-container)}.top-app-bar-title{font-family:var(--md-font-emphasized);font-size:var(--md-title-large);letter-spacing:0;color:var(--md-on-surface);text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:700;overflow:hidden}.brand-title{color:var(--md-on-surface);align-items:center;gap:8px;display:inline-flex}.brand-logo{color:var(--md-on-surface);flex-shrink:0}.icon-button{border-radius:var(--md-shape-full);width:48px;height:48px;color:var(--md-on-surface-variant);transition:background var(--md-duration-short-2) var(--md-ease-standard), transform var(--md-duration-short-2) var(--md-ease-standard);flex-shrink:0;place-items:center;display:inline-grid;position:relative;overflow:hidden}.icon-button.size-m{width:56px;height:56px}.icon-button.size-s{width:40px;height:40px}.icon-button.size-xs{width:32px;height:32px}.icon-button:hover{background:rgba(65, 73, 65, var(--md-state-hover))}.icon-button:active{background:rgba(65, 73, 65, var(--md-state-pressed));transform:scale(.92)}.icon-button.filled{background:var(--md-primary);color:var(--md-on-primary)}.icon-button.filled:hover{background:#3a7a55}.icon-button.tonal{background:var(--md-secondary-container);color:var(--md-on-secondary-container)}.icon-button.outlined{border:1px solid var(--md-outline)}.ms{letter-spacing:normal;text-transform:none;white-space:nowrap;word-wrap:normal;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased;font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;direction:ltr;font-family:Material Symbols Rounded;font-style:normal;font-weight:400;line-height:1;display:inline-block}.ms.size-xs{font-size:18px}.ms.size-sm{font-size:20px}.ms.size-md{font-size:24px}.ms.size-lg{font-size:28px}.ms.fill{font-variation-settings:"FILL" 1, "wght" 400, "GRAD" 0, "opsz" 24}.btn{border-radius:var(--md-shape-full);height:56px;font-family:var(--md-font-emphasized);font-size:var(--md-label-large);letter-spacing:.1px;white-space:nowrap;transition:box-shadow var(--md-duration-short-3) var(--md-ease-standard), transform var(--md-duration-short-2) var(--md-ease-standard), background var(--md-duration-short-3) var(--md-ease-standard);-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;gap:8px;padding:0 24px;font-weight:700;display:inline-flex;position:relative;overflow:hidden}.btn.size-s{height:40px;font-size:var(--md-label-medium);padding:0 16px}.btn.size-xs{height:32px;font-size:var(--md-label-small);padding:0 12px}.btn .ms{font-size:20px}.btn:active{transform:scale(.97)}.btn:disabled{opacity:.38;cursor:not-allowed;pointer-events:none}.btn.filled{background:var(--md-primary);color:var(--md-on-primary)}.btn.filled:hover{box-shadow:var(--md-elev-1);background:#3a7a55}.btn.tonal{background:var(--md-secondary-container);color:var(--md-on-secondary-container)}.btn.tonal:hover{box-shadow:var(--md-elev-1)}.btn.outlined{color:var(--md-primary);border:1px solid var(--md-outline);background:0 0}.btn.outlined:hover{background:rgba(46, 106, 69, var(--md-state-hover))}.btn.text{color:var(--md-primary);background:0 0;padding:0 12px}.btn.text:hover{background:rgba(46, 106, 69, var(--md-state-hover))}.btn.danger{background:var(--md-error);color:var(--md-on-error)}.btn.danger:hover{box-shadow:var(--md-elev-1)}.btn.block{width:100%}.btn-group{align-items:stretch;gap:3px;display:inline-flex}.btn-group .btn{border-radius:var(--md-shape-full)}.btn-group .btn:not(:first-child):not(:last-child),.btn-group .btn-group-item:not(:first-child):not(:last-child){border-radius:var(--md-shape-md)}.btn-group .btn:first-child:not(:only-child),.btn-group .btn-group-item:first-child:not(:only-child){border-top-right-radius:var(--md-shape-md);border-bottom-right-radius:var(--md-shape-md)}.btn-group .btn:last-child:not(:only-child),.btn-group .btn-group-item:last-child:not(:only-child){border-top-left-radius:var(--md-shape-md);border-bottom-left-radius:var(--md-shape-md)}.btn-group.fill-width{width:100%}.btn-group.fill-width .btn,.btn-group.fill-width .btn-group-item{flex:1}.fab-extended{border-radius:var(--md-shape-lg);background:var(--md-primary-container);height:56px;color:var(--md-on-primary-container);font-family:var(--md-font-emphasized);font-size:var(--md-label-large);box-shadow:var(--md-elev-3);transition:box-shadow var(--md-duration-short-3) var(--md-ease-standard), transform var(--md-duration-short-2) var(--md-ease-standard), width var(--md-duration-medium-2) var(--md-ease-standard);align-items:center;gap:12px;padding:0 20px;font-weight:700;display:inline-flex;position:relative;overflow:hidden}.fab-extended:hover{box-shadow:var(--md-elev-3);background:#c2f5cf}.fab-extended:active{transform:scale(.97)}.fab-extended .ms{font-size:24px}.fab-menu-wrap{display:inline-flex;position:relative}.fab-menu-items{background:var(--md-surface-container-high);border-radius:var(--md-shape-xl);box-shadow:var(--md-elev-3);z-index:50;transform-origin:100% 100%;animation:fabMenuOpen var(--md-duration-medium-2) var(--md-ease-standard-decel);scrollbar-width:none;flex-direction:row;justify-content:space-between;align-items:center;gap:4px;padding:8px 10px;display:flex;position:absolute;bottom:calc(100% + 4px);left:8px;right:8px;overflow-x:auto}.fab-menu-items::-webkit-scrollbar{display:none}@keyframes fabMenuOpen{0%{opacity:0;transform:scale(.9)translateY(8px)}to{opacity:1;transform:scale(1)translateY(0)}}.fab-menu-item{border-radius:var(--md-shape-md);color:var(--md-on-surface);font-size:var(--md-label-small);text-align:center;transition:background var(--md-duration-short-2) var(--md-ease-standard), transform var(--md-duration-short-2) var(--md-ease-standard);white-space:nowrap;background:0 0;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;gap:4px;min-width:0;padding:8px 4px;font-weight:500;display:flex}.fab-menu-item:hover{background:rgba(65, 73, 65, var(--md-state-hover))}.fab-menu-item:active{transform:scale(.92)}.fab-menu-item.active{background:var(--md-secondary-container);color:var(--md-on-secondary-container);font-weight:700}.fab-menu-item .ms{color:var(--md-on-surface-variant);font-size:22px}.fab-menu-item.active .ms{color:var(--md-on-secondary-container)}.divider{background:var(--md-outline-variant);height:1px;margin:0 16px}.container-box{background:var(--md-surface-container-highest);border-radius:var(--md-shape-2xl);position:relative;overflow:hidden}.container-box.surface-high{background:var(--md-surface-container-high)}.screen-content{flex-direction:column;flex:1;gap:16px;padding:16px;display:flex}.screen-content.tight{gap:8px}.row{align-items:center;display:flex}.row-center{justify-content:center;align-items:center;display:flex}.row-between{justify-content:space-between;align-items:center;display:flex}.col{flex-direction:column;display:flex}.gap-4{gap:4px}.gap-8{gap:8px}.gap-12{gap:12px}.gap-16{gap:16px}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.text-primary{color:var(--md-primary)}.text-on-surface{color:var(--md-on-surface)}.text-on-surface-variant{color:var(--md-on-surface-variant)}.text-error{color:var(--md-error)}.text-center{text-align:center}.font-emphasized{font-family:var(--md-font-emphasized);font-weight:700}.mt-8{margin-top:8px}.mt-16{margin-top:16px}.mt-24{margin-top:24px}.hidden{display:none!important}.empty-state{text-align:center;color:var(--md-on-surface-variant);padding:48px 24px}.empty-state .ms{color:var(--md-on-surface-variant);opacity:.5;margin-bottom:12px;font-size:56px}.empty-state p{font-size:var(--md-body-medium)}.skeleton{background:linear-gradient(90deg, var(--md-surface-container-high) 25%, var(--md-surface-container-highest) 50%, var(--md-surface-container-high) 75%);border-radius:var(--md-shape-xl);background-size:200% 100%;animation:1.4s infinite shimmer}@keyframes shimmer{0%{background-position:200%}to{background-position:-200%}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.toast-wrap{z-index:9999;pointer-events:none;position:fixed;top:24px;left:50%;transform:translate(-50%)}.toast{border-radius:var(--md-shape-full);font-size:var(--md-body-medium);color:var(--md-inverse-on-surface);background:var(--md-inverse-surface);box-shadow:var(--md-elev-3);animation:toastRise var(--md-duration-medium-2) var(--md-ease-standard-decel);text-align:center;max-width:320px;padding:12px 20px;font-weight:500}.toast.success{background:var(--md-primary);color:var(--md-on-primary)}.toast.error{background:var(--md-error);color:var(--md-on-error)}@keyframes toastRise{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@media (width<=360px){body{font-size:14px}}.avatar{border-radius:var(--md-shape-full);color:#fff;font-weight:700;font-family:var(--md-font-emphasized);-webkit-user-select:none;user-select:none;font-variation-settings:"wght" 700;flex-shrink:0;place-items:center;line-height:1;display:inline-grid}.avatar.clickable{cursor:pointer;transition:transform var(--md-duration-short-2) var(--md-ease-standard), box-shadow var(--md-duration-short-2) var(--md-ease-standard);border:none;padding:0}.avatar.clickable:hover{box-shadow:0 0 0 3px #2e6a4540}.avatar.clickable:active{transform:scale(.92)}.home-hero{border-radius:var(--md-shape-2xl);color:#fff;background:#1b3a2a;flex-direction:column;justify-content:flex-end;gap:8px;width:100%;min-height:220px;padding:24px 20px;display:flex;position:relative;overflow:hidden}.home-hero>:not(.grainient-container){z-index:2;position:relative}.home-hero:after{content:"";pointer-events:none;z-index:1;background:linear-gradient(#0000002e 0%,#00000005 35%,#00000059 100%);position:absolute;inset:0}.home-hero:before{display:none}.home-hero-title{font-family:var(--md-font-emphasized);letter-spacing:-.5px;text-shadow:0 2px 12px #00000059;font-size:32px;font-weight:900;line-height:1.1;position:relative}.home-hero-sub{font-size:var(--md-body-medium);opacity:.95;text-shadow:0 1px 8px #00000059;position:relative}.home-topics{background:var(--md-surface-container-highest);border-radius:var(--md-shape-2xl);flex-direction:column;gap:12px;min-height:400px;padding:16px;display:flex}.home-topics-head{justify-content:space-between;align-items:center;padding:0 4px;display:flex}.home-topics-title{font-family:var(--md-font-emphasized);font-size:var(--md-title-large);color:var(--md-on-surface);font-weight:700}.home-topics-meta{font-size:var(--md-body-small);color:var(--md-on-surface-variant)}.topic-list{flex-direction:column;gap:8px;display:flex}.topic-card{border-radius:var(--md-shape-xl);background:var(--md-surface-container);cursor:pointer;transition:background var(--md-duration-short-2) var(--md-ease-standard), transform var(--md-duration-short-2) var(--md-ease-standard), box-shadow var(--md-duration-short-3) var(--md-ease-standard);gap:12px;padding:14px 16px;display:flex;position:relative;overflow:hidden}.topic-card:hover{background:var(--md-surface-container-high);box-shadow:var(--md-elev-1)}.topic-card:active{background:var(--md-surface-container-high);transform:scale(.99)}.topic-card.pinned{background:linear-gradient(135deg, var(--md-tertiary-container), var(--md-surface-container))}.topic-main{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.topic-top{font-size:var(--md-body-small);color:var(--md-on-surface-variant);flex-wrap:wrap;align-items:center;gap:6px;display:flex}.topic-author{color:var(--md-on-surface);font-weight:700}.circle-tag{font-size:var(--md-label-small);border-radius:var(--md-shape-full);background:var(--md-secondary-container);color:var(--md-on-secondary-container);align-items:center;gap:4px;padding:2px 10px;font-weight:600;display:inline-flex}.circle-tag .dot{border-radius:var(--md-shape-full);width:6px;height:6px}.topic-title{font-family:var(--md-font-emphasized);font-size:var(--md-title-medium);color:var(--md-on-surface);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-weight:700;line-height:1.4;display:-webkit-box;overflow:hidden}.topic-excerpt{font-size:var(--md-body-small);color:var(--md-on-surface-variant);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.6;display:-webkit-box;overflow:hidden}.topic-foot{font-size:var(--md-label-small);color:var(--md-on-surface-variant);align-items:center;gap:12px;display:flex}.topic-foot .stat{align-items:center;gap:4px;display:inline-flex}.topic-foot .stat .ms{opacity:.8;font-size:14px}.tag-official,.tag-subordinate,.tag-banned{font-size:var(--md-label-small);border-radius:var(--md-shape-full);background:var(--md-primary);color:var(--md-on-primary);vertical-align:middle;align-items:center;margin-left:6px;padding:1px 8px;font-weight:700;line-height:1.5;display:inline-flex}.tag-subordinate{color:#fff;background:#1565c0}.tag-banned{background:var(--md-error-container);color:var(--md-on-error-container)}.home-bottom-bar{background:var(--md-surface);border-top:1px solid var(--md-outline-variant);z-index:20;align-items:center;gap:3px;padding:4px 12px;display:flex;position:sticky;bottom:0}.home-bottom-bar .home-btn-newtopic,.home-bottom-bar .home-fab-circle{height:40px}.home-bottom-bar .home-btn-newtopic{flex:3 0}.home-bottom-bar .home-btn-circle{flex:2;min-width:0}.home-bottom-bar .home-fab-circle{border-radius:var(--md-shape-full);background:var(--md-primary);width:100%;color:var(--md-on-primary);justify-content:center;overflow:hidden}.home-bottom-bar .home-fab-circle:hover{background:#3a7a55}.input-container{background:var(--md-surface-container-high);border-radius:var(--md-shape-2xl);flex-direction:column;gap:8px;padding:16px 18px;display:flex}.input-container.with-footer{padding-bottom:12px}.input-label{font-size:var(--md-label-medium);color:var(--md-on-surface-variant);font-weight:700;font-family:var(--md-font-emphasized);letter-spacing:.1px}.input-field{width:100%;font-size:var(--md-body-large);color:var(--md-on-surface);resize:none;font-family:var(--md-font);background:0 0;border:none;outline:none;padding:4px 0;line-height:1.5}.input-field::placeholder{color:var(--md-on-surface-variant);opacity:.7}.input-field:focus{outline:none}.input-counter{text-align:right;font-size:var(--md-label-small);color:var(--md-on-surface-variant)}.input-counter.warn{color:var(--md-error);font-weight:700}.circle-grid{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.circle-chip{border-radius:var(--md-shape-lg);background:var(--md-surface-container);color:var(--md-on-surface);font-size:var(--md-label-small);cursor:pointer;transition:background var(--md-duration-short-2) var(--md-ease-standard), transform var(--md-duration-short-2) var(--md-ease-standard);text-align:center;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;font-weight:500;display:flex}.circle-chip:hover{background:var(--md-surface-container-high)}.circle-chip.active{background:var(--md-primary);color:var(--md-on-primary);font-weight:700}.circle-chip.active .ms{color:var(--md-on-primary)}.circle-chip .ms{color:var(--md-on-surface-variant);font-size:22px}.uploader{flex-wrap:wrap;gap:8px;display:flex}.uploader-slot{border-radius:var(--md-shape-lg);background:var(--md-surface-container);width:88px;height:88px;position:relative;overflow:hidden}.uploader-slot img{object-fit:cover;width:100%;height:100%}.uploader-slot .remove{border-radius:var(--md-shape-full);color:#fff;background:#00000080;place-items:center;width:24px;height:24px;display:grid;position:absolute;top:4px;right:4px}.uploader-slot .remove .ms{font-size:16px}.uploader-slot .size-tag{color:#fff;border-radius:var(--md-shape-full);background:#0009;padding:2px 6px;font-size:9px;font-weight:700;position:absolute;bottom:4px;left:4px}.uploader-add{border-radius:var(--md-shape-lg);border:2px dashed var(--md-outline-variant);width:88px;height:88px;color:var(--md-on-surface-variant);font-size:var(--md-label-small);transition:border-color var(--md-duration-short-2) var(--md-ease-standard), color var(--md-duration-short-2) var(--md-ease-standard), background var(--md-duration-short-2) var(--md-ease-standard);cursor:pointer;flex-direction:column;justify-content:center;align-items:center;gap:4px;display:flex}.uploader-add:hover{border-color:var(--md-primary);color:var(--md-primary);background:#2e6a450d}.uploader-add .ms{font-size:24px}.uploader-add.disabled{opacity:.4;cursor:not-allowed}.detail-origin{background:var(--md-surface-container-high);border-radius:var(--md-shape-2xl);flex-direction:column;gap:12px;padding:16px 18px;display:flex}.detail-origin-head{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.detail-origin-head .meta{font-size:var(--md-body-small);color:var(--md-on-surface-variant);flex:1;min-width:0}.detail-origin-title{font-family:var(--md-font-emphasized);font-size:var(--md-headline-small);letter-spacing:-.2px;color:var(--md-on-surface);font-weight:900;line-height:1.3}.detail-origin-body{font-size:var(--md-body-medium);color:var(--md-on-surface);white-space:pre-wrap;word-break:break-word;line-height:1.7}.detail-images{grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:8px;display:grid}.detail-images img{border-radius:var(--md-shape-lg);aspect-ratio:4/3;object-fit:cover;cursor:zoom-in;width:100%;transition:transform var(--md-duration-short-2) var(--md-ease-standard)}.detail-images img:active{transform:scale(.97)}.detail-like-bar{align-items:center;margin-top:12px;display:flex}.like-btn{border:1px solid var(--md-outline-variant);border-radius:var(--md-shape-full);color:var(--md-on-surface-variant);font-size:var(--md-label-medium);font-weight:700;font-family:var(--md-font-emphasized);cursor:pointer;transition:background var(--md-duration-short-2) var(--md-ease-standard), border-color var(--md-duration-short-2) var(--md-ease-standard), color var(--md-duration-short-2) var(--md-ease-standard), transform var(--md-duration-short-2) var(--md-ease-standard);background:0 0;align-items:center;gap:6px;padding:6px 14px;display:inline-flex}.like-btn:hover{background:var(--md-surface-container-high);border-color:var(--md-outline)}.like-btn:active{transform:scale(.94)}.like-btn.liked{background:var(--md-error-container);color:var(--md-on-error-container);border-color:#0000}.like-btn .ms{font-size:18px}.topic-foot .like-stat.liked,.topic-foot .like-stat .liked{color:var(--md-error)}.image-viewer-overlay{z-index:1200;animation:fade-in var(--md-duration-short-2) var(--md-ease-standard);background:#000000eb;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.image-viewer-img{object-fit:contain;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;border-radius:8px;max-width:100%;max-height:100%}.image-viewer-close{border-radius:var(--md-shape-full);color:#fff;cursor:pointer;width:44px;height:44px;transition:background var(--md-duration-short-2) var(--md-ease-standard);background:#ffffff24;border:none;place-items:center;display:inline-grid;position:absolute;top:16px;right:16px}.image-viewer-close:hover{background:#ffffff3d}.discuss{background:var(--md-surface-container-high);border-radius:var(--md-shape-2xl);flex-direction:column;min-height:280px;display:flex;overflow:hidden}.discuss-head{font-family:var(--md-font-emphasized);font-size:var(--md-title-medium);color:var(--md-on-surface);border-bottom:1px solid var(--md-outline-variant);align-items:center;gap:8px;padding:14px 18px;font-weight:700;display:flex}.discuss-body{flex-direction:column;flex:1;gap:8px;max-height:420px;padding:12px;display:flex;overflow-y:auto}.chat-time-divider{text-align:center;font-size:var(--md-label-small);color:var(--md-on-surface-variant);padding:4px 0}.chat-row{align-items:flex-start;gap:8px;max-width:calc(100% - 8px);display:flex}.chat-row.mine{flex-direction:row-reverse;align-self:flex-end}.chat-col{flex-direction:column;gap:1px;min-width:0;max-width:76%;display:flex}.chat-row.mine .chat-col{align-items:flex-end}.chat-name{font-size:var(--md-label-small);color:var(--md-on-surface-variant);padding:0 4px}.chat-bubble{border-radius:var(--md-shape-xl);font-size:var(--md-body-medium);word-break:break-word;white-space:pre-wrap;padding:10px 14px;line-height:1.55}.chat-row:not(.mine) .chat-bubble{background:var(--md-surface);color:var(--md-on-surface);border-bottom-left-radius:var(--md-shape-sm)}.chat-row.mine .chat-bubble{background:var(--md-primary);color:var(--md-on-primary);border-bottom-right-radius:var(--md-shape-sm)}.discuss-foot{border-top:1px solid var(--md-outline-variant);align-items:flex-end;gap:8px;padding:10px 12px 12px;display:flex}.discuss-foot .chat-input{background:var(--md-surface);border-radius:var(--md-shape-full);resize:none;min-height:44px;max-height:120px;font-family:var(--md-font);font-size:var(--md-body-medium);color:var(--md-on-surface);border:none;outline:none;flex:1;padding:11px 16px}.discuss-foot .chat-input:focus{box-shadow:0 0 0 2px var(--md-primary)}.ban-banner{background:var(--md-error-container);border-radius:var(--md-shape-md);font-size:var(--md-body-small);color:var(--md-on-error-container);text-align:center;margin:8px 0;padding:10px 14px}.auth-hero{border-radius:var(--md-shape-2xl);color:#fff;background:#1b3a2a;flex-direction:column;justify-content:flex-end;min-height:180px;padding:24px 20px;display:flex;position:relative;overflow:hidden}.auth-hero>.grainient-container{z-index:0;position:absolute;inset:0}.auth-hero>:not(.grainient-container){z-index:2;position:relative}.auth-hero:after{content:"";pointer-events:none;z-index:1;background:linear-gradient(#0000002e 0%,#00000005 35%,#00000059 100%);position:absolute;inset:0}.auth-hero:before{display:none}.auth-hero-title{font-family:var(--md-font-emphasized);letter-spacing:-.3px;text-shadow:0 2px 12px #00000059;font-size:28px;font-weight:900;line-height:1.2;position:relative}.auth-hero-sub{font-size:var(--md-body-small);opacity:.95;text-shadow:0 1px 8px #00000059;margin-top:6px;position:relative}.auth-form{background:var(--md-surface-container-high);border-radius:var(--md-shape-2xl);flex-direction:column;gap:14px;padding:20px;display:flex;position:relative}@media (width>=768px){.auth-screen{flex-direction:row;align-items:stretch;gap:16px;max-width:none;min-height:100vh;margin:0;padding:16px!important}.auth-screen .auth-hero{flex:0 0 42%;min-height:auto}.auth-screen .auth-form{flex:1;justify-content:center;min-width:0;max-width:none}}.auth-mode-tabs{background:var(--md-surface-container);border-radius:var(--md-shape-full);align-self:stretch;gap:4px;margin-bottom:4px;padding:4px;display:inline-flex}.auth-mode-tab{border-radius:var(--md-shape-full);font-family:var(--md-font-emphasized);font-size:var(--md-label-medium);color:var(--md-on-surface-variant);text-align:center;cursor:pointer;transition:background var(--md-duration-short-2) var(--md-ease-standard), color var(--md-duration-short-2) var(--md-ease-standard);flex:1;padding:8px 12px;font-weight:700}.auth-mode-tab.active{background:var(--md-secondary-container);color:var(--md-on-secondary-container)}.field{flex-direction:column;gap:6px;display:flex}.field-label{font-family:var(--md-font-emphasized);font-size:var(--md-label-medium);color:var(--md-on-surface-variant);letter-spacing:.1px;font-weight:700}.field-input{background:var(--md-surface);border:1px solid var(--md-outline-variant);border-radius:var(--md-shape-md);width:100%;font-size:var(--md-body-medium);color:var(--md-on-surface);transition:border-color var(--md-duration-short-2) var(--md-ease-standard), box-shadow var(--md-duration-short-2) var(--md-ease-standard);outline:none;padding:12px 14px}.field-input:focus{border-color:var(--md-primary);box-shadow:0 0 0 1px var(--md-primary)}.field-input::placeholder{color:var(--md-on-surface-variant);opacity:.7}.class-grid{grid-template-columns:repeat(6,1fr);gap:6px;display:grid}.class-chip{border-radius:var(--md-shape-sm);background:var(--md-surface);border:1px solid var(--md-outline-variant);color:var(--md-on-surface-variant);font-size:var(--md-label-small);cursor:pointer;text-align:center;transition:background var(--md-duration-short-2) var(--md-ease-standard), border-color var(--md-duration-short-2) var(--md-ease-standard), color var(--md-duration-short-2) var(--md-ease-standard);padding:8px 0;font-weight:600}.class-chip:hover{border-color:var(--md-primary);color:var(--md-primary)}.class-chip.active{background:var(--md-secondary-container);color:var(--md-on-secondary-container);border-color:#0000;font-weight:700}.class-chip-other{grid-column:span 2}.auth-agree{font-size:var(--md-body-small);color:var(--md-on-surface-variant);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:flex-start;gap:8px;line-height:1.55;display:flex}.auth-agree input[type=checkbox]{accent-color:var(--md-primary);flex-shrink:0;width:16px;height:16px;margin-top:3px}.auth-agree a{color:var(--md-primary);font-weight:700}.auth-link{text-align:center;font-size:var(--md-body-small);color:var(--md-on-surface-variant);margin-top:8px}.auth-link a{color:var(--md-primary);font-weight:700}.auth-copy{text-align:center;font-size:var(--md-label-small);color:var(--md-on-surface-variant);opacity:.7;margin-top:4px}.profile-card{background:var(--md-surface-container-high);border-radius:var(--md-shape-2xl);align-items:center;gap:14px;padding:18px 20px;display:flex}.profile-card .name{font-family:var(--md-font-emphasized);font-size:var(--md-title-large);color:var(--md-on-surface);font-weight:700}.profile-card .info{font-size:var(--md-body-small);color:var(--md-on-surface-variant);margin-top:2px}.settings-list{background:var(--md-surface-container-high);border-radius:var(--md-shape-2xl);flex-direction:column;padding:8px;display:flex}.setting-row{border-radius:var(--md-shape-full);cursor:pointer;transition:background var(--md-duration-short-2) var(--md-ease-standard);align-items:center;gap:14px;padding:14px 12px;display:flex}.setting-row:hover{background:rgba(65, 73, 65, var(--md-state-hover))}.setting-row .ms-icon{border-radius:var(--md-shape-full);background:var(--md-surface-container);width:40px;height:40px;color:var(--md-on-surface-variant);flex-shrink:0;place-items:center;display:grid}.setting-row .ms-icon .ms{font-size:22px}.setting-row .label{font-family:var(--md-font-emphasized);font-size:var(--md-title-medium);color:var(--md-on-surface);font-weight:700}.setting-row .desc{font-size:var(--md-body-small);color:var(--md-on-surface-variant);margin-top:2px}.setting-row .value{font-size:var(--md-body-small);color:var(--md-on-surface-variant);margin-left:auto}.setting-divider{background:var(--md-outline-variant);height:1px;margin:0 16px}.content-menu-wrap{flex-shrink:0;align-self:flex-start;position:relative}.content-menu-wrap.inline{margin-top:0;display:inline-flex}.content-menu-btn{border-radius:var(--md-shape-full);width:26px;height:26px;color:var(--md-on-surface-variant);transition:background var(--md-duration-short-2) var(--md-ease-standard);background:0 0;place-items:center;display:grid}.content-menu-btn:hover{background:rgba(65, 73, 65, var(--md-state-hover))}.content-menu-btn .ms{font-size:16px}.content-menu-pop{z-index:3000;background:var(--md-surface-container);border-radius:var(--md-shape-md);min-width:120px;box-shadow:var(--md-elev-2);animation:menuPop var(--md-duration-short-3) var(--md-ease-standard-decel);flex-direction:column;gap:1px;padding:4px;display:flex;position:fixed}@keyframes menuPop{0%{opacity:0;transform:translateY(-4px)scale(.95)}to{opacity:1;transform:translateY(0)scale(1)}}.menu-item{border-radius:var(--md-shape-sm);font-size:var(--md-label-large);color:var(--md-on-surface);transition:background var(--md-duration-short-1) var(--md-ease-standard);text-align:left;align-items:center;gap:10px;padding:10px 14px;font-weight:500;display:flex}.menu-item:hover{background:rgba(65, 73, 65, var(--md-state-hover))}.menu-item .ms{color:var(--md-on-surface-variant);font-size:20px}.menu-item.menu-revoke,.menu-item.menu-revoke .ms{color:var(--md-error)}.report-modal-overlay{z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn var(--md-duration-short-3) var(--md-ease-standard);background:#0006;place-items:center;padding:20px;display:grid;position:fixed;inset:0}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.report-modal-card{background:var(--md-surface-container-high);border-radius:var(--md-shape-2xl);width:100%;max-width:360px;box-shadow:var(--md-elev-3);animation:reportRise var(--md-duration-medium-2) var(--md-ease-standard-decel);padding:24px}@keyframes reportRise{0%{opacity:0;transform:translateY(16px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.report-modal-title{font-family:var(--md-font-emphasized);font-size:var(--md-title-large);color:var(--md-on-surface);margin-bottom:4px;font-weight:700}.report-modal-sub{font-size:var(--md-body-small);color:var(--md-on-surface-variant);margin-bottom:16px}.report-reasons{flex-direction:column;gap:6px;display:flex}.report-reason{border:1px solid var(--md-outline-variant);border-radius:var(--md-shape-full);font-size:var(--md-body-medium);color:var(--md-on-surface-variant);cursor:pointer;transition:all var(--md-duration-short-2) var(--md-ease-standard);align-items:center;gap:10px;padding:10px 14px;display:flex}.report-reason:hover{border-color:var(--md-primary)}.report-reason.active{border-color:var(--md-primary);color:var(--md-primary);background:#2e6a4514;font-weight:600}.report-reason input[type=radio]{accent-color:var(--md-primary);width:16px;height:16px}.report-modal-actions{justify-content:flex-end;gap:8px;margin-top:18px;display:flex}.confirm-modal-overlay{z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn var(--md-duration-short-3) var(--md-ease-standard);background:#0006;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.confirm-modal-card{background:var(--md-surface-container-high);border-radius:var(--md-shape-2xl);width:100%;max-width:320px;box-shadow:var(--md-elev-3);animation:reportRise var(--md-duration-medium-2) var(--md-ease-standard-decel);padding:24px;position:relative}.user-mgmt-close{border-radius:var(--md-shape-full);width:36px;height:36px;color:var(--md-on-surface-variant);cursor:pointer;transition:background var(--md-duration-short-2) var(--md-ease-standard);background:0 0;border:none;place-items:center;display:inline-grid;position:absolute;top:8px;right:8px}.user-mgmt-close:hover{background:var(--md-surface-container-highest)}.user-mgmt-close .ms{font-size:20px}.confirm-modal-title{font-family:var(--md-font-emphasized);font-size:var(--md-title-large);color:var(--md-on-surface);margin-bottom:8px;font-weight:700}.confirm-modal-body{font-size:var(--md-body-medium);color:var(--md-on-surface-variant);margin-bottom:20px;line-height:1.6}.confirm-modal-actions{justify-content:flex-end;gap:8px;display:flex}.doc-page{background:var(--md-surface);min-height:100vh;padding:16px}.doc-card{background:var(--md-surface-container);border-radius:var(--md-shape-2xl);width:100%;max-width:720px;color:var(--md-on-surface);font-size:var(--md-body-medium);margin:0 auto;padding:24px;line-height:1.85}.doc-back{color:var(--md-primary);font-size:var(--md-label-large);align-items:center;gap:4px;margin-bottom:16px;font-weight:700;display:inline-flex}.doc-title{font-family:var(--md-font-emphasized);font-size:var(--md-headline-medium);color:var(--md-on-surface);text-align:center;margin:0 0 10px;font-weight:900}.doc-meta{text-align:center;color:var(--md-on-surface-variant);font-size:var(--md-body-small);border-bottom:1px solid var(--md-outline-variant);margin:0 0 24px;padding-bottom:16px}.doc-lead{background:var(--md-secondary-container);color:var(--md-on-secondary-container);border-radius:var(--md-shape-md);font-size:var(--md-body-medium);margin:0 0 24px;padding:14px 18px;line-height:1.7}.doc-card h2{font-family:var(--md-font-emphasized);font-size:var(--md-title-large);color:var(--md-on-surface);margin:24px 0 12px;font-weight:700}.doc-card h3{font-family:var(--md-font-emphasized);font-size:var(--md-title-medium);color:var(--md-on-surface);margin:16px 0 8px;font-weight:700}.doc-card p{margin:8px 0;line-height:1.85}.doc-card ul.doc-list{margin:8px 0 8px 18px}.doc-card ul.doc-list li{margin:6px 0}.doc-inline-link{color:var(--md-primary);font-weight:600}.admin-list{flex-direction:column;gap:12px;display:flex}.admin-card{background:var(--md-surface-container-high);border-radius:var(--md-shape-2xl);padding:14px 16px}.admin-card-head{font-size:var(--md-label-small);color:var(--md-on-surface-variant);flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px;display:flex}.admin-card-head .tag-official{flex-shrink:0;margin:0}.admin-card-body{margin-bottom:10px}.admin-snapshot{background:var(--md-surface-container);border-radius:var(--md-shape-md);margin-bottom:8px;padding:10px 12px}.snap-title{font-family:var(--md-font-emphasized);color:var(--md-on-surface);margin-bottom:4px;font-weight:700}.snap-content{font-size:var(--md-body-small);color:var(--md-on-surface-variant);word-break:break-word;line-height:1.5}.snap-author{font-size:var(--md-label-small);color:var(--md-on-surface-variant);margin-top:6px}.snap-reason{font-size:var(--md-body-small);color:var(--md-on-surface-variant);margin-top:4px}.admin-card-foot{justify-content:flex-end;gap:8px;display:flex}.admin-user-card{background:var(--md-surface-container-high);border-radius:var(--md-shape-xl);align-items:center;gap:12px;padding:12px 14px;display:flex}.admin-user-info{flex:1;min-width:0}.admin-user-name{font-family:var(--md-font-emphasized);font-weight:700;font-size:var(--md-title-medium);flex-wrap:wrap;align-items:center;gap:4px;display:flex}.admin-user-meta{font-size:var(--md-label-small);color:var(--md-on-surface-variant);margin-top:2px}.scrollable{-ms-overflow-style:none;scrollbar-width:none;overflow-y:auto}.profile-hero{background:var(--md-surface-container-highest);border-radius:var(--md-shape-2xl);flex-direction:column;gap:14px;padding:16px;display:flex}.profile-hero-head{align-items:center;gap:14px;display:flex}.profile-hero-name{flex-direction:column;flex:1;gap:2px;min-width:0;padding-right:12px;display:flex}.profile-nickname{font-family:var(--md-font-emphasized);color:var(--md-on-surface);justify-content:space-between;align-items:center;gap:8px;font-size:22px;font-weight:700;line-height:1.2;display:flex}.profile-nickname-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.profile-nickname .tag-official,.profile-nickname .tag-subordinate{flex-shrink:0;justify-content:center;width:58px;height:34px;margin-left:0}.profile-class-mini{font-size:var(--md-body-small);color:var(--md-on-surface-variant)}.profile-fields{flex-direction:column;gap:6px;display:flex}.profile-field{background:var(--md-surface-container);border-radius:var(--md-shape-lg);align-items:center;gap:12px;padding:8px 12px;display:flex}.profile-field-label{font-size:var(--md-label-medium);color:var(--md-on-surface-variant);font-weight:700;font-family:var(--md-font-emphasized);flex-shrink:0;align-items:center;gap:6px;width:88px;display:flex}.profile-field-label .ms{font-size:18px}.profile-field-value{font-size:var(--md-body-medium);color:var(--md-on-surface);flex:1;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.profile-field-value.muted{color:var(--md-on-surface-variant);opacity:.7}.profile-field-value.with-toggle span{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.profile-field-value .profile-field-text{text-overflow:ellipsis;white-space:nowrap;flex:1;align-items:center;gap:4px;display:inline-flex;overflow:hidden}.profile-field-value .profile-field-ico{opacity:.6;font-size:16px}.profile-field-value.editing{flex-wrap:nowrap;justify-content:flex-start}.profile-field-value.editing .input-field{min-width:0;font-size:var(--md-body-medium);flex:1;padding:4px 8px}.icon-btn{width:28px;height:28px;color:var(--md-on-surface-variant);border-radius:var(--r-full);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;transition:background .15s,color .15s;display:inline-flex}.icon-btn:hover{color:var(--md-on-surface);background:#0000000f}.icon-btn:active{background:#0000001f}.profile-nickname .profile-field-value{min-width:0;font-size:22px;font-weight:700;font-family:var(--md-font-emphasized);flex:1;display:inline-flex}.profile-nickname .profile-field-value .profile-field-text{font-size:22px;font-weight:700}.profile-nickname .profile-field-value .input-field{min-width:0;font-size:22px;font-weight:700;font-family:var(--md-font-emphasized)}.profile-social{flex-direction:column;gap:8px;display:flex}.profile-social-head{font-size:var(--md-label-medium);color:var(--md-on-surface-variant);font-weight:700;font-family:var(--md-font-emphasized);align-items:center;gap:6px;display:flex}.profile-social-head .ms{font-size:18px}.profile-social-empty{font-size:var(--md-body-small);color:var(--md-on-surface-variant);opacity:.7;padding-left:2px}.profile-add-btn{border-radius:var(--md-shape-full);background:var(--md-primary);color:var(--md-on-primary);font-size:var(--md-label-medium);cursor:pointer;font-weight:700;font-family:var(--md-font-emphasized);box-shadow:var(--md-elev-1);border:none;align-items:center;gap:4px;margin-left:auto;padding:6px 16px;display:inline-flex}.profile-add-btn:hover{background:#3a7a55}.profile-add-btn:active{transform:scale(.96)}.profile-add-btn .ms{font-size:20px}.social-list{flex-direction:column;gap:6px;display:flex}.social-item{background:var(--md-surface-container);border-radius:var(--md-shape-full);align-items:center;gap:8px;padding:6px 10px;display:flex}.social-platform{font-size:var(--md-label-small);color:var(--md-primary);flex-shrink:0;font-weight:700}.social-account{font-size:var(--md-body-small);color:var(--md-on-surface);text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.social-remove{border-radius:var(--md-shape-full);width:20px;height:20px;color:var(--md-error);cursor:pointer;background:#b3261e1f;border:none;flex-shrink:0;place-items:center;display:grid}.social-remove .ms{font-size:14px}.md-switch{border-radius:var(--md-shape-full);border:2px solid var(--md-outline);background:var(--md-surface-container-highest);cursor:pointer;width:58px;height:34px;transition:background var(--md-duration-short-2) var(--md-ease-standard), border-color var(--md-duration-short-2) var(--md-ease-standard);flex-shrink:0;padding:0;position:relative}.md-switch.on{background:var(--md-primary);border-color:var(--md-primary)}.md-switch-thumb{border-radius:var(--md-shape-full);background:var(--md-outline);width:18px;height:18px;transition:transform var(--md-duration-short-2) var(--md-ease-standard), background var(--md-duration-short-2) var(--md-ease-standard), width var(--md-duration-short-2) var(--md-ease-standard), height var(--md-duration-short-2) var(--md-ease-standard);position:absolute;top:50%;left:4px;transform:translateY(-50%)}.md-switch.on .md-switch-thumb{background:var(--md-on-primary);width:26px;height:26px;transform:translate(22px,-50%)}.profile-bio{background:var(--md-surface-container-highest);border-radius:var(--md-shape-2xl);flex-direction:column;gap:12px;min-height:320px;padding:16px;display:flex}.profile-bio-head{justify-content:space-between;align-items:center;display:flex}.profile-bio-title{font-family:var(--md-font-emphasized);font-size:var(--md-title-medium);color:var(--md-on-surface);align-items:center;gap:6px;font-weight:700;display:flex}.profile-bio-body{font-size:var(--md-body-medium);color:var(--md-on-surface);flex:1;line-height:1.6;overflow-x:auto}.markdown-body{word-break:break-word}.markdown-body h1{font-family:var(--md-font-emphasized);font-size:var(--md-headline-small);color:var(--md-on-surface);margin:16px 0 10px;font-weight:700}.markdown-body h2{font-family:var(--md-font-emphasized);font-size:var(--md-title-large);color:var(--md-on-surface);margin:14px 0 8px;font-weight:700}.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{font-family:var(--md-font-emphasized);font-size:var(--md-title-medium);color:var(--md-on-surface);margin:12px 0 6px;font-weight:700}.markdown-body p{color:var(--md-on-surface);margin:8px 0;line-height:1.7}.markdown-body ul,.markdown-body ol{margin:8px 0;padding-left:24px}.markdown-body li{margin:4px 0}.markdown-body blockquote{border-left:4px solid var(--md-primary);background:var(--md-surface-container);border-radius:0 var(--md-shape-md) var(--md-shape-md) 0;color:var(--md-on-surface-variant);margin:10px 0;padding:10px 16px}.markdown-body pre{background:var(--md-surface-container-high);border-radius:var(--md-shape-lg);margin:10px 0;padding:14px;overflow-x:auto}.desktop-sidebar{background:var(--md-surface-container-highest);border-radius:0 var(--md-shape-2xl) var(--md-shape-2xl) 0;box-sizing:border-box;flex-direction:column;gap:12px;padding:16px 12px}.sidebar-user{background:var(--md-surface);border-radius:var(--md-shape-lg);flex-direction:row;align-items:center;gap:10px;padding:10px 12px;display:flex}.sidebar-user-name{min-width:0;font-family:var(--md-font-emphasized);font-size:var(--md-title-medium);color:var(--md-on-surface);text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:700;overflow:hidden}.sidebar-buttons{flex-direction:column;align-items:center;gap:8px;display:flex}.sidebar-btn{justify-content:center;width:208px;height:44px}.sidebar-circles{background:var(--md-surface);border-radius:var(--md-shape-2xl);flex-direction:column;flex:1;gap:10px;min-height:0;padding:12px;display:flex}.sidebar-circles-title{font-family:var(--md-font-emphasized);font-size:var(--md-title-small);color:var(--md-on-surface);align-items:center;gap:6px;padding:0 4px;font-weight:700;display:flex}.sidebar-circle-list{flex-direction:column;flex:1;gap:4px;display:flex;overflow-y:auto}.sidebar-circle-item{border-radius:var(--md-shape-lg);color:var(--md-on-surface-variant);font-size:var(--md-label-large);cursor:pointer;text-align:left;transition:background var(--md-duration-short-2) var(--md-ease-standard), color var(--md-duration-short-2) var(--md-ease-standard);background:0 0;border:none;align-items:center;gap:10px;padding:10px 12px;font-weight:500;display:flex}.sidebar-circle-item:hover{background:var(--md-surface-container-high);color:var(--md-on-surface)}.sidebar-circle-item:active{transform:scale(.98)}.sidebar-circle-item.active{background:var(--md-secondary-container);color:var(--md-on-secondary-container);font-weight:700}.sidebar-circle-item .ms{flex-shrink:0;font-size:20px}.markdown-body pre code{font-family:Roboto Mono,Consolas,monospace;font-size:var(--md-body-small);color:var(--md-on-surface);white-space:pre;background:0 0;padding:0}.markdown-body code{background:var(--md-surface-container-high);border-radius:var(--md-shape-xs);color:var(--md-error);padding:2px 6px;font-family:Roboto Mono,Consolas,monospace;font-size:.9em}.markdown-body hr{border:none;border-top:1px solid var(--md-outline-variant);margin:16px 0}.markdown-body a{color:var(--md-primary);word-break:break-all;text-decoration:underline}.markdown-body img{border-radius:var(--md-shape-md);max-width:100%;margin:8px 0}.markdown-body strong{font-weight:700}.markdown-body em{font-style:italic}.markdown-body li:has(input[type=checkbox]){align-items:center;gap:6px;margin-left:-20px;list-style:none;display:flex}.markdown-body input[type=checkbox]{accent-color:var(--md-primary);width:16px;height:16px}.markdown-body table{border-collapse:collapse;width:100%;font-size:var(--md-body-small);margin:12px 0;display:block;overflow-x:auto}.markdown-body th,.markdown-body td{border:1px solid var(--md-outline-variant);text-align:left;white-space:nowrap;padding:8px 12px}.markdown-body th{background:var(--md-surface-container-high);font-weight:700}.markdown-body tr:nth-child(2n) td{background:var(--md-surface-container)}.markdown-body del{color:var(--md-on-surface-variant);text-decoration:line-through}.modal-overlay{z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn var(--md-duration-short-3) var(--md-ease-standard);background:#0006;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal-card{background:var(--md-surface-container-high);border-radius:var(--md-shape-2xl);width:100%;max-width:360px;max-height:85vh;box-shadow:var(--md-elev-3);animation:reportRise var(--md-duration-medium-2) var(--md-ease-standard-decel);flex-direction:column;padding:20px;display:flex;overflow:hidden}.modal-card-large{max-width:380px}.modal-head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.modal-title{font-family:var(--md-font-emphasized);font-size:var(--md-title-large);color:var(--md-on-surface);margin:0;font-weight:700}.modal-body{flex-direction:column;flex:1;gap:10px;margin-bottom:12px;display:flex;overflow-y:auto}.modal-actions{justify-content:flex-end;gap:8px;display:flex}.social-grid{grid-template-columns:repeat(3,1fr);gap:8px;max-height:280px;margin-bottom:12px;display:grid;overflow-y:auto}.social-chip{border-radius:var(--md-shape-lg);background:var(--md-surface-container);color:var(--md-on-surface);font-size:var(--md-label-small);cursor:pointer;text-align:center;transition:background var(--md-duration-short-2) var(--md-ease-standard), transform var(--md-duration-short-2) var(--md-ease-standard);font-weight:500;font-family:var(--md-font);border:none;padding:10px 6px}.social-chip:hover{background:var(--md-surface-container-high)}.social-chip.active{background:var(--md-secondary-container);color:var(--md-on-secondary-container);font-weight:700}.social-chip:active{transform:scale(.95)}.bio-editor-card{width:calc(100% - 24px);max-width:none;height:calc(100% - 24px);max-height:none;padding:12px}.bio-editor-body{background:var(--md-surface);border:1px solid var(--md-outline-variant);border-radius:var(--md-shape-lg);flex:1;margin-bottom:12px;display:flex;overflow:hidden}.bio-line-numbers{text-align:right;background:var(--md-surface-container-low);border-right:1px solid var(--md-outline-variant);-webkit-user-select:none;user-select:none;flex-shrink:0;min-width:48px;padding:12px 8px 12px 0;overflow:hidden}.bio-line-num{font-family:Roboto Mono,Consolas,monospace;font-size:var(--md-body-small);color:var(--md-on-surface-variant);opacity:.6;line-height:1.6}.bio-code-input{min-width:0;color:var(--md-on-surface);font-family:Roboto Mono,Consolas,monospace;font-size:var(--md-body-small);resize:none;white-space:pre;tab-size:2;background:0 0;border:none;outline:none;flex:1;padding:12px 14px;line-height:1.6;overflow-x:auto}.bio-code-input:focus{outline:none}.bio-code-input::placeholder{color:var(--md-on-surface-variant);opacity:.5;font-family:var(--md-font);font-size:var(--md-body-small);font-style:normal}.scrollable::-webkit-scrollbar{width:0;height:0;display:none}.grainient-container{z-index:0;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.grainient-container canvas{display:block;width:100%!important;height:100%!important}
