:root{font-family:Microsoft YaHei UI,Microsoft YaHei,PingFang SC,sans-serif;color:#273d34;background:#f5f7f4;font-synthesis:none;--green: #235b48;--green-dark: #184334;--mint: #eaf2ec;--line: #e1e7df;--muted: #77847a;--gold: #b78a41;--surface: #fdfefb;font-size:14px;line-height:1.65}*{box-sizing:border-box}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:var(--green);text-decoration:none}button,a.button{cursor:pointer}button{border:0;background:none;color:inherit}button:disabled{opacity:.45;cursor:not-allowed}button,a,input,select,textarea{outline-offset:4px}button:focus-visible,a:focus-visible{outline:2px solid var(--green)}svg{flex-shrink:0;vertical-align:middle}h1,h2,h3,h4,p{margin:0}h1{font-size:28px;line-height:1.45;letter-spacing:-.6px;font-weight:650}h2{font-size:17px;font-weight:650}h3{font-size:16px}h4{font-size:13px}small{font-size:12px}i{font-style:normal;color:#b94b3c}strong{font-weight:600}input:not([type=checkbox]):not([type=file]),select,textarea{width:100%;border:1px solid #d8e0d6;border-radius:6px;padding:10px 12px;background:#fdfefb;color:inherit;min-height:43px;transition:border .15s,box-shadow .15s}input:focus,select:focus,textarea:focus{outline:0;border-color:#61977a;box-shadow:0 0 0 3px #235b4810}input[readonly],textarea[readonly]{background:#f1f4ee;color:#6b7c70}input[type=checkbox]{accent-color:var(--green);width:16px;height:16px;flex-shrink:0;cursor:pointer}textarea{resize:vertical;line-height:1.8}select{cursor:pointer}fieldset{margin:0;padding:0;border:0;min-width:0}fieldset:disabled{opacity:.72}hr{border:0;border-top:1px solid var(--line);margin:22px 0}.primary,.secondary,.danger-button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 17px;border-radius:6px;min-height:42px;font-weight:500;line-height:1.5;white-space:nowrap;transition:background .15s,transform .15s}.primary{background:var(--green);color:#fcfff8;border:1px solid var(--green)}.primary:hover:not(:disabled){background:var(--green-dark)}.secondary{border:1px solid #d9e1d6;background:var(--surface);color:#415649}.secondary:hover:not(:disabled){background:#edf3eb}.danger-button{border:1px solid #e5c9c1;color:#ad4b3d;background:#fff8f5}.wide{width:100%}.text-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:12px;padding:5px 4px;color:var(--green)}.text-button:hover:not(:disabled){text-decoration:underline}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:4px}.icon-button:hover{background:var(--mint)}.danger{color:#aa5141}.small{font-size:12px}.prose{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.95}.eyebrow{color:#849083;font-size:10px;font-weight:600;letter-spacing:1.7px;margin-bottom:7px}.badge{display:inline-flex;align-items:center;white-space:nowrap;font-size:11px;font-weight:500;border-radius:5px;padding:3px 9px;background:#f0f2ec;color:#6c7d68}.badge.good{color:#2e6d4f;background:#e9f3e9}.badge.warn{color:#9e7736;background:#fbf2dc}.page-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 26px}.page-head p{font-size:13px;color:var(--muted);margin-top:7px}.head-actions{display:flex;align-items:center;gap:10px}.head-actions:empty{display:none}.head-actions select{width:auto}.section-title{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}.section-title>span{display:flex;align-items:center;gap:8px}.button-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.error,.info-banner,.success-message{padding:13px 16px;border-radius:6px;margin:14px 0;font-size:13px;overflow-wrap:anywhere}.error{color:#9f483d;background:#fff0eb;border:1px solid #efd9d0}.error p+p{margin-top:5px}.info-banner{background:#f0f4e9;color:#627447;border:1px solid #e0e8d2}.info-banner p{margin-top:6px}.success-message{color:#376e4c;background:#eaf5e9;display:flex;gap:8px;align-items:center}.loading{display:flex;gap:10px;align-items:center;justify-content:center;min-height:140px;color:var(--muted)}.spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:19px;min-width:0}.field>span{font-size:13px;font-weight:500;line-height:1.5}.field>small{font-size:11px;color:#8a9588}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}.full{grid-column:1/-1}.check-label{display:flex;align-items:center;gap:8px;font-size:13px;cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.narrow{max-width:720px;padding:40px 24px;margin:auto}.brand{display:flex;align-items:center;gap:11px;color:#2e4a3b;font-size:18px;font-weight:650;letter-spacing:.5px}.brand small{display:block;font-size:10px;letter-spacing:.4px;font-weight:400;color:#8a988b;margin-top:1px}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#5a8f64;margin-right:7px}.separator{margin:0 16px;color:#b7c1b5}.student-header{height:91px;max-width:1200px;padding:0 32px;display:flex;align-items:center;justify-content:space-between;margin:auto}.student-home{max-width:1136px;margin:48px auto 64px;display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start;padding:0 30px}.home-intro{padding-top:22px}.home-intro>.eyebrow{font-size:10px;letter-spacing:2.4px;margin-bottom:27px}.home-intro h1{font-family:STSong,SimSun,serif;font-weight:500;font-size:58px;line-height:1.35;letter-spacing:1px;margin:23px 0 20px}.home-intro h1 span{color:var(--green)}.home-intro>p{font-size:16px;line-height:2;color:#62735f}.home-intro>p>span{font-size:13px;color:#8c9988}.home-meta{display:flex;gap:12px;align-items:center;margin-top:33px;font-size:12px;color:#8b9987}.home-meta span{display:block;color:#425d45;font-size:14px;margin-top:3px}.home-steps{display:flex;gap:22px;margin-top:68px;padding-top:22px;border-top:1px solid #dce4d7;font-size:11px;color:#758371}.home-steps>div{display:flex;flex-direction:column;gap:9px}.home-steps span{font-family:Georgia,serif;color:#95a78c;font-size:20px}.home-entry{border:1px solid #e0e6d9;background:var(--surface);padding:34px 34px 26px;box-shadow:0 9px 30px #2c4b2a04;border-radius:10px}.paper-index{font-size:10px;letter-spacing:1.5px;color:#9aa491;margin-bottom:26px}.home-entry h2{font-size:23px;margin-bottom:8px}.home-entry>.muted{font-size:12px;margin-bottom:28px}.home-entry form .field{margin-bottom:20px}.notice{margin-top:28px;padding-top:22px;border-top:1px solid var(--line);font-size:12px}.notice p{color:#7d8977;margin-top:10px;font-size:12px;line-height:1.9}.notice summary{font-weight:600;color:#52634c;cursor:pointer}.prep-items{display:flex;gap:20px;margin-top:13px;color:#6c7f63}.prep-items span{display:flex;gap:6px;align-items:center}.entry-footer{border-top:1px solid var(--line);padding-top:19px;margin-top:22px;font-size:11px;line-height:1.9;color:#99a18f}.student-footer{max-width:1136px;margin:0 auto;padding:22px 30px;display:flex;justify-content:space-between;border-top:1px solid var(--line);font-size:10px;letter-spacing:.5px;color:#99a18f}.match-info{margin:0 0 20px}.match-info>div{display:flex;justify-content:space-between;padding:9px 0;border-bottom:1px solid var(--line)}.match-info dt{color:var(--muted)}.match-info dd{margin:0}.match-info+.muted{font-size:12px;margin:14px 0}.verify-panel{max-width:460px;padding:40px 38px;background:var(--surface);border:1px solid var(--line);margin:50px auto;border-radius:10px}.verify-icon{background:var(--mint);border-radius:50%;display:flex;align-items:center;justify-content:center;width:65px;height:65px;margin-bottom:25px;color:var(--green)}.verify-panel>p{font-size:13px;margin:12px 0 25px}.verify-panel form+p{margin-bottom:0;font-size:11px}.fill-layout{max-width:1170px;margin:24px auto 64px;display:grid;grid-template-columns:235px minmax(0,1fr);gap:44px;padding:0 30px}.step-nav{position:sticky;top:28px;height:max-content;padding-top:22px}.step-nav h3{font-size:17px;margin:22px 0}.step-nav h3 small{display:block;color:#96a18e;font-size:11px;font-weight:400;margin-top:3px}.step-nav nav{display:flex;flex-direction:column;gap:6px}.step-nav nav button{display:flex;align-items:center;gap:12px;text-align:left;color:#8b9781;padding:11px 12px;font-size:12px;border-radius:6px;min-height:44px}.step-nav nav button>span{width:21px;color:#9ca993;font-size:11px}.step-nav nav button.active{background:#e4eee0;color:var(--green);font-weight:600}.step-nav nav button.active>span{color:var(--green)}.step-nav nav button:not(:disabled):hover{background:#ebf0e6}.draft-state{margin:30px 0 12px;font-size:10px;color:#8e9b85;display:flex;gap:6px;align-items:center}.fill-main{background:var(--surface);border:1px solid var(--line);border-radius:9px;overflow:hidden;min-width:0;padding:36px}.progress-track{height:3px;background:#eff3eb;margin:-36px -36px 33px}.progress-track>div{height:100%;background:#6c996d;transition:width .3s}.fill-main h1{font-size:25px}.fill-main .page-head{margin-bottom:28px}.activity-edit{padding:22px 0;border-bottom:1px solid var(--line)}.activity-edit .section-title strong{font-size:12px;color:#8a977f;font-weight:500}.add-record{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;border:1px dashed #b9cbb0;border-radius:6px;margin:22px 0 12px;padding:15px;color:var(--green);font-size:13px}.add-record:hover{background:#f2f7ee}.activity-edit .form-grid{gap:0 18px}.form-bottom{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:25px;margin-top:32px}.upload-button{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:9px;border:1px dashed #bdcbb7;border-radius:6px;padding:20px;width:100%;background:#f8faf5;color:#64795a;min-height:78px}.upload-button small{flex-basis:100%;font-size:10px;color:#94a08a}.uploads{margin:15px 0 25px}.file-list{display:flex;flex-direction:column;gap:8px;margin-bottom:10px}.file-chip{display:flex;align-items:center;gap:10px;background:#f3f6ef;border-radius:5px;padding:8px 10px;font-size:12px}.file-chip img{width:48px;height:38px;object-fit:cover;border-radius:3px}.file-chip>a:nth-last-child(2){flex:1;word-break:break-all}.file-chip .icon-button{margin-left:auto}.checklist{display:grid;grid-template-columns:1fr 1fr;gap:8px}.checklist button{display:flex;align-items:center;gap:9px;padding:13px;border:1px solid var(--line);border-radius:6px;font-size:12px;color:#5b8055}.checklist button>span:last-child{margin-left:auto;display:flex;align-items:center;gap:3px;font-size:10px;color:#98a38e}.review-details{margin:20px 0;font-size:13px}.review-details summary,details>summary{cursor:pointer}.commitment{padding:25px 0;border-top:1px solid var(--line);margin-top:22px}.commitment p{font-size:12px;line-height:1.95;color:#7a8871;margin:12px 0 18px}.signature{padding-top:22px;border-top:1px solid var(--line)}.signature canvas{display:block;width:100%;aspect-ratio:900/280;border:1px solid #d8e1d1;border-radius:5px;touch-action:none;background:#fff;cursor:crosshair;margin-bottom:13px}.signature .button-row{justify-content:flex-end}.signature .button-row button{font-size:12px;min-height:36px;padding:8px 12px}.signature.expanded{position:fixed;inset:4vh 4vw;z-index:100;background:var(--surface);box-shadow:0 0 0 100vmax #18382880;border:1px solid var(--line);padding:30px;display:flex;flex-direction:column;justify-content:center}.signature.expanded canvas{max-height:70vh}.receipt{text-align:center;max-width:760px;padding:35px 30px;margin:auto}.success-mark{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:50%;background:#e1efdf;color:#3f7b4c;margin:0 auto 19px}.receipt h1{font-size:26px}.receipt>.muted{font-size:12px;margin:12px 0 22px}.receipt-canvas{display:block;max-width:350px;width:100%;height:auto;margin:0 auto 24px;border:1px solid var(--line);border-radius:6px}.receipt .button-row{justify-content:center}.my-record{max-width:1050px;margin:30px auto 70px;padding:0 28px}.my-record>.material{background:var(--surface);padding:5px 35px;border:1px solid var(--line);border-radius:8px;margin-top:25px}.receipt-overlay{position:fixed;inset:20px;overflow:auto;z-index:30;background:var(--surface);box-shadow:0 0 0 40px #27483970;border:1px solid var(--line);padding:20px;border-radius:8px}.receipt-overlay>button{position:sticky;top:0;z-index:1}.topbar-right{color:#929e86;font-size:10px}.topbar-right>svg{margin-left:15px}.topbar-right .status-dot{width:5px;height:5px;margin:0}.panel{background:var(--surface);border:1px solid var(--line);border-radius:7px;margin-bottom:24px;overflow:hidden}.panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 22px;border-bottom:1px solid #edf0e7}.panel-head h2{font-size:14px}.panel-head>a{display:flex;align-items:center;gap:4px;font-size:11px;color:#839570}.completion{display:flex;align-items:center;justify-content:center;gap:36px;margin:27px 20px}.progress-ring{width:128px;height:128px;border-radius:50%;padding:10px}.progress-ring>div{background:var(--surface);border-radius:50%;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center}.progress-ring strong{font-size:31px;line-height:1.2;font-family:Georgia,serif;font-weight:400}.progress-ring strong small{font-size:15px}.progress-ring span{font-size:10px;color:#96a087;margin-top:7px}.completion>div:last-child{min-width:145px}.completion p{display:flex;align-items:center;gap:8px;font-size:11px;color:#859277;margin:12px 0}.completion p strong{margin-left:auto;color:#46633e;font-size:12px;font-weight:500}.legend-dot{width:6px;height:6px;border-radius:2px;background:var(--green)}.legend-dot.pale{background:#dce5d2}.legend-dot.gold{background:#cab47d}.thin-progress{height:4px;background:#edf1e6;border-radius:4px;overflow:hidden}.thin-progress span{height:100%;display:block;background:#91ad7f;border-radius:4px}.table-scroll{overflow-x:auto}.data-table{border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap}.data-table thead{background:#f8faf4;color:#8e9a7f;font-size:10px}.data-table th{font-weight:500;padding:12px 20px;text-align:left;border-bottom:1px solid var(--line)}.data-table td{padding:15px 20px;border-bottom:1px solid #edf0e8;color:#6a7c60;vertical-align:middle}.data-table tr:last-child td{border-bottom:0}.data-table tr:hover td{background:#fafcf6}.data-table td strong{font-weight:500;color:#385d3f}.data-table td small{display:block;font-size:10px;color:#a1ab93;margin-top:3px}.data-table td input[type=checkbox],.data-table th input[type=checkbox]{margin:0}.row-link{display:inline-flex;gap:5px;align-items:center;color:#507b43;font-size:11px}.search-box{display:flex;align-items:center;border:1px solid #dbe3d4;border-radius:5px;gap:8px;padding:0 10px;background:var(--surface);min-width:180px;flex:1;max-width:300px;color:#9aa78b}.search-box input:not([type=checkbox]){border:0;padding:8px 0;background:none;font-size:11px;min-height:37px;box-shadow:none}.search-box:focus-within{outline:2px solid #bfd1b4}.empty{text-align:center;padding:50px!important;color:#98a48a!important;white-space:normal}.pagination{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:15px 22px;font-size:10px;color:#929f82;border-top:1px solid var(--line)}.pagination .secondary{font-size:10px;min-height:30px;padding:5px 11px}.pagination>span{margin-right:auto}.back-link{display:inline-flex;gap:5px;font-size:11px;color:#8b9b7c;align-items:center;margin-bottom:18px}.material section{padding:26px 22px;border-bottom:1px solid var(--line);scroll-margin-top:20px}.material section:last-child{border:0}.material h2{font-size:13px;font-weight:500;display:flex;align-items:center;gap:12px;color:#91a081;margin-bottom:19px}.material h2 span{color:#3b5f40;font-size:15px;font-weight:600}.data-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px 22px;margin:0}.data-grid>div{min-width:0}.data-grid dt{font-size:10px;color:#9ba58d;margin-bottom:4px}.data-grid dd{margin:0;font-size:12px;color:#59734f;overflow-wrap:anywhere;white-space:pre-wrap}.activity-view{padding:16px 0;border-top:1px solid #eff2e8}.activity-view strong{font-size:12px;font-weight:500}.activity-view>.muted{font-size:10px;margin-bottom:10px}.activity-view>p{font-size:12px}.activity-view .badge{font-size:9px}.evidence{display:flex;align-items:start;gap:12px;flex-wrap:wrap;margin:13px 0}.evidence a{display:flex;flex-direction:column;gap:5px;font-size:10px;max-width:160px;overflow-wrap:anywhere}.evidence img{height:95px;width:auto;max-width:160px;object-fit:cover;border-radius:4px;border:1px solid var(--line)}.evidence span{color:#91a180;max-width:160px}.pdf-preview{border:1px solid var(--line);width:100%;height:380px;border-radius:4px}.material .prose{font-size:12px;color:#718367}.material section>.muted{font-size:11px}.signature-image{max-width:250px;width:100%;max-height:100px;object-fit:contain;object-position:left;margin:20px 0 10px}.settings-panel{max-width:800px;padding:30px}.settings-panel>.primary{margin-top:25px}.data-table pre{max-width:540px;max-height:340px;overflow:auto;white-space:pre-wrap;font-size:10px}.data-table summary{font-size:11px}@media(max-width:1200px){.completion{gap:20px}.student-home{gap:50px}.student-home h1{font-size:50px}.fill-layout{gap:25px;grid-template-columns:210px minmax(0,1fr)}}@media(max-width:900px){.completion{justify-content:flex-start;padding:0 10px}.head-actions{flex-wrap:wrap}.student-home{gap:30px;margin-top:20px;padding:0 24px}.home-entry{padding:28px 24px}.home-intro h1{font-size:43px}.home-steps{gap:15px}.fill-layout{grid-template-columns:1fr;gap:22px}.step-nav{position:static;padding-top:0}.step-nav>.eyebrow,.step-nav>h3,.step-nav>.text-button,.draft-state{display:none}.step-nav nav{flex-direction:row;overflow:auto;gap:7px}.step-nav nav button{white-space:nowrap;font-size:11px;padding:8px 10px}.step-nav nav button>span{width:auto}.fill-main{padding:28px}.progress-track{margin:-28px -28px 28px}.my-record .page-head{flex-wrap:wrap}.form-grid{gap:0 20px}}@media(max-width:640px){:root{font-size:13px}.student-header{height:75px;padding:0 20px}.student-header .brand{font-size:17px}.student-header .brand small{font-size:9px}.student-home{grid-template-columns:1fr;padding:0 20px;margin:5px auto 35px;gap:28px}.home-intro{padding-top:15px}.home-intro>.eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:14px}.home-intro h1{font-size:41px;margin:15px 0;line-height:1.3}.home-intro h1 br{display:none}.home-intro>p{font-size:13px}.home-meta{margin-top:15px;gap:9px}.home-meta span{font-size:12px}.home-steps{margin-top:23px;padding-top:16px;justify-content:space-between}.home-steps>div{flex-direction:row;gap:8px;align-items:center;font-size:10px}.home-steps span{font-size:15px}.home-entry{padding:25px}.paper-index{margin-bottom:18px;font-size:9px}.home-entry h2{font-size:22px}.student-footer{padding:20px;gap:10px;font-size:9px}.student-footer span{display:none}.fill-layout{padding:0 15px;margin-top:5px}.fill-main{padding:23px 20px}.progress-track{margin:-23px -20px 23px}.step-nav nav button{min-height:40px}.fill-main .page-head{margin-bottom:24px}.fill-main h1{font-size:23px}.page-head .eyebrow{font-size:9px}.page-head p{font-size:12px}.form-grid{grid-template-columns:1fr}.full{grid-column:auto}.field{margin-bottom:18px}.activity-edit .form-grid{gap:0}.signature .button-row{gap:5px}.signature .button-row button{font-size:10px;padding:7px 8px}.signature canvas{aspect-ratio:900/400}.form-bottom{gap:8px}.form-bottom>.muted{display:none}.form-bottom .primary,.form-bottom .secondary{font-size:12px;padding:10px 14px}.signature.expanded{inset:3vw;padding:16px}.signature.expanded canvas{aspect-ratio:900/500}.checklist{grid-template-columns:1fr}.verify-panel{margin:20px 20px 50px;padding:30px 25px}.verify-panel h1{font-size:23px}.my-record{padding:0 18px;margin-top:20px}.my-record>.material{padding:0 6px}.my-record .head-actions{gap:8px}.my-record .head-actions .button{font-size:11px}.material section{padding:24px 15px}.receipt{padding:25px 15px}.receipt h1{font-size:21px}.receipt .button-row{gap:7px}.receipt .button-row>button,.receipt .button-row>a{font-size:11px;padding:9px 12px}.page-head .head-actions .button,.page-head .head-actions button{font-size:11px;padding:9px 12px;min-height:36px}.page-head .head-actions select{font-size:11px;min-height:36px}.panel-head{padding:17px 16px}.panel-head h2{font-size:13px}.completion{gap:25px;margin:22px 15px;padding:0}.progress-ring{width:106px;height:106px;padding:8px}.progress-ring strong{font-size:27px}.completion>div:last-child{min-width:110px}.completion p{font-size:10px;gap:5px}.completion p strong{font-size:11px}.search-box{max-width:none;flex-basis:100%}.data-table th{padding:12px 15px}.data-table td{padding:14px 15px;font-size:11px}.data-table td small{font-size:9px}.pagination{padding:12px 14px;gap:6px}.pagination>span{font-size:9px}.settings-panel{padding:22px 18px}.data-table pre{max-width:240px}.receipt-overlay{inset:10px;padding:10px}.pdf-preview{height:350px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}@media print{body{background:#fff}.student-header,.receipt-overlay>button,.receipt .button-row{display:none!important}.receipt{padding:0;max-width:none}.receipt-canvas{max-width:450px;border:0}.receipt h1,.receipt>.muted,.receipt .success-mark{display:none}}:root{--green: oklch(.4 .09 244);--green-dark: oklch(.32 .08 244);--mint: oklch(.95 .014 244);--line: oklch(.9 .008 245);--muted: oklch(.48 .012 245);--surface: oklch(.995 .002 85);color:#1d2832;background:#f7f5f1}body{isolation:isolate}body:before,body:after{content:"";position:fixed;z-index:-1;pointer-events:none;inset:auto;width:480px;height:480px;background:#224058;opacity:.045;mask:url(/brand/luojia-rosette.png) center/contain no-repeat;-webkit-mask:url(/brand/luojia-rosette.png) center/contain no-repeat}body:before{right:-190px;top:60px;transform:rotate(15deg)}body:after{left:-190px;bottom:-170px;mask-image:url(/brand/luojia-cloud.png);-webkit-mask-image:url(/brand/luojia-cloud.png);opacity:.035}.collection-heading{position:relative}.collection-heading:after{content:"";position:absolute;width:190px;height:80px;right:0;top:-12px;opacity:.065;background:var(--green);mask:url(/brand/luojia-tiles.png) center/contain no-repeat;-webkit-mask:url(/brand/luojia-tiles.png) center/contain no-repeat;pointer-events:none}.collection-kicker{font-weight:500;letter-spacing:1.2px}.collection-heading h1{max-width:760px;font-weight:650;letter-spacing:-.8px;line-height:1.35}.collection-subtitle{font-size:15px;color:var(--muted);margin-top:18px;line-height:1.8}.collection-home{padding-top:66px;max-width:800px}.entry-welcome{margin-top:32px;padding:34px 38px;background:#fefdfbe6!important;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:16px!important;border:1px solid oklch(.89 .009 245)!important;box-shadow:0 16px 50px #1f303e0a!important}.entry-welcome .entry-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-direction:row-reverse;margin-bottom:20px}.entry-welcome h2{font-size:21px}.entry-welcome>.prose{font-size:14px;line-height:1.95;color:var(--muted)}.entry-facts{display:grid;grid-template-columns:1fr 1fr;gap:24px;padding:25px 0 28px;margin:22px 0 0;border-top:1px solid var(--line)}.entry-facts>span{font-size:11px;color:var(--muted)}.entry-facts strong{display:block;font-size:13px;font-weight:500;color:#213241;margin-top:7px}.entry-welcome .primary{min-height:49px}.entry-welcome .entry-footer{font-size:12px;line-height:1.9;margin:23px 0 0;padding-top:0;border:0}.quiet-admin{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;color:var(--muted);padding:25px}.identity-help{font-size:12px;color:var(--muted);margin-top:15px}.generic-form{max-width:800px;margin:50px auto 80px;padding:0 25px}.generic-form>.collection-workspace{display:block;padding:36px;margin-top:25px;background:var(--surface);border:1px solid var(--line);border-radius:12px}.generic-form .collection-heading h1{font-size:30px}.generic-form .collection-heading p{margin-top:14px}.generic-form>.collection-workspace>.primary{margin-top:24px}.extra-fields .field{margin-bottom:27px}.choice-list{display:flex;gap:12px 22px;flex-wrap:wrap}.choice-list .check-label{font-size:13px}.extra-fields .uploads{margin:0}.extra-fields{padding-top:20px}.form-fieldset .basic-fields{padding-top:0}.fill-section-heading h1{font-size:28px!important}.fill-main .field>span{font-size:14px!important}.form-group h2{font-size:17px!important}.fill-main .field input,.fill-main .field select,.fill-main .field textarea{font-size:16px}.fill-main,.collection-workspace{position:relative}.step-nav:after{content:"";display:block;height:65px;margin-top:25px;opacity:.07;pointer-events:none;background:var(--green);mask:url(/brand/luojia-roof.png) center/contain no-repeat;-webkit-mask:url(/brand/luojia-roof.png) center/contain no-repeat}.brand{color:#1c3041}.brand small{color:var(--muted)}.primary,.secondary,.danger-button{border-radius:7px}.panel{border-color:var(--line);border-radius:10px;background:var(--surface);box-shadow:none}.panel-head{padding:21px 24px}.panel-head h2{font-size:15px}.data-table{font-size:13px}.data-table th{font-size:11px;color:var(--muted);background:#f4f7fb;padding:14px 20px}.data-table td{color:#3d4955;padding:17px 20px}.data-table td strong{color:#21303c}.data-table td small{color:var(--muted);font-size:11px}.data-table .row-link{font-size:12px}.badge{font-size:11px;background:#e9eff5;color:#50606e}.badge.good{background:#e2f4e7;color:#2d5b3f}.badge.warn{background:#fdf1d8;color:#765b35}.data-grid dt{font-size:11px;color:var(--muted)}.data-grid dd{font-size:13px;color:#303f4c}.material .prose{color:#3a444d;font-size:13px}.material h2 span{color:var(--green)}.search-box input:not([type=checkbox]){font-size:12px}.search-box{border-color:var(--line)}.forms-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:23px}.form-card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:27px;overflow:hidden;position:relative}.form-card:after{content:"";position:absolute;right:-35px;top:-35px;width:150px;height:150px;opacity:.025;background:var(--green);mask:url(/brand/luojia-rosette.png) center/contain no-repeat;-webkit-mask:url(/brand/luojia-rosette.png) center/contain no-repeat;pointer-events:none}.form-card-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;position:relative;z-index:1}.form-card-top .eyebrow{margin:0}.form-card h2{font-size:20px;line-height:1.6;max-width:90%}.form-card>p{font-size:12px;color:var(--muted);margin-top:8px}.form-counts{display:flex;gap:40px;padding:25px 0}.form-counts strong{display:block;font-size:28px;font-weight:500;color:var(--green);line-height:1.5}.form-counts span{font-size:11px;color:var(--muted)}.form-card-dates{font-size:11px;color:var(--muted);padding-bottom:20px;border-bottom:1px solid var(--line)}.form-card-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;padding-top:20px}.form-card-actions .button,.form-card-actions button{font-size:12px;min-height:36px;padding:8px 12px}.form-card-actions select{width:100px;font-size:11px;min-height:33px;padding:5px 8px}.settings-switches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:28px}.back-link,.pagination{font-size:12px}.empty p{font-size:13px;margin-top:15px}@media(max-width:1200px){.form-card{padding:24px}.form-switcher{max-width:320px!important}}@media(max-width:900px){.forms-list{grid-template-columns:1fr}.entry-welcome{padding:30px}.collection-heading:after{width:140px;top:-30px;opacity:.04}}@media(max-width:640px){.collection-home{padding-top:45px}.collection-heading h1{font-size:29px!important}.collection-heading:after{width:115px;right:-10px;top:-38px}.collection-subtitle{font-size:13px;max-width:85%;margin-top:17px}.entry-welcome{padding:25px 23px!important;border-radius:12px!important}.entry-welcome h2{font-size:18px}.entry-welcome .entry-heading{gap:8px}.entry-facts{grid-template-columns:1fr;gap:20px;padding-top:20px}.entry-facts strong{font-size:13px}.entry-welcome .entry-footer,.quiet-admin{font-size:11px}.generic-form{padding:0 18px;margin-top:32px}.generic-form>.collection-workspace{padding:25px 22px}.forms-list{gap:16px}.form-card{padding:23px 20px}.form-card h2{font-size:19px}.form-counts{gap:30px}.form-counts strong{font-size:25px}.form-card-dates{font-size:10px}.form-card-actions{gap:7px}.form-card-actions .primary,.form-card-actions .secondary{font-size:11px;padding:9px 10px}.form-card-actions .text-button{font-size:11px}.settings-switches{grid-template-columns:1fr;gap:16px}.generic-form .collection-heading h1{font-size:25px!important}.fill-main .field>span{font-size:14px!important}.fill-section-heading h1{font-size:24px!important}.form-card .form-card-dates{line-height:1.9}.entry-facts span:first-child strong{font-variant-numeric:tabular-nums}.choice-list{gap:15px}body:before{width:320px;height:320px;right:-170px;top:60px}.data-table th{font-size:10px}.data-table td{font-size:12px}}@media print{body:before,body:after{display:none}}:root{--brand:#087fa4;--brand-dark:#07617d;--brand-soft:#e8f5fa;--accent:#a9d3e6;--ink:#172b36;--muted:#526975;--surface:#fff;--canvas:#f5f8fa;--line:#dbe5ea;--danger:#b83435;--green:var(--brand);--green-dark:var(--brand-dark);--mint:var(--brand-soft);--gold:#85770a;--space-sm:8px;--space-md:16px;--space-lg:24px;--space-xl:40px;--radius:10px;font-family:Microsoft YaHei,PingFang SC,Noto Sans CJK SC,sans-serif;color:var(--ink);background:var(--canvas);font-size:14px;line-height:1.7}body{background:var(--canvas);min-height:100vh}body:before,body:after{display:none}#root{min-height:100vh;display:flow-root}h1,h2,h3,h4,.field>span{color:#000}h1{font-size:28px;font-weight:700;letter-spacing:-.6px}h2{font-size:19px}.muted{color:var(--muted)}.eyebrow{font-size:11px;color:var(--muted);letter-spacing:.8px}input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea{border:1px solid #bacdd7;border-radius:8px;min-height:46px;padding:10px 13px;color:var(--ink);background:var(--surface);box-shadow:none;font-size:16px;transition:border-color .18s,box-shadow .18s}input:hover:not([readonly]),select:hover,textarea:hover{border-color:#79aabe}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px #087fa418}input::placeholder,textarea::placeholder{color:#657d89}select{appearance:auto}option[disabled]{display:none}input[type=checkbox],input[type=radio]{accent-color:var(--brand);width:auto;min-height:0}.primary,.secondary,a.button{border-radius:8px;min-height:42px;font-weight:600;transition:background .18s,transform .18s}.primary{background:var(--brand);color:#fff;box-shadow:none}.primary:hover:not(:disabled){background:var(--brand-dark);transform:translateY(-1px)}.secondary{background:#fff;border:1px solid #c4d6df;color:#214956;box-shadow:none}.secondary:hover:not(:disabled){background:var(--brand-soft)}.text-button{color:var(--brand-dark)}.panel{background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:none}.panel-head{border-color:var(--line)}.field{display:flex;flex-direction:column;gap:9px;margin-bottom:24px;min-width:0;scroll-margin-top:100px}.field>span{font-size:15px;font-weight:600}.field>.field-hint{color:#4c6572;font-size:13px;line-height:1.8;font-weight:400}.field-hint strong{color:#075e7c;font-weight:750}.field .required-mark,.required-mark{color:var(--danger);font-size:19px;font-weight:750;margin-left:6px}.field>.field-error{color:var(--danger);font-size:13px;font-weight:650}.field-invalid{border-left:3px solid var(--danger);padding-left:12px}.field-invalid :is(input,select,textarea){border-color:var(--danger)}.field-highlight{animation:field-callout .8s ease}@keyframes field-callout{0%,50%{box-shadow:0 0 0 5px #b8e0f1}to{box-shadow:none}}.error-summary{background:#fff6f2;border:1px solid #e9b7a9;border-radius:8px;padding:16px 20px;margin:0 0 24px}.error-summary strong{color:#7e2f29}.error-summary ul{margin:8px 0 0;padding-left:20px;max-height:180px;overflow:auto}.error-summary button{text-align:left;padding:3px 0;text-decoration:underline;text-underline-offset:3px;color:#863c31}.error{color:#8e2d2d;background:#fff2f1;border-color:#efc1bb}.info-banner{background:var(--brand-soft);color:#22566c;border-color:#c6e0eb}.badge{background:#edf2f5;color:#345462;border-radius:5px;font-size:12px}.badge.good{background:#e7f2e7;color:#265d37}.badge.warn{background:#fcefed;color:#8a4340}.success-message{background:#edf6ed;color:#2b5c36;border-color:#cfe2cf}.page-head{gap:20px;margin-bottom:26px}.page-head p{color:var(--muted);font-size:14px;margin-top:8px}.data-table th{background:#f1f6f8;color:#47616f;font-size:12px}.data-table td{color:#2f4855;border-color:#edf1f3;font-size:13px}.data-table td strong{color:#142e3b}.data-table tr:hover td{background:#f6fafc}.data-table td small{color:#526b79}.data-grid dt{color:#5b7280;font-size:13px}.data-grid dd{color:#193440;font-size:15px}.thin-progress,.progress-track{background:#e5edf1}.thin-progress span,.progress-track>div{background:var(--brand)}.empty{color:var(--muted)}.collection-cover{min-height:100svh;display:flex;padding:28px 48px 50px;background:#fcfdfb;max-width:none}.period-portal{width:min(1160px,100%);margin:auto;min-height:calc(100svh - 78px);display:flex;flex-direction:column}.portal-university{height:72px;display:flex;align-items:center;flex-shrink:0}.portal-university img{width:205px;height:auto;object-fit:contain}.portal-hero{flex:1;display:grid;grid-template-columns:1.1fr 1fr;gap:50px;align-items:center;padding-bottom:45px}.portal-heading h1{font-size:clamp(36px,3.7vw,52px);font-weight:650;line-height:1.5;letter-spacing:1px;color:#000;margin:0}.portal-heading>p{font-size:22px;color:#6b8189;letter-spacing:2px;margin-top:13px}.period-entries{display:flex;gap:18px;margin-top:42px}.period-entry{display:flex;align-items:center;justify-content:space-between;gap:30px;min-width:216px;min-height:96px;padding:20px 24px;border:1px solid #237f9b;border-radius:12px;background:#237f9b;color:#fff;transition:background .18s,border-color .18s,transform .18s}.period-entry>span{display:flex;flex-direction:column;gap:6px}.period-entry strong{font-size:21px;font-weight:600;letter-spacing:1px}.period-entry small{font-size:11px;color:#daedf3;letter-spacing:.5px}.period-entry:nth-child(2){background:#edf4f8;border-color:#cfdee8;color:#426677}.period-entry:nth-child(2) small{color:#657f8b}.period-entry:hover{background:#176c86;border-color:#176c86;transform:translateY(-3px)}.period-entry:nth-child(2):hover{background:#e0edf4;border-color:#a8cadb}.period-entry svg{width:35px;height:35px;padding:8px;border-radius:50%;background:#ffffff20;transition:transform .18s}.period-entry:nth-child(2) svg{background:#d8e8f1}.period-entry:hover svg{transform:translate(3px)}.portal-art{width:100%;max-width:510px;justify-self:end;animation:art-arrive .5s ease-out}@keyframes art-arrive{0%{transform:translateY(10px)}to{transform:translateY(0)}}@media(max-width:1000px)and (min-width:761px){.period-entry{min-width:160px;padding:17px;gap:18px}.portal-hero{gap:22px}.portal-heading h1{font-size:36px}.period-entries{gap:12px}}@media(max-width:760px){.collection-cover{padding:19px 24px 34px}.period-portal{min-height:calc(100svh - 53px)}.portal-university{height:57px}.portal-university img{width:166px}.portal-hero{grid-template-columns:1fr;gap:27px;max-width:390px;width:100%;margin:auto;align-content:center;padding:30px 0}.portal-heading{text-align:center;display:contents}.portal-heading h1{font-size:31px;text-align:center;grid-row:1}.portal-heading>p{font-size:16px;margin-top:-21px;text-align:center;grid-row:2}.portal-art{grid-row:3;width:270px;max-width:100%;justify-self:center}.period-entries{grid-row:4;justify-content:center;margin-top:0;gap:12px}.period-entry{min-width:0;flex:1;min-height:81px;padding:16px 17px;gap:14px;border-radius:10px}.period-entry strong{font-size:17px}.period-entry small{font-size:10px}.period-entry svg{width:29px;height:29px;padding:6px}}.fill-layout{display:grid;max-width:1160px;margin:40px auto 80px;padding:0 28px;grid-template-columns:206px minmax(0,1fr);gap:32px;align-items:start}.step-nav{top:28px;padding:12px 0}.step-nav:after{display:none}.step-nav-heading{display:flex;justify-content:space-between;color:#3e6576;padding:4px 12px 20px;border-bottom:1px solid var(--line);margin-bottom:15px}.step-nav nav{display:flex;flex-direction:column;gap:5px}.step-nav nav button{color:#446271;min-height:46px;display:flex;gap:12px;align-items:center;padding:12px;border-radius:7px;transition:background .18s}.step-nav nav button.active{color:#075f7d;background:#e0f0f7;font-weight:700;box-shadow:none}.step-indicator{font-variant-numeric:tabular-nums;font-size:12px;width:22px}.step-name{text-align:left;flex:1}.step-nav>.text-button{margin:24px 12px}.mobile-step-picker{display:none}.fill-main{min-width:0;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:none;padding:36px 40px;overflow:hidden}.fill-section-heading{margin-bottom:30px;display:flex;flex-direction:column;gap:8px;padding-bottom:24px;border-bottom:1px solid var(--line)}.fill-section-heading h1{font-size:27px}.fill-main .progress-track{height:4px;margin-bottom:30px;overflow:hidden;border-radius:2px}.progress-track>div{height:100%;transition:width .22s}.collection-form .form-grid{display:block}.form-group{margin-bottom:30px;border:0;padding:0}.form-group h2{font-size:14px;color:#597382;font-weight:600;padding-bottom:0;margin-bottom:0;grid-column:1/-1}.basic-fields{padding:0}.form-fieldset{border:0;margin:0;padding:0;min-width:0;animation:step-forward .22s ease-out}.form-fieldset.backward{animation-name:step-backward}@keyframes step-forward{0%{transform:translate(18px)}to{transform:translate(0)}}@keyframes step-backward{0%{transform:translate(-18px)}to{transform:translate(0)}}.activity-edit{border:1px solid var(--line);border-radius:8px;padding:22px;margin-bottom:20px;background:#fbfdfe;animation:step-forward .2s ease-out}.activity-edit .section-title{padding-bottom:14px;margin-bottom:20px;border-bottom:1px solid var(--line)}.activity-edit>.field{margin-bottom:0}.add-record{border-color:#a8c6d6;color:#086c8d;border-radius:8px;min-height:48px;background:#f5fafc}.evidence-slot{margin-top:8px}.evidence-slot>strong{display:block;margin-bottom:10px;color:#365e70;font-size:13px}.upload-zone{background:#f5fafc;border-color:#a9c7d7;border-radius:8px}.upload-preview{animation:step-forward .18s ease}.character-count{color:#476675;font-size:13px}.character-count strong{color:#075e7c;font-weight:750}.form-bottom{border-top:1px solid var(--line);padding-top:22px;margin-top:30px;display:flex;align-items:center;gap:16px}.form-bottom .previous-step,.form-bottom .next-step{width:48px;height:48px;min-height:48px;border-radius:50%;padding:0;display:inline-flex;align-items:center;justify-content:center}.form-step-state{flex:1;text-align:center;color:#54707e;font-size:12px}.checklist button{border-color:var(--line)}.checklist .complete{background:#edf7f4}.commitment{background:#f7fafc;border:1px solid #dbe7ef;border-radius:10px;color:#364c59;padding:22px;margin:26px 0}.commitment p{color:#526b7a;font-size:14px;line-height:1.9}.signature{background:#fbfdfe;border-color:var(--line)}.signature canvas{background:#fff}.generic-form{max-width:820px;margin:36px auto;padding:0 24px}.generic-form .collection-workspace{background:#fff;padding:30px;border:1px solid var(--line);border-radius:12px}.generic-form fieldset{border:0;padding:0;min-width:0}.choice-list{display:flex;flex-wrap:wrap;gap:14px}.choice-list .check-label{border:1px solid var(--line);border-radius:6px;padding:10px 14px;margin:0;background:#fff}.clear-choice{align-self:flex-start;font-size:12px;text-decoration:underline;color:#4d6c7d;padding:0}.brand{color:#173e50}.brand small{color:#506e7e}.topbar-right{font-size:12px}.status-dot{background:#3a806b}.route-surface{animation:step-forward .2s ease-out}.stat-card{border:1px solid var(--line);background:#fff;box-shadow:none;border-radius:8px}.stat-card:before,.stat-card:after{display:none}.stat-icon{background:#e9f4f9;color:#087599}.stat-card strong{color:#143d50;font-variant-numeric:tabular-nums}.stat-card small,.stat-label{color:#536e7d}.search-box{border-color:#c0d4df;background:#fff}.material{background:#fff;border-color:var(--line);border-radius:8px}.material h2 span{color:#173e51}.material .prose{color:#213f4d;line-height:2}.material section{border-color:#e4edf2}@media(max-width:760px){.fill-layout{display:block;margin:16px auto 40px;padding:0 14px}.step-nav{position:static;padding:0;margin-bottom:16px}.step-nav nav,.step-nav-heading{display:none}.step-nav>.text-button{margin:12px 0}.mobile-step-picker{display:flex;align-items:center;gap:12px}.mobile-step-picker>span{flex-shrink:0;color:#526c79;font-size:12px}.mobile-step-picker select{min-width:0}.fill-main{padding:26px 20px 100px;border-radius:10px}.fill-section-heading h1{font-size:24px}.activity-edit{padding:16px}.field>span{font-size:15px}.brand small{display:none}.page-head{flex-direction:column;align-items:flex-start}.page-head h1{font-size:23px}.head-actions{flex-wrap:wrap}.generic-form{padding:0 14px}.generic-form .collection-workspace{padding:20px}}.student-progress{height:4px;margin:0;background:#e2edf3;overflow:hidden;pointer-events:none}.student-progress>div{height:100%;background:var(--brand);transition:width .22s}.fill-topbar{position:sticky;top:0;z-index:900;background:#fff;border-bottom:1px solid #dbe5ea}.fill-topbar-inner{max-width:1160px;margin:auto;padding:0 28px;min-height:60px;display:flex;align-items:center;gap:16px}.fill-back{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:8px;color:#405c6b}.fill-back:hover{background:#edf5f8}.fill-topbar-title{font-weight:600;color:#243e4c;font-size:15px}.fill-completion{margin-left:auto;white-space:nowrap;color:#526975;font-size:13px;font-variant-numeric:tabular-nums}.fill-completion strong{color:#087fa4;font-size:16px;margin-left:6px}.fill-layout{margin-top:28px;grid-template-columns:220px minmax(0,1fr);gap:28px}.fill-layout .step-nav{position:sticky;top:88px;padding:12px 10px;background:#edf3f6;border:1px solid #dbe5ea;border-radius:12px}.fill-layout .step-nav-heading{padding:8px 12px 16px;margin-bottom:12px;color:#526975;font-size:12px}.fill-layout .step-nav nav button{font-size:14px;min-height:48px;gap:12px;border:1px solid transparent}.fill-layout .step-nav nav button>.step-name{color:#344e5d;font-size:14px;line-height:1.5;width:auto;white-space:normal}.fill-layout .step-nav nav button>.step-indicator{color:#526975;font-size:12px;width:26px;flex:0 0 26px;display:flex;justify-content:center}.fill-layout .step-nav nav button.active{background:#fff;border-color:#b8d7e4;box-shadow:none}.fill-layout .step-nav nav button.active>span{color:#086784;font-weight:700}.fill-layout .step-nav nav button:not(:disabled):hover{background:#e0edf3}.fill-layout .step-nav nav button:focus-visible{outline:2px solid #087fa4;outline-offset:2px}.fill-layout .step-nav>.text-button{display:none}.fill-layout .fill-main{padding:30px 36px}.fill-layout .fill-section-heading{padding-bottom:20px;margin-bottom:26px}.fill-layout .fill-section-heading h1{font-size:25px;line-height:1.4}.fill-layout .form-bottom{justify-content:space-between;margin-top:28px;padding-top:20px}.fill-layout .add-record{background:#f5fafc;border:1px dashed #99bdcc;min-height:48px;padding:12px;margin:8px 0 0;font-weight:500}.fill-layout .add-record:hover{background:#eaf4f8;border-color:#388ba8}.fill-layout .activity-edit .section-title strong{color:#405c6b;font-size:13px}.fill-layout .field-invalid{border-left:0;padding-left:0}.fill-layout .field{scroll-margin-top:90px}@media(max-width:760px){.fill-topbar-inner{padding:0 14px;gap:8px;min-height:60px}.fill-topbar-title{display:none}.fill-topbar .mobile-step-picker{display:block;flex:1;min-width:0}.fill-topbar .mobile-step-picker select{width:100%;min-height:44px;border:0;background:transparent;padding:8px 4px;font-size:14px;font-weight:600;color:#243e4c}.fill-topbar .fill-back{width:30px;flex-shrink:0}.fill-completion{font-size:11px}.fill-completion strong{font-size:14px;margin-left:2px}.fill-layout{margin:16px auto 32px;padding:0 12px}.fill-layout .step-nav{display:none}.fill-layout .fill-main{padding:24px 20px 96px}.fill-layout .fill-section-heading{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);border:0}.fill-layout .form-bottom{padding:10px 20px calc(10px + env(safe-area-inset-bottom));margin:0}}.basic-fields .form-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 28px;margin-bottom:36px}.basic-fields .field{margin-bottom:0}.choice-group{display:flex;gap:12px;flex-wrap:wrap}.choice-option{display:flex;align-items:center;gap:10px;min-width:100px;min-height:46px;padding:10px 16px;border:1px solid #cbd9e2;border-radius:8px;color:#3b5665;background:#fff;cursor:pointer;transition:border-color .16s,background .16s}.choice-option.selected{background:#edf7fb;border-color:#3991b5;color:#07617d}.choice-option:focus-within{outline:2px solid #96c7dc;outline-offset:2px}.choice-option input[type=radio]{width:17px;height:17px;min-height:0;margin:0;accent-color:var(--brand)}.choice-option:has(input:disabled){cursor:default;opacity:.7}.legacy-value{color:#6c8390;font-size:12px;align-self:center}.upload-button{background:#f7fafc;border-color:#c2d7e3;color:#527383}.file-chip{background:#f1f6fa}.checklist .missing{color:#627987;background:#fff}.checklist .complete{color:#24617b;background:#edf6fa}.signature-overlay{position:fixed;inset:0;z-index:3000;background:#fff;width:100vw;height:100dvh;overflow:hidden}.signature-stage{--signature-rotated:0;width:100%;height:100%;padding:18px;box-sizing:border-box}.signature-stage .signature.expanded{position:static;inset:auto;box-shadow:none;border:0;border-radius:0;padding:0;margin:0;width:100%;height:100%;display:flex;flex-direction:column;justify-content:flex-start;gap:12px;min-height:0}.signature-stage .signature .section-title{margin:0;flex-shrink:0;min-height:36px}.signature-stage .signature canvas{flex:1;min-height:0;height:0;width:100%;max-height:none;aspect-ratio:auto;margin:0}.signature-stage .signature .button-row{margin:0;flex-shrink:0;gap:10px}.signature-stage .button-row button{min-height:40px;font-size:13px}.signature-overlay:fullscreen{background:#fff}@media(max-width:900px)and (orientation:portrait){.signature-stage{--signature-rotated:1;position:absolute;left:50%;top:50%;width:100dvh;height:100vw;transform:translate(-50%,-50%) rotate(90deg);padding:14px 20px}}@media(max-width:760px){.basic-fields .form-group{grid-template-columns:1fr;gap:24px}.fill-layout .form-bottom{position:fixed;inset:auto 0 0;z-index:800;background:#fff;border-top:1px solid #d8e5ed;padding:12px 20px calc(12px + env(safe-area-inset-bottom));margin:0;box-shadow:0 -3px 20px #12354908}.fill-layout .form-bottom .primary{white-space:nowrap}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.field-highlight{outline:3px solid var(--accent);outline-offset:3px}}body:has(.fill-layout),html:has(.fill-layout){background:#fff}.fill-layout{background:#fff}.fill-layout .fill-main{border-color:#e6ebee;background:#fff}.fill-layout h2,.fill-layout h3,.fill-layout .form-group h2,.fill-layout .activity-edit .section-title strong{color:#000}.feedback-composer{margin-top:32px;border-top:1px solid #e1e8ed;padding-top:20px}.feedback-trigger{display:flex;align-items:center;gap:10px;width:100%;padding:8px 0;color:#264957;font-size:14px;text-align:left}.feedback-trigger>span{margin-left:auto;font-size:12px;color:#607682}.feedback-editor{padding-top:16px;display:grid;gap:12px}.feedback-editor>label{font-weight:600;color:#000}.feedback-editor textarea{width:100%;resize:vertical}.feedback-actions{display:flex;gap:16px;align-items:center;justify-content:space-between}.feedback-actions small{color:#526975;font-size:12px}.feedback-actions button{white-space:nowrap;display:flex;align-items:center;gap:8px}.feedback-sent{display:flex;align-items:center;gap:10px;color:#246251;font-size:14px}@media(max-width:760px){.feedback-actions{flex-direction:column;align-items:flex-start}.feedback-composer{margin-bottom:12px}.feedback-trigger>span{font-size:11px}}.request-progress{position:fixed;z-index:1000;inset:0 0 auto;height:3px;overflow:hidden;pointer-events:none;background:#d6eeea}.request-progress span{display:block;height:100%;width:35%;background:#008c83;animation:request-travel 1.25s ease-in-out infinite}@keyframes request-travel{0%{transform:translate(-100%)}to{transform:translate(390%)}}.loading{display:flex;flex-direction:column;gap:14px;padding:32px 20px;min-height:180px;color:#164a47;font-size:14px}.loading-ring{width:30px;height:30px;border:3px solid #d9eeea;border-top-color:#008c83;border-right-color:#008c83;border-radius:50%;animation:spin .85s linear infinite}#root>.loading,#root>.narrow>.loading{min-height:70dvh}.upload-button[aria-busy=true],.document-download button[aria-busy=true]{opacity:1;cursor:progress}.loading-lines{display:grid;gap:7px;width:min(220px,65vw)}.loading-lines i{display:block;height:7px;border-radius:8px;background:linear-gradient(100deg,#e0eeeb 20%,#f4faf8,#e0eeeb 70%);background-size:220% 100%;animation:loading-shimmer 1.5s ease-in-out infinite}.loading-lines i:nth-child(2){width:82%}.loading-lines i:nth-child(3){width:60%}@keyframes loading-shimmer{0%{background-position:120% 0}to{background-position:-100% 0}}.connection-notice{position:fixed;z-index:1001;top:12px;left:50%;transform:translate(-50%);width:max-content;max-width:calc(100vw - 24px);padding:12px 18px;color:#315b70;background:#f1f7fb;border:1px solid #c7dfe9;border-radius:12px;font-size:14px;box-shadow:0 8px 25px #183d3d12}.upload-progress{width:100%;padding:12px 0 2px;color:#165b54;font-size:13px}.upload-progress>div{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px}.upload-progress span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.upload-progress strong{flex-shrink:0}.upload-progress progress{display:block;width:100%;height:5px;border:0;border-radius:8px;overflow:hidden;accent-color:#008c83}.upload-progress progress::-webkit-progress-bar{background:#d9eeea;border-radius:8px}.upload-progress progress::-webkit-progress-value{background:#008c83;border-radius:8px;transition:width .15s}.upload-progress progress::-moz-progress-bar{background:#008c83}.document-download{display:inline-flex;flex-direction:column;align-items:flex-start;gap:6px}.download-error{color:#b42318;font-size:13px;max-width:270px}.export-progress{display:flex;align-items:center;gap:9px;min-width:110px}.export-progress progress{width:70px;height:5px;accent-color:#008c83}@media(prefers-reduced-motion:reduce){.request-progress span,.loading-ring,.loading-lines i{animation:none}.request-progress span{width:100%}.upload-progress progress::-webkit-progress-value{transition:none}}@media print{.request-progress,.connection-notice,.loading{display:none}}input[type=file]::file-selector-button{font:inherit;font-weight:600;border:1px solid #c7d8e2;background:#fff;color:#285b72;padding:9px 14px;border-radius:6px;cursor:pointer;margin-right:12px}.uploads .file-list{gap:12px;margin:0 0 12px}.uploads .image-file-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(135px,1fr));max-width:100%}.uploads .file-chip{position:relative;display:flex;gap:10px;align-items:center;padding:12px;border:1px solid #dce6ed;border-radius:9px;background:#fff;min-width:0;max-width:100%}.uploads .image-file-list .file-chip{display:grid;grid-template-columns:minmax(0,1fr) 28px;padding:8px;gap:6px}.image-thumbnail{position:relative;grid-column:1/-1;display:block;width:100%;padding:0;overflow:hidden;border-radius:5px;background:#f4f7f9;aspect-ratio:4/3}.uploads .image-thumbnail img{display:block;width:100%;height:100%;object-fit:contain;border-radius:0}.image-thumbnail>span{position:absolute;bottom:6px;right:6px;display:flex;align-items:center;gap:4px;padding:4px 6px;border-radius:5px;background:#fffe;color:#365b6e;font-size:11px}.uploads .file-chip>a{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.uploads .file-chip>.icon-button{width:28px;height:28px;min-height:28px;color:#6c8190}.uploads .upload-button{display:flex;align-items:center;gap:10px;width:100%;min-height:64px;padding:14px 18px;border:1px dashed #b4cbd7;border-radius:8px;background:#fafcfd;box-shadow:none;color:#286680;flex-wrap:wrap;font-size:14px;justify-content:flex-start}.uploads .upload-button>svg{width:22px;height:22px;padding:0;background:none;border-radius:0;flex-shrink:0}.uploads .upload-button>small{font-size:11px;color:#728896;margin-left:auto}.uploads .upload-button:hover{background:#f1f8fb;border-color:#66a5bd}.uploads .upload-button.drop-ready{outline:2px solid #5a9fba;outline-offset:2px}.image-preview-overlay{position:fixed;inset:0;z-index:3200;background:#142632;color:#fff;display:flex;flex-direction:column;padding:20px;gap:16px}.image-preview-overlay>header{display:flex;align-items:center;justify-content:space-between;gap:20px}.image-preview-overlay header>div{display:flex;gap:16px;align-items:center;min-width:0}.image-preview-overlay header strong{font-weight:500;font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-preview-overlay header span{font-size:12px;color:#bbced8;white-space:nowrap}.image-preview-overlay .icon-button{color:#fff}.image-preview-stage{flex:1;min-height:0;display:grid;grid-template-columns:40px minmax(0,1fr) 40px;gap:16px;align-items:center}.image-preview-stage img{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;min-height:0}.image-preview-stage>button{color:#fff;height:44px}.image-preview-stage>button:disabled{visibility:hidden}.image-preview-overlay>a{align-self:center;color:#e2f2fa;text-decoration:underline;font-size:13px;min-height:36px}.receipt{max-width:600px;width:calc(100% - 40px);margin:48px auto 64px;padding:0;text-align:center;background:#fff;border:0;box-shadow:none;animation:receipt-arrive .35s cubic-bezier(.2,.7,.3,1) both}.receipt h1{font-size:28px;line-height:1.5;margin:12px 0 6px}.receipt>.muted{font-size:13px;margin-bottom:28px}.receipt .success-mark{width:48px;height:48px;background:#edf7f3;color:#28705c;border:1px solid #d5ebe2;margin:auto}.receipt .receipt-canvas{display:block;width:min(330px,100%);height:auto;margin:24px auto;border:1px solid #dce7ed;border-radius:12px;box-shadow:0 8px 28px #173f5010}.receipt .button-row{justify-content:center;gap:10px;flex-wrap:wrap}.receipt .button-row :is(button,a){display:inline-flex;align-items:center;gap:8px;min-height:42px;font-size:13px;padding:10px 15px;border-radius:7px}.receipt-overlay .receipt{padding:24px}.receipt-overlay .receipt-canvas{max-width:280px}@keyframes receipt-arrive{0%{transform:translateY(18px)}to{transform:translateY(0)}}.my-record{max-width:1040px;width:calc(100% - 48px);margin:40px auto 64px}.my-record .page-head{align-items:flex-start;gap:20px;margin-bottom:24px}.my-record .page-head h1{font-size:28px}.my-record .page-head p{font-size:12px;color:#6d8493}.my-record .head-actions{gap:8px;flex-wrap:wrap}.my-record .head-actions :is(button,a){font-size:12px;min-height:38px;padding:8px 12px;gap:6px}.my-record .material{background:#fff;border:1px solid #e0e8ee;border-radius:10px;padding:32px}.my-record .material h2{font-size:18px;padding:0 0 16px;color:#6f8592}.my-record .material h2 span{color:#152e3c}.my-record .material section{margin:0;padding:26px 0;border-bottom:1px solid #e5ecf1}.my-record .material section:first-child{padding-top:0}.my-record .data-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.my-record .data-grid dt{font-size:12px;color:#688190}.my-record .data-grid dd{font-size:14px;color:#243d4c}.my-record .activity-view{padding:18px 0;border-bottom:1px solid #edf1f4}.my-record .activity-view:last-child{border:0}.my-record .activity-view .section-title{align-items:flex-start;gap:16px;flex-wrap:wrap}.my-record .prose{font-size:15px;line-height:2;white-space:pre-wrap}.my-record .record-readonly{font-size:12px;color:#78909e;margin:16px 0}.review-outcome{background:#f6fafc;border:1px solid #d6e7ef;border-radius:10px;padding:24px;margin-bottom:24px}.outcome-heading{display:flex;justify-content:space-between;align-items:center;gap:16px}.outcome-heading h2{font-size:16px;color:#183744}.outcome-values{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:24px}.outcome-values>div{display:flex;flex-direction:column;gap:8px}.outcome-values span{font-size:12px;color:#537183}.outcome-values strong{font-size:28px;font-weight:650;color:#075f7d;font-variant-numeric:tabular-nums}.outcome-values strong small{font-size:12px;font-weight:400;margin-left:5px}.outcome-values p{font-size:12px;color:#6b8595;margin:0}.hours-adjustment-note{font-size:13px;color:#935320;margin:20px 0 0}.hours-comparison{display:flex;gap:12px;align-items:center;flex-wrap:wrap;font-size:12px;color:#617d8c}.hours-comparison strong{font-size:16px;font-weight:600}.hours-comparison .hours-adjusted{color:#8f4b1e;background:#fff2e6;border:1px solid #f0d3b8;padding:5px 9px;border-radius:6px}.hours-adjusted em{font-size:11px;font-style:normal;margin-left:8px}.hours-pending{color:#71838e}.my-record .feedback-composer{padding-bottom:24px}@media(max-width:900px){.my-record .data-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:760px){.fill-layout{margin:8px auto 24px;padding:0 20px}.fill-layout .fill-main{padding:20px 0 108px;border:0;border-radius:0;overflow:visible}.fill-layout .activity-edit{border:0;border-radius:0;padding:18px 0 24px;background:#fff;border-bottom:1px solid #e1e9ee}.fill-layout .feedback-composer{margin-top:24px;padding-top:16px}.fill-layout .form-group h2{font-size:15px}.fill-layout .field{margin-bottom:24px}.fill-layout .form-bottom{z-index:800}.uploads .image-file-list{grid-template-columns:repeat(2,minmax(0,1fr))}.uploads .upload-button{padding:14px;gap:8px}.uploads .upload-button>small{width:100%;margin-left:30px;font-size:11px}.image-preview-overlay{padding:14px;gap:12px}.image-preview-stage{grid-template-columns:28px minmax(0,1fr) 28px;gap:4px}.image-preview-overlay header strong{font-size:12px}.image-preview-overlay header>div{gap:8px}.receipt{margin:32px auto 48px;width:calc(100% - 40px)}.receipt h1{font-size:25px}.receipt .receipt-canvas{width:min(320px,100%)}.receipt .button-row{display:grid;grid-template-columns:1fr 1fr}.receipt .button-row>.primary{grid-column:1/-1}.receipt .button-row :is(button,a){justify-content:center}.receipt .button-row a{white-space:nowrap}.my-record{width:100%;margin:24px auto 40px;padding:0 20px}.my-record .page-head{flex-direction:column}.my-record .page-head h1{font-size:25px}.my-record .head-actions{display:flex;width:100%;gap:8px}.my-record .head-actions .document-download{flex:1}.my-record .head-actions .document-download button{width:100%}.my-record .material{border:0;border-radius:0;padding:0}.my-record .data-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 16px}.my-record .data-grid dd{font-size:13px;overflow-wrap:anywhere}.my-record .material h2{font-size:17px}.my-record .activity-view .section-title{display:block}.hours-comparison{margin-top:12px;gap:8px}.hours-comparison strong{font-size:15px}.review-outcome{padding:20px;border:0;border-radius:8px}.outcome-values{grid-template-columns:1fr 1fr;gap:20px 12px;margin-top:20px}.outcome-values>div:first-child{grid-column:1/-1}.outcome-values strong{font-size:27px}.outcome-values>div:first-child{padding-bottom:16px;border-bottom:1px solid #dbe8f0}.my-record .prose{font-size:14px}.my-record .info-banner{font-size:13px}}@media(prefers-reduced-motion:reduce){.receipt{animation:none}}.verify-panel{max-width:430px;width:calc(100% - 40px);margin:80px auto;padding:32px;border:1px solid #dce6ed;border-radius:12px;background:#fff;box-shadow:none}.verify-panel h1{font-size:25px}.verify-panel>p{font-size:13px;color:#6a8292;margin:12px 0 28px}.verify-panel .primary{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px}.verify-panel>.small{font-size:11px;margin-top:24px}@media(max-width:760px){.verify-panel{margin:48px auto;border:0;padding:20px 0}}.score-not-public{font-size:12px;color:#6d8594;margin:18px 0 0}#root .admin-shell{--a-ink:#24292f;--a-muted:#69737e;--a-line:#e6e9ed;--a-canvas:#fff;--a-subtle:#f7f8fa;--a-accent:#347b88;--a-control:36px;--a-radius:6px;--a-sidebar:208px;--brand:var(--a-accent);--brand-dark:#286471;--line:var(--a-line);--green:var(--a-accent);--surface:#fff;--muted:var(--a-muted);display:block;min-height:100vh;background:var(--a-canvas);color:var(--a-ink);font-size:13px;line-height:1.65}#root .admin-shell :is(h1,h2,h3,h4){color:var(--a-ink);letter-spacing:0}#root .admin-shell h1{font-size:22px;font-weight:600;line-height:1.4}#root .admin-shell h2{font-size:14px;font-weight:600;line-height:1.5}#root .admin-shell h3{font-size:13px;font-weight:600}#root .admin-shell h4{font-size:12px;font-weight:500}#root .admin-shell .muted{color:var(--a-muted)}#root .admin-shell .small{font-size:12px}#root .admin-shell a{color:var(--a-accent)}#root .admin-shell :is(button,a):focus-visible{outline:2px solid #7aa7b1;outline-offset:2px}#root .admin-shell [data-admin-action],#root .admin-shell a:is(.primary,.secondary,.button,.row-link,.text-button,.icon-button),#root .login-page [data-admin-action]{appearance:none;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:6px;flex-shrink:0;height:var(--a-control,36px);min-height:var(--a-control,36px);max-height:var(--a-control,36px);padding:0 12px;border:1px solid #dce1e6;border-radius:var(--a-radius,6px);background:#fff;color:#414b57;font-family:inherit;font-size:13px;font-weight:500;line-height:1;white-space:nowrap;box-shadow:none;transform:none;text-decoration:none;cursor:pointer;letter-spacing:0;transition:background-color .12s,border-color .12s,color .12s}#root .admin-shell [data-admin-action]:before,#root .admin-shell [data-admin-action]:after{display:none}#root .admin-shell [data-admin-action]:hover:not(:disabled),#root .admin-shell a:is(.primary,.secondary,.button,.row-link,.text-button):hover{background:#f4f6f8;border-color:#c8cfd7;transform:none;box-shadow:none}#root .admin-shell [data-admin-action=primary],#root .admin-shell a.primary,#root .login-page [data-admin-action=primary]{background:#2b323b;border-color:#2b323b;color:#fff}#root .admin-shell [data-admin-action=primary]:hover:not(:disabled),#root .admin-shell a.primary:hover{background:#414b58;border-color:#414b58;color:#fff}#root .admin-shell [data-admin-action=ghost],#root .admin-shell a:is(.row-link,.text-button){border-color:transparent;background:transparent;color:#67737f}#root .admin-shell [data-admin-action=icon],#root .admin-shell a.icon-button{width:var(--a-control);min-width:var(--a-control);padding:0;border-color:transparent;background:transparent;color:#687480}#root .admin-shell [data-admin-action=danger]{color:#af4f55;background:#fff;border-color:#ead1d3}#root .admin-shell [data-admin-action=icon].danger{color:#af4f55}#root .admin-shell [data-admin-action]:disabled{opacity:1;color:#687480;background:#f5f6f8;border-color:#e9edf0;cursor:not-allowed}#root .admin-shell [data-admin-action=icon]:disabled,#root .admin-shell [data-admin-action=ghost]:disabled{background:transparent;border-color:transparent}#root .admin-shell [data-admin-action]>svg,#root .admin-shell a:is(.button,.row-link,.text-button)>svg{width:16px;height:16px;stroke-width:1.7;flex-shrink:0}#root .admin-shell .wide{width:100%}#root .admin-shell .button-row,#root .admin-shell .head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}#root .admin-shell .head-actions:empty{display:none}#root .admin-shell :where(input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea){box-sizing:border-box;min-width:0;width:100%;height:var(--a-control);min-height:var(--a-control);padding:0 10px;border:1px solid #dce1e6;border-radius:var(--a-radius);background:#fff;color:#34404c;font-family:inherit;font-size:13px;line-height:1.5;box-shadow:none}#root .admin-shell textarea{height:auto;min-height:88px;padding:10px;line-height:1.7;resize:vertical}#root .admin-shell :is(input,select,textarea):focus{outline:none;border-color:#8ca5b1;box-shadow:0 0 0 2px #eaf0f3}#root .admin-shell input::placeholder,#root .admin-shell textarea::placeholder{color:#687480}#root .admin-shell input[readonly]{background:#f7f9fa;color:#687480}#root .admin-shell :is(input[type=checkbox],input[type=radio]){width:15px;height:15px;min-height:0;margin:0;accent-color:#4d7886;flex-shrink:0}#root .admin-shell input[type=file]{display:block;width:100%;height:var(--a-control);padding:0;border:0;border-radius:0;background:transparent;font-family:inherit;font-size:12px;line-height:var(--a-control);color:#687480}#root .admin-shell input[type=file]::file-selector-button{box-sizing:border-box;height:var(--a-control);margin:0 12px 0 0;padding:0 12px;border:1px solid #dce1e6;border-radius:var(--a-radius);background:#fff;color:#4e5b67;font-family:inherit;font-size:13px;font-weight:500;line-height:1;cursor:pointer}#root .admin-shell .field{display:flex;flex-direction:column;gap:7px;margin:0 0 18px;min-width:0}#root .admin-shell .field>span{font-size:12px;font-weight:500;color:#586571;line-height:1.6}#root .admin-shell .field>.field-hint{font-size:12px;color:#687480;line-height:1.6;font-weight:400}#root .admin-shell .field-hint strong{font-weight:500;color:#35424f}#root .admin-shell .field>.field-error{font-size:12px;color:#b34d55}#root .admin-shell .field-invalid{border:0;padding:0}#root .admin-shell .field-invalid :is(input,textarea,select){border-color:#cf9398}#root .admin-shell .required-mark{font-size:14px;color:#687480;margin-left:4px}#root .admin-shell .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px}#root .admin-shell .full{grid-column:1/-1}#root .admin-shell .check-label{display:flex;align-items:center;gap:8px;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;font-size:12px;color:#697580;line-height:1.6;cursor:pointer}#root .admin-shell .choice-list,#root .admin-shell .grant-modules{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0 20px}#root .admin-sidebar{position:fixed;inset:0 auto 0 0;width:var(--a-sidebar);padding:24px 12px 16px;background:#f8f9fb;border-right:1px solid var(--a-line);display:flex;flex-direction:column;z-index:50}#root .admin-wordmark{display:flex;align-items:center;justify-content:space-between;padding:0 12px 22px;font-size:15px;font-weight:600;color:#3c4856}#root .admin-sidebar nav{min-height:0;overflow:auto;flex:1;scrollbar-width:thin}#root .admin-nav-group{padding-bottom:18px}#root .admin-nav-group:not(:has(a)){display:none}#root .admin-nav-group>h2{margin:10px 12px 7px;color:#35424f;font-size:12px;font-weight:500}#root .admin-nav-group>a{display:flex;align-items:center;gap:10px;min-height:36px;margin:2px 0;padding:6px 12px;color:#687480;border-radius:6px;font-size:13px;font-weight:400}#root .admin-nav-group>a svg{width:16px;height:16px;stroke-width:1.6}#root .admin-nav-group>a.active{background:#e9edf1;color:#35424f;font-weight:600}#root .admin-nav-group>a:hover{background:#eef1f4;color:#35424f}#root .sidebar-bottom{flex-shrink:0;border-top:1px solid var(--a-line);padding:12px 0 0;margin-top:12px}#root .sidebar-bottom>a{display:flex;align-items:center;gap:8px;padding:6px 12px;min-height:36px;font-size:12px;color:#687480}#root .sidebar-bottom>a svg{width:15px;height:15px}#root .sidebar-bottom>a svg:last-child{margin-left:auto}#root .sidebar-bottom .profile{display:none}#root .admin-body{margin-left:var(--a-sidebar);min-width:0;background:#fff}#root .admin-topbar{position:sticky;top:0;z-index:40;height:56px;min-height:56px;display:flex;align-items:center;gap:16px;padding:0 32px;background:#fff;border-bottom:1px solid var(--a-line);-webkit-backdrop-filter:none;backdrop-filter:none}#root .admin-context{display:flex;align-items:center;gap:12px;min-width:0;flex:1}#root .admin-context>strong,#root .context-label{font-size:12px;font-weight:400;color:#35424f;white-space:nowrap}#root .admin-topbar .form-switcher{height:36px;width:auto;max-width:640px;border:0;padding-left:0;font-size:12px;font-weight:500;color:#64717e;background:transparent}#root .admin-user-actions{display:flex;align-items:center;gap:6px;color:#687480;font-size:12px}#root .admin-user-actions>span{margin-right:6px}#root .admin-shell .admin-menu-toggle,#root .admin-shell .mobile-nav-close,#root .admin-nav-scrim,#root .admin-bottom-nav,#root .mobile-work-queue,#root .mobile-only,#root .mobile-select-all,#root .review-mobile-tabs,#root .mobile-feedback-back{display:none}#root .admin-main{max-width:1512px;margin:auto;padding:30px 32px 56px;min-width:0}#root .route-surface{animation:none;transform:none}#root .admin-main .page-head{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:0 0 26px;min-height:36px}#root .admin-main .page-head .eyebrow{display:none}#root .admin-main .page-head p{font-size:12px;color:#687480;margin-top:6px}#root .admin-main .head-actions select{width:auto;min-width:140px;max-width:250px}#root .admin-main .back-link{display:inline-flex;align-items:center;gap:5px;color:#687480;font-size:12px;min-height:28px;margin-bottom:12px}#root .admin-main .panel{min-width:0;background:#fff;border:1px solid var(--a-line);border-radius:8px;box-shadow:none;overflow:hidden}#root .admin-main .panel:has(>.data-table){overflow:auto}#root .admin-main .panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 22px;border-bottom:1px solid #edf0f3;background:#fff}#root .admin-main .panel-head h2{margin:0;font-size:13px;font-weight:600}#root .admin-main .panel-head>a{display:flex;align-items:center;gap:4px;color:#687480;font-size:12px}#root .admin-main .section-title{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 16px}#root .admin-main .error,#root .admin-main .success-message,#root .admin-main .info-banner,#root .admin-main .ai-note{display:block;border:1px solid #e0e7ec;border-radius:6px;padding:12px 16px;background:#f8fafb;color:#687480;font-size:12px;margin:0 0 20px;box-shadow:none}#root .admin-main .error{background:#fff8f8;border-color:#f0dfe0;color:#9c383f}#root .admin-main .success-message{background:#f5faf8;border-color:#dfebe6;color:#38604e}#root .admin-main .success-message svg{width:14px;height:14px;margin-right:6px}#root .admin-shell .badge{display:inline-flex;align-items:center;min-height:22px;padding:2px 7px;border:0;border-radius:4px;background:#f0f2f5;color:#687480;font-size:12px;line-height:1.5;font-weight:400}#root .admin-shell .badge.good{background:#eef5f1;color:#49685a}#root .admin-shell .badge.warn{background:#fbf1ee;color:#8a5d50}#root .admin-main .empty{padding:42px 22px!important;color:#687480!important;text-align:center;font-size:12px}#root .admin-main .empty svg{width:24px;height:24px;margin-bottom:10px;color:#687480}#root .admin-main .table-scroll{max-width:100%;overflow:auto}#root .admin-main .data-table{width:100%;border-collapse:collapse;min-width:650px;font-size:12px}#root .admin-main .data-table th{padding:11px 18px;background:#fafbfc;color:#687480;font-size:12px;font-weight:400;text-align:left;white-space:nowrap;border-bottom:1px solid #edf0f3}#root .admin-main .data-table td{padding:13px 18px;border-bottom:1px solid #edf0f3;color:#43515f;font-size:13px;vertical-align:middle}#root .admin-main .data-table tbody tr:last-child td{border-bottom:0}#root .admin-main .data-table tr:hover td{background:#fbfcfd}#root .admin-main .data-table td strong{display:block;font-size:13px;color:#43515f;font-weight:500}#root .admin-main .data-table td small{display:block;margin-top:4px;font-size:12px;color:#687480}#root .admin-main .data-table .button-row{flex-wrap:nowrap;gap:4px}#root .admin-main .student-name-link{display:inline-flex;align-items:center;gap:6px;color:#43515f}#root .admin-main .filter-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:18px 22px 12px;background:#fff}#root .admin-main .filter-bar>select{width:auto;min-width:126px;max-width:200px}#root .admin-main .search-box,#root .admin-main .compact-search{display:flex;align-items:center;gap:8px;min-width:180px;max-width:320px;flex:1;border:1px solid #dce1e6;border-radius:6px;padding:0 10px;height:36px;color:#687480;background:#fff}#root .admin-main :is(.search-box,.compact-search) input{border:0!important;box-shadow:none!important;height:34px;min-height:34px;padding:0;background:transparent;font-size:12px}#root .admin-main .filter-options{display:flex;align-items:center;gap:6px;padding:0 22px 14px}#root .admin-main .advanced-filters{border-top:1px solid #edf0f3;background:#fafbfc;padding-bottom:18px}#root .admin-main .advanced-filters[hidden]{display:none}#root .admin-main .advanced-filters label{font-size:12px;color:#687480;display:flex;flex-direction:column;gap:6px}#root .admin-main .selection-bar{min-height:48px;padding:10px 22px;display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px;background:#fafbfc;border-top:1px solid #edf0f3;color:#687480;font-size:12px}#root .admin-main .student-export-actions{display:flex;gap:8px;align-items:center}#root .admin-main .student-export-actions select{width:130px}#root .admin-main .bulk-toolbar{padding:10px 22px;display:flex;gap:12px;align-items:center;font-size:12px;border-top:1px solid var(--a-line)}#root .admin-main .pagination{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:16px 22px;border-top:1px solid #edf0f3;font-size:12px;color:#687480}#root .admin-main .pagination>span{margin-right:auto}#root .admin-main .pagination select{width:88px}#root .collections-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 22px;border-bottom:1px solid var(--a-line)}#root .admin-tabs{display:flex;gap:4px;flex-wrap:wrap}#root .admin-tabs button{height:36px;min-height:36px;padding:0 12px;font-size:12px;color:#687480;border-radius:6px}#root .admin-tabs button[aria-pressed=true]{background:#eef1f4;color:#526371;font-weight:500}#root .collection-row{display:grid;grid-template-columns:minmax(190px,1.5fr) 78px 100px 142px minmax(260px,auto);gap:16px;align-items:center;padding:20px 22px;border-bottom:1px solid #edf0f3}#root .collection-row:last-child{border:0}#root .collection-row-head{padding:10px 22px;background:#fafbfc;color:#687480;font-size:12px}#root .collection-identity h2{font-size:13px;font-weight:500;color:#4b5a68;line-height:1.6;overflow-wrap:anywhere}#root .collection-identity p{font-size:12px;color:#687480;margin-top:5px}#root .collection-count{font-size:12px;color:#687480;font-variant-numeric:tabular-nums}#root .collection-count strong{font-size:15px;color:#35424f;font-weight:500}#root .collection-deadline{font-size:12px;color:#687480}#root .collection-actions{display:flex;align-items:center;justify-content:flex-end;gap:2px;flex-wrap:wrap}#root .collection-actions .collection-state-control{width:68px;font-size:12px;padding:0 6px;border-color:transparent;background:#f5f7f9;color:#687480}#root .inline-create,#root .settings-panel,#root .editor-options,#root .base-import{padding:24px;margin-bottom:24px}#root .settings-panel{max-width:960px}#root .settings-panel .form-grid{margin-top:4px}#root .settings-switches{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}#root .collection-strip{display:flex;align-items:center;justify-content:space-between;gap:16px;color:#687480;font-size:12px;margin:0 0 20px;padding:0;background:none;border:0}#root .collection-strip>div,#root .collection-strip>span{display:flex;align-items:center;gap:8px}#root .status-dot{width:5px;height:5px;border-radius:50%;background:#99b5a7}#root .metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-bottom:28px;border-top:1px solid var(--a-line);border-bottom:1px solid var(--a-line)}#root .metric{padding:22px;border-right:1px solid #edf0f3;display:flex;flex-direction:column;gap:8px;background:#fff}#root .metric:first-child{padding-left:0}#root .metric:last-child{border-right:0}#root .metric>div{display:flex;align-items:center;gap:12px;font-size:12px;color:#687480}#root .metric>div svg{width:14px;height:14px;color:#687480}#root .metric>strong{font-family:inherit;font-size:28px;line-height:1.3;font-weight:500;color:#455868;font-variant-numeric:tabular-nums}#root .metric small{font-size:12px;color:#687480}#root .dashboard-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:24px;margin-bottom:24px;align-items:start}#root .collection-progress-summary{padding:22px}#root .collection-progress-summary>div:first-child{display:flex;justify-content:space-between;align-items:baseline;color:#687480;font-size:12px}#root .collection-progress-summary>div>strong{font-size:24px;font-weight:500;color:#35424f}#root .collection-progress-summary strong small{font-size:12px;margin-left:2px}#root .collection-progress-bar,#root .thin-progress{height:4px;background:#f0f3f5;border-radius:3px;overflow:hidden}#root .collection-progress-bar{margin:12px 0 16px}#root .collection-progress-bar>span,#root .thin-progress>span{display:block;height:100%;background:#88a8b3}#root .collection-progress-summary>p{display:flex;justify-content:space-between;gap:12px;color:#687480;font-size:12px}#root .collection-progress-summary p strong{margin-left:6px;font-weight:500;color:#35424f}#root .college-progress{display:grid;grid-template-columns:1fr 1fr;gap:16px 22px;padding:0 22px 22px}#root .college-progress>div>div:first-child{display:flex;justify-content:space-between;gap:8px;margin-bottom:6px;font-size:12px;color:#687480}#root .timeline{padding:2px 22px}#root .timeline>div{padding:15px 0;border-bottom:1px solid #edf0f3}#root .timeline>div:last-child{border:0}#root .timeline-mark{display:none}#root .timeline p,#root .timeline small{font-size:12px;color:#687480}#root .review-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px;align-items:start}#root .review-content{min-width:0;border:1px solid var(--a-line);border-radius:8px;overflow:hidden;background:#fff}#root .review-content>.panel-head{padding:14px 22px}#root .review-content>.panel-head select{width:140px;font-size:12px}#root .admin-main .material{border:0;border-radius:0;padding:24px;background:#fff;font-size:13px;min-width:0}#root .admin-main .material section{padding:24px 0;border-bottom:1px solid #edf0f3;margin:0}#root .admin-main .material section:first-child{padding-top:0}#root .admin-main .material h2{font-size:14px;font-weight:500;color:#35424f;margin:0 0 20px}#root .admin-main .material h2 span{color:#5a6b78;font-weight:500;margin-left:8px}#root .admin-main .material .data-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}#root .admin-main .data-grid dt{font-size:12px;color:#687480}#root .admin-main .data-grid dd{font-size:13px;color:#43515f;margin:5px 0 0;overflow-wrap:anywhere}#root .admin-main .material .prose{font-size:13px;line-height:2;color:#687480;white-space:pre-wrap}#root .admin-main .activity-view{padding:18px 0;border-bottom:1px solid #edf0f3}#root .admin-main .activity-view .section-title{align-items:flex-start;flex-wrap:wrap}#root .review-panel{position:sticky;top:80px;max-height:calc(100vh - 104px);overflow:auto;padding:18px;border:1px solid var(--a-line);border-radius:8px;background:#fff;scrollbar-width:thin}#root .review-panel fieldset{border:0;padding:0;margin:0;min-width:0}#root .inspector-tabs{display:flex;gap:4px;padding-bottom:14px;margin-bottom:18px;border-bottom:1px solid #edf0f3}#root .inspector-tabs [data-admin-action]{flex:1}#root .admin-shell .inspector-tabs [data-admin-action][aria-pressed=true]{background:#eef2f5;border-color:transparent;color:#35424f}#root .review-panel[data-inspector=review] .grant-section,#root .review-panel[data-inspector=grant] .grading-section{display:none}#root .review-panel .section-title{margin-bottom:16px}#root .review-panel details{margin-bottom:20px}#root .review-panel summary{font-size:12px;font-weight:500;color:#687480;cursor:pointer;min-height:30px}#root .review-hours{padding:14px 0;border-bottom:1px solid #edf0f3}#root .review-hours h4{margin-bottom:12px;color:#35424f;font-size:12px}#root .review-hours .field{display:grid;grid-template-columns:minmax(0,1fr) 78px;gap:4px 12px;align-items:center;margin:0 0 14px}#root .review-hours .field>span{grid-column:1;grid-row:1;font-size:12px;color:#687480;font-weight:400}#root .review-hours .field>input{grid-column:2;grid-row:1;font-variant-numeric:tabular-nums}#root .review-hours .field>.field-hint{grid-column:1/-1;grid-row:2;font-size:12px;color:#687480}#root .review-scores{display:grid;grid-template-columns:1fr 1fr;gap:0 14px;padding-top:8px}#root .review-scores .field:has(textarea){grid-column:1/-1}#root .review-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding-top:16px;border-top:1px solid #edf0f3}#root .review-actions [data-admin-action]{width:100%;padding:0 6px;font-size:12px}#root .review-panel hr{border:0;border-top:1px solid #edf0f3;margin:20px 0}#root .grant-history>div{padding:14px 0;border-bottom:1px solid #edf0f3;font-size:12px;color:#687480}#root .grant-history>div>div{display:flex;align-items:center;justify-content:space-between;gap:8px}#root .inspector-evidence{margin:20px 0}#root .inspector-evidence .ai-review{border:0;border-top:1px solid #edf0f3;border-radius:0;padding:16px 0;margin:0}#root .review-content .ai-panel{border:0;border-bottom:1px solid #edf0f3;border-radius:0;padding:14px 22px;margin:0}#root .base-source{padding:16px 22px;font-size:12px;border-bottom:1px solid #edf0f3;color:#687480}#root .accounts-grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px;align-items:start}#root .account-row{display:flex;align-items:center;gap:12px;width:100%;padding:18px;border:0;border-bottom:1px solid #edf0f3;text-align:left;background:#fff}#root .account-row.selected{background:#f2f5f7}#root .account-row>span:nth-child(2){flex:1;min-width:0}#root .account-row strong{font-size:13px;font-weight:500;color:#607684}#root .account-row small{display:block;font-size:12px;color:#687480;margin-top:4px}#root .avatar{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:6px;background:#f0f3f5;color:#687480;font-size:12px;flex-shrink:0}#root .permission-editor{padding:24px}#root .permission-heading{display:flex;align-items:center;gap:10px;margin-bottom:24px}#root .permission-heading h2{font-size:16px;font-weight:500;color:#35424f}#root .permission-editor>.field{max-width:520px}#root .access-block{padding:22px 0;border-top:1px solid #edf0f3;margin:22px 0 0}#root .access-block .section-title strong{font-size:12px;color:#35424f;font-weight:500}#root .permission-editor>select{margin:18px 0;width:auto;min-width:200px;max-width:100%}#root .permission-editor>[data-admin-action]{display:flex;margin-top:12px}#root .account-create{padding:24px;margin-bottom:24px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 22px;align-items:end}#root .account-create[hidden]{display:none}#root .account-create h3{grid-column:1/-1;font-size:14px;margin-bottom:4px}#root .account-create .field{margin:0}#root .account-create [data-admin-action]{justify-self:start}#root .restore-panel{padding:24px;margin-top:24px}#root .restore-panel>summary{font-size:14px;font-weight:500;color:#687480;cursor:pointer}#root .restore-panel>p{font-size:12px;color:#687480;max-width:65ch;margin:12px 0 22px}#root .restore-panel .restore-command{padding:16px;background:#f7f9fa;border:1px solid #e7edf1;border-radius:6px;white-space:pre-wrap;overflow-wrap:anywhere;font-size:12px;max-width:100%;overflow:auto;color:#687480}#root .ai-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}#root .ai-panel{padding:22px;min-width:0}#root .ai-panel h2{margin-bottom:20px}#root .ai-panel>p{font-size:12px;color:#687480;margin:12px 0 20px}#root .ai-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:18px 0}#root .ai-toolbar h2{margin:0 auto 0 0}#root .ai-toolbar select{width:auto}#root .ai-result{padding:18px 0;border-bottom:1px solid #edf0f3;font-size:12px;color:#687480;overflow-wrap:anywhere}#root .ai-result>header{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:10px}#root .ai-result p{white-space:pre-wrap;line-height:1.8;margin:8px 0}#root .ai-result pre{max-height:240px;overflow:auto;font-size:12px;background:#f7f9fa;padding:12px;border-radius:6px}#root .document-preview{display:block;width:100%;height:70vh;margin-top:16px;border:1px solid #e2e9ee;border-radius:6px}#root .report-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:24px;border:1px solid var(--a-line);border-radius:8px}#root .report-summary>span{display:flex;flex-direction:column;gap:8px;padding:22px;border-right:1px solid var(--a-line);font-size:12px;color:#687480}#root .report-summary>span:last-child{border:0}#root .report-summary strong{font-size:24px;font-weight:500;color:#35424f}#root .report-bars{padding:22px}#root .report-bars>div{margin-bottom:16px}#root .report-bars>div>div:first-child{display:flex;justify-content:space-between;margin-bottom:6px;color:#687480;font-size:12px}#root .import-panel{padding:26px}#root .import-drop{display:flex;align-items:center;gap:16px;border:1px dashed #dce4e9;border-radius:6px;padding:24px;background:#fcfdfe;font-size:13px;color:#43515f;flex-wrap:wrap;margin:20px 0}#root .import-drop>svg{width:24px;height:24px}#root .import-drop>div{flex:1;min-width:180px}#root .import-drop strong{display:block;font-weight:500}#root .import-drop small{display:block;font-size:12px;color:var(--a-muted);margin-top:4px}#root .admin-shell .import-drop>input[type=file]{flex:0 1 310px}#root .ai-panel>.check-label{margin:12px 0;min-height:24px}#root .ai-panel>.check-label+[data-admin-action]{margin-top:8px}#root .import-guide{padding:16px 0;font-size:12px;color:#687480}#root .log-actor{font-size:12px;color:#687480}#root .designer-layout{display:grid;grid-template-columns:168px minmax(0,1fr) 272px;gap:20px;align-items:start}#root .component-library{padding:18px}#root .component-library h3{margin-bottom:16px;font-size:12px;color:#35424f}#root .component-library button{display:flex;align-items:center;gap:8px;width:100%;min-height:36px;padding:7px 10px;margin:4px 0;border:1px solid #e9eef2;border-radius:6px;text-align:left;font-size:12px;color:#687480;background:#fff}#root .component-library button svg{width:14px;height:14px}#root .canvas-content{padding:22px}#root .form-canvas>.panel-head{flex-wrap:wrap}#root .designer-empty{padding:60px 24px;text-align:center;color:#687480;font-size:12px}#root .designer-empty h3{font-size:14px;margin:14px 0 6px;color:#35424f}#root .question-preview{display:flex;align-items:flex-start;gap:12px;width:100%;padding:18px;margin:0 0 12px;border:1px solid #e9eef2;border-radius:6px;background:#fff;text-align:left}#root .question-preview.selected{border-color:#b2c4cf;background:#fafcfd}#root .question-number{color:#687480;font-size:12px}#root .question-preview>div{flex:1;min-width:0}#root .question-preview strong{font-size:12px;color:#35424f;font-weight:500}#root .question-preview small{display:block;font-size:12px;color:#687480;margin:4px 0 10px}#root .preview-control{display:block;min-height:36px;border:1px solid #e8eff4;border-radius:6px;background:#fff;color:#687480;padding:8px 10px;font-size:12px}#root .property-panel{padding:20px}#root .property-panel>h3{margin-bottom:20px;color:#35424f;font-size:12px}#root .field-rules{display:grid;grid-template-columns:1fr 1fr;gap:0 20px;padding-top:18px}#root .field-rules>div{padding:12px 0;border-bottom:1px solid #edf2f5;font-size:12px;color:#687480}#root .feedback-inbox{display:grid;grid-template-columns:280px minmax(0,1fr);gap:28px;align-items:start}#root .feedback-list>button{display:block;padding:18px 20px;border:0;border-bottom:1px solid #edf0f3;width:100%;text-align:left;background:#fff}#root .feedback-list>button.selected{background:#f5f8fa}#root .feedback-list button>span{display:flex;justify-content:space-between;align-items:center;gap:12px}#root .feedback-list strong{font-size:12px;font-weight:500;color:#35424f}#root .feedback-list small,#root .feedback-list time{font-size:12px;color:#687480}#root .feedback-list p{font-size:12px;color:#687480;margin:8px 0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#root .feedback-detail{padding:24px}#root .feedback-detail>header{display:flex;align-items:center;justify-content:space-between;gap:16px}#root .feedback-detail header h2{font-size:16px;color:#35424f}#root .feedback-detail header span{font-size:12px;color:#687480}#root .feedback-message{padding:22px 0;margin:0 0 20px;border-bottom:1px solid #edf2f5;font-size:14px;line-height:1.9;color:#35424f;white-space:pre-wrap;overflow-wrap:anywhere}#root .feedback-detail summary{font-size:12px;color:#687480;cursor:pointer}#root .feedback-detail details{margin-top:18px}#root .feedback-files{padding-top:22px}#root .feedback-files h3{font-size:12px;color:#35424f}#root .feedback-files a{display:block;font-size:12px;padding:8px 0;overflow-wrap:anywhere}#root .feedback-snapshot{margin:16px 0;overflow-wrap:anywhere}#root .feedback-snapshot>div{padding:10px 0;border-bottom:1px solid #eef4f7}#root .feedback-snapshot dt{font-size:12px;color:#687480}#root .feedback-snapshot dd{font-size:12px;margin:4px 0 0;color:#687480;white-space:pre-wrap}#root .feedback-signature{max-width:100%;max-height:200px}#root .desktop-page-notice{padding:24px 0}#root .desktop-page-notice p{font-size:13px;color:var(--a-muted);margin:16px 0 24px}#root .login-page{--a-control:36px;--a-radius:6px;min-height:100dvh;display:grid;place-items:center;padding:24px;background:#f7f8fa;color:#24292f}#root .login-panel{width:100%;max-width:380px;margin:0;padding:32px;background:#fff;border:1px solid #e6e9ed;border-radius:8px;box-shadow:none}#root .login-panel h1{font-size:22px;font-weight:600;letter-spacing:0;margin-bottom:28px}#root .login-panel .field{gap:8px;margin-bottom:20px}#root .login-panel .field>span{font-size:13px;font-weight:500;color:#43515f}#root .login-panel input{min-height:var(--a-control);height:var(--a-control);padding:0 10px;border:1px solid #dce1e6;border-radius:6px;font-size:14px}#root .login-panel [data-admin-action]{width:100%;margin-top:4px}#root .login-panel>.text-button{display:inline-flex;align-items:center;gap:8px;min-height:36px;margin-top:20px;color:#687480;font-size:12px}@media(max-width:1320px){#root .collection-row{grid-template-columns:minmax(190px,1fr) 72px 86px minmax(240px,auto)}#root .collection-deadline,#root .collection-row-head>span:nth-child(4){display:none}#root .designer-layout{grid-template-columns:145px minmax(0,1fr) 250px;gap:16px}#root .review-layout{grid-template-columns:minmax(0,1fr) 305px;gap:22px}}@media(max-width:1050px){#root .admin-shell{--a-sidebar:184px}#root .admin-main{padding:24px}#root .admin-main .page-head{flex-wrap:wrap;gap:16px}#root .admin-topbar{padding:0 24px}#root .admin-context .form-switcher{max-width:430px}#root .context-label{display:none}#root .collection-row{grid-template-columns:minmax(170px,1fr) 72px 86px}#root .collection-actions{grid-column:1/-1;justify-content:flex-start;margin-top:4px}#root .collection-row-head>span:last-child{display:none}#root .collections-toolbar{flex-wrap:wrap}#root .review-layout{grid-template-columns:1fr}#root .review-panel{position:static;max-height:none}#root .accounts-grid{grid-template-columns:220px minmax(0,1fr)}#root .dashboard-grid,#root .ai-grid{grid-template-columns:1fr}#root .designer-layout{grid-template-columns:145px minmax(0,1fr)}#root .property-panel{grid-column:1/-1}}@media(max-width:760px){#root .login-page{--a-control:44px;background:#fff}#root .login-panel{border:0;padding:20px}#root .login-panel input{font-size:16px}#root .admin-shell{--a-control:44px;--a-sidebar:0px;background:#fff}#root .admin-sidebar,#root .admin-nav-scrim,#root .admin-menu-toggle,#root .admin-shell .desktop-only{display:none!important}#root .admin-body{margin:0}#root .admin-topbar{height:0;min-height:0;padding:0;border:0;position:relative;z-index:50;background:none}#root .admin-context{position:absolute;top:18px;right:20px;max-width:110px;display:block}#root .admin-topbar .form-switcher{width:100%;max-width:110px;height:36px;min-height:36px;border:0;font-size:12px;font-weight:400;color:#687480;padding:0;background:transparent;box-shadow:none}#root .admin-user-actions,#root .context-label{display:none}#root .admin-main{padding:22px 20px calc(88px + env(safe-area-inset-bottom))}#root .admin-main .page-head{min-height:30px;display:block;margin-bottom:22px;padding-right:120px}#root .admin-main h1{font-size:18px;line-height:1.5;font-weight:500;color:#435464}#root .admin-main .page-head .head-actions{width:calc(100% + 120px);padding-top:12px;gap:8px}#root .admin-main .page-head .head-actions:empty{display:none}#root .admin-shell :where(input:not([type=checkbox]):not([type=radio]):not([type=file]),select,textarea){font-size:16px}#root .admin-main .panel{border:0;border-radius:0;overflow:visible;box-shadow:none}#root .admin-main .collection-strip{display:none}#root .metrics{grid-template-columns:1fr 1fr;border-top:1px solid #edf0f3;border-bottom:1px solid #edf0f3;margin-bottom:26px}#root .metric{border:0;padding:18px 4px;gap:6px}#root .metric:first-child{padding-left:4px}#root .metric:nth-child(2n){padding-left:24px}#root .metric:nth-child(-n+2){border-bottom:1px solid #edf0f3}#root .metric>div svg,#root .metric small{display:none}#root .metric>strong{font-size:28px;color:#536b7b}#root .admin-main .route-surface:has(.mobile-work-queue)>.page-head .head-actions{display:none}#root .mobile-work-queue{display:block}#root .mobile-section-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #edf0f3;padding-bottom:14px}#root .mobile-section-head h2{font-size:13px;font-weight:500;color:#35424f}#root .mobile-section-head>a{display:flex;align-items:center;gap:4px;color:#687480;font-size:12px}#root .mobile-queue-row{display:flex;align-items:center;gap:12px;padding:18px 0;border-bottom:1px solid #edf0f3;color:#687480}#root .mobile-queue-row>div{flex:1;min-width:0;display:flex;flex-direction:column;gap:6px}#root .mobile-queue-row strong{font-size:14px;font-weight:500;color:#35424f}#root .mobile-queue-row>div>span{font-size:12px;color:#687480}#root .admin-bottom-nav{position:fixed;inset:auto 0 0;z-index:70;display:flex;align-items:center;justify-content:space-around;height:calc(64px + env(safe-area-inset-bottom));padding:6px 16px calc(6px + env(safe-area-inset-bottom));border-top:1px solid #e8eef2;background:#fff}#root .admin-bottom-nav>a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-width:72px;min-height:48px;font-size:12px;color:#687480}#root .admin-bottom-nav>a.active{color:#687480;font-weight:500}#root .admin-bottom-nav svg{width:20px;height:20px;stroke-width:1.6}#root .admin-main .filter-bar{padding:0 0 14px;gap:8px}#root .admin-main .filter-bar>.search-box{max-width:none;min-width:100%;height:44px;flex-basis:100%}#root .admin-main .search-box input{font-size:16px;height:42px;min-height:42px}#root .admin-main .filter-bar select[aria-label=学院筛选],#root .admin-main .filter-bar select[aria-label=提交状态筛选],#root .filter-options,#root .advanced-filters,#root .student-export-actions,#root .bulk-toolbar,#root .pagination select{display:none!important}#root .admin-main .filter-bar>select{width:100%;max-width:none;height:44px;font-size:13px}#root .admin-main .selection-bar{padding:8px 0 12px;border:0;background:#fff;min-height:0}#root .admin-main .table-scroll:has(.students-table){overflow:visible}#root .admin-main .students-table{display:block;width:100%;min-width:0}#root .students-table thead{display:none}#root .students-table tbody{display:block}#root .admin-main .students-table tr{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;padding:18px 0;min-height:102px;border-top:1px solid #edf0f3;background:#fff}#root .admin-main .students-table td{border:0;padding:0;white-space:normal;overflow-wrap:anywhere}#root .students-table td:first-child,#root .students-table td:nth-child(5),#root .students-table td:nth-child(6),#root .students-table td:nth-child(7),#root .students-table td:last-child{display:none!important}#root .students-table td:nth-child(2){grid-column:1;grid-row:1}#root .students-table td:nth-child(3){grid-column:1;grid-row:2;font-size:12px;color:#687480}#root .students-table td:nth-child(4){grid-column:2;grid-row:1/3;align-self:center}#root .students-table td:nth-child(3)>small,#root .students-table td:nth-child(4)>small{display:none!important}#root .admin-main .students-table td:nth-child(2) strong{font-size:14px;font-weight:500;color:#35424f}#root .admin-main .students-table td:nth-child(2)>small{font-size:12px;color:#687480;margin-top:5px}#root .student-name-link{min-height:28px}#root .mobile-only{display:inline-block}#root .student-name-link svg{color:#687480}#root .admin-main .pagination{padding:18px 0;border-top:1px solid #edf0f3;justify-content:space-between;gap:8px}#root .admin-main .pagination>span{margin-right:0}#root .review-layout{display:block}#root .review-content{border:0;border-radius:0;overflow:visible}#root .review-content>.panel-head,#root .admin-main .route-surface:has(.review-layout)>a.back-link{display:none}#root .review-mobile-tabs{position:sticky;top:0;z-index:45;display:flex;gap:24px;margin:0 -20px 20px;padding:0 20px;background:#fff;border-bottom:1px solid #edf0f3}#root .review-mobile-tabs>button{height:44px;padding:0 10px;border-bottom:2px solid transparent;font-size:13px;color:#687480}#root .review-mobile-tabs>button[aria-pressed=true]{color:#687480;border-bottom-color:#8fb5cf;font-weight:500}#root .review-layout[data-mobile-tab=material]>.review-panel,#root .review-layout[data-mobile-tab=review]>.review-content{display:none}#root .review-panel{position:static;max-height:none;padding:0;border:0;border-radius:0;overflow:visible}#root .inspector-tabs{display:none}#root .admin-main .material{padding:0}#root .admin-main .material .data-grid{grid-template-columns:1fr 1fr;gap:18px}#root .admin-main .material h2{font-size:14px}#root .review-panel .grading-section>.section-title{display:none}#root .review-scores{gap:0 14px}#root .review-hours .field{grid-template-columns:minmax(0,1fr) 90px}#root .review-actions{gap:8px}#root .review-actions [data-admin-action]{font-size:12px}#root .feedback-inbox{display:block}#root .feedback-inbox:not(.has-selection)>.feedback-detail,#root .feedback-inbox.has-selection>.feedback-list{display:none}#root .feedback-list>button{padding:18px 0}#root .feedback-detail{padding:0}#root .feedback-list p{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}#root .mobile-feedback-back{display:flex;align-items:center;gap:6px;margin:0 0 24px;font-size:12px;color:#687480}#root .feedback-detail>header{flex-wrap:wrap}#root .desktop-page-notice{padding:12px 0}#root .admin-shell:has(.desktop-page-notice) .admin-context{display:none}}@media(prefers-reduced-motion:reduce){#root .admin-shell *{animation:none!important;transition:none!important}}
