:root{color:#172033;font-synthesis:none;text-rendering:optimizelegibility;background:#f5f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.app-shell{place-items:center;min-height:100vh;padding:32px;display:grid}.foundation-card{background:#fff;border:1px solid #dfe4ed;border-radius:24px;width:min(680px,100%);padding:40px;box-shadow:0 24px 70px #18274b1a}.teacher-shell{min-height:100vh;padding:32px 20px 64px}.teacher-page{width:min(1120px,100%);margin:0 auto}.teacher-page-header,.panel-heading,.request-card-top,.request-actions,.panel-actions,.schedule-row,.availability-row{gap:16px;display:flex}.teacher-page-header,.panel-heading,.request-card-top{justify-content:space-between;align-items:flex-start}.teacher-page-header{margin-bottom:24px}.teacher-page-header>div,.panel-heading>div{min-width:0}.teacher-page-header h1,.panel h2,.request-card h3{margin:0}.teacher-page-header h1{font-size:clamp(2rem,5vw,3rem);line-height:1.05}.teacher-page-header p,.panel-heading p{color:#596276;margin:8px 0 0;line-height:1.6}.panel{background:#fff;border:1px solid #dfe4ed;border-radius:20px;margin-top:20px;padding:24px;box-shadow:0 12px 36px #18274b0f}.eyebrow{letter-spacing:.12em;text-transform:uppercase;margin-bottom:8px;font-size:.78rem;font-weight:700}.alert{color:#991b1b;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;margin:16px 0;padding:12px 14px}.button{border:1px solid #cad2df;border-radius:10px;min-height:40px;padding:9px 14px;font-weight:650}.button.primary{color:#fff;background:#172033;border-color:#172033}.button.secondary{color:#172033;background:#fff}.button.quiet{color:#596276;background:#f5f7fb}.button.danger{color:#b42318;background:#fff;border-color:#fecaca}.availability-list,.request-list{gap:12px;margin-top:18px;display:grid}.availability-row{border-top:1px solid #edf0f5;align-items:end;padding-top:12px}.availability-row label,.schedule-row label{color:#596276;flex:1;gap:6px;font-size:.85rem;font-weight:650;display:grid}input{color:#172033;background:#fff;border:1px solid #cad2df;border-radius:10px;width:100%;min-height:42px;padding:8px 10px}.panel-actions{justify-content:flex-end;margin-top:18px}.request-card{border:1px solid #dfe4ed;border-radius:16px;padding:18px}.request-card h3{font-size:1.05rem}.meta,.booking-summary{color:#697386;margin-top:5px;font-size:.9rem}.request-note{color:#3f485b;margin:12px 0;line-height:1.55}.pill{color:#3153a6;text-transform:capitalize;background:#eef3ff;border-radius:999px;padding:6px 10px;font-size:.78rem;font-weight:700}.schedule-row{align-items:end;margin-top:14px}.request-actions{flex-wrap:wrap;margin-top:14px}.empty-state{color:#697386;border:1px dashed #cad2df;border-radius:12px;padding:18px}.foundation-card p{color:#596276;margin:18px 0 0;font-size:1.05rem;line-height:1.7}@media (width<=720px){.teacher-shell,.app-shell{padding:20px 14px 40px}.teacher-page-header,.panel-heading,.availability-row,.schedule-row{flex-direction:column;align-items:stretch}.teacher-page-header .button,.panel-heading .button,.schedule-row .button{width:100%}.panel{padding:18px}}
