:root {
  color-scheme: light;
  --navy:#071f55;
  --blue:#087af0;
  --cyan:#1bc8d8;
  --green:#76d13f;
  --ink:#12213c;
  --muted:#6a7891;
  --line:#dce5f2;
  --surface:#ffffff;
  --canvas:#f3f7fb;
  font-family:"PingFang SC","Microsoft YaHei",system-ui,sans-serif;
}
.voice-summary-panel { margin-top:12px; overflow:hidden; border:1px solid #abdce4; border-radius:9px; background:#fff; box-shadow:0 10px 28px rgba(13,42,84,.08); }
.voice-summary-head { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:18px 20px 15px; background:linear-gradient(115deg,#f3fcff,#f5fff7); }.voice-summary-head > div:first-child { min-width:0; }.voice-summary-head span { color:#087f97; font-size:10px; font-weight:900; }.voice-summary-head h2 { margin:4px 0; color:var(--ink); font-size:20px; }.voice-summary-head p { margin:0; color:var(--muted); font-size:10px; line-height:1.55; }
.voice-summary-status { flex:0 0 auto; display:grid; justify-items:end; gap:4px; }.voice-summary-status b { padding:5px 8px; border-radius:999px; background:#dff7eb; color:#087a65; font-size:9px; }.voice-summary-status time { color:#6a8296; font-size:10px; font-weight:800; }
.voice-summary-tabs { display:flex; gap:5px; padding:8px 12px; border-top:1px solid #d9e9ef; border-bottom:1px solid #d9e9ef; background:#f9fcfd; overflow-x:auto; scrollbar-width:none; }.voice-summary-tabs button { flex:0 0 auto; padding:8px 11px; border:0; border-radius:6px; background:transparent; color:#637b8e; font:inherit; font-size:10px; font-weight:900; cursor:pointer; }.voice-summary-tabs button.active { background:#e2f7f8; color:#087f8f; box-shadow:inset 0 0 0 1px #bde8e9; }
.voice-summary-view { padding:16px 18px; }.voice-summary-view[hidden] { display:none !important; }
.voice-summary-lead { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:20px; align-items:center; }.voice-summary-lead > div { min-width:0; }.voice-summary-lead span { color:#0790a2; font-size:10px; font-weight:900; }.voice-summary-lead h3 { margin:5px 0; color:#173b58; font-size:18px; }.voice-summary-lead p { margin:0; max-width:760px; color:#577087; font-size:11px; line-height:1.65; }.voice-summary-lead dl { display:grid; grid-template-columns:repeat(3,78px); gap:7px; margin:0; }.voice-summary-lead dl div { display:grid; gap:3px; padding:10px; border:1px solid #d5e7ed; border-radius:7px; background:#fbfdfe; }.voice-summary-lead dt { color:#708799; font-size:8px; font-weight:800; }.voice-summary-lead dd { margin:0; color:#183d5a; font-size:13px; font-weight:900; }.voice-summary-lead.is-insufficient dl div:last-child { border-color:#eadab7; background:#fffaf0; }
.voice-summary-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:14px; }.voice-insight-card { min-width:0; padding:13px 14px; border:1px solid #d8e7ed; border-radius:7px; background:#fbfdfe; }.voice-insight-card > div { display:flex; align-items:center; justify-content:space-between; gap:10px; }.voice-insight-card > div span { color:#315772; font-size:11px; font-weight:900; }.voice-insight-card > div b { display:grid; width:23px; height:23px; place-items:center; border-radius:50%; background:#e4f5f7; color:#087f94; font-size:9px; }.voice-insight-card ul,.voice-insight-card ol { display:grid; gap:7px; margin:10px 0 0; padding:0; list-style:none; }.voice-insight-card li { position:relative; padding-left:15px; color:#425f75; font-size:10px; line-height:1.5; }.voice-insight-card ul li::before { position:absolute; left:0; top:5px; width:7px; height:7px; border-radius:50%; background:#24aeb6; content:""; }.voice-insight-card ol { counter-reset:voice-action; }.voice-insight-card ol li { display:grid; gap:3px; padding-left:24px; counter-increment:voice-action; }.voice-insight-card ol li::before { position:absolute; left:0; top:0; display:grid; width:17px; height:17px; place-items:center; border-radius:4px; background:#fff0d6; color:#9a650b; font-size:8px; font-weight:900; content:counter(voice-action); }.voice-insight-card.is-action { border-color:#eadcbb; background:#fffdf8; }
.voice-summary-empty-line { margin:10px 0 0; color:#7a8e9e; font-size:9px; }.voice-evidence { margin-top:12px; border-top:1px dashed #cddfe7; }.voice-evidence summary { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:11px 2px 0; color:#3f6177; font-size:10px; font-weight:900; cursor:pointer; }.voice-evidence summary span { color:#7a8e9e; font-size:9px; font-weight:700; }.voice-evidence > p { margin:9px 0 0; padding:9px 10px; border-radius:5px; background:#f4f9fb; color:#61798c; font-size:9px; line-height:1.55; }
.voice-period-empty { padding:20px; border:1px dashed #c1d7e1; border-radius:7px; background:#fbfdfe; text-align:center; }.voice-period-empty strong { color:#284a63; font-size:12px; }.voice-period-empty p { margin:6px 0 0; color:#758b9d; font-size:10px; line-height:1.55; }
.voice-period-topics { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:14px; }.voice-period-topics > div,.voice-period-topics > article { min-width:0; padding:13px; border:1px solid #d6e6ec; border-radius:7px; background:#fbfdfe; }.voice-period-topics > div > span:first-child,.voice-period-topics > article > span { display:block; margin-bottom:9px; color:#315772; font-size:10px; font-weight:900; }.voice-period-topics > div > span:not(:first-child) { display:inline-flex; align-items:center; gap:5px; margin:0 5px 5px 0; padding:6px 8px; border-radius:999px; background:#e8f7f9; color:#247086; font-size:9px; }.voice-period-topics > div > span b { font-size:8px; }.voice-period-topics > div > small { color:#778b9b; font-size:9px; }.voice-period-topics ol { display:grid; gap:6px; margin:0; padding-left:20px; color:#486378; font-size:9px; line-height:1.5; }
.voice-summary-panel > footer { display:flex; align-items:center; gap:9px; padding:9px 18px; border-top:1px solid #dce9ee; background:#f8fbfc; }.voice-summary-panel > footer span { flex:0 0 auto; padding:4px 6px; border-radius:4px; background:#e6f6f8; color:#087c8f; font-size:8px; font-weight:900; }.voice-summary-panel > footer p { margin:0; color:#7a8e9e; font-size:8px; line-height:1.45; }
@media (max-width:720px) {
  .voice-summary-head { align-items:flex-start; padding:15px; }.voice-summary-head h2 { font-size:18px; }.voice-summary-view { padding:14px; }.voice-summary-lead { grid-template-columns:1fr; gap:12px; }.voice-summary-lead h3 { font-size:16px; line-height:1.35; }.voice-summary-lead dl { grid-template-columns:repeat(3,minmax(0,1fr)); }.voice-summary-lead dl div { padding:8px; }
  .voice-summary-grid,.voice-period-topics { grid-template-columns:1fr; }.voice-summary-panel > footer { align-items:flex-start; padding:9px 14px; }.voice-evidence summary { align-items:flex-start; flex-direction:column; gap:3px; }
}

/* Training records: cycle topic library + automatic AnyTalk text + open WeCom attendance. */
.training-page,.training-checkin-page { min-height:100vh; background:#f3f7fb; }
.training-header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px max(18px,calc((100vw - 1120px)/2)); background:linear-gradient(110deg,#071f55,#0a4b90); }
.training-header nav { display:flex; gap:14px; }.training-header nav a { color:rgba(255,255,255,.84); font-size:12px; font-weight:800; text-decoration:none; }
.training-shell,.training-detail-shell { width:min(1120px,calc(100% - 36px)); display:grid; gap:12px; margin:22px auto 48px; }
.training-shell > *,.training-detail-shell > *,.training-detail-grid > * { min-width:0; }
.training-intro { display:flex; align-items:end; justify-content:space-between; gap:20px; padding:21px 23px; border:1px solid #c9e2ed; border-left:4px solid #15b9c9; border-radius:8px; background:#fff; box-shadow:0 8px 25px rgba(13,42,84,.06); }
.training-intro span,.training-section-head span { color:#087b9d; font-size:11px; font-weight:900; }.training-intro h1 { margin:5px 0; color:var(--ink); font-size:25px; }.training-intro p { margin:0; color:#5f7890; font-size:12px; line-height:1.6; }.training-intro > b { color:#55738c; font-size:11px; white-space:nowrap; }
.training-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }.training-metrics article,.training-cycle-card,.training-create-card,.training-records,.training-detail-card,.training-qr-card,.training-participants,.training-anytalk-card { padding:16px; border:1px solid #d8e6ee; border-radius:8px; background:#fff; box-shadow:0 7px 22px rgba(13,42,84,.05); }.training-metrics span,.training-metrics small { display:block; color:var(--muted); font-size:10px; }.training-metrics strong { display:block; margin:7px 0 5px; color:#0a718c; font-size:27px; }
.training-section-head { display:flex; align-items:start; justify-content:space-between; gap:10px; padding-bottom:11px; border-bottom:1px solid var(--line); }.training-section-head h2 { margin:4px 0 0; color:var(--ink); font-size:17px; }.training-section-head > b { padding:5px 7px; border-radius:5px; color:#087b9d; background:#edf8fb; font-size:9px; }
.training-cycle-form { display:grid; grid-template-columns:1fr 1fr auto; gap:10px; align-items:end; margin-top:14px; }.training-cycle-form label,.training-create-card label { display:grid; gap:6px; color:#49677e; font-size:11px; font-weight:800; }.training-cycle-form input,.training-create-card input,.training-create-card textarea,.training-create-card select { width:100%; border:1px solid #c8dce8; border-radius:6px; color:var(--ink); background:#fbfdff; font:inherit; font-size:11px; outline:0; }.training-cycle-form input,.training-create-card input,.training-create-card select { min-height:39px; padding:0 10px; }.training-cycle-form button { min-height:39px; padding:0 14px; border:0; border-radius:6px; color:#fff; background:#087f9e; font:inherit; font-size:10px; font-weight:900; }.training-cycle-form button:disabled { opacity:.5; }.training-file-field { grid-column:1/3; }.training-file-field small { color:#8496a6; font-size:9px; font-weight:500; }.training-create-card form { display:grid; grid-template-columns:1fr 1fr; gap:12px; margin-top:14px; }.training-content-preview,.training-auto-note,.training-submit { grid-column:1/-1; }.training-create-card textarea { min-height:110px; padding:10px; line-height:1.6; resize:vertical; }.training-create-card option { padding:5px; }.training-create-card label small { color:#8496a6; font-size:9px; font-weight:500; }.training-create-card input:focus,.training-create-card textarea:focus,.training-create-card select:focus { border-color:#16aabc; box-shadow:0 0 0 2px rgba(22,170,188,.1); }.training-auto-note { display:flex; align-items:center; gap:9px; padding:11px; border:1px solid #bee7df; border-radius:6px; color:#4d7180; background:#effbf8; font-size:10px; }.training-auto-note b { color:#087c68; }
.training-create-card [hidden] { display:none !important; }.training-topic-mode { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; gap:8px; margin:0; padding:10px; border:1px solid #d4e6ed; border-radius:7px; background:#f7fbfd; }.training-topic-mode legend { padding:0 5px; color:#087b9d; font-size:10px; font-weight:900; }.training-topic-mode label { display:flex; grid-template-columns:none; align-items:flex-start; gap:8px; padding:10px; border:1px solid #dce9ee; border-radius:6px; background:#fff; cursor:pointer; }.training-topic-mode input { width:auto; min-height:0; margin-top:2px; accent-color:#0e9aa7; }.training-topic-mode label > span { display:grid; gap:3px; }.training-topic-mode strong { color:#234b64; font-size:11px; }.training-topic-mode small { color:#7f92a1; font-size:9px; font-weight:500; line-height:1.45; }.training-manual-topic { grid-column:1/-1; display:grid; grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr); gap:10px; padding:12px; border:1px solid #bfe1e8; border-radius:7px; background:#f3fbfc; }.training-manual-topic textarea { min-height:82px; }.training-library-tools { padding:0; overflow:hidden; }.training-library-tools > summary { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:15px 16px; cursor:pointer; list-style:none; }.training-library-tools > summary::-webkit-details-marker { display:none; }.training-library-tools > summary span { display:grid; gap:4px; }.training-library-tools > summary b { color:#214962; font-size:12px; }.training-library-tools > summary small { color:#7c90a1; font-size:9px; }.training-library-tools > summary em { padding:5px 7px; border-radius:5px; color:#087b9d; background:#e8f7fa; font-size:9px; font-style:normal; font-weight:900; }.training-library-tools[open] > summary { border-bottom:1px solid #dce8ee; background:#f8fbfd; }.training-library-tools .training-cycle-form { margin:0; padding:15px 16px; }
.training-submit { display:flex; align-items:center; justify-content:space-between; gap:14px; }.training-submit span { color:#74889b; font-size:9px; }.training-submit button,.training-qr-card form button { min-height:38px; padding:0 13px; border:0; border-radius:6px; color:#fff; background:linear-gradient(105deg,#087f9e,#16b486); font:inherit; font-size:11px; font-weight:900; }.training-submit button:disabled { opacity:.5; }
.training-records .admin-table td { vertical-align:middle; }.training-source,.training-status { display:inline-flex; padding:5px 7px; border-radius:5px; color:#657b8e; background:#eef3f7; font-size:9px; font-weight:900; }.training-source.is-anytalk { color:#087b9d; background:#e8f8fb; }.training-status-checkin_open { color:#11764b; background:#e8f8ef; }.training-status-completed { color:#1977b6; background:#eaf5ff; }.training-status-cancelled { color:#9a6270; background:#f6edf0; }
.training-status-expired { color:#9a6812; background:#fff3df; }
.training-detail-card > span { color:#087b9d; font-size:10px; font-weight:900; }.training-detail-card h1 { margin:6px 0; color:var(--ink); font-size:25px; }.training-detail-card > p { margin:0; color:#536f85; font-size:12px; line-height:1.7; white-space:pre-wrap; }.training-detail-card > small { display:block; margin-top:10px; color:#8395a5; font-size:10px; }.training-detail-card blockquote { margin:14px 0 0; padding:12px; border-left:3px solid #1bc8d8; background:#f2fbfd; color:#4b697f; font-size:10px; line-height:1.65; }.training-detail-card blockquote b { display:block; margin-bottom:4px; color:#087b9d; }
.training-detail-grid { display:grid; grid-template-columns:minmax(300px,.85fr) minmax(0,1.15fr); gap:12px; }.training-qr-card { text-align:center; }.training-qr { margin:18px auto 12px; }.training-qr img { width:min(260px,90%); border:10px solid #fff; border-radius:8px; box-shadow:0 8px 28px rgba(13,42,84,.12); }.training-qr figcaption { margin-top:8px; color:#73889b; font-size:9px; }.training-qr-empty { margin:18px 0; padding:30px 12px; border:1px dashed #b6cad8; border-radius:7px; color:#71879a; font-size:10px; }.training-qr-card form button { width:100%; }.training-participants ul { display:grid; gap:7px; max-height:480px; margin:13px 0 0; padding:0; overflow:auto; list-style:none; }.training-participants li { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:10px; border-radius:6px; background:#f6f9fb; }.training-participants strong,.training-participants small { display:block; }.training-participants strong { color:var(--ink); font-size:11px; }.training-participants small { margin-top:3px; color:#8092a3; font-size:9px; }.training-participants li > b { padding:5px 7px; border-radius:5px; color:#a36a12; background:#fff3df; font-size:9px; }.training-participants li > b.confirmed { color:#11764b; background:#e8f8ef; }
.training-detail-actions { display:grid; grid-template-columns:1fr 1fr; gap:8px; }.training-detail-actions > span { grid-column:1/-1; color:#71879a; font-size:10px; }.training-qr-card form button.secondary { border:1px solid #9fc6d8; color:#2d607a; background:#fff; }
.training-anytalk-card > div:last-child { display:grid; gap:8px; margin-top:12px; }.training-anytalk-card article { padding:11px; border-left:3px solid #15b9c9; border-radius:5px; background:#f3fafc; }.training-anytalk-card time,.training-anytalk-card small { color:#7d91a2; font-size:9px; }.training-anytalk-card p { margin:5px 0; color:#405f76; font-size:11px; line-height:1.6; }.training-anytalk-empty { margin:0; color:#71879a; font-size:10px; }
.training-checkin-shell { width:min(390px,calc(100% - 24px)); margin:22px auto 50px; overflow:hidden; border:1px solid #c9dce7; border-radius:18px; background:#fff; box-shadow:0 22px 60px rgba(13,42,84,.16); }.training-checkin-shell > header { display:flex; align-items:center; gap:11px; padding:20px; color:#fff; background:linear-gradient(125deg,#07275f,#0b68a7 70%,#179b8d); }.training-checkin-shell header img { width:44px; height:44px; border-radius:10px; }.training-checkin-shell header span { display:grid; gap:2px; }.training-checkin-shell header small { color:#9fffe6; font-size:9px; }.training-checkin-shell header strong { font-size:17px; }.training-checkin-shell header em { color:rgba(255,255,255,.75); font-size:8px; font-style:normal; }.training-checkin-card { padding:17px; }.training-checkin-card > span { color:#087b9d; font-size:9px; font-weight:900; }.training-checkin-card h1 { margin:7px 0; color:var(--ink); font-size:20px; }.training-checkin-card > p { margin:0; color:#5f7488; font-size:11px; line-height:1.7; white-space:pre-wrap; }.training-checkin-card dl { display:grid; gap:8px; margin:14px 0; }.training-checkin-card dl div { display:flex; justify-content:space-between; gap:12px; padding-bottom:7px; border-bottom:1px solid #e5edf1; font-size:9px; }.training-checkin-card dt { color:#8493a3; }.training-checkin-card dd { margin:0; color:#314f67; text-align:right; }.training-checkin-form label { display:flex; align-items:center; gap:8px; padding:11px; border-radius:6px; background:#f3f8fb; color:#405f76; font-size:10px; }.training-checkin-form input { accent-color:#159b8d; }.training-checkin-form button,.training-checkin-success a { width:100%; min-height:40px; margin-top:11px; display:grid; place-items:center; border:0; border-radius:7px; color:#fff; background:linear-gradient(105deg,#087af0,#18b982); font:inherit; font-size:11px; font-weight:900; text-decoration:none; }.training-checkin-form small { display:block; margin-top:8px; color:#8a99a8; font-size:8px; line-height:1.5; }.training-checkin-success { padding:12px 0 4px; text-align:center; }.training-checkin-success > span { width:55px; height:55px; margin:auto; display:grid; place-items:center; border-radius:50%; color:#fff; background:linear-gradient(145deg,#20c89c,#087af0); font-size:28px; }.training-checkin-success h2 { margin:14px 0 5px; color:var(--ink); font-size:18px; }.training-checkin-success p { margin:0; color:#697d8f; font-size:10px; line-height:1.6; }
.training-growth-list { display:grid; gap:8px; margin:13px 0 0; padding:0; list-style:none; }.training-growth-list li { display:grid; grid-template-columns:105px minmax(0,1fr) auto; gap:10px; align-items:center; padding:12px; border:1px solid #e1ebf2; border-radius:7px; background:#f7fafc; }.training-growth-list time { color:#627c91; font-size:9px; font-weight:800; }.training-growth-main { min-width:0; }.training-growth-list strong,.training-growth-list small { display:block; }.training-growth-list strong { color:var(--ink); font-size:12px; }.training-growth-list small { margin-top:3px; color:#72899b; font-size:9px; line-height:1.45; }.training-growth-state { display:grid; justify-items:end; gap:5px; }.training-growth-state > b { padding:5px 7px; border-radius:5px; color:#11764b; background:#e8f8ef; font-size:9px; }.training-progress { color:#47677d; font-size:9px; font-weight:800; white-space:nowrap; }.training-progress.completed { color:#16815b; }.training-progress.active { color:#087b9d; }.training-growth-panel > p { margin:10px 0 0; color:var(--muted); font-size:9px; }
.admin-primary-action { padding:9px 12px; border-radius:6px; background:linear-gradient(110deg,#0b92b5,#18b982); color:#fff; font-size:11px; font-weight:900; text-decoration:none; white-space:nowrap; }
.training-management-metrics { margin-top:14px; }
.training-management-records { margin-top:14px; padding:14px; border:1px solid #d2e4eb; border-radius:8px; background:#f9fcfe; }
.training-subsection-head { display:flex; align-items:flex-end; justify-content:space-between; gap:12px; padding-bottom:11px; }
.training-subsection-head span { color:#087b9d; font-size:10px; font-weight:900; }.training-subsection-head h3 { margin:4px 0 0; color:var(--ink); font-size:16px; }.training-subsection-head > b { color:var(--muted); font-size:10px; }
.training-management-table { min-width:980px; }.training-management-table td { vertical-align:top; }.training-management-table td > small,.training-management-table td > strong { display:block; }.training-management-table td > small { margin-top:4px; color:var(--muted); }
.training-participant-list summary { color:#087b9d; cursor:pointer; font-size:10px; font-weight:900; }.training-participant-list ul { display:grid; gap:6px; margin-top:8px; }.training-participant-list li { display:flex; align-items:center; justify-content:space-between; gap:10px; min-width:230px; padding:7px; border-radius:5px; background:#eef6fa; }.training-participant-list strong,.training-participant-list small { display:block; }.training-participant-list strong { font-size:10px; }.training-participant-list small,.training-participant-list time { color:var(--muted); font-size:8px; }.training-participant-empty { color:var(--muted); font-size:10px; }
.training-coach-divider { height:1px; margin:20px 0; background:var(--line); }.training-coaching-detail-table { min-width:1080px; }.training-coaching-detail-table td { vertical-align:top; }.training-coaching-detail-table td > strong,.training-coaching-detail-table td > small { display:block; }.training-coaching-detail-table td > small { margin-top:4px; color:var(--muted); }
@media (max-width:720px) { .training-header { padding:12px; }.training-shell,.training-detail-shell { width:calc(100% - 24px); margin:12px auto 32px; }.training-intro { display:block; padding:17px 15px; }.training-intro > b { display:block; margin-top:9px; }.training-metrics { grid-template-columns:1fr 1fr; }.training-cycle-form,.training-create-card form,.training-topic-mode,.training-manual-topic { grid-template-columns:1fr; }.training-file-field,.training-content-preview,.training-auto-note,.training-submit,.training-topic-mode,.training-manual-topic { grid-column:auto; }.training-cycle-form button { width:100%; }.training-submit { align-items:stretch; flex-direction:column; }.training-submit button { width:100%; }.training-records .admin-table { min-width:920px; }.training-detail-grid { grid-template-columns:1fr; }.training-growth-list li { grid-template-columns:1fr auto; }.training-growth-list time { grid-column:1/-1; }.training-growth-state { align-self:start; } }
* { box-sizing:border-box; }
body { margin:0; min-height:100vh; background:var(--canvas); color:var(--ink); letter-spacing:0; }
button,a { font:inherit; }
.login-page { display:grid; place-items:center; padding:24px; background:linear-gradient(155deg,#071f55 0%,#0d3e8e 56%,#0a9db0 100%); }
.login-shell { width:min(100%,420px); }
.login-card { display:grid; justify-items:center; gap:12px; padding:34px 28px; border:1px solid rgba(255,255,255,.42); border-radius:8px; background:rgba(255,255,255,.96); box-shadow:0 24px 70px rgba(2,19,56,.32); text-align:center; }
.login-card img { width:76px; height:76px; border-radius:8px; }
.login-card > span { color:var(--blue); font-size:12px; font-weight:800; }
.login-card h1 { margin:0; font-size:32px; }
.login-card p { margin:0 0 8px; color:var(--muted); font-size:14px; line-height:1.7; }
.login-card small { color:var(--muted); font-size:11px; line-height:1.55; }
.primary-action { width:100%; padding:13px 16px; border-radius:8px; background:linear-gradient(100deg,var(--blue),var(--cyan),var(--green)); color:#fff; font-weight:900; text-decoration:none; }
.login-error { width:100%; padding:10px; border:1px solid #ffc1cb; border-radius:6px; background:#fff1f4; color:#b31f3b; font-size:12px; text-align:left; }
.app-header { padding:18px max(18px,calc((100vw - 1120px)/2)); background:linear-gradient(115deg,#071f55,#0b3f8f 62%,#087e91); color:#fff; }
.brand-line { display:flex; align-items:center; gap:9px; }
.brand-line img { width:32px; height:32px; border-radius:7px; }
.brand-line strong { font-size:17px; }
.brand-actions { display:flex; align-items:center; gap:16px; margin-left:auto; }
.brand-line a { color:rgba(255,255,255,.82); font-size:12px; text-decoration:none; }
.brand-line a:hover { color:#fff; }
.identity { display:grid; grid-template-columns:58px minmax(0,1fr) auto; align-items:center; gap:14px; margin-top:24px; }
.avatar { width:58px; height:58px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.5); border-radius:50%; background:rgba(255,255,255,.18); font-size:22px; font-weight:900; }
.identity small,.identity p { color:rgba(255,255,255,.72); }
.identity h1 { margin:3px 0; font-size:24px; }
.identity p { margin:0; font-size:12px; }
.identity > b { padding:6px 9px; border-radius:6px; background:rgba(117,209,63,.2); color:#c8ff9d; font-size:11px; }
.employee-shell { width:min(1120px,calc(100% - 36px)); margin:0 auto; padding:18px 0 38px; }
.metric-strip { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.metric-strip article,.content-panel { border:1px solid var(--line); border-radius:8px; background:var(--surface); box-shadow:0 8px 26px rgba(13,42,84,.06); }
.metric-strip article { min-height:92px; display:grid; grid-template-columns:auto 1fr; align-content:center; gap:2px 5px; padding:14px; }
.metric-strip span { grid-column:1/-1; color:var(--muted); font-size:11px; font-weight:700; }
.metric-strip strong { font-size:28px; line-height:1; }
.metric-strip small { align-self:end; color:var(--muted); }
.content-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:12px; margin-top:12px; }
.content-panel { min-width:0; padding:16px; }
.section-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-bottom:12px; border-bottom:1px solid var(--line); }
.section-head span { color:var(--cyan); font-size:10px; font-weight:900; }
.section-head h2 { margin:3px 0 0; font-size:18px; }
.section-head > b { color:var(--muted); font-size:11px; }
ul,dl { margin:0; padding:0; list-style:none; }
.task-list,.attendance-list { display:grid; }
.task-item { display:grid; grid-template-columns:8px minmax(0,1fr) auto; align-items:center; gap:10px; padding:13px 0; border-bottom:1px solid var(--line); }
.task-item:last-child,.attendance-list li:last-child { border-bottom:0; }
.risk-dot { width:8px; height:8px; border-radius:50%; background:var(--cyan); }
.risk-dot.high { background:#ff4e7a; }
.risk-dot.medium { background:#ffad31; }
.task-item div { min-width:0; display:grid; gap:4px; }
.task-item strong,.task-item small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.task-item strong { font-size:13px; }
.task-item small { color:var(--muted); font-size:10px; }
.task-item-state { display:flex; align-items:center; justify-content:flex-end; gap:6px; }
.task-item-state form { margin:0; }
.task-item-state button { border:1px solid #1684aa; border-radius:5px; background:#fff; color:#087b9d; cursor:pointer; font:inherit; font-size:10px; font-weight:900; padding:4px 6px; white-space:nowrap; }
.task-item-state > b { padding:4px 6px; border-radius:5px; background:#edf7ff; color:#1670b7; font-size:10px; white-space:nowrap; }
.profile-panel dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding-top:13px; }
.profile-panel dl div { padding:12px; border-radius:7px; background:#f7f9fc; }
.profile-panel dt { color:var(--muted); font-size:10px; }
.profile-panel dd { margin:6px 0 0; font-size:13px; font-weight:800; }
.attendance-list li { display:grid; grid-template-columns:88px minmax(0,1fr) auto; align-items:center; gap:8px; padding:11px 0; border-bottom:1px solid var(--line); font-size:12px; }
.attendance-list time { color:var(--muted); }
.attendance-list b { font-size:10px; }
.attendance-list .ok { color:#238c57; }
.attendance-list .warn { color:#d66a18; }
.salary-value { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:end; gap:5px; padding-top:16px; }
.salary-value span { grid-column:1/-1; color:var(--muted); font-size:11px; }
.salary-value strong { font-size:27px; }
.salary-value button { border:0; background:transparent; color:var(--blue); font-size:11px; font-weight:800; cursor:pointer; }
.salary-panel p { color:var(--muted); font-size:11px; }
.salary-history-panel,.salary-history-empty { margin-top:12px; }
.salary-history-empty > p { margin:16px 0 0; color:var(--muted); font-size:12px; line-height:1.6; }
.salary-history-head { align-items:flex-start; }
.salary-history-head p { margin:5px 0 0; color:var(--muted); font-size:10px; font-weight:400; line-height:1.55; }
.salary-history-legend { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:10px; padding-top:3px; color:var(--muted); font-size:10px; font-weight:800; white-space:nowrap; }
.salary-history-legend i { display:inline-block; width:8px; height:8px; margin-right:4px; border-radius:50%; background:#0a98ca; }
.salary-history-legend i.bonus { background:#f0aa2c; }
.salary-trend-chart { position:relative; min-height:244px; margin-top:15px; padding:12px 0 0; }
.salary-trend-chart svg { position:relative; z-index:1; display:block; width:100%; height:205px; overflow:visible; }
.salary-trend-grid { position:absolute; inset:18px 16px 36px 42px; display:grid; grid-template-rows:repeat(4,1fr); pointer-events:none; }
.salary-trend-grid i { border-top:1px dashed #dfe7f1; }
.salary-trend-axis { position:absolute; top:17px; bottom:36px; left:0; display:flex; flex-direction:column; justify-content:space-between; color:#8b97aa; font-size:9px; }
.salary-trend-axis span[data-salary-axis-value].revealed::before { content:"¥ "; }
.salary-trend-area { fill:url(#kaopurenSalaryArea); }
.salary-trend-line { fill:none; stroke:#087af0; stroke-linecap:round; stroke-linejoin:round; stroke-width:3; }
.salary-trend-point { fill:#fff; stroke:#16b9cb; stroke-width:3; }
.salary-trend-point.current { fill:#76d13f; stroke:#fff; stroke-width:3; }
.salary-bonus-dot { fill:#f0aa2c; stroke:#fff; stroke-width:2; }
.salary-trend-months { display:grid; grid-template-columns:repeat(var(--salary-month-count,6),minmax(0,1fr)); gap:0; padding:0 15px 0 42px; color:var(--muted); font-size:10px; text-align:center; }
.salary-trend-months span:last-child { color:#087b9d; font-weight:900; }
.salary-history-insights { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; margin-top:10px; }
.salary-history-insights article { padding:11px; border:1px solid var(--line); border-radius:7px; background:#f8fbfe; }
.salary-history-insights span { display:block; color:var(--muted); font-size:10px; font-weight:800; }
.salary-history-insights strong { display:block; margin-top:5px; color:var(--ink); font-size:14px; }
.salary-history-insights p { margin:4px 0 0; color:var(--muted); font-size:10px; line-height:1.45; }
.mapping-note { display:block; margin-top:16px; padding:13px; border-radius:7px; background:#f7f9fc; color:var(--muted); font-size:12px; }
.empty-row { padding:20px 0; color:var(--muted); font-size:12px; text-align:center; }
.data-note { margin:14px 2px 0; color:var(--muted); font-size:10px; line-height:1.6; }
.admin-page { background:#edf3f9; }
.admin-header { padding:18px 0 28px; background:linear-gradient(118deg,#071f55 0%,#075fae 60%,#078c83 100%); color:#fff; }
.admin-header-inner,.admin-shell { width:min(1640px,calc(100% - 40px)); margin:0 auto; }
.admin-title { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-top:34px; }
.admin-title span { color:#8ff5dc; font-size:11px; font-weight:900; }
.admin-title h1 { margin:5px 0; font-size:30px; }
.admin-title p { margin:0; color:rgba(255,255,255,.72); font-size:13px; }
.admin-title > b { padding:8px 11px; border:1px solid rgba(255,255,255,.25); border-radius:7px; background:rgba(255,255,255,.1); font-size:12px; }
.admin-shell { padding:18px 0 42px; }
.admin-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.admin-metrics article { min-height:104px; display:grid; grid-template-columns:auto 1fr; align-content:center; gap:4px 6px; padding:16px; border:1px solid var(--line); border-radius:8px; background:#fff; box-shadow:0 8px 26px rgba(13,42,84,.06); }
.admin-metrics span { grid-column:1/-1; color:var(--muted); font-size:11px; font-weight:800; }
.admin-metrics strong { font-size:30px; line-height:1.05; }
.admin-metrics small { align-self:end; color:var(--muted); font-size:11px; }
.admin-metrics .sync-metric strong { color:#178659; font-size:20px; }
.admin-profile-completion-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:10px; }
.admin-profile-completion-metrics article { display:grid; gap:5px; min-height:92px; padding:14px; border:1px solid #cfe3ea; border-radius:8px; background:linear-gradient(135deg,#f7fdff,#f6fcf8); }
.admin-profile-completion-metrics span { color:#087b9d; font-size:10px; font-weight:900; }
.admin-profile-completion-metrics strong { color:#163b5e; font-size:25px; line-height:1; }
.admin-profile-completion-metrics small { color:var(--muted); font-size:9px; line-height:1.45; }
.admin-profile-completion-queue { margin-top:12px; padding:16px; border:1px solid var(--line); border-radius:8px; background:#fff; box-shadow:0 7px 22px rgba(13,42,84,.05); }
.admin-grid { display:grid; grid-template-columns:272px minmax(0,1fr); gap:12px; margin-top:12px; align-items:start; }
.department-tree-intro,.department-tree-note { margin:10px 0 0; color:var(--muted); font-size:10px; line-height:1.5; }
.department-tree { max-height:630px; margin:12px 0 0; padding:0; overflow:auto; list-style:none; }
.department-tree ul { margin:0 0 0 14px; padding:0 0 0 12px; border-left:1px solid #d9e3ef; list-style:none; }
.department-tree li { position:relative; min-width:0; list-style:none; }
.department-tree summary,.department-tree-leaf { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:10px; align-items:center; min-height:56px; padding:9px 0; border-bottom:1px solid var(--line); }
.department-tree summary { cursor:pointer; list-style:none; }
.department-tree summary::-webkit-details-marker { display:none; }
.department-tree summary::before { width:15px; color:#1787c9; content:"›"; font-size:20px; font-weight:700; text-align:center; transform:rotate(0deg); transition:transform .16s ease; }
.department-tree details[open] > summary::before { transform:rotate(90deg); }
.department-tree-leaf::before { width:15px; color:#8ca0b8; content:"•"; font-size:16px; font-weight:900; text-align:center; }
.department-tree-name { display:grid; gap:4px; min-width:0; }
.department-tree strong,.department-tree small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.department-tree strong { color:var(--ink); font-size:13px; }
.department-tree small { color:var(--muted); font-size:9px; }
.department-tree b { color:var(--blue); font-size:10px; font-weight:800; white-space:nowrap; }
.department-tree [data-department-filter] { cursor:pointer; }
.department-tree [data-department-filter].selected { background:#edfaff; box-shadow:inset 3px 0 0 #1685ae; }
.department-tree-leaf b { color:#1787c9; }
.employee-search { width:min(300px,45%); display:flex; align-items:center; gap:8px; padding:7px 10px; border:1px solid var(--line); border-radius:7px; background:#f7f9fc; }
.employee-search span { color:var(--muted); }
.employee-search input { min-width:0; width:100%; border:0; outline:0; background:transparent; color:var(--ink); font:inherit; font-size:11px; }
.employee-directory-actions { display:flex; align-items:center; justify-content:flex-end; gap:8px; }
.employee-filter-state { display:block; margin-top:4px; color:#087b9d; font-size:10px; font-weight:800; }
.employee-filter-reset { padding:7px 9px; border:1px solid #9fcee3; border-radius:6px; background:#eefaff; color:#087b9d; font:inherit; font-size:10px; font-weight:900; cursor:pointer; white-space:nowrap; }
.admin-table-wrap { min-width:0; max-width:100%; overflow-x:auto; overflow-y:hidden; -webkit-overflow-scrolling:touch; }
.admin-table { width:100%; border-collapse:collapse; font-size:12px; }
.admin-table th,.admin-table td { padding:12px 10px; border-bottom:1px solid var(--line); text-align:left; white-space:nowrap; }
.admin-table th { position:sticky; top:0; background:#fff; color:var(--muted); font-size:10px; z-index:1; }
.admin-table td:first-child { display:grid; gap:3px; min-width:130px; }
.admin-table td:first-child small { color:var(--muted); font-size:9px; }
.employee-pagination { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:12px; color:var(--muted); font-size:11px; }
.employee-pagination > div { display:flex; align-items:center; gap:8px; }
.employee-pagination button { min-width:54px; padding:6px 8px; border:1px solid #94c4dc; border-radius:5px; background:#fff; color:#087b9d; font:inherit; font-weight:900; cursor:pointer; }
.employee-pagination button:disabled { border-color:#d7e4eb; color:#a8bac7; cursor:not-allowed; }
.employee-pagination b { min-width:42px; color:#36516d; text-align:center; }
.status-pill { display:inline-flex; padding:4px 7px; border-radius:5px; background:#e9f8ef; color:#187549; font-size:10px; font-weight:800; }
.access-denied { width:min(100%,460px); margin:auto; }
.employee-growth-page { background:var(--canvas); }
.workbench-header { padding:18px max(18px,calc((100vw - 1120px)/2)) 72px; background:linear-gradient(118deg,#071f55 0%,#0a4b9f 62%,#078d84 100%); color:#fff; }
.workbench-top { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.workbench-brand { display:flex; align-items:center; gap:9px; color:#fff; text-decoration:none; }
.workbench-brand img { width:34px; height:34px; border-radius:8px; }
.workbench-brand strong { font-size:18px; }
.workbench-top nav { display:flex; gap:16px; }
.workbench-top nav a { color:rgba(255,255,255,.8); font-size:12px; text-decoration:none; }
.workbench-top nav a:hover { color:#fff; }
.workbench-identity { display:grid; grid-template-columns:60px minmax(0,1fr) 52px; align-items:center; gap:14px; margin:31px auto 0; width:min(1120px,100%); }
.workbench-identity > div { min-width:0; }
.workbench-avatar { width:60px; height:60px; display:grid; place-items:center; border:1px solid rgba(255,255,255,.55); border-radius:50%; background:rgba(255,255,255,.17); font-size:24px; font-weight:900; }
.workbench-identity p { margin:0; color:rgba(255,255,255,.72); font-size:12px; }
.workbench-identity h1 { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin:4px 0; font-size:26px; }
.workbench-identity h1 em { padding:4px 7px; border:1px solid rgba(255,255,255,.3); border-radius:5px; color:#d1ffac; font-size:11px; font-style:normal; }
.workbench-identity small { color:rgba(255,255,255,.76); font-size:11px; }
.workbench-identity-code { display:grid; justify-items:center; gap:3px; width:52px; padding:6px 2px; border:1px solid rgba(210,255,172,.7); border-radius:7px; background:rgba(4,37,94,.34); color:#d1ffac; font-size:9px; font-weight:900; line-height:1; text-decoration:none; }
.identity-code-icon { position:relative; display:block; width:20px; height:20px; border:2px solid currentColor; background:linear-gradient(90deg,currentColor 0 22%,transparent 22% 38%,currentColor 38% 58%,transparent 58% 74%,currentColor 74% 100%); opacity:.98; }
.identity-code-icon::before,.identity-code-icon::after { content:""; position:absolute; width:5px; height:5px; background:#083a77; outline:2px solid currentColor; }
.identity-code-icon::before { top:2px; left:2px; }
.identity-code-icon::after { right:2px; bottom:2px; }
.identity-code-page { width:min(440px,calc(100% - 32px)); margin:0 auto; padding:24px 0 42px; }
.identity-code-page header { display:flex; align-items:center; justify-content:space-between; color:#385671; font-size:13px; font-weight:900; }
.identity-code-page header a { color:#087b9d; text-decoration:none; }
.identity-code-card { display:grid; justify-items:center; margin-top:22px; padding:28px 22px; border:1px solid #b7e4e6; border-radius:8px; background:linear-gradient(145deg,#fff 0%,#edfaff 58%,#f0fcf2 100%); box-shadow:0 14px 38px rgba(13,42,84,.12); text-align:center; }
.identity-code-card > span { color:#087b9d; font-size:11px; font-weight:900; }
.identity-code-card h1 { margin:8px 0 4px; color:var(--ink); font-size:25px; }
.identity-code-card p { margin:0; color:var(--muted); font-size:12px; }
.identity-code-card figure { margin:24px 0 16px; padding:12px; border:1px solid #d7e7ed; border-radius:8px; background:#fff; }
.identity-code-card img { display:block; width:min(260px,calc(100vw - 104px)); height:auto; }
.identity-code-card figcaption { margin-top:10px; color:#47627a; font-size:11px; }
.identity-code-card small { color:#74889c; font-size:10px; line-height:1.55; }
.workbench-shell { width:min(1120px,calc(100% - 36px)); margin:-46px auto 0; padding:0 0 42px; }
.growth-hero { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:20px; align-items:center; min-height:154px; padding:22px 24px; border:1px solid rgba(27,200,216,.55); border-radius:8px; background:linear-gradient(120deg,#ffffff 0%,#eefaff 62%,#effcf2 100%); box-shadow:0 14px 38px rgba(8,56,112,.13); }
.growth-hero > div { min-width:0; }
.growth-hero > div > span { color:#087b9d; font-size:11px; font-weight:900; }
.growth-hero h2 { margin:5px 0 7px; color:var(--ink); font-size:23px; }
.growth-hero p { margin:0; max-width:740px; color:#2f4966; font-size:13px; line-height:1.6; }
.growth-hero small { display:block; margin-top:8px; color:var(--muted); font-size:10px; }
.growth-hero button { min-width:126px; padding:10px 12px; border:1px solid #a7c6d8; border-radius:7px; background:#fff; color:#58738b; font-size:11px; font-weight:800; }
.growth-hero.is-ready button { border-color:#27a984; background:#e9faf4; color:#187a59; }
.workbench-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-top:12px; }
.workbench-metrics article { min-height:96px; display:grid; grid-template-columns:auto 1fr; align-content:center; gap:2px 5px; padding:15px; border:1px solid var(--line); border-radius:8px; background:#fff; box-shadow:0 7px 22px rgba(13,42,84,.05); }
.workbench-metrics span { grid-column:1/-1; color:var(--muted); font-size:11px; font-weight:800; }
.workbench-metrics strong { color:var(--ink); font-size:29px; line-height:1; }
.workbench-metrics small { align-self:end; color:var(--muted); font-size:11px; }
.workbench-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:12px; }
.workbench-panel { min-width:0; padding:16px; border:1px solid var(--line); border-radius:8px; background:#fff; box-shadow:0 7px 22px rgba(13,42,84,.05); }
.workbench-section-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-bottom:12px; border-bottom:1px solid var(--line); }
.workbench-section-head > div { min-width:0; }
.workbench-section-head span { color:#087b9d; font-size:10px; font-weight:900; }
.workbench-section-head h2 { margin:3px 0 0; font-size:18px; }
.workbench-section-head > b { color:var(--muted); font-size:10px; white-space:nowrap; }
.task-center-link { padding:6px 8px; border:1px solid #1684aa; border-radius:5px; color:#087b9d; font-size:11px; font-weight:900; text-decoration:none; white-space:nowrap; }
.task-center-link:hover { background:#e9f8fb; }
.task-assignment-note { margin:12px 0 0; color:var(--muted); font-size:11px; line-height:1.55; }
.assessment-shell { width:min(980px,calc(100% - 32px)); margin:28px auto 48px; display:grid; gap:14px; }
.assessment-header { display:flex; justify-content:space-between; align-items:center; color:#36516d; font-size:13px; font-weight:900; }
.assessment-header a { color:#087b9d; text-decoration:none; }
.assessment-identity,.assessment-panel { border:1px solid var(--line); border-radius:8px; background:#fff; box-shadow:0 7px 22px rgba(13,42,84,.05); }
.assessment-identity { padding:24px; border-left:4px solid #1bc8d8; }
.assessment-identity > span,.assessment-panel > div > span { color:#087b9d; font-size:11px; font-weight:900; }
.assessment-identity h1,.assessment-panel h2 { margin:5px 0; color:var(--ink); }
.assessment-identity p,.assessment-identity small { color:var(--muted); }
.assessment-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; }
.assessment-panel { padding:18px; }
.assessment-panel ul { display:grid; gap:8px; margin-top:14px; }
.assessment-panel li { display:grid; gap:3px; padding:10px 0; border-bottom:1px solid var(--line); font-size:12px; }
.assessment-panel li:last-child { border-bottom:0; }
.assessment-panel li span,.assessment-panel li small { color:var(--muted); }
.assessment-panel li p { margin:2px 0 0; color:#36516d; }
.assessment-form-panel form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:14px; }
.assessment-form-note { grid-column:1/-1; margin:0; color:#58718a; font-size:12px; line-height:1.6; }
.assessment-skill-group { grid-column:1/-1; min-width:0; margin:0; padding:12px; border:1px solid #d4e6ef; border-radius:7px; }
.assessment-skill-group legend { padding:0 5px; color:#087b9d; font-size:12px; font-weight:900; }
.assessment-skill-group legend small { margin-left:5px; color:#71879a; font-size:10px; }
.assessment-skill-options { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.assessment-skill-option { display:grid; grid-template-columns:auto minmax(0,1fr) 58px; align-items:center; gap:7px; min-width:0; padding:8px; border:1px solid #e0ebf1; border-radius:6px; background:#f9fcfd; cursor:pointer; }
.assessment-skill-option input { width:15px; height:15px; margin:0; accent-color:#087b9d; }
.assessment-skill-option span { overflow:hidden; color:#24425d; font-size:12px; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }
.assessment-skill-option select { min-width:0; padding:6px; font-size:11px; }
.assessment-skill-option select:disabled { cursor:not-allowed; opacity:.5; }
.assessment-form-panel label { display:grid; gap:6px; color:#36516d; font-size:12px; font-weight:900; }
.assessment-form-panel input,.assessment-form-panel select,.assessment-form-panel textarea { min-width:0; border:1px solid var(--line); border-radius:6px; background:#fff; color:var(--ink); font:inherit; padding:10px; }
.assessment-form-panel textarea { min-height:84px; resize:vertical; }
.assessment-form-panel .assessment-note { grid-column:1/-1; }
.assessment-form-panel button { justify-self:start; border:0; border-radius:6px; background:#087b9d; color:#fff; cursor:pointer; font:inherit; font-weight:900; padding:10px 14px; }
.assessment-submit-notice { grid-column:1/-1; margin:0; padding:10px 12px; border-left:3px solid #1aa5ba; border-radius:5px; background:#eef9fb; color:#315d70; font-size:11px; font-weight:800; line-height:1.55; }
.assessment-hr-change { grid-column:1/-1; display:grid; gap:12px; min-width:0; margin:0; padding:14px; border:1px solid #e5c983; border-radius:8px; background:linear-gradient(135deg,#fffdf7,#f8fcff); }
.assessment-hr-change legend { padding:0 6px; color:#8f620d; font-size:12px; font-weight:900; }.assessment-hr-change legend small { margin-left:5px; color:#9b7b42; font-size:9px; }
.assessment-hr-change > p { margin:0; color:#6d624e; font-size:10px; line-height:1.6; }
.assessment-hr-change-toggles { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }.assessment-hr-change-toggles > label { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:start; gap:9px; padding:11px; border:1px solid #e4d7b5; border-radius:7px; background:#fff; cursor:pointer; }.assessment-hr-change-toggles input { width:16px; height:16px; margin:1px 0 0; padding:0; accent-color:#0b91a8; }.assessment-hr-change-toggles span { display:grid; gap:4px; }.assessment-hr-change-toggles strong { color:#28475d; font-size:11px; }.assessment-hr-change-toggles small { color:#7e8c96; font-size:9px; line-height:1.45; }
.assessment-hr-change-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }.assessment-hr-change-grid[hidden],.assessment-hr-change-confirm[hidden] { display:none !important; }.assessment-hr-change-grid input,.assessment-hr-change-grid select { width:100%; }
.assessment-hr-change-confirm { display:grid !important; grid-template-columns:auto minmax(0,1fr); align-items:start; gap:8px; padding:10px; border-radius:6px; background:#eef8f5; color:#245f50 !important; }.assessment-hr-change-confirm input { width:16px; height:16px; margin:0; padding:0; accent-color:#168e75; }
.growth-task-list,.assessment-list { display:grid; }
.growth-timeline { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:0; margin:0 0 12px; padding:0; overflow:hidden; list-style:none; border:1px solid #c8dfec; border-radius:8px; background:#fff; box-shadow:0 7px 22px rgba(13,42,84,.05); }
.growth-timeline-stage { position:relative; min-width:0; }
.growth-timeline-stage::after { position:absolute; z-index:0; top:31px; right:-14px; width:28px; height:2px; background:#d6e4ee; content:""; }
.growth-timeline-stage:last-child::after { display:none; }
.growth-timeline-stage button { position:relative; z-index:1; width:100%; min-height:88px; display:grid; grid-template-columns:34px minmax(0,1fr); align-items:center; gap:9px; padding:14px; border:0; background:transparent; color:inherit; text-align:left; cursor:pointer; }
.growth-timeline-stage button > span { display:grid; width:32px; height:32px; place-items:center; border:2px solid #b8cfdf; border-radius:50%; background:#fff; color:#6b8294; font-size:10px; font-weight:900; }
.growth-timeline-stage button > div { min-width:0; display:grid; gap:4px; }
.growth-timeline-stage b { color:var(--ink); font-size:12px; }
.growth-timeline-stage small { overflow:hidden; color:var(--muted); font-size:9px; line-height:1.45; text-overflow:ellipsis; white-space:nowrap; }
.growth-timeline-stage.done button > span { border-color:#12a89b; background:#12a89b; color:#fff; }
.growth-timeline-stage.current button > span { border-color:#b9ec4a; background:#0d8f88; color:#fff; box-shadow:0 0 0 4px #e3f7e9; }
.growth-timeline-stage.current b { color:#087d78; }
.growth-timeline-stage.selected button { background:linear-gradient(125deg,#eafcff,#effcf2); }
.growth-timeline-stage.selected b { color:#087d78; }
.growth-stage-details { margin-bottom:14px; }
.growth-stage-detail[hidden] { display:none; }
.growth-stage-detail { overflow:hidden; border:1px solid #c8dfec; border-radius:8px; background:#fff; box-shadow:0 8px 25px rgba(13,42,84,.06); }
.growth-stage-detail > header { position:relative; padding:18px 20px; background:linear-gradient(115deg,#f1fbff,#f4fff4); }
.growth-stage-detail > header > span { color:#087f94; font-size:10px; font-weight:900; }
.growth-stage-detail > header h3 { margin:5px 0; color:var(--ink); font-size:20px; }
.growth-stage-detail > header p { max-width:780px; margin:0; color:var(--muted); font-size:11px; line-height:1.6; }
.growth-stage-detail > header > b { position:absolute; top:18px; right:20px; padding:5px 7px; border-radius:5px; background:#dff7eb; color:#087a65; font-size:9px; }
.growth-stage-detail-grid { display:grid; grid-template-columns:1fr 1.08fr; gap:12px; padding:14px; }
.growth-stage-detail-grid > article { min-width:0; padding:14px; border:1px solid #d7e5ec; border-radius:7px; background:#fbfdfe; }
.growth-stage-detail-grid > article > div { display:flex; align-items:center; justify-content:space-between; gap:8px; padding-bottom:9px; border-bottom:1px solid #dce8ee; }
.growth-stage-detail-grid > article > div span { color:#087f94; font-size:12px; font-weight:900; }
.growth-stage-detail-grid > article > div b { padding:4px 6px; border-radius:5px; background:#e7f6fa; color:#087b9d; font-size:9px; }
.growth-stage-training-actions { display:flex; align-items:center; gap:7px; }
.growth-stage-training-action { display:inline-flex; align-items:center; min-height:28px; padding:0 10px; border-radius:6px; background:linear-gradient(105deg,#0b92b5,#18b982); color:#fff !important; font-size:10px !important; font-weight:900; text-decoration:none; white-space:nowrap; box-shadow:0 5px 14px rgba(11,146,181,.16); }
.growth-stage-training-action:focus-visible { outline:3px solid rgba(27,200,216,.22); outline-offset:2px; }
.growth-stage-detail-grid > article > p { margin:10px 0 0; color:#71869a; font-size:9px; line-height:1.55; }
.growth-stage-skill-list,.growth-stage-plan-list { display:grid; gap:7px; margin:10px 0 0; padding:0; list-style:none; }
.growth-stage-skill-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
.growth-stage-skill-list li { display:grid; grid-template-columns:26px minmax(0,1fr); align-items:center; gap:8px; padding:9px; border:1px solid #dce8ee; border-radius:6px; background:#fff; }
.growth-stage-skill-list li span { display:grid; width:25px; height:25px; place-items:center; border-radius:5px; background:#e9f8fa; color:#087a8d; font-size:8px; font-weight:900; }
.growth-stage-skill-list li strong { overflow:hidden; color:var(--ink); font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.growth-stage-plan-list li { display:grid; grid-template-columns:48px minmax(0,1fr); align-items:center; gap:8px; padding:9px; border-left:3px solid #12afc0; border-radius:6px; background:#f2fafc; }
.growth-stage-plan-list time { color:#087f97; font-size:9px; font-weight:900; }
.growth-stage-plan-list strong,.growth-stage-plan-list small { display:block; }
.growth-stage-plan-list strong { color:var(--ink); font-size:10px; }
.growth-stage-plan-list small { margin-top:3px; color:var(--muted); font-size:8px; line-height:1.45; }
.growth-empty-note { margin:0 0 14px; padding:16px; border:1px dashed #b9ccda; border-radius:8px; color:var(--muted); font-size:12px; text-align:center; }
.growth-task-list li { display:grid; grid-template-columns:9px minmax(0,1fr) auto; align-items:center; gap:10px; padding:13px 0; border-bottom:1px solid var(--line); }
.growth-task-list li:last-child,.assessment-list li:last-child { border-bottom:0; }
.growth-task-list .empty-row,.assessment-list .empty-row { display:block; padding:20px 0; color:var(--muted); font-size:12px; text-align:center; }
.growth-task-state { width:9px; height:9px; border-radius:50%; background:#ffb033; }
.growth-task-state.completed { background:#20ae7c; }
.growth-task-state.in_progress { background:#1bc8d8; }
.growth-task-list li div { min-width:0; display:grid; gap:4px; }
.task-item-main { min-width:0; color:inherit; text-decoration:none; }
.task-item-main strong,.task-item-main small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.task-item-main strong { font-size:13px; }.task-item-main small { color:var(--muted); font-size:10px; }
.growth-task-list strong,.growth-task-list small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.growth-task-list strong { font-size:13px; }
.growth-task-list small { color:var(--muted); font-size:10px; }
.growth-task-list b { padding:4px 6px; border-radius:5px; background:#eff7fb; color:#28739a; font-size:10px; white-space:nowrap; }
.assessment-list li { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:8px; padding:12px 0; border-bottom:1px solid var(--line); }
.assessment-list time { color:#324e68; font-size:12px; font-weight:800; }
.assessment-list span { justify-self:end; padding:4px 6px; border-radius:5px; background:#edf7ff; color:#1972a9; font-size:10px; font-weight:900; }
.assessment-list small { grid-column:1/-1; color:var(--muted); font-size:10px; }
.assessment-panel > p { margin:12px 0 0; color:#8c6733; font-size:10px; line-height:1.55; }
.assessment-dashboard-entry { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-top:15px; padding:14px; border:1px solid #bfe0e8; border-radius:7px; background:linear-gradient(105deg,#f1fbfc,#f4f8ff); }.assessment-dashboard-entry > div { min-width:0; }.assessment-dashboard-entry span,.assessment-dashboard-entry strong,.assessment-dashboard-entry small { display:block; }.assessment-dashboard-entry span { color:#087b9d; font-size:10px; font-weight:900; }.assessment-dashboard-entry strong { margin-top:4px; color:#173c5d; font-size:13px; }.assessment-dashboard-entry small { margin-top:4px; color:#6d8599; font-size:10px; line-height:1.55; }.assessment-dashboard-entry a { flex:0 0 auto; padding:9px 12px; border-radius:6px; background:linear-gradient(105deg,#087f9e,#16b486); color:#fff; font-size:11px; font-weight:900; text-decoration:none; white-space:nowrap; }
.assessment-radar-pair { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-bottom:12px; }
.assessment-radar-pair.is-single { grid-template-columns:minmax(0,1fr); }
.assessment-radar-panel { min-width:0; padding:18px; }
.assessment-radar-meta { margin:8px 0 0; color:var(--muted); font-size:10px; line-height:1.55; }
.assessment-radar { display:block; width:min(100%,300px); height:auto; margin:12px auto; overflow:visible; }
.assessment-radar-grid polygon,.assessment-radar-grid line { fill:none; stroke:#c9dee8; stroke-width:1; }.assessment-radar-value { fill:rgba(16,166,149,.24); stroke:#079b8b; stroke-width:2; }.group-product .assessment-radar-value { fill:rgba(28,145,197,.22); stroke:#167fae; }.group-service .assessment-radar-value { fill:rgba(16,166,149,.24); stroke:#079b8b; }.assessment-radar text { fill:#58768c; font-size:9px; font-weight:800; text-anchor:middle; dominant-baseline:middle; }
.assessment-radar-scale { display:flex; flex-wrap:wrap; justify-content:center; gap:7px 12px; margin:-4px 0 11px; color:#58738a; font-size:9px; font-weight:800; }.assessment-radar-scale span { display:inline-flex; align-items:center; gap:5px; }.assessment-radar-scale i { width:8px; height:8px; border-radius:50%; }.assessment-radar-scale .tier-a { background:#20a878; }.assessment-radar-scale .tier-b { background:#2589bd; }.assessment-radar-scale .tier-c { background:#d7952f; }
.assessment-radar-list { display:grid; margin:0; padding:0; list-style:none; border-top:1px solid var(--line); }.assessment-radar-list li { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:8px; align-items:center; padding:9px 0; border-bottom:1px solid var(--line); }.assessment-radar-list strong,.assessment-radar-list small { display:block; }.assessment-radar-list strong { font-size:12px; }.assessment-radar-list small { color:var(--muted); font-size:10px; }.assessment-radar-list b { min-width:25px; padding:3px 5px; border-radius:5px; background:#eef7fb; color:#27729a; font-size:10px; text-align:center; }.assessment-radar-list .tier-a { background:#e9f8ef; color:#187f59; }.assessment-radar-list .tier-c { background:#fff5e7; color:#986b22; }.assessment-radar-panel > p:last-child { margin:10px 0 0; color:#71899a; font-size:10px; line-height:1.55; }
@media (max-width:720px) {
  .growth-timeline { grid-template-columns:repeat(4,156px); overflow-x:auto; scrollbar-width:none; }
  .growth-timeline-stage::after { display:none; }
  .growth-timeline-stage button { min-height:82px; padding:12px; }
  .growth-stage-detail > header { padding:16px; }
  .growth-stage-detail > header h3 { padding-right:0; font-size:17px; }
  .growth-stage-detail > header > b { position:static; display:inline-block; margin-top:10px; }
  .growth-stage-detail-grid { grid-template-columns:1fr; padding:11px; }
  .growth-stage-skill-list { grid-template-columns:1fr; }
  .workbench-header { padding:15px 18px 66px; }
  .workbench-identity { margin-top:25px; }
  .workbench-identity h1 { font-size:22px; }
  .workbench-identity { grid-template-columns:52px minmax(0,1fr) 48px; gap:10px; }
  .workbench-avatar { width:52px; height:52px; font-size:21px; }
  .workbench-identity-code { width:48px; }
  .identity-code-page { width:min(100% - 24px,440px); padding-top:18px; }
  .employee-pagination { align-items:flex-start; flex-direction:column; }
  .workbench-shell { width:100%; margin-top:-40px; padding:0 12px 84px; }
  .growth-hero { grid-template-columns:1fr; min-height:0; padding:18px; gap:13px; }
  .growth-hero h2 { font-size:20px; }
  .growth-hero button { width:100%; }
  .workbench-metrics { grid-template-columns:repeat(4,122px); overflow-x:auto; padding-bottom:3px; scrollbar-width:none; }
  .workbench-metrics article { min-height:87px; }
  .workbench-grid { grid-template-columns:1fr; }
  .assessment-grid,.assessment-form-panel form,.assessment-skill-options { grid-template-columns:1fr; }
  .growth-panel { order:1; }
  .task-panel { order:2; }
  .assessment-panel { order:3; }
  .assessment-form-panel { order:1; }
  .assessment-grid { order:2; }
  .assessment-radar-pair { grid-template-columns:1fr; }
  .assessment-radar-panel { padding:15px; }
  .attendance-panel { order:4; }
  .profile-panel { order:5; }
  .salary-panel { order:6; }
  .salary-history-panel,.salary-history-empty { order:7; }
  .salary-history-head { display:grid; gap:10px; }
  .salary-history-legend { justify-content:flex-start; }
  .salary-trend-chart { min-height:216px; }
  .salary-trend-chart svg { height:177px; }
  .salary-trend-grid { inset:16px 6px 33px 35px; }
  .salary-trend-axis { top:15px; bottom:33px; font-size:8px; }
  .salary-trend-months { padding:0 5px 0 35px; font-size:8px; }
  .salary-history-insights { grid-template-columns:1fr; }
}
@media (max-width:720px) { .assessment-dashboard-entry { align-items:stretch; flex-direction:column; }.assessment-dashboard-entry a { text-align:center; } }
@media (max-width:720px) {
  .app-header { padding:16px 18px 28px; }
  .employee-shell { width:100%; margin-top:-12px; padding:0 12px 86px; }
  .metric-strip { grid-template-columns:repeat(4,112px); gap:8px; overflow-x:auto; padding:0 0 4px; scrollbar-width:none; }
  .metric-strip article { min-height:84px; }
  .content-grid { grid-template-columns:1fr; }
  .tasks-panel { order:1; }
  .attendance-panel { order:2; }
  .profile-panel { order:3; }
  .salary-panel { order:4; }
  .identity h1 { font-size:21px; }
  .profile-panel dl { grid-template-columns:1fr 1fr; }
  .admin-header-inner,.admin-shell { width:100%; padding-left:12px; padding-right:12px; }
  .admin-title { align-items:start; flex-direction:column; margin-top:24px; }
  .admin-title h1 { font-size:25px; }
  .admin-metrics { grid-template-columns:repeat(4,140px); overflow-x:auto; }
  .admin-grid { grid-template-columns:1fr; }
  .admin-growth-metrics { grid-template-columns:1fr; }
  .admin-domain-metrics { grid-template-columns:1fr; }
  .employee-search { width:52%; }
}

.home-honors { display:flex; align-items:center; justify-content:space-between; gap:18px; margin-top:12px; padding:16px; border:1px solid #c8dfec; border-radius:8px; background:linear-gradient(115deg,#f4fbff,#f6fff5); box-shadow:0 7px 22px rgba(13,42,84,.05); }
.home-honors span,.coach-inline span { color:#087b9d; font-size:10px; font-weight:900; }
.home-honors h2 { margin:4px 0; font-size:17px; }
.home-honors p { margin:0; color:var(--muted); font-size:11px; }
.home-honors > b { flex:0 0 auto; padding:6px 8px; border:1px solid #b8c9da; border-radius:5px; color:var(--muted); font-size:10px; }
.coach-inline { display:grid; gap:4px; margin-top:12px; padding:12px; border:1px dashed #b8c9da; border-radius:7px; background:#f8fbfd; }
.coach-inline strong { font-size:13px; }
.coach-inline small { color:var(--muted); font-size:10px; line-height:1.5; }
.employee-view { display:none; }
.employee-view.active { display:block; }
.employee-profile-completeness { display:grid; gap:14px; }
.profile-completeness-head { display:flex; align-items:start; justify-content:space-between; gap:18px; }
.profile-completeness-head > div { min-width:0; }
.profile-completeness-head span { color:#087b9d; font-size:10px; font-weight:900; }
.profile-completeness-head h2 { margin:4px 0; color:var(--ink); font-size:20px; }
.profile-completeness-head p { margin:0; color:var(--muted); font-size:11px; line-height:1.55; }
.profile-completeness-head > strong { flex:0 0 auto; color:#118d75; font-size:34px; line-height:1; }
.profile-completeness-progress { overflow:hidden; height:9px; border-radius:999px; background:#e8edf3; }
.profile-completeness-progress i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#b9ff27,#1bc8d8,#7f59f4); }
.profile-completeness-summary { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 12px; border-radius:7px; background:#f4fafb; color:#45637a; font-size:11px; }
.profile-completeness-summary b { color:#173b5f; }
.employee-profile-completion-form { display:grid; gap:12px; }
.profile-completion-guidance { margin:0; padding:10px 12px; border-left:3px solid #19b7c7; background:#f2fbfd; color:#526e84; font-size:11px; line-height:1.65; }
.employee-profile-completion-form form { display:grid; gap:12px; }
.employee-profile-completion-form fieldset { margin:0; padding:12px; border:1px solid #d4e5ed; border-radius:8px; background:#fbfdfe; }
.employee-profile-completion-form fieldset.is-private { border-color:#ead8ad; background:#fffdf8; }
.employee-profile-completion-form legend { padding:0 5px; color:#087b9d; font-size:10px; font-weight:900; }
.employee-profile-completion-form fieldset.is-private legend { color:#946510; }
.profile-completion-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.profile-completion-form-grid label { display:grid; gap:5px; color:#405b70; font-size:10px; font-weight:800; }
.profile-completion-form-grid input,.profile-completion-form-grid select { width:100%; min-width:0; min-height:38px; padding:8px 10px; border:1px solid #c7dfea; border-radius:6px; background:#fff; color:var(--ink); font:inherit; font-size:11px; outline:0; }
.profile-completion-form-grid input:focus,.profile-completion-form-grid select:focus { border-color:#1aa5ba; box-shadow:0 0 0 3px rgba(27,200,216,.12); }
.employee-profile-completion-form button[type="submit"] { justify-self:start; padding:10px 15px; border:0; border-radius:6px; background:linear-gradient(110deg,#0a91b4,#18b981); color:#fff; font:inherit; font-size:11px; font-weight:900; cursor:pointer; }
.employee-profile-completion-form fieldset:disabled,.employee-profile-completion-form button:disabled { opacity:.58; cursor:not-allowed; }
.employee-profile-completion-form form > small { color:var(--muted); font-size:10px; line-height:1.55; }
.employee-profile-sections { display:grid; gap:12px; }
.employee-profile-section { padding:13px; border:1px solid #d9e6ed; border-radius:8px; background:#fbfdff; }
.employee-profile-section.is-private { border-color:#e7d6aa; background:#fffdf8; }
.employee-profile-section > div { display:flex; align-items:center; justify-content:space-between; gap:10px; padding-bottom:10px; border-bottom:1px solid #e2ebf0; }
.employee-profile-section h3 { margin:0; color:#173b5f; font-size:14px; }
.employee-profile-section > div span { padding:4px 6px; border-radius:5px; background:#fff1ca; color:#8d6418; font-size:9px; font-weight:900; }
.employee-profile-section dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin:10px 0 0; }
.employee-profile-field { min-width:0; padding:10px; border:1px solid #e1e9ee; border-radius:6px; background:#fff; }
.employee-profile-field dt { display:flex; align-items:center; justify-content:space-between; gap:8px; color:#657f92; font-size:10px; }
.employee-profile-field dt small { color:#91a3b1; font-size:8px; font-weight:700; }
.employee-profile-field dd { display:flex; align-items:center; justify-content:space-between; gap:8px; min-width:0; margin:7px 0 0; color:#183a5b; font-size:12px; font-weight:900; overflow-wrap:anywhere; }
.employee-profile-field dd b { flex:0 0 auto; padding:3px 5px; border-radius:4px; background:#e9f8ef; color:#19734a; font-size:8px; }
.employee-profile-field.is-missing { border-color:#efc8c8; background:#fff8f8; }
.employee-profile-field.is-missing dd { color:#b04444; }
.employee-profile-field.is-missing dd b { background:#ffe4e4; color:#b13d3d; }
.employee-profile-field.is-pending { border-color:#e4c46b; background:#fffdf5; }
.employee-profile-field.is-pending dd b { background:#fff0bd; color:#8c6515; }
.profile-inline-trigger { width:100%; margin-top:9px; padding:8px 10px; border:1px dashed #d39494; border-radius:6px; background:#fff; color:#a43b3b; cursor:pointer; font:inherit; font-size:10px; font-weight:900; text-align:left; }
.employee-profile-field.is-pending .profile-inline-trigger { border-color:#d9bc65; color:#806016; }
.profile-inline-editor { display:grid; gap:8px; margin-top:9px; padding:10px; border:1px solid #c8dfe8; border-radius:7px; background:#fff; }
.profile-inline-editor[hidden] { display:none !important; }
.profile-inline-editor input,.profile-inline-editor select,.profile-inline-editor textarea { width:100%; min-width:0; min-height:38px; padding:8px 10px; border:1px solid #bed8e4; border-radius:6px; background:#fbfdff; color:var(--ink); font:inherit; font-size:11px; outline:0; }
.profile-inline-editor textarea { min-height:78px; line-height:1.55; resize:vertical; }
.profile-inline-editor input:focus,.profile-inline-editor select:focus,.profile-inline-editor textarea:focus { border-color:#18a9bd; box-shadow:0 0 0 3px rgba(27,200,216,.12); }
.profile-inline-editor > div { display:flex; gap:7px; }
.profile-inline-editor button { padding:8px 10px; border:0; border-radius:5px; background:#0a8dac; color:#fff; cursor:pointer; font:inherit; font-size:10px; font-weight:900; }
.profile-inline-editor button.secondary { border:1px solid #bfd7e2; background:#fff; color:#557287; }
.profile-inline-editor small,.profile-inline-managed,.profile-inline-global-status { color:#6f8496; font-size:9px; line-height:1.55; }
.profile-inline-managed { display:block; margin-top:8px; }
.profile-inline-room { display:grid; gap:5px; color:#536e81; font-size:10px; font-weight:800; }
.profile-inline-room[hidden] { display:none !important; }
.profile-inline-global-status { margin:0; padding:10px 12px; border-left:3px solid #19b7c7; border-radius:5px; background:#f2fbfd; }
.view-page-head { margin-bottom:12px; padding:18px; border:1px solid #c8dfec; border-radius:8px; background:linear-gradient(115deg,#f4fbff,#f6fff5); }
.view-page-head span { color:#087b9d; font-size:10px; font-weight:900; }
.view-page-head h2 { margin:4px 0; font-size:22px; }
.view-page-head p { margin:0; color:var(--muted); font-size:12px; line-height:1.6; }
.single-view-grid { grid-template-columns:minmax(0,1fr); }
.settings-state { margin-top:12px; padding:14px; border:1px dashed #b8c9da; border-radius:8px; color:var(--muted); }
.settings-state span { color:#087b9d; font-size:10px; font-weight:900; }
.settings-state p { margin:5px 0 0; font-size:12px; }
.self-profile-panel { margin-top:12px; }
.self-profile-panel form { display:grid; gap:10px; padding-top:13px; }
.self-profile-panel label { display:grid; gap:6px; color:#42627c; font-size:11px; font-weight:800; }
.self-profile-panel input,.self-profile-panel textarea { width:100%; min-height:36px; padding:9px 10px; border:1px solid #c8dfec; border-radius:6px; outline:0; background:#f9fcfe; color:var(--ink); font:inherit; font-size:12px; resize:vertical; }
.self-profile-panel textarea { min-height:72px; line-height:1.5; }
.self-profile-panel input:focus,.self-profile-panel textarea:focus { border-color:#22a9bd; box-shadow:0 0 0 3px rgba(27,200,216,.12); }
.self-profile-panel button,.profile-review-actions button { justify-self:start; padding:9px 13px; border:0; border-radius:6px; background:linear-gradient(110deg,#0b92b5,#18b982); color:#fff; font:inherit; font-size:11px; font-weight:900; }
.self-profile-panel small { color:var(--muted); font-size:10px; line-height:1.5; }
.employee-bottom-nav { position:fixed; z-index:10; right:16px; bottom:16px; left:16px; display:none; grid-template-columns:repeat(5,minmax(0,1fr)); gap:3px; padding:7px; border:1px solid rgba(220,229,242,.95); border-radius:8px; background:rgba(255,255,255,.96); box-shadow:0 12px 30px rgba(13,42,84,.16); backdrop-filter:blur(12px); }
.employee-bottom-nav button { min-width:0; padding:8px 3px; border:0; border-radius:6px; background:transparent; color:var(--muted); font-size:11px; font-weight:800; }
.employee-bottom-nav button.active { background:linear-gradient(105deg,#e8f9fd,#effbf1); color:#087b9d; }
.admin-portal-layout { display:grid; gap:12px; align-items:start; }
.admin-module-nav { display:flex; align-items:center; gap:5px; position:sticky; z-index:3; top:10px; margin:0; padding:8px 10px; overflow-x:auto; border:1px solid #0a4b8f; border-radius:8px; background:linear-gradient(105deg,#071f55,#0a458e); box-shadow:0 9px 28px rgba(13,42,84,.14); scrollbar-width:none; }
.admin-module-nav::-webkit-scrollbar { display:none; }
.admin-module-nav > span { flex:0 0 auto; margin-right:5px; padding:0 10px 0 3px; border-right:1px solid rgba(255,255,255,.16); color:#c7f8ff; font-size:11px; font-weight:900; white-space:nowrap; }
.admin-module-nav button { flex:0 0 auto; padding:9px 10px; border:0; border-radius:6px; background:transparent; color:rgba(255,255,255,.68); font-size:11px; font-weight:800; text-align:left; white-space:nowrap; }
.admin-module-nav button.active { background:rgba(68,211,205,.18); color:#fff; }
.admin-module-content { min-width:0; }
.admin-module-note { padding:20px; border:1px dashed #b8c9da; border-radius:8px; background:#fff; }
.admin-module-note span { color:#087b9d; font-size:10px; font-weight:900; }
.admin-module-note h2 { margin:5px 0; font-size:20px; }
.admin-module-note p { margin:0; color:var(--muted); font-size:12px; line-height:1.6; }
.admin-profile-requests { padding:16px; border:1px solid var(--line); border-radius:8px; background:#fff; box-shadow:0 7px 22px rgba(13,42,84,.05); }
.admin-profile-requests > p { margin:10px 0 0; color:var(--muted); font-size:11px; line-height:1.6; }
.profile-request-list { display:grid; gap:10px; margin-top:14px; }
.profile-request-list li { display:grid; grid-template-columns:minmax(160px,.45fr) minmax(0,1fr) auto; gap:12px; align-items:start; padding:13px; border:1px solid var(--line); border-radius:7px; background:#f9fcfe; }
.profile-request-list li > div:first-child { display:grid; gap:4px; }
.profile-request-list strong { font-size:13px; }
.profile-request-list small { color:var(--muted); font-size:10px; }
.profile-request-list p { margin:0; color:#405b70; font-size:11px; line-height:1.65; word-break:break-word; }
.profile-request-list p b { color:var(--ink); }
.profile-review-actions { display:grid; gap:6px; }
.profile-review-actions button:last-child { background:#fff; border:1px solid #d4a0a0; color:#a24949; }
.admin-profile-workspace { min-width:0; margin-top:12px; padding:16px; border:1px solid var(--line); border-radius:8px; background:#fff; box-shadow:0 7px 22px rgba(13,42,84,.05); }
.admin-profile-layout { display:grid; grid-template-columns:minmax(0,1fr) 310px; gap:14px; align-items:start; margin-top:14px; }
.admin-overview-profile-layout { grid-template-columns:minmax(0,1fr); margin-top:12px; }
.admin-overview-profile-layout > div { min-width:0; }
.admin-profile-table td { white-space:nowrap; }
.admin-profile-table td:first-child,.admin-profile-table td:nth-child(2) { display:table-cell; min-width:0; }
.admin-growth-workspace { display:grid; gap:14px; }
.admin-growth-workspace[hidden] { display:none !important; }
.admin-growth-workspace .section-head,.admin-growth-workspace .data-note { margin:0; }
.admin-growth-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.admin-growth-metrics article { display:grid; gap:4px; min-height:98px; padding:14px; border:1px solid #d2e4eb; border-radius:7px; background:linear-gradient(135deg,#f8fdff,#f5fbf8); }
.admin-domain-workspace { display:grid; gap:14px; }
.admin-domain-workspace[hidden] { display:none !important; }
.admin-domain-workspace .section-head,.admin-domain-workspace .data-note { margin:0; }
.admin-domain-metrics { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.admin-domain-metrics article { display:grid; gap:4px; min-height:98px; padding:14px; border:1px solid #d2e4eb; border-radius:7px; background:linear-gradient(135deg,#f8fdff,#f5fbf8); }
.admin-domain-metrics span { color:#087b9d; font-size:10px; font-weight:900; }
.admin-domain-metrics strong { color:var(--ink); font-size:24px; line-height:1.1; }
.admin-domain-metrics small { color:var(--muted); font-size:9px; line-height:1.45; }
.hr-change-list { display:grid; gap:10px; }.hr-change-card { display:grid; gap:11px; padding:14px; border:1px solid #d5e5ec; border-left:4px solid #e7a432; border-radius:8px; background:#fbfdfe; }.hr-change-card.status-processed { border-left-color:#22a776; }.hr-change-card.status-returned { border-left-color:#d36a62; }.hr-change-card > header,.hr-change-card > footer { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; }.hr-change-card > header span { color:#087b9d; font-size:10px; font-weight:900; }.hr-change-card > header h3 { margin:4px 0 0; color:var(--ink); font-size:16px; }.hr-change-card > header b { padding:5px 7px; border-radius:5px; background:#fff3df; color:#9f6709; font-size:9px; white-space:nowrap; }.hr-change-card.status-processed > header b { background:#e9f8ef; color:#187549; }.hr-change-card > p { margin:0; color:#557086; font-size:10px; line-height:1.6; }.hr-change-card > footer small { color:var(--muted); font-size:9px; line-height:1.45; }
.hr-change-detail-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }.hr-change-detail-grid > div { display:grid; gap:4px; min-width:0; padding:11px; border:1px solid #dce9ef; border-radius:7px; background:#fff; }.hr-change-detail-grid span { color:#758b9d; font-size:9px; font-weight:900; }.hr-change-detail-grid strong { color:#173c5d; font-size:13px; }.hr-change-detail-grid small { color:var(--muted); font-size:9px; line-height:1.45; }
.hr-change-process { display:grid; grid-template-columns:minmax(0,1fr) auto auto; align-items:center; gap:8px; padding-top:10px; border-top:1px dashed #cfdee6; }.hr-change-process input { min-width:0; min-height:34px; padding:7px 9px; border:1px solid #c7deea; border-radius:6px; color:var(--ink); font:inherit; font-size:10px; }.hr-change-process button { padding:8px 10px; border:0; border-radius:6px; background:#118e7b; color:#fff; font:inherit; font-size:10px; font-weight:900; cursor:pointer; }.hr-change-process button.secondary { border:1px solid #d7a8a5; background:#fff; color:#a44b45; }.hr-change-process small { grid-column:1/-1; color:var(--muted); font-size:9px; }
.admin-growth-metrics span { color:#087b9d; font-size:10px; font-weight:900; }
.admin-growth-metrics strong { color:var(--ink); font-size:28px; line-height:1; }
.admin-growth-metrics small,.admin-growth-status small,.admin-growth-table td small { display:block; color:var(--muted); font-size:9px; line-height:1.45; }
.admin-growth-status { display:grid; gap:3px; padding:11px 12px; border-left:3px solid #1bc8d8; background:#f3fbfd; color:#36516d; font-size:11px; line-height:1.5; }
.admin-growth-table td { vertical-align:top; }
.admin-growth-table td:first-child { min-width:128px; }
.admin-growth-table td:nth-child(3) { min-width:124px; }
.admin-growth-table td:nth-child(4) { min-width:126px; }
.admin-growth-table td:nth-child(5) { min-width:112px; }
.admin-growth-table td:nth-child(8) { min-width:136px; }
.growth-stage-pill { display:inline-flex; padding:4px 6px; border-radius:5px; background:#e8f7fb; color:#087b9d; font-size:10px; font-weight:900; white-space:nowrap; }
.assessment-workbench,.assessment-history { display:grid; gap:12px; padding:14px; border:1px solid #cce4e9; border-radius:8px; background:#fbfeff; }
.assessment-workspace-grid { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(380px,.8fr); gap:12px; align-items:start; }
.assessment-workspace-grid > * { min-width:0; }
.assessment-workbench-head { display:flex; align-items:start; justify-content:space-between; gap:14px; }
.assessment-workbench-head > div { min-width:0; }
.assessment-workbench-head span { color:#087b9d; font-size:10px; font-weight:900; }
.assessment-workbench-head h3 { margin:4px 0; font-size:17px; }
.assessment-workbench-head p { margin:0; color:var(--muted); font-size:11px; line-height:1.6; }
.assessment-workbench-head > b { flex:0 0 auto; padding:5px 7px; border-radius:5px; background:#eaf7ef; color:#187549; font-size:10px; white-space:nowrap; }
.assessment-reminder-controls { display:flex; flex-wrap:wrap; align-items:center; gap:10px; padding:10px; border:1px solid #dceaf0; border-radius:7px; background:#f5fbfd; }
.assessment-search { display:flex; align-items:center; min-width:min(100%,330px); flex:1 1 240px; gap:8px; color:#42627c; font-size:10px; font-weight:900; }
.assessment-search input { width:100%; min-width:0; height:34px; padding:7px 9px; border:1px solid #c7dfeb; border-radius:5px; background:#fff; color:var(--ink); font:inherit; font-size:11px; outline:0; }
.assessment-search input:focus { border-color:#1aa5ba; box-shadow:0 0 0 3px rgba(27,200,216,.12); }
.assessment-select-all,.assessment-manager-option,.assessment-select { display:inline-flex; align-items:center; gap:7px; color:#36516d; font-size:10px; font-weight:800; cursor:pointer; }
.assessment-reminder-controls > strong { margin-left:auto; color:#087b9d; font-size:11px; }
.assessment-manager-picker { display:grid; grid-template-columns:minmax(170px,.25fr) minmax(0,1fr); gap:12px; padding:11px; border:1px solid #dceaf0; border-radius:7px; background:#fff; }
.assessment-manager-picker > div:first-child { display:grid; align-content:start; gap:4px; }
.assessment-manager-picker strong { font-size:12px; }.assessment-manager-picker small { color:var(--muted); font-size:10px; line-height:1.5; }
.assessment-manager-options { display:flex; flex-wrap:wrap; gap:7px; }
.assessment-manager-option { min-width:144px; padding:7px 8px; border:1px solid #d3e3eb; border-radius:6px; background:#f8fcfd; }
.assessment-manager-option span { display:grid; gap:2px; }.assessment-manager-option small { white-space:nowrap; }
.assessment-pending-table td:first-child { width:34px; }.assessment-pending-table td { vertical-align:top; }.assessment-pending-table td small { display:block; color:var(--muted); font-size:9px; line-height:1.5; }
.assessment-pending-table td:nth-child(2) { min-width:132px; }.assessment-pending-table td:nth-child(3) { min-width:140px; }.assessment-pending-table td:nth-child(4) { min-width:118px; }
.coach-arrangement { display:inline-flex; padding:4px 6px; border-radius:5px; font-size:9px; font-weight:900; }.coach-arranged { background:#e8f8ef; color:#187549; }.coach-unassigned { background:#fff4e3; color:#aa6509; }
.assessment-pagination { display:flex; align-items:center; justify-content:space-between; gap:10px; color:var(--muted); font-size:10px; }.assessment-pagination > div { display:flex; align-items:center; gap:6px; }.assessment-pagination button { padding:5px 8px; border:1px solid #bfd9e7; border-radius:5px; background:#fff; color:#087b9d; font:inherit; font-size:10px; font-weight:800; cursor:pointer; }.assessment-pagination button:disabled { cursor:not-allowed; opacity:.45; }.assessment-pagination b { color:#36516d; font-size:10px; }
.assessment-reminder-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; padding-top:2px; }
.assessment-reminder-footer small { color:var(--muted); font-size:10px; line-height:1.5; }.assessment-reminder-footer button { flex:0 0 auto; padding:9px 12px; border:0; border-radius:6px; background:linear-gradient(105deg,#087f9e,#16b486); color:#fff; font:inherit; font-size:11px; font-weight:900; cursor:pointer; }.assessment-reminder-footer button:disabled { cursor:not-allowed; opacity:.5; }
.assessment-rating { display:inline-flex; min-width:24px; justify-content:center; padding:4px 6px; border-radius:5px; font-size:11px; font-weight:900; }.assessment-rating-A { background:#e8f8ef; color:#187549; }.assessment-rating-B { background:#eaf5ff; color:#1977b6; }.assessment-rating-C { background:#fff4e3; color:#aa6509; }
.assessment-records-page { min-height:100vh; background:#f3f7fb; }.assessment-records-header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:14px max(18px,calc((100vw - 1120px)/2)); background:#092a60; }.assessment-records-header nav { display:flex; gap:14px; }.assessment-records-header nav a { color:rgba(255,255,255,.84); font-size:12px; font-weight:800; text-decoration:none; }.assessment-records-shell { width:min(1120px,calc(100% - 36px)); display:grid; gap:12px; margin:22px auto 48px; }.assessment-records-intro { padding:21px 23px; border:1px solid #c9e2ed; border-left:4px solid #15b9c9; border-radius:8px; background:#fff; box-shadow:0 8px 25px rgba(13,42,84,.06); }.assessment-records-intro > span,.assessment-records-head span { color:#087b9d; font-size:11px; font-weight:900; }.assessment-records-intro h1,.assessment-records-head h2 { margin:5px 0; color:var(--ink); }.assessment-records-intro p { margin:0; color:#5f7890; font-size:13px; line-height:1.6; }.assessment-records-intro small { display:block; margin-top:9px; color:#879bad; font-size:10px; }.assessment-records-metrics { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }.assessment-records-metrics article,.assessment-records-viz article,.assessment-records-table { min-width:0; padding:16px; border:1px solid #d8e6ee; border-radius:8px; background:#fff; box-shadow:0 7px 22px rgba(13,42,84,.05); }.assessment-records-metrics span { display:block; color:var(--muted); font-size:11px; font-weight:800; }.assessment-records-metrics strong { display:block; margin-top:7px; color:#12365c; font-size:28px; line-height:1; }.assessment-records-metrics small { display:block; margin-top:6px; color:#7b91a4; font-size:10px; }.assessment-records-viz { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }.assessment-records-head { display:flex; align-items:start; justify-content:space-between; gap:10px; padding-bottom:11px; border-bottom:1px solid var(--line); }.assessment-records-head h2 { font-size:17px; }.assessment-records-head b { padding:4px 6px; border-radius:5px; background:#edf8fb; color:#087b9d; font-size:10px; white-space:nowrap; }.assessment-records-head a { padding:6px 8px; border:1px solid #a8d2e5; border-radius:5px; color:#087b9d; font-size:11px; font-weight:900; text-decoration:none; }.assessment-records-bars { display:grid; gap:8px; margin:14px 0 0; padding:0; list-style:none; }.assessment-records-bars li { display:grid; grid-template-columns:minmax(88px,.9fr) minmax(50px,1.5fr) auto; align-items:center; gap:8px; min-width:0; }.assessment-records-bars span { overflow:hidden; color:#49677e; font-size:11px; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }.assessment-records-bars i { display:block; min-width:0; height:9px; border-radius:999px; background:linear-gradient(90deg,#13b9c9,#168c9e); }.assessment-records-bars b { color:#48647a; font-size:10px; white-space:nowrap; }.assessment-record-list { margin-top:12px; border:1px solid #dce8ef; border-radius:7px; overflow:hidden; }.assessment-record-columns,.assessment-record-summary { display:grid; grid-template-columns:minmax(150px,.9fr) minmax(180px,1.3fr) minmax(72px,.42fr); align-items:center; column-gap:18px; }.assessment-record-columns { padding:9px 14px; background:#f3f8fb; color:#668096; font-size:10px; font-weight:900; letter-spacing:.04em; }.assessment-record-item { border-top:1px solid #e2ebf1; background:#fff; }.assessment-record-item:first-of-type { border-top:0; }.assessment-record-summary { padding:13px 14px; cursor:pointer; list-style:none; transition:background .16s ease; }.assessment-record-summary::-webkit-details-marker { display:none; }.assessment-record-summary:hover,.assessment-record-summary:focus-visible { background:#f6fbfd; outline:none; }.assessment-record-summary time { color:#385a72; font-size:11px; font-weight:800; white-space:nowrap; }.assessment-record-person { min-width:0; }.assessment-record-person strong,.assessment-record-person small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.assessment-record-person strong { color:#193c5c; font-size:12px; }.assessment-record-person small { margin-top:3px; color:var(--muted); font-size:9px; }.assessment-record-level { display:flex; align-items:center; justify-content:space-between; gap:7px; }.assessment-record-level small { color:#7890a3; font-size:9px; font-weight:800; }.assessment-record-item[open] .assessment-record-summary { background:#edf8fb; }.assessment-record-item[open] .assessment-record-level small { font-size:0; }.assessment-record-item[open] .assessment-record-level small::after { content:"收起"; font-size:9px; }.assessment-record-detail { padding:15px 14px 17px; border-top:1px dashed #c9dce7; background:#fbfdfe; }.assessment-record-detail dl { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 18px; margin:0; }.assessment-record-detail dl div { min-width:0; }.assessment-record-detail dt,.assessment-record-note span { color:#7790a4; font-size:9px; font-weight:900; }.assessment-record-detail dd { margin:4px 0 0; color:#294b65; font-size:11px; font-weight:800; line-height:1.5; }.assessment-record-detail dd small { display:block; margin-top:2px; color:var(--muted); font-size:9px; font-weight:600; }.assessment-record-note { margin-top:13px; padding:12px; border-left:3px solid #15b9c9; border-radius:4px; background:#f0f9fb; }.assessment-record-note p { margin:5px 0 0; color:#31536b; font-size:11px; line-height:1.65; white-space:pre-wrap; }.assessment-record-empty { margin:0; padding:24px 14px; text-align:center; }
.assessment-record-columns,.assessment-record-summary { grid-template-columns:minmax(140px,.92fr) minmax(140px,1fr) minmax(120px,1fr) minmax(64px,.38fr); column-gap:16px; }
.assessment-record-person,.assessment-record-skill { min-width:0; }
.assessment-record-skill { overflow:hidden; color:#31556f; font-size:11px; font-weight:800; text-overflow:ellipsis; white-space:nowrap; }
.assessment-dashboard-record-list .assessment-record-columns,.assessment-dashboard-record-list .assessment-record-summary { grid-template-columns:minmax(150px,.9fr) minmax(180px,1.3fr) minmax(72px,.42fr); column-gap:18px; }
@media (max-width:980px) { .assessment-workspace-grid { grid-template-columns:1fr; } }
@media (max-width:720px) { .assessment-workbench-head,.assessment-reminder-footer { align-items:stretch; flex-direction:column; }.assessment-workbench-head > b { align-self:flex-start; }.assessment-manager-picker { grid-template-columns:1fr; }.assessment-manager-option { min-width:calc(50% - 4px); }.assessment-reminder-controls > strong { width:100%; margin-left:0; }.assessment-reminder-footer button { width:100%; }.assessment-pagination { align-items:stretch; flex-direction:column; }.assessment-pagination > div { justify-content:space-between; } }
@media (max-width:720px) { .assessment-records-header { padding:12px; }.assessment-records-header nav { gap:10px; }.assessment-records-shell { width:calc(100% - 24px); margin:12px auto 32px; }.assessment-records-intro { padding:17px 15px; }.assessment-records-metrics,.assessment-records-viz { grid-template-columns:1fr 1fr; }.assessment-records-metrics article { padding:13px; }.assessment-records-metrics strong { font-size:24px; }.assessment-records-viz { grid-template-columns:1fr; }.assessment-records-viz article,.assessment-records-table { padding:13px; }.assessment-record-columns,.assessment-record-summary { grid-template-columns:78px minmax(70px,.86fr) minmax(70px,1fr) 38px; column-gap:6px; padding-left:9px; padding-right:9px; }.assessment-record-summary time { white-space:normal; line-height:1.4; }.assessment-record-person strong,.assessment-record-skill { font-size:10px; }.assessment-record-level { justify-content:flex-start; }.assessment-record-level small { display:none; }.assessment-record-detail { padding:13px 10px 15px; }.assessment-record-detail dl { grid-template-columns:1fr; gap:9px; }.assessment-records-bars li { grid-template-columns:88px minmax(48px,1fr) auto; } }
@media (max-width:720px) { .assessment-dashboard-record-list .assessment-record-columns,.assessment-dashboard-record-list .assessment-record-summary { grid-template-columns:92px minmax(0,1fr) 58px; column-gap:9px; padding-left:10px; padding-right:10px; } }
.profile-source-cell { min-width:155px; white-space:normal !important; }
.profile-source { display:inline-flex; margin:2px 3px 2px 0; padding:3px 5px; border-radius:5px; font-size:9px; font-weight:900; white-space:nowrap; }
.source-wecom { background:#e8f8ef; color:#187549; }.source-salary { background:#eaf5ff; color:#1977b6; }.source-manual { background:#fff5df; color:#a96d0b; }
.profile-source-note { margin:0; padding:8px 9px; border-left:3px solid #1bc8d8; background:#f3fcfd; color:#607b91; font-size:10px; line-height:1.55; }
.local-profile-state { display:inline-flex; padding:4px 7px; border-radius:5px; background:#edf5fb; color:#29709b; font-size:10px; font-weight:800; }
.admin-table-action { padding:6px 10px; border:1px solid #94c4dc; border-radius:5px; background:#fff; color:#087b9d; font-size:10px; font-weight:900; cursor:pointer; }
.admin-row-actions { display:flex !important; min-width:132px; gap:6px; align-items:center; }
.admin-row-actions a { text-decoration:none; }
.admin-profile-editor { position:sticky; top:14px; display:grid; gap:13px; padding:14px; border:1px solid #b9dbe7; border-radius:8px; background:#f7fcfe; }
.admin-profile-editor[hidden] { display:none !important; }
.admin-overview-profile-layout .admin-profile-editor { position:static; width:100%; }
.admin-profile-editor > div { display:grid; gap:4px; padding-bottom:11px; border-bottom:1px solid #d8e9ef; }
.admin-profile-editor > div span { color:#087b9d; font-size:10px; font-weight:900; }
.admin-profile-editor h3 { margin:0; font-size:17px; }
.admin-profile-editor small { color:var(--muted); font-size:10px; line-height:1.5; }
.admin-profile-editor form { display:grid; gap:10px; }
.admin-profile-editor label { display:grid; gap:5px; color:#405b70; font-size:10px; font-weight:800; }
.admin-profile-editor input,.admin-profile-editor textarea,.admin-profile-editor select { width:100%; min-height:36px; padding:8px 9px; border:1px solid #c8dfec; border-radius:6px; outline:0; background:#fff; color:var(--ink); font:inherit; font-size:11px; resize:vertical; }
.admin-profile-editor textarea { min-height:68px; line-height:1.5; }
.admin-profile-editor input:focus,.admin-profile-editor textarea:focus,.admin-profile-editor select:focus { border-color:#22a9bd; box-shadow:0 0 0 3px rgba(27,200,216,.12); }
.admin-profile-editor button { justify-self:start; padding:9px 12px; border:0; border-radius:6px; background:linear-gradient(110deg,#0b92b5,#18b982); color:#fff; font:inherit; font-size:11px; font-weight:900; cursor:pointer; }
.profile-edit-group { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; margin:0; padding:10px; border:1px solid #d5e6ee; border-radius:7px; }
.profile-edit-group legend { padding:0 4px; color:#087b9d; font-size:10px; font-weight:900; }
.profile-edit-group label:nth-last-child(1):nth-child(odd),.profile-edit-group label:has(textarea) { grid-column:1 / -1; }
.private-profile-group { border-color:#e8d4a8; background:#fffdf7; }
.private-profile-group legend { color:#9a6813; }
.private-profile-warning,.private-profile-migration-note { grid-column:1 / -1; margin:0; padding:8px 9px; border-left:3px solid #e4a72e; background:#fff7df; color:#765820; font-size:10px; line-height:1.55; }
.private-profile-migration-note { border-left-color:#c64f4f; background:#fff0f0; color:#8b3535; }
.private-profile-group label small { min-height:15px; color:#8b6a2e; font-size:9px; font-weight:600; }
.private-profile-group [data-dormitory-room][hidden] { display:none !important; }
.role-level-workspace { margin-top:12px; padding:16px; border:1px solid var(--line); border-radius:8px; background:#fff; box-shadow:0 7px 22px rgba(13,42,84,.05); }
.level-definition-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; margin-top:14px; }
.level-definition { display:grid; grid-template-columns:36px minmax(0,1fr); gap:10px; align-items:start; padding:13px; border:1px solid var(--line); border-radius:7px; background:#f8fbfe; }
.level-definition > b { display:grid; place-items:center; width:36px; height:36px; border-radius:6px; color:#fff; font-size:18px; }
.level-a > b { background:#168957; }.level-b > b { background:#087af0; }.level-c > b { background:#d87a21; }
.level-definition strong { font-size:13px; }.level-definition p { margin:4px 0 0; color:var(--muted); font-size:10px; line-height:1.55; }
.position-group-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:14px; }
.position-group-card { padding:14px; border:1px solid var(--line); border-radius:7px; background:#fff; }.position-group-card > div { display:flex; align-items:center; justify-content:space-between; gap:8px; padding-bottom:10px; border-bottom:1px solid var(--line); }.position-group-card span { color:#087b9d; font-size:11px; font-weight:900; }.position-group-card > div b { color:var(--muted); font-size:10px; }.position-group-card ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px; margin-top:10px; }.position-group-card li { display:flex; align-items:center; justify-content:space-between; gap:6px; min-width:0; padding:8px; border-radius:5px; background:#f5f8fc; }.position-group-card li strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:11px; }.position-group-card li small { flex:0 0 auto; color:#087b9d; font-size:9px; font-weight:900; }.role-level-note { margin:14px 0 0; padding:11px; border-left:3px solid #1bc8d8; background:#f7fcfe; color:var(--muted); font-size:10px; line-height:1.65; }
.admin-permission-empty-nav { margin:0; padding:7px 9px; color:rgba(255,255,255,.68); font-size:10px; white-space:nowrap; }
.admin-empty-permission-workspace { display:grid; place-items:start; gap:7px; min-height:220px; align-content:center; }
.admin-empty-permission-workspace > span,.admin-permission-editor > div span { color:#087b9d; font-size:10px; font-weight:900; }
.admin-empty-permission-workspace h2,.admin-permission-editor h3 { margin:0; color:var(--ink); }
.admin-empty-permission-workspace p { margin:0; color:var(--muted); font-size:12px; }
.admin-permission-workspace { display:grid; gap:14px; }.admin-permission-workspace[hidden] { display:none !important; }.admin-permission-workspace .section-head,.admin-permission-workspace .data-note { margin:0; }
.admin-permission-layout { display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:12px; align-items:start; }.admin-permission-layout > * { min-width:0; }
.admin-role-pill { display:inline-flex; padding:4px 7px; border-radius:5px; background:#e7f7fb; color:#087b9d; font-size:10px; font-weight:900; white-space:nowrap; }
.admin-permission-editor { display:grid; gap:12px; padding:14px; border:1px solid #b9dbe7; border-radius:8px; background:#f7fcfe; }.admin-permission-editor > div { display:grid; gap:4px; padding-bottom:10px; border-bottom:1px solid #d8e9ef; }.admin-permission-editor form { display:grid; gap:11px; }.admin-permission-editor form > label { display:grid; gap:5px; color:#405b70; font-size:10px; font-weight:800; }
.admin-permission-editor select,.admin-permission-editor input[type="search"] { width:100%; min-height:38px; padding:8px 9px; border:1px solid #c8dfec; border-radius:6px; background:#fff; color:var(--ink); font:inherit; font-size:11px; }.admin-permission-editor input[type="search"]:focus,.admin-permission-editor select:focus { outline:2px solid rgba(11,146,181,.18); border-color:#0b92b5; }.admin-permission-editor .permission-employee-picker { gap:6px; }.admin-permission-editor .permission-employee-picker > span:first-child { color:#405b70; font-size:10px; font-weight:800; }.admin-permission-editor .permission-employee-combobox { position:relative; display:block; }.admin-permission-editor .permission-employee-options { position:absolute; z-index:30; top:calc(100% + 5px); left:0; right:0; max-height:280px; overflow:auto; padding:5px; border:1px solid #a8cfde; border-radius:7px; background:#fff; box-shadow:0 14px 30px rgba(22,58,77,.18); }.admin-permission-editor .permission-employee-options[hidden] { display:none; }.admin-permission-editor .permission-employee-options button { display:block; width:100%; padding:9px 10px; border:0; border-radius:5px; background:transparent; color:#263d4f; text-align:left; font:inherit; font-size:11px; cursor:pointer; }.admin-permission-editor .permission-employee-options button:hover,.admin-permission-editor .permission-employee-options button.is-active { background:#e8f7fb; color:#087b9d; }.admin-permission-editor [data-permission-employee-result] { min-height:15px; color:#537086; font-size:9px; line-height:1.5; }.admin-permission-editor [data-permission-employee-result].is-empty { color:#a85643; }.admin-permission-editor fieldset { display:grid; gap:7px; margin:0; padding:10px; border:1px solid #d5e6ee; border-radius:7px; }.admin-permission-editor legend { padding:0 4px; color:#087b9d; font-size:10px; font-weight:900; }.admin-permission-editor fieldset label { display:flex; align-items:flex-start; gap:8px; padding:7px; border-radius:5px; background:#fff; color:#36516d; cursor:pointer; }.admin-permission-editor fieldset label > span { display:grid; gap:2px; }.admin-permission-editor fieldset strong { font-size:11px; }.admin-permission-editor fieldset small { color:var(--muted); font-size:9px; line-height:1.4; }.admin-permission-editor .permission-modules-disabled { opacity:.5; }.admin-permission-editor .permission-enabled { display:flex; grid-template-columns:auto 1fr; align-items:center; }.admin-permission-editor button[type="submit"] { justify-self:start; padding:10px 13px; border:0; border-radius:6px; background:linear-gradient(110deg,#0b92b5,#18b982); color:#fff; font:inherit; font-size:11px; font-weight:900; cursor:pointer; }.admin-permission-editor [data-permission-status] { color:var(--muted); font-size:10px; line-height:1.5; }
.admin-permission-editor .permission-sensitive-actions { border-color:#ead7a9; background:#fffdf7; }.admin-permission-editor .permission-sensitive-actions legend { color:#93620c; }.admin-permission-editor .permission-sensitive-actions label { border:1px solid #efe2c0; }
.admin-permission-editor .permission-independent-actions { border-color:#bfe1e8; background:#f4fbfc; }.admin-permission-editor .permission-independent-actions label { border:1px solid #d6ebef; }
@media (max-width:720px) {
  .workbench-shell { scroll-margin-top:12px; padding-bottom:96px; }
  .workbench-panel { scroll-margin-top:12px; }
  .employee-bottom-nav { display:grid; }
  .profile-completeness-head > strong { font-size:29px; }
  .profile-completeness-summary { align-items:flex-start; flex-direction:column; }
  .profile-completion-form-grid { grid-template-columns:1fr; }
  .employee-profile-completion-form button[type="submit"] { width:100%; }
  .employee-profile-section dl { grid-template-columns:1fr; }
  .profile-inline-editor > div { display:grid; grid-template-columns:1fr 1fr; }
  .profile-inline-editor button { width:100%; }
  .profile-inline-trigger,.profile-inline-editor { animation:none; transition:none; }
  .profile-inline-trigger,.profile-inline-editor button { touch-action:manipulation; }
  .profile-inline-editor input,.profile-inline-editor select,.profile-inline-editor textarea { font-size:16px; transform:none; animation:none; transition:none; }
  .home-honors { align-items:start; }
  .admin-portal-layout { grid-template-columns:1fr; }
  .admin-module-nav { position:static; display:flex; align-items:center; overflow-x:auto; scrollbar-width:none; }
  .admin-module-nav > span { flex:0 0 auto; padding:0 8px 0 0; border:0; }
  .admin-module-nav button { flex:0 0 auto; }
  .profile-request-list li { grid-template-columns:1fr; }
  .admin-profile-completion-metrics { grid-template-columns:1fr; }
  .profile-review-actions { display:flex; }
  .admin-profile-layout { grid-template-columns:1fr; }
  .admin-profile-editor { position:static; }
  .profile-edit-group { grid-template-columns:1fr; }
  .profile-edit-group label { grid-column:1 !important; }
  .employee-directory-actions { width:100%; justify-content:space-between; }
  .employee-search { width:min(100%,300px); }
  .level-definition-grid,.position-group-grid { grid-template-columns:1fr; }
  .admin-permission-layout { grid-template-columns:1fr; }
  .assessment-hr-change-toggles,.assessment-hr-change-grid,.hr-change-detail-grid { grid-template-columns:1fr; }
  .hr-change-card > header,.hr-change-card > footer { align-items:flex-start; flex-direction:column; }
  .hr-change-process { grid-template-columns:1fr; }
  .hr-change-process button { width:100%; }
  .growth-stage-training-card > div { align-items:flex-start; }
  .growth-stage-training-actions { flex-wrap:wrap; justify-content:flex-end; }
}
