/* Shared disclosure markup keeps the full desktop controls and no-script forms. */
.mobile-only{display:none!important}
.public-site .feed-filter-details{min-width:0;border:0;margin:0;padding:0}
.public-site .feed-filter-details>summary{display:none}
.public-site .feed-filter-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}
.public-site .community-filter.forum-search{grid-template-columns:minmax(0,1.2fr) minmax(0,2fr) auto}
.public-site .community-filter .filter-query{grid-column:auto}
.public-site .community-filter>.btn{grid-column:auto;grid-row:auto}
.public-site .feed-announcement{border-bottom:1px solid var(--line)}
.public-site .feed-announcement>summary{display:flex;align-items:center;gap:9px;list-style:none;color:var(--ink-soft);font-size:12px}
.public-site .feed-announcement>summary::-webkit-details-marker,
.public-site .feed-reference>summary::-webkit-details-marker{display:none}
.public-site .feed-announcement>summary>.icon:last-child{margin-left:auto}
.public-site .feed-announcement-body{padding-top:10px}
.public-site .feed-announcement-body>p{font-size:12px;line-height:1.9;margin:6px 0 9px;color:var(--muted)}
.public-site .feed-reference>summary{list-style:none;cursor:pointer}
.public-site .feed-reference>summary>.icon:last-child{margin-left:auto}
.public-site .sidebar-rules .feed-reference-body>a{display:block;font-size:12px;margin-top:12px}
.public-site .nav-more-chevron{display:inline-flex;align-items:center}
.public-site .nav-more[open] .nav-more-chevron{transform:rotate(180deg)}
.public-site details.draft-tools{display:block}
.public-site details.draft-tools[open]>summary{margin-bottom:8px}
@media(min-width:721px) and (max-width:1130px){
  .public-site .community-filter.forum-search{grid-template-columns:minmax(0,1fr) auto}
  .public-site .community-filter .filter-query{grid-column:1 / -1}
  .public-site .feed-filter-details{grid-column:1;grid-row:2}
  .public-site .community-filter>.btn{grid-column:2;grid-row:2}
}
@media(min-width:721px){
  .public-site .feed-announcement>summary>.icon:last-child,
  .public-site .feed-reference>summary>.icon:last-child{display:none}
}

