:root{color-scheme:light;--bg: #f7f8fb;--surface: #ffffff;--surface-soft: #faf9fe;--lavender: #78649f;--lavender-strong: #67548e;--lavender-soft: #f1edf7;--lavender-line: #d9d0e8;--text: #1f212b;--muted: #626779;--line: #d9dde8;--line-soft: #e9ecf3;--success: #2f9e71;--danger: #b8324a;--shadow: 0 14px 32px rgba(37, 42, 65, .12);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{overflow-x:hidden}body{margin:0;background:var(--bg);color:var(--text);overflow-x:hidden}button,input,select,textarea{font:inherit}button{cursor:pointer}.app-shell{min-height:100vh;min-height:100dvh;background:linear-gradient(90deg,#78649f0f 0,#78649f00 280px),var(--bg)}.topbar{position:sticky;top:0;z-index:20;display:grid;grid-template-columns:220px 1fr auto;align-items:center;height:58px;background:#ffffffeb;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.brand{display:inline-flex;align-items:center;padding-left:24px;line-height:0}.brand-logo{display:block;width:144px;height:auto}.brand.compact{padding-left:0}.brand.compact .brand-logo{width:112px}.topbar-title{min-width:0;padding-left:22px;border-left:1px solid var(--line);font-size:18px;font-weight:720;letter-spacing:0}.mobile-title,.mobile-only{display:none}.topbar-status{display:inline-flex;align-items:center;gap:9px;padding-right:28px;color:var(--lavender);font-size:14px;font-weight:720}.workspace{display:grid;grid-template-columns:250px minmax(0,1fr);min-height:calc(100vh - 58px)}.progress-rail{position:sticky;top:58px;align-self:start;height:calc(100vh - 58px);padding:22px 26px;border-right:1px solid var(--line);background:#ffffff94}.rail-heading p,.rail-heading strong{display:block;margin:0}.rail-heading p{font-weight:760}.rail-heading strong{margin-top:7px;color:var(--muted);font-size:13px}.progress-track{height:7px;margin:16px 0 22px;overflow:hidden;border-radius:999px;background:#e4e2ea}.progress-track span{display:block;height:100%;border-radius:inherit;background:var(--lavender);transition:width .18s ease}.progress-track.slim{height:7px;margin:16px 0 20px}.section-list{display:grid;gap:7px;margin:0;padding:0;list-style:none}.section-list button{display:grid;grid-template-columns:30px 1fr;gap:12px;align-items:start;width:100%;padding:8px 7px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);text-align:left}.section-list button:hover,.section-list .active button{border-color:var(--lavender-line);background:#78649f14}.section-list b{display:block;color:var(--text);font-size:13px;font-weight:680}.section-list small{display:block;margin-top:2px;color:var(--muted);font-size:12px}.step-dot{display:inline-flex;align-items:center;justify-content:center;width:27px;height:27px;border:1px solid #bcc1ce;border-radius:999px;background:var(--surface);color:var(--muted);font-size:12px;font-weight:760}.section-list .complete .step-dot{border-color:var(--lavender);background:var(--lavender);color:#fff}.section-list .complete small{color:var(--success)}.rail-note{display:flex;gap:12px;margin-top:48px;padding:16px;border:1px solid var(--lavender-line);border-radius:8px;background:var(--surface-soft);color:var(--muted);font-size:12px;line-height:1.45}.rail-note svg{flex:0 0 auto;color:var(--lavender)}.form-column{min-width:0;max-width:940px;padding:28px 42px 44px}.step-toolbar,.form-toolbar{display:flex;justify-content:space-between;gap:24px;padding-bottom:18px}h1,h2,h3,p{margin-top:0}h1{margin-bottom:6px;font-size:26px;line-height:1.2;letter-spacing:0}.step-copy>span{display:block;margin-bottom:6px;color:var(--lavender);font-size:12px;font-weight:780;letter-spacing:.08em;text-transform:uppercase}.step-toolbar p,.form-toolbar p,.section-heading p{margin-bottom:0;color:var(--muted);font-size:13px;line-height:1.45}.toolbar-actions{display:flex;flex-wrap:wrap;align-items:start;justify-content:flex-end;gap:10px}.desktop-wizard-actions{display:flex;gap:10px}.mobile-progress-summary,.mobile-wizard-actions{display:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:38px;padding:0 15px;border-radius:6px;border:1px solid transparent;font-size:13px;font-weight:740;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease,background .15s ease}.button:hover{transform:translateY(-1px)}.button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid rgba(120,100,159,.24);outline-offset:2px}.button.primary{background:var(--lavender);color:#fff;box-shadow:0 10px 22px #78649f38}.button.primary:hover{background:var(--lavender-strong)}.button.secondary{border-color:var(--line);background:var(--surface);color:var(--text)}.button.secondary:hover{border-color:var(--lavender-line);box-shadow:0 8px 18px #2a2d3c14}.button.danger{background:var(--danger);color:#fff;box-shadow:0 10px 20px #b8324a2e}.button.danger:hover{background:#9f2a3f}.button:disabled,.button:disabled:hover{cursor:not-allowed;transform:none;border-color:var(--line);background:#f4f5f8;color:#a0a5b4;box-shadow:none}.button.wide{width:100%;min-height:56px}.error-banner{display:grid;gap:4px;margin:20px 0 0;padding:14px 16px;border:1px solid rgba(184,50,74,.25);border-left:4px solid var(--danger);border-radius:8px;background:#fff7f8;color:var(--danger);font-size:13px}.modal-backdrop{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:24px;background:#1c182661;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.confirm-dialog{width:min(420px,100%);display:grid;gap:18px;padding:24px;border:1px solid var(--lavender-line);border-radius:8px;background:#fff;box-shadow:0 24px 60px #252a4138}.dialog-icon{width:42px;height:42px;display:grid;place-items:center;border-radius:999px;background:var(--surface-soft);color:var(--lavender)}.confirm-dialog h2{margin:0;font-size:20px;line-height:1.25}.confirm-dialog p{margin:8px 0 0;color:var(--muted);font-size:14px;line-height:1.5}.dialog-actions{display:flex;justify-content:flex-end;gap:10px}.evaluation-form{display:grid;gap:0;min-width:0}.form-section{min-width:0;padding:0;border-bottom:0}.active-section{min-height:0;padding:24px;border:1px solid var(--line);border-radius:8px;background:#ffffffdb;box-shadow:0 12px 26px #252a410d}.step-transition{animation-duration:.3s;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:both;will-change:opacity,transform}.step-transition-forward{animation-name:step-enter-forward}.step-transition-backward{animation-name:step-enter-backward}@keyframes step-enter-forward{0%{opacity:0;transform:translate3d(18px,0,0) scale(.995)}to{opacity:1;transform:translateZ(0) scale(1)}}@keyframes step-enter-backward{0%{opacity:0;transform:translate3d(-18px,0,0) scale(.995)}to{opacity:1;transform:translateZ(0) scale(1)}}.spin{animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.section-heading{margin-bottom:20px}.section-heading h2{margin-bottom:6px;font-size:19px;line-height:1.25}.section-heading.split{display:flex;justify-content:space-between;gap:20px}.mini-score{align-self:start;min-width:98px;padding:8px 10px;border:1px solid var(--lavender-line);border-radius:6px;background:var(--surface-soft);color:var(--lavender);text-align:center;font-weight:780}.position-select{display:grid;grid-template-columns:minmax(240px,1fr);gap:16px;margin-bottom:14px}.field-grid{display:grid;grid-template-columns:repeat(2,minmax(220px,1fr));gap:13px 18px}.field-grid.one-column{grid-template-columns:1fr}.spacious-fields{gap:26px}.field{display:grid;gap:5px;min-width:0}.field span{color:#343746;font-size:12px;font-weight:720}.field em{color:var(--lavender);font-style:normal}.field input,.field select,.field textarea{width:100%;min-width:0;border:1px solid #cfd4e1;border-radius:6px;background:var(--surface);color:var(--text);font-size:14px;line-height:1.4}.field input,.field select{height:38px;padding:0 11px}.field textarea{min-height:148px;resize:vertical;padding:12px}.field input::placeholder,.field textarea::placeholder{color:#9196a6}.char-count{justify-self:end;margin-top:-27px;padding-right:10px;color:var(--muted);font-size:12px;pointer-events:none}.rating-scale{display:flex;flex-wrap:wrap;justify-content:flex-start;gap:10px 22px;min-width:0;color:var(--muted);font-size:12px}.rating-scale span{display:inline-flex;align-items:baseline;gap:6px;min-width:max-content}.rating-scale b{color:var(--text);font-size:13px}.section-progress{flex:0 0 auto;min-width:126px;padding:8px 10px;border:1px solid var(--lavender-line);border-radius:6px;background:var(--surface-soft);color:var(--lavender);text-align:center;font-size:12px;font-weight:780}.criteria-form{min-width:0}.ratings-summary{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--line)}.criteria-list{border-top:0}.criterion-item{padding:17px 0;border-bottom:1px solid var(--line)}.criterion-heading{display:grid;grid-template-columns:30px minmax(0,1fr);gap:10px;align-items:start}.criterion-heading p{margin:3px 0 0;color:var(--text);font-size:13px;line-height:1.48}.criterion-number{display:grid;place-items:center;width:28px;height:28px;border:1px solid var(--lavender-line);border-radius:6px;background:var(--lavender-soft);color:var(--lavender);font-size:12px;font-weight:800}.criterion-controls{display:grid;grid-template-columns:minmax(360px,1fr) minmax(190px,.72fr);gap:14px;margin:12px 0 0 40px}.rating-choices{min-width:0;display:grid;grid-template-columns:repeat(4,minmax(72px,1fr));gap:7px;margin:0;padding:0;border:0}.rating-choices legend{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.rating-choice{position:relative;min-width:0;min-height:54px;display:grid;align-content:center;justify-items:center;gap:2px;padding:6px 5px;border:1px solid #cfd4e1;border-radius:6px;background:#fff;color:var(--muted);cursor:pointer;transition:border-color .17s ease,background-color .17s ease,box-shadow .17s ease,color .17s ease,transform .17s ease}.rating-choice:hover{border-color:var(--lavender-line);background:var(--lavender-soft)}.rating-choice.selected{border-color:var(--lavender);background:var(--lavender-soft);box-shadow:inset 0 0 0 1px var(--lavender);color:var(--lavender);transform:translateY(-1px)}.rating-choice.selected[data-rating="1"]{border-color:#d55c5c;background:#fff1f1;box-shadow:inset 0 0 0 1px #d55c5c,0 4px 10px #b131311a;color:#9f2929}.rating-choice.selected[data-rating="2"]{border-color:#d2a729;background:#fff8d9;box-shadow:inset 0 0 0 1px #d2a729,0 4px 10px #9069001a;color:#735500}.rating-choice.selected[data-rating="3"]{border-color:#4b9c68;background:#eef9f1;box-shadow:inset 0 0 0 1px #4b9c68,0 4px 10px #23713f1a;color:#28643c}.rating-choice input{position:absolute;opacity:0}.rating-choice b{font-size:13px}.rating-choice span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.criterion-comment{min-width:0;display:grid;gap:5px}.criterion-comment>span{color:#343746;font-size:11px;font-weight:720}.criterion-comment textarea{width:100%;min-height:54px;resize:vertical;padding:8px 10px;border:1px solid #cfd4e1;border-radius:6px;background:#fff;color:var(--text);font:inherit;font-size:12px;line-height:1.4}.signature-step{display:grid;gap:24px}.signature-review{display:grid;gap:3px;padding-bottom:18px;border-bottom:1px solid var(--line)}.signature-review span,.signature-review small{color:var(--muted);font-size:12px}.signature-review strong{font-size:16px}.done-bar{position:sticky;bottom:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:22px;padding:18px 0 0;background:linear-gradient(180deg,rgba(247,248,251,0),var(--bg) 22%)}.done-bar strong,.done-bar span{display:block}.done-bar strong{margin-bottom:4px;font-size:14px}.done-bar span{color:var(--muted);font-size:12px}.wizard-actions{display:flex;justify-content:flex-end;gap:10px}.signature-pad{display:grid;gap:14px;padding-top:8px}.signature-pad-header{display:flex;justify-content:space-between;gap:18px;align-items:start}.signature-pad-header h3{margin-bottom:6px;font-size:16px}.signature-pad-header p{margin:0;color:var(--muted);font-size:13px}.signature-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}.icon-button{min-height:38px;padding-inline:13px;font-size:13px}.signature-canvas-wrap{position:relative;height:190px;overflow:hidden;border:1.5px solid var(--lavender-line);border-radius:8px;background:linear-gradient(180deg,#78649f0a,#78649f00),#fff}.signature-canvas-wrap:after{content:"";position:absolute;right:24px;bottom:38px;left:24px;height:1px;background:#2e313d;opacity:.72;pointer-events:none}.signature-canvas-wrap canvas{position:relative;z-index:1;display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}.signature-placeholder{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:9px;color:#8b78ad;font-size:14px;font-weight:700;pointer-events:none}.employee-review-shell{width:min(1040px,100%);min-height:calc(100vh - 58px);margin:0 auto;padding:42px 30px 72px}.employee-review-intro{padding-bottom:30px;border-bottom:1px solid var(--line)}.review-eyebrow{display:block;margin-bottom:8px;color:var(--lavender);font-size:12px;font-weight:780;letter-spacing:.08em;text-transform:uppercase}.employee-review-intro h1{margin-bottom:10px;font-size:32px}.employee-review-intro>p,.employee-sign-heading p,.centered-review-state p{color:var(--muted);line-height:1.6}.review-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-top:26px}.review-meta div{display:grid;gap:5px;min-width:0}.review-meta span,.supervisor-signoff span,.employee-submit-row small{color:var(--muted);font-size:11px;font-weight:700;text-transform:uppercase}.review-meta strong,.supervisor-signoff strong{overflow-wrap:anywhere;font-size:13px;line-height:1.45}.employee-review-content{margin-top:10px}.employee-rating-key{display:flex;flex-wrap:wrap;gap:12px 26px;padding:20px 0;border-bottom:1px solid var(--line);color:var(--muted);font-size:12px}.employee-rating-key span{display:inline-flex;align-items:baseline;gap:6px}.employee-rating-key b{color:var(--text);font-size:13px}.employee-review-section{padding:28px 0;border-bottom:1px solid var(--line)}.employee-review-section h2,.employee-sign-heading h2{margin-bottom:14px;font-size:19px}.employee-review-criteria{display:grid}.employee-review-criterion{display:grid;grid-template-columns:32px minmax(0,1fr) 126px;gap:14px;align-items:start;padding:17px 0;border-top:1px solid var(--line)}.employee-review-criterion p{margin:2px 0 0;font-size:13px;line-height:1.5}.employee-review-criterion small{display:block;margin-top:8px;color:var(--muted);font-size:12px;line-height:1.5}.employee-rating-value{display:grid;gap:2px;min-height:50px;padding:8px 10px;border:1px solid var(--lavender-line);border-radius:6px;background:var(--surface-soft);color:var(--muted);text-align:center;font-size:10px}.employee-rating-value b{color:var(--lavender);font-size:15px}.review-comments-section p{margin:0;color:var(--text);font-size:13px;line-height:1.65;white-space:pre-wrap}.supervisor-signoff{display:flex;align-items:end;justify-content:space-between;gap:24px}.supervisor-signoff>div{display:grid;gap:4px}.supervisor-signoff small{color:var(--muted);font-size:12px}.supervisor-signoff img{width:auto;max-width:210px;height:48px;object-fit:contain;object-position:right center}.employee-sign-section{margin-top:34px;padding:30px;border:1px solid var(--lavender-line);border-radius:8px;background:#fff}.employee-sign-heading{max-width:760px;margin-bottom:22px}.employee-sign-heading p{margin:0;font-size:13px}.acknowledgement-control{display:flex;align-items:flex-start;gap:12px;margin-bottom:18px;padding:15px 16px;border:1px solid var(--line);border-radius:6px;background:var(--surface-soft);font-size:13px;font-weight:700;line-height:1.5}.acknowledgement-control input{flex:0 0 auto;width:18px;height:18px;margin-top:1px;accent-color:var(--lavender)}.employee-submit-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px}.submission-alert{margin-top:18px;padding:13px 15px;border-left:4px solid var(--danger);background:#fff7f8;color:var(--danger);font-size:13px;line-height:1.5}.centered-review-state{display:grid;place-content:center;justify-items:center;min-height:calc(100vh - 58px);text-align:center}.centered-review-state h1{margin:14px 0 8px}.error-review-state svg{color:var(--danger)}.review-complete-state svg,.review-complete-state .review-eyebrow{color:var(--lavender)}.review-complete-state .button{margin-top:12px}.summary-panel{position:sticky;top:58px;align-self:start;height:calc(100vh - 58px);padding:32px 28px;border-left:1px solid var(--line);background:#ffffffb8}.summary-panel h2{margin-bottom:18px;padding-bottom:15px;border-bottom:1px solid var(--line);font-size:16px}.summary-block{display:grid;gap:5px;margin-bottom:20px}.summary-block span,.summary-grid small{color:var(--muted);font-size:12px;font-weight:650}.summary-block strong{font-size:18px}.summary-block small{color:var(--text);font-size:13px}.summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.summary-grid span{display:grid;gap:6px}.summary-grid b{font-size:14px}.summary-ratings{padding-top:2px}.summary-ratings h3{margin-bottom:12px;font-size:13px}.rating-row-small{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line-soft);color:var(--muted);font-size:13px}.rating-row-small b{color:var(--lavender)}.overall-score{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}.overall-score span{color:var(--muted);font-size:13px;font-weight:720}.overall-score strong{color:var(--lavender);font-size:20px}.overall-score small{color:var(--muted);font-size:12px}.preview-workspace{display:grid;grid-template-columns:minmax(0,1fr) 350px;min-height:calc(100vh - 58px)}.preview-canvas{padding:20px 32px 48px;overflow:auto}.pdf-document{display:grid;gap:24px}.pdf-rendered-preview{display:grid;gap:18px;width:min(900px,100%);margin:0 auto}.pdf-rendered-preview img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:4px;background:#fff;box-shadow:var(--shadow)}.pdf-loading{width:min(900px,100%);min-height:680px;display:flex;align-items:center;justify-content:center;gap:10px;margin:0 auto;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--muted);box-shadow:var(--shadow);font-size:13px;font-weight:700}.pdf-toolbar{position:static;z-index:3;display:flex;align-items:center;gap:16px;max-width:900px;height:54px;margin:0 auto 14px;padding:0 18px;border:1px solid var(--line);border-radius:6px;background:#fffffff0;box-shadow:0 10px 24px #282c3a14}.pdf-toolbar button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text);font-size:18px}.pdf-toolbar button:hover{border-color:var(--line);background:var(--surface-soft)}.pdf-toolbar button.mobile-only{display:none}.toolbar-spacer{flex:1}.pdf-page{width:min(820px,100%);min-height:1060px;margin:0 auto;padding:52px 58px 34px;border:1px solid #d9dce6;border-radius:4px;background:#fff;box-shadow:var(--shadow)}.pdf-header{display:flex;justify-content:space-between;gap:20px;padding-bottom:14px;border-bottom:2px solid var(--lavender)}.pdf-header h2{margin-bottom:5px;color:var(--lavender);font-size:22px}.pdf-header span{color:var(--muted);font-size:13px}.pdf-header .brand{padding-left:0;justify-content:flex-end}.pdf-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px;margin:24px 0;font-size:13px}.pdf-details b{color:var(--text)}.pdf-section-heading{display:flex;justify-content:space-between;align-items:baseline;gap:18px;margin:22px 0 10px}.pdf-section-heading h3{margin:0;color:var(--lavender);font-size:15px}.pdf-section-heading span{color:var(--muted);font-size:11px}.pdf-table{width:100%;table-layout:fixed;border-collapse:collapse;margin-bottom:22px;font-size:10.5px;line-height:1.35}.pdf-table th:nth-child(1),.pdf-table td:nth-child(1){width:5%;text-align:center}.pdf-table th:nth-child(2),.pdf-table td:nth-child(2){width:48%}.pdf-table th:nth-child(3),.pdf-table td:nth-child(3){width:13%;text-align:center}.pdf-table th:nth-child(4),.pdf-table td:nth-child(4){width:34%}.pdf-table th{padding:11px;border:1px solid var(--lavender-line);background:var(--lavender-soft);color:var(--lavender);text-align:left}.pdf-table td{padding:8px;border:1px solid var(--line);vertical-align:top}.pdf-note-section h3{margin:18px 0 7px;color:var(--lavender);font-size:15px}.pdf-note-section p{min-height:96px;margin-bottom:0;padding:14px;border:1px solid var(--line);border-radius:6px;background:#fcfbfd;color:var(--text);font-size:13px;line-height:1.55}.pdf-rating-legend{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px;margin-top:26px;padding:16px;border:1px solid var(--lavender-line);border-radius:6px;background:var(--lavender-soft)}.pdf-rating-legend h3{grid-column:1 / -1;margin-bottom:2px;color:var(--lavender);font-size:14px}.pdf-rating-legend span{display:flex;gap:8px;color:var(--muted);font-size:11px}.pdf-rating-legend b{color:var(--text)}.pdf-signatures{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:28px 36px;margin-top:34px}.signature-field{display:grid;align-content:end;gap:5px;min-width:0}.signature-field>span{display:flex;align-items:end;min-height:45px;border-bottom:1px solid var(--text)}.signature-preview-img{display:block;width:210px;max-width:100%;max-height:42px;object-fit:contain;object-position:left bottom}.signature-field b{overflow-wrap:anywhere;font-size:12px}.signature-field small{color:var(--muted);font-size:10px;line-height:1.35}.pdf-page footer{display:flex;justify-content:space-between;gap:18px;margin-top:34px;padding-top:12px;border-top:1px solid var(--lavender-line);color:var(--muted);font-size:10px}.actions-panel{position:sticky;top:58px;align-self:start;height:calc(100vh - 58px);padding:34px 32px;border-left:1px solid var(--line);background:#fff}.actions-panel h2{margin-bottom:18px;color:var(--muted);font-size:13px;letter-spacing:.08em;text-transform:uppercase}.actions-panel>.button+.button{margin-top:12px}.settings-block{margin-top:34px;padding-top:28px;border-top:1px solid var(--line)}.settings-block h3{margin-bottom:18px;color:var(--muted);font-size:13px;letter-spacing:.08em;text-transform:uppercase}.settings-block .field+.field{margin-top:18px}.complete-box{display:flex;gap:14px;margin-top:34px;padding:18px;border:1px solid var(--lavender-line);border-radius:8px;background:var(--surface-soft)}.archive-path{margin:12px 0 0;color:var(--muted);overflow-wrap:anywhere;font-size:11px;line-height:1.45}@media(prefers-reduced-motion:reduce){.step-transition,.spin{animation:none}.progress-track span,.button,.rating-choice{transition:none}}.complete-box svg{flex:0 0 auto;color:var(--lavender)}.complete-box strong,.complete-box span{display:block}.complete-box strong{color:var(--lavender);font-size:15px}.complete-box span{margin-top:6px;color:var(--muted);font-size:13px;line-height:1.45}@media(max-width:1180px){.workspace{grid-template-columns:250px minmax(0,1fr)}.preview-workspace{grid-template-columns:minmax(0,1fr)}.actions-panel{position:static;grid-column:1;height:auto;border-top:1px solid var(--line);border-left:0}}@media(max-width:840px){.topbar{grid-template-columns:1fr auto;height:auto;min-height:58px;padding:9px 18px}.brand{padding-left:0}.brand-logo{width:132px}.topbar-title{grid-column:1 / -1;order:3;padding:10px 0 0;border-left:0;font-size:17px}.topbar-status{padding-right:0}.workspace{display:block}.progress-rail{display:none}.form-column{padding:22px 20px 40px}.mobile-progress-summary{display:grid;gap:8px;margin-bottom:18px}.mobile-progress-summary>div:first-child{display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--lavender);font-size:12px;font-weight:780;text-transform:uppercase}.mobile-progress-track{height:5px;overflow:hidden;border-radius:999px;background:#e4e2ea}.mobile-progress-track span{display:block;height:100%;border-radius:inherit;background:var(--lavender);transition:width .18s ease}.step-copy>span{display:none}.step-toolbar,.form-toolbar,.done-bar,.section-heading.split{display:grid}.step-toolbar{gap:18px}.toolbar-actions{justify-content:start}.position-select,.field-grid,.pdf-details,.pdf-signatures{grid-template-columns:1fr}.preview-workspace{display:block}.preview-canvas{padding:16px 12px 30px}.pdf-toolbar{top:0;overflow-x:auto}.pdf-page{min-height:auto;padding:30px 22px}.actions-panel{padding:24px 20px}.criterion-controls{grid-template-columns:1fr}.ratings-summary{display:grid;gap:12px}.section-progress{justify-self:start}.employee-review-shell{padding:30px 20px 54px}.review-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.app-shell{background:var(--bg)}.topbar{grid-template-columns:auto minmax(0,1fr) auto;min-height:56px;padding:calc(7px + env(safe-area-inset-top)) 12px 7px}.brand-logo{width:104px}.topbar-title{grid-column:auto;order:initial;min-width:0;padding:0 0 0 11px;border-left:1px solid var(--line);font-size:13px;line-height:1.25}.desktop-title{display:none}.mobile-title{display:block}.topbar-status{gap:0;padding-left:8px}.topbar-status span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.topbar-status svg{width:20px;height:20px}.form-column{max-width:none;padding:0 14px calc(88px + env(safe-area-inset-bottom))}.mobile-progress-summary{position:sticky;top:calc(56px + env(safe-area-inset-top));z-index:12;gap:6px;margin:0 -14px 16px;padding:9px 14px 10px;border-bottom:1px solid var(--line);background:#fffffff5;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.mobile-progress-summary>div:first-child{font-size:11px}.mobile-progress-track{height:4px}.step-toolbar{position:relative;display:block;min-height:44px;padding-bottom:16px}.step-copy{min-width:0;padding-right:52px}.step-copy h1{margin-bottom:7px;font-size:23px;line-height:1.2;overflow-wrap:anywhere}.step-copy p{font-size:13px;line-height:1.5}.toolbar-actions{position:absolute;top:0;right:0;display:block}.reset-button{width:44px;min-height:44px;padding:0}.reset-button-label,.desktop-wizard-actions{display:none}.mobile-wizard-actions{position:fixed;right:0;bottom:0;left:0;z-index:40;display:grid;grid-template-columns:52px minmax(0,1fr);gap:10px;padding:10px max(14px,env(safe-area-inset-right)) calc(10px + env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));border-top:1px solid var(--line);background:#fffffff5;box-shadow:0 -10px 28px #252a411f;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.mobile-wizard-actions .button{min-height:50px;font-size:15px}.mobile-wizard-actions .button:first-child{width:52px;padding:0}.mobile-wizard-actions .button:first-child .wizard-action-label{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.mobile-wizard-actions .button.primary{width:100%}.active-section{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}.position-select{margin-bottom:17px}.field-grid{gap:16px}.field{gap:7px}.field span{font-size:13px}.field input,.field select{height:48px;padding:0 13px;font-size:16px}.field textarea{min-height:132px;padding:12px 13px;font-size:16px}.error-banner{margin:0 0 16px}.dialog-actions{display:grid;justify-content:stretch}.dialog-actions .button{width:100%}.modal-backdrop{align-items:end;padding:14px 14px calc(14px + env(safe-area-inset-bottom))}.confirm-dialog{padding:21px 18px}.rating-scale{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-column:1 / -1;gap:8px 12px;font-size:12px}.rating-scale span{min-width:0;gap:5px;white-space:normal}.ratings-summary{grid-template-columns:1fr;gap:11px;margin-bottom:0;padding-bottom:15px}.section-progress{grid-row:1;justify-self:start;min-width:0;padding:7px 10px}.criterion-controls{gap:11px;margin-left:0}.rating-choices{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.rating-choice{min-height:50px;padding:5px 3px}.rating-choice b{font-size:15px}.rating-choice span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.criterion-item{padding:18px 0}.criterion-heading{grid-template-columns:30px minmax(0,1fr);gap:10px}.criterion-heading p{margin-top:2px;font-size:14px;line-height:1.5}.criterion-comment{gap:6px}.criterion-comment>span{font-size:12px}.criterion-comment textarea{min-height:72px;padding:10px 11px;font-size:16px}.pdf-header{display:grid}.pdf-header .brand{justify-content:start}.pdf-table{font-size:9px}.pdf-table th,.pdf-table td{padding:5px}.pdf-rating-legend{grid-template-columns:1fr}.pdf-rating-legend h3{grid-column:1}.signature-pad-header{display:grid;gap:13px}.signature-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;justify-content:stretch}.signature-actions .button{width:100%;min-height:44px}.signature-canvas-wrap{height:168px}.signature-canvas-wrap:after{right:16px;bottom:34px;left:16px}.signature-step{gap:18px}.signature-review{padding-bottom:14px}.employee-review-shell{padding:22px 16px calc(40px + env(safe-area-inset-bottom))}.employee-review-intro{padding-bottom:22px}.employee-review-intro h1{margin-bottom:9px;font-size:24px;line-height:1.22}.employee-review-intro>p{margin-bottom:0;font-size:15px;line-height:1.55}.review-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;margin-top:21px}.review-meta span,.supervisor-signoff span,.employee-submit-row small{font-size:11px}.review-meta strong,.supervisor-signoff strong{font-size:14px}.employee-rating-key{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 12px;padding:18px 0;font-size:12px}.employee-review-section{padding:22px 0}.employee-review-section h2,.employee-sign-heading h2{margin-bottom:12px;font-size:18px;line-height:1.3}.employee-review-criterion{grid-template-columns:28px minmax(0,1fr) 76px;gap:10px;padding:16px 0}.employee-review-criterion p{margin-top:1px;font-size:14px;line-height:1.55}.employee-review-criterion small{margin-top:9px;font-size:13px;line-height:1.5}.employee-rating-value{grid-column:3;min-width:0;min-height:48px;padding:7px 5px;font-size:11px}.supervisor-signoff,.employee-submit-row{align-items:stretch;flex-direction:column}.supervisor-signoff img{object-position:left center}.employee-sign-section{margin:26px -4px 0;padding:21px 16px 16px;border-width:1.5px;box-shadow:0 12px 26px #252a4112}.employee-sign-heading{margin-bottom:18px}.employee-sign-heading p{font-size:14px;line-height:1.55}.acknowledgement-control{min-height:58px;margin-bottom:18px;padding:14px;font-size:14px}.acknowledgement-control input{width:22px;height:22px}.employee-submit-row{position:sticky;bottom:0;z-index:12;gap:9px;margin:18px -16px -16px;padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fffffff7;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.employee-submit-row .button{order:-1;width:100%;min-height:50px;font-size:14px}.review-complete-state .button{width:100%;min-height:50px}.preview-workspace{display:flex;flex-direction:column}.actions-panel{order:-1;display:flex;flex-direction:column;padding:18px 16px;border-top:0;border-bottom:1px solid var(--line)}.actions-panel h2,.settings-block,.archive-path{display:none}.actions-panel .complete-box{order:-1;margin:0 0 14px;padding:14px}.actions-panel>.button+.button{margin-top:8px}.actions-panel>.button{min-height:48px}.preview-canvas{padding:12px 8px calc(28px + env(safe-area-inset-bottom))}.pdf-toolbar{position:sticky;top:calc(56px + env(safe-area-inset-top));height:48px;margin-bottom:10px;padding:0 10px 0 14px}.pdf-toolbar button{width:40px;height:40px}.pdf-toolbar button.mobile-only{display:inline-flex}.pdf-rendered-preview{gap:12px}.pdf-rendered-preview img{box-shadow:0 8px 20px #252a411a}.preview-canvas.pdf-zoomed .pdf-rendered-preview{width:560px;max-width:none;margin-left:0}.pdf-loading{min-height:430px}.centered-review-state{min-height:calc(100dvh - 56px - env(safe-area-inset-top))}}
