/* V5.1 - mobile-first enhancements, tiny pure CSS rather than Tailwind CDN */
.brand-icon{background:transparent!important;box-shadow:none!important}.brand-icon img{display:block;width:100%;height:100%;border-radius:14px}.console-brand-icon img{display:block;max-width:100%}.login-logo img{display:block;max-width:100%}.subject-icon i{font-size:22px;line-height:1}.join-notice-click{cursor:pointer}.join-notice{cursor:pointer}
.exam-grade-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.exam-grade-grid .grade-card{min-width:0;min-height:260px;overflow:hidden}.exam-grade-grid .grade-giant{font-size:clamp(42px,4vw,74px);letter-spacing:-.07em;line-height:1}.exam-grade-grid .grade-content{z-index:2}.exam-grade-grid .grade-content span i{margin-right:6px}.grade-hsa{background:linear-gradient(130deg,#5260e2,#9a8df1)}.grade-tsa{background:linear-gradient(130deg,#c56f38,#f0ad7c)}.grade-vact{background:linear-gradient(130deg,#138a85,#64c5b0)}.grade-hsa,.grade-tsa,.grade-vact{color:#fff}.grade-hsa .grade-top,.grade-tsa .grade-top,.grade-vact .grade-top{color:#fff;opacity:.86}
.v51-loading{display:flex;gap:12px;align-items:center;justify-content:center;padding:42px 12px;font-size:13px;color:#64718c}.v51-loading i{color:#5365e5;font-size:24px}
.v51-skeleton-grid{display:grid;grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;width:100%}.v51-skeleton-card{overflow:hidden;border:1px solid #e5e9f6;border-radius:19px;background:#fff}.v51-sk-image{aspect-ratio:16/9;background:#e9edfb}.v51-sk-body{padding:15px}.v51-sk-chip{height:18px;width:36%;border-radius:6px;background:#e9edfb;margin-bottom:16px}.v51-sk-line{height:13px;border-radius:4px;background:#e9edfb;margin-bottom:9px}.v51-sk-line.short{width:65%}.v51-sk-image,.v51-sk-chip,.v51-sk-line{background-image:linear-gradient(100deg,#edf0fa 10%,#f9faff 32%,#e8edfa 60%);background-size:210% 100%;animation:v51shimmer 1.45s ease-in-out infinite;animation-delay:var(--sk-delay,0ms)}@keyframes v51shimmer{to{background-position-x:-210%}}
.v51-more-container{text-align:center;margin:32px 0 8px}.v51-more-button{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:16px 26px;border:1px solid #cbd2fa;border-radius:15px;background:#fff;box-shadow:0 11px 28px #5265dc18;color:#495ae3;font-weight:800;font-size:13px;transition:transform .2s,box-shadow .2s,background .2s}.v51-more-button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 16px 40px #5265dc2d;background:#f5f7ff}.v51-more-button:disabled{opacity:.65;cursor:progress}.v51-btn-count{font-size:10px;border-radius:30px;color:#6d799b;background:#edf0fa;padding:5px 10px}
@media(max-width:1000px){.exam-grade-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v51-skeleton-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.exam-grade-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.exam-grade-grid .grade-card{min-height:220px}.exam-grade-grid .grade-giant{font-size:46px}.exam-grade-grid .grade-content strong{font-size:20px}.v51-skeleton-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.v51-more-button{width:100%;max-width:355px}.filter-tabs{overflow-x:auto;flex-wrap:nowrap;-webkit-overflow-scrolling:touch;scrollbar-width:none}.filter-tabs button{white-space:nowrap;flex-shrink:0}}
@media(max-width:390px){.exam-grade-grid{grid-template-columns:1fr 1fr}.exam-grade-grid .grade-giant{font-size:40px}}
@media(prefers-reduced-motion:reduce){.v51-sk-image,.v51-sk-chip,.v51-sk-line{animation:none}.v51-more-button{transition:none}}
