:root{--brand-yellow: #ffd21f;--brand-yellow-strong: #f2b800;--brand-yellow-soft: #fff7d6;--brand-black: #111111;--color-ink: #1f1f1f;--color-muted: #666666;--color-border: #d9d2b0;--color-page: #f7f7f2;--color-surface: #ffffff;--color-surface-tint: #fffdf4;--shadow-soft: 0 1px 3px rgba(17, 17, 17, .08);color:var(--color-ink);background:var(--color-page);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button{border:0;border-radius:6px;background:#1f6feb;color:#fff;cursor:pointer;font:inherit;font-weight:600;min-height:38px;padding:0 16px}button:disabled{cursor:not-allowed;opacity:.55}button.secondary{background:#e8eef5;color:#172026}button.danger{background:#d92d20}input,select,textarea{border:1px solid #cdd6df;border-radius:6px;color:#172026;font:inherit;min-height:38px;padding:8px 10px;width:100%}textarea{min-height:86px;resize:vertical}.page-shell{width:min(1180px,calc(100vw - 32px));margin:0 auto;padding:28px 0 48px}.login-shell{width:min(420px,calc(100vw - 32px));margin:0 auto;padding:72px 0}.login-panel h1{margin:0 0 8px}.login-form{display:grid;gap:14px;margin-top:18px}.login-footer-actions{display:flex;justify-content:center;margin-top:14px}.admin-dev-warning,.admin-auth-bar{align-items:center;display:flex;justify-content:center;min-height:40px;padding:8px 16px}.admin-dev-warning{background:#fff4d6;color:#795100}.admin-auth-bar{background:#eaf7ee;color:#17633a;gap:12px}.admin-auth-bar button{min-height:30px}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:20px}.page-header h1{margin:0;font-size:28px;font-weight:700;letter-spacing:0}.page-header p{margin:8px 0 0;color:#607080}.page-header-action,.action-row{display:flex;align-items:center;gap:10px}.metrics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.nav-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-top:18px}.nav-grid button{min-height:54px}.metric-card,.panel{border:1px solid #dce3ea;border-radius:8px;background:#fff;box-shadow:0 1px 2px #0f172a0a}.metric-card{padding:18px}.metric-card span{display:block;color:#607080;font-size:14px}.metric-card strong{display:block;margin-top:8px;font-size:30px}.panel{overflow:hidden}.padded-panel{margin-bottom:16px;padding:18px}.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.form-field{display:grid;gap:6px}.form-field span{color:#52616f;font-size:13px;font-weight:700}.form-field.wide{grid-column:span 2}.form-actions{align-self:end;display:flex;gap:10px}.profile-panel{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.profile-panel span{color:#607080;display:block;font-size:13px;margin-bottom:6px}.profile-panel strong{font-size:18px}.task-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.task-stack{display:grid;gap:12px}.task-card h2,.section-heading{font-size:18px;margin:0}.result-topline{align-items:center;display:flex;justify-content:space-between;gap:12px}.tag{border-radius:999px;display:inline-flex;font-size:13px;font-weight:700;padding:5px 9px}.tag.good{background:#eaf7ee;color:#17633a}.tag.warn{background:#fff4d6;color:#795100}.task-detail,.reviewer-picker,.review-task-list{display:grid;gap:12px;margin-top:12px}.private-complete-note{background:#f8fafc;border:1px solid #e6ebf0;border-radius:8px;padding:12px}.private-complete-note p{color:#607080;margin:6px 0 0}.reviewer-picker{background:#f8fafc;border:1px solid #e6ebf0;border-radius:8px;padding:12px}.review-task-item{align-items:center;border:1px solid #e6ebf0;border-radius:8px;display:flex;justify-content:space-between;gap:12px;padding:12px}.review-task-item p{margin:4px 0 0}.table-actions{align-items:center;display:flex;gap:8px}.table-actions button{min-height:32px;padding:0 10px}.table-wrap{width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:1080px}th,td{border-bottom:1px solid #e6ebf0;padding:12px 14px;text-align:left;white-space:nowrap}th{background:#f8fafc;color:#52616f;font-size:13px;font-weight:700}td{font-size:14px}.link-cell{color:#1f6feb;max-width:420px;overflow:hidden;text-overflow:ellipsis}.empty-cell{color:#607080;text-align:center}.notice{border-radius:8px;margin-bottom:14px;padding:12px 14px}.notice.success{background:#eaf7ee;color:#17633a}.notice.error{background:#fdecec;color:#9f1d1d}.muted-text{color:#607080}.review-shell{width:min(720px,calc(100vw - 24px));margin:0 auto;padding:18px 0 42px}.review-title{margin-bottom:18px}.review-title span{color:#1f6feb;font-weight:700}.review-title h1{font-size:30px;letter-spacing:0;margin:6px 0}.review-title p{color:#607080;line-height:1.7;margin:6px 0 0}.review-form{display:grid;gap:18px}.review-dimension{border:1px solid #dce3ea;border-radius:8px;display:grid;gap:12px;margin:0;padding:18px}.review-dimension legend{font-size:20px;font-weight:700;padding:0 8px}.dimension-description{color:#26333d;font-size:16px;line-height:1.7;margin:0}.dimension-checkpoints{background:#f8fafc;border:1px solid #e6ebf0;border-radius:8px;padding:10px 14px}.dimension-checkpoints strong{display:block;margin-bottom:8px}.dimension-checkpoints ul{color:#52616f;line-height:1.6;margin:0;padding-left:20px}.comment-hint{color:#607080;font-size:14px;line-height:1.5}.score-options{display:grid;grid-template-columns:1fr;gap:8px}.score-options label,.check-tag{align-items:center;border:1px solid #dce3ea;border-radius:8px;cursor:pointer;display:flex;gap:8px;min-height:44px;padding:8px 10px}.score-options label{align-items:flex-start;justify-content:flex-start;min-height:52px;padding:10px 12px}.score-value{background:#eef4ff;border-radius:999px;color:#1f4f99;flex:0 0 auto;font-weight:700;padding:3px 8px;white-space:nowrap}.score-behavior{color:#26333d;font-weight:600;line-height:1.5}.score-options input,.check-tag input{margin-top:4px;min-height:auto;width:auto}.tag-section{display:grid;gap:10px}.tag-section h2{font-size:18px;margin:0}.tag-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.check-tag.risk{background:snow}.large-button{font-size:18px;min-height:52px}.result-stack{display:grid;gap:14px}.result-view-switch,.dimension-filter-row{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.dimension-filter-row{margin:16px 0 0}.employee-result-filter{margin-bottom:0}.employee-result-filter select{max-width:420px}.result-card{background:#fff;border:1px solid #dce3ea;border-radius:8px;padding:18px}.result-card--unread{border-color:#8bb8ff;box-shadow:0 0 0 3px #1f6feb14}.result-card-head{align-items:start;display:flex;justify-content:space-between;gap:16px}.result-card-head h2{margin:0 0 6px}.result-card-head p{color:#607080;margin:0}.result-card-head strong{font-size:30px}.result-read-box{align-items:end;display:grid;gap:6px;justify-items:end;min-width:140px}.result-read-box small{color:#607080;font-size:12px}.read-badge{background:#eef6f1;border-radius:999px;color:#24703f;display:inline-flex;font-size:13px;font-weight:800;padding:5px 10px}.read-badge.unread{background:#fff3d6;color:#9a6200}.read-badge.empty{background:#f1f5f9;color:#607080}.result-average-strip{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:16px}.result-average-strip div{background:#f8fafc;border-radius:8px;padding:12px}.result-average-strip span{color:#607080;display:block;font-size:13px;font-weight:700;margin-bottom:4px}.result-average-strip strong{color:#172026;display:block;font-size:24px}.result-average-strip .result-average-total{background:#172026}.result-average-strip .result-average-total span,.result-average-strip .result-average-total strong{color:#fff}.result-total{text-align:right}.result-total span{color:#607080;display:block;font-size:13px;font-weight:700;margin-bottom:2px}.completion-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.completion-row span{background:#f1f5f9;border-radius:999px;color:#52616f;padding:6px 10px}.score-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin-top:14px}.score-summary-grid div{background:#f8fafc;border-radius:8px;padding:10px}.score-summary-grid span{color:#607080;display:block;font-size:13px}.dimension-link{background:transparent;color:#607080;display:inline;font-size:13px;font-weight:700;min-height:0;padding:0;text-align:left}.dimension-link:hover{color:#1f6feb;text-decoration:underline}.score-summary-grid strong{display:block;margin-top:4px}.score-behavior-note{color:#52616f;display:block;font-size:12px;line-height:1.45;margin-top:6px}.dimension-ranking-layout{display:grid;gap:14px;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:16px}.dimension-ranking-panel{background:#fafbfc;border:1px solid #edf1f5;border-radius:8px;padding:12px}.dimension-ranking-panel h3{margin:0 0 10px}.dimension-ranking-list{display:grid;gap:10px}.dimension-ranking-item{background:#fff;border:1px solid #edf1f5;border-radius:8px;padding:10px}.rank-person-line{align-items:center;display:flex;justify-content:space-between;gap:10px}.rank-person-line strong{font-size:15px}.rank-person-line span{color:#172026;font-size:20px;font-weight:800}.rank-status-line{color:#607080;display:grid;gap:4px;margin-top:8px}.rank-comment-line{border-top:1px solid #edf1f5;color:#52616f;margin:10px 0 0;padding-top:8px}.review-type-result-list{border-top:1px solid #edf1f5;display:grid;gap:0;margin-top:16px}.review-type-result-row{border-bottom:1px solid #edf1f5;display:grid;gap:14px;grid-template-columns:130px minmax(0,1fr);padding:14px 0}.review-type-result-row:last-child{border-bottom:0}.review-type-cell{align-content:start;display:grid;gap:8px}.review-type-cell strong{font-size:17px}.review-type-cell span{background:#f1f5f9;border-radius:999px;color:#52616f;display:inline-flex;font-size:13px;font-weight:700;justify-self:start;padding:5px 9px}.review-type-cell small{color:#607080;font-size:13px;font-weight:700}.review-type-detail{display:grid;gap:10px}.score-summary-grid--compact{margin-top:0}.review-type-meta-grid{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.review-type-meta-grid p{background:#fafbfc;border-radius:8px;margin:0;padding:10px}.review-type-comments{margin-top:0}.tag-summary{border-top:1px solid #edf1f5;margin-top:14px;padding-top:12px}.tag-summary p{margin:6px 0}.comment-list{display:grid;gap:8px;margin-top:12px}.comment-item{background:#fafbfc;border-radius:8px;padding:10px}.comment-item p{margin:6px 0 0}.dimension-comment-list{border-top:1px solid #edf1f5;display:grid;gap:6px;margin-top:10px;padding-top:8px}.dimension-comment-list p{color:#52616f;line-height:1.55;margin:0}.dimension-comment-list strong{color:#172026}.employee-profile-layout{align-items:start;display:grid;gap:16px;grid-template-columns:280px minmax(0,1fr);margin-bottom:16px}.profile-section-head{align-items:flex-start;display:flex;justify-content:space-between;gap:14px;margin-bottom:14px}.profile-section-head h2{margin:0}.profile-section-head p{color:var(--color-muted);line-height:1.6;margin:6px 0 0}.compact-field{min-width:140px}.birthday-list{display:flex;flex-wrap:wrap;gap:10px}.birthday-item{align-items:center;background:var(--brand-yellow-soft);border:1px solid var(--brand-black);color:var(--brand-black);display:inline-flex;gap:10px;min-height:42px}.birthday-item span{color:var(--color-muted);font-weight:700}.profile-list-panel{overflow:hidden}.profile-list-head{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:14px}.profile-list-head h2{margin:0}.profile-list-head span{color:var(--color-muted);font-size:13px;font-weight:700}.profile-employee-list{display:grid;max-height:720px;overflow:auto}.profile-employee{background:var(--color-surface);border:0;border-bottom:1px solid var(--color-border);border-radius:0;color:var(--color-ink);display:grid;gap:4px;min-height:auto;padding:12px 14px;text-align:left}.profile-employee:hover,.profile-employee.active{background:var(--brand-yellow-soft)}.profile-employee strong{font-size:16px}.profile-employee span,.profile-employee small{color:var(--color-muted)}.profile-detail-panel{margin-bottom:0}.profile-form-grid{margin-bottom:16px}.profile-master-section{background:var(--color-surface-tint);border:1px solid var(--color-border);border-radius:8px;margin-bottom:18px;padding:16px}.profile-subsection-title{margin-bottom:12px}.profile-subsection-title h3{margin:0}.profile-subsection-title p{color:var(--color-muted);line-height:1.6;margin:6px 0 0}.profile-subsection{border-top:1px solid var(--color-border);display:grid;gap:12px;padding-top:16px}.profile-subsection+.profile-subsection{margin-top:18px}.profile-subsection h3{margin:0}.profile-record-list{display:grid;gap:10px}.profile-record-item{align-items:flex-start;background:var(--color-surface-tint);border:1px solid var(--color-border);border-radius:8px;display:flex;justify-content:space-between;gap:12px;padding:12px}.profile-record-item p{line-height:1.6;margin:6px 0}.profile-record-item small{color:var(--color-muted);line-height:1.6}body{background:var(--color-page);color:var(--color-ink)}button{background:var(--brand-yellow);border:1px solid var(--brand-black);color:var(--brand-black)}button:hover:not(:disabled){background:var(--brand-yellow-strong)}button.secondary{background:var(--color-surface);border:1px solid var(--brand-black);color:var(--brand-black)}button.secondary:hover:not(:disabled){background:var(--brand-yellow-soft)}button.danger{background:var(--brand-black);border-color:var(--brand-black);color:var(--color-surface)}input,select,textarea{background:var(--color-surface);border-color:var(--color-border);color:var(--color-ink)}input:focus,select:focus,textarea:focus{border-color:var(--brand-black);box-shadow:0 0 0 3px #ffd21f59;outline:0}.admin-dev-warning,.admin-auth-bar{background:var(--brand-yellow-soft);border-bottom:1px solid var(--color-border);color:var(--brand-black)}.page-header p,.metric-card span,.profile-panel span,.private-complete-note p,.result-card-head p,.result-read-box small,.result-total span,.score-summary-grid span,.rank-status-line,.review-type-cell small,.dimension-comment-list p,.muted-text,.empty-cell,.comment-hint,.review-title p,.dimension-checkpoints ul,.form-field span{color:var(--color-muted)}.metric-card,.panel,.result-card,.review-dimension,.dimension-ranking-item,.comment-item{background:var(--color-surface);border-color:var(--color-border);box-shadow:var(--shadow-soft)}.private-complete-note,.reviewer-picker,.dimension-checkpoints,.score-summary-grid div,.dimension-ranking-panel,.review-type-meta-grid p{background:var(--color-surface-tint);border-color:var(--color-border)}th{background:var(--brand-black);color:var(--color-surface)}td,th,.review-task-item,.tag-summary,.review-type-result-list,.review-type-result-row,.rank-comment-line,.dimension-comment-list{border-color:var(--color-border)}.link-cell,.review-title span,.dimension-link{color:#8a6500}.dimension-link:hover{color:var(--brand-black)}.notice.success,.notice.error,.tag.good,.tag.warn,.read-badge,.read-badge.unread,.completion-row span,.review-type-cell span{background:var(--brand-yellow-soft);color:var(--brand-black)}.notice.error{border:1px solid var(--brand-black)}.read-badge.empty{background:#eee;color:var(--color-muted)}.result-card--unread{border-color:var(--brand-black);box-shadow:0 0 0 3px #ffd21f6b}.result-average-strip div{background:var(--brand-yellow-soft)}.result-average-strip strong,.rank-person-line span,.dimension-comment-list strong{color:var(--brand-black)}.result-average-strip .result-average-total{background:var(--brand-black)}.result-average-strip .result-average-total span,.result-average-strip .result-average-total strong{color:var(--brand-yellow)}.score-options label,.check-tag{background:var(--color-surface);border-color:var(--color-border)}.score-options label:has(input:checked),.check-tag:has(input:checked){background:var(--brand-yellow-soft);border-color:var(--brand-black);box-shadow:0 0 0 2px #ffd21f47}.score-value{background:var(--brand-yellow);color:var(--brand-black)}.score-behavior,.dimension-description{color:var(--color-ink)}.check-tag.risk{background:var(--color-surface)}.check-tag.risk:has(input:checked){background:var(--brand-yellow-soft)}.payroll-form-grid{align-items:end}.adjustment-type-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin:14px 0 18px}.adjustment-type-card,.adjustment-rule-card{background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-ink);display:grid;gap:6px;height:auto;min-height:92px;padding:14px;text-align:left}.adjustment-type-card strong{font-size:19px}.adjustment-type-card span,.adjustment-rule-card span,.adjustment-rule-card small,.adjustment-section-title p{color:var(--color-muted);font-weight:600;line-height:1.55}.adjustment-type-card.active,.adjustment-rule-card.active{background:var(--brand-yellow-soft);border-color:var(--brand-black);box-shadow:0 0 0 2px #ffd21f59}.adjustment-form-section{background:var(--color-surface-tint);border:1px solid var(--color-border);border-radius:8px;margin-bottom:16px;padding:14px}.adjustment-section-title{margin-bottom:12px}.adjustment-section-title h3{margin:0}.adjustment-section-title p{margin:6px 0 0}.adjustment-rule-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.adjustment-rule-card{min-height:110px}.payroll-action-row{margin-top:16px}.rules-grid{display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:16px}.salary-rule-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.sticky-action-bar{background:#f7f7f2eb;border-top:1px solid var(--color-border);bottom:0;display:flex;justify-content:flex-end;left:0;padding:12px max(16px,calc((100vw - 1180px)/2));position:sticky}.money-positive{color:#17633a;font-weight:800}.money-negative{color:#b42318;font-weight:800}.adjustment-list{display:grid;gap:12px}.adjustment-card h2{margin:0}.adjustment-response{display:grid;gap:10px;margin-top:12px}.payroll-toolbar{align-items:end;display:grid;gap:14px;grid-template-columns:180px minmax(0,1fr)}.payroll-metrics{margin-bottom:16px}.payroll-table input.table-input{min-width:92px;width:92px}.payroll-table input.table-note-input{min-width:220px}@media(max-width:760px){.page-header,.page-header-action,.action-row,.review-task-item{align-items:stretch;flex-direction:column}.metrics-grid,.nav-grid,.form-grid,.adjustment-type-grid,.payroll-toolbar,.rules-grid,.employee-profile-layout,.profile-panel,.task-grid,.score-summary-grid,.review-type-meta-grid,.dimension-ranking-layout,.result-average-strip,.result-card-head,.review-type-result-row{grid-template-columns:1fr}.result-card-head{align-items:stretch}.profile-section-head,.profile-record-item{flex-direction:column}.compact-field{min-width:0}.result-read-box{align-items:start;justify-items:start}.result-total{text-align:left}.employee-result-filter select{max-width:none}.form-field.wide{grid-column:auto}.score-options{grid-template-columns:1fr}.review-dimension{gap:14px;padding:18px 14px}.review-dimension legend{font-size:19px}.dimension-description{font-size:16px}.dimension-checkpoints{padding:12px}.score-options label{min-height:56px}.dimension-checkpoints ul{padding-left:18px}.tag-grid{grid-template-columns:1fr}.review-shell{width:min(100vw - 16px,720px)}.review-shell .padded-panel{padding:14px}}
