.pg-school{max-width:var(--w-read,720px);margin-inline:auto}.school-head{margin-bottom:var(--s-4)}.school-eyebrow{font-size:var(--fs-sm);font-weight:var(--fw-head);color:var(--text-faint);margin-bottom:4px;text-decoration:none;display:block}.school-name{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.school-rank-badge{font-size:var(--fs-lg);color:var(--text-dim)}.school-sub{font-size:var(--fs-md);color:var(--text-dim);margin:6px 0 0}.school-sub strong{color:var(--text);font-weight:var(--fw-head)}.school-actions{flex-wrap:wrap;gap:10px;margin-top:16px;display:flex}.school-actions .btn{align-items:center;gap:6px;display:inline-flex}.school-empty,.school-locked{font-size:var(--fs-md);color:var(--text-faint);margin:0 0 12px}.school-locked{color:var(--text-dim);align-items:center;gap:6px;display:flex}.school-events{scrollbar-width:none;scroll-snap-type:x proximity;gap:12px;padding-bottom:4px;display:flex;overflow-x:auto}.school-events::-webkit-scrollbar{display:none}.school-event{scroll-snap-align:start;flex:0 0 min(42vw,168px);min-width:0}.school-event-record{font-size:var(--fs-sm);gap:1px;margin-top:6px;display:grid}.school-event-record span{color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.school-event-record strong{color:var(--text);font-weight:var(--fw-head)}.school-event-record strong.is-none{color:var(--text-faint);font-weight:inherit}.school-list{margin:0;padding:0;list-style:none}.school-row{border-bottom:1px solid var(--border-faint,var(--border));align-items:center;gap:12px;padding:11px 8px;display:flex}.school-row.is-me{background:var(--surface-hi);border-bottom-color:#0000;border-radius:12px}.school-row-rank{text-align:center;font-weight:var(--fw-head);font-variant-numeric:tabular-nums;color:var(--text-dim);flex:0 0 26px}.school-row-main{min-width:0;color:inherit;flex-direction:column;flex:1;text-decoration:none;display:flex}.school-row-title{font-size:var(--fs-md);font-weight:var(--fw-head);color:var(--text);text-overflow:ellipsis;white-space:nowrap;text-decoration:none;overflow:hidden}.school-row-sub{font-size:var(--fs-sm);color:var(--text-faint)}.school-row-score{font-size:var(--fs-md);font-variant-numeric:tabular-nums;color:var(--text-dim);flex-shrink:0}.school-picker-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.school-picker-close{color:var(--text-dim);cursor:pointer;background:0 0;border:0;padding:4px}.school-picker-list{max-height:44dvh;margin:10px 0 0;padding:0;list-style:none;overflow-y:auto}.school-picker-item,.school-picker-picked{border:0;border-bottom:1px solid var(--border-faint,var(--border));width:100%;color:var(--text);font:inherit;font-size:var(--fs-md);text-align:left;cursor:pointer;background:0 0;justify-content:space-between;align-items:center;gap:10px;padding:12px 6px;display:flex}.school-picker-item small,.school-picker-picked small{color:var(--text-faint);font-size:var(--fs-sm);font-weight:var(--fw-body,400);white-space:nowrap}.school-picker-picked>span{flex-direction:column;gap:2px;display:flex}.school-picker-picked{border:1px solid var(--border);font-weight:var(--fw-head);border-radius:12px;padding:12px 14px}.school-picker-none{color:var(--text-faint);font-size:var(--fs-md);padding:16px 6px}.school-picker-label{font-size:var(--fs-sm);font-weight:var(--fw-head);color:var(--text-dim);margin:18px 0 8px}.school-picker-chips{flex-wrap:wrap;gap:8px;display:flex}.school-picker-chips--class{grid-template-columns:repeat(5,1fr);display:grid}.school-chip{border:1px solid var(--border);min-height:40px;color:var(--text);font:inherit;font-size:var(--fs-md);cursor:pointer;background:0 0;border-radius:999px;padding:0 14px}.school-chip.is-on{background:var(--text);border-color:var(--text);color:var(--surface);font-weight:var(--fw-head)}.school-sheet-lines{font-size:var(--fs-md);margin:0;padding:0;line-height:1.9;list-style:none}.school-sheet-lines .is-dim{color:var(--text-faint)}.school-sheet .modal-actions .btn{justify-content:center;align-items:center;gap:6px;display:inline-flex}.school-mine{align-items:center;gap:var(--s-3);border-radius:var(--r-card);background:var(--surface);border:1px solid var(--border);color:var(--text);margin-top:16px;padding:14px 16px;text-decoration:none;display:flex}.school-mine-main{flex:auto;gap:2px;min-width:0;display:grid}.school-mine-main strong{font-size:var(--fs-md);font-weight:var(--fw-head)}.school-mine-main small{font-size:var(--fs-sm);color:var(--text-faint)}body .page.browse .school-sec .sec-h h2>a{color:inherit;transition:color var(--dur-fast) var(--ease);text-decoration:none}body .page.browse .school-sec .sec-h h2>a:hover{color:var(--muted)}body .page.browse .x-head+.school-sec{margin-top:28px}body .page.browse .school-sec .gcard-event{display:none}body .page.browse .school-sec .gcard-thumb:has(.gcard-event) .gcard-stats{max-width:calc(100% - 16px)}.school-event .gcard{flex:none;width:100%;max-width:none}.school-head-top{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 12px;display:flex}.school-head-top .page-title{margin:0}.school-eyebrow{align-items:center;gap:5px;margin-bottom:0;display:inline-flex}.school-deadline{color:#ffd84a;font-size:var(--fs-sm);font-weight:var(--fw-head);font-variant-numeric:tabular-nums;white-space:nowrap;background:#ffd84a29;border-radius:999px;align-items:center;gap:5px;padding:4px 10px;display:inline-flex}.school-how{margin-bottom:var(--s-4);border-radius:var(--r-card);background:var(--surface);border:1px solid var(--border);gap:14px;padding:18px;display:grid}.school-how-title{font-size:var(--fs-md);font-weight:var(--fw-head);margin:0}.school-steps{counter-reset:step;gap:10px;margin:0;padding:0;list-style:none;display:grid}.school-steps li{counter-increment:step;font-size:var(--fs-md);color:var(--text-dim);grid-template-columns:24px 1fr;align-items:start;gap:10px;display:grid}.school-steps li:before{content:counter(step);color:#111;width:24px;height:24px;font-size:var(--fs-sm);font-weight:var(--fw-head);background:#ffd84a;border-radius:50%;justify-content:center;align-items:center;display:flex}.school-how .btn,.school-actions .btn{justify-content:center;align-items:center;gap:6px;display:inline-flex}.school-status{margin-bottom:var(--s-4);border-radius:var(--r-card);background:var(--surface);border:1px solid var(--border);gap:14px;padding:16px;display:grid}.modal .school-status{background:0 0;border:0;margin:12px 0 0;padding:0}.school-status-head,.school-hero-main{align-items:center;gap:14px;min-width:0;display:flex}.school-status-rank{color:#111;text-align:center;background:#ffd84a;border-radius:18px;flex-direction:column;flex:none;justify-content:center;align-items:center;gap:2px;width:76px;height:76px;display:flex}.school-status-rank[data-ranked=false]{background:var(--surface-hi);color:var(--text-faint)}.school-status-rank strong{font-variant-numeric:tabular-nums;font-size:26px;font-weight:800;line-height:1}.school-status-rank small{font-size:11px;font-weight:var(--fw-head);padding-inline:4px;line-height:1.2}.school-status-main,.school-hero-text{gap:3px;min-width:0;display:grid}.school-status-name{font-size:var(--fs-lg);font-weight:var(--fw-head);color:var(--text);align-items:center;gap:2px;text-decoration:none;display:inline-flex}.school-status-line{font-size:var(--fs-md);color:var(--text)}.school-status-last{font-size:var(--fs-sm);color:var(--text-faint)}.school-status-cells{grid-template-columns:1fr 1fr;gap:8px;margin:0;display:grid}.school-status-cells>div{background:var(--surface-hi);border-radius:12px;min-width:0;padding:10px 12px}.school-status-cells dt{font-size:var(--fs-xs,12px);color:var(--text-faint);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.school-status-cells dd{font-size:var(--fs-md);font-weight:var(--fw-head);font-variant-numeric:tabular-nums;margin:2px 0 0}.school-status-cells dd.is-locked{font-size:var(--fs-sm);font-weight:inherit;color:var(--text-dim);gap:4px;display:grid}.school-progress{gap:4px;display:inline-flex}.school-progress i{background:var(--border);border-radius:3px;width:18px;height:5px}.school-progress i.is-on{background:#ffd84a}.school-locked .school-progress{margin-right:4px}.school-status-change{color:var(--text-faint);font:inherit;font-size:var(--fs-sm);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;justify-self:start;padding:0;text-decoration:underline}.school-hero .school-status-change{margin-top:10px}.school-hero-main{margin-top:14px}.school-hero .school-name{margin:0;font-size:clamp(22px,6vw,28px);line-height:1.2}.school-hero .school-sub{flex-wrap:wrap;gap:2px 10px;margin:0;display:flex}.school-tabs{margin:4px 0 8px}.school-row-rank.is-top{color:#111;width:26px;height:26px;font-size:var(--fs-sm);border-radius:50%;flex-basis:26px;justify-content:center;align-items:center;display:flex}.school-row-rank.is-top-1{background:#ffd84a}.school-row-rank.is-top-2{background:#d7dbe2}.school-row-rank.is-top-3{background:#e6a46a}.school-row-score{font-weight:var(--fw-head);color:var(--text)}.school-row-gap{text-align:center;color:var(--text-faint);letter-spacing:.2em;padding:2px 0;list-style:none}.school-more{margin:10px auto 0;display:flex}.school-winners{flex-direction:column;gap:6px;margin:0 0 12px;display:flex}.school-winner{font-size:var(--fs-sm);color:var(--text);background:#ffd84a1f;border-radius:12px;align-items:center;gap:6px;min-width:0;margin:0;padding:8px 12px;text-decoration:none;display:flex}.school-winner svg{color:#e0b300;flex:none}.school-winner-level{color:var(--text-dim);flex:none}.school-winner strong{font-weight:var(--fw-head);text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.school-winner-note{font-size:var(--fs-xs);color:var(--text-dim);margin:0;padding:0 2px}.school-winner-chips{flex-wrap:wrap;gap:6px;margin:6px 0 0;display:flex}.pg-idcard--center .school-winner-chips{justify-content:center}.school-winner-chip{font-size:var(--fs-xs);font-weight:var(--fw-head);color:var(--text);white-space:nowrap;background:#ffd84a24;border-radius:999px;align-items:center;gap:4px;padding:3px 9px;text-decoration:none;display:inline-flex}.school-winner-chip svg{color:#e0b300}.feed-rail .school-rail{cursor:pointer;color:var(--text)}.feed-rail .school-rail .school-rail-icon{color:#111;background:#ffd84a;border-radius:50%;width:30px;height:30px}body .feed-rail .school-rail .school-rail-icon svg{width:16px;height:16px}.school-rail-label{font-size:11px;font-weight:var(--fw-head);white-space:nowrap;text-overflow:ellipsis;max-width:88px;overflow:hidden}@media (max-width:820px){.feed-rail>[data-rail=school]{order:5}body .feed-rail .school-rail{background:#ffd84a24;border-radius:999px;flex-direction:row;gap:6px;min-height:36px;padding:0 12px 0 3px}.feed-rail .school-rail .school-rail-icon{width:30px;height:30px}.school-rail-label{max-width:120px;font-size:12px}}.school-how-note{color:var(--text-faint);font-size:var(--fs-sm);text-align:center;margin:8px 0 0}.school-how .school-how-note+.school-how-title{margin-top:16px}.school-hero-lead{color:var(--text-dim);font-size:var(--fs-md);word-break:keep-all;margin:12px 0 0;line-height:1.5}.school-picker-guest{color:var(--text-faint);font-size:var(--fs-sm);text-align:center;margin:10px 0 0}.school-joined-overlay{background:var(--bg);-webkit-backdrop-filter:none;backdrop-filter:none;animation:school-joined-fade var(--dur) var(--ease) both;align-items:stretch}.school-joined{width:100%;max-width:440px;height:100dvh;padding:calc(56px + env(safe-area-inset-top,0px)) 20px calc(96px + env(safe-area-inset-bottom,0px));background:var(--bg);outline:none;flex-direction:column;display:flex;position:relative;overflow-y:auto}.school-joined-close{top:calc(10px + env(safe-area-inset-top,0px));width:40px;height:40px;color:var(--text-dim);background:0 0;border:0;border-radius:999px;place-items:center;display:grid;position:absolute;right:12px}.school-joined-hero{text-align:center;animation:school-joined-pop var(--dur-slow) var(--ease) both;flex-direction:column;align-items:center;margin-top:auto;display:flex}.school-joined-mark{color:#ffd84a;background:#ffd84a29;border-radius:999px;place-items:center;width:52px;height:52px;margin-bottom:14px;display:grid}.school-joined-eyebrow{color:var(--text-faint);font-size:var(--fs-sm);font-weight:var(--fw-head)}.school-joined-title{font-size:30px;font-weight:var(--fw-head);letter-spacing:-.02em;word-break:keep-all;margin:6px 0 2px;line-height:1.25}.school-joined-class{color:var(--text-dim);font-size:var(--fs-md);margin:0}.school-joined-note{color:var(--text-faint);font-size:var(--fs-sm);word-break:keep-all;margin:10px 0 0}.school-joined-standing{background:var(--surface);min-height:36px;color:var(--text);font-size:var(--fs-md);font-weight:var(--fw-label);font-variant-numeric:tabular-nums;border-radius:999px;align-items:center;gap:2px;margin-top:14px;padding:0 10px 0 14px;display:inline-flex}.school-joined-standing:empty{visibility:hidden}.school-joined-event{border:1px solid var(--border);border-radius:var(--r-card);background:var(--surface-low);color:inherit;animation:school-joined-rise var(--dur-slow) var(--ease) 80ms both;grid-template-columns:132px 1fr;align-items:stretch;gap:14px;margin-top:28px;padding:12px;display:grid}.school-joined-cover{border-radius:10px}.school-joined-event-text{flex-direction:column;gap:3px;min-width:0;display:flex}.school-joined-event-text .school-deadline{font-size:var(--fs-2xs);align-self:flex-end;margin-bottom:auto;padding:3px 8px}.school-joined-event-text small,.school-joined-event-text>span:last-child{color:var(--text-faint);font-size:var(--fs-sm);word-break:keep-all}.school-joined-event-text strong{font-size:var(--fs-xl);word-break:keep-all;line-height:1.3}.school-joined-actions{animation:school-joined-rise var(--dur-slow) var(--ease) .14s both;flex-direction:column;align-items:center;gap:8px;margin-top:14px;margin-bottom:auto;display:flex}.school-joined-invite{min-height:40px;color:var(--text-dim);font-size:var(--fs-md);background:0 0;border:0;align-items:center;gap:6px;padding:0 14px;display:inline-flex}.school-joined-invite:disabled{opacity:.5}.school-joined-hero+.school-joined-actions{margin-top:28px}.school-joined-actions .btn--primary{min-height:52px;font-size:var(--fs-lg)}.school-joined-actions .field-error,.school-joined-actions .field-ok{text-align:center;margin:0}@keyframes school-joined-fade{0%{opacity:0}}@keyframes school-joined-pop{0%{opacity:0;transform:scale(.94)}}@keyframes school-joined-rise{0%{opacity:0;transform:translateY(10px)}}@media (prefers-reduced-motion:reduce){.school-joined-overlay,.school-joined-hero,.school-joined-event,.school-joined-actions{animation:none}}
