:root{--ink:#17342d;--muted:#667a74;--cream:#f6f2e9;--paper:#fffdf8;--green:#174c40;--green-2:#2b695b;--mint:#dfeae4;--gold:#c7953f;--line:#dce3dd;--danger:#a8443e}*{box-sizing:border-box}html{background:var(--cream)}body{color:var(--ink);background:var(--cream);font-family:var(--font-sans), sans-serif;margin:0}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.shell{background:radial-gradient(circle at 85% 0%, #e7eee7 0, transparent 30%), var(--cream);min-height:100vh}.topbar{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:10;background:#f6f2e9e0;border-bottom:1px solid #17342d1f;justify-content:space-between;align-items:center;height:78px;padding:0 clamp(20px,5vw,72px);display:flex;position:sticky;top:0}.brand{color:var(--green);align-items:center;gap:13px;text-decoration:none;display:flex}.brand-mark{border:1px solid var(--green);width:42px;height:42px;font-family:var(--font-display), serif;border-radius:50%;place-items:center;font-size:21px;display:grid}.brand strong{letter-spacing:.22em;font-size:14px}.brand small{letter-spacing:.08em;color:var(--muted);margin-top:2px;font-size:9px;display:block}.account{align-items:center;gap:12px;display:flex}.avatar{background:var(--green);color:#fff;border-radius:50%;place-items:center;width:38px;height:38px;font-weight:700;display:grid}.account-copy{font-size:12px;line-height:1.25}.account-copy strong{font-size:13px;display:block}.signout{color:var(--muted);font-size:12px}.login-wrap{grid-template-columns:1.15fr .85fr;min-height:calc(100vh - 78px);display:grid}.login-story{flex-direction:column;justify-content:center;padding:clamp(48px,8vw,120px);display:flex;position:relative;overflow:hidden}.login-story:after{content:"K";font-family:var(--font-display), serif;color:#174c400b;font-size:460px;position:absolute;bottom:-170px;right:-45px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;color:var(--green-2);align-items:center;gap:10px;font-size:11px;font-weight:700;display:flex}.eyebrow:before{content:"";background:var(--gold);width:28px;height:1px}.login-story h1{max-width:720px;font-family:var(--font-display), serif;letter-spacing:-.035em;margin:20px 0 24px;font-size:clamp(48px,6vw,82px);font-weight:500;line-height:.98}.login-story p{max-width:570px;color:var(--muted);font-size:17px;line-height:1.7}.steps{gap:28px;margin-top:48px;display:flex}.step{max-width:150px;color:var(--muted);font-size:12px}.step span{color:var(--gold);font-family:var(--font-display), serif;margin-bottom:8px;font-size:24px;display:block}.login-panel{background:var(--green);color:#fff;align-items:center;padding:clamp(40px,7vw,96px);display:flex}.login-card{width:100%;max-width:440px;margin:auto}.login-card h2{font-family:var(--font-display), serif;margin:0 0 14px;font-size:38px;font-weight:500}.login-card p{color:#c7d7d1;margin:0 0 34px;line-height:1.6}.login-button{width:100%;min-height:58px;color:var(--green);cursor:pointer;background:#fffdf8;border:0;border-radius:3px;justify-content:center;align-items:center;gap:12px;font-weight:700;text-decoration:none;display:flex}.login-note{text-align:center;font-size:11px;color:#9db8ae!important;margin-top:20px!important}.portal{max-width:1440px;margin:auto;padding:46px clamp(20px,5vw,72px) 80px}.welcome{justify-content:space-between;align-items:end;gap:30px;margin-bottom:34px;display:flex}.welcome h1{font-family:var(--font-display), serif;letter-spacing:-.025em;margin:8px 0 5px;font-size:clamp(38px,5vw,58px);font-weight:500}.welcome p{color:var(--muted);margin:0}.progress-block{min-width:250px}.progress-label{justify-content:space-between;margin-bottom:9px;font-size:12px;display:flex}.progress-label strong{color:var(--green)}.progress-track{background:#dde2db;border-radius:9px;height:7px;overflow:hidden}.progress-fill{background:var(--gold);height:100%;transition:width .3s}.tabs{border-bottom:1px solid #ccd7d0;gap:7px;margin-bottom:28px;display:flex}.tab{color:var(--muted);cursor:pointer;background:0 0;border:0;border-bottom:2px solid #0000;padding:14px 18px}.tab.active{color:var(--green);border-color:var(--green);font-weight:700}.grid{grid-template-columns:minmax(0,1fr) 330px;gap:25px;display:grid}.card{border:1px solid var(--line);background:#fffdf8e6;border-radius:8px;box-shadow:0 8px 36px #1f43390b}.card-head{border-bottom:1px solid var(--line);padding:25px 27px 20px}.card-head h2{font-family:var(--font-display), serif;margin:0 0 5px;font-size:25px;font-weight:500}.card-head p{color:var(--muted);margin:0;font-size:13px}.form{grid-template-columns:1fr 1fr;gap:20px;padding:26px;display:grid}.field{gap:7px;display:grid}.field.full{grid-column:1/-1}.field label{text-transform:uppercase;letter-spacing:.08em;color:#526a63;font-size:11px;font-weight:700}.field input,.field select{width:100%;height:48px;color:var(--ink);background:#fff;border:1px solid #ccd7d0;border-radius:4px;outline:none;padding:0 13px}.field input:focus,.field select:focus{border-color:var(--green-2);box-shadow:0 0 0 3px #2b695b1a}.form-actions{grid-column:1/-1;justify-content:flex-end;align-items:center;gap:14px;padding-top:6px;display:flex}.message{color:var(--green-2);margin-right:auto;font-size:12px}.primary{background:var(--green);color:#fff;cursor:pointer;border:0;border-radius:4px;min-height:44px;padding:0 22px;font-weight:700}.primary:disabled{opacity:.55;cursor:wait}.side{align-content:start;gap:20px;display:grid}.adviser{background:var(--green);color:#fff;padding:26px}.adviser .mini{color:#a9c2b9;text-transform:uppercase;letter-spacing:.12em;font-size:9px;font-weight:700}.adviser h3{font-family:var(--font-display), serif;margin:12px 0 7px;font-size:24px;font-weight:500}.adviser p{color:#bed0ca;font-size:13px;line-height:1.55}.adviser a{color:#fff;font-size:12px;font-weight:700}.deadline{padding:24px}.deadline h3{margin:0 0 18px;font-size:13px}.milestone{color:var(--muted);gap:12px;margin:14px 0;font-size:12px;line-height:1.35;display:flex}.dot{background:var(--mint);border:2px solid var(--green-2);border-radius:50%;flex:none;width:9px;height:9px;margin-top:2px}.dot.done{background:var(--green-2)}.documents{gap:14px;display:grid}.doc-row{background:var(--paper);border:1px solid var(--line);border-radius:7px;grid-template-columns:44px 1fr auto;align-items:center;gap:15px;padding:18px 21px;display:grid}.doc-icon{background:var(--mint);width:42px;height:48px;color:var(--green);font-family:var(--font-display), serif;clip-path:polygon(0 0,72% 0,100% 25%,100% 100%,0 100%);place-items:center;font-size:18px;display:grid}.doc-copy h3{margin:0 0 5px;font-size:14px}.doc-copy p{color:var(--muted);margin:0;font-size:11px}.doc-status{align-items:center;gap:10px;display:flex}.badge{color:#8b6b2f;background:#efe9dc;border-radius:20px;padding:5px 9px;font-size:10px;font-weight:700}.badge.uploaded{color:var(--green-2);background:#e0eee7}.upload-label{min-height:36px;color:var(--green);cursor:pointer;border:1px solid #b8c8c0;border-radius:3px;align-items:center;padding:0 13px;font-size:11px;font-weight:700;display:inline-flex}.upload-label input{display:none}.file-link{color:var(--green-2);text-overflow:ellipsis;white-space:nowrap;max-width:145px;font-size:11px;overflow:hidden}.doc-help{color:var(--muted);padding:22px;font-size:12px;line-height:1.6}.error{color:var(--danger)}@media (max-width:900px){.login-wrap{grid-template-columns:1fr}.login-story{min-height:58vh}.login-panel{min-height:42vh}.grid{grid-template-columns:1fr}.side{grid-template-columns:1fr 1fr}}@media (max-width:620px){.topbar{height:68px}.account-copy{display:none}.login-story{padding:50px 24px}.login-story h1{font-size:48px}.steps{gap:16px}.login-panel{padding:46px 24px}.portal{padding-top:30px}.welcome{display:block}.progress-block{margin-top:25px}.form{grid-template-columns:1fr;padding:20px}.field.full,.form-actions{grid-column:1}.side{grid-template-columns:1fr}.doc-row{grid-template-columns:36px 1fr}.doc-icon{width:36px;height:42px}.doc-status{grid-column:2;justify-content:space-between}}.login-page{background:linear-gradient(135deg, var(--cream), var(--mint));place-items:center;min-height:100vh;padding:24px;display:grid}.login-box{background:var(--paper);border:1px solid var(--line);border-radius:12px;width:min(100%,480px);padding:clamp(28px,6vw,48px);box-shadow:0 26px 80px #17342d24}.login-box h1{font-family:var(--font-display,Georgia), serif;margin:34px 0 8px;font-size:38px;font-weight:500}.login-box>p{color:var(--muted);line-height:1.6}.login-form,.admin-form{gap:16px;display:grid}.kp-local-login{gap:13px;display:grid}.kp-local-login label{gap:5px;display:grid}.kp-local-login label>span{color:#b9c6d6;letter-spacing:.1em;text-transform:uppercase;font-size:9px;font-weight:800}.kp-local-login input,.kp-local-login select{color:#fff;background:#ffffff14;border:1px solid #ffffff40;border-radius:4px;width:100%;height:44px;padding:0 13px}.kp-local-login select option{color:#031d3a}.kp-local-login .kp-google{cursor:pointer;border:0;margin-top:4px}.login-form label,.admin-form label{color:#526a63;letter-spacing:.08em;text-transform:uppercase;gap:7px;font-size:11px;font-weight:700;display:grid}.login-form input,.login-form select,.admin-form input,.admin-form select,.admin-form textarea,.document-review input,.document-review select{width:100%;min-height:44px;color:var(--ink);background:#fff;border:1px solid #ccd7d0;border-radius:4px;padding:10px 12px}.admin-form textarea{resize:vertical;min-height:100px}.admin-form .check{align-items:center;gap:8px;display:flex}.admin-form .check input{width:auto;min-height:0}.portal-admin{background:var(--cream);min-height:100vh;padding:clamp(24px,5vw,72px)}.portal-admin__bar{justify-content:space-between;align-items:end;gap:24px;max-width:1380px;margin:auto auto 28px;display:flex}.portal-admin__bar h1{font-family:var(--font-display,Georgia), serif;margin:8px 0 4px;font-size:clamp(38px,5vw,62px);font-weight:500}.portal-admin__bar p{color:var(--muted);margin:0}.portal-admin__bar>div:last-child{gap:8px;display:flex}.link-button{text-decoration:none}.secondary{min-height:42px;color:var(--green);cursor:pointer;background:#fff;border:1px solid #b8c8c0;border-radius:4px;padding:0 16px;font-weight:700}.admin-stats{grid-template-columns:repeat(3,1fr);gap:14px;max-width:1380px;margin:0 auto 20px;display:grid}.admin-stats article{border:1px solid var(--line);background:var(--paper);border-radius:8px;padding:20px}.admin-stats strong{font-family:var(--font-display,Georgia), serif;font-size:34px;font-weight:500;display:block}.admin-stats span{color:var(--muted);font-size:12px}.admin-student-list{gap:18px;max-width:1380px;margin:auto;display:grid}.admin-student{padding:24px}.admin-student>header{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding-bottom:18px;display:flex}.admin-student h2{font-family:var(--font-display,Georgia), serif;margin:0 0 6px;font-size:28px;font-weight:500}.admin-student header p{color:var(--muted);margin:0;font-size:12px}.admin-columns{grid-template-columns:.75fr 1.25fr;gap:30px;padding-top:22px;display:grid}.document-review{border-top:1px solid var(--line);grid-template-columns:minmax(160px,1fr) 160px minmax(180px,1fr) auto;align-items:end;gap:8px;padding:12px 0;display:grid}.document-review a{color:var(--green-2);margin-top:5px;font-size:11px;display:block}.admin-empty{color:var(--muted);padding:30px}@media (max-width:900px){.portal-admin__bar,.admin-student>header{flex-direction:column;align-items:flex-start}.admin-columns,.document-review{grid-template-columns:1fr}}@media (max-width:620px){.admin-stats{grid-template-columns:1fr}}.staff-shell{min-height:100vh;color:var(--ink);background:#f2f3f4;padding:clamp(24px,4vw,58px)}.staff-bar{justify-content:space-between;align-items:flex-end;gap:20px;max-width:1600px;margin:0 auto 22px;display:flex}.staff-bar h1{font:500 clamp(34px,4vw,52px)/1.05 var(--font-display,Georgia),serif;margin:5px 0}.staff-tabs{border-bottom:1px solid #ccd4d8;gap:5px;max-width:1600px;margin:auto;display:flex}.staff-tabs a{color:#50616a;border:1px solid #0000;border-bottom:0;padding:12px 16px;text-decoration:none}.staff-tabs a.active{color:#315be8;background:#fff;border-color:#ccd4d8}.staff-panel{background:#fff;border:1px solid #d8dde0;border-radius:4px;max-width:1600px;margin:20px auto;padding:22px}.staff-panel h2{font:500 25px var(--font-display,Georgia),serif;margin:0 0 8px}.staff-filter{gap:10px;margin-bottom:20px;display:flex}.create-student header{margin-bottom:16px}.create-student form{grid-template-columns:minmax(220px,1fr) minmax(260px,1fr) auto;align-items:end;gap:12px;display:grid}.create-student label{color:#53636b;gap:6px;font-size:13px;font-weight:600;display:grid}.create-student input,.created-student-link input{background:#fff;border:1px solid #c7d0d5;min-height:44px;padding:10px 12px}.created-student-link{background:#eef5f2;border:1px solid #c8ddd4;grid-template-columns:auto minmax(280px,1fr) auto;align-items:center;gap:12px;margin-top:16px;padding:16px;display:grid}.student-id{white-space:nowrap;display:block}.private-link{color:#315be8;white-space:nowrap;margin-top:5px;display:block}.access-required{background:linear-gradient(135deg,#f5f0e8,#dceae4);place-items:center;min-height:100vh;padding:24px;display:grid}.access-required section{border:1px solid var(--line);background:#fff;width:min(100%,620px);padding:48px}.access-required img{width:160px}.access-required h1{font:500 clamp(36px,5vw,58px)/1.02 var(--font-display,Georgia),serif;margin:18px 0 14px}.access-required p:not(.kp-kicker){color:#526675;margin-bottom:28px;font-size:18px;line-height:1.6}.staff-filter input,.staff-filter select,.requirement-row input{background:#fff;border:1px solid #c7d0d5;min-height:42px;padding:8px 11px}.staff-table{overflow:auto}.staff-table table{border-collapse:collapse;width:100%;min-width:980px}.staff-table th,.staff-table td{text-align:left;border-bottom:1px solid #e2e6e8;padding:13px 11px;font-size:13px}.staff-table th{color:#53636b;font-weight:600}.staff-table td small{color:#4262da;margin-top:4px;display:block}.requirement-list{gap:8px;margin:20px 0;display:grid}.requirement-row{grid-template-columns:125px 170px minmax(210px,1fr) 125px 90px 110px 65px auto auto;align-items:center;gap:8px;display:grid}.requirement-row label{font-size:12px}.requirement-row.is-new{border-top:1px solid #dde2e5;padding-top:20px}.danger{color:#9e3030;cursor:pointer;background:#fff;border:1px solid #c56b6b;min-height:42px;padding:0 12px}.student-review-layout{grid-template-columns:minmax(0,1fr) 320px;gap:18px;max-width:1600px;margin:auto;display:grid}.student-review-layout .staff-panel{margin:0 0 18px}.process-card{align-self:start;position:sticky;top:20px}.student-details{margin:0}.student-details div{grid-template-columns:180px 1fr;padding:9px;display:grid}.student-details div:nth-child(odd){background:#f4f5f5}.student-details dt{font-weight:600}.student-details dd{margin:0}.document-review small,.document-review a{margin-top:5px;display:block}.staff-login{background:linear-gradient(135deg,#f5f0e8,#dceae4);place-items:center;min-height:100vh;padding:24px;display:grid}.staff-login section{border:1px solid var(--line);background:#fff;width:min(100%,460px);padding:38px}.staff-login img{width:150px}.staff-login h1{font:500 38px var(--font-display,Georgia),serif}.staff-login form,.staff-login label,.testimonial-form form,.testimonial-form label{gap:8px;display:grid}.staff-login form{gap:16px}.staff-login input,.testimonial-form input,.testimonial-form textarea{border:1px solid #c7d0d5;min-height:44px;padding:10px}.testimonial-form{padding:24px}.testimonial-form textarea{min-height:140px}.testimonial-form form>div{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.testimonial-consent{align-items:center;grid-template-columns:auto 1fr!important}.testimonial-consent input{min-height:auto}.kp-uploaded-file{display:grid}.kp-uploaded-file small{color:#6d7b82}@media (max-width:1000px){.requirement-row{grid-template-columns:1fr 1fr}.student-review-layout{grid-template-columns:1fr}.process-card{position:static}.create-student form,.created-student-link{grid-template-columns:1fr}}@media (max-width:650px){.staff-bar{flex-direction:column;align-items:flex-start}.staff-tabs{overflow:auto}.staff-filter,.requirement-row{grid-template-columns:1fr;display:grid}.testimonial-form form>div{grid-template-columns:1fr}}.staff-shell{--staff-navy:#061f3d;--staff-coral:#ff6848;--staff-blue:#315be8;background:linear-gradient(#eef3f8 0,#f7f9fc 330px);padding:0 0 70px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.staff-shell button,.staff-shell input,.staff-shell select,.staff-shell textarea{font:inherit}.staff-bar{background:var(--staff-navy);color:#fff;align-items:center;max-width:none;margin:0;padding:34px clamp(24px,5vw,72px) 30px}.staff-bar .kp-kicker{color:var(--staff-coral)}.staff-bar h1{color:#fff;letter-spacing:-.025em;margin:7px 0 5px}.staff-bar small{color:#b8c8d9}.staff-bar a:not(.secondary){color:#d9e8ff;text-underline-offset:3px;font-weight:700;-webkit-text-decoration:underline #7facff;text-decoration:underline #7facff}.staff-bar a:not(.secondary):visited{color:#d9e8ff}.staff-bar a:not(.secondary):hover{color:#fff;-webkit-text-decoration-color:var(--staff-coral);text-decoration-color:var(--staff-coral)}.staff-bar a:not(.secondary):focus-visible{outline-offset:4px;border-radius:2px;outline:3px solid #ffd166}.staff-bar .secondary{color:#fff;background:0 0;border-color:#ffffff59;border-radius:999px}.staff-tabs{background:var(--staff-navy);border:0;gap:28px;max-width:none;margin:0;padding:0 clamp(24px,5vw,72px)}.staff-tabs a{color:#aebed0;border:0;border-bottom:3px solid #0000;padding:14px 2px 17px;font-weight:700}.staff-tabs a.active{border-color:var(--staff-coral);color:#fff;background:0 0}.staff-overview{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;max-width:1600px;margin:28px auto 4px;padding:0 clamp(20px,3vw,40px);display:grid}.staff-overview article{background:#fffffff0;border:1px solid #dae3ec;border-radius:12px;min-height:132px;padding:19px 21px;box-shadow:0 12px 32px #061f3d0d}.staff-overview span{color:#64758a;letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800;display:block}.staff-overview strong{color:var(--staff-navy);margin:7px 0 4px;font:500 36px/1 Georgia,serif;display:block}.staff-overview small{color:#748497;font-size:11px}.staff-panel{border-color:#d9e2eb;border-radius:12px;max-width:calc(1600px - clamp(40px,6vw,80px));margin:18px auto;padding:26px;box-shadow:0 14px 42px #061f3d0d}.staff-panel-heading{justify-content:space-between;align-items:end;margin-bottom:20px;display:flex}.staff-panel-heading h2{color:var(--staff-navy);margin:5px 0 3px;font-size:30px}.staff-panel-heading p:last-child{color:#718196;margin:0;font-size:12px}.staff-filter{background:#f8fafc;border:1px solid #e0e7ee;border-radius:9px;grid-template-columns:minmax(260px,1fr) 230px auto auto;align-items:center;padding:14px;display:grid}.staff-filter input:not([type=hidden]),.staff-filter select{border-radius:7px}.staff-clear-filter{color:var(--staff-blue);font-size:12px;font-weight:700;text-decoration:none}.staff-table{border:1px solid #e0e7ee;border-radius:10px}.staff-table th{color:#5d6e82;letter-spacing:.07em;text-transform:uppercase;background:#f6f8fb;padding-top:14px;padding-bottom:14px;font-size:10px}.staff-table td{color:#26384b;vertical-align:middle;padding-top:17px;padding-bottom:17px}.staff-table tbody tr:last-child td{border-bottom:0}.staff-table tbody tr:hover{background:#fbfcfe}.staff-student-cell{align-items:center;gap:11px;min-width:190px;display:flex}.staff-student-avatar{width:36px;height:36px;color:var(--staff-navy);background:#e8eef8;border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.staff-student-avatar img,.kp-avatar img{border-radius:inherit;object-fit:cover;width:100%;height:100%}.kp-avatar{aspect-ratio:1;flex:0 0 48px;min-width:48px;overflow:hidden;width:48px!important;height:48px!important}.kp-account,.kp-account>span:nth-child(3){min-width:0}.kp-account>span:nth-child(3) strong,.kp-account>span:nth-child(3) small{text-overflow:ellipsis;white-space:nowrap;max-width:210px;display:block;overflow:hidden}.staff-table td small{color:#718196}.student-id{color:var(--staff-navy);letter-spacing:.03em;font-size:11px}.private-link{color:var(--staff-blue);font-size:11px;text-decoration:none}.staff-reissue{white-space:nowrap;margin-top:6px;padding:4px 8px;font-size:11px;line-height:1.2}.staff-table .badge{color:#17634b;background:#e8f2ed;padding:7px 10px;display:inline-flex}.staff-document-count{color:var(--staff-navy);font-weight:800}.staff-document-progress{background:#e3e8ee;border-radius:10px;width:100px;height:5px;margin:7px 0 3px;display:block;overflow:hidden}.staff-document-progress i{border-radius:inherit;background:var(--staff-coral);height:100%;display:block}.staff-table .link-button{white-space:nowrap;border-radius:999px;align-items:center;gap:7px;min-height:36px;display:inline-flex}.create-student{position:relative;overflow:hidden}.create-student:after{content:"+";color:#315be80d;pointer-events:none;font:200 180px/1 Arial,sans-serif;position:absolute;top:-45px;right:20px}.create-student header,.create-student form,.created-student-link{z-index:1;position:relative}.create-student header p{color:#718196;margin:0 0 4px}.create-student input,.created-student-link input{border-radius:7px}.create-student .kp-primary{border-radius:999px}.requirement-row{background:#fafbfd;border:1px solid #e4e9ee;border-radius:8px;padding:11px}.requirement-row.is-new{background:#fff;border:1px dashed #aebdca;margin-top:16px;padding-top:11px}.requirement-row input{border-radius:6px}.danger{border-radius:999px}@media (max-width:1100px){.staff-overview{grid-template-columns:repeat(2,1fr)}.staff-filter{grid-template-columns:1fr 1fr auto}.staff-clear-filter{grid-column:1/-1}.requirement-row{grid-template-columns:1fr 1fr}.staff-panel{margin-left:20px;margin-right:20px}}@media (max-width:650px){.staff-bar{padding:28px 20px}.staff-tabs{padding:0 20px}.staff-overview{grid-template-columns:1fr;padding:0 20px}.staff-panel{margin-left:14px;margin-right:14px;padding:18px}.staff-filter{grid-template-columns:1fr}.staff-clear-filter{grid-column:auto}.staff-panel-heading{flex-direction:column;align-items:start}}.create-student form{grid-template-columns:repeat(4,minmax(0,1fr)) max-content}.create-student label{min-width:0}.create-student select{background:#fff;border:1px solid #c7d0d5;border-radius:7px;width:100%;min-width:0;min-height:44px;padding:10px 12px}.created-student-link strong small{color:#527063;margin-top:5px;font-size:11px;display:block}.kp-notice.is-success{color:#135f43;background:#eaf7f1;border-color:#23805c}.kp-notice.is-warning{color:#77520d;background:#fff8e8;border-color:#d39024}.staff-package{color:var(--staff-navy);white-space:nowrap;font-size:11px}@media (max-width:1250px){.create-student form{grid-template-columns:1fr 1fr}.create-student form .kp-primary{grid-column:1/-1;justify-self:start}}@media (max-width:650px){.create-student form{grid-template-columns:1fr}.create-student form .kp-primary{grid-column:auto;width:100%}}.kp-tabs{scrollbar-width:thin;overflow-x:auto}.kp-tabs button{white-space:nowrap}.kp-data-form-wrap,.kp-shortlist{max-width:1500px;margin:auto}.kp-data-form-intro,.kp-shortlist-intro{background:linear-gradient(135deg,#fff 0,#f7faff 100%);border:1px solid #d6e0eb;border-radius:14px;justify-content:space-between;align-items:end;gap:24px;margin:0 0 24px;padding:28px 30px;display:flex;box-shadow:0 14px 38px #061f3d0d}.kp-data-form-intro h2,.kp-shortlist-intro h2{color:#061f3d;font:500 clamp(27px,3vw,39px)/1.08 var(--font-display,Georgia),serif;margin:5px 0 7px}.kp-data-form-intro p:last-child,.kp-shortlist-intro p:last-child{color:#65768a;max-width:760px;margin:0;line-height:1.6}.kp-data-form-intro>strong,.kp-shortlist-intro>span{color:#175d49;background:#e7f1ed;border-radius:999px;flex:none;padding:9px 13px;font-size:12px}.kp-data-form,.kp-data-section-group{gap:20px;display:grid}.kp-data-section{background:#fff;border:1px solid #dbe3eb;border-radius:12px;min-width:0;margin:0;padding:26px;box-shadow:0 12px 34px #061f3d0a}.kp-data-section legend{color:#061f3d;font:500 21px var(--font-display,Georgia),serif;align-items:center;gap:11px;padding:0 9px 0 0;display:flex}.kp-data-section legend span{color:#fff;width:31px;height:31px;font:800 12px var(--font-sans),Arial,sans-serif;background:#ff6848;border-radius:50%;place-items:center;display:grid}.kp-data-section>p{color:#718196;margin:3px 0 22px;font-size:12px}.kp-data-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.kp-data-field{color:#536478;letter-spacing:.065em;text-transform:uppercase;gap:7px;font-size:10px;font-weight:800;display:grid}.kp-data-field.is-wide{grid-column:span 2}.kp-data-field span{justify-content:space-between;align-items:center;gap:8px;display:flex}.kp-data-field span small{color:#17634b;background:#e7f1ed;border-radius:99px;padding:3px 7px;font-size:8px}.kp-data-field input,.kp-data-field select,.kp-data-field textarea,.kp-shortlist-card input{color:#17342d;width:100%;min-height:46px;font:400 14px var(--font-sans),Arial,sans-serif;letter-spacing:0;text-transform:none;background:#fff;border:1px solid #c9d4df;border-radius:7px;padding:10px 12px}.kp-data-field textarea{resize:vertical;min-height:92px}.kp-data-field input:focus,.kp-data-field select:focus,.kp-data-field textarea:focus,.kp-shortlist-card input:focus{border-color:#315be8;outline:0;box-shadow:0 0 0 3px #315be81a}.kp-data-field input:disabled{color:#678;background:#f0f4f7}.kp-data-field select:disabled,.kp-data-field textarea:disabled{color:#678;cursor:not-allowed;background:#f0f4f7}.kp-readonly-notice{flex-wrap:wrap;gap:5px;margin-bottom:20px;display:flex}.kp-locked-label{color:#678;background:#f0f4f7;border:1px solid #c7d1dc;border-radius:999px;align-items:center;min-height:37px;padding:0 14px;font-size:11px;font-weight:800;display:inline-flex}.kp-data-savebar{background:#fff;border:1px solid #cbd8e3;border-radius:11px;justify-content:space-between;align-items:center;gap:20px;padding:15px 18px;display:flex;box-shadow:0 12px 36px #061f3d14}.kp-data-savebar span{color:#697b8e;font-size:11px}.kp-work-list{gap:14px;display:grid}.kp-work-card{background:#f8fafc;border:1px solid #dbe3eb;border-radius:10px;padding:18px}.kp-work-heading{color:#17342d;justify-content:space-between;align-items:center;gap:16px;margin-bottom:15px;display:flex}.kp-work-heading button{color:#a8443e;cursor:pointer;background:0 0;border:0;font-size:11px;font-weight:700}.kp-work-add{margin-top:16px}.staff-work-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.staff-work-list article{background:#f8fafc;border:1px solid #dbe3eb;border-radius:9px;gap:4px;padding:15px;display:grid}.staff-work-list article span{color:#52677c}.staff-work-list article small{color:#718196}.kp-shortlist-form{gap:22px;display:grid}.kp-shortlist-grid{grid-template-columns:1fr;gap:15px;display:grid}.kp-shortlist-card{background:#fff;border:1px solid #dbe3eb;border-radius:12px;grid-template-columns:1.25fr 1.25fr .8fr 1fr auto;align-items:end;gap:12px;padding:22px 20px 20px 58px;display:grid;position:relative;box-shadow:0 10px 30px #061f3d0a}.kp-shortlist-card.is-finalized{background:#f4faf7;border-color:#86bfa9}.kp-shortlist-card input:disabled{color:#536b62;cursor:not-allowed;background:#edf3f0}.kp-shortlist-card .kp-finalized-check{text-transform:none;letter-spacing:0;cursor:pointer;background:#f7f9fb;border:1px solid #d7e1e9;border-radius:7px;align-items:flex-start;gap:9px;min-height:46px;padding:8px 10px;display:flex}.kp-shortlist-card .kp-finalized-check input{accent-color:#ff6848;width:17px;min-height:17px;margin-top:2px}.kp-shortlist-card .kp-finalized-check span{gap:2px;display:grid}.kp-shortlist-card .kp-finalized-check strong{color:#17342d;font-size:12px}.kp-shortlist-card .kp-finalized-check small{color:#718196;font-size:10px;font-weight:500;line-height:1.3}.kp-shortlist-number{color:#ff6848;font-weight:900;position:absolute;top:24px;left:18px}.kp-shortlist-card label{color:#536478;letter-spacing:.065em;text-transform:uppercase;gap:7px;font-size:10px;font-weight:800;display:grid}.kp-shortlist-remove{color:#a8443e;cursor:pointer;background:0 0;border:0;min-height:46px;font-size:11px;font-weight:700}.kp-shortlist-form footer{justify-content:space-between;gap:14px;display:flex}.staff-data-section{margin-top:22px}.staff-data-section h3{color:#315be8;letter-spacing:.05em;text-transform:uppercase;margin:0 0 9px;font-size:12px}.staff-data-section dd{white-space:pre-wrap;overflow-wrap:anywhere}.staff-shortlist{counter-reset:shortlist;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0;list-style:none;display:grid}.staff-shortlist li{counter-increment:shortlist;background:#f8fafc;border:1px solid #e0e7ee;border-radius:8px;grid-template-columns:34px 1fr;gap:10px 0;padding:14px;display:grid}.staff-shortlist li:before{content:counter(shortlist,decimal-leading-zero);color:#ff6848;grid-row:span 2;font-weight:900}.staff-shortlist span{color:#718196;font-size:12px}.staff-shortlist li>div{gap:3px;display:grid}.staff-finalized-form{border-top:1px solid #e0e7ee;grid-column:2;justify-content:space-between;align-items:center;gap:10px;padding-top:9px;display:flex}.staff-finalized-form label{color:#536478;align-items:center;gap:7px;font-size:12px;font-weight:700;display:flex}.staff-finalized-form button{min-height:34px;padding:7px 12px}@media (max-width:1100px){.kp-shortlist-card{grid-template-columns:1fr 1fr}.kp-shortlist-card .kp-finalized-check{grid-column:1/-1}.kp-shortlist-remove{justify-self:start}}@media (max-width:1000px){.kp-data-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.kp-shortlist-grid{grid-template-columns:1fr}}@media (max-width:650px){.kp-data-form-intro,.kp-shortlist-intro{flex-direction:column;align-items:flex-start;padding:22px}.kp-data-section{padding:20px}.kp-data-fields{grid-template-columns:1fr}.kp-data-field.is-wide{grid-column:auto}.kp-data-savebar,.kp-shortlist-form footer{flex-direction:column;align-items:stretch}.kp-shortlist-card{grid-template-columns:1fr;padding-left:54px}.kp-shortlist-remove{justify-self:start}.staff-shortlist,.staff-work-list{grid-template-columns:1fr}.student-details div{grid-template-columns:1fr;gap:4px}}.verify-form{text-align:left;flex-direction:column;gap:8px;margin:20px 0 12px;display:flex}.verify-form label{letter-spacing:.02em;font-size:13px;font-weight:600}.verify-form input{letter-spacing:10px;text-align:center;font-variant-numeric:tabular-nums;border:1px solid #0003;border-radius:10px;padding:12px 14px;font-size:26px}.verify-form input:focus-visible{outline-offset:1px;outline:3px solid #1f5fd073}.verify-form button{margin-top:6px}.verify-form button[disabled]{opacity:.6;cursor:progress}.verify-help{opacity:.75;margin:0;font-size:13px}.verify-error{color:#9d2020;background:#fdecec;border:1px solid #f3c2c2;border-radius:8px;margin:2px 0 0;padding:9px 11px;font-size:13.5px}.verify-foot{opacity:.75;margin-top:14px;font-size:12.5px}.timesheet-entry{margin-top:28px}.timesheet-approver{background:#f6f9fc;border:1px solid #cdd9e4;border-radius:9px;gap:4px;padding:12px 16px;display:grid}.timesheet-approver span{color:#718196;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.timesheet-approver strong{color:var(--staff-navy);font-size:13px}.timesheet-form{grid-template-columns:1fr 1fr;gap:16px;display:grid}.timesheet-form>label,.timesheet-days label{color:#536478;letter-spacing:.065em;text-transform:uppercase;gap:7px;font-size:10px;font-weight:800;display:grid}.timesheet-form input,.timesheet-form select,.timesheet-form textarea{color:#17342d;width:100%;min-height:44px;font:400 14px var(--font-sans),Arial,sans-serif;letter-spacing:0;text-transform:none;background:#fff;border:1px solid #c9d4df;border-radius:7px;padding:10px 12px}.timesheet-days{grid-column:1/-1;grid-template-columns:repeat(7,minmax(90px,1fr));gap:10px;display:grid}.timesheet-notes{grid-column:1/-1}.timesheet-notes textarea{resize:vertical;min-height:90px}.timesheet-form>.kp-primary{grid-column:1/-1;justify-self:end}.timesheet-status{text-transform:capitalize;border-radius:999px;padding:6px 9px;font-size:10px;font-weight:800;display:inline-flex}.timesheet-status.is-pending{color:#805b0b;background:#fff3d7}.timesheet-status.is-draft{color:#536478;background:#edf1f5}.timesheet-status.is-approved{color:#17634b;background:#e2f2ea}.timesheet-status.is-rejected{color:#983b32;background:#fde8e6}.timesheet-summary{white-space:pre-wrap;overflow-wrap:anywhere;max-width:320px}.timesheet-review{align-items:center;gap:7px;display:flex}.timesheet-review form{margin:0}.timesheet-review button{min-height:34px;padding:7px 11px}.timesheet-form label small{color:#718196;letter-spacing:0;text-transform:none;font-size:10px;font-weight:500}.timesheet-form-actions{grid-column:1/-1;justify-content:flex-end;gap:10px;display:flex}.timesheet-help{color:#6a7785;margin:15px 0 0;font-size:12px}.timesheet-withdraw{background:#fffaf0;border:1px solid #ead8ae;border-radius:8px;justify-content:space-between;align-items:center;gap:14px;margin-top:18px;padding:14px;display:flex}.timesheet-withdraw p{color:#705718;margin:0}.timesheet-overview-status{overflow-wrap:anywhere;font-size:22px!important}.timesheet-row-actions{gap:7px;display:flex}.timesheet-row-actions form{margin:0}.timesheet-feedback{white-space:pre-wrap;overflow-wrap:anywhere;max-width:240px}.timesheet-approval-actions{gap:8px;min-width:310px;display:grid}.timesheet-approval-actions form{margin:0}.timesheet-reject{gap:7px;display:flex}.timesheet-reject input{border:1px solid #c9d4df;border-radius:7px;min-width:190px;min-height:38px;padding:8px 10px}@media (max-width:900px){.timesheet-form{grid-template-columns:1fr}.timesheet-days{grid-template-columns:repeat(2,1fr)}.timesheet-form>.kp-primary{justify-self:stretch}}@media (max-width:650px){.timesheet-form-actions,.timesheet-withdraw,.timesheet-reject{flex-direction:column;align-items:stretch}.timesheet-form-actions button{width:100%}}.leave-entry{margin-top:28px}.leave-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.leave-form>label{color:#536478;letter-spacing:.065em;text-transform:uppercase;gap:7px;font-size:10px;font-weight:800;display:grid}.leave-form input,.leave-form select,.leave-form textarea,.leave-period select{color:#17342d;width:100%;min-height:44px;font:400 14px var(--font-sans),Arial,sans-serif;letter-spacing:0;text-transform:none;background:#fff;border:1px solid #c9d4df;border-radius:7px;padding:10px 12px}.leave-form .leave-half{text-transform:none;background:#f8fafc;border:1px solid #d9e2eb;border-radius:7px;align-self:end;align-items:center;min-height:44px;padding:10px 12px;display:flex}.leave-half input{width:17px;min-height:17px;margin:0}.leave-half small{color:#718196;margin-left:auto;font-weight:500}.leave-reason{grid-column:1/-1}.leave-reason textarea{resize:vertical;min-height:90px}.leave-form>.kp-primary{grid-column:1/-1;justify-self:end}.leave-overview{margin-top:18px}.leave-period{align-items:center;gap:8px;display:flex}.leave-period select{min-width:130px}.leave-totals{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:18px;display:grid}.leave-totals article{background:#f8fafc;border:1px solid #dbe3eb;border-radius:9px;gap:4px;padding:14px;display:grid}.leave-totals article strong{color:var(--staff-navy)}.leave-totals article small{color:#718196}.leave-totals article span{color:#315be8;font-size:11px;font-weight:700}.leave-reason-cell{white-space:pre-wrap;overflow-wrap:anywhere;max-width:300px}@media (max-width:900px){.leave-form{grid-template-columns:1fr}.leave-reason,.leave-form>.kp-primary{grid-column:auto}.leave-form>.kp-primary{justify-self:stretch}.leave-period{flex-direction:column;align-items:stretch}.leave-totals{grid-template-columns:1fr}}.employee-identity{background:#f8fafc;border:1px solid #d9e2eb;border-radius:8px;gap:4px;padding:12px 14px;display:grid}.employee-identity span{color:#718196;letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:800}.employee-identity strong{color:var(--staff-navy)}.employee-identity small,.timesheet-approver small{color:#718196}.approval-queue{border-left:4px solid #315be8}.employee-form{grid-template-columns:repeat(5,minmax(150px,1fr));align-items:end;gap:13px;display:grid}.employee-form label{color:#536478;letter-spacing:.065em;text-transform:uppercase;gap:7px;font-size:10px;font-weight:800;display:grid}.employee-form input,.employee-form select,.supervisor-form select{color:#17342d;background:#fff;border:1px solid #c9d4df;border-radius:7px;width:100%;min-height:44px;padding:10px 12px}.employee-form .kp-primary{min-height:44px}.supervisor-form{align-items:center;gap:8px;min-width:330px;display:flex}.supervisor-form select{min-width:190px}@media (max-width:1100px){.employee-form{grid-template-columns:1fr 1fr}.employee-form .kp-primary{justify-self:start}}@media (max-width:650px){.employee-form{grid-template-columns:1fr}.employee-form .kp-primary{width:100%}.supervisor-form{flex-direction:column;align-items:stretch;min-width:260px}}.kp-payment-status{border-radius:999px;align-items:center;padding:6px 10px;font-size:12px;font-weight:700;display:inline-flex}.kp-payment-status.is-paid{color:#17673a;background:#e6f5ec}.kp-payment-status.is-outstanding{color:#8a4b00;background:#fff0d5}.kp-payment-summary{grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0;display:grid}.kp-payment-summary div{background:#f6f8fa;border:1px solid #e2e8ee;border-radius:8px;padding:12px}.kp-payment-summary dt{color:#66778a;font-size:12px}.kp-payment-summary dd{margin:5px 0 0;font-weight:700}.kp-payment-summary dd small{color:#a54b00;margin-top:3px;font-size:11px;display:block}.staff-invoice-list{gap:12px;display:grid}.staff-invoice{border:1px solid #d9e2eb;border-radius:10px;padding:18px}.staff-invoice>header{justify-content:space-between;align-items:start;gap:12px;display:flex}.staff-invoice>header small{color:#718196;margin-top:4px;display:block}.staff-invoice-link{text-decoration:none;display:inline-flex}.kp-purchase header{gap:16px}.kp-purchase header .kp-payment-status{flex:none}@media (max-width:650px){.kp-payment-summary{grid-template-columns:1fr}.staff-invoice>header{flex-direction:column;align-items:start}}.staff-student-name{align-items:center;gap:7px;display:flex}.communication-unanswered-badge{color:#fff;background:#df2437;border-radius:999px;justify-content:center;align-items:center;min-width:22px;height:22px;padding:0 6px;font-size:11px;font-weight:900;line-height:1;display:inline-flex;box-shadow:0 0 0 2px #fff}.kp-notification-bell{color:#17342d;cursor:pointer;background:#e8edf2;border:0;border-radius:50%;place-items:center;width:42px;height:42px;display:grid;position:relative}.kp-notification-bell:hover{background:#dce5ed}.kp-notification-bell svg{fill:currentColor;width:23px;height:23px}.kp-notification-bell b{color:#fff;background:#df2437;border:2px solid #fff;border-radius:99px;place-items:center;min-width:21px;height:21px;padding:0 5px;font-size:10px;line-height:1;display:grid;position:absolute;top:-6px;right:-5px}.mention-textarea{min-width:0;position:relative}.mention-suggestions{z-index:30;background:#fff;border:1px solid #cbd6e0;border-radius:9px;max-height:230px;padding:6px;position:absolute;top:calc(100% + 5px);left:0;right:0;overflow:auto;box-shadow:0 14px 38px #061f3d2e}.mention-suggestions button{color:#17342d;text-align:left;cursor:pointer;background:#fff;border:0;border-radius:7px;grid-template-columns:34px 1fr auto;align-items:center;gap:9px;width:100%;min-height:48px;padding:7px 9px;display:grid}.mention-suggestions button:hover,.mention-suggestions button.is-highlighted{background:#edf3ff}.mention-suggestions button>span{color:#fff;background:#174c40;border-radius:50%;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.mention-suggestions strong{font-size:12px}.mention-suggestions small{color:#718196;font-size:10px}.communication-mentions{flex-wrap:wrap;gap:6px;margin:0 20px 14px;display:flex}.communication-mentions span{color:#3151bb;background:#e9efff;border-radius:99px;padding:4px 8px;font-size:10px;font-weight:700}.communication-comments .communication-mentions{margin:7px 0 0}.communication-comment-wrap{margin-top:12px}.communication-comment-form .mention-suggestions{top:auto;bottom:calc(100% + 5px)}.communication-channel{max-width:1500px;margin:auto}.communication-intro{background:linear-gradient(135deg,#fff 0,#f4f8fb 100%);border:1px solid #d6e0eb;border-radius:14px;justify-content:space-between;align-items:end;gap:24px;margin-bottom:18px;padding:27px 30px;display:flex}.communication-intro h2{color:#061f3d;font:500 clamp(27px,3vw,39px)/1.08 var(--font-display,Georgia),serif;margin:5px 0 7px}.communication-intro p:last-child{color:#65768a;margin:0}.communication-intro>span{color:#175d49;background:#e7f1ed;border-radius:99px;flex:none;padding:8px 12px;font-size:11px;font-weight:700}.communication-composer{background:#fff;border:1px solid #d8e1e9;border-radius:12px;margin-bottom:18px;padding:22px;box-shadow:0 10px 30px #061f3d0a}.communication-composer>label{gap:9px;display:grid}.communication-composer textarea,.communication-comment-form textarea{resize:vertical;color:#17342d;width:100%;min-height:105px;font:inherit;border:1px solid #c8d3de;border-radius:8px;padding:13px}.communication-composer textarea:focus,.communication-comment-form textarea:focus{border-color:#315be8;outline:0;box-shadow:0 0 0 3px #315be81a}.communication-composer footer{align-items:center;gap:12px;margin-top:13px;display:flex}.communication-composer footer small{color:#718196;margin-right:auto}.communication-image-picker{color:#174c40;cursor:pointer;border:1px solid #b8c8c0;border-radius:7px;align-items:center;min-height:40px;padding:0 13px;font-size:12px;font-weight:700;display:inline-flex}.communication-image-picker input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.communication-feed{gap:17px;display:grid}.communication-post{background:#fff;border:1px solid #d9e2e9;border-radius:12px;overflow:hidden;box-shadow:0 10px 30px #061f3d0a}.communication-post>header{grid-template-columns:42px 1fr auto;align-items:center;gap:11px;padding:18px 20px 0;display:grid}.communication-avatar{aspect-ratio:1;color:#fff;background:#174c40;border-radius:50%;flex:none;place-items:center;width:42px;height:42px;font-weight:800;display:grid;overflow:hidden}.communication-avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.communication-post>header>div:nth-child(2){gap:2px;display:grid}.communication-post>header span,.communication-comments span{color:#6d7d8d;font-size:11px}.communication-post time{color:#66788a;font-variant-numeric:tabular-nums;font-size:10px}.communication-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:16px 20px;line-height:1.6}.communication-images{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:10px;margin:0 20px 18px;display:grid}.communication-images a{color:#52677c;border:1px solid #dce4ea;border-radius:8px;text-decoration:none;overflow:hidden}.communication-images img{object-fit:cover;background:#eef2f5;width:100%;height:170px;display:block}.communication-images span{text-overflow:ellipsis;white-space:nowrap;padding:8px 10px;font-size:10px;display:block;overflow:hidden}.communication-actions{border-top:1px solid #edf0f2;align-items:center;gap:15px;padding:11px 20px;display:flex}.communication-actions button{color:#52677c;cursor:pointer;background:0 0;border:0;font-weight:700}.communication-actions button.is-liked{color:#b1394b}.communication-actions span{color:#718196;font-size:11px}.communication-comment-avatar{aspect-ratio:1;border-radius:50%;flex:0 0 30px;place-items:center;width:30px;height:30px;font-weight:800;display:grid;overflow:hidden;color:#fff!important;background:#174c40!important;font-size:10px!important}.communication-comment-avatar img{object-fit:cover;border-radius:50%;width:100%;height:100%;display:block}.communication-comments{background:#f7f9fb;padding:14px 20px 20px}.communication-comments>article{border-bottom:1px solid #e1e7ec;padding:11px 0}.communication-comments>article>div{align-items:baseline;gap:8px;display:flex}.communication-comments time{margin-left:auto}.communication-comments p{white-space:pre-wrap;margin:6px 0 0;line-height:1.5}.communication-comment-form{grid-template-columns:1fr auto;align-items:end;gap:9px;margin-top:13px;display:grid}.communication-comment-form textarea{min-height:64px}.communication-empty{color:#66788a;text-align:center;background:#f8fafb;border:1px dashed #bdcad5;border-radius:10px;padding:40px}.communication-empty p{margin-bottom:0}.communication-staff-panel{background:0 0!important;border:0!important;padding:0!important}.communication-channel.is-staff .communication-intro{padding:22px}.communication-channel.is-staff .communication-intro h2{font-size:27px}.communication-attachment-tray{background:#f0f8f4;border:1px solid #b9d7ca;border-radius:8px;margin-top:13px;padding:12px 14px}.communication-attachment-tray>strong{color:#17634b;margin-bottom:8px;font-size:11px;display:block}.communication-attachment-tray ul{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.communication-attachment-tray li{background:#fff;border:1px solid #c8ddd4;border-radius:7px;align-items:center;gap:9px;max-width:320px;padding:8px 9px 8px 11px;display:flex}.communication-attachment-tray li>span{text-overflow:ellipsis;white-space:nowrap;gap:2px;min-width:0;font-size:11px;display:grid;overflow:hidden}.communication-attachment-tray li small{color:#718196}.communication-attachment-tray button{color:#8f3440;cursor:pointer;background:#edf1f4;border:0;border-radius:50%;place-items:center;width:25px;height:25px;font-size:18px;line-height:1;display:grid}.communication-attachment-tray button:hover{background:#fde8eb}.communication-liked-by{text-overflow:ellipsis;white-space:nowrap;max-width:min(45vw,420px);overflow:hidden}.kp-profile-photo-prompt{background:#f4f8ff;border:1px solid #cdddeb;border-radius:11px;grid-template-columns:82px minmax(0,1fr) auto;align-items:center;gap:16px;margin:4px 22px 22px;padding:16px;display:grid}.kp-profile-photo-preview{color:#fff;background:#174c40;border-radius:50%;place-items:center;width:82px;height:82px;font-size:25px;font-weight:800;display:grid;overflow:hidden}.kp-profile-photo-preview img{object-fit:cover;width:100%;height:100%}.kp-profile-photo-prompt p{color:#65768a;margin:5px 0 0;font-size:13px}.kp-profile-photo-prompt>label{color:#fff;cursor:pointer;background:#315be8;border-radius:999px;align-items:center;min-height:40px;padding:0 14px;font-size:12px;font-weight:700;display:inline-flex}.kp-profile-photo-prompt>label input{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}@media (max-width:650px){.kp-profile-photo-prompt{grid-template-columns:64px minmax(0,1fr);gap:12px;margin:4px 0 18px;padding:14px}.kp-profile-photo-preview{width:64px;height:64px;font-size:20px}.kp-profile-photo-prompt>label{grid-column:2;justify-self:start}.communication-intro{flex-direction:column;align-items:flex-start;padding:22px}.communication-composer footer{flex-direction:column;align-items:stretch}.communication-composer footer small{margin-right:0}.communication-composer footer .kp-primary{width:100%}.communication-post>header{grid-template-columns:42px 1fr}.communication-post>header time{grid-column:2}.communication-images,.communication-comment-form{grid-template-columns:1fr}.communication-comments>article>div{flex-wrap:wrap;align-items:flex-start}.communication-comments time{width:100%;margin-left:0}.communication-attachment-tray ul{display:grid}.communication-attachment-tray li{max-width:none}}.portal-invoice-page{background:#eef2f5;min-height:100vh;padding:40px 20px}.portal-invoice-sheet{background:#fff;border:1px solid #d9e2eb;width:min(100%,900px);margin:auto;padding:48px;position:relative;box-shadow:0 18px 55px #061f3d1a}.portal-invoice-sheet>header{border-bottom:2px solid #0c315b;justify-content:space-between;gap:24px;padding-bottom:28px;display:flex}.portal-invoice-sheet h1{font:500 42px var(--font-display,Georgia),serif;margin:4px 0 0}.portal-invoice-sheet>header>div:last-child{text-align:right}.portal-invoice-sheet>header small{color:#66778a;margin-top:6px;display:block}.portal-invoice-print{position:absolute;top:118px;right:48px}.portal-invoice-parties{grid-template-columns:1fr 1fr;gap:30px;padding:28px 0;display:grid}.portal-invoice-parties span{color:#66778a;text-transform:uppercase;letter-spacing:.08em;margin-bottom:7px;font-size:12px;display:block}.portal-invoice-parties p{line-height:1.5}.portal-invoice-warning{color:#9a4e00;font-weight:600}.portal-invoice-sheet table{border-collapse:collapse;width:100%}.portal-invoice-sheet th,.portal-invoice-sheet td{text-align:left;border-bottom:1px solid #dfe6ed;padding:14px}.portal-invoice-sheet th:last-child,.portal-invoice-sheet td:last-child{text-align:right}.portal-invoice-sheet tfoot td{font-weight:700}.portal-invoice-balance td{color:#9a4e00;font-size:18px}.portal-invoice-note{color:#704100;background:#fff6e6;margin-top:26px;padding:14px}.portal-invoice-sheet>footer{color:#66778a;margin-top:30px}@media (max-width:650px){.portal-invoice-page{padding:0}.portal-invoice-sheet{border:0;padding:25px}.portal-invoice-sheet>header,.portal-invoice-parties{grid-template-columns:1fr;display:grid}.portal-invoice-sheet>header>div:last-child{text-align:left}.portal-invoice-print{margin:20px 0 0;position:static}}@media print{.no-print{display:none!important}.portal-invoice-page{background:#fff;padding:0}.portal-invoice-sheet{width:100%;box-shadow:none;border:0;padding:20px}}.staff-overview{grid-template-columns:repeat(5,minmax(0,1fr))}.staff-student-hero{align-items:center;padding-top:28px;padding-bottom:26px}.staff-student-heading,.staff-hero-actions{align-items:center;gap:18px;display:flex}.staff-review-avatar{width:72px;height:72px;color:var(--staff-navy);background:#fff;border:3px solid #ffffff3d;border-radius:50%;flex:0 0 72px;place-items:center;font:700 27px Georgia,serif;display:grid;overflow:hidden}.staff-review-avatar img{object-fit:cover;width:100%;height:100%}.staff-export-button{background:var(--staff-coral);border-radius:999px;align-items:center;min-height:42px;padding:0 16px;font-size:12px;font-weight:900;display:inline-flex;box-shadow:0 8px 22px #ff68482e;color:#061f3d!important;text-decoration:none!important}.staff-export-button:hover{background:#ff8268;color:#061f3d!important}.staff-review-tabs{white-space:nowrap;gap:22px;overflow-x:auto}.staff-review-tabs a{align-items:center;gap:7px;display:flex}.staff-review-tabs b{color:#fff;background:#df2437;border-radius:99px;place-items:center;min-width:20px;height:20px;padding:0 5px;font-size:10px;line-height:1;display:grid}.staff-student-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:1520px;margin:26px auto 4px;padding:0 20px;display:grid}.staff-student-summary article{background:#fff;border:1px solid #dbe3ec;border-radius:11px;min-height:96px;padding:17px 19px;box-shadow:0 10px 28px #061f3d0b}.staff-student-summary span{color:#697b8e;letter-spacing:.08em;text-transform:uppercase;margin-bottom:8px;font-size:10px;font-weight:800;display:block}.staff-student-summary strong{color:var(--staff-navy);overflow-wrap:anywhere;font-size:17px;line-height:1.25;display:block}.staff-student-summary .needs-attention{background:#fff8f6;border-color:#f0c7bf}.staff-student-summary .needs-attention strong{color:#c33d2d;font-size:26px}.staff-student-summary .is-complete{background:#f4fbf7;border-color:#c8e2d4}.staff-student-summary .is-complete strong{color:#18704d;font-size:26px}.staff-attention-panel{background:linear-gradient(135deg,#fff8f5,#fff);justify-content:space-between;align-items:center;gap:20px;display:flex}.staff-attention-panel h2{margin:5px 0}.staff-attention-panel p:last-child{color:#6f7f91;margin:0}.staff-missing-panel>.staff-panel-heading{align-items:center}.staff-reminder-button{min-height:44px;color:var(--staff-navy);white-space:nowrap;flex:none;justify-content:center;align-items:center;gap:8px;padding:0 18px;font-size:12px;font-weight:800;line-height:1;text-decoration:none;display:inline-flex;box-shadow:0 8px 20px #ff68482e}.staff-reminder-button span{font-size:15px;line-height:1}.staff-reminder-button:hover{background:#ff8064;transform:translateY(-1px)}.staff-missing-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}.staff-missing-groups article{background:#fbfcfe;border:1px solid #dce4ec;border-radius:10px;overflow:hidden}.staff-missing-groups header{background:#f4f7fa;border-bottom:1px solid #e3e9ef;justify-content:space-between;align-items:center;gap:12px;padding:15px 17px;display:flex}.staff-missing-groups h3{color:var(--staff-navy);margin:0;font-size:14px}.staff-missing-groups header strong,.staff-missing-documents h3 span{color:#fff;background:#df2437;border-radius:99px;place-items:center;min-width:25px;height:25px;padding:0 6px;font-size:11px;display:grid}.staff-missing-groups ul,.staff-missing-documents ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;margin:0;padding:8px 17px 14px;list-style:none;display:grid}.staff-missing-groups li,.staff-missing-documents li{color:#4f6174;padding:8px 8px 8px 16px;font-size:12px;position:relative}.staff-missing-groups li:before,.staff-missing-documents li:before{content:"";background:var(--staff-coral);border-radius:50%;width:6px;height:6px;position:absolute;top:13px;left:0}.staff-missing-documents{border:1px solid #e1e7ed;border-radius:10px;margin-top:18px;padding:18px}.staff-missing-documents h3{color:var(--staff-navy);align-items:center;gap:9px;margin:0 0 6px;font-size:15px;display:flex}.staff-missing-documents ul{padding-left:0}.staff-complete-state{color:#176343;background:#edf8f1;border-radius:10px;padding:24px;font-weight:700}.student-details .is-missing{background:#fff5f2!important}.student-details .is-missing dd{color:#b13e31;font-style:italic}.staff-missing-count{color:#b1352c;white-space:nowrap;align-items:center;gap:7px;text-decoration:none;display:flex}.staff-missing-count strong{color:#fff;background:#df2437;border-radius:50%;place-items:center;min-width:28px;height:28px;font-size:11px;display:grid}.staff-missing-count span{font-size:11px;font-weight:700}.staff-complete-pill{color:#176343;background:#e8f5ed;border-radius:99px;padding:6px 9px;font-size:10px;font-weight:800;display:inline-flex}.verify-actions{margin-top:18px}.verify-resend-form{border-top:1px solid #dce3e7;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding-top:15px;display:flex}.verify-resend-form span{color:#526675;font-size:13px}.verify-resend-form button{min-height:38px}.verify-resend-form button[disabled]{opacity:.6;cursor:progress}.verify-success{background:#e9f7ee;border-radius:7px;padding:10px 12px;color:#176343!important;margin:12px 0 0!important;font-size:13px!important}@media (max-width:1200px){.staff-overview{grid-template-columns:repeat(3,1fr)}.staff-student-summary{grid-template-columns:repeat(2,1fr)}}@media (max-width:800px){.staff-student-hero,.staff-student-heading,.staff-hero-actions{flex-direction:column;align-items:flex-start}.staff-review-avatar{flex-basis:60px;width:60px;height:60px}.staff-missing-panel>.staff-panel-heading{align-items:flex-start}.staff-reminder-button{align-self:stretch}.staff-missing-groups{grid-template-columns:1fr}.staff-attention-panel{flex-direction:column;align-items:flex-start}}@media (max-width:650px){.staff-overview,.staff-student-summary{grid-template-columns:1fr}.staff-student-summary{padding:0 14px}.staff-missing-groups ul,.staff-missing-documents ul{grid-template-columns:1fr}.verify-resend-form{flex-direction:column;align-items:stretch}}
