:root{--brand-blue:#1f4fbf;--brand-blue-dark:#163a8f;--brand-yellow:#f6c400;--bg:#f7f9ff;--text:#0f172a;--muted:#5b6475;--border:#0f172a1a;--border2:#0f172a14;--shadow:0 22px 70px #0f172a1a}*{box-sizing:border-box}html,body{min-height:100%;margin:0;font-family:Arial,Helvetica,sans-serif}.home-page{background:#f4f6f8;justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.home-box{text-align:center;background:#fff;border-radius:10px;width:min(900px,100%);padding:30px;box-shadow:0 4px 12px #0000001a}.home-box h1{color:#1a237e;margin:0}.home-box p{margin:10px 0}.home-links{gap:10px;margin-top:18px;display:grid}.home-link{color:var(--brand-blue-dark);border:1px solid var(--border);border-radius:8px;padding:10px 12px;text-decoration:none}.wizard-page{min-height:100vh;color:var(--text);background:radial-gradient(900px 520px at 10% 10%,#1f4fbf24,transparent 55%),radial-gradient(900px 520px at 90% 0%,#f6c40024,transparent 55%),linear-gradient(180deg,#fff 0%,var(--bg)70%,#fff 100%)}.plain-page{justify-content:center;align-items:center;min-height:100vh;display:flex}.bg-orbs{pointer-events:none;z-index:0;position:fixed;inset:0;overflow:hidden}.orb{filter:blur(34px);opacity:.55;border-radius:50%;width:520px;height:520px;position:absolute}.orb.blue{background:radial-gradient(circle at 35% 35%,#1f4fbf52,#1f4fbf05);top:-220px;left:-220px}.orb.yellow{background:radial-gradient(circle at 35% 35%,#f6c40047,#f6c40005);top:-200px;right:-240px}.orb.blue2{background:radial-gradient(circle at 35% 35%,#163a8f2e,#163a8f03);width:640px;height:640px;bottom:-360px;left:38%}.page{z-index:1;max-width:1180px;margin:0 auto;padding:26px 16px;position:relative}.page.center{align-items:center;max-width:900px;min-height:100vh;display:flex}.topbar{justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px;display:flex}.topbar.simple .titleblock h1{color:var(--brand-blue-dark);margin:0;font-size:20px}.titleblock .sub{color:var(--muted);margin:8px 0 0}.brand{align-items:center;gap:14px;display:flex}.logo{object-fit:contain;width:112px;height:58px}.brand-text .title{color:var(--brand-blue-dark);margin:0;font-size:18px;font-weight:700}.brand-text .sub{color:var(--muted);margin:4px 0 0;font-size:13px}.shell{border:1px solid var(--border2);box-shadow:var(--shadow);background:#fffc;border-radius:20px;overflow:hidden}.shell-head{border-bottom:1px solid var(--border2);background:linear-gradient(90deg,#1f4fbf1a,#f6c4001a);justify-content:space-between;align-items:center;gap:10px;padding:18px 20px 16px;display:flex}.shell-head h2{color:#0b1b3a;margin:0;font-size:24px}.faculty-page-label{letter-spacing:.16em;text-transform:uppercase;color:#365ec4;margin-bottom:4px;font-size:12px;font-weight:800}.faculty-page-subtitle{color:var(--muted);margin-top:4px;font-size:13px}.scanline{background:linear-gradient(90deg,#0000,#1f4fbf8c,#f6c4008c,#0000);height:2px}.shell-body{padding:18px}.shell-body.split{grid-template-columns:1.15fr .85fr;display:grid}.form-area,.image-area{padding:22px}.image-area{border-left:1px solid var(--border2)}.image-card{border:1px solid var(--border);border-radius:16px;overflow:hidden}.image-card img{object-fit:cover;width:100%;height:260px}.image-copy{color:var(--muted);margin-top:12px}label{margin-top:12px;margin-bottom:7px;font-size:13px;font-weight:700;display:block}input,textarea,select{border:1px solid #0f172a24;border-radius:12px;outline:none;width:100%;padding:11px 12px}input[type=checkbox],input[type=radio]{width:auto}textarea{resize:vertical;min-height:110px}.table-wrap{border:1px solid var(--border);border-radius:16px;overflow:hidden}table{border-collapse:collapse;width:100%}thead th{text-align:left;background:linear-gradient(90deg,#1f4fbf14,#f6c40014);padding:14px;font-size:13px}tbody td{vertical-align:top;border-top:1px solid #0f172a12;padding:14px}.name{font-weight:800}.rating-pills{flex-wrap:wrap;gap:10px;display:flex}.pill{cursor:pointer;background:#fff;border:1px solid #0f172a24;border-radius:14px;justify-content:center;align-items:center;width:52px;height:44px;font-weight:800;display:flex}.pill input{opacity:0;width:1px;height:1px;position:absolute}.pill.active{background:linear-gradient(#1f4fbf1f,#1f4fbf0a);border-color:#1f4fbf8c}.section-title{background:#1f4fbf0d;border:1px solid #1f4fbf1a;border-radius:14px;margin-top:14px;margin-bottom:10px;padding:10px 12px}.section-title h3{margin:0}.step-pill,.batch-pill{border:1px solid var(--border);background:#fff;border-radius:999px;align-items:center;gap:10px;padding:10px 14px;font-size:13px;font-weight:700;display:inline-flex}.step-dot,.batch-dot{background:var(--brand-yellow);border-radius:999px;width:10px;height:10px}.actions{justify-content:space-between;align-items:center;gap:12px;margin-top:14px;display:flex}.actions.right{justify-content:flex-end}.hint{color:var(--muted);font-size:12px}button{cursor:pointer;background:linear-gradient(135deg,var(--brand-yellow),#ffe38f);border:0;border-radius:14px;padding:12px 22px;font-weight:800}.err{color:#7f1d1d;background:#dc262614;border:1px solid #dc262633;border-radius:12px;margin-top:8px;padding:10px;font-size:13px}.field-block{margin-bottom:16px}.faculty-question-list{gap:14px;display:grid}.faculty-question-card{background:#ffffffd1;border:1px solid #1f4fbf24;border-radius:18px;padding:16px;box-shadow:0 8px 26px #1f4fbf0d}.faculty-question-index{letter-spacing:.08em;text-transform:uppercase;color:#8a97b2;margin-bottom:8px;font-size:12px;font-weight:800}.faculty-question-title{margin-bottom:12px;font-size:15px;font-weight:700;line-height:1.45}.faculty-rating-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;display:grid}.faculty-rating-card{cursor:pointer;background:#fff;border:1px solid #1f4fbf24;border-radius:14px;flex-direction:column;justify-content:center;align-items:center;gap:3px;min-height:76px;padding:12px 10px;transition:border-color .2s,transform .2s,box-shadow .2s,background .2s;display:flex;position:relative}.faculty-rating-card input{opacity:0;width:1px;height:1px;position:absolute}.faculty-rating-card.active{background:linear-gradient(#1f4fbf14,#1f4fbf05);border-color:#1f4fbf73;transform:translateY(-1px);box-shadow:0 12px 28px #1f4fbf1a}.faculty-rating-number{color:#17315f;font-size:24px;font-weight:800;line-height:1}.faculty-rating-label{letter-spacing:.16em;text-transform:uppercase;color:#5e7095;text-align:center;font-size:10px;font-weight:800}.faculty-actions{align-items:center}.faculty-actions-right{align-items:center;gap:12px;display:flex}.ghost-button{color:#0f5132;box-shadow:none;background:#fff;border:1px solid #10264e2e}.field-label{margin-top:12px;margin-bottom:7px;font-size:13px;font-weight:700;display:block}.choice-list{flex-direction:column;align-items:flex-start;gap:10px;width:auto;max-width:100%;display:inline-flex}.choice-item{align-items:center;gap:10px;width:auto;max-width:100%;justify-content:flex-start!important;margin:0!important;padding:0!important;display:inline-flex!important}.choice-input{border-radius:4px;flex-shrink:0;min-width:18px;height:18px;width:18px!important;margin:2px 0 0!important}.choice-text{text-align:left;cursor:pointer;font-size:16px;font-weight:600;line-height:1.35;margin:0!important;display:inline!important}.field-block .choice-item .choice-text{margin-top:0!important;margin-bottom:0!important}.thanks-card{border:1px solid var(--border2);width:100%;box-shadow:var(--shadow);background:#fffc;border-radius:20px}.thanks-body{padding:20px}.thanks-body h3{margin-top:0;font-size:30px}.footer{text-align:center;color:#0f172a8c;margin-top:16px;padding-bottom:8px;font-size:12px}@media (max-width:980px){.shell-body.split{grid-template-columns:1fr}.image-area{border-left:0;border-top:1px solid var(--border2)}}@media (max-width:720px){.topbar{flex-direction:column;align-items:flex-start}table,thead,tbody,tr,td,th{width:100%;display:block}thead{display:none}tbody tr{border-top:1px solid var(--border)}tbody td:before{content:attr(data-label);color:#0f172a8c;margin-bottom:6px;font-size:12px;font-weight:700;display:block}.actions{flex-direction:column;align-items:stretch}.actions button{width:100%}.faculty-rating-grid{grid-template-columns:1fr}.faculty-actions-right{flex-direction:column;width:100%}}
