/* Student query states; retain the shared font, form and large plan-card layout. */
.student-page .select-wrap select.is-placeholder{color:#9ba3b2;font-weight:400}
.welcome-panel{min-height:580px;padding:58px 32px 54px;background:#ffffffc9;border:1px solid #eee9e4;border-radius:17px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.welcome-watermark{display:flex;flex-direction:column;align-items:center;gap:17px;margin:12px 0 42px;pointer-events:none;user-select:none}
.welcome-symbol{width:120px;height:120px;opacity:.12}
.welcome-wordmark{width:230px;height:59px;opacity:.16}
.welcome-guide-title{display:flex;align-items:center;gap:20px;font-size:13px;font-weight:600;color:#8a94a4;margin:0 0 23px;line-height:1.6}
.welcome-guide-title::before,.welcome-guide-title::after{content:"";width:72px;height:1px;background:#e5e8ed}
.welcome-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;max-width:980px;width:100%;padding:0;margin:0;list-style:none}
.welcome-steps li{position:relative;min-width:0}
.welcome-steps li:not(:last-child)::after{content:"";position:absolute;top:19px;left:calc(50% + 36px);width:calc(100% - 40px);height:1px;background:#e4e8ed}
.welcome-step-number{display:inline-flex;align-items:center;justify-content:center;width:39px;height:39px;border:1px solid #b4bdca;border-radius:50%;font-size:18px;font-weight:400;color:#9aa4b2}
.welcome-steps h2{margin:13px 0 7px;font-size:14px;font-weight:600;color:#8a94a4;line-height:1.6}
.welcome-steps p{margin:0;color:#a2abb8;font-size:12px;line-height:1.85}
.student-page .plan-heading{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:16px}
.plan-heading-title{grid-column:1;grid-row:1;min-width:0}
.student-page .plan-heading h1{margin:0}
.student-page .plan-actions{grid-column:3;grid-row:1;justify-self:end}
.query-status{grid-column:2;grid-row:1;justify-self:center;display:inline-flex;align-items:center;justify-content:center;gap:8px;max-width:100%;min-height:36px;padding:7px 12px;border:1px solid #bfdbfe;border-radius:7px;background:#eff6ff;color:#1d4ed8;font-size:12px;font-weight:550;line-height:1.6;white-space:nowrap}
.query-status svg{width:17px;height:17px;fill:#2563eb;stroke:#fff;flex-shrink:0}
.student-page .week-tab{height:85px;gap:5px}
.week-date{font-size:10px;font-weight:400;line-height:1.35;white-space:nowrap;color:#909bad;letter-spacing:0}
.week-tab.active .week-date{color:#b16875}
.week-date-compact{display:none}
@media(max-width:1190px){.week-date-full{display:none}.week-date-compact{display:inline}}
@media(min-width:761px) and (max-width:1100px){
 .student-page .plan-heading{grid-template-columns:minmax(0,1fr) auto;gap:14px}
 .student-page .plan-heading h1{font-size:24px}
 .student-page .plan-actions{grid-column:2}
 .query-status{grid-column:1/-1;grid-row:2}
}
@media(max-width:760px){
 .student-page:not(.has-query) .app-shell{padding-bottom:24px}
 .student-page:not(.has-query) .conditions-form{display:flex;position:static;transform:none;flex-wrap:wrap;align-items:flex-start;gap:20px;padding:20px;margin:0 0 20px;width:100%;max-height:none;background:#fff;border-radius:14px}
 .student-page:not(.has-query) .mobile-form-title{display:none}
 .student-page:not(.has-query) .query-button{max-width:none}
 .welcome-panel{min-height:540px;padding:32px 20px;border-radius:14px}
 .welcome-watermark{gap:13px;margin:5px 0 31px}
 .welcome-symbol{width:90px;height:90px}
 .welcome-wordmark{width:182px;height:47px}
 .welcome-guide-title{gap:13px;margin-bottom:20px;font-size:12px}
 .welcome-guide-title::before,.welcome-guide-title::after{width:46px}
 .welcome-steps{grid-template-columns:1fr;gap:21px;max-width:310px;text-align:left}
 .welcome-steps li{padding-left:47px}
 .welcome-step-number{position:absolute;left:0;top:1px;width:31px;height:31px;font-size:15px}
 .welcome-steps li:not(:last-child)::after{display:none}
 .welcome-steps h2{margin:0 0 3px;font-size:13px}
 .welcome-steps p{font-size:11px}
 .student-page .plan-heading{grid-template-columns:minmax(0,1fr);gap:12px;margin-bottom:17px}
 .student-page .plan-heading h1{font-size:20px}
 .query-status{grid-column:1;grid-row:2;white-space:normal;text-align:center;font-size:12px;padding:7px 10px}
 .student-page .week-tab{height:73px;gap:4px}
 .week-date{font-size:9px}
}

.library-selector{display:flex;align-items:center;gap:12px;margin:0 0 16px;font-size:13px;color:#7c899c}.library-selector[hidden]{display:none}.library-selector select{font:inherit;background:#fff;border:1px solid #e7dfda;border-radius:7px;padding:10px 14px;color:#a5081d;max-width:340px}
