/* AS5 application stylesheet. Keep HTML/PHP in views, never in this file. */
:root{--accent:#008344;--ink:#202b3c;--muted:#7a8494;--line:#e8ecf2;--bg:#f7f9fc;--sidebar:280px;font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);font-size:100%;line-height:1.55}
*{box-sizing:border-box}body{margin:0;background:var(--bg)}a{color:var(--accent);text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #8dceae;outline-offset:4px}[hidden]{display:none!important}
h1{font-size:2.25rem;font-weight:650;letter-spacing:-1.1px;margin:0 0 11px;line-height:1.2}h2{font-size:1.125rem;font-weight:650;line-height:1.4;margin:0;letter-spacing:-.2px}
.muted{color:var(--muted);line-height:1.7;font-size:1rem}.eyebrow{font-size:.75rem;letter-spacing:1.65px;font-weight:700;color:#7b8ba2;margin:0 0 12px}
.sidebar{position:fixed;inset:0 auto 0 0;width:var(--sidebar);background:#fff;border-right:1px solid var(--line);padding:30px 19px;display:flex;flex-direction:column;z-index:2;overflow-y:auto}
.brand{display:flex;flex-direction:column;align-items:flex-start;gap:14px;color:var(--ink);font-size:1rem;font-weight:650;letter-spacing:-.2px}.brand-logo{display:block;width:170px;max-width:100%;height:auto;object-fit:contain;flex-shrink:0}.brand small{display:block;font-size:.75rem;color:#9199a6;letter-spacing:1.5px;margin-top:6px}
.workspace-label{font-size:.75rem;font-weight:700;letter-spacing:1.6px;color:#929baa;margin:45px 13px 13px}.nav-item{display:flex;align-items:center;gap:12px;padding:13px 14px;margin:4px 0;color:#667286;font-weight:550;font-size:1.0625rem;border-radius:7px}.nav-item>span{font-size:1.5rem;width:24px;text-align:center;line-height:24px}.nav-item:hover{background:#f6f8fc}.nav-item.active{background:#edf7f1;color:var(--accent)}
.sidebar-bottom{margin-top:auto;padding-top:24px}.secure-note{padding:16px 9px 25px;font-size:.8125rem;color:#667286;border-bottom:1px solid var(--line)}.secure-note small{display:block;font-size:.75rem;margin:7px 0 0 16px;color:#687587}.status-dot{display:inline-block;width:6px;height:6px;background:#31a976;border-radius:50%;margin-right:6px}
.user{display:flex;align-items:center;gap:10px;color:var(--ink);font-size:.9375rem;padding:22px 5px 5px;font-weight:600}.user small{display:block;font-weight:400;font-size:.8125rem;color:var(--muted);margin-top:5px}.avatar{display:inline-grid;place-items:center;border-radius:50%;width:36px;height:36px;background:#eaf3ed;color:#46745b;font-size:1.0625rem;flex-shrink:0}.logout{background:none;border:0;color:var(--muted);font-size:.8125rem;margin-left:48px;padding:7px 0}
.app-shell{margin-left:var(--sidebar);min-height:100vh;display:flex;flex-direction:column}.topbar{min-height:78px;border-bottom:1px solid var(--line);background:#fff;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 38px;font-size:.9375rem;color:#778296}.slash{margin:0 13px;color:#c4cbd6}.top-date{display:flex;align-items:center;gap:20px}.small-label{font-size:.75rem;letter-spacing:1px;font-weight:650;color:#8590a1;border:1px solid var(--line);padding:5px 7px;border-radius:4px}.mobile-account{display:none}
.main{padding:36px clamp(24px,2.5vw,56px);width:100%;min-width:0;margin:0;flex:1}.page-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px}.page-heading>div{min-width:0}.page-heading p:last-child{margin-bottom:0}.footer{padding:22px 38px;color:#687587;font-size:.75rem;display:flex;justify-content:space-between;gap:15px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:12px 20px;border:1px solid transparent;border-radius:6px;font-weight:550;font-size:.9375rem;line-height:1.4}.button.primary{background:var(--accent);color:#fff;box-shadow:0 2px 3px #00834415}.button.primary:hover{background:#006b38}.button.secondary{border-color:#dce2ec;background:#fff;color:#47566e}.button:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin-bottom:29px}.stat-card{min-width:0;background:#fff;border:1px solid var(--line);border-radius:9px;padding:19px 20px 21px;box-shadow:0 2px 3px #16274602}.stat-label{display:flex;align-items:center;justify-content:space-between;font-size:.9375rem;color:#737f91;font-weight:500;gap:5px}.stat-icon{width:29px;height:29px;flex-shrink:0;display:grid;place-items:center;background:#eff8f3;color:#39845f;font-size:1.25rem;border-radius:7px}.stat-card:nth-child(3) .stat-icon{background:#fff7e9;color:#c79b42}.stat-card:nth-child(4) .stat-icon{background:#ecf8f1;color:#53a67a}.stat-number{display:block;font-size:2.375rem;letter-spacing:-1px;font-weight:600;margin:11px 0 9px}.stat-card>small{color:#687587;font-size:.875rem}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 350px;gap:23px;align-items:start}.card{min-width:0;background:#fff;border:1px solid var(--line);border-radius:9px;box-shadow:0 2px 3px #16274602;overflow:hidden}.card-heading{padding:22px 23px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line)}.card-heading p{font-size:.875rem;color:#687587;line-height:1.6;margin:7px 0 0;max-width:85ch}.count{background:#f1f4f8;padding:4px 8px;border-radius:5px;color:#7b879a;font-size:.875rem}
.table-tools{display:flex;align-items:center;flex-wrap:wrap;gap:12px;padding:16px 22px}.table-tools .search{min-width:180px}.table-tools>select{width:auto;max-width:230px;height:48px;min-height:48px;border-radius:7px;font-size:.9375rem;padding:0 12px;color:#6a778b}
.search{position:relative;flex:1;min-width:100px;display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;gap:12px;height:48px;border:1px solid #dfe5ed;border-radius:7px;padding:0 14px;color:#687587;background:#fff;transition:border-color .15s,box-shadow .15s}.search input{flex:1;width:0;min-width:0;height:100%;min-height:0;margin:0;border:0;border-radius:0;box-shadow:none;padding:0;font-size:1rem;line-height:normal;font-weight:400;background:transparent;color:var(--ink)}.search .search-icon{display:block;width:20px;height:20px;flex:0 0 20px;pointer-events:none}.search:hover{border-color:#b5c8be}.search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px #00834414}.search input:focus{border:0;outline:none;box-shadow:none}.search input::placeholder{color:#687587;opacity:1}
.table-scroll{overflow-x:auto}table{width:100%;border-collapse:collapse;text-align:left;white-space:normal}th{background:#fafbfd;color:#627087;font-size:.875rem;font-weight:550;padding:16px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);white-space:nowrap}td{padding:16px 20px;border-bottom:1px solid #f0f2f6;font-size:1rem;color:#627087;line-height:1.6}td strong{color:#3c4b61;font-weight:550}td small{display:block;color:#687587;font-size:.875rem;margin-top:4px}.person{display:flex;align-items:center;gap:10px}.person .avatar{width:38px;height:38px;font-size:.875rem;background:#f0f6f2}.person strong{overflow-wrap:anywhere}
.badge{display:inline-flex;align-items:center;gap:5px;font-size:.875rem;font-weight:550;border-radius:5px;padding:6px 10px;white-space:nowrap;line-height:1.5}.badge-dot{width:4px;height:4px;border-radius:50%;background:currentColor}.badge.blue{color:#00783e;background:#edf7f1}.badge.green{color:#358e65;background:#edf8f0}.badge.purple{color:#8a62b6;background:#f6f0fc}.badge.gray{color:#7b8799;background:#f0f3f7}.row-link{font-size:.875rem;white-space:nowrap;color:#597e69}.row-link:hover{color:var(--accent)}.row-link span{margin-left:9px}.table-footer{font-size:.75rem;color:#687587;padding:16px 22px}.empty{padding:30px 20px;text-align:center;color:#929eb0;font-size:1rem}
.appointments .card-heading{padding:22px 20px}.appointments .card-heading>span{font-size:1.5rem;color:#93a2b8}.appointment{display:flex;align-items:center;gap:12px;margin:0 19px;padding:20px 0;border-bottom:1px solid var(--line);color:var(--ink)}.date-tile{width:40px;min-width:40px;padding:8px 0;border-radius:6px;background:#f0f6f2;text-align:center}.date-tile strong{display:block;font-size:1.25rem;line-height:1.1;font-weight:600}.date-tile small{display:block;font-size:.75rem;color:#6f897a;margin-top:4px}.appointment>div>strong{font-size:.9375rem;font-weight:550}.appointment>div>small{display:block;font-size:.75rem;color:#687587;margin-top:5px}.time{font-size:.75rem;color:#5d806a;display:block;margin-top:5px}.arrow{margin-left:auto;color:#a3b0c3}.help-note{display:flex;gap:10px;padding:17px;background:#f5faf7;margin:20px 16px;border-radius:6px;color:#6e8c7b}.help-note>span{font-size:1.25rem}.help-note p{font-size:.75rem;line-height:1.8;margin:0}.help-note strong{font-size:.875rem;display:block;color:#507960;margin-bottom:4px}
.section-gap{margin-top:25px}.padded{padding:24px}.form-stack{display:flex;flex-direction:column;gap:22px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px}.form-action{grid-column:1/-1;display:flex;gap:12px;align-items:center;flex-wrap:wrap}.full-width{grid-column:1/-1}label{display:flex;flex-direction:column;gap:9px;color:#526079;font-size:1rem;font-weight:500}input,textarea,select{display:block;width:100%;padding:11px 12px;border:1px solid #dfe5ed;border-radius:6px;background:#fff;color:var(--ink);outline:none;min-height:46px;font-size:1rem}input:focus,textarea:focus,select:focus{border-color:#59a780;box-shadow:0 0 0 3px #00834410}input::placeholder,textarea::placeholder{color:#a3adbc}textarea{line-height:1.8;resize:vertical}textarea[readonly]{background:#fafbfd;color:#64748b}label small{color:#687587;font-size:.875rem;font-weight:400}.checkbox{flex-direction:row;align-items:center;align-self:center}.checkbox input{width:16px;min-height:16px;height:16px;accent-color:var(--accent)}.inline-form{display:flex;gap:20px;align-items:end;flex-wrap:wrap;margin-top:15px}.inline-form label:not(.checkbox){flex:1;min-width:150px}.inline-form .checkbox{align-self:end;min-height:40px}
.notice{display:flex;align-items:center;gap:16px;background:#edf7f1;border:1px solid #d3e9dd;border-radius:8px;padding:17px 20px;color:#397454;margin-bottom:25px;font-size:1rem}.notice strong{font-size:.9375rem;color:#006b38;font-weight:600}.notice p{font-size:.875rem;line-height:1.7;margin:5px 0 0}.notice>a{margin-left:auto;font-size:.875rem;white-space:nowrap}.notice-icon{font-size:1.75rem}.breadcrumb{font-size:.9375rem;color:#93a0b2;display:flex;gap:10px;margin-bottom:25px}.alert{padding:15px 20px;margin-bottom:24px;border:1px solid;border-radius:7px;font-size:1rem;line-height:1.8;overflow-wrap:anywhere}.alert.error{background:#fff2f1;border-color:#f2d7d4;color:#a3524b}.alert.success{background:#edf8f1;border-color:#d0ebdb;color:#3d7c59}
.profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:0}.profile-grid dt{color:#8a96a8;font-size:.9375rem;margin-bottom:8px}.profile-grid dd{margin:0;font-size:1.125rem}.narrow{max-width:620px;padding:30px}summary{cursor:pointer;font-size:1rem;font-weight:550}summary::marker{color:#9caabd}.sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.login-shell{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:30px}.login-card{width:100%;max-width:520px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:40px;box-shadow:0 12px 45px #20385c06}.login-card .brand-logo{width:190px;margin-bottom:30px}.login-card h1{font-size:2.375rem;line-height:1.3}.login-card .form-stack{margin-top:30px}.login-card .button{font-size:1rem;min-height:48px;justify-content:space-between}.login-note{text-align:center;font-size:.875rem;color:#687587;line-height:1.8;margin-top:24px}
.template-picker{border:0;padding:0;margin:0;min-width:0}.template-picker legend{font-size:1rem;font-weight:600;color:#526079}.required-label{font-size:.75rem;color:#7a8494;margin-left:8px;font-weight:400}.template-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.template-option{position:relative;cursor:pointer;min-width:0}.template-option>input{position:absolute;opacity:0;width:1px;height:1px;min-height:0;padding:0}.template-option>span{border:1px solid #dfe5ed;border-radius:8px;padding:18px 15px;display:block;height:100%;transition:border-color .15s,background .15s}.template-option strong{display:block;color:#3c4b61;font-size:1.0625rem}.template-option small{display:block;margin-top:8px;line-height:1.6}.template-option>input:checked+span{background:#edf7f1;border:2px solid #008344;padding:17px 14px}.template-option>input:focus-visible+span{outline:3px solid #8dceae;outline-offset:3px}.template-option:hover>span{border-color:#008344}.template-tabs{display:flex;flex-wrap:wrap;gap:10px}.template-tabs a{display:flex;gap:12px;align-items:center;border:1px solid #dfe5ed;background:#fff;border-radius:7px;padding:12px 16px;color:#627087;font-size:1rem}.template-tabs a.selected{background:#edf7f1;color:#00783e;border-color:#008344}.template-tabs span{font-size:.875rem;color:#7a8494}
.questionnaire{gap:0}.questionnaire-progress{border:1px solid #d3e9dd;background:#f5faf7;border-radius:8px;padding:18px;margin-bottom:16px}.questionnaire-progress label{display:flex;flex-direction:row;justify-content:space-between;gap:10px;color:#397454}.questionnaire-progress small{display:block;font-size:.875rem;color:#6e8c7b;line-height:1.7;margin-top:9px}progress{display:block;width:100%;height:7px;border:0;border-radius:6px;overflow:hidden;margin-top:12px;accent-color:#008344;background:#e0ebe5}progress::-webkit-progress-bar{background:#e0ebe5}progress::-webkit-progress-value{background:#008344}progress::-moz-progress-bar{background:#008344}.question-section{font-size:1.25rem;font-weight:650;margin:29px 0 5px;padding-bottom:15px;border-bottom:1px solid #e8ecf2;color:#253b30}.question-block{padding:24px 0;border-bottom:1px solid #edf1ee;min-width:0}.question-block:last-of-type{border-bottom:0}.question-label{font-size:1.125rem;line-height:1.65;gap:13px}.question-block .question-label{margin-bottom:14px}.question-label>span{display:flex;align-items:center;gap:11px;line-height:1.7}.question-number{display:grid;place-items:center;flex-shrink:0;width:30px;height:30px;border-radius:6px;background:#eef7f2;color:#00783e;font-size:.875rem}
.rating-question{border:0;margin:0;padding:0;min-width:0}.rating-question legend{font-size:1.125rem;font-weight:600;color:#3c4b61;line-height:1.65;margin-bottom:17px;padding:0;width:100%}.rating-question .question-number{display:inline-flex;align-items:center;justify-content:center;margin-right:10px;vertical-align:middle}.rating-options{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.rating-option{position:relative;cursor:pointer;min-width:0;--rating-tint:#f3f5f6;--rating-ink:#425466}.rating-option[data-score="5"]{--rating-tint:#e5f5eb;--rating-ink:#006b38}.rating-option[data-score="4"]{--rating-tint:#eff9f3;--rating-ink:#216743}.rating-option[data-score="3"]{--rating-tint:#f3f5f6;--rating-ink:#425466}.rating-option[data-score="2"]{--rating-tint:#fff7e9;--rating-ink:#805817}.rating-option[data-score="1"]{--rating-tint:#fff0f0;--rating-ink:#984444}.rating-option[data-score="na"]{--rating-tint:#edf2fa;--rating-ink:#465c7c}.rating-option>input{position:absolute;opacity:0;width:1px;height:1px;min-height:0;padding:0}.rating-choice{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:9px;padding:17px 10px;min-height:150px;height:100%;border:1px solid #dfe5ed;border-radius:8px;background:var(--rating-tint);transition:border-color .15s,box-shadow .15s}.rating-value{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#ffffffbd;color:var(--rating-ink);font-size:1.25rem;font-weight:650}.rating-description{font-size:1rem;line-height:1.6;color:var(--rating-ink);font-weight:400}.rating-selected{position:absolute;top:7px;right:8px;font-size:.9375rem;color:#008344;visibility:hidden}.rating-option:hover .rating-choice{border-color:#59a780}.rating-option>input:checked+.rating-choice{border:2px solid #008344;padding:16px 9px;box-shadow:0 0 0 2px #00834424}.rating-option>input:checked+.rating-choice .rating-value{background:#008344;color:#fff}.rating-option>input:checked+.rating-choice .rating-description{font-weight:550}.rating-option>input:checked+.rating-choice .rating-selected{visibility:visible}.rating-option>input:focus-visible+.rating-choice{outline:3px solid #8dceae;outline-offset:3px}.rating-actions{display:flex;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:12px;margin-top:12px;font-size:.875rem;color:#698373;line-height:1.7}.clear-rating{padding:6px 0;border:0;background:none;font-size:.875rem;color:#698373;text-decoration:underline;white-space:nowrap}.rating-result{display:inline-block;background:#edf7f1;border-radius:6px;padding:12px 15px;margin:0;font-size:1rem;color:#00783e}
.optional-comment-label{margin:18px 0 10px;font-size:.9375rem;display:flex;flex-direction:row;justify-content:space-between;flex-wrap:wrap}.required-field-label{font-size:.8125rem;font-weight:600;color:#00783e}.required-field-hint{font-size:.875rem;color:#687587;line-height:1.7;margin:0 0 12px}.character-counter{display:block;text-align:right;font-size:.8125rem;font-weight:400;line-height:1.6;color:#687587;margin-top:7px}.character-counter.at-limit{color:#984444}.textarea-meta{display:flex;align-items:baseline;justify-content:space-between;gap:8px 20px;flex-wrap:wrap;margin-top:7px}.textarea-meta .character-counter{margin-top:0;margin-left:auto}.inline-text-link{display:inline;padding:0;border:0;background:none;color:var(--accent);text-decoration:underline;text-underline-offset:3px;font:inherit;cursor:pointer}.inline-text-link:hover{color:#006b38;text-decoration-thickness:2px}.readonly-comment{margin-top:14px;padding:12px 14px;background:#f7f9f8;border-left:3px solid #d3e9dd;border-radius:4px;white-space:normal;font-size:.9375rem;line-height:1.7;overflow-wrap:anywhere}.readonly-comment>strong{font-size:.8125rem;color:#526079}.readonly-comment p{margin:6px 0 0;white-space:pre-wrap}
.form-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding-top:23px}.questionnaire .form-bottom{position:sticky;bottom:0;background:#fff;padding:18px 0;z-index:1;box-shadow:0 -8px 14px #ffffffd9}.questionnaire .form-bottom .muted{font-size:.9375rem}.submission-actions{flex-wrap:wrap}.submission-hint{display:flex;flex-direction:column;gap:6px;max-width:65ch}.submission-hint strong{font-size:.9375rem;color:#3c4b61}.submission-buttons{display:flex;gap:12px;align-items:center;flex-wrap:wrap;flex-shrink:0}.submission-overview{padding:24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-bottom:25px}.submission-overview>div{display:flex;align-items:flex-start;flex-direction:column;gap:10px}.submission-overview strong{font-size:1rem}.submission-overview small{font-size:.8125rem;color:#687587}.submission-overview>p{grid-column:1/-1;margin:0;padding-top:18px;border-top:1px solid var(--line);font-size:.9375rem;color:#526079}
.version-history{padding:18px 24px;border-top:1px solid var(--line);font-size:.9375rem;color:#8290a5}.version-history article{padding:15px 0;border-bottom:1px solid var(--line)}.version-history small{display:block;font-size:.875rem;margin-top:5px}.answer-text{white-space:pre-wrap;overflow-wrap:anywhere}.comparison{table-layout:fixed;min-width:1000px}.comparison th.question-order{width:80px}.comparison th:nth-child(2){width:26%}.comparison th:last-child{width:16%}.comparison td{vertical-align:top;font-size:1rem}.comparison th{font-size:.9375rem}.comparison-difference{display:inline-block;padding:5px 8px;font-size:.875rem;border-radius:5px;white-space:normal}.comparison-difference.equal{background:#edf7f1;color:#00783e}.comparison-difference.different{background:#fff7e9;color:#87631c}
th .table-sort-button{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:32px;padding:0;border:0;background:none;color:inherit;font:inherit;text-align:left;cursor:pointer}.table-sort-button:hover{color:var(--accent)}.table-sort-indicator{flex-shrink:0;font-size:1rem;color:#929cac;line-height:1}th[aria-sort="ascending"],th[aria-sort="descending"]{background:#edf7f1;color:#00783e}th[aria-sort="ascending"] .table-sort-indicator,th[aria-sort="descending"] .table-sort-indicator{color:var(--accent)}.table-sort-button>span:first-child{white-space:normal}
.prior-ratings{padding:18px 20px;margin:0 0 20px;border:1px solid #e1e9e5;border-radius:9px;background:#f7faf8}.prior-ratings-heading{margin:0 0 13px;color:#687587;font-size:.8125rem;font-weight:550;line-height:1.5}.prior-ratings-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.prior-rating{display:flex;align-items:center;gap:14px;min-width:0;padding:14px 16px;border:1px solid #e5ebe7;border-radius:7px;background:#fff}.prior-rating-score{display:grid;place-items:center;flex:0 0 42px;width:42px;height:42px;border-radius:9px;background:#f3f5f6;color:#425466;font-size:1.25rem;font-weight:700}.prior-rating-score[data-score="5"]{background:#e5f5eb;color:#006b38}.prior-rating-score[data-score="4"]{background:#eff9f3;color:#216743}.prior-rating-score[data-score="2"]{background:#fff7e9;color:#805817}.prior-rating-score[data-score="1"]{background:#fff0f0;color:#984444}.prior-rating-score[data-score="na"]{background:#edf2fa;color:#465c7c}.prior-rating-text{min-width:0;display:flex;flex-direction:column;gap:4px;line-height:1.5}.prior-rating-role{color:#687587;font-size:.8125rem}.prior-rating-text strong{font-size:.9375rem;font-weight:550;color:#3c4b61;overflow-wrap:anywhere}.joint-rating-heading{font-size:.9375rem;font-weight:600;color:#00783e;margin:0 0 13px}.prior-texts{margin-top:16px}.prior-texts .prior-ratings-grid{align-items:start}.prior-text-card{min-width:0;padding:18px 20px;border:1px solid #e5ebe7;border-radius:7px;background:#fff}.prior-text-role{display:block;padding-bottom:10px;border-bottom:1px solid #edf1ee;font-size:.875rem;font-weight:600;color:#526079}.prior-response{margin:13px 0 0;font-size:1rem;line-height:1.75;color:#3c4b61;white-space:pre-wrap;overflow-wrap:anywhere}.prior-rating:has(.prior-rating-comment){align-items:flex-start}.prior-rating-comment{margin-top:10px;padding-top:10px;border-top:1px solid #edf1ee}.prior-rating-comment>span{font-size:.8125rem;color:#687587}.prior-rating-comment>p{margin:5px 0 0;white-space:pre-wrap;overflow-wrap:anywhere;color:#3c4b61;font-size:.9375rem;line-height:1.7}
.final-confirmation{padding:30px;border:2px solid #b7dcca;background:#fbfefc}.final-confirmation-heading{display:flex;align-items:flex-start;gap:18px}.confirmation-emblem{display:grid;place-items:center;flex:0 0 46px;height:46px;border-radius:12px;background:#e5f5eb;color:#008344;font-size:1.5rem;font-weight:700}.final-confirmation-heading h2{font-size:1.375rem;line-height:1.4}.final-confirmation-heading p:last-child{font-size:1rem;color:#526079;max-width:90ch;line-height:1.75;margin:10px 0 0}.confirmation-statuses{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0}.confirmation-status{display:flex;flex-direction:column;gap:8px;padding:18px 20px;background:#fff;border:1px solid #e1e9e5;border-radius:8px;font-size:.9375rem;color:#687587}.confirmation-status strong{color:#3c4b61;font-size:1rem}.confirmation-status small{font-size:.8125rem}.confirmation-status.is-confirmed{border-color:#b7dcca;background:#edf7f1;color:#00783e}.confirmation-change-note{font-size:.875rem;color:#687587;line-height:1.7}.confirmation-waiting{padding:16px 18px;margin:20px 0 0;border-radius:7px;background:#f0f4f2;color:#526079;line-height:1.7;font-size:.9375rem}.confirmed-note{background:#edf7f1;color:#00783e}
.confirmation-switch-label{position:relative;display:flex;flex-direction:row;align-items:center;gap:20px;padding:24px;border:1px solid #c4dfd1;border-radius:10px;background:#fff;cursor:pointer;margin-top:24px}.confirmation-switch-input{position:absolute;opacity:0;width:1px;height:1px;min-height:0;padding:0}.confirmation-switch-track{display:block;flex:0 0 68px;width:68px;height:38px;border-radius:24px;background:#d8e0dc;border:1px solid #c5d0ca;padding:4px;transition:background .2s}.confirmation-switch-track>span{display:block;width:28px;height:28px;background:#fff;border-radius:50%;box-shadow:0 1px 4px #203b3226;transition:transform .2s}.confirmation-switch-input:checked+.confirmation-switch-track{background:#008344;border-color:#008344}.confirmation-switch-input:checked+.confirmation-switch-track>span{transform:translateX(28px)}.confirmation-switch-input:focus-visible+.confirmation-switch-track{outline:3px solid #8dceae;outline-offset:4px}.confirmation-switch-copy{display:flex;flex-direction:column;gap:7px;line-height:1.65}.confirmation-switch-copy strong{font-size:1.125rem;color:#253b30}.confirmation-switch-copy>span{font-size:.9375rem;color:#687587}.confirmation-submit-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px}.confirmation-feedback{font-size:.875rem;color:#687587;line-height:1.7}
.meeting-row-actions{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.row-pdf-link{display:inline-flex;align-items:center;gap:7px;color:#00783e;font-size:.875rem;font-weight:550;line-height:1.5;white-space:nowrap}.row-pdf-link:hover{color:#005e30;text-decoration:underline;text-underline-offset:3px}.pdf-file-mark{font-size:.625rem;letter-spacing:.4px;padding:3px 5px;line-height:1.3;border:1px solid #b7dcca;border-radius:4px;background:#edf7f1;text-decoration:none}
/* Responsive layout: keep type readable instead of shrinking it to fit. */
@media(min-width:1500px){.main{padding-top:42px}.dashboard-grid{grid-template-columns:minmax(0,1fr) 380px}.stat-card{padding:25px}.stat-number{font-size:2.625rem}.rating-options{gap:16px}.rating-choice{padding:22px 16px}.rating-option>input:checked+.rating-choice{padding:21px 15px}}
@media(max-width:1200px){:root{--sidebar:240px}.sidebar{padding:25px 14px}.brand{font-size:.875rem}.main{padding:30px 25px}.topbar{padding:0 25px}.dashboard-grid{grid-template-columns:1fr}.appointments{display:none}.stats-grid{gap:12px}.stat-card{padding:16px}.stat-label{font-size:.9375rem}.stat-card>small{font-size:.8125rem}.template-options{grid-template-columns:repeat(2,minmax(0,1fr))}.rating-options{gap:8px}.rating-choice{padding:18px 10px}.rating-option>input:checked+.rating-choice{padding:17px 9px}}
@media(min-width:1051px) and (max-width:1350px){.rating-description{font-size:.9375rem}.rating-options{gap:8px}}
@media(min-width:801px) and (max-width:1050px){.rating-options{grid-template-columns:1fr}.rating-choice{flex-direction:row;text-align:left;min-height:64px;gap:16px}.rating-value{flex-shrink:0}.rating-selected{top:50%;transform:translateY(-50%)}.rating-description{padding-right:18px}}
@media(max-width:800px){:root{--sidebar:0px}.sidebar{position:static;width:100%;padding:15px 20px;border-bottom:1px solid var(--line);border-right:0;display:block}.sidebar .brand{font-size:1rem;gap:10px}.sidebar .brand-logo{width:145px}.sidebar .brand>span{font-size:.875rem}.sidebar .brand small{display:inline;margin-left:8px;font-size:.75rem}.sidebar nav{display:flex;overflow-x:auto;margin-top:14px;gap:5px;padding-bottom:5px}.nav-item{white-space:nowrap;padding:9px 12px;font-size:.9375rem;min-height:44px}.nav-item>span{font-size:1.25rem}.workspace-label,.sidebar-bottom{display:none}.app-shell{margin-left:0}.topbar{min-height:62px;padding:12px 20px;font-size:.875rem;flex-wrap:wrap}.top-date{display:none}.mobile-account{display:flex;gap:12px;align-items:center;font-size:.875rem}.mobile-account button{border:0;background:transparent;color:#7a8494;padding:0;font-size:.875rem}.main{padding:27px 20px}.stats-grid{grid-template-columns:1fr 1fr}.page-heading{align-items:start}h1{font-size:1.875rem}.page-heading>.button{font-size:.9375rem;white-space:nowrap}.form-grid{grid-template-columns:1fr}.notice{align-items:start;flex-wrap:wrap}.notice>a{margin-left:0}.form-bottom{align-items:start;flex-direction:column}.footer{padding:20px}.profile-grid{grid-template-columns:1fr}.question-label,.rating-question legend{font-size:1.0625rem}.submission-buttons{width:100%}.submission-buttons .button{flex:1}}
@media(min-width:581px) and (max-width:800px){.rating-options{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.prior-ratings-grid{grid-template-columns:1fr;gap:10px}.prior-ratings{padding:16px}.prior-rating{padding:12px}.prior-text-card{padding:14px 16px}.final-confirmation{padding:22px 16px}.confirmation-statuses{grid-template-columns:1fr}.confirmation-submit-row{flex-direction:column;align-items:stretch}.confirmation-switch-label{padding:18px 14px;gap:14px}.final-confirmation-heading{gap:12px}.final-confirmation-heading h2{font-size:1.125rem}}
@media(max-width:580px){.rating-options{grid-template-columns:1fr;gap:8px}.rating-choice{flex-direction:row;text-align:left;min-height:68px;padding:12px 14px;gap:13px}.rating-option>input:checked+.rating-choice{padding:11px 13px}.rating-description{font-size:1rem;padding-right:14px}.rating-value{width:36px;height:36px;flex-shrink:0;font-size:1.125rem}.rating-selected{top:50%;transform:translateY(-50%);right:12px}.rating-actions{align-items:flex-start}.template-options{grid-template-columns:1fr}.questionnaire .form-bottom{align-items:stretch;gap:10px}.questionnaire .form-bottom .button{width:100%}.questionnaire-progress{padding:14px}.questionnaire-progress label{flex-wrap:wrap}.question-section{font-size:1.125rem}.submission-overview{grid-template-columns:1fr;padding:20px 16px}.submission-buttons{flex-direction:column;align-items:stretch}.submission-buttons .button{width:100%}.notice>a{white-space:normal}}
@media(max-width:480px){.main{padding:24px 14px}.page-heading{flex-direction:column;gap:16px}.page-heading h1{overflow-wrap:anywhere}.stat-card{padding:16px}.stat-number{font-size:2.125rem}.stat-label{font-size:.875rem;align-items:flex-start}.stat-card>small{font-size:.8125rem;line-height:1.6;display:block}.table-tools{padding:14px;gap:8px}.table-tools .search{flex:1 1 100%;min-width:0}.table-tools>select{max-width:100%;flex:1 1 100%;width:100%}.card-heading{padding:19px 16px}.padded{padding:20px 16px}.table-scroll table:not(.comparison){min-width:570px}.login-card{padding:28px 23px}.login-shell{padding:20px}.topbar{font-size:.8125rem}.footer{font-size:.75rem}.footer span{display:none}.questionnaire .form-bottom{position:static}}
@media(prefers-reduced-motion:reduce){.confirmation-switch-track,.confirmation-switch-track>span,.rating-choice,.template-option>span,.search{transition:none}}


.participant-picker{border:0;padding:0;margin:0;min-width:0}.participant-picker legend{font-size:1rem;font-weight:600;color:#526079}.participant-picker legend .muted{font-size:.875rem;font-weight:400;margin-left:8px}.participant-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-height:280px;overflow:auto;padding:3px}.participant-option{display:flex;flex-direction:row;align-items:center;gap:12px;padding:14px;border:1px solid #e1e9e5;border-radius:7px;cursor:pointer}.participant-option input{width:18px;height:18px;min-height:18px;flex:0 0 18px;accent-color:var(--accent)}.participant-option strong{font-size:.9375rem;font-weight:550}.participant-option small{display:block;font-size:.8125rem;margin-top:4px;color:#687587}.participant-option:has(input:checked){background:#edf7f1;border-color:#59a780}.participant-unavailable{opacity:.45;cursor:default}.participant-roster{display:flex;flex-wrap:wrap;gap:20px;list-style:none;margin:0;padding:0}.participant-roster li{display:flex;align-items:center;gap:10px}.participant-roster strong{font-size:.9375rem;font-weight:550}.participant-roster small{display:block;color:#687587;font-size:.8125rem}.participant-management{margin-top:22px;padding-top:18px;border-top:1px solid var(--line)}@media(max-width:700px){.participant-options{grid-template-columns:1fr}}

.observer-list-note{color:#00783e}

.import-access{margin:0 0 24px;border-color:#b7dcca;background:#f7fcf9}.import-access form+form{margin-top:12px}

/* Compact, keyboard-accessible multi-person selection for employee defaults. */
.observer-autocomplete{max-width:800px}
.observer-selected{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}
.observer-chip{display:inline-flex;align-items:center;gap:12px;padding:8px 10px 8px 14px;border:1px solid #b7dcca;background:#edf7f1;color:#006b38;border-radius:8px;font-size:.9375rem;line-height:1.5}
.observer-chip button{display:grid;place-items:center;width:28px;height:28px;border:0;border-radius:5px;background:transparent;color:#397454;font-size:1.375rem;line-height:1;flex-shrink:0}
.observer-chip button:hover{background:#d9eddf;color:#005e30}
.observer-autocomplete>label{font-size:.9375rem;margin-bottom:8px}
.observer-results{margin-top:8px;border:1px solid #d3e2d9;border-radius:8px;max-height:300px;overflow-y:auto;background:#fff;box-shadow:0 6px 18px #203b3208}
.observer-result{display:flex;flex-direction:column;gap:3px;width:100%;padding:12px 16px;border:0;border-bottom:1px solid #edf1ee;background:#fff;text-align:left;color:#3c4b61;line-height:1.6}
.observer-result:last-child{border-bottom:0}
.observer-result strong{font-size:.9375rem;font-weight:550}
.observer-result>span{font-size:.8125rem;color:#687587}
.observer-result:hover,.observer-result[aria-selected="true"]{background:#edf7f1;color:#006b38}
.observer-search-status{display:block;margin-top:9px;font-size:.8125rem;color:#687587;line-height:1.7}
@media(max-width:580px){.observer-chip{max-width:100%}.observer-chip>span{overflow-wrap:anywhere}}


.paper-workflow{border-color:#b7dcca;background:#f7fcf9;margin-bottom:25px}
.paper-workflow .button{margin:6px 0}
.paper-transfer-note{font-size:.875rem;color:#00783e;border-top:1px solid #d3e9dd;padding-top:14px}
.paper-review-check{background:#f5faf7;border:1px solid #d3e9dd;border-radius:8px;padding:18px;margin:20px 0}
.paper-review-check .checkbox{align-items:flex-start;line-height:1.7}
.paper-review-check input{margin-top:5px;flex-shrink:0}
.paper-review-check small{display:block;margin:10px 0 0 28px;color:#687587;font-size:.8125rem;line-height:1.7}
