@font-face{font-family:GeistLocal;src:url(/assets/fonts/geist-sans/Geist-Regular.woff2) format("woff2");font-display:swap}:root{--red:#b01030;--blue:#005b96;--ink:#1f1f21;--muted:#6b625f;--paper:#fffdf9;--soft:#f7efe6;--line:#e8ddd0;--white:#fff;--success:#127a4a;--warning:#9a5b00;--shadow:0 22px 70px rgba(31,31,33,.12)}*{box-sizing:border-box}.mentorship-shell{min-height:100dvh;padding:32px 18px;background:var(--soft)}.mentorship-card{max-width:640px;margin:0 auto;padding:clamp(24px,5vw,44px);background:var(--paper);border:1px solid var(--line);border-radius:12px}.mentorship-logo{object-fit:contain;object-position:left center}.mentorship-card h1{font-size:clamp(28px,5vw,38px);line-height:1.15}.mentorship-card p{line-height:1.65}.mentorship-fields{display:grid;grid-gap:20px;gap:20px;margin-top:28px}.mentorship-fields fieldset{min-width:0;padding:0;margin:0;border:0}.mentorship-fields>fieldset{display:grid;grid-gap:12px;gap:12px}.mentorship-fields label,.mentorship-fields legend{font-weight:600;line-height:1.5}.mentorship-fields select,.mentorship-fields textarea{display:block;width:100%;padding:14px;border:1px solid var(--line);border-radius:6px;background:var(--white);color:var(--ink)}.mentorship-fields textarea{resize:none;min-height:150px}.mentorship-fields>fieldset>.mentorship-choice,.mentorship-fields>fieldset>label:not(:first-child){margin-top:16px!important}.mentorship-choice>div{display:flex;gap:16px;margin-top:12px}.mentorship-choice label{display:flex;gap:10px;align-items:center;padding:12px 20px;border:1px solid var(--line);border-radius:6px;margin:0!important;cursor:pointer}.mentorship-choice input{margin:0;flex-shrink:0;width:18px;height:18px;accent-color:var(--red)}.mentorship-card :focus-visible{outline:3px solid var(--blue);outline-offset:3px}.mentorship-fields [aria-invalid=true]{border-color:var(--red)}.mentorship-success{margin-top:28px;border-left:4px solid var(--success);padding-left:20px}.mentorship-results{max-width:900px}.mentorship-response{border-top:1px solid var(--line);padding:24px 0}.mentorship-response h2{font-size:20px}.mentorship-written{white-space:pre-wrap;overflow-wrap:anywhere}.mentorship-response time{color:var(--muted);font-size:14px}.mentorship-ratings{margin-top:20px}.mentorship-ratings h2{font-size:22px;margin-bottom:8px}.mentorship-score{margin-top:24px!important}.mentorship-score-options{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:8px;gap:8px;margin-top:12px}.mentorship-score-options label{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 0;border:1px solid var(--line);border-radius:6px;cursor:pointer}.mentorship-score-options label.selected{background:var(--soft);border-color:var(--red)}.mentorship-score-options input{width:18px;height:18px;padding:0;margin:0;accent-color:var(--red)}.mentorship-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap}.mentorship-averages dl>div,.mentorship-score-list div{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-gap:16px;gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}.mentorship-averages dd,.mentorship-score-list dd{margin:0;text-align:right;font-weight:600}.mentorship-averages{margin-top:28px}body{margin:0;color:var(--ink);background:var(--paper);font-family:GeistLocal,Arial,sans-serif}body,html{min-height:100%}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.68}a{color:inherit;text-decoration:none}.student-shell{position:fixed;inset:0;max-height:100vh;grid-template-columns:minmax(320px,.42fr) 1fr}.student-hero,.student-shell{height:100vh;display:grid;overflow:hidden}.student-hero{align-content:center;grid-gap:clamp(28px,7vh,64px);gap:clamp(28px,7vh,64px);padding:clamp(48px,8vh,80px) 44px;color:#fff;background:linear-gradient(150deg,rgba(31,31,33,.98),rgba(176,16,48,.92))}.admin-header,.brand-row,.panel-heading,.question-header,.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:18px}.brand-mark{width:76px;height:46px;display:grid;place-items:center;color:#fff;background:var(--red);border-radius:7px;font-weight:800;letter-spacing:0}.brand-logo{width:min(260px,58vw);height:auto}.sidebar-logo{width:178px;height:auto}.admin-link{padding:10px 12px;color:#fff;border:1px solid hsla(0,0%,100%,.36);border-radius:7px}.admin-header h1,.hero-copy h1{margin:8px 0 14px;font-size:clamp(2.25rem,4vw,4.4rem);line-height:1.02;letter-spacing:0}.admin-header p,.hero-copy p{max-width:620px;color:hsla(0,0%,100%,.76);line-height:1.6}.eyebrow,.panel-kicker{margin:0;color:var(--red);font-size:.76rem;font-weight:800;letter-spacing:0;text-transform:uppercase}.student-hero .eyebrow{color:hsla(0,0%,100%,.72)}.hero-copy,.trust-strip{display:grid;grid-gap:10px;gap:10px}.trust-strip span{min-height:42px;display:flex;align-items:center;gap:10px;padding:10px 12px;background:hsla(0,0%,100%,.11);border:1px solid hsla(0,0%,100%,.18);border-radius:7px}.workflow-panel{height:100vh;padding:34px;overflow-y:auto;overscroll-behavior:contain}.workflow-panel.question-mode{overflow:hidden}.admin-section,.done-card,.faculty-picker,.key-card,.question-form{width:min(100%,980px);margin:0 auto;padding:28px;background:var(--white);border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.key-card{margin-top:min(18vh,120px);display:grid;grid-gap:20px;gap:20px}.loading-card{width:min(100%,980px);min-height:58px;display:flex;align-items:center;gap:10px;margin:0 auto 14px;padding:14px 18px;color:var(--muted);background:#fff;border:1px solid var(--line);border-radius:8px;font-weight:800}h2,h3,p{margin-top:0}h2{font-size:1.65rem;letter-spacing:0}h2,h3{margin-bottom:8px}h3{font-size:1.12rem}.admin-section p,.muted,.target-card p{color:var(--muted);line-height:1.55}label{display:grid;grid-gap:8px;gap:8px;font-weight:700}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:7px;background:var(--paper);color:var(--ink)}input{min-height:52px;padding:0 14px}textarea{padding:14px;resize:vertical}select{min-height:52px;padding:0 56px 0 14px;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%236b625f' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 20px center;background-repeat:no-repeat;background-size:18px}input:focus,select:focus,textarea:focus{outline:3px solid rgba(176,16,48,.18);border-color:var(--red)}.ghost-action,.primary-action,.secondary-action,.text-button{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:7px;border:1px solid transparent;font-weight:800}.primary-action{padding:0 18px;color:#fff;background:var(--red)}.secondary-action{padding:0 14px;color:var(--ink);background:#fff;border-color:var(--line)}.ghost-action{padding:0 14px;color:var(--success);background:#ecf8f1;border-color:#bde8cd}.text-button{color:var(--blue);background:transparent}.form-note{margin:0;padding:12px 14px;border-radius:7px;font-weight:700}.form-note.error{color:var(--red);background:#fff2f2}.form-note.success{color:var(--success);background:#effaf3}.save-bar{position:-webkit-sticky;position:sticky;top:0;z-index:4;min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 18px;padding:12px 16px;background:#fff8e9;border:1px solid #edcf93;border-radius:8px;box-shadow:0 12px 30px rgba(31,31,33,.08)}.save-bar span{color:var(--warning);font-weight:800}.round-progress{min-width:112px;padding:14px;text-align:center;background:var(--soft);border-radius:7px}.round-progress span,.round-progress strong{display:block}.round-progress strong{font-size:1.8rem}.target-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:14px;gap:14px;margin-top:22px}.target-card{min-height:210px;display:flex;flex-direction:column;justify-content:space-between;gap:18px;padding:20px;border:1px solid var(--line);border-radius:8px;background:var(--paper)}.target-card.completed{background:#f3faf6;border-color:#bde8cd}.subject-pill{display:inline-flex;max-width:100%;margin-bottom:14px;padding:7px 9px;color:var(--blue);background:#eaf5fb;border-radius:6px;font-size:.82rem;font-weight:800}.question-form{position:relative;height:calc(100vh - 68px);max-height:calc(100vh - 68px);display:flex;flex-direction:column;padding:0;overflow:hidden;box-shadow:none}.question-fixed-top{flex:0 0 auto;position:relative;z-index:2;box-shadow:0 12px 24px rgba(31,31,33,.06)}.question-fixed-top,.question-header{background:#fff;border-bottom:1px solid var(--line)}.question-header{position:static;margin:0;padding:18px 28px;box-shadow:none}.completion-meter{min-width:168px}.completion-meter span{display:block;margin-bottom:8px;font-weight:800;text-align:right}.completion-meter div{height:8px;overflow:hidden;background:var(--soft);border-radius:999px}.completion-meter i{display:block;height:100%;background:var(--red)}.scale-legend{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-gap:10px;gap:10px;margin:0;color:var(--muted);font-size:.9rem}.question-fixed-top .scale-legend{padding:16px 28px 18px}.scale-legend span{min-height:52px;display:grid;grid-gap:4px;gap:4px;align-content:center;padding:10px;background:var(--soft);border:1px solid var(--line);border-radius:8px;line-height:1.25}.scale-legend strong{color:var(--red);font-size:1.2rem}.question-scroll-area{flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:18px 28px 28px}.question-list{display:grid;grid-gap:18px;gap:18px}.question-section{display:grid;grid-gap:12px;gap:12px}.question-section-heading{padding:16px;background:var(--soft);border:1px solid var(--line);border-radius:8px}.question-section-heading h3{margin-bottom:6px}.question-section-heading p{margin:0;color:var(--muted)}.rating-row{display:grid;grid-template-columns:1fr auto;grid-gap:18px;gap:18px;align-items:center;margin:0;padding:16px;border:1px solid var(--line);border-radius:8px;background:#fff}.rating-row legend{display:flex;gap:12px;padding:0;font-weight:700;line-height:1.4}.rating-row legend span{color:var(--red)}.rating-options{display:grid;grid-template-columns:repeat(5,42px);grid-gap:8px;gap:8px}.rating-options label{position:relative;width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:7px;background:var(--paper);font-weight:800}.rating-options label.selected{color:#fff;background:var(--red);border-color:var(--red)}.rating-options input{position:absolute;inset:0;width:100%;height:100%;min-height:0;margin:0;opacity:0;pointer-events:auto;cursor:pointer}.comment-box{margin-top:20px}.submit-action{margin-top:16px}.done-card{margin-top:min(18vh,120px);text-align:center}.done-card svg{color:var(--success)}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.admin-shell{display:grid;grid-template-columns:260px 1fr;background:#f8f3ed}.admin-shell,.admin-sidebar{height:100vh;overflow:hidden}.admin-sidebar{position:-webkit-sticky;position:sticky;top:0;padding:24px;color:#fff;background:var(--ink)}.admin-sidebar nav{display:grid;grid-gap:8px;gap:8px;margin-top:18px}.admin-sidebar a,.admin-sidebar button{min-height:44px;display:flex;align-items:center;gap:10px;width:100%;padding:10px 12px;border:0;border-radius:7px;color:hsla(0,0%,100%,.78);background:transparent;text-align:left}.admin-sidebar a.active,.admin-sidebar a:hover,.admin-sidebar button.active,.admin-sidebar button:hover{color:#fff;background:hsla(0,0%,100%,.12)}.admin-main{height:100vh;padding:34px;overflow:auto}.admin-header{align-items:flex-start;margin-bottom:24px}.admin-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.admin-header h1,.admin-header p{color:var(--ink)}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;margin:24px 0}.metric-grid article{padding:18px;background:#fff;border:1px solid var(--line);border-radius:8px}.metric-grid span,.metric-grid strong{display:block}.metric-grid span{color:var(--muted)}.metric-grid strong{margin-top:10px;font-size:2rem}.admin-section{width:100%;max-width:1120px;margin:0 0 18px;box-shadow:none}.admin-index-shell{min-height:100vh;background:#f8f3ed}.admin-topbar{position:-webkit-sticky;position:sticky;top:0;z-index:5;min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 28px;background:rgba(255,253,249,.96);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.admin-topbar>div{display:flex;align-items:center;gap:12px;color:var(--muted);font-weight:700}.admin-topbar-logo{width:210px;height:auto}.forms-dashboard{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:34px 0 64px}.forms-dashboard-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.forms-dashboard-head h1{margin:8px 0 10px;font-size:clamp(2.2rem,4vw,4rem);line-height:1.02}.forms-dashboard-head p{max-width:680px;color:var(--muted);line-height:1.55}.forms-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.form-card-large{min-height:260px;display:flex;flex-direction:column;justify-content:space-between;gap:20px;padding:24px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:0 16px 45px rgba(31,31,33,.08)}.form-card-large h2{font-size:1.45rem}.form-card-large p{color:var(--muted);line-height:1.55}.empty-state{grid-column:1/-1;display:grid;justify-items:start;grid-gap:10px;gap:10px;padding:30px;background:#fff;border:1px solid var(--line);border-radius:8px}.empty-state p{max-width:620px;color:var(--muted);line-height:1.55}.form-card-meta{display:flex;flex-wrap:wrap;gap:8px}.form-card-meta span,.sidebar-back{display:inline-flex;align-items:center;gap:8px;min-height:34px;padding:6px 10px;border-radius:7px;font-weight:800}.form-card-meta span{color:var(--muted);background:var(--soft);border:1px solid var(--line)}.sidebar-back{width:100%;margin-top:24px;color:hsla(0,0%,100%,.82);border:1px solid hsla(0,0%,100%,.16)}.results-table{margin-top:18px;overflow:hidden;border:1px solid var(--line);border-radius:8px}.table-row{display:grid;grid-template-columns:1.2fr 1.1fr .6fr .6fr;grid-gap:14px;gap:14px;padding:14px 16px;border-top:1px solid var(--line)}.table-row:first-child{border-top:0}.table-head{color:var(--muted);background:var(--soft);font-weight:800}.response-filter{max-width:420px;margin-top:18px}.response-tabs{display:inline-flex;gap:4px;margin-top:22px;padding:4px;background:var(--soft);border:1px solid var(--line);border-radius:8px}.response-tabs button{min-height:40px;padding:0 16px;color:var(--muted);background:transparent;border:0;border-radius:6px;font-weight:800}.response-tabs button.active{color:var(--ink);background:#fff;box-shadow:0 6px 16px rgba(31,31,33,.08)}.detail-response-wrap{display:grid;grid-gap:14px;gap:14px;margin-top:18px}.detail-response-heading h3{margin-bottom:6px}.detail-response-heading p{margin:0;color:var(--muted);line-height:1.5}.detail-response-table{overflow:auto;border:1px solid var(--line);border-radius:8px}.detail-response-row{width:max-content;min-width:100%;display:grid;grid-template-columns:88px 180px 190px 88px repeat(var(--question-count,20),54px) 280px;border-top:1px solid var(--line)}.detail-response-row:first-child{border-top:0}.detail-response-row span{min-height:48px;display:flex;align-items:center;padding:10px 12px;border-left:1px solid var(--line);line-height:1.35}.detail-response-row span:first-child{border-left:0}.detail-response-head{position:-webkit-sticky;position:sticky;top:0;z-index:1;color:var(--muted);background:var(--soft);font-weight:800}.two-column{display:grid;grid-template-columns:repeat(2,1fr);grid-gap:20px;gap:20px}.auth-shell,.deployment-home,.landing-shell,.login-shell{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--paper)}.auth-card,.deployment-home section,.login-card{width:min(100%,620px);display:grid;grid-gap:16px;gap:16px;padding:30px;background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.auth-card h1,.deployment-home h1,.login-card h1{margin:0;font-size:clamp(2rem,4vw,3.2rem);line-height:1.04}.landing-hero{width:min(100%,760px);display:grid;grid-gap:22px;gap:22px;padding:34px;color:#fff;background:linear-gradient(145deg,rgba(31,31,33,.98),rgba(176,16,48,.92));border-radius:8px;box-shadow:var(--shadow)}.landing-hero p{max-width:640px;color:hsla(0,0%,100%,.78);line-height:1.55}.landing-hero .eyebrow{color:hsla(0,0%,100%,.72)}.landing-hero h1{margin:0 0 12px;font-size:clamp(2.3rem,5vw,4.4rem);line-height:1.02}.home-logo{width:min(280px,76vw);height:auto}.home-actions,.landing-actions,.row-actions{display:flex;flex-wrap:wrap;gap:10px}.form-list{display:grid;grid-gap:14px;gap:14px;margin-top:18px}.form-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px;background:var(--paper);border:1px solid var(--line);border-radius:8px}.form-card.active{border-color:rgba(176,16,48,.45);box-shadow:inset 4px 0 0 var(--red)}.plain-fieldset{min-width:0;margin:0;padding:0;border:0}.editor-section{display:grid;grid-gap:20px;gap:20px}.editor-grid,.faculty-admin-card,.section-edit-fields{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:14px;gap:14px;align-items:flex-end}.wide-label{display:grid;grid-gap:8px;gap:8px}.admin-list-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.access-list,.faculty-admin-list,.key-list,.section-editor-list{display:grid;grid-gap:14px;gap:14px}.access-row,.faculty-admin-card,.key-row,.section-editor-card{padding:16px;background:var(--paper);border:1px solid var(--line);border-radius:8px}.section-edit-fields{grid-template-columns:.8fr 1fr auto}.question-admin-list{display:grid;grid-gap:10px;gap:10px;margin:14px 0}.question-admin-row{display:grid;grid-template-columns:1fr 180px auto;grid-gap:10px;gap:10px;align-items:center}.faculty-admin-card{grid-template-columns:repeat(4,1fr) auto}.key-generator{display:flex;align-items:flex-end;gap:14px;margin:18px 0}.key-generator label{max-width:190px}.key-row{display:grid;grid-template-columns:minmax(220px,1fr) 110px 120px auto;grid-gap:12px;gap:12px;align-items:center}.toggle-label{display:flex;align-items:center;gap:8px}.toggle-label input{width:18px;min-height:18px;accent-color:var(--red)}.access-row{display:grid;grid-template-columns:1fr 1.2fr 1fr 140px auto;grid-gap:12px;gap:12px;align-items:center}.access-note{display:flex;align-items:center;gap:8px;margin:18px 0 0}.icon-action{width:42px;height:42px;display:grid;place-items:center;border:1px solid var(--line);border-radius:7px;background:#fff}.icon-action.danger{color:var(--red)}@media (max-width:960px){.admin-shell,.student-shell{position:static;height:auto;max-height:none;grid-template-columns:1fr;overflow:visible}.student-hero{height:auto;min-height:auto;align-content:start}.admin-sidebar{display:none}.admin-main,.question-form,.workflow-panel{height:auto;overflow:visible}.question-form{max-height:none;padding:28px}.question-fixed-top{margin:-28px -28px 18px}.question-scroll-area{padding:0;overflow:visible}.access-row,.editor-grid,.faculty-admin-card,.form-card,.forms-grid,.key-row,.metric-grid,.section-edit-fields,.target-grid,.two-column{grid-template-columns:1fr;align-items:stretch}.admin-topbar,.forms-dashboard-head{align-items:stretch;flex-direction:column}.forms-dashboard{width:min(100% - 28px,1180px)}}@media (max-width:680px){.admin-main,.admin-section,.done-card,.faculty-picker,.key-card,.question-form,.student-hero,.workflow-panel{padding:18px}.admin-header,.panel-heading,.question-header,.save-bar,.section-title-row{align-items:stretch;flex-direction:column}.question-header{padding:16px 18px}.question-form{padding:18px}.question-fixed-top{margin:-18px -18px 18px}.question-fixed-top .scale-legend{padding:14px 18px 16px}.rating-row{grid-template-columns:1fr}.rating-options{grid-template-columns:repeat(5,1fr)}.rating-options label{width:100%}.question-admin-row,.scale-legend,.table-row{grid-template-columns:1fr}.key-generator{align-items:stretch;flex-direction:column}.key-generator label{max-width:none}}