/* Phone layout: one header, one primary action, and content before promotion. */
@media(max-width:720px){
  .public-site{font-size:15px;background:#f5f7fb;padding-bottom:calc(64px + env(safe-area-inset-bottom,0px))}
  .public-site .desktop-only{display:none!important}
  .public-site .mobile-only{display:initial!important}
  .public-site .topbar-inner{display:grid;grid-template-columns:minmax(0,1fr) auto 40px;min-height:60px;gap:6px;padding:7px 12px;flex-wrap:nowrap}
  .public-site .brand{grid-column:1;gap:7px;min-width:0}
  .public-site .brand-mark{width:30px;height:32px;border-radius:10px 10px 10px 4px}
  .public-site .brand-mark .icon{width:20px;height:20px}
  .public-site .brand-copy strong{font-size:15px;line-height:1.45;letter-spacing:0;white-space:nowrap}
  .public-site .brand small{display:none}
  .public-site .account-nav{grid-column:2;grid-row:1;margin:0;gap:3px;min-width:0}
  .public-site .account-nav .account-login{font-size:13px;min-width:40px;min-height:44px;padding:9px 5px}
  .public-site .account-nav .account-register{display:none}
  .public-site .nav-user{max-width:68px;font-size:12px;line-height:1.5;justify-content:center;gap:2px}
  .public-site .nav-user .verified-badge{font-size:10px}
  .public-site .account-nav .text-button{min-height:44px;padding:9px 5px;font-size:12px}
  .public-site .nav{grid-column:3;grid-row:1;display:flex;justify-content:flex-end;align-items:center;min-width:0;min-height:44px;margin:0;padding:0;overflow:visible;flex-basis:auto;order:initial}
  .public-site .nav>.nav-primary,.public-site .nav>.nav-guide{display:none}
  .public-site .nav-more{position:relative}
  .public-site .nav-more>summary{display:flex;width:40px;min-width:40px;height:44px;padding:9px;justify-content:center;border-radius:10px}
  .public-site .nav-more>summary>.icon{width:22px;height:22px}
  .public-site .nav-more-label,.public-site .nav-more-chevron{display:none}
  .public-site .nav-more-menu{right:0;left:auto;top:calc(100% + 7px);width:min(300px,calc(100vw - 24px));max-height:calc(100dvh - 142px);overflow-y:auto;padding:7px;border-radius:13px;overscroll-behavior:contain}
  .public-site .nav .nav-more-menu>a{min-height:58px;padding:10px;font-size:14px;grid-template-columns:23px minmax(0,1fr);gap:1px 10px}
  .public-site .nav .nav-more-menu>a.mobile-only{display:grid!important}
  .public-site .nav-more-menu small{font-size:12px;line-height:1.6}
  .public-site .wrap{padding:12px 12px 24px;min-height:calc(100dvh - 200px)}
  .public-site .campus-hero.forum-header{display:block;min-height:0;padding:14px;margin:0 0 12px;border-radius:13px;background:#fff;box-shadow:none}
  .public-site .campus-hero .forum-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 10px;max-width:none;flex-basis:auto}
  .public-site .campus-hero .forum-heading-line{grid-column:1;grid-row:1;min-width:0;margin:0}
  .public-site .campus-hero .forum-heading h1{font-size:24px;line-height:1.45;letter-spacing:-.4px;margin:0;white-space:nowrap}
  .public-site .campus-hero .forum-heading>p{grid-column:1 / -1;grid-row:2;font-size:14px;line-height:1.7;color:var(--muted);margin:0}
  .public-site .campus-hero .hero-actions{grid-column:2;grid-row:1;margin:0;display:block}
  .public-site .campus-hero .hero-actions>.btn{min-height:44px;padding:10px 12px;gap:6px;font-size:13px;white-space:nowrap}
  .public-site .campus-hero .hero-actions>.btn>.icon:last-child{display:none}
  .public-site .campus-hero .hero-illustration{display:none}
  .public-site .campus-hero .hero-eyebrow,
  .public-site .campus-hero .hero-principles{display:none}
  .public-site .forum-layout{display:block}
  .public-site .forum-panel{border-radius:12px}
  .public-site .forum-tabs{display:flex;overflow-x:auto;flex-wrap:nowrap;gap:0;padding:0 8px;scrollbar-width:none;overscroll-behavior-inline:contain}
  .public-site .forum-tabs>a{flex:none;display:inline-flex;align-items:center;min-height:46px;padding:11px 10px;font-size:13px;white-space:nowrap}
  .public-site .forum-tabs .forum-exposure-link{display:none}
  .public-site .community-filter.forum-search{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px 8px;padding:12px 12px 5px;align-items:center}
  .public-site .community-filter .filter-query{grid-column:1;grid-row:1;min-width:0;gap:0}
  .public-site .community-filter .filter-query>span:first-child{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
  .public-site .community-filter .filter-field input[type=search]{font-size:16px;min-height:46px;height:46px;padding-block:10px;order:initial}
  .public-site .community-filter .filter-field input::placeholder{font-size:14px}
  .public-site .community-filter>.btn{grid-column:2;grid-row:1;justify-self:stretch;min-height:46px;font-size:13px;padding:10px 12px;gap:5px}
  .public-site .community-filter>.btn .icon{width:15px;height:15px}
  .public-site .feed-filter-details{grid-column:1 / -1;grid-row:2;display:block;min-width:0}
  .public-site .feed-filter-details>summary{display:flex;align-items:center;gap:7px;min-height:44px;padding:8px 2px;cursor:pointer;color:var(--ink-soft);font-size:13px;list-style:none}
  .public-site .feed-filter-details>summary::-webkit-details-marker{display:none}
  .public-site .feed-filter-details>summary>.icon:last-child{margin-left:auto;transition:transform .15s}
  .public-site .feed-filter-details[open]>summary>.icon:last-child{transform:rotate(180deg)}
  .public-site .filter-active-note{font-size:12px;color:var(--brand);margin-left:auto;background:var(--brand-soft);padding:1px 7px;border-radius:5px}
  .public-site .feed-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:2px 0 12px}
  .public-site .feed-filter-fields .filter-field>span:first-child{font-size:12px;line-height:1.6}
  .public-site .community-filter .feed-filter-fields select{flex:none;width:100%;max-width:100%;min-width:0;min-height:46px;height:46px;font-size:16px;padding:10px 6px}
  .public-site .content-filter-bar{padding:0 10px 8px;gap:3px}
  .public-site .content-filter{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;width:100%}
  .public-site .content-filter a{display:flex;align-items:center;justify-content:center;min-height:44px;padding:9px 6px;font-size:13px;white-space:nowrap;border-radius:8px}
  .public-site .content-filter-bar>.filter-reset{display:inline-flex;align-items:center;min-height:44px;padding:8px 3px;font-size:13px}
  .public-site .forum-toolbar{min-height:44px;align-items:center;gap:5px 12px;padding:6px 12px;font-size:12px;line-height:1.6}
  .public-site .forum-toolbar .sort-links{font-size:12px;gap:12px}
  .public-site .sort-links a{display:inline-flex;align-items:center;min-height:44px;padding:5px 0}
  .public-site .feed-announcement.thread-pinned{padding:0 12px;background:#fafcff}
  .public-site .feed-announcement>summary{cursor:pointer;min-height:44px;padding:8px 0;gap:7px;font-size:12px;line-height:1.7}
  .public-site .feed-announcement>summary .tag{font-size:11px}
  .public-site .feed-announcement[open]>summary>.icon:last-child{transform:rotate(180deg)}
  .public-site .feed-announcement-body{padding:2px 0 14px}
  .public-site .feed-announcement-body>.thread-title{font-size:14px;line-height:1.8}
  .public-site .feed-announcement-body>p{font-size:13px;line-height:1.85}
  .public-site .feed-announcement-body .thread-meta{font-size:12px;gap:3px}
  .public-site .feed-announcement-body .thread-meta>a{display:inline-flex;align-items:center;min-height:44px}
  .public-site .thread-list .thread-row{position:relative;display:block;padding:17px 14px;border-bottom:1px solid var(--line)}
  .public-site .thread-list .reply-count{display:flex;flex-direction:row;gap:4px;position:absolute;right:14px;bottom:17px;width:auto;min-width:54px;min-height:44px;margin:0;padding:8px 9px;border:0;border-radius:8px;background:#f3f6fb;font-size:12px;z-index:1}
  .public-site .thread-list .reply-count strong{font-size:13px}
  .public-site .thread-title-line{display:flex;align-items:center;flex-wrap:wrap;gap:6px 8px;margin-bottom:8px}
  .public-site .thread-title-line>.thread-category{order:0;font-size:11px;padding:2px 6px;margin:0;grid-area:auto}
  .public-site .thread-title-line>.thread-score{order:1;grid-area:auto;margin-left:auto;font-size:16px;line-height:1.5;padding:2px 7px}
  .public-site .thread-score small{font-size:11px}
  .public-site .thread-title-line>.thread-title{order:2;grid-area:auto;flex:0 1 100%;min-width:0;font-size:16px;line-height:1.65;color:#355779}
  .public-site .thread-excerpt{font-size:14px;line-height:1.85;color:#53657b;margin:4px 0 8px;-webkit-line-clamp:3}
  .public-site .thread-rating-line{margin-bottom:5px}
  .public-site .thread-rating-line .post-rating-summary{font-size:12px;line-height:1.75;min-height:32px}
  .public-site .thread-meta{display:flex;align-items:center;flex-wrap:wrap;gap:3px 10px;font-size:12px;line-height:1.7;padding-right:0}
  .public-site .thread-meta>a:first-child{flex-basis:100%;font-size:12px;min-height:36px;display:inline-flex;align-items:center}
  .public-site .thread-author{font-size:12px;gap:5px}
  .public-site .reviewed-label{font-size:11px;margin:0}
  .public-site .thread-meta .verified-badge{font-size:10px}
  .public-site .thread-list .bookmark-control{flex-basis:auto;min-height:44px}
  .public-site .thread-list .bookmark-toggle.btn{min-height:44px;min-width:54px;padding:8px 5px;font-size:12px;gap:5px}
  .public-site .thread-list .bookmark-toggle .icon{width:16px;height:16px}
  .public-site .thread-meta .report-link{display:inline-flex;align-items:center;min-height:44px;min-width:48px;padding:8px 3px;margin-left:0;margin-right:66px;font-size:12px}
  .public-site .thread-list .browser-tool-status{max-width:100%;font-size:12px}
  .public-site .forum-sidebar{display:block;margin-top:14px}
  .public-site .forum-sidebar .feed-reference.forum-panel{padding:0 16px;margin-top:12px}
  .public-site .feed-reference>summary{display:flex;align-items:center;flex-wrap:nowrap;gap:9px;min-height:54px;padding:12px 0;margin:0;border-bottom:0;cursor:pointer}
  .public-site .feed-reference>summary h2{display:flex;align-items:center;gap:7px;flex:1;min-width:0;margin:0;font-size:15px;line-height:1.6}
  .public-site .feed-reference>summary>span{font-size:12px;white-space:nowrap;margin-left:0}
  .public-site .feed-reference>summary>.icon:last-child{margin-left:0}
  .public-site .feed-reference[open]>summary>.icon:last-child{transform:rotate(180deg)}
  .public-site .feed-reference-body{padding-bottom:15px}
  .public-site .feed-reference .rank-row{float:none;width:100%;padding:10px 0;min-height:58px;border-left:0}
  .public-site .feed-reference .rank-name strong{font-size:14px}
  .public-site .feed-reference .rank-name small,.public-site .feed-reference .sidebar-fine{font-size:12px}
  .public-site .feed-reference .sidebar-fine{clear:both;margin-top:8px;padding-top:0;line-height:1.9}
  .public-site .sidebar-rules .feed-reference-body>a{display:flex;align-items:center;min-height:44px;font-size:14px;margin:0}
  .public-site .feed-reference-body .sidebar-fine{font-size:14px;line-height:1.85}
  .public-site .students-search.forum-search{padding:12px;gap:8px;flex-wrap:wrap}
  .public-site .students-search .search-input-wrap{flex:1;min-width:0}
  .public-site .students-search .search-input-wrap input[type=search]{min-height:46px;height:46px;font-size:16px}
  .public-site .students-search .search-input-wrap input::placeholder{font-size:14px}
  .public-site .students-search>.btn{min-height:46px;font-size:13px;padding:10px 13px}
  .public-site .students-search>.filter-reset{min-height:44px;font-size:13px}
  .public-site input[type=text],.public-site input[type=password],.public-site input[type=number],
  .public-site input[type=search],.public-site textarea,.public-site select{font-size:16px}
  .public-site .pagination a{min-width:42px;min-height:44px;font-size:13px}
  .public-site .foot{padding:18px 0;margin:8px 14px 0;font-size:12px;gap:8px}
  .public-site .foot>span,.public-site .foot .foot-description,.public-site .foot-links>span{display:none}
  .public-site .foot-links{display:flex;flex-wrap:wrap;gap:0 16px;font-size:12px}
  .public-site .foot-links>a{display:inline-flex;align-items:center;min-height:44px}
  .public-site .mobile-tabbar{position:fixed;left:0;right:0;bottom:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:5px 8px calc(5px + env(safe-area-inset-bottom,0px));min-height:64px;background:rgba(255,255,255,.98);border-top:1px solid var(--line);z-index:30}
  .public-site .mobile-tabbar>a{min-height:49px;font-size:12px;gap:3px;padding:4px;line-height:1.5;border-radius:9px}
  .public-site .mobile-tabbar .icon{width:21px;height:21px}
  .public-site.keyboard-open .mobile-tabbar{display:none}
  .public-site.keyboard-open{padding-bottom:0}
  .public-site :is(input,textarea,select,[id]){scroll-margin-top:76px;scroll-margin-bottom:90px}
}
@media(max-width:360px){
  .public-site .topbar-inner{gap:3px;padding-inline:10px;grid-template-columns:minmax(0,1fr) auto 40px}
  .public-site .brand{gap:5px}.public-site .brand-copy strong{font-size:14px}
  .public-site .brand-mark{width:28px;height:30px}
  .public-site .campus-hero .forum-heading h1{font-size:22px}
  .public-site .campus-hero .hero-actions>.btn{font-size:12px;padding-inline:10px}
  .public-site .campus-hero .forum-heading>p{font-size:13px}
  .public-site .forum-tabs>a{font-size:12px;padding-inline:9px}
  .public-site .content-filter a{font-size:12px}
  .public-site .forum-toolbar .sort-links{gap:8px}
  .public-site .feed-reference>summary>span{font-size:11px}
}
/* Short phone screens still show the first discussion above the bottom tabs. */
@media(max-width:720px) and (max-height:700px){
  .public-site .wrap{padding-top:8px}
  .public-site .campus-hero.forum-header{padding:10px 12px;margin-bottom:8px}
  .public-site .campus-hero .forum-heading>p{display:none!important}
  .public-site .forum-tabs>a{min-height:44px}
  .public-site .community-filter.forum-search{padding-top:8px;padding-bottom:1px;row-gap:3px}
  .public-site .content-filter-bar{padding-bottom:4px}
  .public-site .forum-toolbar{padding-top:0;padding-bottom:0}
}
