:root{--brand:#7a1f2b;--brand-dark:#5f1520;--gold:#c7a15d;--heading:#2b2023;--text:#493f42;--muted:#756b6e;--surface:#f5f2f1;--border:#ded6d8;color:var(--text);background:var(--surface);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{background:var(--surface);min-width:320px}body{min-width:320px;min-height:100vh;margin:0}button,input{font:inherit}p,blockquote{margin-top:0}#root{min-height:100vh}.evaluation-page{max-width:980px}.evaluation-heading{justify-content:space-between;align-items:flex-start;gap:1.5rem;display:flex}.evaluation-heading>div{max-width:680px}.evaluation-state,.receipt-card{text-align:center;background:#fff;border:1px solid #dfe5e1;border-radius:18px;flex-direction:column;align-items:center;padding:3rem 2rem;display:flex}.evaluation-state h1,.evaluation-state h2,.receipt-card h1{color:#18392f;margin:.5rem 0}.evaluation-state p,.receipt-card p{color:#596762;max-width:620px;margin:0 0 1.5rem}.error-state{border-color:#edc9c3}.pending-list{gap:1rem;margin-top:1.5rem;display:grid}.pending-card{background:#fff;border:1px solid #dfe5e1;border-radius:16px;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.4rem 1.5rem;display:flex}.pending-card h2{color:#18392f;margin:.25rem 0;font-size:1.08rem}.pending-card p{color:#50605a;margin:.2rem 0}.pending-card small,.evaluation-form-header small{color:#697771;margin-top:.45rem;display:block}.privacy-assurance{color:#254b3d;background:#edf6f1;border-left:4px solid #2d7057;border-radius:0 12px 12px 0;margin:1.5rem 0;padding:1rem 1.2rem}.privacy-assurance p{margin:.25rem 0 0}.evaluation-back{margin-bottom:1rem}.evaluation-form-header{color:#fff;background:linear-gradient(135deg,#18392f,#285c49);border-radius:18px;padding:1.7rem 1.8rem}.evaluation-form-header .section-label,.evaluation-form-header small{color:#c9ded5}.evaluation-form-header h1{margin:.35rem 0;font-size:clamp(1.5rem,4vw,2rem)}.evaluation-form-header p{margin:.25rem 0 .8rem}.evaluation-form{gap:1rem;display:grid}.question-card{background:#fff;border:1px solid #dfe5e1;border-radius:16px;min-width:0;margin:0;padding:1.25rem 1.4rem 1.4rem}.question-card legend{color:#18392f;padding:0 .35rem;font-weight:700;line-height:1.45}.question-card legend>span{color:#fff;background:#2d7057;border-radius:999px;justify-content:center;align-items:center;width:1.7rem;height:1.7rem;margin-right:.65rem;font-size:.8rem;display:inline-flex}.question-card legend em{color:#8b3c31;text-transform:uppercase;margin-left:.65rem;font-size:.72rem;font-style:normal;display:inline-block}.option-list{gap:.65rem;margin-top:.75rem;display:grid}.option-list label{color:#354840;cursor:pointer;border:1px solid #dfe5e1;border-radius:10px;align-items:center;gap:.75rem;padding:.8rem .9rem;display:flex}.option-list label:has(input:checked){background:#edf6f1;border-color:#2d7057}.option-list input{accent-color:#2d7057;width:1rem;height:1rem}.evaluation-input{box-sizing:border-box;color:#243a31;font:inherit;resize:vertical;border:1px solid #bac7c1;border-radius:10px;width:100%;margin-top:.75rem;padding:.8rem}.evaluation-input:focus{border-color:#2d7057;outline:none;box-shadow:0 0 0 3px #2d705726}.evaluation-submit{justify-self:end;margin-top:.5rem}.submission-confirmation{background:#fff8e8;border:1px solid #e7ce91;border-radius:14px;justify-content:space-between;align-items:center;gap:1rem;padding:1.1rem 1.2rem;display:flex}.submission-confirmation p{color:#65583a;margin:.25rem 0 0}.submission-confirmation>div:last-child{flex-shrink:0;gap:.6rem;display:flex}.receipt-mark{color:#fff;background:#2d7057;border-radius:999px;justify-content:center;align-items:center;width:3.4rem;height:3.4rem;margin-bottom:.5rem;font-size:1.8rem;display:flex}.receipt-card dl{gap:.8rem;width:100%;max-width:680px;margin:0 0 1.5rem;display:grid}.receipt-card dl>div{background:#f5f7f6;border-radius:10px;padding:.8rem}.receipt-card dt{color:#697771;text-transform:uppercase;font-size:.78rem}.receipt-card dd{color:#18392f;overflow-wrap:anywhere;margin:.35rem 0 0;font-weight:700}@media (width<=720px){.evaluation-heading,.pending-card,.submission-confirmation{flex-direction:column;align-items:stretch}.pending-card .primary-button,.evaluation-heading .secondary-button{width:100%}.submission-confirmation>div:last-child{flex-direction:column}.question-card{padding:1rem}}.role-workspace{gap:1.25rem;display:grid}.workspace-section{gap:1rem;display:grid}.workspace-section>header h2{margin:.2rem 0 0}.workspace-stack{gap:1rem;display:grid}.workspace-notice{border-left-color:#1f6b45}.workspace-empty{color:#6a5d54;background:#fcfaf7;border:1px dashed #d6c9bc;border-radius:14px;padding:1.25rem}.workspace-guidance{color:#665950;background:#faf5ef;border-left:3px solid #8a1f2d;border-radius:8px;flex-wrap:wrap;justify-content:space-between;gap:.35rem 1rem;padding:.8rem 1rem;display:flex}.workspace-guidance strong{color:#6f1825}.staff-evaluation-form{background:#fffdf9;border:1px solid #ddcfc3;border-radius:16px;gap:1rem;padding:1.2rem;display:grid}.staff-evaluation-heading{justify-content:space-between;gap:1rem;display:flex}.staff-evaluation-heading div{gap:.2rem;display:grid}.staff-evaluation-heading strong{font-size:1.08rem}.staff-evaluation-heading span{color:#76675e}.staff-evaluation-form fieldset{border:1px solid #e4d9cf;border-radius:12px;gap:.6rem;margin:0;padding:1rem;display:grid}.staff-evaluation-form legend{padding:0 .4rem;font-weight:700}.staff-evaluation-form fieldset small{color:#8a1f2d;font-weight:700}.answer-options{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.55rem;display:grid}.answer-options label{background:#fff;border:1px solid #e2d7ce;border-radius:10px;align-items:center;gap:.45rem;min-height:42px;padding:.55rem .7rem;display:flex}.staff-evaluation-form textarea,.compact-form textarea{resize:vertical;min-height:92px}.staff-comment-field{gap:.45rem;font-weight:700;display:grid}.staff-comment-field textarea{box-sizing:border-box;width:100%}.table-scroll{overflow-x:auto}.workspace-table{border-collapse:collapse;width:100%;min-width:650px}.workspace-table th,.workspace-table td{text-align:left;vertical-align:top;border-bottom:1px solid #eadfd6;padding:.75rem}.workspace-table th{color:#6f1825;letter-spacing:.045em;text-transform:uppercase;background:#faf5ef;font-size:.78rem}.workspace-table tbody tr:hover{background:#fdf9f4}.workspace-actions{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.result-details{border:1px solid #e4d9cf;border-radius:12px;overflow:hidden}.result-details summary{cursor:pointer;background:#faf5ef;padding:.9rem 1rem;font-weight:700}.plan-card,.version-card,.cycle-card{background:#fffdf9;border:1px solid #dfd3c9;border-radius:14px;gap:.75rem;padding:1rem;display:grid}.plan-card>div:first-child,.version-card>div:first-child,.cycle-card>div:first-child{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.plan-card>div:first-child{display:grid}.plan-card span{color:#76675e}.status-line{color:#665950;flex-wrap:wrap;gap:.75rem;display:flex}.status-pill{text-transform:uppercase;background:#f4e5e5;border-radius:999px;width:fit-content;padding:.25rem .55rem;font-size:.78rem;font-weight:800;display:inline-flex;color:#6f1825!important}.compact-form,.upload-form{gap:.9rem;display:grid}.compact-form label,.upload-form label{gap:.4rem;font-weight:700;display:grid}.form-grid,.upload-form{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.upload-form .primary-button{grid-column:1/-1;justify-self:start;min-width:220px}.upload-form label{min-width:0}.upload-form input[type=file]{box-sizing:border-box;width:100%;min-width:0}.cycle-grid{grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:1rem;display:grid}.cycle-card dl,.version-card dl{grid-template-columns:repeat(2,minmax(100px,1fr));gap:.55rem;margin:0;display:grid}.cycle-card dl div,.version-card dl div{background:#f8f2ec;border-radius:10px;gap:.15rem;padding:.65rem;display:grid}.cycle-card dt,.version-card dt{color:#786a60;font-size:.78rem}.cycle-card dd,.version-card dd{margin:0;font-size:1.05rem;font-weight:800}@media (width<=720px){.staff-evaluation-form,.plan-card,.version-card,.cycle-card{padding:.85rem}.answer-options,.form-grid,.upload-form{grid-template-columns:1fr}.cycle-card dl,.version-card dl{grid-template-columns:1fr 1fr}.workspace-actions>button{width:100%}.upload-form .primary-button{grid-column:auto;justify-self:stretch;width:100%}}.plan-detail-actions,.plan-action-detail{border-top:1px solid #eadfd6;padding-top:.75rem}.plan-action-detail summary{cursor:pointer;color:#6f1825;font-weight:800}.plan-action-detail>.workspace-stack{margin-top:.75rem}.plan-action-detail article{background:#fff;border:1px solid #eadfd6;border-radius:10px;gap:.45rem;padding:.8rem;display:grid}.app-shell{background:var(--surface);grid-template-columns:minmax(320px,.9fr) minmax(480px,1.35fr);min-height:100svh;display:grid}.institutional-panel{color:#fff;background:radial-gradient(circle at 18% 12%,#d8b57933,#0000 30%),linear-gradient(145deg,#731c2a 0%,#4d111b 58%,#2d0b11 100%);flex-direction:column;justify-content:space-between;gap:48px;padding:clamp(36px,6vw,84px);display:flex;position:relative;overflow:hidden}.institutional-panel:after{content:"";border:1px solid #ffffff21;border-radius:50%;width:360px;height:360px;position:absolute;bottom:6%;right:-140px;box-shadow:0 0 0 42px #ffffff06,0 0 0 86px #ffffff05}.brand-mark{z-index:1;color:#f1d9ad;letter-spacing:.08em;border:1px solid #ffffff73;border-radius:50%;place-items:center;width:78px;height:78px;font-family:Georgia,Times New Roman,serif;font-size:24px;font-weight:700;display:grid;position:relative}.eyebrow,.section-label{letter-spacing:.13em;text-transform:uppercase;margin:0;font-size:.75rem;font-weight:800}.eyebrow{color:#e8cca0;max-width:36ch}.institutional-panel h1{color:#fff;letter-spacing:-.035em;max-width:12ch;margin:18px 0 14px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2.4rem,5vw,4.7rem);font-weight:500;line-height:.98}.faculty-name{color:#ffffffc2;font-size:1.05rem}.institutional-panel blockquote{z-index:1;color:#ffffffb8;border-left:2px solid #d8b579;max-width:34ch;margin:0;padding-left:18px;font-family:Georgia,Times New Roman,serif;font-size:.95rem;font-style:italic;position:relative}.workspace{align-items:center;padding:clamp(28px,7vw,96px);display:grid}.card{border:1px solid var(--border);background:#fff;border-radius:22px;width:min(100%,670px);margin:0 auto;padding:clamp(28px,5vw,54px);box-shadow:0 24px 64px #3a20251a}.section-label{color:var(--brand)}.card h2{color:var(--heading);margin:10px 0 12px;font-family:Georgia,Times New Roman,serif;font-size:clamp(1.8rem,4vw,2.65rem);font-weight:500;line-height:1.1}.supporting-copy,.status-card>p{color:var(--muted)}.access-card form{gap:10px;margin-top:34px;display:grid}.access-card label{color:var(--heading);font-size:.88rem;font-weight:750}.access-card input{width:100%;min-height:52px;color:var(--heading);font:inherit;background:#fff;border:1px solid #cfc8ca;border-radius:10px;padding:0 16px;transition:border-color .16s,box-shadow .16s}.access-card input::placeholder{color:#948b8e}.access-card input:focus{border-color:var(--brand);outline:none;box-shadow:0 0 0 4px #7a1f2b1f}button{min-height:46px;font:inherit;cursor:pointer;border-radius:10px;font-weight:750;transition:transform .16s,background-color .16s,border-color .16s}button:hover:not(:disabled){transform:translateY(-1px)}button:focus-visible{outline-offset:2px;outline:3px solid #7a1f2b40}button:disabled{cursor:wait;opacity:.65}.primary-button{border:1px solid var(--brand);color:#fff;background:var(--brand);margin-top:8px}.primary-button:hover:not(:disabled){background:var(--brand-dark)}.secondary-button{color:var(--brand);background:#fff;border:1px solid #bcaeb1;padding-inline:18px}.secondary-button:hover:not(:disabled){border-color:var(--brand);background:#fbf7f8}.text-button{min-height:40px;color:var(--brand);background:0 0;border:0;padding-inline:8px}.inline-button{min-height:40px;margin:0;padding:8px 15px}.compact-button{min-height:40px}.notice{border-left:3px solid var(--gold);color:#4c3820;background:#fbf5e9;border-radius:4px 10px 10px 4px;margin-top:22px;padding:14px 16px;font-size:.92rem}.error-notice{color:#7a271a;background:#fef3f2;border-left-color:#b42318}.privacy-note{color:var(--muted);margin-top:18px;font-size:.78rem}.status-card{text-align:center}.status-card.error{border-top:4px solid #b42318}.status-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:26px;display:flex}.spinner{border:3px solid #eadfe1;border-top-color:var(--brand);border-radius:50%;width:38px;height:38px;margin-bottom:24px;animation:.9s linear infinite spin;display:inline-block}.portal-shell{background:#f4f1f1;min-height:100svh}.portal-header{z-index:10;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#fffffff5;border-bottom:1px solid #d9d0d2;justify-content:space-between;align-items:center;gap:28px;min-height:82px;padding:14px clamp(22px,4vw,60px);display:flex;position:sticky;top:0}.portal-brand{color:var(--heading);text-align:left;background:0 0;border:0;align-items:center;gap:13px;padding:0;display:flex}.portal-brand>span:first-child{color:#f1d9ad;background:var(--brand);letter-spacing:.06em;border-radius:50%;flex:none;place-items:center;width:48px;height:48px;font-family:Georgia,Times New Roman,serif;font-size:14px;display:grid}.portal-brand>span:last-child{gap:2px;display:grid}.portal-brand strong{font-family:Georgia,Times New Roman,serif;font-size:1.08rem;font-weight:600}.portal-brand small,.account-summary span{color:var(--muted);font-size:.77rem}.account-summary{align-items:center;gap:20px;display:flex}.account-summary>div{text-align:right;gap:3px;display:grid}.account-summary strong{color:var(--heading);font-size:.9rem}.portal-frame{grid-template-columns:248px minmax(0,1fr);width:min(1480px,100%);min-height:calc(100svh - 82px);margin:0 auto;display:grid}.portal-nav{background:#eee9e9;border-right:1px solid #ded5d7;flex-direction:column;gap:8px;padding:32px 20px;display:flex}.portal-nav>button{color:#56494d;text-align:left;background:0 0;border:1px solid #0000;grid-template-columns:26px 1fr auto;align-items:center;gap:8px;width:100%;padding:0 13px;display:grid}.portal-nav>button:hover,.portal-nav>button.active{color:var(--brand);background:#fff;border-color:#d6c7ca}.nav-icon{color:var(--brand);text-align:center;font-size:1.25rem}.unread-badge{color:#fff;background:var(--brand);text-align:center;border-radius:999px;min-width:25px;padding:3px 7px;font-size:.7rem;line-height:1.4}.nav-profile{border-top:1px solid #d6ccce;gap:8px;margin-top:24px;padding:22px 13px 0;display:grid}.nav-profile span{color:#61565a;font-size:.82rem}.portal-content{min-width:0;padding:clamp(30px,5vw,68px)}.portal-page{gap:26px;width:min(100%,1040px);margin:0 auto;display:grid}.page-header h1,.content-card h1{color:var(--heading);margin:9px 0 10px;font-family:Georgia,Times New Roman,serif;font-size:clamp(2rem,4vw,3.1rem);font-weight:500;line-height:1.05}.page-header p:last-child,.content-card>p{max-width:70ch;color:var(--muted);margin-bottom:0}.page-header-actions{justify-content:space-between;align-items:flex-end;gap:24px;display:flex}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.summary-card{border:1px solid var(--border);min-height:155px;color:var(--text);text-align:left;background:#fff;border-radius:16px;align-content:center;gap:5px;padding:24px;display:grid;box-shadow:0 14px 34px #3a20250d}button.summary-card:hover{background:#fffdfd;border-color:#bfaeb2}.summary-card span{color:var(--muted);font-size:.85rem;font-weight:750}.summary-card strong{color:var(--brand);font-family:Georgia,Times New Roman,serif;font-size:2.4rem;font-weight:500}.summary-card small{color:var(--muted)}.notification-summary-card{cursor:pointer}.content-card{border:1px solid var(--border);background:#fff;border-radius:18px;padding:clamp(24px,4vw,38px);box-shadow:0 20px 48px #3a20250f}.role-panel h2{color:var(--heading);margin:8px 0 22px;font-family:Georgia,Times New Roman,serif;font-size:1.55rem;font-weight:500}.role-grid{gap:12px;display:grid}.role-card{background:#fcfafb;border:1px solid #e3dcde;border-radius:12px;padding:18px}.role-card span{color:var(--brand);font-weight:800}.role-card p{color:var(--muted);margin:5px 0 0;font-size:.9rem}.next-stage{color:#fff;background:var(--heading);border-radius:14px;padding:20px 22px}.next-stage strong{color:#f1d9ad}.next-stage p{color:#ffffffb8;margin:5px 0 0}.filter-bar{flex-wrap:wrap;gap:9px;display:flex}.filter-button{color:#66595d;background:#fff;border:1px solid #cec3c6;border-radius:999px;min-height:40px;padding:8px 15px;font-size:.82rem}.filter-button.active{border-color:var(--brand);color:#fff;background:var(--brand)}.notification-list{gap:12px;display:grid}.notification-card{background:#fff;border:1px solid #ddd4d6;border-left:4px solid #aaa0a3;border-radius:14px;overflow:hidden;box-shadow:0 12px 28px #3a20250b}.notification-card.warning{border-left-color:#b97816}.notification-card.critical{border-left-color:#b42318}.notification-card.unread{background:#fffcf7;box-shadow:0 14px 34px #55311614}.notification-heading{width:100%;min-height:88px;color:var(--text);text-align:left;background:0 0;border:0;border-radius:0;grid-template-columns:12px minmax(0,1fr) 28px;align-items:center;gap:15px;padding:17px 20px;display:grid}.notification-heading:hover:not(:disabled){background:#7a1f2b06;transform:none}.notification-indicator{background:#b8afb1;border-radius:50%;width:9px;height:9px}.notification-card.unread .notification-indicator{background:var(--brand);box-shadow:0 0 0 4px #7a1f2b1a}.notification-title{gap:7px;min-width:0;display:grid}.notification-title b{color:var(--heading);text-overflow:ellipsis;white-space:nowrap;font-size:1rem;overflow:hidden}.notification-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px 12px;font-size:.72rem;display:flex}.notification-meta strong{color:#7a271a;letter-spacing:.04em;text-transform:uppercase;background:#fee4e2;border-radius:999px;padding:3px 7px;font-size:.66rem}.disclosure{color:var(--brand);text-align:center;font-size:1.5rem;font-weight:400}.notification-detail{padding:0 20px 20px 47px}.notification-detail>p{color:#564b4e;white-space:pre-wrap;max-width:76ch;margin:0;line-height:1.6}.notification-footer{border-top:1px solid #eee8e9;justify-content:space-between;align-items:center;gap:20px;margin-top:20px;padding-top:15px;display:flex}.notification-footer>span{color:var(--muted);font-size:.75rem}.notification-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:9px;display:flex}.loading-panel,.empty-state,.unavailable-state{text-align:center}.loading-panel{align-content:center;place-items:center;min-height:230px;display:grid}.loading-panel p{margin:0}.empty-state,.unavailable-state{align-content:center;place-items:center;gap:10px;min-height:320px;display:grid}.empty-state>span{color:#276749;background:#e6f4ec;border-radius:50%;place-items:center;width:54px;height:54px;font-size:1.35rem;display:grid}.empty-state h2{color:var(--heading);margin:8px 0 0;font-family:Georgia,Times New Roman,serif;font-weight:500}.module-mark{color:#f1d9ad;background:var(--brand);letter-spacing:.06em;border-radius:50%;place-items:center;width:66px;height:66px;margin-bottom:10px;font-family:Georgia,Times New Roman,serif;font-size:15px;display:grid}.unavailable-state .secondary-button{margin-top:18px}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=860px){.app-shell{grid-template-columns:1fr}.institutional-panel{gap:30px;min-height:auto;padding:34px 28px}.institutional-panel h1{max-width:15ch;font-size:clamp(2.1rem,10vw,3.4rem)}.institutional-panel blockquote{display:none}.workspace{padding:30px 18px 46px}.portal-header{align-items:flex-start;position:static}.account-summary{flex-direction:column;align-items:flex-end;gap:10px}.portal-frame{grid-template-columns:1fr;min-height:auto}.portal-nav{z-index:9;border-bottom:1px solid #d8ced0;border-right:0;flex-direction:row;padding:10px 18px;position:sticky;top:0}.portal-nav>button{width:auto;min-width:135px}.nav-profile{display:none}.portal-content{padding:34px 22px 50px}}@media (width<=600px){.brand-mark{width:62px;height:62px;font-size:19px}.card{border-radius:16px;padding:26px 20px}.status-actions{flex-direction:column;align-items:stretch}.portal-header{gap:16px;padding:13px 16px}.portal-brand>span:last-child{display:none}.account-summary{flex:1;align-items:stretch}.account-summary>div{text-align:right}.account-summary span{text-overflow:ellipsis;white-space:nowrap;max-width:42vw;overflow:hidden}.compact-button{min-height:36px}.portal-nav{overflow-x:auto}.portal-content{padding:28px 15px 44px}.page-header-actions,.notification-footer{flex-direction:column;align-items:stretch}.page-header-actions .secondary-button{width:100%}.summary-grid{grid-template-columns:1fr}.notification-heading{grid-template-columns:10px minmax(0,1fr) 22px;gap:10px;padding:15px 14px}.notification-title b{white-space:normal}.notification-detail{padding:0 14px 17px 34px}.notification-actions{flex-direction:column;align-items:stretch}.notification-actions button{width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
