:root{--bg:#f7f9fc;--card:#fff;--text:#0f1419;--muted:#536471;--accent:#891e2b;--accent-dark:#6f1722;--radius:12px;--nav-h:56px;--sidebar-left-w:275px;--sidebar-right-w:350px;--feed-max-w:600px;--shell-max-w:1280px;--shell-border:#eff3f4;--wase-header-content-min-h:44px;--wase-header-content-h:var(--wase-header-content-min-h);--wase-chrome-offset:var(--wase-header-h,calc(var(--wase-sat,0px) + var(--wase-header-content-h) + (2 * var(--wase-header-pad-y,10px))));--motion-fast:.12s;--motion-base:.18s;--motion-tab:.18s;--motion-sheet:.24s;--ease-standard:cubic-bezier(.2, .8, .2, 1);--ease-emphasized:cubic-bezier(.2, 0, 0, 1)}*,:before,:after{box-sizing:border-box}html,body{background:var(--bg);margin:0}body.shell-desktop{background:var(--bg);color:var(--text);padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom,0px));margin:0;font-family:Hiragino Sans,Hiragino Kaku Gothic ProN,Noto Sans JP,Meiryo,sans-serif}body.shell-desktop.shell-hide-bottom-nav{padding-bottom:0}@media (width<=1023px){body.shell-desktop.shell-hide-bottom-nav{overflow:hidden}}:is(body.shell-hide-bottom-nav .bottom-nav,body.shell-hide-bottom-nav .shell-hide-on-desktop:has(.bottom-nav)){pointer-events:none!important;visibility:hidden!important;display:none!important}#root{background:var(--bg);min-height:100dvh}@media (width<=1023px){#root{min-height:calc(100vh - var(--nav-h) - env(safe-area-inset-bottom,0px));min-height:calc(100dvh - var(--nav-h) - env(safe-area-inset-bottom,0px))}body.shell-hide-bottom-nav #root,html.shell-hide-bottom-nav #root{min-height:100dvh}}a{color:inherit}button{font-family:inherit}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){:root{--motion-fast:1ms;--motion-base:1ms;--motion-tab:1ms;--motion-sheet:1ms}}.app-shell{min-height:100vh}@media (width<=1023px){.app-shell{min-height:calc(100vh - var(--nav-h) - env(safe-area-inset-bottom,0px));min-height:calc(100dvh - var(--nav-h) - env(safe-area-inset-bottom,0px))}body.shell-hide-bottom-nav .app-shell,html.shell-hide-bottom-nav .app-shell{min-height:100dvh}}.sidebar-left,.sidebar-right{display:none}.main-column{background:var(--bg,#f7f9fc);width:100%;min-width:0}.shell-hide-on-desktop{display:block}.bottom-nav{z-index:200;background:var(--card,#fff);height:calc(var(--nav-h) + env(safe-area-inset-bottom,0px));padding-top:4px;padding-bottom:env(safe-area-inset-bottom,0px);border-top:1px solid #e5e5e5;justify-content:space-around;display:flex;position:fixed;bottom:0;left:0;right:0}.bottom-nav .nav-item{color:#666;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;flex:1;align-items:center;gap:2px;padding:2px 0;font-size:8px;text-decoration:none;display:flex}.bottom-nav .nav-item span{text-overflow:ellipsis;white-space:nowrap;max-width:64px;overflow:hidden}.nav-item.is-active,.nav-item[aria-current=page]{color:var(--accent,#891e2b)}.nav-item svg{fill:currentColor;width:24px;height:24px}.sidebar-left-inner{flex-direction:column;min-height:100%;padding:4px 0 20px;display:flex;position:relative}.sidebar-brand{color:var(--text,#0f1419);border-radius:999px;align-items:center;gap:12px;width:100%;max-width:280px;margin:0 0 4px;padding:12px 14px;font-size:21px;font-weight:800;text-decoration:none;transition:background .15s;display:inline-flex}.sidebar-brand:hover{background:#0f14190f}.sidebar-brand__mark{background:var(--accent,#891e2b);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:30px;height:30px;font-size:15px;line-height:1;display:flex}.sidebar-nav{flex-direction:column;gap:0;width:100%;max-width:280px;margin:0;padding:0;list-style:none;display:flex}.sidebar-nav>li{width:100%}.sidebar-nav__item{width:100%;max-width:280px;min-height:52px;color:var(--text,#0f1419);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:999px;align-items:center;gap:20px;padding:12px 14px;font-family:inherit;font-size:20px;font-weight:400;line-height:1.2;text-decoration:none;transition:background .15s,color .15s;display:inline-flex;position:relative}.sidebar-nav__item:hover,.sidebar-nav__item:focus-visible{background:#0f14190f}.sidebar-nav__item.is-active{font-weight:700}.sidebar-nav__item svg{fill:currentColor;flex-shrink:0;width:24px;height:24px}.sidebar-nav__label{white-space:nowrap;letter-spacing:-.01em}.sidebar-nav__badge{background:var(--accent,#891e2b);color:#fff;text-align:center;border-radius:999px;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;line-height:18px;position:absolute;top:10px;left:38px}.sidebar-nav__compose{background:var(--accent,#891e2b);color:#fff;cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;width:100%;max-width:280px;min-height:52px;margin:16px 0 0;padding:0 24px;font-family:inherit;font-size:17px;font-weight:700;text-decoration:none;transition:background .15s,transform .15s;display:inline-flex;box-shadow:0 4px 14px #891e2b38}.sidebar-nav__compose:hover,.sidebar-nav__compose:focus-visible{background:var(--accent-dark,#6f1722)}.sidebar-nav__compose svg{fill:currentColor;flex-shrink:0;width:24px;height:24px;margin-right:8px}.sidebar-user{width:100%;max-width:280px;margin-top:auto;padding:12px 0 0}.sidebar-user--guest{flex-direction:column;gap:0;display:flex}.sidebar-user__link{color:inherit;border-radius:999px;align-items:center;gap:12px;padding:12px;text-decoration:none;transition:background .15s;display:flex}.sidebar-user__link:hover,.sidebar-user__link:focus-visible{background:#0f14190f}.sidebar-user__avatar{width:40px;height:40px;color:var(--accent,#891e2b);background:linear-gradient(135deg,#f7edf0,#e8c4ca);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:800;display:flex;overflow:hidden}.sidebar-user__meta{min-width:0}.sidebar-user__name{white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:700;display:block;overflow:hidden}.sidebar-user__handle{color:var(--muted,#536471);white-space:nowrap;text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.sidebar-right-inner{padding:12px 0 24px}.widget-card{border:1px solid var(--shell-border);background:#f7f9f9;border-radius:16px;margin-bottom:16px;padding:16px}.widget-card__title{color:var(--text,#0f1419);margin:0 0 12px;font-size:20px;font-weight:800}.widget-card__lead{color:var(--muted,#536471);margin:0;font-size:14px;line-height:1.55}.site-header{z-index:1000;background:var(--accent,#891e2b);color:#fff;border-bottom:1px solid var(--accent-dark,#6f1722);padding-left:10px;padding-right:10px}.site-header--no-title{padding-left:8px;padding-right:8px}html.chrome-conversation{--wase-chrome-offset:var(--wase-sat,0px)}.shell-header-row{min-height:var(--wase-header-content-min-h,44px);justify-content:space-between;align-items:center;gap:8px;width:100%;display:flex}.shell-header-start,.shell-header-end{flex-shrink:0;align-items:center;min-width:44px;display:flex}.shell-header-end{justify-content:flex-end;gap:4px;min-width:92px}.site-header--detail .shell-header-end{min-width:44px}.shell-header-back{color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;min-height:44px;margin:0;padding:0;font-family:inherit;font-size:22px;line-height:1;display:inline-flex}.shell-header-title{letter-spacing:.02em;text-align:center;color:#fff;flex:1;min-width:0;margin:0;font-size:18px;font-weight:800}.site-header--no-title .shell-header-row{gap:12px}.shell-header-profile,.shell-header-dm,.shell-header-notify{color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;min-width:44px;height:44px;min-height:44px;padding:0;text-decoration:none;display:inline-flex}.shell-header-avatar{text-transform:uppercase;background:#fff3;border:2px solid #ffffffa6;border-radius:50%;justify-content:center;align-items:center;width:34px;height:34px;font-size:14px;font-weight:800;line-height:1;display:flex;overflow:hidden}.shell-header-dm,.shell-header-notify{position:relative}.shell-header-dm svg,.shell-header-notify svg{fill:currentColor;display:block}.dm-nav-badge,.header-notify-badge{color:#fff;text-align:center;background:#e53935;border-radius:999px;min-width:16px;height:16px;padding:0 4px;font-size:10px;font-weight:700;line-height:16px;position:absolute;top:6px;right:4px}.browse-mode-banner{color:#5c4b1f;background:#fff8e6;border-bottom:1px solid #f0e0a8;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;font-size:13px;line-height:1.45;display:flex}.browse-mode-banner a{color:var(--accent,#891e2b);flex-shrink:0;font-weight:700;text-decoration:none}.main-inner{max-width:672px;margin:0 auto;padding:12px}.tab-keep-alive-stack{isolation:isolate;background:var(--bg,#f7f9fc);position:relative;overflow:hidden;transform:translateZ(0)}.tab-keep-alive-root{position:relative}.tab-keep-alive-stack.is-collapsed{display:none}.tab-keep-alive-stack.is-back-underlay{z-index:0;pointer-events:none;width:100%;max-height:100%;display:block;position:absolute;top:0;left:0;right:0;overflow:hidden}.tab-keep-alive-pane{opacity:0;visibility:hidden;pointer-events:none;z-index:0;backface-visibility:hidden;background:var(--bg,#f7f9fc);transition:opacity .22s,visibility 0s linear .22s;transform:translateZ(0)}.tab-keep-alive-pane.is-active{z-index:2;opacity:1;visibility:visible;pointer-events:auto;transition:opacity .22s,visibility linear;position:relative}.tab-keep-alive-pane.is-leaving{z-index:1;opacity:0;visibility:visible;pointer-events:none;width:100%;transition:opacity .22s,visibility 0s linear .22s;position:absolute;inset:0;overflow:hidden}.tab-keep-alive-pane:not(.is-active):not(.is-leaving){width:100%;position:absolute;inset:0;overflow:hidden}.tab-keep-alive-stack.is-instant .tab-keep-alive-pane,.tab-keep-alive-stack.is-instant .tab-keep-alive-pane.is-active,.tab-keep-alive-stack.is-instant .tab-keep-alive-pane.is-leaving{transition:none}.tab-keep-alive-outlet.is-hidden{display:none}@media (prefers-reduced-motion:reduce){.tab-keep-alive-pane,.tab-keep-alive-pane.is-active,.tab-keep-alive-pane.is-leaving{transition:none}}@keyframes wase-detail-push-in{0%{opacity:.98;transform:translate(120px)}to{opacity:1;transform:translate(0,0)}}@keyframes wase-detail-push-out{0%{opacity:1;transform:translate(0,0)}to{opacity:.98;transform:translate(100vw)}}html.wase-detail-push,html.wase-detail-pop{overflow-x:clip}html.wase-detail-push .tab-keep-alive-outlet:not(.is-hidden){animation:.4s cubic-bezier(.33,0,.2,1) both wase-detail-push-in}html.wase-detail-pop .tab-keep-alive-outlet:not(.is-hidden){z-index:1;background:var(--bg,#f7f9fc);animation:.4s cubic-bezier(.33,0,.2,1) both wase-detail-push-out;position:relative}.tab-keep-alive-stack.is-back-underlay .tab-keep-alive-pane.is-back-underlay{opacity:1;visibility:visible;pointer-events:none;transform:translate3d(0, var(--wase-back-underlay-shift,0px), 0);transition:none}@media (prefers-reduced-motion:reduce){html.wase-detail-push .tab-keep-alive-outlet:not(.is-hidden),html.wase-detail-pop .tab-keep-alive-outlet:not(.is-hidden){animation:none}}.spa-placeholder{background:var(--card,#fff);border-radius:var(--radius);border:1px solid #eee;margin:12px 4px;padding:16px}.spa-placeholder h2{margin:0 0 8px;font-size:18px;font-weight:800}.spa-placeholder p{color:var(--muted,#536471);margin:0;font-size:14px;line-height:1.55}.spa-placeholder__note{color:#888!important;margin-top:12px!important;font-size:12px!important}@media (width>=1024px){body.shell-desktop{padding-bottom:0}.app-shell{grid-template-columns:var(--sidebar-left-w) minmax(0, var(--feed-max-w)) minmax(0, var(--sidebar-right-w));width:100%;min-height:100vh;max-width:var(--shell-max-w);justify-content:center;gap:0;margin:0 auto;display:grid}.sidebar-left,.sidebar-right{overscroll-behavior:contain;align-self:start;height:100vh;display:block;position:sticky;top:0;overflow-y:auto}.sidebar-left{min-width:var(--sidebar-left-w);width:var(--sidebar-left-w);padding:0 8px 0 12px;overflow-x:hidden}.sidebar-left-inner{padding-top:8px}.sidebar-brand,.sidebar-nav,.sidebar-nav__item,.sidebar-nav__compose,.sidebar-user{max-width:100%}.sidebar-nav__item{gap:14px;min-height:48px;padding:10px 12px;font-size:17px}.sidebar-nav__label,.sidebar-brand__text,.sidebar-nav__compose-label{display:inline}.sidebar-nav__compose{margin-top:16px;font-size:16px}.sidebar-nav__compose-label{white-space:nowrap}.sidebar-brand{gap:10px;padding:10px 12px;font-size:19px}.sidebar-right{padding:0 16px 0 12px}.main-column{border-left:1px solid var(--shell-border);border-right:1px solid var(--shell-border);background:#fff;max-width:none}.shell-hide-on-desktop{display:none!important}.main-column .main-inner{max-width:none;margin:0;padding:16px}.mobile-only,.account-drawer{display:none!important}}body.account-drawer-open{overflow:hidden}.account-drawer{z-index:2400;pointer-events:none;visibility:hidden;position:fixed;inset:0}.account-drawer.is-open{pointer-events:auto;visibility:visible}.account-drawer__backdrop{opacity:0;cursor:pointer;background:#0f141973;border:none;margin:0;padding:0;transition:opacity .22s;position:absolute;inset:0}.account-drawer.is-open .account-drawer__backdrop{opacity:1}.account-drawer__panel{-webkit-overflow-scrolling:touch;width:min(320px,86vw);max-width:100%;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);background:#fff;flex-direction:column;transition:transform .25s;display:flex;position:absolute;top:0;bottom:0;left:0;overflow-y:auto;transform:translate(-105%);box-shadow:8px 0 24px #0000001f}.account-drawer.is-open .account-drawer__panel{transform:translate(0)}.account-drawer__header{border-bottom:1px solid #eff3f4;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:12px 12px 8px 16px;display:flex}.account-drawer__title{color:#0f1419;margin:0;font-size:17px;font-weight:800}.account-drawer__close{color:#0f1419;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:28px;line-height:1;display:inline-flex}.account-drawer__close:hover,.account-drawer__close:focus-visible{background:#f7f9f9}.account-menu{padding-bottom:24px}.account-menu__identity{text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#fff;border:none;border-bottom:1px solid #eff3f4;align-items:center;gap:12px;width:100%;margin:0;padding:16px;font-family:inherit;display:flex}.account-menu__identity:hover,.account-menu__identity:focus-visible{background:#f7f9f9}.account-menu__avatar{background:var(--accent,#891e2b);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;font-size:18px;font-weight:800;display:flex}.account-menu__meta{flex-direction:column;gap:2px;min-width:0;display:flex}.account-menu__name{color:#0f1419;text-overflow:ellipsis;white-space:nowrap;font-size:16px;font-weight:800;overflow:hidden}.account-menu__handle{color:#536471;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500;overflow:hidden}.account-menu .more-link{justify-content:space-between;align-items:center;gap:8px;display:flex}.account-menu__badge{background:var(--accent,#891e2b);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-weight:700;display:inline-flex}.more-page-lead{color:#536471;margin:0 16px 12px;font-size:13px;line-height:1.5}.more-page-foot{margin:24px 16px;font-size:14px}.more-page-foot a{color:var(--accent,#891e2b);font-weight:600;text-decoration:none}:root{--tweet-border:#eff3f4;--tweet-text:#0f1419;--tweet-muted:#536471;--tweet-like:#f91880;--tweet-like-bg:#f918801a;--tweet-quote:#00ba7c;--tweet-quote-bg:#00ba7c1a;--tweet-comment:#1d9bf0;--tweet-comment-bg:#1d9bf01a;--tweet-bookmark:#891e2b;--tweet-bookmark-bg:#891e2b1a;--tweet-report:#f4212e;--tweet-report-bg:#f4212e1a;--tweet-avatar-size:40px}.timeline-list{border:1px solid var(--tweet-border);background:#fff;border-radius:0;overflow:hidden}.tweet-card{border-bottom:1px solid var(--tweet-border);background:#fff;padding:10px 14px;transition:background .15s}.tweet-card:last-child{border-bottom:none}.tweet-card:active{background:#f7f9f9}.tweet-card--highlight{animation:2s tweet-highlight}@keyframes tweet-highlight{0%,to{background:#fff}15%,40%{background:#fff8e6}}.tweet-layout{grid-template-columns:var(--tweet-avatar-size) minmax(0, 1fr);align-items:start;gap:10px;display:grid}.tweet-avatar{width:var(--tweet-avatar-size);height:var(--tweet-avatar-size);color:#891e2b;background:linear-gradient(135deg,#f7edf0,#e8c4ca);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:17px;font-weight:800;line-height:1;text-decoration:none;display:flex;overflow:hidden}.tweet-avatar .user-avatar--image{object-fit:cover;background:0 0;width:100%;height:100%}.tweet-main{min-width:0}.tweet-header{justify-content:space-between;align-items:flex-start;gap:8px;margin-bottom:2px;display:flex}.tweet-identity{flex-wrap:wrap;align-items:baseline;gap:4px;min-width:0;line-height:1.3;display:flex}.tweet-author{color:var(--tweet-text);white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:15px;font-weight:700;text-decoration:none;overflow:hidden}.tweet-handle{color:var(--tweet-muted);white-space:nowrap;text-overflow:ellipsis;font-size:14px;text-decoration:none;overflow:hidden}.tweet-meta-dot{color:var(--tweet-muted);-webkit-user-select:none;user-select:none;font-size:14px}.tweet-time{color:var(--tweet-muted);white-space:nowrap;font-size:14px}.tweet-author:hover,.tweet-handle:hover{color:var(--tweet-text);text-decoration:underline}.tweet-header-menu{flex-shrink:0;align-items:center;gap:4px;display:flex}.tweet-menu-form{margin:0}.tweet-menu-btn{min-width:36px;min-height:36px;color:var(--tweet-muted);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:999px;justify-content:center;align-items:center;padding:6px 10px;font-size:12px;font-weight:600;display:inline-flex}.tweet-menu-btn--icon{color:var(--tweet-muted);padding:8px}.tweet-menu-btn--icon .sf-icon{width:18px;height:18px;display:block}.tweet-menu-btn--icon.is-bookmarked{color:var(--tweet-bookmark)}.tweet-menu-btn:hover{color:var(--tweet-text);background:#0f14190f}.tweet-menu-btn--danger:hover{color:#f4212e;background:#f4212e14}.ugc-report-form{margin:0;display:inline-flex}.ugc-report-form--action{justify-content:stretch;width:100%}.btn-ugc-report{color:var(--tweet-report);cursor:pointer;touch-action:manipulation;background:0 0;border:none;border-radius:8px;align-items:center;gap:4px;min-height:32px;padding:6px 8px;font-family:inherit;font-size:12px;font-weight:600;line-height:1;display:inline-flex}.btn-ugc-report .sf-icon{width:14px;height:14px}.btn-ugc-report__label{letter-spacing:.02em}.btn-ugc-report:hover,.btn-ugc-report:focus-visible{background:var(--tweet-report-bg);color:var(--tweet-report)}.mention-link{color:#891e2b;font-weight:600;text-decoration:none}.mention-link:hover{text-decoration:underline}.tweet-tags{flex-wrap:wrap;align-items:center;gap:6px;margin:2px 0 6px;display:flex}.course-tag{color:#891e2b;background:#f7edf0;border-radius:4px;padding:2px 8px;font-size:12px;font-weight:700;text-decoration:none;display:inline-block}.course-tag:hover{background:#efe0e4}.tag-faculty{color:var(--tweet-muted);background:#f0f3f4;border-radius:4px;padding:2px 6px;font-size:11px;font-weight:600}.tweet-professor{color:var(--tweet-muted);margin:0;font-size:12px}.tweet-body{color:var(--tweet-text);white-space:pre-wrap;word-wrap:break-word;overflow-wrap:anywhere;margin:0 0 6px;font-size:15px;line-height:1.5}.tweet-media{border:1px solid var(--tweet-border);cursor:pointer;width:100%;font:inherit;-webkit-tap-highlight-color:transparent;background:0 0;border-radius:16px;margin:0 0 8px;padding:0;display:block;overflow:hidden}.tweet-image{object-fit:cover;pointer-events:none;width:100%;max-height:510px;display:block}.image-lightbox{z-index:600;padding:calc(12px + env(safe-area-inset-top,0px)) calc(12px + env(safe-area-inset-right,0px)) calc(12px + env(safe-area-inset-bottom,0px)) calc(12px + env(safe-area-inset-left,0px));background:#000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.image-lightbox__backdrop{cursor:pointer;background:0 0;border:none;padding:0;position:absolute;inset:0}.image-lightbox__stage{z-index:1;pointer-events:none;justify-content:center;align-items:center;width:100%;max-width:100%;height:100%;max-height:100%;display:flex;position:relative}.image-lightbox__img{object-fit:contain;pointer-events:auto;width:auto;max-width:100%;height:auto;max-height:100%;display:block}.image-lightbox__close{top:calc(8px + env(safe-area-inset-top,0px));right:calc(8px + env(safe-area-inset-right,0px));z-index:2;color:#fff;cursor:pointer;pointer-events:auto;background:#ffffff29;border:none;border-radius:999px;width:40px;height:40px;font-family:inherit;font-size:26px;line-height:1;position:absolute}.image-lightbox__close:hover,.image-lightbox__close:focus-visible{background:#ffffff47}.tweet-actionbar{justify-content:space-between;align-items:center;gap:0;width:100%;max-width:425px;margin:0;padding-top:0;display:flex}.tweet-action-form{flex:1;justify-content:stretch;align-items:stretch;min-width:0;margin:0;display:flex}.tweet-action-form .tweet-action{width:100%}.tweet-action{min-width:0;min-height:32px;color:var(--tweet-muted);cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-user-select:none;user-select:none;background:0 0;border:none;border-radius:999px;flex-direction:row;flex:1;justify-content:flex-start;align-items:center;gap:4px;padding:0 4px;font-family:inherit;font-size:13px;font-weight:500;text-decoration:none;transition:color .15s,background .15s;display:inline-flex}.tweet-action .sf-icon{flex-shrink:0;width:18px;height:18px;display:block}.tweet-action-label{display:none}.tweet-action-meta{align-items:center;gap:4px;min-width:0;display:inline-flex}.tweet-action-count{font-variant-numeric:tabular-nums;min-width:0;font-size:13px;font-weight:500;line-height:1}.tweet-action-count:empty{display:none}.tweet-action--comment,.tweet-action--quote,.tweet-action--like,.tweet-action--likers,.tweet-action--share,.tweet-action--view,.tweet-action--report{position:relative}.tweet-action-cluster{flex:1;align-items:center;min-width:0;display:inline-flex}.tweet-action-cluster .tweet-action--like{flex:none;padding-right:2px}.tweet-action-cluster .tweet-action--likers{flex:0 auto;min-width:28px;padding-left:2px}.tweet-action-cluster .tweet-action-count:empty{display:none}.tweet-action--static{cursor:default;pointer-events:none}.tweet-action--spacer{visibility:hidden;pointer-events:none;min-height:36px}.tweet-action--comment:hover,.tweet-action--comment:focus-visible{color:var(--tweet-comment);background:var(--tweet-comment-bg)}.tweet-action--quote:hover,.tweet-action--quote:focus-visible{color:var(--tweet-quote);background:var(--tweet-quote-bg)}.tweet-action--share:hover,.tweet-action--share:focus-visible{color:var(--tweet-comment);background:var(--tweet-comment-bg)}.tweet-action--like:hover,.tweet-action--like:focus-visible,.tweet-action--likers:hover,.tweet-action--likers:focus-visible{color:var(--tweet-like);background:var(--tweet-like-bg)}.tweet-action--like.is-liked,.tweet-action--likers.is-liked{color:var(--tweet-like)}.tweet-action--report:hover,.tweet-action--report:focus-visible{color:var(--tweet-report);background:var(--tweet-report-bg)}.tweet-action--report{color:#8b5a5a}.tweet-overflow{position:relative}.tweet-overflow>summary{list-style:none}.tweet-overflow>summary::-webkit-details-marker{display:none}.tweet-overflow[open]>.tweet-overflow-menu{display:block}.tweet-overflow-menu{z-index:20;border:1px solid var(--tweet-border);background:#fff;border-radius:12px;min-width:168px;padding:6px 0;position:absolute;top:calc(100% + 4px);right:0;box-shadow:0 4px 16px #0f14191f}.tweet-overflow-heading{color:var(--tweet-muted);margin:0;padding:6px 14px 4px;font-size:12px;font-weight:700}.tweet-overflow-item{width:100%;color:var(--tweet-report);cursor:pointer;box-sizing:border-box;text-align:left;background:0 0;border:none;align-items:center;gap:10px;padding:10px 14px;font-family:inherit;font-size:14px;font-weight:600;text-decoration:none;display:flex}.tweet-overflow-item:disabled{opacity:.55;cursor:not-allowed}.tweet-overflow-item--muted{color:var(--tweet-muted);border-top:1px solid var(--tweet-border);margin-top:4px;font-weight:600}.tweet-overflow-item:hover,.tweet-overflow-item:focus-visible{background:var(--tweet-report-bg)}.tweet-overflow-item--muted:hover,.tweet-overflow-item--muted:focus-visible{background:#f7f9f9}.tweet-overflow-item .sf-icon{width:16px;height:16px}@media (width>=420px){.tweet-action{gap:6px;min-height:32px;padding:0 8px}}.quoted-post-card{border:1px solid var(--tweet-border);color:inherit;background:#fff;border-radius:16px;margin:0 0 8px;padding:10px;text-decoration:none;transition:background .15s;display:block}.quoted-post-card:hover{background:#f7f9f9}.quoted-post-card--unavailable{pointer-events:none;background:#f7f9f9;border-style:dashed}.quoted-post-header{flex-wrap:wrap;align-items:baseline;gap:6px;margin-bottom:4px;display:flex}.quoted-post-author{color:var(--tweet-text);font-size:13px;font-weight:700}.quoted-post-handle{color:var(--tweet-muted);font-size:13px}.quoted-post-tag{color:#891e2b;margin-bottom:4px;font-size:12px;display:inline-block}.quoted-post-body{color:var(--tweet-text);white-space:pre-wrap;margin:0;font-size:14px;line-height:1.45}.quoted-post-thumb{object-fit:cover;border-radius:12px;width:100%;max-height:160px;margin-top:8px;display:block}.quoted-post-unavailable{color:var(--tweet-muted);margin:0;font-size:13px}.timeline-comments{border-top:1px solid var(--tweet-border);margin-top:8px;padding-top:8px;display:none}.timeline-comments.is-open{display:block}.comment-list{flex-direction:column;gap:10px;margin:0 0 10px;display:flex}.timeline-comment{background:#f7f9f9;border-radius:12px;padding:10px 12px}.comment-meta{color:var(--tweet-muted);flex-wrap:wrap;align-items:center;gap:4px;margin:0 0 4px;font-size:12px;display:flex}.comment-body{white-space:pre-wrap;color:var(--tweet-text);margin:0;font-size:14px;line-height:1.45}.comment-empty,.comment-login-hint{color:var(--tweet-muted);margin:0 0 10px;font-size:13px}.comment-login-hint a{color:#891e2b;font-weight:600}.comment-form{align-items:center;gap:8px;display:flex}.comment-form input{border:1px solid var(--tweet-border);background:#fff;border-radius:999px;flex:1;min-width:0;height:40px;padding:0 14px;font-family:inherit;font-size:14px}.comment-form input:focus{border-color:#891e2b;outline:2px solid #891e2b59}.comment-form button{color:#fff;cursor:pointer;background:#891e2b;border:none;border-radius:999px;flex-shrink:0;height:36px;padding:0 16px;font-family:inherit;font-size:13px;font-weight:700}.btn-comment-delete{color:#891e2b;cursor:pointer;background:0 0;border:none;margin-left:auto;padding:0;font-size:11px;font-weight:600}.comment-delete-form{margin:0 0 0 auto}.timeline-ad-slot{text-align:center;background:0 0;min-height:50px;margin:0;padding:12px 0 4px}.tweet-card--ad{background:#fff}.tweet-layout--ad{align-items:flex-start}.tweet-avatar--ad{color:#536471;letter-spacing:.02em;background:#eff3f4;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:11px;font-weight:800;display:inline-flex}.tweet-ad-slot{border:1px solid var(--tweet-border);background:#f7f9f9;border-radius:12px;width:100%;min-height:50px;overflow:hidden}@media (width>=600px){.tweet-card{padding:12px 16px}.tweet-card:hover{background:#fafafa}.tweet-body{font-size:16px}}.timeline-home .home-feed{background:#fff;border:none;border-radius:0;overflow:visible}.timeline-home .home-feed .tweet-card{border-bottom:1px solid var(--tweet-border,#eff3f4);box-shadow:none;transform-origin:50%;transition:background var(--motion-fast) var(--ease-standard), transform var(--motion-fast) var(--ease-standard);padding:10px 12px 8px}.timeline-home .home-feed .tweet-card:active{transform:scale(.99)}.timeline-home .home-feed .tweet-card:last-child{border-bottom:1px solid var(--tweet-border,#eff3f4)}.timeline-home .home-feed .tweet-layout{gap:10px}.timeline-home .home-feed .tweet-author{font-weight:800}.timeline-home .home-feed .tweet-handle,.timeline-home .home-feed .tweet-time,.timeline-home .home-feed .tweet-time--detail-link,.timeline-home .home-feed .tweet-meta-dot{color:var(--tweet-muted,#536471);font-size:13px;font-weight:400}.timeline-home .home-feed .tweet-tags{gap:4px;margin:1px 0 4px}.timeline-home .home-feed .course-tag{border-radius:4px;padding:1px 6px;font-size:11px;font-weight:600}.timeline-home .home-feed .tag-faculty{padding:1px 6px;font-size:11px;font-weight:500}.timeline-home .home-feed .tweet-professor{font-size:11px}.timeline-home .home-feed .tweet-body{margin:0 0 8px;font-size:15px;line-height:1.45}.timeline-home .home-feed .tweet-media{border-radius:12px;margin:0 0 8px}.timeline-home .home-feed .tweet-actionbar{max-width:100%;margin-top:2px}.timeline-home .home-feed.is-enter{animation:wase-home-feed-in var(--motion-tab) var(--ease-standard)}.timeline-home .tweet-action .sf-icon{transform-origin:50%;transition:transform var(--motion-fast) var(--ease-standard)}.timeline-home .tweet-action:active .sf-icon{transform:scale(.92)}.timeline-home .tweet-action--like.is-popping .sf-icon,.timeline-home .tweet-menu-btn--icon.is-popping .sf-icon{animation:wase-home-pop var(--motion-fast) var(--ease-standard)}.timeline-home .tweet-menu-btn--icon{transition:color var(--motion-fast) var(--ease-standard)}@keyframes wase-home-feed-in{0%{opacity:.55;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes wase-home-pop{0%{transform:scale(1)}40%{transform:scale(1.15)}to{transform:scale(1)}}@media (prefers-reduced-motion:reduce){.timeline-home .home-feed.is-enter,.timeline-home .tweet-action--like.is-popping .sf-icon,.timeline-home .tweet-menu-btn--icon.is-popping .sf-icon{animation:none}.timeline-home .home-feed .tweet-card,.timeline-home .tweet-action .sf-icon,.timeline-home .tweet-menu-btn--icon{transition:none}.timeline-home .home-feed .tweet-card:active,.timeline-home .tweet-action:active .sf-icon{transform:none}}.timeline-home .empty-message{margin:20px 12px}.timeline-home .feed-scope-hint{margin:8px 12px 0}@media (width>=600px){.timeline-home .home-feed .tweet-card{padding:12px 16px 10px}}.post-detail-page{min-height:calc(100dvh - var(--wase-chrome-offset));background:#fff}.post-detail-body{min-width:0;overflow-x:clip}.post-detail-page .tweet-card{cursor:default}.post-detail-page .tweet-card--detail{box-shadow:none;background:#fff;border-bottom:none;padding:12px 16px 0}.post-detail-page .tweet-card--detail:active{background:#fff}.post-detail-page .tweet-thread-root{align-items:stretch;gap:12px}.post-detail-page .tweet-avatar-col{width:var(--tweet-avatar-size,40px);flex-direction:column;flex-shrink:0;align-items:center;display:flex;position:relative}.post-detail-page .tweet-thread-line{background:#cbb7bb;border-radius:1px;flex:auto;width:2px;min-height:12px;margin-top:4px}.post-detail-page .tweet-identity{flex-wrap:nowrap;overflow:hidden}.post-detail-page .tweet-author{flex-shrink:1;min-width:0;font-size:16px;font-weight:800}.post-detail-page .tweet-handle,.post-detail-page .tweet-time{color:var(--tweet-muted,#536471);flex-shrink:1;font-weight:400}.post-detail-page .tweet-body{margin:4px 0 10px;font-size:17px;line-height:1.5}.post-detail-page .tweet-metadata{margin:0 0 8px;padding:4px 0 0}.post-detail-page .tweet-metadata__time{color:var(--tweet-muted,#536471);font-size:14px}.post-detail-page .tweet-actionbar{max-width:none;margin:0;padding:4px 0 8px}.post-detail-page .tweet-actionbar .tweet-menu-btn.tweet-action{flex:1;justify-content:flex-start;width:auto;min-width:0;min-height:32px;padding:0 4px}.post-detail-page .tweet-comments{border-top:none;margin-top:4px;padding-top:0}.post-detail-page .tweet-comment-list{margin:0;padding:0;list-style:none}.post-detail-page .tweet-comment{grid-template-columns:var(--tweet-avatar-size,40px) minmax(0, 1fr);box-shadow:none;background:#fff;border-bottom:1px solid #eff3f4;border-radius:0;align-items:stretch;gap:12px;padding:12px 0 8px;display:grid}.post-detail-page .tweet-comment.is-reply{padding-left:12px}.post-detail-page .tweet-comment.is-deleted .tweet-comment__body{color:var(--tweet-muted,#536471)}.post-detail-page .tweet-comment__reply-to{color:var(--tweet-muted,#536471);white-space:nowrap;text-overflow:ellipsis;margin:2px 0 0;font-size:13px;overflow:hidden}.post-detail-page .tweet-comment:last-child{border-bottom:none}.post-detail-page .tweet-comment__avatar{width:var(--tweet-avatar-size,40px);height:var(--tweet-avatar-size,40px);font-size:16px}.post-detail-page .tweet-comment__content{min-width:0}.post-detail-page .tweet-comment__identity{white-space:nowrap;flex-wrap:nowrap;align-items:baseline;gap:4px;min-width:0;line-height:1.3;display:flex;overflow:hidden}.post-detail-page .tweet-comment__name{color:var(--tweet-text,#0f1419);white-space:nowrap;text-overflow:ellipsis;flex:0 auto;min-width:0;max-width:42%;font-size:15px;font-weight:800;text-decoration:none;overflow:hidden}.post-detail-page .tweet-comment__name:hover,.post-detail-page .tweet-comment__handle:hover{text-decoration:underline}.post-detail-page .tweet-comment__handle,.post-detail-page .tweet-comment__time{color:var(--tweet-muted,#536471);white-space:nowrap;text-overflow:ellipsis;flex-shrink:1;font-size:14px;font-weight:400;text-decoration:none;overflow:hidden}.post-detail-page .tweet-comment__handle{min-width:0}.post-detail-page .tweet-comment__time{flex-shrink:0}.post-detail-page .tweet-comment__body{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:2px;font-size:15px;line-height:1.5}.post-detail-page .tweet-comment__actions{justify-content:flex-start;align-items:center;gap:0;max-width:280px;margin:4px 0 0 -8px;display:flex}.post-detail-page .tweet-comment__actions .tweet-action{flex:1;justify-content:flex-start;min-width:0;min-height:32px}.post-detail-page .tweet-comment__actions .tweet-action--delete{color:var(--tweet-muted,#536471);flex:none;font-size:12px;font-weight:600}.post-detail-page .tweet-comments__empty{color:var(--muted,#536471);margin:12px 0 8px;font-size:14px}.post-detail-page .tweet-comment-form--dock,.post-detail-page .tweet-comments__login{bottom:calc(var(--nav-h) + env(safe-area-inset-bottom,0px));z-index:150;position:sticky}@media (width<=1023px){.post-detail-page .tweet-comments{padding-bottom:56px}.post-detail-page .tweet-comment-form--dock,.post-detail-page .tweet-comments__login{left:0;right:0;bottom:calc(var(--nav-h) + env(safe-area-inset-bottom,0px));margin-top:0;margin-left:0;margin-right:0;position:fixed}}.post-detail-page .tweet-comment-form--dock{background:#fff;border-top:1px solid #eff3f4;flex-direction:column;align-items:stretch;gap:6px;margin-bottom:0;margin-left:-16px;margin-right:-16px;padding:8px 16px;display:flex}.post-detail-page .tweet-comment-form__target{min-width:0;color:var(--tweet-muted,#536471);justify-content:space-between;align-items:center;gap:8px;font-size:13px;display:flex}.post-detail-page .tweet-comment-form__target span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.post-detail-page .tweet-comment-form__target button{width:28px;height:28px;color:var(--tweet-muted,#536471);cursor:pointer;background:0 0;border:none;border-radius:999px;flex-shrink:0;font-size:18px;line-height:1}.post-detail-page .tweet-comment-form__row{align-items:center;gap:8px;min-width:0;display:flex}.post-detail-page .tweet-comment-form__avatar{color:#891e2b;background:linear-gradient(135deg,#f7edf0,#e8c4ca);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:14px;font-weight:800;display:flex;overflow:hidden}.post-detail-page .tweet-comment-form__avatar .user-avatar--image,.post-detail-page .tweet-comment-form__avatar .tweet-avatar__img{object-fit:cover;width:100%;height:100%}.post-detail-page .tweet-comment-form--dock input{background:#f7f9f9;border:1px solid #e5e5e5;border-radius:999px;flex:1;min-width:0;height:36px;padding:0 14px;font-family:inherit;font-size:15px}.post-detail-page .tweet-comment-form--dock input:focus{outline-offset:1px;background:#fff;outline:2px solid #891e2b47}.post-detail-page .tweet-comment-form__send{width:36px;height:36px;color:var(--accent,#891e2b);cursor:pointer;background:0 0;border:none;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.post-detail-page .tweet-comment-form__send:disabled{color:#c5b0b4;cursor:default}.post-detail-page .tweet-comments__login{padding:12px 0 calc(8px + env(safe-area-inset-bottom,0px));background:#fff;border-top:1px solid #eff3f4;margin:auto 0 0}.tweet-card--openable{cursor:pointer}a.tweet-time--detail-link{color:inherit;text-decoration:none}a.tweet-time--detail-link:hover,a.tweet-time--detail-link:focus-visible{text-decoration:underline}@media (width>=1024px){.post-detail-page{min-height:calc(100dvh - var(--wase-chrome-offset,0px))}.post-detail-page .tweet-comment-form--dock,.post-detail-page .tweet-comments__login{bottom:0}}.ranking-sort-tabs{border-bottom:1px solid #e5e5e5;gap:0;margin:0 0 12px;display:flex}.ranking-sort-tab{color:var(--muted,#536471);cursor:pointer;background:0 0;border:none;flex:1;padding:12px 8px;font-family:inherit;font-size:15px;font-weight:700;position:relative}.ranking-sort-tab.is-active{color:var(--text,#0f1419)}.ranking-sort-tab.is-active:after{content:"";background:var(--accent,#891e2b);border-radius:999px;height:3px;position:absolute;bottom:-1px;left:20%;right:20%}.timeline-home.main-inner{padding:0 0 16px}.home-sort-tabs{border-bottom:1px solid var(--shell-border,#eff3f4);background:#fff;margin:0;display:flex;position:relative}.home-sort-tab{height:42px;color:var(--muted,#536471);cursor:pointer;z-index:1;-webkit-tap-highlight-color:transparent;transition:color var(--motion-fast) var(--ease-standard);background:0 0;border:none;flex:1;padding:0 8px;font-family:inherit;font-size:15px;font-weight:700;position:relative}.home-sort-tab.is-active{color:var(--text,#0f1419)}.home-sort-indicator{pointer-events:none;width:50%;height:2px;transition:transform var(--motion-tab) var(--ease-standard);position:absolute;bottom:0;left:0;transform:translate(0)}.home-sort-tabs[data-sort=latest] .home-sort-indicator{transform:translate(100%)}.home-sort-indicator:after{content:"";background:var(--accent,#891e2b);border-radius:999px;height:2px;margin:0 24%;display:block}.home-sort-tab:hover,.home-sort-tab:focus-visible{background:#fafafa;outline:none}.feed-scope-tabs{gap:8px;margin:0 0 12px;padding:0 4px;display:flex}.feed-scope-tab{text-align:center;color:var(--text);background:var(--card);cursor:pointer;border:1px solid #e5e5e5;border-radius:8px;flex:1;padding:10px 12px;font-family:inherit;font-size:14px;font-weight:700;text-decoration:none}.feed-scope-tab.is-active{background:var(--accent);color:#fff;border-color:var(--accent)}.feed-scope-hint{background:#fff8e6;border:1px solid #f0e0a8;border-radius:8px;margin:0 0 12px;padding:10px 12px;font-size:13px;line-height:1.5}.feed-scope-hint a{color:var(--accent);font-weight:700}.home-compose{border-bottom:1px solid var(--shell-border,#eff3f4);background:#fff;margin:0;padding:0 12px}.home-compose__open{text-align:left;width:100%;min-height:52px;color:var(--muted);cursor:pointer;-webkit-tap-highlight-color:transparent;transition:opacity var(--motion-fast) var(--ease-standard);background:0 0;border:none;border-radius:0;align-items:center;gap:10px;padding:8px 0;font-family:inherit;font-size:15px;display:flex}.home-compose__open:hover,.home-compose__open:focus-visible{outline:none}.home-compose__open:active{opacity:.72}.home-compose__avatar{object-fit:cover;background:#eff3f4;border-radius:50%;flex-shrink:0;width:36px;height:36px}.home-compose__avatar--initial{color:var(--accent,#891e2b);background:#f7edf0;justify-content:center;align-items:center;font-size:14px;font-weight:800;display:inline-flex}.home-compose__prompt{color:var(--muted,#536471)}.spa-compose__form{background:#fff;border:1px solid #e5e5e5;border-radius:12px;padding:12px}.spa-compose__form textarea{resize:vertical;border:1px solid #e5e5e5;border-radius:8px;width:100%;padding:10px 12px;font-family:inherit;font-size:15px}.spa-compose__actions{flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px;display:flex}.spa-compose__actions button{cursor:pointer;background:var(--accent);color:#fff;border:none;border-radius:8px;padding:8px 14px;font-family:inherit;font-weight:700}.spa-compose__actions button[type=button]{color:var(--text);background:#eff3f4}.spa-compose__quote{background:#f7f9f9;border:1px solid #eff3f4;border-radius:12px;margin-top:8px;padding:10px}.spa-compose-modal.compose-modal{left:0;right:0;top:var(--compose-vv-offset,0px);height:var(--compose-vv-height,100%);z-index:500;justify-content:center;align-items:flex-end;display:flex;position:fixed}.spa-compose-modal .compose-modal__backdrop{animation:wase-home-backdrop-in var(--motion-sheet) var(--ease-standard) both;background:#00000073;position:absolute;inset:0}.spa-compose-modal .compose-modal__panel{width:min(100%,600px);max-height:min(var(--compose-vv-height,90vh), 640px);-webkit-overflow-scrolling:touch;padding:16px 16px calc(16px + env(safe-area-inset-bottom,0px));animation:wase-home-sheet-in var(--motion-sheet) var(--ease-emphasized) both;background:#fff;border-radius:16px 16px 0 0;position:relative;overflow-y:auto;box-shadow:0 -8px 32px #0000002e}@keyframes wase-home-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes wase-home-sheet-in{0%{transform:translateY(100%)}to{transform:translate(0,0)}}@keyframes wase-home-modal-in{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:none}}.spa-compose-modal .compose-modal__header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.spa-compose-modal .compose-modal__header h2{margin:0;font-size:20px;font-weight:800}.spa-compose-modal .compose-modal__close{color:#0f1419;cursor:pointer;background:#eff3f4;border:none;border-radius:999px;width:36px;height:36px;font-family:inherit;font-size:22px;line-height:1}.spa-compose-modal .compose-modal__close:hover,.spa-compose-modal .compose-modal__close:focus-visible{background:#e7e9ea}.spa-compose-modal .spa-compose__form{background:0 0;border:none;border-radius:0;margin:0;padding:0}@media (width>=600px){.spa-compose-modal.compose-modal{align-items:center;padding:16px}.spa-compose-modal .compose-modal__panel{border-radius:16px;padding-bottom:16px;animation-name:wase-home-modal-in}}.tweet-comments{border-top:1px solid #eff3f4;margin-top:8px;padding-top:6px}.tweet-comment-list{margin:0 0 8px;padding:0;list-style:none}.tweet-comment{border-bottom:1px solid #f5f5f5;grid-template-columns:28px minmax(0,1fr);align-items:start;gap:8px;padding:8px 0;display:grid}.tweet-comment__avatar{color:#891e2b;background:linear-gradient(135deg,#f7edf0,#e8c4ca);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;font-size:12px;font-weight:800;line-height:1;text-decoration:none;display:flex;overflow:hidden}.tweet-comment__avatar .user-avatar--image,.tweet-comment__avatar .tweet-avatar__img{object-fit:cover;background:0 0;width:100%;height:100%}.tweet-comment__content{min-width:0}.tweet-comment__meta{color:var(--tweet-muted,#536471);flex-wrap:wrap;align-items:center;gap:6px;font-size:12px;display:flex}.tweet-comment__author{color:inherit;font-weight:700;text-decoration:none}.tweet-comment__author:hover{text-decoration:underline}.tweet-comment__body{white-space:pre-wrap;overflow-wrap:anywhere;margin-top:4px;font-size:14px}.tweet-comment-form{gap:8px;display:flex}.tweet-comment-form input{border:1px solid #e5e5e5;border-radius:999px;flex:1;padding:8px 12px;font-family:inherit}.tweet-comment-form button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:999px;padding:8px 14px;font-family:inherit;font-weight:700}.quoted-post-card{background:#f7f9f9;border:1px solid #eff3f4;border-radius:12px;margin:0 0 10px;padding:10px 12px}.empty-message{text-align:center;color:var(--muted);margin:16px 8px;font-size:14px}.timeline-scroll-sentinel{height:1px}.tweet-action--like.is-liked{color:var(--tweet-like,#f91880)}.compose-fab{right:16px;bottom:calc(56px + env(safe-area-inset-bottom,0px) + 12px);z-index:250;background:var(--accent,#891e2b);color:#fff;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border:none;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-family:inherit;font-size:30px;font-weight:300;line-height:1;display:flex;position:fixed;box-shadow:0 4px 14px #891e2b52}.compose-fab:hover,.compose-fab:focus-visible{background:var(--accent-dark,#6f1722);outline:none}.compose-fab:active{transform:scale(.96)}.home-compose-fab{opacity:0;visibility:hidden;pointer-events:none;transition:opacity var(--motion-base) var(--ease-standard), transform var(--motion-base) var(--ease-standard), visibility 0s linear var(--motion-base);transform:scale(.86)}.home-compose-fab.is-visible{opacity:1;visibility:visible;pointer-events:auto;transition:opacity var(--motion-base) var(--ease-standard), transform var(--motion-base) var(--ease-standard), visibility 0s linear 0s;transform:scale(1)}.home-compose-fab.is-visible:active{transform:scale(.96)}@media (prefers-reduced-motion:reduce){.home-compose-fab,.home-compose-fab.is-visible,.home-sort-indicator,.spa-compose-modal .compose-modal__backdrop,.spa-compose-modal .compose-modal__panel{transition:none;animation:none}}@media (width>=1024px){.compose-fab{display:none}}.image-pick{flex-direction:column;gap:10px;display:flex}.image-pick__native{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.image-pick__actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.image-pick__btn{min-height:88px;color:var(--text,#1a1a1a);cursor:pointer;-webkit-tap-highlight-color:transparent;background:#fff;border:1px solid #e5e7eb;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:8px;padding:14px 10px;font-family:inherit;font-size:13px;font-weight:700;display:flex}.image-pick__btn:hover,.image-pick__btn:focus-visible{border-color:var(--accent,#891e2b);background:#f7edf0;outline:none}.image-pick__btn:disabled{opacity:.55;cursor:not-allowed}.image-pick__btn-icon{color:var(--accent,#891e2b);display:inline-flex}.image-pick__btn-label{text-align:center;line-height:1.2}.image-pick__hint{color:var(--muted,#6b7280);margin:0;font-size:12px;line-height:1.45}.image-pick__preview{background:#fafafa;border:1px solid #e5e7eb;border-radius:12px;align-items:center;gap:12px;padding:10px;display:flex}.image-pick__thumb{object-fit:cover;background:#eee;border-radius:8px;flex-shrink:0;width:56px;height:56px}.image-pick__meta{flex-direction:column;flex:1;align-items:flex-start;gap:6px;min-width:0;display:flex}.image-pick__filename{color:var(--text,#1a1a1a);word-break:break-all;margin:0;font-size:13px}.image-pick__clear{color:var(--accent,#891e2b);cursor:pointer;background:0 0;border:none;padding:0;font-family:inherit;font-size:13px;font-weight:700}.spa-compose__actions .image-pick{flex:100%;width:100%}.spa-compose__image{width:100%;margin-bottom:4px}.faculty-filter-section{background:var(--card,#fff);border-bottom:1px solid var(--shell-border,#eff3f4);margin-bottom:8px;padding:10px 0}.faculty-tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;gap:8px;padding:0 12px;display:flex;overflow-x:auto}.faculty-tab{color:#6b5b5f;cursor:pointer;white-space:nowrap;-webkit-tap-highlight-color:transparent;background:#fff;border:1px solid #e5d3d7;border-radius:999px;flex:none;min-height:34px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:700}.faculty-tab.is-active{background:var(--accent,#891e2b);border-color:var(--accent,#891e2b);color:#fff}.faculty-tab:hover:not(.is-active),.faculty-tab:focus-visible:not(.is-active){background:#faf6f7}@media (width>=1024px){.faculty-filter-section{padding:8px 0}.faculty-tabs{padding:0 16px}.faculty-tab{min-height:32px;padding:0 12px;font-size:12px}}.local-search{align-items:center;gap:6px;margin:0 0 10px;display:flex}.local-search--compact{margin:0 0 8px}.local-search input{background:#fff;border:1px solid #e5d3d7;border-radius:8px;flex:1;min-width:0;height:34px;padding:0 10px;font-family:inherit;font-size:13px}.local-search button{cursor:pointer;background:#eee;border:none;border-radius:8px;flex-shrink:0;height:34px;padding:0 12px;font-family:inherit;font-size:12px;font-weight:700}.local-search button[type=submit]{background:var(--accent,#891e2b);color:#fff}.local-search__clear{color:var(--muted,#536471)!important;background:0 0!important;border:1px solid #e5e5e5!important}.local-search-hint{color:var(--muted,#536471);margin:0 0 10px;font-size:12px}@media (width>=1024px){.local-search input,.local-search button{height:32px;font-size:12px}}.communities-page{background:#fff}.communities-header{z-index:1;background:#fff;padding:4px 12px 0;position:relative}.communities-header-top{justify-content:space-between;align-items:center;gap:12px;min-height:32px;margin-bottom:2px;display:flex}.communities-header-top h2{margin:0;font-size:18px;font-weight:800}.btn-new-thread{height:32px;color:var(--text,#0f1419);cursor:pointer;white-space:nowrap;background:0 0;border:1px solid #e8e8e8;border-radius:999px;justify-content:center;align-items:center;padding:0 10px;font-family:inherit;font-size:12px;font-weight:700;text-decoration:none;display:none}.btn-new-thread:hover,.btn-new-thread:focus-visible{background:#f7f7f7;outline:none}@media (width>=1024px){.btn-new-thread--desktop{display:inline-flex}}.community-hub-tabs{border-bottom:1px solid var(--shell-border,#eff3f4);background:#fff;margin:2px 0 0;display:flex}.community-hub-tab{height:40px;color:var(--muted,#536471);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex:1;padding:0 8px;font-family:inherit;font-size:15px;font-weight:700;position:relative}.community-hub-tab.is-active{color:var(--text,#0f1419)}.community-hub-tab.is-active:after{content:"";background:var(--accent,#891e2b);border-radius:999px;height:2px;position:absolute;bottom:0;left:24%;right:24%}.community-hub-tab:hover,.community-hub-tab:focus-visible{background:#fafafa;outline:none}.community-sort-tabs{background:0 0;align-items:center;gap:2px;width:fit-content;max-width:100%;margin:8px 0;padding:0;display:flex}.community-sort-tab{min-width:72px;height:32px;color:var(--muted,#536471);cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:999px;flex:none;padding:0 12px;font-family:inherit;font-size:13px;font-weight:600}.community-sort-tab.is-active{color:var(--text,#0f1419);background:#891e2b14;font-weight:700}.community-sort-tab:hover,.community-sort-tab:focus-visible{background:#f4f4f4;outline:none}.community-sort-tab.is-active:hover,.community-sort-tab.is-active:focus-visible{background:#891e2b1f}.communities-header .ranking-sort-tabs{margin:0 0 10px}.faculty-tabs{scrollbar-width:none;gap:8px;padding-bottom:4px;display:flex;overflow-x:auto}.community-anon-hint{color:#536471;margin:0 0 10px;font-size:12px;font-weight:500;line-height:1.55}.community-anon-hint--compact{color:var(--muted,#536471);margin:0 0 4px;font-size:12px;font-weight:400;line-height:1.35}.community-thread-page .community-anon-hint,.community-compose .community-anon-hint{margin:0 16px 12px}.community-compose .community-anon-hint{margin:0 0 10px}.faculty-tabs::-webkit-scrollbar{display:none}.faculty-tab{color:#6b5b5f;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #e5d3d7;border-radius:999px;flex:none;min-height:34px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:700;text-decoration:none}.faculty-tab.is-active{background:var(--accent);color:#fff;border-color:var(--accent)}.communities-search{gap:8px;margin-top:12px;display:flex}.communities-search input{border:1px solid #e5e5e5;border-radius:999px;flex:1;height:40px;padding:0 14px;font-family:inherit;font-size:14px}.communities-search button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:999px;padding:0 16px;font-family:inherit;font-weight:700}.thread-list{background:#fff;margin:0;padding:0;list-style:none}.thread-card-row,.search-thread-card-row,.discover-compact-card-row{position:relative}.communities-page .thread-card{border-bottom:1px solid var(--shell-border,#eff3f4);color:inherit;box-shadow:none;background:#fff;padding:10px 40px 10px 12px;text-decoration:none;display:block}.communities-page .thread-card:active{background:#f7f9f9}.communities-page .thread-card__title{overflow-wrap:anywhere;margin:0 0 4px;font-size:16px;font-weight:800;line-height:1.35}.communities-page .thread-card__meta{color:var(--muted,#536471);margin:0 0 4px;font-size:12px;font-weight:400}.communities-page .thread-card__replies{color:var(--text,#0f1419);font-weight:600}.communities-page .thread-card__replies.is-zero{color:#8b98a5;font-weight:400}.communities-page .thread-card__preview{color:var(--text);-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;margin:0;font-size:14px;line-height:1.45;display:-webkit-box;overflow:hidden}.communities-page .thread-card__board{color:var(--muted,#536471);background:#f4f6f7;border-radius:4px;margin-top:6px;padding:1px 6px;font-size:11px;font-weight:600;display:inline-block}.thread-card{border-bottom:1px solid var(--shell-border,#eff3f4);color:inherit;background:#fff;padding:14px 44px 14px 16px;text-decoration:none;display:block}.thread-card:active{background:#f7f9f9}.thread-card__title{margin:0 0 6px;font-size:16px;font-weight:800}.thread-card__meta{color:var(--muted);margin:0 0 6px;font-size:12px}.thread-card__preview{color:var(--text);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:14px;line-height:1.5;display:-webkit-box;overflow:hidden}.thread-card__board{color:var(--accent);background:#f7edf0;border-radius:4px;margin-top:8px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.community-compose,.community-reply-form{background:#fff;border:1px solid #e5e5e5;border-radius:12px;margin:12px 16px;padding:12px}.community-compose input,.community-compose textarea,.community-reply-form textarea{border:1px solid #e5e5e5;border-radius:8px;width:100%;margin-bottom:8px;padding:10px 12px;font-family:inherit;font-size:14px}.community-compose button,.community-reply-form button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:8px 14px;font-family:inherit;font-weight:700}.community-compose__anon{margin:0 0 10px}.community-compose__actions{justify-content:flex-end;gap:8px;display:flex}.community-compose button.community-compose__cancel{color:var(--muted,#536471);background:0 0}.community-compose button.community-compose__cancel:hover,.community-compose button.community-compose__cancel:focus-visible{background:#f4f4f4;outline:none}.communities-page .thread-list{padding-bottom:76px}.communities-page.is-composing .thread-list{padding-bottom:16px}@media (width>=1024px){.communities-page .thread-list{padding-bottom:16px}}.thread-detail{border-bottom:1px solid var(--shell-border,#eff3f4);background:#fff;padding:16px}.thread-detail h2{margin:0 0 8px;font-size:20px;font-weight:800}.thread-detail__body{white-space:pre-wrap;margin:12px 0;font-size:15px;line-height:1.55}.thread-detail__actions{gap:8px;margin-top:12px;display:flex}.thread-detail__actions button,.reply-card__actions button{cursor:pointer;background:#eff3f4;border:none;border-radius:8px;padding:6px 10px;font-family:inherit;font-size:12px;font-weight:700}.thread-detail__actions .danger,.reply-card__actions .danger{color:#f4212e;background:#f4212e14}.reply-list{margin:0;padding:0;list-style:none}.reply-card{background:#fff;border-bottom:1px solid #f0f0f0;padding:14px 16px}.reply-card.is-removed{color:var(--muted);font-style:italic}.reply-card__meta{color:var(--muted);margin-bottom:6px;font-size:12px}.reply-card__body{white-space:pre-wrap;font-size:14px;line-height:1.5}.reply-card__actions{gap:8px;margin-top:8px;display:flex}.community-thread-page{min-height:100%;padding-bottom:calc(24px + env(safe-area-inset-bottom,0px));background:#f7f8f9}.forum-op{background:#fff}.forum-replies{background:#fff;border-top:8px solid #f7f8f9;margin:0}.forum-post{background:#fff;border-bottom:1px solid #eef1f3;grid-template-columns:36px minmax(0,1fr);align-items:start;gap:8px 10px;padding:12px 16px;display:grid}.forum-post.is-reply{background:#fafbfc;padding-left:28px}.forum-post--op{border-bottom:none;grid-template-columns:minmax(0,1fr);padding:4px 0 0}.forum-post__number{color:#8b98a5;font-variant-numeric:tabular-nums;grid-row:1/span 2;padding-top:8px;font-size:11px;font-weight:700}.forum-post__avatar{color:#891e2b;background:linear-gradient(135deg,#f7edf0,#e8c4ca);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:800;line-height:1;text-decoration:none;display:flex;overflow:hidden}.forum-post__avatar .user-avatar--image{object-fit:cover;width:100%;height:100%}.forum-post__avatar.is-deleted{color:#8b98a5;background:#eff3f4;font-size:11px}.forum-post__main{min-width:0}.forum-post__meta{color:#536471;flex-wrap:wrap;align-items:baseline;gap:4px 6px;margin-bottom:4px;font-size:12px;display:flex}.forum-post__author{color:#0f1419;font-weight:700}.forum-post__reply-to{color:#536471;cursor:pointer;text-align:left;background:0 0;border:none;margin:0 0 6px;padding:0;font-family:inherit;font-size:12px;display:inline-block}.forum-post__reply-to:hover:not(.is-unavailable){color:#891e2b;text-decoration:underline}.forum-post__reply-to.is-unavailable{cursor:default;font-style:italic}.forum-post__body{white-space:pre-wrap;overflow-wrap:anywhere;color:#0f1419;font-size:14px;line-height:1.55}.forum-post__removed{color:#8b98a5;margin:0;font-size:13px;font-style:italic}.forum-post.is-flash{background:#fff8e8}.forum-edit-textarea{box-sizing:border-box;border:1px solid #e5e5e5;border-radius:8px;width:100%;padding:8px;font-family:inherit;font-size:14px}.forum-composer{background:#fff;border-top:1px solid #eff3f4;position:sticky;bottom:0;box-shadow:0 -4px 12px #0f14190a}.forum-composer__target{color:#536471;background:#f7f9f9;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;padding:8px 10px;font-size:13px;font-weight:600;display:flex}.forum-composer__target button{cursor:pointer;color:#536471;background:0 0;border:none;padding:0 4px;font-size:18px;line-height:1}@media (width<=480px){.forum-post.is-reply{padding-left:20px}.forum-post{grid-template-columns:28px minmax(0,1fr);gap:6px 8px}.forum-post--op{grid-template-columns:minmax(0,1fr)}}.discover-compact-card-row .discover-compact-card{padding-right:40px}.community-back{color:var(--accent);margin:12px 16px 0;font-size:14px;font-weight:700;text-decoration:none;display:inline-block}.community-overflow{z-index:2;margin-left:auto;position:relative}.thread-card-row>.community-overflow,.search-thread-card-row>.community-overflow,.discover-compact-card-row>.community-overflow{position:absolute;top:8px;right:8px}.community-overflow__btn{color:#536471;cursor:pointer;background:0 0;border:none;border-radius:999px;width:32px;height:32px;font-family:inherit;font-size:18px;line-height:1}.community-overflow__btn:hover,.community-overflow__btn:focus-visible{background:#0f141914}.community-overflow__menu{z-index:20;background:#fff;border-radius:12px;min-width:168px;padding:6px 0;position:absolute;top:100%;right:0;box-shadow:0 8px 28px #0f14192e}.community-overflow__heading{color:#536471;margin:0;padding:8px 12px 4px;font-size:12px;font-weight:700}.community-overflow__item{text-align:left;color:#0f1419;cursor:pointer;background:0 0;border:none;width:100%;padding:10px 12px;font-family:inherit;font-size:14px;font-weight:600;display:block}.community-overflow__item:hover,.community-overflow__item:focus-visible{background:#f7f9f9}.community-overflow__item--muted{color:#536471;font-weight:500}.communities-hub-hint{color:var(--muted,#536471);margin:0;padding:8px 0 10px;font-size:13px}@media (width>=1024px){.communities-header{padding:6px 16px 0}.community-sort-tabs{margin:10px 0 8px}}.course-discover{padding:8px 16px calc(24px + env(safe-area-inset-bottom,0px))}.course-discover-section{margin-bottom:20px}.course-discover-section__title{color:var(--text,#0f1419);margin:0 0 10px;font-size:15px;font-weight:800}.course-discover-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.course-discover-card{border:1px solid var(--shell-border,#eff3f4);color:inherit;background:#fff;border-radius:14px;padding:14px;text-decoration:none;display:block}.course-discover-card__title{margin:0 0 4px;font-size:16px;font-weight:800;line-height:1.35}.course-discover-card__instructor{color:var(--muted,#536471);margin:0 0 4px;font-size:13px}.course-discover-card__schedule{color:#0f1419;margin:0 0 8px;font-size:13px;font-weight:600}.course-discover-card__stats{color:var(--muted,#536471);margin:0;font-size:12px}.course-discover-card__talk{color:var(--accent,#891e2b);margin:8px 0 0;font-size:12px;font-weight:700}.course-discover-empty{color:var(--muted,#536471);padding:12px 4px;font-size:13px}.course-discover-empty p{margin:0 0 8px}.course-discover-global-empty{text-align:center;color:var(--muted,#536471);padding:32px 16px;font-size:14px}.course-discover-cta{color:var(--accent,#891e2b);margin-top:4px;font-size:13px;font-weight:700;text-decoration:none;display:inline-block}.course-discover-skeleton{background:linear-gradient(90deg,#f2f4f5 25%,#e8ecf0 50%,#f2f4f5 75%) 0 0/200% 100%;border-radius:14px;height:88px;margin:0 0 10px;animation:1.2s ease-in-out infinite course-discover-shimmer}@keyframes course-discover-shimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.flea-page{--bg:#f7f9fc;--card:#fff;--text:#222;--muted:#888;--accent:#891e2b;--accent-dark:#6f1722;--radius:12px;color:var(--text)}.flea-page .faculty-filter-section{background:var(--card);border-bottom:1px solid #eee;margin-bottom:8px;padding:10px 0}.flea-page .faculty-tabs{scrollbar-width:none;gap:8px;padding:0 12px;display:flex;overflow-x:auto}.flea-page .faculty-tabs::-webkit-scrollbar{display:none}.flea-page .faculty-tab{color:#6b5b5f;white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #e5d3d7;border-radius:999px;flex:none;min-height:34px;padding:0 14px;font-family:inherit;font-size:13px;font-weight:700;text-decoration:none}.flea-page .faculty-tab.is-active{background:var(--accent);color:#fff;border-color:var(--accent)}.flea-page .campus-filter-section{background:var(--card);border-bottom:1px solid #eee;margin-bottom:8px;padding:8px 0 10px}.flea-page .campus-filter-label{color:var(--muted);letter-spacing:.02em;margin:0 12px 6px;font-size:11px;font-weight:700}.flea-page .main-inner{max-width:1200px;margin:0 auto;padding:0 8px 16px}.flea-page .feed-scope-tabs{gap:8px;margin:0 0 12px;padding:0 4px;display:flex}.flea-page .feed-scope-tab{text-align:center;color:var(--text);background:var(--card);cursor:pointer;border:1px solid #e5e5e5;border-radius:8px;flex:1;padding:10px 12px;font-family:inherit;font-size:14px;font-weight:700}.flea-page .feed-scope-tab.is-active{background:var(--accent);color:#fff;border-color:var(--accent)}.flea-page .feed-scope-hint,.flea-page .faculty-hint{border-radius:8px;margin:0 4px 12px;padding:10px 12px;font-size:13px;line-height:1.5}.flea-page .feed-scope-hint{background:#fff8e6;border:1px solid #f0e0a8}.flea-page .feed-scope-hint a{color:var(--accent);font-weight:700}.flea-page .faculty-hint{color:var(--accent);background:#f7edf0;margin:0 4px 10px;padding:8px 12px;font-size:12px}.flea-page .flea-toolbar{justify-content:space-between;align-items:center;gap:8px;margin:0 4px 12px;display:flex}.flea-page .flea-search-form{flex:1;gap:6px;min-width:0;display:flex}.flea-page .flea-search-form input{border:1px solid #ddd;border-radius:8px;flex:1;min-width:0;height:36px;padding:0 12px;font-family:inherit;font-size:14px}.flea-page .flea-search-form button{cursor:pointer;background:#eee;border:none;border-radius:8px;height:36px;padding:0 12px;font-family:inherit;font-weight:700}.flea-page .btn-exhibit{background:var(--accent);color:#fff;white-space:nowrap;border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;height:36px;padding:0 14px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.flea-page .flea-sort-bar{background:var(--card);border:1px solid #eee;border-radius:10px;flex-wrap:wrap;align-items:center;gap:8px;margin:0 4px 12px;padding:10px 12px;display:flex}.flea-page .flea-sort-bar__label{color:var(--muted);font-size:12px;font-weight:700}.flea-page .flea-sort-options{flex-wrap:wrap;flex:1;gap:6px;display:flex}.flea-page .flea-sort-option{color:#6b5b5f;cursor:pointer;background:#fff;border:1px solid #e5d3d7;border-radius:999px;align-items:center;min-height:30px;padding:0 12px;font-family:inherit;font-size:12px;font-weight:700;display:inline-flex}.flea-page .flea-sort-option.is-active{background:var(--accent);color:#fff;border-color:var(--accent)}.flea-page .section-title{margin:12px 4px 10px;font-size:15px;font-weight:700}.flea-page .product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 8px;display:grid}@media (width>=768px){.flea-page .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1024px){.flea-page .product-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}.flea-page .product-card{color:inherit;text-decoration:none;display:block}.flea-page .product-card-media{aspect-ratio:1;background:linear-gradient(145deg,#ececec 0%,#d8d8d8 100%);border-radius:10px;position:relative;overflow:hidden}.flea-page .product-card-media img{object-fit:cover;width:100%;height:100%;display:block}.flea-page .product-card-placeholder{color:#999;justify-content:center;align-items:center;width:100%;height:100%;font-size:12px;display:flex}.flea-page .product-price-badge,.flea-page .product-status-label{z-index:2;color:#fff;border-radius:6px;margin:0;padding:4px 8px;font-size:11px;font-weight:700;position:absolute;bottom:8px;left:8px}.flea-page .product-price-badge{background:#891e2be0}.flea-page .product-status-label{background:#000000a6}.flea-page .product-card-mask{z-index:1;background:#00000059;position:absolute;inset:0}.flea-page .product-card-title{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:6px 2px 0;font-size:12px;font-weight:500;display:-webkit-box;overflow:hidden}.flea-page .product-card-meta{color:var(--muted);margin:2px 2px 0;font-size:11px}.flea-page .empty-message{text-align:center;color:var(--muted);padding:32px 16px;font-size:14px}.flea-page .messages{max-width:1200px;margin:8px auto 0;padding:0;list-style:none}.flea-page .messages li{border-radius:8px;margin-bottom:8px;padding:10px 12px;font-size:14px}.flea-page .messages .success{color:#2e7d32;background:#e8f5e9}.product-detail-page{--bg:#f5f5f5;--card:#fff;--text:#222;--muted:#888;--accent:#891e2b;--accent-dark:#6f1722;--radius:12px;color:var(--text)}.product-detail-page .main-inner{max-width:560px;margin:0 auto;padding:0 12px 16px}.product-detail-page .back-link{color:var(--accent);margin:12px 0 0;font-size:14px;font-weight:700;text-decoration:none;display:inline-block}.product-detail-page .product-hero{background:var(--card);border-radius:var(--radius);margin-top:12px;overflow:hidden;box-shadow:0 1px 4px #0000000f}.product-detail-page .product-hero-image{aspect-ratio:1;color:var(--muted);background:linear-gradient(160deg,#e8e8e8 0%,#d0d0d0 100%);justify-content:center;align-items:center;font-size:14px;display:flex;position:relative}.product-detail-page .product-hero-image img{object-fit:cover;width:100%;height:100%;display:block}.product-detail-page .product-hero.is-sold .product-hero-image img{opacity:.55}.product-detail-page .sold-out-badge{z-index:2;background:var(--accent);color:#fff;letter-spacing:.06em;border-radius:6px;padding:6px 12px;font-size:14px;font-weight:800;position:absolute;top:12px;left:12px}.product-detail-page .trading-badge{background:#5f6670}.product-detail-page .product-info{padding:16px}.product-detail-page .product-name{margin:0 0 8px;font-size:20px;font-weight:700;line-height:1.4}.product-detail-page .product-seller{color:var(--muted);margin:0 0 12px;font-size:14px}.product-detail-page .product-seller strong{color:var(--text);font-weight:600}.product-detail-page .product-posted-at{color:var(--muted);margin-top:4px;font-size:12px;display:block}.product-detail-page .seller-chat-list{border-top:1px solid #eee;margin-top:14px;padding-top:14px}.product-detail-page .seller-chat-list h3{margin:0 0 10px;font-size:14px;font-weight:700}.product-detail-page .seller-chat-item{border-top:1px solid #f0f0f0;justify-content:space-between;align-items:center;gap:8px;padding:10px 0;display:flex}.product-detail-page .seller-chat-item a{background:var(--accent);color:#fff;border-radius:6px;flex-shrink:0;padding:6px 12px;font-size:12px;font-weight:700;text-decoration:none}.product-detail-page .seller-chat-meta{margin:0;font-size:13px}.product-detail-page .product-price{color:var(--accent);margin:0 0 16px;font-size:24px;font-weight:700}.product-detail-page .product-description{color:#444;white-space:pre-wrap;margin:0;font-size:15px;line-height:1.7}.product-detail-page .purchase-hint{color:#444;background:#f7f9fc;border:1px solid #e0e6ef;border-radius:8px;margin:0 0 14px;padding:10px 12px;font-size:13px;line-height:1.5}.product-detail-page .action-bar{flex-direction:column;gap:10px;margin-top:16px;display:flex}.product-detail-page .action-row{align-items:center;gap:10px;display:flex}.product-detail-page .btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;height:44px;padding:0 16px;font-family:inherit;font-size:15px;font-weight:600;text-decoration:none;display:inline-flex}.product-detail-page .btn-like{color:var(--text);background:#fff;border:1px solid #ddd;flex:1}.product-detail-page .btn-like.is-liked{border-color:var(--accent);color:var(--accent);background:#f7edf0}.product-detail-page .btn-purchase{background:var(--accent);color:#fff;flex:1}.product-detail-page .btn-share-timeline,.product-detail-page .btn-chat-contact{cursor:pointer;border-radius:8px;width:100%;padding:10px 14px;font-family:inherit;font-size:14px;font-weight:700}.product-detail-page .btn-share-timeline{color:var(--accent);background:#f8f4f5;border:1px solid #e8d4d8}.product-detail-page .btn-share-external{cursor:pointer;width:100%;color:var(--text);background:#fff;border:1px solid #d8dee6;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-family:inherit;font-size:14px;font-weight:700;display:inline-flex}.product-detail-page .btn-chat-contact{border:1px solid var(--accent);color:var(--accent);background:#fff}.product-detail-page .btn-chat-open{background:var(--accent);color:#fff;text-align:center;border-radius:8px;width:100%;padding:10px 14px;font-size:14px;font-weight:700;text-decoration:none;display:block}.product-detail-page .comments-section{background:var(--card);border-radius:var(--radius);margin-top:16px;padding:16px;box-shadow:0 1px 4px #0000000f}.product-detail-page .comments-section h2{margin:0 0 12px;font-size:16px}.product-detail-page .comment-item{border-top:1px solid #f0f0f0;padding:10px 0}.product-detail-page .comment-item:first-of-type{border-top:none;padding-top:0}.product-detail-page .comment-meta{color:var(--muted);margin:0 0 4px;font-size:12px}.product-detail-page .comment-body{white-space:pre-wrap;margin:0;font-size:14px;line-height:1.5}.product-detail-page .comment-form{flex-direction:column;gap:8px;margin-top:12px;display:flex}.product-detail-page .comment-form textarea{resize:vertical;border:1px solid #ddd;border-radius:8px;width:100%;padding:10px;font-family:inherit;font-size:14px}.product-detail-page .comment-form button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;align-self:flex-end;height:36px;padding:0 14px;font-family:inherit;font-weight:700}.product-detail-page .owner-actions{border-top:1px solid #eee;margin-top:14px;padding-top:14px}.product-detail-page .btn-delete{color:#c62828;background:#fff;border:1px solid #c62828;width:100%}.product-detail-page .confirm-modal{z-index:500;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.product-detail-page .confirm-modal__backdrop{cursor:pointer;background:#0f141973;border:0;padding:0;position:absolute;inset:0}.product-detail-page .confirm-modal__panel{background:#fff;border-radius:16px;width:min(100%,360px);padding:20px;position:relative;box-shadow:0 16px 48px #0000002e}.product-detail-page .confirm-modal__title{color:#0f1419;margin:0 0 8px;font-size:16px;font-weight:700;line-height:1.5}.product-detail-page .confirm-modal__message{color:#0f1419;margin:0 0 18px;font-size:15px;line-height:1.6}.product-detail-page .confirm-modal__actions{justify-content:flex-end;gap:8px;display:flex}.product-detail-page .confirm-modal__btn{cursor:pointer;background:#fff;border:1px solid #cfd9de;border-radius:999px;min-height:40px;padding:0 16px;font-family:inherit;font-size:14px;font-weight:700}.product-detail-page .confirm-modal__btn:disabled{opacity:.6;cursor:default}.product-detail-page .confirm-modal__btn--danger{color:#fff;background:#891e2b;border-color:#891e2b}.product-detail-page .meta-row{color:var(--muted);margin:0 0 8px;font-size:13px}.product-detail-page .flash{border-radius:8px;margin:12px 0 0;padding:10px 12px;font-size:14px}.product-detail-page .flash.success{color:#2e7d32;background:#e8f5e9}.product-detail-page .flash.error{color:#c62828;background:#ffebee}.product-detail-page .flash.warning{color:#f57f17;background:#fff8e1}.product-detail-page .review-form{flex-direction:column;gap:8px;margin-top:12px;display:flex}.product-detail-page .review-form select,.product-detail-page .review-form textarea{border:1px solid #ddd;border-radius:8px;padding:8px;font-family:inherit;font-size:14px}.exhibit-page{--accent:#891e2b;--accent-dark:#6f1722;--muted:#6b7280;--line:#e5e7eb;--radius:14px}.exhibit-page .main-inner{max-width:520px;margin:0 auto;padding:16px 16px 28px}.exhibit-page .back-link{color:var(--accent);margin-bottom:8px;font-size:14px;font-weight:700;text-decoration:none;display:inline-block}.exhibit-page .form-lead{color:var(--muted);margin:0 0 14px;font-size:13px;line-height:1.55}.exhibit-page .form-card{border-radius:var(--radius);background:#fff;padding:20px 18px 22px;box-shadow:0 1px 4px #0000000f}.exhibit-page .form-group{margin-bottom:14px}.exhibit-page .form-group label{margin-bottom:6px;font-size:13px;font-weight:700;display:block}.exhibit-page .form-group input,.exhibit-page .form-group select,.exhibit-page .form-group textarea{border:1px solid var(--line);border-radius:8px;width:100%;padding:10px 12px;font-family:inherit;font-size:14px}.exhibit-page .form-check{align-items:flex-start;gap:10px;margin:4px 0 18px;display:flex}.exhibit-page .form-check input[type=checkbox]{flex-shrink:0;width:auto;margin-top:3px}.exhibit-page .form-check label{cursor:pointer}.exhibit-page .form-check strong{font-size:14px;display:block}.exhibit-page .form-check small{color:var(--muted);margin-top:4px;font-size:12px;font-weight:400;line-height:1.45;display:block}.exhibit-page .btn-submit{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:10px;width:100%;height:46px;font-family:inherit;font-size:15px;font-weight:700}.trade-chat-page{--accent:#891e2b;--accent-dark:#6f1722;--muted:#888;--radius:12px}.trade-chat-page .main-inner{box-sizing:border-box;flex-direction:column;gap:12px;width:100%;min-width:0;max-width:640px;min-height:0;margin:0 auto;padding:12px;display:flex}.trade-chat-page .back-link{color:var(--accent);font-size:14px;font-weight:700;text-decoration:none}.trade-chat-page .chat-product-card,.trade-chat-page .chat-actions,.trade-chat-page .back-link,.trade-chat-page>.main-inner>p{flex:none}.trade-chat-page .chat-product-card{border-radius:var(--radius);background:#fff;padding:14px 16px;box-shadow:0 1px 4px #0000000f}.trade-chat-page .chat-product-card-inner{align-items:center;gap:12px;display:flex}.trade-chat-page .chat-product-thumb{background:#f0f3f6;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;display:flex;overflow:hidden}.trade-chat-page .chat-product-thumb img{object-fit:cover;width:100%;height:100%}.trade-chat-page .chat-product-name{margin:0 0 4px;font-size:16px;font-weight:700}.trade-chat-page .chat-status{color:var(--muted);margin:0;font-size:13px}.trade-chat-page .chat-actions{flex-direction:column;gap:8px;display:flex}.trade-chat-page .chat-actions button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;height:40px;font-family:inherit;font-weight:700}.trade-chat-page .chat-actions button:disabled{opacity:.65;cursor:not-allowed}.trade-chat-page .trade-action-error{color:#c62828;background:#ffebee;border-radius:8px;margin:0 0 10px;padding:10px 12px;font-size:14px}.trade-chat-page .trade-complete-card{border-radius:var(--radius);text-align:center;background:#fff;margin-top:48px;padding:28px 20px;box-shadow:0 1px 4px #0000000f}.trade-chat-page .trade-complete-title{color:var(--accent);margin:0 0 8px;font-size:22px;font-weight:800}.trade-chat-page .trade-complete-thanks{color:var(--text);margin:0 0 16px;font-size:16px}.trade-chat-page .trade-complete-hint{color:var(--muted);margin:0 0 16px;font-size:13px}.trade-chat-page .trade-complete-btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;height:40px;padding:0 20px;font-family:inherit;font-weight:700}.trade-chat-page .chat-messages{box-sizing:border-box;border-radius:var(--radius);-webkit-overflow-scrolling:touch;background:#fff;flex-direction:column;flex:auto;align-items:flex-start;gap:8px;width:100%;min-width:0;min-height:0;max-height:none;padding:12px;display:flex;overflow:hidden auto}.trade-chat-page .chat-item{flex-direction:column;flex:none;align-self:flex-start;align-items:flex-start;gap:2px;min-width:0;max-width:min(78%,320px);display:flex}.trade-chat-page .chat-item.mine{align-self:flex-end;align-items:flex-end}.trade-chat-page .chat-item.theirs{align-self:flex-start;align-items:flex-start}.trade-chat-page .chat-meta{color:var(--muted);overflow-wrap:anywhere;word-break:break-word;max-width:100%;margin:0;padding:0 2px;font-size:10px;line-height:1.2}.trade-chat-page .chat-bubble{box-sizing:border-box;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;border-radius:14px;flex:none;width:max-content;min-width:0;max-width:100%;margin:0;padding:6px 10px;font-size:14px;line-height:1.4;display:block}.trade-chat-page .chat-item.mine .chat-bubble{color:#222;background:#f7edf0;border:1px solid #e8c4ca;border-bottom-right-radius:4px}.trade-chat-page .chat-item.theirs .chat-bubble{background:#f0f3f6;border-bottom-left-radius:4px}.trade-chat-page .chat-bubble.system{color:#536471;text-align:center;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;background:#f3f6f9;border:1px solid #e2e8f0;border-radius:999px;align-self:center;width:max-content;max-width:min(92%,360px);margin:2px auto;padding:4px 10px;font-size:12px;line-height:1.35}.trade-chat-page .chat-compose{gap:8px;display:flex}.trade-chat-page .chat-compose input{border:1px solid #ddd;border-radius:8px;flex:1;height:42px;padding:0 12px;font-family:inherit}.trade-chat-page .chat-compose button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;height:42px;padding:0 14px;font-family:inherit;font-weight:700}.timeline-flea-share{box-sizing:border-box;width:100%;max-width:100%;box-shadow:none;border:1px solid var(--line,#e6ebf0);margin:8px 0 4px}.timeline-flea-share .timeline-flea-share__empty{min-height:120px;color:var(--muted,#8899a6);justify-content:center;align-items:center;font-size:13px;display:flex}.timetable-page{--accent:#891e2b;--muted:#888}.timetable-page .main-inner--timetable{--tt-header-fallback:calc(var(--wase-sat,0px) + var(--wase-header-content-h,44px) + (2 * var(--wase-header-pad-y,10px)));--tt-available-h:calc(100dvh - var(--wase-chrome-offset,var(--wase-header-h,var(--tt-header-fallback))) - var(--nav-h,56px) - env(safe-area-inset-bottom,0px));box-sizing:border-box;flex-direction:column;padding:8px 10px 6px;display:flex}.timetable-page:not(.is-embedded) .main-inner--timetable{min-height:var(--tt-available-h)}.timetable-page .page-title-row{flex-shrink:0;justify-content:space-between;align-items:center;gap:12px;margin:0 0 8px;display:flex}.timetable-page .page-title{margin:0;font-size:20px;font-weight:700}.timetable-page .timetable-visibility{align-items:center;gap:8px;display:inline-flex}.timetable-page .timetable-visibility__badge{border-radius:999px;align-items:center;min-height:24px;padding:0 10px;font-size:12px;font-weight:800;display:inline-flex}.timetable-page .timetable-visibility__badge.is-public{color:#2e7d32;background:#e8f5e9}.timetable-page .timetable-visibility__badge.is-private{color:#536471;background:#eff3f4}.timetable-page .timetable-visibility__switch{cursor:pointer;width:44px;height:26px;display:inline-flex;position:relative}.timetable-page .timetable-visibility__switch input{opacity:0;width:0;height:0;position:absolute}.timetable-page .timetable-visibility__slider{background:#cfd8df;border-radius:999px;transition:background .15s;position:absolute;inset:0}.timetable-page .timetable-visibility__slider:before{content:"";background:#fff;border-radius:50%;width:20px;height:20px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #0003}.timetable-page .timetable-visibility__switch input:checked+.timetable-visibility__slider{background:var(--accent,#891e2b)}.timetable-page .timetable-visibility__switch input:checked+.timetable-visibility__slider:before{transform:translate(18px)}.timetable-page .timetable-note{color:var(--muted);flex-shrink:0;margin:8px 2px 0;font-size:11px;line-height:1.45}.timetable-page .timetable-empty-cta{background:#f3f7fa;border:1px solid #d7e4ee;border-radius:12px;flex-shrink:0;justify-content:space-between;align-items:center;gap:10px 12px;margin:0 0 8px;padding:10px 12px;display:flex}.timetable-page .timetable-empty-cta__copy{flex:auto;min-width:0}.timetable-page .timetable-empty-cta__title{color:#15202b;margin:0 0 2px;font-size:14px;font-weight:800;line-height:1.3}.timetable-page .timetable-empty-cta__body{color:#5b6b7a;margin:0;font-size:11px;font-weight:600;line-height:1.4}.timetable-page .timetable-empty-cta .timetable-add-btn{flex:none;min-height:36px;padding:0 12px;font-size:12px}@media (width<=420px){.timetable-page .timetable-empty-cta{flex-wrap:wrap;align-items:flex-start}.timetable-page .timetable-empty-cta .timetable-add-btn{width:100%}}.timetable-page .timetable-board{--tt-period-w:46px;--tt-gap:5px;--tt-radius:10px;--tt-day-count:6;--tt-day-min:54px;--tt-od-min:108px;--tt-head-h:28px;--tt-row-min:56px;--tt-period-rows:5;--tt-surface:#e8edf3;--tt-card:#fff;--tt-card-empty:#f4f6f9;--tt-od-empty:#eef3f8;--tt-od-border:#9eb6ce;--tt-shadow:0 1px 2px #0f14190f, 0 2px 8px #0f14190a;background:var(--tt-surface);box-sizing:border-box;border-radius:14px;flex-direction:column;flex:auto;min-height:0;margin:0;padding:8px;display:flex;position:relative;overflow:hidden}.timetable-page .timetable-board.has-more:after{content:"";pointer-events:none;z-index:6;background:linear-gradient(to right, #e8edf300 0%, #e8edf38c 55%, var(--tt-surface) 100%);border-radius:0 10px 10px 0;width:14px;position:absolute;top:8px;bottom:8px;right:8px}.timetable-page .timetable-scroll{-webkit-overflow-scrolling:touch;flex:auto;max-width:100%;min-height:0;overflow:auto}.timetable-page .timetable-layout{align-items:stretch;gap:var(--tt-gap);box-sizing:border-box;width:max-content;min-width:100%;height:100%;min-height:100%;display:flex}.timetable-page .timetable-grid{grid-template-columns:var(--tt-period-w) repeat(var(--tt-day-count), var(--tt-day-min));grid-template-rows:var(--tt-head-h) repeat(var(--tt-period-rows), minmax(var(--tt-row-min), 1fr));gap:var(--tt-gap);width:calc(var(--tt-period-w) + (var(--tt-day-count) * var(--tt-day-min)) + (var(--tt-day-count) * var(--tt-gap)));min-width:calc(var(--tt-period-w) + (var(--tt-day-count) * var(--tt-day-min)) + (var(--tt-day-count) * var(--tt-gap)));box-sizing:border-box;flex:none;align-self:stretch;height:auto;min-height:100%;display:grid}.timetable-page .timetable-od-panel{flex-direction:column;flex:0 0 var(--tt-od-min);width:var(--tt-od-min);min-width:var(--tt-od-min);box-sizing:border-box;flex-shrink:0;min-height:100%;padding-left:2px;display:flex}.timetable-page .timetable-day--od{height:var(--tt-head-h);letter-spacing:0;text-align:center;flex-shrink:0;font-size:10px;line-height:1.15}.timetable-page .timetable-od-list{gap:var(--tt-gap);-webkit-overflow-scrolling:touch;flex-direction:column;flex:auto;min-height:0;display:flex;overflow-y:auto}.timetable-page .timetable-od-list .timetable-cell{flex:none;min-height:52px}.timetable-page .timetable-od-add{min-height:44px}.timetable-page .timetable-od-add.is-labeled{justify-content:center;align-items:center;min-height:64px;padding:8px 6px}.timetable-page .timetable-od-add.is-labeled .timetable-slot__placeholder{text-align:center;color:#4a6b88;margin:0;font-size:10px;font-weight:800;line-height:1.35}.timetable-page .timetable-od-empty{color:#8aa0b5;margin:8px 4px 0;font-size:11px;font-weight:600}.timetable-page .timetable-corner,.timetable-page .timetable-day,.timetable-page .timetable-period{background:0 0;border:none;min-width:0}.timetable-page .timetable-day{z-index:2;letter-spacing:.02em;color:#3d4a57;background:var(--tt-surface);justify-content:center;align-items:center;padding:0 2px;font-size:12px;font-weight:800;display:flex;position:sticky;top:0}.timetable-page .timetable-corner{z-index:4;background:var(--tt-surface);position:sticky;top:0;left:0}.timetable-page .timetable-period{z-index:3;text-align:center;background:var(--tt-surface);flex-direction:column;justify-content:center;align-items:center;gap:2px;padding:2px;display:flex;position:sticky;left:0}.timetable-page .timetable-period__label{color:#2c3640;font-size:11px;font-weight:800;line-height:1.15;display:block}.timetable-page .timetable-period.is-od .timetable-period__label{color:#4a6b88}.timetable-page .timetable-period__time{color:#7a8794;letter-spacing:-.03em;font-size:8px;font-weight:600;line-height:1.2;display:block}.timetable-page .timetable-cell{background:0 0;border:none;align-items:stretch;min-width:0;min-height:0;padding:0;display:flex}.timetable-page .timetable-add-row{flex-shrink:0}.timetable-page .timetable-slot{border-radius:var(--tt-radius);background:var(--tt-card-empty);width:100%;min-height:100%;box-shadow:none;text-align:left;font:inherit;color:inherit;cursor:pointer;box-sizing:border-box;-webkit-tap-highlight-color:transparent;touch-action:manipulation;border:1px solid #0f14190a;flex-direction:column;justify-content:center;align-items:flex-start;gap:3px;margin:0;padding:6px 4px;transition:background .15s,box-shadow .15s,transform .12s;display:flex}.timetable-page .timetable-slot.is-filled{background:var(--tt-card);box-shadow:var(--tt-shadow);border-color:#0000;justify-content:flex-start}.timetable-page .timetable-slot.is-empty{justify-content:center;align-items:center}.timetable-page .timetable-slot.is-filled:hover,.timetable-page .timetable-slot.is-filled:focus-visible{background:#fff;outline:none;box-shadow:0 2px 8px #891e2b24}.timetable-page .timetable-slot.is-empty:hover,.timetable-page .timetable-slot.is-empty:focus-visible{background:#eef2f7;outline:none}.timetable-page .timetable-cell.is-od .timetable-slot{background:var(--tt-od-empty);border:1.5px dashed var(--tt-od-border);box-shadow:none}.timetable-page .timetable-cell.is-od .timetable-slot.is-filled{box-shadow:var(--tt-shadow);background:#f7fbff;border-style:solid;border-color:#c5d6e6}.timetable-page .timetable-class__name{color:#15202b;-webkit-line-clamp:2;word-break:normal;overflow-wrap:break-word;line-break:strict;-webkit-box-orient:vertical;max-width:100%;margin:0;font-size:10px;font-weight:800;line-height:1.3;display:-webkit-box;overflow:hidden}.timetable-page .timetable-class__meta{color:#5b6b7a;white-space:nowrap;text-overflow:ellipsis;max-width:100%;margin:0;font-size:9px;font-weight:600;line-height:1.2;overflow:hidden}.timetable-page .timetable-slot__placeholder{color:#b0bbc6;margin:0 auto;font-size:11px;font-weight:700;line-height:1.2}.timetable-page .timetable-grid .timetable-slot.is-empty .timetable-slot__placeholder{opacity:0;transition:opacity .12s}.timetable-page .timetable-grid .timetable-slot.is-empty:hover .timetable-slot__placeholder,.timetable-page .timetable-grid .timetable-slot.is-empty:focus-visible .timetable-slot__placeholder,.timetable-page .timetable-grid .timetable-slot.is-empty:active .timetable-slot__placeholder{opacity:.45}.timetable-page .timetable-cell.is-od .timetable-slot__placeholder{color:#8aa0b5}.timetable-page.is-read-only .timetable-slot{cursor:default}@media (width<=1023px){.timetable-page:not(.is-embedded).has-week-grid .main-inner--timetable{height:var(--tt-available-h);max-height:var(--tt-available-h);min-height:0;overflow:hidden auto}}@media (width>=600px){.timetable-page .timetable-board{--tt-period-w:58px;--tt-gap:6px;--tt-radius:12px;--tt-day-min:56px;--tt-od-min:112px;padding:12px}.timetable-page .timetable-day{font-size:13px}.timetable-page .timetable-day--od{font-size:11px}.timetable-page .timetable-period__label{font-size:13px}.timetable-page .timetable-period__time{font-size:10px}.timetable-page .timetable-slot{padding:10px 8px}.timetable-page .timetable-class__name{font-size:12px}.timetable-page .timetable-class__meta{font-size:10px}.timetable-page .timetable-grid{grid-template-columns:var(--tt-period-w) repeat(var(--tt-day-count), minmax(var(--tt-day-min), 1fr));flex:auto;width:auto}}@media (width>=1024px){.timetable-page .main-inner--timetable{height:auto;min-height:calc(100vh - 32px);max-height:none;padding:16px}}.timetable-page .compose-modal{z-index:500;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.timetable-page .compose-modal__backdrop{background:#00000073;position:absolute;inset:0}.timetable-page .compose-modal__panel{width:min(100%,600px);max-height:min(92vh,640px);padding:16px 16px calc(16px + env(safe-area-inset-bottom,0px));background:#fff;border-radius:16px 16px 0 0;position:relative;overflow-y:auto;box-shadow:0 -8px 32px #0000002e}.timetable-page .compose-modal__header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.timetable-page .compose-modal__header h2{margin:0;font-size:20px;font-weight:800}.timetable-page .compose-modal__close{color:#0f1419;cursor:pointer;background:#eff3f4;border:none;border-radius:999px;width:36px;height:36px;font-size:22px;line-height:1}.timetable-page .timetable-modal-hint{color:#888;margin:0 0 12px;font-size:12px;line-height:1.5}.timetable-page .compose-image-field{margin:0 0 12px}.timetable-page .compose-image-field label{margin:0 0 6px;font-size:13px;font-weight:700;display:block}.timetable-page .compose-modal input[type=text],.timetable-page .compose-modal textarea{box-sizing:border-box;border:1px solid #ddd;border-radius:8px;width:100%;padding:10px;font-family:inherit;font-size:15px}.timetable-page .compose-modal textarea{resize:vertical;min-height:96px}.timetable-page .timetable-modal-actions{gap:8px;margin-top:4px;display:flex}.timetable-page .timetable-modal-actions .btn-compose{color:#fff;cursor:pointer;background:#891e2b;border:none;border-radius:999px;flex:1;height:44px;font-family:inherit;font-size:15px;font-weight:700}.timetable-page .btn-timetable-clear{color:#536471;cursor:pointer;background:#fff;border:1px solid #d0d7de;border-radius:999px;flex:none;min-width:88px;height:44px;padding:0 14px;font-family:inherit;font-size:14px;font-weight:700}.timetable-page .room-field[hidden]{display:none}body.timetable-modal-open{overflow:hidden}.tt-section-tabs{background:#eef3f7;border-radius:12px;flex-shrink:0;gap:6px;margin:0 0 12px;padding:4px;display:flex}.tt-section-tabs__btn{color:#536471;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:10px;flex:1;min-height:40px;font-family:inherit;font-size:14px;font-weight:700}.tt-section-tabs__btn.is-active{color:#1a6b8a;background:#fff;box-shadow:0 1px 3px #0f141914}.tt-calendar{flex-direction:column;gap:10px;min-width:0;display:flex}.tt-calendar__nav{align-items:center;gap:6px;display:flex}.tt-calendar__month-title{text-align:center;letter-spacing:-.02em;flex:1;margin:0;font-size:17px;font-weight:800}.tt-calendar__nav-btn{color:#1a6b8a;cursor:pointer;background:#eef3f7;border:none;border-radius:50%;width:40px;height:40px;font-family:inherit;font-size:24px;line-height:1}.tt-calendar__today-btn{color:#1a6b8a;cursor:pointer;background:#fff;border:1px solid #c5d8e4;border-radius:999px;flex:none;min-height:36px;padding:0 12px;font-family:inherit;font-size:13px;font-weight:700}.tt-calendar__weekdays{text-align:center;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px;display:grid}.tt-calendar__weekday{color:#8899a6;padding:2px 0;font-size:11px;font-weight:700}.tt-calendar__grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;display:grid}.tt-calendar__cell{cursor:pointer;min-height:56px;color:inherit;-webkit-tap-highlight-color:transparent;background:#fff;border:1px solid #e5ebf0;border-radius:10px;flex-direction:column;align-items:stretch;gap:2px;padding:4px 3px 3px;font-family:inherit;display:flex}.tt-calendar__cell.is-pad{cursor:default;background:0 0;border:none;min-height:56px}.tt-calendar__cell.is-today{border-color:#7eb8d4}.tt-calendar__cell.is-selected{background:#e8f4fa;border-color:#5ba3c4;box-shadow:inset 0 0 0 1px #5ba3c4}.tt-calendar__day-num{text-align:center;font-size:13px;font-weight:700;line-height:1.2}.tt-calendar__marks{flex-direction:column;gap:1px;min-height:0;display:flex;overflow:hidden}.tt-calendar__mark-title{color:#1a6b8a;text-overflow:ellipsis;white-space:nowrap;font-size:9px;font-weight:700;line-height:1.15;overflow:hidden}.tt-calendar__dot{background:#5ba3c4;border-radius:50%;width:5px;height:5px;margin:2px auto 0}.tt-calendar__extra{color:#536471;text-align:center;font-size:9px;font-weight:700}.tt-calendar__agenda{background:#fff;border:1px solid #e5ebf0;border-radius:14px;margin-top:4px;padding:12px}.tt-calendar__agenda-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:10px;display:flex}.tt-calendar__agenda-head h3{margin:0;font-size:16px;font-weight:800}.tt-calendar__add-btn{color:#fff;cursor:pointer;background:#5ba3c4;border:none;border-radius:999px;flex:none;min-height:36px;padding:0 12px;font-family:inherit;font-size:13px;font-weight:700}.tt-calendar__note,.tt-calendar__empty{color:#536471;margin:0 0 8px;font-size:13px;line-height:1.5}.tt-calendar__list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.tt-calendar__item{background:#f7fafc;border:1px solid #eef2f5;border-radius:12px;align-items:stretch;gap:8px;padding:10px;display:flex}.tt-calendar__item.is-class{background:#f3f8fb}.tt-calendar__item-btn{text-align:left;cursor:pointer;min-width:0;color:inherit;background:0 0;border:none;flex:1;align-items:flex-start;gap:10px;padding:0;font-family:inherit;display:flex}.tt-calendar__item-time{color:#1a6b8a;flex-direction:column;flex:0 0 64px;gap:2px;font-size:12px;font-weight:700;display:flex}.tt-calendar__item-period{color:#8899a6;font-size:10px;font-weight:600}.tt-calendar__item-body{flex-direction:column;gap:2px;min-width:0;display:flex}.tt-calendar__item-body strong{font-size:14px;font-weight:700}.tt-calendar__item-meta{color:#536471;text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.tt-calendar__item-badge{color:#1a6b8a;background:#5ba3c429;border-radius:999px;align-self:flex-start;margin-top:2px;padding:2px 7px;font-size:10px;font-weight:700}.tt-calendar__item-delete{color:#891e2b;cursor:pointer;background:0 0;border:none;flex:none;align-self:center;padding:8px 4px;font-family:inherit;font-size:12px;font-weight:700}.tt-calendar__time-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}@media (width>=640px){.tt-calendar__cell{min-height:72px}.tt-calendar__mark-title{font-size:10px}}.tt-calendar__agenda-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.tt-calendar__link-btn{color:var(--accent,#1d9bf0);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:4px 0;font-family:inherit;font-size:12px;font-weight:700;text-decoration:underline}.tt-calendar__class-sheet-body,.tt-calendar__hidden-body{padding:0 16px 20px;padding-bottom:calc(20px + env(safe-area-inset-bottom,0px))}.tt-calendar__class-meta{color:#536471;margin:0 0 8px;font-size:13px}.tt-calendar__class-hint{color:#8b98a5;margin:0 0 12px;font-size:12px;line-height:1.4}.tt-calendar__class-link{color:var(--accent,#1d9bf0);margin-bottom:12px;font-size:13px;font-weight:700;display:inline-block}.tt-calendar__skip-btn{color:#fff;cursor:pointer;background:#0f1419;border:none;border-radius:12px;width:100%;padding:14px 16px;font-family:inherit;font-size:15px;font-weight:700;display:block}.tt-calendar__skip-btn:disabled{opacity:.5;cursor:not-allowed}.tt-calendar__absence-block{border-bottom:1px solid #eff3f4;margin:0 0 14px;padding-bottom:14px}.tt-calendar__absence-count{color:#0f1419;margin:0 0 10px;font-size:15px;font-weight:700}.tt-calendar__absence-btn{color:#0f1419;cursor:pointer;background:#fff;border:1px solid #cfd9de;border-radius:12px;width:100%;padding:12px 16px;font-family:inherit;font-size:15px;font-weight:700;display:block}.tt-calendar__absence-marked{color:#0f1419;margin:0 0 8px;font-size:13px;font-weight:600}.tt-calendar__absence-undo{color:#1d9bf0;cursor:pointer;background:#f7f9f9;border:none;border-radius:12px;width:100%;padding:12px 16px;font-family:inherit;font-size:14px;font-weight:700;display:block}.tt-calendar__hidden-list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.tt-calendar__hidden-item{background:#f7fafc;border:1px solid #eef2f5;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px;display:flex}.tt-calendar__hidden-item strong{margin-bottom:2px;font-size:13px;display:block}.tt-calendar__hidden-item span{font-size:14px;display:block}.tt-calendar__restore-btn{color:#0f1419;cursor:pointer;background:#fff;border:1px solid #cfd9de;border-radius:999px;flex-shrink:0;padding:8px 14px;font-family:inherit;font-size:13px;font-weight:700}.tt-calendar__toast{left:12px;right:12px;bottom:calc(72px + env(safe-area-inset-bottom,0px));z-index:80;color:#fff;background:#0f1419f0;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:13px;font-weight:600;display:flex;position:fixed;box-shadow:0 8px 24px #0003}.tt-calendar__toast-undo{color:#7dd3fc;cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:4px 0;font-family:inherit;font-size:13px;font-weight:800}body.course-sheet-open{overflow:hidden}.course-sheet{z-index:80;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.course-sheet__backdrop{background:#0f172073;border:0;position:absolute;inset:0}.course-sheet__panel{z-index:1;width:min(560px,100%);max-height:min(88dvh,720px);padding-bottom:calc(12px + env(safe-area-inset-bottom,0px));background:#fff;border-radius:18px 18px 0 0;flex-direction:column;display:flex;position:relative;box-shadow:0 -8px 32px #0000001f}.course-sheet__header{justify-content:space-between;align-items:flex-start;gap:12px;padding:16px 16px 8px;display:flex}.course-sheet__title{margin:0;font-size:18px;font-weight:800}.course-sheet__hint{color:#678;margin:4px 0 0;font-size:13px}.course-sheet__close{cursor:pointer;background:#eef2f5;border:0;border-radius:999px;width:36px;height:36px;font-size:22px;line-height:1}.course-sheet__toast{color:#1b5e20;background:#e8f5e9;border-radius:10px;margin:0 16px 8px;padding:10px 12px;font-size:13px;font-weight:700}.course-sheet__search{padding:0 16px 8px}.course-sheet__search input{box-sizing:border-box;border:1px solid #cfd8df;border-radius:12px;width:100%;min-height:48px;padding:12px 14px;font-size:16px}.course-sheet__results{-webkit-overflow-scrolling:touch;flex:1;padding:0 8px 8px;overflow:auto}.course-sheet__empty{color:#678;margin:16px;font-size:14px}.course-sheet__list{margin:0;padding:0;list-style:none}.course-sheet__item{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:12px;width:100%;padding:12px 10px}.course-sheet__item:active{background:#f3f6f8}.course-sheet__item-title{color:#0f1720;font-size:15px;font-weight:700;display:block}.course-sheet__item-meta{color:#678;margin-top:2px;font-size:12px;display:block}.course-sheet__item-cta{color:#1a6b8a;margin-top:6px;font-size:12px;font-weight:700;display:block}.course-sheet__confirm-body{color:#1a1a1a;margin:0 0 12px;font-size:15px;line-height:1.45}.course-sheet__confirm-note{color:#678;margin:0 0 16px;font-size:13px;line-height:1.4}.course-sheet__footer-actions{border-top:1px solid #eef2f5;flex-direction:column;gap:8px;margin-top:8px;padding:12px 8px 4px;display:flex}.course-sheet__primary,.course-sheet__secondary{cursor:pointer;border:0;border-radius:12px;min-height:48px;font-size:15px;font-weight:700}.course-sheet__primary{color:#fff;background:#891e2b;width:100%}.course-sheet__secondary{color:#1a6b8a;background:#eef6fa}.course-sheet__linkish,.course-sheet__back{color:#536471;cursor:pointer;text-align:center;background:0 0;border:0;padding:8px;font-size:13px}.course-sheet__form{-webkit-overflow-scrolling:touch;flex-direction:column;gap:10px;padding:0 16px 16px;display:flex;overflow:auto}.course-sheet__form label{color:#334155;flex-direction:column;gap:4px;font-size:13px;font-weight:600;display:flex}.course-sheet__form input,.course-sheet__form select,.course-sheet__form textarea{border:1px solid #cfd8df;border-radius:10px;min-height:44px;padding:10px 12px;font-size:16px;font-weight:400}.course-sheet__row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.course-sheet__locked{color:#334155;background:#f5f8fa;border-radius:10px;margin:0;padding:10px 12px;font-size:13px;font-weight:600}.course-sheet__meetings{flex-direction:column;gap:8px;display:flex}.course-sheet__meetings-label{color:#0f1419;margin:0;font-size:13px;font-weight:700}.course-sheet__meeting-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.course-sheet__meeting-row{grid-template-columns:1fr 1fr auto;align-items:center;gap:8px;display:grid}.course-sheet__meeting-row select{width:100%;min-height:40px;font:inherit;background:#fff;border:1px solid #cfd9de;border-radius:10px;padding:0 10px}.course-sheet__meeting-remove{color:#1d9bf0;cursor:pointer;white-space:nowrap;background:0 0;border:none;min-height:40px;padding:0 4px;font-family:inherit;font-size:13px;font-weight:700}.course-sheet__meeting-add{color:var(--accent,#891e2b);cursor:pointer;background:0 0;border:none;align-self:flex-start;min-height:40px;padding:6px 0;font-family:inherit;font-size:13px;font-weight:700}.course-sheet__optional{border:1px solid #e5ebf0;border-radius:12px;padding:8px 12px}.course-sheet__optional summary{cursor:pointer;color:#536471;font-size:13px;font-weight:700}.course-sheet__dup-title{margin:4px 0 8px;font-size:16px}.timetable-add-row{justify-content:flex-end;margin:0 0 8px;display:flex}.timetable-add-btn{color:#fff;cursor:pointer;background:#1a6b8a;border:0;border-radius:999px;min-height:40px;padding:0 14px;font-size:13px;font-weight:800}.course-detail-page .course-detail{padding-bottom:40px}.course-detail__back{color:#1a6b8a;cursor:pointer;background:0 0;border:0;margin-bottom:12px;padding:0;font-size:14px;font-weight:700}.course-detail__title{margin:0 0 4px;font-size:24px;font-weight:800;line-height:1.3}.course-detail__instructor{color:#334155;margin:0;font-size:15px}.course-detail__schedule{color:#678;margin:6px 0 0;font-size:13px}.course-detail__enrollment{color:#1a6b8a;background:linear-gradient(135deg,#f0f7fa,#eef3f7);border-radius:14px;margin:16px 0;padding:14px 16px;font-size:15px}.course-detail__enrollment strong{margin:0 2px;font-size:22px}.course-detail__meta{grid-template-columns:88px 1fr;gap:8px 12px;margin:0 0 20px;font-size:14px;display:grid}.course-detail__meta dt{color:#678;margin:0}.course-detail__meta dd{margin:0;font-weight:600}.course-detail__reviews-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.course-detail__reviews-head h2{margin:0;font-size:17px}.course-detail__avg{color:#678;margin:0;font-size:13px}.course-detail__review-cta{color:#fff;cursor:pointer;background:#891e2b;border:0;border-radius:10px;justify-content:center;align-items:center;min-height:40px;margin:12px 0;padding:0 14px;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.course-review-form{background:#f7f9fb;border-radius:12px;flex-direction:column;gap:10px;margin-bottom:16px;padding:12px;display:flex}.course-review-form__row{justify-content:space-between;align-items:center;gap:12px;font-size:13px;font-weight:600;display:flex}.course-review-form textarea{box-sizing:border-box;border:1px solid #cfd8df;border-radius:10px;width:100%;min-height:88px;padding:10px;font-size:16px}.course-stars{gap:2px;display:inline-flex}.course-stars__btn{color:#d0d7de;cursor:pointer;background:0 0;border:0;padding:0 2px;font-size:18px}.course-stars__btn.is-on{color:#e6a800}.course-stars__btn:disabled{cursor:default}.course-review-list{margin:0;padding:0;list-style:none}.course-review-list__item{border-top:1px solid #eef2f5;padding:12px 0}.course-review-list__top{align-items:center;gap:8px;display:flex}.course-review-list__own{color:#1a6b8a;background:#eef6fa;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.course-detail__report{color:#89a;margin-top:24px;font-size:12px;line-height:1.5}.course-detail__remove{color:#b42318;cursor:pointer;background:#fff5f5;border:1px solid #f1c0c0;border-radius:12px;width:100%;min-height:44px;margin-top:12px;font-weight:700}.course-detail__actions{margin:16px 0 8px}.course-detail__talk-cta{box-sizing:border-box;color:#fff;background:#1a3a4a;border:none;border-radius:14px;flex-direction:column;align-items:flex-start;gap:2px;width:100%;min-height:52px;padding:12px 16px;font-size:16px;font-weight:800;text-decoration:none;display:flex}.course-detail__talk-cta-sub{opacity:.85;font-size:12px;font-weight:600}.course-detail__section-hint{color:#8b98a5;margin:4px 0 0;font-size:12px}.course-detail__attendance{border-top:1px solid #eff3f4;border-bottom:1px solid #eff3f4;margin:20px 0;padding:16px 0}.course-detail__attendance-head h2{margin:0;font-size:18px}.course-detail__attendance-meetings{color:#536471;margin:6px 0 0;font-size:13px}.course-detail__attendance-cta{color:#0f1419;cursor:pointer;background:#fff;border:1px solid #cfd9de;border-radius:999px;width:100%;margin-top:12px;padding:10px 16px;font-family:inherit;font-size:14px;font-weight:700}.course-detail__date-picker{margin-top:12px}.course-detail__date-picker-label{color:#536471;margin:0 0 8px;font-size:13px}.course-detail__date-list{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.course-detail__date-list button{cursor:pointer;background:#f7f9f9;border:1px solid #cfd9de;border-radius:10px;padding:8px 12px;font-family:inherit;font-size:13px}.course-detail__absence-history{margin-top:16px}.course-detail__absence-history h3{margin:0 0 8px;font-size:14px}.course-detail__absence-history ul{margin:0;padding:0;list-style:none}.course-detail__absence-history li{border-top:1px solid #eff3f4;justify-content:space-between;align-items:center;gap:12px;padding:10px 0;font-size:14px;display:flex}.course-detail__absence-history button{color:#1d9bf0;cursor:pointer;white-space:nowrap;background:0 0;border:none;font-family:inherit;font-size:13px;font-weight:700}.course-detail__toast{left:12px;right:12px;bottom:calc(72px + env(safe-area-inset-bottom,0px));z-index:40;color:#fff;background:#0f1419;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px;font-size:13px;display:flex;position:fixed;box-shadow:0 8px 24px #0f141940}.course-detail__toast button{color:#1d9bf0;cursor:pointer;white-space:nowrap;background:0 0;border:none;font-family:inherit;font-size:13px;font-weight:700}.course-talk-header__links{align-items:center;gap:16px;margin:10px 0 0;font-size:13px;display:flex}.course-talk-header__links a{color:#1a6b8a;font-weight:700;text-decoration:none}.course-talk-leave{color:#89a;cursor:pointer;background:0 0;border:none;min-height:44px;margin-left:auto;padding:0 4px;font-size:13px;font-weight:700}.course-talk-empty{text-align:center;color:#678;padding:28px 16px}.course-talk-empty strong{color:#1a2a33;margin-bottom:8px;font-size:16px;display:block}.course-talk-empty ul{gap:8px;margin:16px 0 0;padding:0;list-style:none;display:grid}.course-talk-prompt{text-align:left;color:#1a3a4a;cursor:pointer;background:#f7fafc;border:1px solid #dce4ea;border-radius:12px;width:100%;min-height:44px;padding:10px 14px;font-size:14px;font-weight:600}.course-talk-badge{vertical-align:middle;border-radius:999px;margin-left:6px;padding:1px 7px;font-size:10px;font-weight:800;display:inline-block}.course-talk-badge.is-current{color:#1b6b3a;background:#e8f5ee}.course-talk-badge.is-past{color:#4a5d6a;background:#eef2f6}.dm-bubble-meta{flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:2px;display:flex}.profile-page,.search-page{--accent:#891e2b;--accent-dark:#6f1722;--muted:#888;--card:#fff;--text:#222;--radius:12px}.profile-page .main-inner,.search-page .main-inner{max-width:560px;margin:0 auto;padding:12px 12px 24px}.profile-back{color:var(--accent);margin:0 0 10px;font-size:14px;font-weight:700;text-decoration:none;display:inline-block}.profile-card{background:var(--card);border-radius:var(--radius);margin-bottom:16px;padding:20px;box-shadow:0 1px 4px #0000000f}.profile-header{grid-template-columns:72px minmax(0,1fr) auto;align-items:start;gap:14px;margin-bottom:14px;display:grid}.profile-avatar{border-radius:50%;flex-shrink:0;width:72px;height:72px}.profile-avatar.user-avatar--image{object-fit:cover;border:2px solid #eff3f4}.profile-avatar.user-avatar--icon{color:#8b98a5;background:#eff3f4;justify-content:center;align-items:center;font-size:28px;font-weight:800;display:inline-flex}.profile-name{margin:0 0 4px;font-size:22px;font-weight:800;line-height:1.25}.profile-username{color:var(--muted);margin:0;font-size:15px}.profile-bio{white-space:pre-wrap;margin:0 0 12px;font-size:15px;line-height:1.55}.profile-meta{color:#536471;margin:0 0 16px;font-size:14px}.profile-stats{grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px;display:grid}.profile-stats div{text-align:center}.profile-stats strong{font-size:18px;display:block}.profile-stats span{color:var(--muted);font-size:12px}.profile-stats__link{color:inherit;text-decoration:none}.profile-stats__link:hover strong,.profile-stats__link:focus-visible strong{text-decoration:underline}.follow-list{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.profile-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.profile-actions--own,.profile-actions--guest{grid-template-columns:1fr}.profile-page .btn{cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;height:40px;padding:0 14px;font-family:inherit;font-size:14px;font-weight:700;text-decoration:none;display:inline-flex}.profile-page .btn-primary{background:var(--accent);color:#fff}.profile-page .btn-secondary{color:var(--text);background:#fff;border:1px solid #cfd9de}.profile-more{position:relative}.profile-more__trigger{color:#536471;cursor:pointer;background:0 0;border:none;border-radius:50%;width:44px;height:44px;font-size:22px}.profile-more__menu{z-index:20;background:#fff;border:1px solid #eff3f4;border-radius:12px;min-width:160px;position:absolute;top:48px;right:0;overflow:hidden;box-shadow:0 8px 24px #0000001f}.profile-more__menu a,.profile-more__menu button{text-align:left;color:#0f1419;cursor:pointer;background:#fff;border:none;width:100%;padding:12px 14px;font-family:inherit;font-size:14px;font-weight:600;text-decoration:none;display:block}.profile-tabs{border-bottom:1px solid #eff3f4;gap:0;margin-bottom:12px;display:flex}.profile-tab{text-align:center;color:var(--muted);border-bottom:3px solid #0000;flex:1;padding:12px 8px;font-size:14px;font-weight:700;text-decoration:none}.profile-tab.is-active{color:var(--accent);border-bottom-color:var(--accent)}.profile-empty{text-align:center;color:var(--muted);padding:28px 12px;font-size:14px}.profile-private-badge{color:#536471;background:#eff3f4;border-radius:999px;margin:6px 0 0;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.profile-locked__title{color:var(--text);margin:0 0 6px;font-size:15px;font-weight:700}.profile-product-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 8px;display:grid}.profile-product-grid .product-card{color:inherit;text-decoration:none}.profile-product-grid .product-card-media{aspect-ratio:1;background:linear-gradient(145deg,#ececec 0%,#d8d8d8 100%);border-radius:10px;position:relative;overflow:hidden}.profile-product-grid .product-card-media img{object-fit:cover;width:100%;height:100%}.profile-product-grid .product-price-badge{color:#fff;background:#891e2be0;border-radius:6px;margin:0;padding:4px 8px;font-size:11px;font-weight:700;position:absolute;bottom:8px;left:8px}.profile-product-grid .product-card-title{margin:6px 2px 0;font-size:12px;font-weight:500}.profile-timetable-embed .main-inner--timetable{min-height:420px;padding:0}.search-title{margin:0 0 8px;font-size:20px;font-weight:800}.search-lead{color:var(--muted,#536471);margin:0 0 14px;font-size:13px;line-height:1.45}.search-discover{flex-direction:column;gap:18px;padding-bottom:24px;display:flex}.search-discover__section{min-width:0}.search-discover__title{margin:0 0 8px;font-size:15px;font-weight:800;line-height:1.3}.search-discover__more{width:100%;color:var(--accent);text-align:center;cursor:pointer;background:#fff;border:1px solid #eff3f4;border-radius:999px;margin-top:8px;padding:10px 12px;font-family:inherit;font-size:13px;font-weight:700;text-decoration:none;display:block}.search-discover__more.is-link{box-sizing:border-box}.search-discover__more:hover,.search-discover__more:focus-visible{background:#f7f9f9}.discover-compact-list{flex-direction:column;gap:6px;display:flex}.discover-trending-mosaic{grid-template-columns:minmax(0,2fr) minmax(104px,1fr);align-items:start;gap:8px;display:grid}.discover-trending-mosaic__posts,.discover-trending-mosaic__products{flex-direction:column;gap:6px;min-width:0;display:flex}.discover-trending-mosaic__products.is-alone{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:8px;display:grid}.discover-trending-mosaic__posts .discover-compact-card{padding:9px 10px}.discover-trending-mosaic__posts .discover-compact-card__handle{display:none}.discover-trending-mosaic__posts .discover-compact-card__thumb{flex-basis:52px;width:52px;height:52px}.discover-trending-mosaic__posts .discover-compact-card__stat .sf-icon,.discover-trending-mosaic__posts .discover-compact-card__stat .sf-icon svg{width:15px;height:15px}.discover-trending-mosaic__posts .discover-compact-card__stat-count{font-size:12px}.discover-product-stack{min-width:0;color:inherit;background:#fff;border:1px solid #eff3f4;border-radius:10px;flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.discover-product-stack:hover,.discover-product-stack:focus-visible{background:#f7f9f9}.discover-product-stack__media{aspect-ratio:3/4;background:#f2f2f2;width:100%;position:relative;overflow:hidden}.discover-product-stack__media img{object-fit:cover;width:100%;height:100%;display:block}.discover-product-stack__empty{color:#999;justify-content:center;align-items:center;width:100%;height:100%;font-size:10px;display:flex}.discover-product-stack__mask{background:#00000059;position:absolute;inset:0}.discover-product-stack__body{min-width:0;padding:6px 7px 8px}.discover-product-stack__title{-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:11px;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}.discover-product-stack__price{color:#0f1419;font-variant-numeric:tabular-nums;margin:4px 0 0;font-size:12px;font-weight:800}@media (width>=640px){.discover-trending-mosaic{grid-template-columns:minmax(0,2.2fr) minmax(140px,1fr);gap:10px}.discover-product-stack__title{font-size:12px}.discover-product-stack__price{font-size:13px}}@media (width>=1024px){.discover-trending-mosaic{grid-template-columns:minmax(0,2.4fr) minmax(168px,1fr);gap:12px}.discover-trending-mosaic__posts .discover-compact-card__handle{display:inline}.discover-trending-mosaic__posts .discover-compact-card__thumb{flex-basis:64px;width:64px;height:64px}}.discover-compact-card{color:inherit;background:#fff;border:1px solid #eff3f4;border-radius:10px;align-items:flex-start;gap:10px;padding:10px 12px;text-decoration:none;display:flex}.discover-compact-card:hover,.discover-compact-card:focus-visible{background:#f7f9f9}.discover-compact-card__main{flex:1;min-width:0}.discover-compact-card__head{align-items:center;gap:8px;margin-bottom:4px;display:flex}.discover-compact-card__avatar{object-fit:cover;background:#eff3f4;border-radius:50%;flex-shrink:0;width:28px;height:28px}.discover-compact-card__avatar.is-initial{color:#8b98a5;justify-content:center;align-items:center;font-size:11px;font-weight:800;display:inline-flex}.discover-compact-card__who{flex:1;align-items:baseline;gap:6px;min-width:0;display:flex;overflow:hidden}.discover-compact-card__name{white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:800;overflow:hidden}.discover-compact-card__handle{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.discover-compact-card__time{color:var(--muted);flex-shrink:0;font-size:11px}.discover-compact-card__badge-row{align-items:center;gap:6px;min-width:0;margin:0 0 4px;display:flex}.discover-compact-card__badge{color:var(--accent);background:#f7edf0;border-radius:999px;flex-shrink:0;padding:1px 7px;font-size:10px;font-weight:700;display:inline-block}.discover-compact-card__badge.is-community{color:#3d5a80;background:#eef3f8}.discover-compact-card__badge.is-flea{color:#1b7a3d;background:#eef6f0}.discover-compact-card__board{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;overflow:hidden}.discover-compact-card__title{margin:0 0 2px;font-size:14px;font-weight:800;line-height:1.35;display:block}.discover-compact-card__text{color:#0f1419;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 6px;font-size:13px;line-height:1.4;display:-webkit-box;overflow:hidden}.discover-compact-card__text.is-muted{color:var(--muted)}.discover-compact-card__stats{color:var(--muted);font-variant-numeric:tabular-nums;flex-wrap:wrap;gap:10px;margin:0;font-size:11px;display:flex}.discover-compact-card__stat{align-items:center;gap:4px;min-width:0;display:inline-flex}.discover-compact-card__stat .sf-icon{flex-shrink:0;width:18px;height:18px;display:block}.discover-compact-card__stat-count{font-size:13px;font-weight:500;line-height:1}.discover-compact-card__thumb{background:#f2f2f2;border-radius:8px;flex:0 0 64px;width:64px;height:64px;overflow:hidden}.discover-compact-card__thumb.is-product{border-radius:10px;flex-basis:72px;width:72px;height:72px}.discover-compact-card__thumb img{object-fit:cover;width:100%;height:100%;display:block}.discover-compact-card__thumb-empty{color:#999;justify-content:center;align-items:center;width:100%;height:100%;font-size:10px;display:flex}.discover-compact-card--product{align-items:center}.discover-compact-card__price{color:#0f1419;font-variant-numeric:tabular-nums;margin:4px 0 0;font-size:14px;font-weight:800}@media (width>=1024px){.discover-compact-list{grid-template-columns:1fr 1fr;gap:8px;display:grid}.discover-compact-card__thumb{flex-basis:72px;width:72px;height:72px}}.search-product-rail{scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin;gap:10px;padding:2px 2px 8px;display:flex;overflow-x:auto}.search-product-card--rail{scroll-snap-align:start;flex-direction:column;flex:0 0 136px;gap:8px;width:136px;padding:8px}.search-product-card--rail .search-product-card__media{border-radius:10px;flex:none;width:100%;height:100px}.search-product-card--rail .search-product-card__title{-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;display:-webkit-box;overflow:hidden}.search-product-card--rail .search-product-card__meta{color:var(--accent);margin-bottom:2px;font-size:12px;font-weight:700}.search-form{gap:8px;margin-bottom:12px;display:flex}.search-form input{border:1px solid #ddd;border-radius:999px;flex:1;height:40px;padding:0 12px;font-family:inherit;font-size:14px}.search-form button{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:999px;height:40px;padding:0 16px;font-family:inherit;font-weight:700}.search-tabs{border-bottom:1px solid #eff3f4;margin-bottom:12px}.search-tabs__scroller{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:0;display:flex;overflow-x:auto}.search-tabs__scroller::-webkit-scrollbar{display:none}.search-tab{min-width:4.5rem;color:var(--muted);cursor:pointer;white-space:nowrap;background:0 0;border:none;border-bottom:3px solid #0000;flex:none;padding:12px 10px;font-family:inherit;font-size:13px;font-weight:700}@media (width>=640px){.search-tab{flex:1;min-width:0;padding:12px 8px;font-size:14px}}.search-tab.is-active{color:var(--accent);border-bottom-color:var(--accent)}.search-empty{text-align:center;color:var(--muted);padding:28px 12px;font-size:14px}.search-query-label{color:var(--muted);margin:0 0 12px;font-size:13px;font-weight:600}.search-mixed-feed{flex-direction:column;gap:10px;display:flex}.search-thread-card{color:inherit;background:#fff;border:1px solid #eff3f4;border-radius:12px;padding:14px 44px 14px 16px;text-decoration:none;display:block}.search-thread-card:hover,.search-thread-card:focus-visible{background:#f7f9f9}.search-thread-card__meta{color:var(--muted);margin:0 0 6px;font-size:12px}.search-thread-card__badge{color:var(--accent);background:#f7edf0;border-radius:999px;margin-right:6px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.search-thread-card__title{margin:0 0 6px;font-size:15px;font-weight:800;line-height:1.35;display:block}.search-thread-card__preview{color:#536471;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 8px;font-size:13px;line-height:1.45;display:-webkit-box;overflow:hidden}.search-thread-card__foot{color:var(--muted);margin:0;font-size:12px}.search-offering-card{color:inherit;background:#fff;border:1px solid #eff3f4;border-radius:12px;padding:14px 16px;text-decoration:none;display:block}.search-offering-card:hover,.search-offering-card:focus-visible{background:#f7f9f9}.search-offering-card__meta{color:var(--muted);margin:0 0 6px;font-size:12px}.search-offering-card__badge{color:#0f7a45;background:#e8f5ee;border-radius:999px;margin-right:6px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.search-offering-card__title{margin:0 0 6px;font-size:15px;font-weight:800;line-height:1.35;display:block}.search-offering-card__sub{color:#536471;margin:0 0 6px;font-size:13px}.search-offering-card__foot{color:var(--muted);margin:0;font-size:12px}.search-mixed-user .search-user-card{border:1px solid #eff3f4;border-radius:12px;padding:10px 12px}.search-product-card{color:inherit;background:#fff;border:1px solid #eff3f4;border-radius:12px;gap:12px;padding:12px;text-decoration:none;display:flex}.search-product-card:hover,.search-product-card:focus-visible{background:#f7f9f9}.search-product-card__media{background:#f2f2f2;border-radius:10px;flex:0 0 88px;width:88px;height:88px;position:relative;overflow:hidden}.search-product-card__media img{object-fit:cover;width:100%;height:100%;display:block}.search-product-card__placeholder{color:#999;justify-content:center;align-items:center;width:100%;height:100%;font-size:11px;display:flex}.search-product-card__mask{background:#00000059;position:absolute;inset:0}.search-product-card__body{flex:1;min-width:0}.search-product-card__meta{color:var(--muted);margin:0 0 6px;font-size:12px}.search-product-card__badge{color:#1b7a3d;background:#eef6f0;border-radius:999px;margin-right:6px;padding:2px 8px;font-size:11px;font-weight:700;display:inline-block}.search-product-card__title{margin:0 0 6px;font-size:15px;font-weight:800;line-height:1.35;display:block}.search-product-card__foot{color:var(--muted);margin:0;font-size:12px}.search-user-list{margin:0;padding:0;list-style:none}.search-user-card{color:inherit;border-bottom:1px solid #eff3f4;align-items:center;gap:12px;padding:12px;text-decoration:none;display:flex}.search-user-avatar{object-fit:cover;border-radius:50%;width:48px;height:48px}.search-user-avatar.is-initial{color:#8b98a5;background:#eff3f4;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.search-user-text{flex-direction:column;gap:2px;min-width:0;display:flex}.search-user-text strong{font-size:15px}.search-user-text span{color:var(--muted);font-size:13px}.dm-page{--dm-bg:#f7f9fc;--dm-card:#fff;--dm-text:#0f1419;--dm-muted:#536471;--dm-accent:#891e2b;--dm-accent-dark:#6f1722;--dm-radius:12px;--dm-shell-border:#eff3f4;min-height:100%;color:var(--dm-text);position:relative}.dm-page .main-inner{max-width:672px;margin:0 auto;padding:0}.dm-room-page .main-inner,.dm-room-main{flex-direction:column;max-width:640px;min-height:0;padding:8px;display:flex}@media (width<=1023px){.dm-room-page{height:calc(var(--chat-visible-h,100dvh) - var(--wase-chrome-offset,var(--wase-header-h,0px)));max-height:calc(var(--chat-visible-h,100dvh) - var(--wase-chrome-offset,var(--wase-header-h,0px)));flex-direction:column;display:flex;overflow:hidden}.dm-room-page .dm-room-main,.dm-room-page>.main-inner{flex:auto;height:100%;min-height:0;padding-bottom:0;overflow:hidden}}.dm-room-top{flex:none;margin:0 0 8px}.dm-room-page .dm-partner-card,.dm-room-page .dm-group-invite-banner,.dm-room-page .course-talk-header{flex:none}.dm-thread,.dm-room-page .chat-panel,.dm-message-area{flex-direction:column;flex:auto;min-height:0;display:flex}.dm-thread,.dm-message-area{-webkit-overflow-scrolling:touch;overscroll-behavior:contain;overflow:hidden auto}.dm-room-page .chat-panel{min-height:0;overflow:hidden}.dm-room-page .chat-panel>h2,.dm-room-page .chat-panel>.chat-hint,.dm-room-page .chat-panel>.block-banner,.dm-room-page .chat-reply-preview,.dm-room-page .chat-compose-bar{flex:none}@media (width>=1024px){.dm-thread,.dm-message-area{max-height:min(70vh,720px)}.chat-panel{min-height:320px}}.dm-inbox-header{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--dm-shell-border);background:#ffffffeb;padding:16px 16px 12px;position:sticky;top:0}.dm-inbox-header h1{letter-spacing:-.02em;margin:0;font-size:20px;font-weight:800}.dm-inbox-header p{color:var(--dm-muted);margin:0;font-size:13px;line-height:1.5}html.chrome-detail .dm-inbox-header,html.chrome-detail .dm-group-header{position:relative;top:auto}.dm-inbox-tabs{-webkit-overflow-scrolling:touch;scrollbar-width:none;gap:6px;margin-top:14px;display:flex;overflow-x:auto}.dm-inbox-tabs::-webkit-scrollbar{display:none}.dm-inbox-tab{color:var(--dm-muted);white-space:nowrap;cursor:pointer;background:#fff;border:1px solid #d9dee3;border-radius:999px;flex:none;align-items:center;gap:6px;padding:7px 12px;font-family:inherit;font-size:13px;font-weight:700;text-decoration:none;display:inline-flex}.dm-inbox-tab.is-active{border-color:var(--dm-accent);background:var(--dm-accent);color:#fff}.dm-inbox-tab-count{min-width:18px;color:inherit;text-align:center;background:#0f141914;border-radius:999px;padding:0 5px;font-size:11px;line-height:18px}.dm-inbox-tab.is-active .dm-inbox-tab-count{background:#ffffff38}.dm-inbox-list{margin:0;padding:0;list-style:none}.dm-inbox-item{border-bottom:1px solid var(--dm-shell-border);color:inherit;align-items:center;gap:10px;padding:10px 16px;text-decoration:none;transition:background .15s;display:flex}.dm-inbox-item:hover,.dm-inbox-item:focus-visible{background:#f7f9f9}.dm-inbox-avatar{width:48px;height:48px;color:var(--dm-accent);background:linear-gradient(135deg,#f7edf0,#e8c4ca);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:16px;font-weight:800;line-height:1;display:flex;overflow:hidden}.dm-inbox-avatar img{object-fit:cover;width:100%;height:100%;display:block}.dm-inbox-avatar.is-trade{background:#f0f3f6;border-radius:10px}.dm-inbox-avatar.is-group{letter-spacing:-.04em;font-size:18px}.dm-inbox-body{flex:1;min-width:0}.dm-inbox-top{justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:2px;display:flex}.dm-inbox-name{white-space:nowrap;text-overflow:ellipsis;font-size:15px;font-weight:700;overflow:hidden}.dm-inbox-handle{color:var(--dm-muted);white-space:nowrap;text-overflow:ellipsis;margin-bottom:4px;font-size:13px;display:block;overflow:hidden}.dm-inbox-status{color:#536471;background:#f0f3f6;border-radius:999px;align-items:center;margin:0 0 4px;padding:2px 8px;font-size:11px;font-weight:700;line-height:1.4;display:inline-flex}.dm-inbox-status.is-trading{color:#1d4f91;background:#eef6ff}.dm-inbox-status.is-sold{color:#666;background:#f4f4f4}.dm-inbox-status.is-closed{color:#9a6700;background:#fff4e5}.dm-inbox-status.is-invite{color:#1b7a3d;background:#eef6f0}.dm-inbox-item.is-invite{border-color:#d6ebdc}.dm-request-entry{color:inherit;background:#f5faf7;border:1px solid #d6ebdc;border-radius:12px;justify-content:space-between;align-items:center;gap:12px;margin:0 0 12px;padding:12px 14px;text-decoration:none;display:flex}.dm-request-entry:hover,.dm-request-entry:focus-visible{background:#eef8f1}.dm-request-entry__label{font-size:14px;font-weight:800}.dm-request-entry__count{background:var(--accent,#c45c7a);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 7px;font-size:12px;font-weight:800;display:inline-flex}.dm-group-invite-banner{background:#f5faf7;border:1px solid #d6ebdc;border-radius:12px;margin:0 0 12px;padding:14px 14px 12px}.dm-group-invite-banner__lead{color:var(--dm-muted,#536471);margin:0 0 6px;font-size:13px}.dm-group-invite-banner__question{margin:0 0 6px;font-size:16px;font-weight:800;line-height:1.35;display:block}.dm-group-invite-banner__hint{color:var(--dm-muted,#536471);margin:0 0 12px;font-size:12px;line-height:1.4}.dm-group-invite-banner__actions{flex-wrap:wrap;gap:8px;display:flex}.dm-group-invite-locked{color:var(--dm-muted,#536471);text-align:center;background:#f7f9f9;border-radius:10px;margin:10px 0 0;padding:10px 12px;font-size:13px}.dm-inbox-preview{color:var(--dm-muted);white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:14px;line-height:1.45;overflow:hidden}.dm-inbox-preview-prefix{color:var(--dm-text);font-weight:600}.dm-inbox-item.has-unread .dm-inbox-name{font-weight:800}.dm-inbox-item.has-unread .dm-inbox-preview{color:var(--dm-text);font-weight:600}.dm-inbox-unread{background:var(--dm-accent);color:#fff;text-align:center;border-radius:999px;flex-shrink:0;min-width:18px;height:18px;padding:0 5px;font-size:11px;font-weight:700;line-height:18px}.dm-inbox-unread[hidden]{display:none}.dm-inbox-empty{text-align:center;color:var(--dm-muted);padding:48px 20px;font-size:14px;line-height:1.7}.dm-inbox-empty strong{color:var(--dm-text);margin-bottom:8px;font-size:16px;display:block}.dm-create-fab{right:16px;bottom:calc(72px + env(safe-area-inset-bottom,0px));z-index:120;background:var(--dm-accent);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;font-size:28px;font-weight:300;line-height:1;text-decoration:none;display:flex;position:fixed;box-shadow:0 4px 14px #891e2b61}.dm-create-fab:hover,.dm-create-fab:focus-visible{background:var(--dm-accent-dark)}@media (width>=1024px){.dm-create-fab{bottom:24px;right:24px}.dm-page .main-inner{max-width:none;margin:0}.dm-inbox-header{top:0}}@media (width<=1023px){.dm-inbox-header h1{display:none}}.dm-back-text{color:var(--dm-accent);font-size:14px;font-weight:600;text-decoration:none}.dm-partner-card{background:var(--dm-card);border-radius:var(--dm-radius);margin-bottom:8px;padding:10px 12px;box-shadow:0 1px 4px #0000000f}.dm-partner-card--blocked .dm-partner-name{color:var(--dm-muted)}.dm-partner-row{align-items:center;gap:12px;display:flex}.dm-partner-avatar{color:#888;background:linear-gradient(135deg,#f0f0f0,#e0e0e0);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;font-weight:800;display:inline-flex;overflow:hidden}.dm-partner-avatar .user-avatar--image{object-fit:cover;width:40px;height:40px;display:block}.dm-partner-avatar .user-avatar--initial{justify-content:center;align-items:center;width:40px;height:40px;display:flex}.dm-partner-text{min-width:0}.dm-partner-name{margin:0 0 2px;font-size:15px;font-weight:700}.dm-partner-meta{color:var(--dm-muted);margin:0;font-size:12px}.dm-partner-meta a{color:var(--dm-accent);font-weight:600;text-decoration:none}.chat-panel{background:var(--dm-card);border-radius:var(--dm-radius);flex-direction:column;flex:1;min-height:0;padding:10px 12px;display:flex;box-shadow:0 1px 4px #0000000f}.chat-panel h2{margin:0 0 2px;font-size:14px;font-weight:700}.chat-hint{color:var(--dm-muted);margin:0 0 8px;font-size:11px}.block-banner{color:#8a7000;background:#fff8e6;border:1px solid #f0e0a8;border-radius:8px;margin:0 0 8px;padding:10px 12px;font-size:13px;line-height:1.5}.dm-message-area{flex:auto;min-height:0}.message-list{flex-direction:column;flex:none;gap:2px;min-height:0;max-height:none;margin:0;padding:0;list-style:none;display:flex;overflow:visible}.chat-row{align-items:flex-end;gap:6px;max-width:80%;display:flex}.chat-row.is-mine{flex-direction:row-reverse;align-self:flex-end}.chat-row:not(.is-mine){align-self:flex-start}.chat-row__avatar{width:26px;height:26px;color:inherit;flex-shrink:0;justify-content:center;align-items:center;text-decoration:none;display:flex}.chat-row__avatar .user-avatar--image{object-fit:cover;border-radius:50%;width:26px;height:26px;display:block}.chat-row__avatar .user-avatar--initial{width:26px;height:26px;color:var(--dm-accent);background:linear-gradient(135deg,#f7edf0,#e8c4ca);border-radius:50%;justify-content:center;align-items:center;font-size:11px;font-weight:800;line-height:1;display:flex}.chat-row__main{align-items:flex-end;gap:4px;min-width:0;display:flex}.chat-row.is-mine .chat-row__main{flex-direction:row-reverse}.chat-row__sender{color:var(--dm-muted);flex-wrap:wrap;align-items:baseline;gap:4px;width:100%;margin-bottom:2px;font-size:11px;font-weight:700;display:flex}.chat-row__sender-link{color:inherit;flex-wrap:wrap;align-items:baseline;gap:4px;text-decoration:none;display:inline-flex}.chat-row__sender-link:hover,.chat-row__sender-link:focus-visible{text-decoration:underline}.chat-row__handle{color:var(--dm-muted);opacity:.85;font-weight:600}.chat-row:not(.is-mine) .chat-row__main{flex-wrap:wrap}.chat-row__bubble-wrap{align-items:flex-end;gap:4px;display:flex}.chat-row.is-mine .chat-row__bubble-wrap{flex-direction:row-reverse}.chat-row__bubble{white-space:pre-wrap;word-break:break-word;background:#f0f0f0;border-radius:10px;padding:4px 8px;font-size:13px;line-height:1.4}.chat-row.is-mine .chat-row__bubble{background:#f7edf0;border:1px solid #e8c4ca}.chat-row__meta{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:1px;display:flex}.chat-row:not(.is-mine) .chat-row__meta{align-items:flex-start}.chat-row__time{color:var(--dm-muted);white-space:nowrap;flex-shrink:0;padding-bottom:2px;font-size:10px;line-height:1}.chat-row__read{color:var(--dm-muted);white-space:nowrap;font-size:9px;line-height:1}.empty-message{color:var(--dm-muted);text-align:center;justify-content:center;align-items:center;min-height:220px;padding:24px 0;font-size:14px;display:flex}.chat-form{border-top:1px solid #eee;gap:8px;margin-top:8px;padding-top:8px;display:flex}.chat-form input{border:1px solid #ddd;border-radius:8px;flex:1;min-width:0;padding:8px 10px;font-family:inherit;font-size:14px}.chat-form input:focus{border-color:var(--dm-accent);outline:none}.chat-form button{background:var(--dm-accent);color:#fff;cursor:pointer;border:none;border-radius:8px;width:72px;font-family:inherit;font-weight:700}.chat-form button:hover:not(:disabled){background:var(--dm-accent-dark)}.chat-form input:disabled,.chat-form button:disabled{opacity:.65;cursor:not-allowed}.chat-form--blocked{background:#fafafa}.chat-form--blocked button{display:none}.chat-compose-bar{z-index:8;padding:8px 10px calc(8px + env(safe-area-inset-bottom,0px));-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#f7f9fcf5;border-top:1px solid #e5ebf0;flex:none;margin-top:8px;margin-left:-8px;margin-right:-8px;position:relative;bottom:auto}.chat-compose-bar:focus-within{padding-bottom:8px}.chat-compose-bar__row{align-items:center;gap:4px;display:flex}.chat-compose-bar__media{flex:none;align-items:center;gap:0;display:flex}.chat-compose-bar__input{min-width:0;color:var(--dm-text,#0f1419);background:#fff;border:1px solid #d5dde5;border-radius:20px;flex:1;padding:10px 14px;font-family:inherit;font-size:16px;line-height:1.35}.chat-compose-bar__input:focus{border-color:#7eb8d4;outline:none;box-shadow:0 0 0 3px #7eb8d440}.chat-compose-bar__input:disabled{opacity:.55;background:#f3f5f7}.chat-compose-bar__icon-btn{color:#4a90b0;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;width:40px;height:40px;padding:0;display:inline-flex}.chat-compose-bar__icon-btn:hover:not(:disabled),.chat-compose-bar__icon-btn:focus-visible{background:#7eb8d42e;outline:none}.chat-compose-bar__icon-btn:disabled{opacity:.45;cursor:not-allowed}.chat-compose-bar__send{color:#fff;background:#5ba3c4}.chat-compose-bar__send:hover:not(:disabled),.chat-compose-bar__send:focus-visible{background:#4a90b0}.chat-compose-bar__preview{background:#fff;border:1px solid #e5ebf0;border-radius:12px;align-items:center;gap:10px;margin-bottom:8px;padding:8px 10px;display:flex}.chat-compose-bar__thumb{object-fit:cover;border-radius:8px;flex-shrink:0;width:48px;height:48px}.chat-compose-bar__preview-meta{flex:1;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.chat-compose-bar__filename{color:var(--dm-muted,#536471);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.chat-compose-bar__clear{color:var(--dm-accent,#891e2b);cursor:pointer;background:0 0;border:none;flex-shrink:0;padding:4px 0;font-family:inherit;font-size:13px;font-weight:700}.chat-compose-bar__note{color:#8a5a1a;margin:0 0 8px;font-size:12px;line-height:1.45}.chat-compose-bar--disabled{opacity:.9}.dm-group-header{z-index:10;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid var(--dm-shell-border);background:#ffffffeb;padding:12px 16px;position:sticky;top:0}.dm-group-header h1{margin:0;font-size:18px;font-weight:800}.dm-group-header p{color:var(--dm-muted);margin:6px 0 0;font-size:13px;line-height:1.5}.dm-group-card{background:var(--dm-card);border-radius:var(--dm-radius);margin:10px 8px 0;padding:12px;box-shadow:0 1px 4px #0000000f}.dm-search-input{box-sizing:border-box;border:1px solid #ddd;border-radius:10px;width:100%;margin-bottom:10px;padding:10px 12px;font-family:inherit;font-size:14px}.dm-search-input:focus{border-color:var(--dm-accent);outline:none}.dm-user-list{max-height:52vh;margin:0;padding:0;list-style:none;overflow-y:auto}.dm-user-item{border-bottom:1px solid #eee;padding:10px 8px}.dm-user-item label{cursor:pointer;align-items:center;gap:10px;display:flex}.dm-user-item input[type=checkbox]{width:18px;height:18px;accent-color:var(--dm-accent);flex-shrink:0;margin:0}.dm-user-text{flex-direction:column;gap:2px;min-width:0;display:flex}.dm-user-name{white-space:nowrap;text-overflow:ellipsis;font-size:14px;font-weight:800;overflow:hidden}.dm-user-handle{color:var(--dm-muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.dm-group-actions{border-top:1px solid #eee;justify-content:flex-end;gap:10px;margin-top:12px;padding-top:10px;display:flex}.dm-btn{cursor:pointer;border:none;border-radius:10px;align-items:center;padding:10px 14px;font-family:inherit;font-size:14px;font-weight:800;text-decoration:none;display:inline-flex}.dm-btn-primary{background:var(--dm-accent);color:#fff}.dm-btn-primary:hover:not(:disabled){background:var(--dm-accent-dark)}.dm-btn-primary:disabled{opacity:.65;cursor:not-allowed}.dm-btn-ghost{color:var(--dm-text);background:0 0;border:1px solid #ddd}.dm-inbox-avatar.is-course{color:#1a3a4a;background:#e8f1f6}.dm-inbox-status.is-enrolled{color:#1b6b3a;background:#e8f5ee}.dm-inbox-status.is-past{color:#4a5d6a;background:#eef2f6}.msg-action-sheet{z-index:80;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.msg-action-sheet__backdrop{background:#0f141973;border:none;padding:0;position:absolute;inset:0}.msg-action-sheet__panel{width:min(480px,100%);padding:12px 12px calc(12px + env(safe-area-inset-bottom,0px));background:#fff;border-radius:16px 16px 0 0;margin:0;position:relative;box-shadow:0 -8px 32px #0000002e}.msg-action-sheet__title{color:#89a;margin:4px 8px 10px;font-size:13px;font-weight:700}.msg-action-sheet__list{gap:4px;margin:0;padding:0;list-style:none;display:grid}.msg-action-sheet__btn,.msg-action-sheet__cancel{color:#1a2a33;cursor:pointer;background:#f3f6f8;border:none;border-radius:12px;width:100%;min-height:48px;font-size:16px;font-weight:700}.msg-action-sheet__btn.is-danger{color:#b42318}.msg-action-sheet__cancel{background:#fff;border:1px solid #e3e8ee;margin-top:8px}.chat-reply-preview{background:#eef4f7;border-left:3px solid #1a6b8a;border-radius:12px;align-items:flex-start;gap:8px;margin:0 0 8px;padding:10px 12px;display:flex}.chat-reply-preview__body{flex:1;gap:2px;min-width:0;display:grid}.chat-reply-preview__label{color:#1a6b8a;font-size:11px;font-weight:800}.chat-reply-preview__name{color:#1a2a33;font-size:13px}.chat-reply-preview__text{color:#678;text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.chat-reply-preview__clear{color:#89a;cursor:pointer;background:0 0;border:none;min-width:44px;min-height:44px;font-size:22px;line-height:1}.chat-reply-quote{text-align:left;cursor:pointer;background:#0f14190f;border:none;border-left:3px solid #1a6b8a8c;border-radius:8px;width:100%;margin:0 0 6px;padding:6px 8px;display:block}.chat-reply-quote__name{color:#1a6b8a;font-size:11px;font-weight:800;display:block}.chat-reply-quote__text{color:#567;text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.chat-reply-quote.is-unavailable .chat-reply-quote__text{color:#89a;font-style:italic}.chat-row.is-highlight .chat-row__bubble{outline-offset:2px;outline:2px solid #1a6b8a}.chat-row.is-deleted .chat-row__bubble,.chat-row.is-removed .chat-row__bubble{opacity:.75}.chat-row__deleted{color:#89a;font-size:13px;font-style:italic}.chat-row__appeal{color:#1a6b8a;cursor:pointer;background:0 0;border:none;margin-top:6px;padding:0;font-size:12px;font-weight:700}.chat-row__appeal-status{color:#89a;margin:6px 0 0;font-size:12px}.msg-action-sheet__lead{color:#5b6b78;margin:0 8px 10px;font-size:13px;line-height:1.5}.msg-action-sheet__textarea{color:#1a2a33;resize:vertical;background:#fff;border:1px solid #d7e0e7;border-radius:12px;width:100%;min-height:96px;margin:0 0 10px;padding:12px;font-size:15px;line-height:1.45;display:block}.msg-action-sheet__error{color:#b42318;margin:0 8px 10px;font-size:13px}.chat-row__meta{align-items:center;gap:6px;margin-top:2px;display:flex}.chat-row__more{color:#99a8b4;cursor:pointer;opacity:.55;background:0 0;border:none;min-width:32px;min-height:32px;padding:0;font-size:16px;font-weight:800}.chat-row:hover .chat-row__more,.chat-row:focus-within .chat-row__more{opacity:1}.chat-toast{left:50%;bottom:calc(88px + env(safe-area-inset-bottom,0px));z-index:90;color:#fff;pointer-events:none;background:#141c24eb;border-radius:999px;padding:10px 16px;font-size:13px;font-weight:700;position:fixed;transform:translate(-50%)}.chat-row,.chat-row__bubble{-webkit-touch-callout:none;-webkit-user-select:none;user-select:none}.share-action-sheet__btn{justify-content:flex-start;align-items:center;gap:10px;padding-left:16px;display:inline-flex}.share-action-sheet__section{margin:0 0 12px}.share-action-sheet__heading{color:#1a2a33;margin:0 8px 8px;font-size:13px;font-weight:700}.share-action-sheet__empty{color:#678;background:#f3f6f8;border-radius:12px;margin:0 8px 4px;padding:14px 12px;font-size:14px;font-weight:600;line-height:1.4}.share-recipient-row{-webkit-overflow-scrolling:touch;gap:12px;padding:4px 8px 8px;display:flex;overflow-x:auto}.share-recipient{color:#1a2a33;background:0 0;border:0;flex-direction:column;flex:none;align-items:center;gap:6px;min-width:64px;padding:4px;display:flex}.share-recipient__avatar{background:#e8eef2;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;font-size:16px;font-weight:700;display:flex;position:relative;overflow:hidden}.share-recipient__avatar img{object-fit:cover;width:100%;height:100%}.share-recipient__check{color:#fff;text-align:center;background:#1a7f4b;border-radius:50%;width:18px;height:18px;font-size:11px;line-height:18px;position:absolute;bottom:-2px;right:-2px}.share-recipient.is-sending{opacity:.55}.share-recipient__name{text-align:center;text-overflow:ellipsis;white-space:nowrap;max-width:72px;font-size:11px;font-weight:700;overflow:hidden}.share-recipient-more{color:#1a2a33;background:#f3f6f8;border:0;border-radius:12px;width:calc(100% - 16px);min-height:44px;margin:0 8px 8px;font-size:14px;font-weight:700;display:block}.share-picker{z-index:2;justify-content:center;align-items:flex-end;display:flex;position:absolute;inset:0}.share-picker__backdrop{background:#0a101659;border:0;position:absolute;inset:0}.share-picker__panel{width:100%;max-height:70%;padding:12px 12px calc(12px + env(safe-area-inset-bottom,0px));background:#fff;border-radius:16px 16px 0 0;position:relative;overflow:auto}.share-picker__head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.share-picker__head h3{margin:0;font-size:15px}.share-picker__close,.share-picker__list .share-recipient{min-height:44px}.share-picker__list{margin:0;padding:0;list-style:none}.share-picker__list .share-recipient{flex-direction:row;justify-content:flex-start;gap:12px;width:100%;padding:8px}.share-picker__list .share-recipient__name{max-width:none;font-size:15px}.share-card{max-width:260px;color:inherit;background:#fff;border-radius:16px;padding:12px;text-decoration:none;display:block;box-shadow:0 8px 24px #141c241f}.share-card__brand{letter-spacing:.04em;color:#8a1f2b;margin:0 0 8px;font-size:11px;font-weight:800}.share-card__author{align-items:center;gap:8px;margin-bottom:8px;display:flex}.share-card__avatar{background:#e8eef2;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:12px;font-weight:700;display:flex;overflow:hidden}.share-card__avatar img{object-fit:cover;width:100%;height:100%}.share-card__author-text{flex-direction:column;min-width:0;display:flex}.share-card__handle,.share-card__seller{color:#678;font-size:12px}.share-card__body,.share-card__title{margin:0 0 8px;font-size:14px;line-height:1.45}.share-card__price{margin:0 0 4px;font-size:16px;font-weight:800}.share-card__media{object-fit:cover;background:#eef2f5;border-radius:12px;width:100%;max-height:160px;margin-bottom:8px}.share-card__cta{color:#8a1f2b;font-size:13px;font-weight:800;display:block}.share-card--unavailable{box-shadow:none;color:#678;background:#f3f6f8;font-size:13px;font-weight:700}@media (width>=1024px){.share-picker{align-items:center}.share-picker__panel{border-radius:16px;width:min(400px,100% - 32px);max-height:60%}}.share-toast{left:50%;bottom:calc(88px + env(safe-area-inset-bottom,0px));z-index:90;color:#fff;pointer-events:none;background:#141c24eb;border-radius:999px;padding:10px 16px;font-size:13px;font-weight:700;position:fixed;transform:translate(-50%)}@media (width>=1024px){.share-action-sheet{align-items:center}.share-action-sheet .msg-action-sheet__panel{border-radius:16px;width:min(400px,100% - 32px);margin:0;box-shadow:0 16px 48px #0003}}.notifications-page .page-title{margin:0 0 16px;font-size:20px;font-weight:700}.follow-request-entry{color:inherit;background:#fff;border-radius:12px;align-items:center;gap:10px;margin:0 0 16px;padding:14px 16px;text-decoration:none;display:flex;box-shadow:0 1px 4px #0000000f}.follow-request-entry__label{color:#1a1a1a;flex:1;font-size:15px;font-weight:700}.follow-request-entry__badge{color:#fff;text-align:center;background:#e53935;border-radius:999px;min-width:20px;height:20px;padding:0 6px;font-size:12px;font-weight:700;line-height:20px}.follow-request-entry__chevron{color:#999;font-size:20px;font-weight:400;line-height:1}.notification-list{margin:0;padding:0;list-style:none}.notification-item{background:#fff;border-radius:12px;margin-bottom:8px;box-shadow:0 1px 4px #0000000f}.notification-item a,.notification-item .notification-static{color:inherit;padding:14px 16px;text-decoration:none;display:block}.notification-item.is-unread{border-left:4px solid #891e2b}.notification-message{margin:0 0 6px;font-size:14px;line-height:1.5}.notification-time{color:#536471;font-size:12px}.notifications-page .empty-message{text-align:center;color:#536471;padding:48px 16px;font-size:14px}@media (width<=1023px){.notifications-page .page-title{display:none}}.auth-page{color:#222;background:#f5f5f5;min-height:100dvh;font-family:Hiragino Sans,Noto Sans JP,Meiryo,sans-serif}.auth-page .main-inner{max-width:400px;margin:40px auto;padding:16px}.auth-page .form-card{background:#fff;border-radius:12px;padding:24px;box-shadow:0 1px 4px #0000000f}.auth-page h1{margin:0 0 20px;font-size:20px}.auth-page label{margin-bottom:6px;font-size:14px;font-weight:600;display:block}.auth-page input,.auth-page select{box-sizing:border-box;border:1px solid #ddd;border-radius:8px;width:100%;margin-bottom:14px;padding:10px 12px;font-family:inherit;font-size:16px}.auth-page .btn{color:#fff;cursor:pointer;background:#891e2b;border:none;border-radius:8px;width:100%;height:44px;font-family:inherit;font-size:15px;font-weight:600}.auth-page .btn:hover:not(:disabled){background:#6f1722}.auth-page .btn:disabled{cursor:not-allowed;background:#c9a0a6}.auth-page .errors,.auth-page .field-error{color:#891e2b;margin-bottom:12px;font-size:13px}.auth-page .field-error{margin:-8px 0 12px}.auth-page .footer-link{text-align:center;color:#666;margin-top:16px;font-size:14px;display:block}.auth-page .footer-link a{color:#891e2b}.auth-page .browse-cta{border-top:1px solid #eee;margin-top:20px;padding-top:16px}.auth-page .browse-cta a,.auth-page .browse-cta button.linkish{color:#891e2b;cursor:pointer;font-weight:600;line-height:1.5;font-size:inherit;background:0 0;border:none;padding:0;font-family:inherit;text-decoration:underline;display:inline}.auth-page .hint{color:#666;margin:-8px 0 14px;font-size:12px}.auth-page .terms-agree{align-items:flex-start;gap:10px;margin:4px 0 16px;font-size:14px;line-height:1.5;display:flex}.auth-page .terms-agree input[type=checkbox]{accent-color:#891e2b;flex-shrink:0;width:18px;height:18px;margin:2px 0 0}.auth-page .terms-agree a{color:#891e2b;font-weight:600;text-decoration:underline}.auth-page .messages{margin:0 0 16px;padding:0;list-style:none}.auth-page .messages li{border-radius:8px;margin-bottom:8px;padding:10px 12px;font-size:14px}.auth-page .messages .info{color:#1565c0;background:#e3f2fd}.auth-page .messages .error{color:#c62828;background:#ffebee}.auth-page .messages .success{color:#2e7d32;background:#e8f5e9}.more-page .page-title{margin:0 0 16px;font-size:20px;font-weight:700}.more-section-title{color:#536471;margin:20px 16px 8px;font-size:13px;font-weight:700}.more-list{margin:0;padding:0;list-style:none}.more-link{color:inherit;text-align:left;cursor:pointer;background:#fff;border:none;border-bottom:1px solid #eff3f4;width:100%;padding:14px 16px;font-family:inherit;font-size:15px;font-weight:600;text-decoration:none;display:block}.more-link:hover,.more-link:focus-visible{background:#f7f9f9}.more-link-button{border-bottom:1px solid #eff3f4}.more-link-note{color:#8899a6;margin-left:6px;font-size:11px;font-weight:500;display:inline}.more-link-copy{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.more-link-copy .more-link-note{margin-left:0}@media (width<=1023px){.more-page .page-title{display:none}}.settings-page .page-title{margin:0 0 16px;font-size:20px;font-weight:700}.settings-card{background:#fff;border-radius:12px;margin-bottom:12px;padding:16px;box-shadow:0 1px 3px #0000000a}.settings-card h2{margin:0 0 8px;font-size:16px}.settings-lead{color:#536471;margin:0 0 14px;font-size:13px;line-height:1.5}.settings-privacy{border:none;margin:0;padding:0}.settings-radio{cursor:pointer;border-top:1px solid #eff3f4;align-items:flex-start;gap:10px;padding:12px 0;display:flex}.settings-radio:first-of-type{border-top:none;padding-top:0}.settings-radio input{margin-top:3px}.settings-radio strong{font-size:14px;display:block}.settings-radio small{color:#536471;margin-top:4px;font-size:12px;line-height:1.45;display:block}.settings-flash{border-radius:8px;margin:0 0 12px;padding:10px 12px;font-size:13px}.settings-flash--ok{color:#2e7d32;background:#e8f5e9}.settings-flash--error{color:#c62828;background:#ffebee}.settings-link-btn{width:100%;text-decoration:none;display:inline-flex}.settings-classic-list{margin:0 -16px -16px}.settings-page .btn{cursor:pointer;border:none;border-radius:999px;justify-content:center;align-items:center;min-height:40px;padding:0 14px;font-family:inherit;font-size:14px;font-weight:700;display:inline-flex}.settings-page .btn-primary{background:var(--accent,#891e2b);color:#fff}.settings-page .btn-secondary{color:var(--text,#0f1419);background:#fff;border:1px solid #cfd9de}.follow-request-list{margin:0;padding:0;list-style:none}.follow-request-item{background:#fff;border-bottom:1px solid #eff3f4;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:14px 0;display:flex}.follow-request-user{min-width:0;color:inherit;flex:1;align-items:center;gap:10px;text-decoration:none;display:flex}.follow-request-avatar{object-fit:cover;background:#eff3f4;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-weight:700;display:inline-flex}.follow-request-names{flex-direction:column;gap:2px;min-width:0;display:flex}.follow-request-names strong{font-size:15px}.follow-request-names small{color:#536471;font-size:12px}.follow-request-actions{flex-shrink:0;gap:8px;display:flex}.follow-request-actions .btn{min-width:72px}.auth-page .email-delivery-hint,.email-delivery-hint{color:#5c4a1f;background:#fff8e8;border:1px solid #f0d6a8;border-radius:10px;margin:0 0 16px;padding:12px 14px}.auth-page .email-delivery-hint__title,.email-delivery-hint__title{color:#3d3114;margin:0 0 8px;font-size:14px;font-weight:700;line-height:1.4}.auth-page .email-delivery-hint__body,.email-delivery-hint__body{margin:0 0 8px;font-size:13px;line-height:1.6}.auth-page .email-delivery-hint__warn,.email-delivery-hint__warn{color:#6b4e16;margin:0;font-size:13px;font-weight:600;line-height:1.55}.auth-page .email-delivery-hint--compact,.email-delivery-hint--compact{color:#6b4e16;background:#fff8e8;border:1px solid #f0d6a8;border-radius:8px;margin:10px 0 0;padding:10px 12px;font-size:13px;font-weight:600;line-height:1.5}.onboarding-page{box-sizing:border-box;flex-direction:column;width:100%;min-width:0;max-width:100%;min-height:100dvh;margin-top:0;margin-bottom:0;display:flex;overflow-x:hidden}.auth-page .onboarding-page{max-width:430px;padding-top:max(12px, env(safe-area-inset-top,0px));padding-bottom:max(12px, env(safe-area-inset-bottom,0px));margin:0 auto}.auth-page .onboarding-page:has(.onboarding-card.is-wizard){height:100dvh}.auth-page:has(.onboarding-page){flex-direction:column;min-height:100dvh;display:flex;overflow-x:hidden}.auth-page .onboarding-card.is-wizard{box-shadow:none;background:0 0;border-radius:0;flex-direction:column;flex:1;min-width:0;max-width:100%;min-height:0;padding:8px 4px 0;display:flex;overflow:hidden}.auth-page .onboarding-page:has(.onboarding-card.is-welcome){height:100dvh;padding-bottom:calc(12vh + env(safe-area-inset-bottom,0px));justify-content:center}.auth-page .onboarding-card.is-welcome{flex:none;width:100%;margin-top:0;margin-bottom:0}.onboarding-wizard{flex-direction:column;flex:1;min-width:0;max-width:100%;min-height:0;display:flex;overflow:hidden}.onboarding-wizard-bar{flex-shrink:0;grid-template-columns:64px 1fr 64px;align-items:center;margin:0 0 8px;display:grid}.onboarding-back,.onboarding-back-spacer{min-height:32px}.onboarding-back{color:var(--muted,#536471);cursor:pointer;background:0 0;border:0;justify-self:start;padding:6px 4px;font-family:inherit;font-size:14px}.onboarding-back:disabled{opacity:.5;cursor:not-allowed}.onboarding-dots{justify-content:center;gap:8px;margin:0;display:flex}.onboarding-dots span{background:#e5e7eb;border-radius:50%;width:8px;height:8px}.onboarding-dots span.is-on{background:var(--accent,#891e2b)}.onboarding-slides{flex-direction:column;flex:1;width:100%;min-width:0;max-width:100%;min-height:0;display:flex;position:relative;overflow:hidden}.onboarding-pane{box-sizing:border-box;flex-direction:column;flex:1;width:100%;max-width:100%;min-height:0;padding:0 4px;display:flex;overflow-x:hidden}.onboarding-pane.is-forward{animation:.22s onboarding-in-forward}.onboarding-pane.is-back{animation:.22s onboarding-in-back}@keyframes onboarding-in-forward{0%{opacity:.4;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes onboarding-in-back{0%{opacity:.4;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}.onboarding-pane form{flex-direction:column;flex:1;width:100%;min-height:0;display:flex}.onboarding-pane-body{flex-direction:column;flex:auto;justify-content:center;min-height:0;padding-top:clamp(8px,4vh,36px);padding-bottom:clamp(28px,14vh,120px);display:flex;overflow:hidden auto}.onboarding-pane-footer{flex-shrink:0;padding-top:8px;padding-bottom:4px}.auth-page .onboarding-question{letter-spacing:-.02em;margin:0 0 28px;font-size:26px;font-weight:700;line-height:1.35}.auth-page .onboarding-card.is-wizard input,.auth-page .onboarding-card.is-wizard select{border-radius:12px;margin-bottom:10px;padding:14px 16px;font-size:17px}.onboarding-handle{background:#fff;border:1px solid #ddd;border-radius:12px;align-items:center;margin-bottom:10px;display:flex}.onboarding-handle-at{color:var(--muted,#536471);flex-shrink:0;padding:0 0 0 16px;font-size:17px;font-weight:600}.auth-page .onboarding-handle input{background:0 0;border:0;margin:0;padding-left:6px}.onboarding-handle:focus-within{border-color:var(--accent,#891e2b)}.onboarding-note{color:var(--muted,#536471);margin:4px 0 0;font-size:13px;line-height:1.55}.auth-page .onboarding-cta{border-radius:12px;height:48px;margin-top:0;font-size:16px}.onboarding-avatar-btn{width:148px;height:148px;color:var(--muted,#536471);background:#f1f3f5;border:0;border-radius:50%;justify-content:center;align-items:center;margin:8px auto 16px;padding:0;display:flex;overflow:hidden}.onboarding-avatar-btn img{object-fit:cover;width:100%;height:100%}.onboarding-avatar-btn.is-empty{background:#fafafa;border:2px dashed #d1d5db;font-size:42px;font-weight:300;line-height:1}.onboarding-photo-add{color:var(--accent,#891e2b);cursor:pointer;background:0 0;border:0;margin:0 auto 18px;padding:0;font-family:inherit;font-size:15px;font-weight:700;display:block}.onboarding-avatar-step .image-pick{display:none}.onboarding-avatar-step.is-picking .image-pick{display:flex}.onboarding-avatar-step .image-pick__preview{display:none}.onboarding-skip-wrap{text-align:center;margin:14px 0 0}.onboarding-skip{color:var(--muted,#536471);cursor:pointer;background:0 0;border:0;padding:8px;font-family:inherit;font-size:14px}.onboarding-legal{text-align:center;color:#9aa3ad;flex-shrink:0;margin:20px 0 0;font-size:12px}.onboarding-legal button,.onboarding-legal a{color:inherit;font-family:inherit;font-size:inherit;cursor:pointer;background:0 0;border:0;padding:0;text-decoration:none}.onboarding-progress{color:var(--muted);margin:0 0 16px;font-size:14px;font-weight:600}.onboarding-follow-list{flex-direction:column;gap:10px;margin:0 0 16px;padding:0;list-style:none;display:flex}.onboarding-follow-row{align-items:center;gap:10px;display:flex}.onboarding-follow-row .search-user-text{flex:1;min-width:0}.onboarding-follow-btn{flex-shrink:0;width:auto;min-width:96px;height:36px;padding:0 12px;font-size:13px}.onboarding-follow-btn.is-following{color:var(--accent);border:1px solid var(--accent);background:#fff}@media (prefers-reduced-motion:reduce){.onboarding-pane.is-forward,.onboarding-pane.is-back{animation:none}}@media (width<=430px){.auth-page .onboarding-page{max-width:none}.auth-page .onboarding-question{font-size:24px}}.push-preperm{z-index:500;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.push-preperm__backdrop{cursor:pointer;background:#0f172073;border:0;padding:0;position:absolute;inset:0}.push-preperm__panel{z-index:1;box-sizing:border-box;width:min(560px,100%);padding:24px 20px calc(16px + env(safe-area-inset-bottom,0px));background:#fff;border-radius:16px 16px 0 0;position:relative;box-shadow:0 -8px 32px #0f17201f}.push-preperm__title{color:#0f1419;margin:0 0 10px;font-size:20px;font-weight:700;line-height:1.35}.push-preperm__body{color:#536471;margin:0 0 20px;font-size:15px;line-height:1.55}.push-preperm__primary,.push-preperm__secondary{cursor:pointer;border:0;border-radius:12px;width:100%;min-height:48px;font-family:inherit;font-size:15px;font-weight:700;display:block}.push-preperm__primary{color:#fff;background:#891e2b}.push-preperm__primary:disabled,.push-preperm__secondary:disabled{opacity:.6;cursor:not-allowed}.push-preperm__secondary{color:#536471;background:0 0;margin-top:8px}@media screen and (width<=1023px){input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=button]):not([type=submit]):not([type=reset]):not([type=image]):not([type=hidden]):not([type=color]),textarea,select{font-size:16px!important}}
