:root{--primary: #0f172a;--primary-light: #1e293b;--accent: #2563eb;--accent-hover: #1d4ed8;--accent-light: #eff6ff;--bg-main: #f8fafc;--bg-card: #ffffff;--text-main: #0f172a;--text-muted: #64748b;--border: #e2e8f0;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .03), 0 2px 4px -2px rgba(0, 0, 0, .03);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .05), 0 4px 6px -4px rgba(0, 0, 0, .05);--shadow-premium: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--transition: all .25s cubic-bezier(.4, 0, .2, 1);color:var(--text-main);background:var(--bg-main);font-family:Be Vietnam Pro,Inter,Segoe UI,ui-sans-serif,system-ui,-apple-system,sans-serif;font-size:14px;letter-spacing:0}*{box-sizing:border-box}body{margin:0;background-color:var(--bg-main);color:var(--text-main)}.login-shell{background:#111827;display:grid;min-height:100vh;overflow:hidden;padding:24px;place-items:center;position:relative}.login-shell:before{background:linear-gradient(90deg,#0f766e,#2563eb,#64748b);content:"";height:4px;left:0;position:absolute;right:0;top:0}.login-shell:after{content:none}.login-panel{background:#fff;border:1px solid #d8e0e8;border-radius:10px;display:grid;gap:14px;padding:34px 32px 28px;width:min(420px,calc(100vw - 32px));box-shadow:0 24px 56px #0000003d;z-index:1}.brand-logo{height:46px;width:auto;object-fit:contain;filter:drop-shadow(0 2px 4px rgba(0,0,0,.05));transition:var(--transition)}.login-shell .brand{flex-direction:column;text-align:center;gap:10px;margin-bottom:8px}.login-shell .brand strong{font-size:20px;color:var(--primary);letter-spacing:0}.login-shell .brand span{font-size:13px;color:var(--text-muted);font-weight:500}.login-field{display:grid;gap:6px}.login-field span{color:#475569;font-size:12px;font-weight:600}.sandbox-login{align-items:center;background:#f8fafc;border:1px solid #dbe4ee;border-radius:8px;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto;margin-top:2px;padding:10px}.sandbox-login div{display:grid;gap:2px}.sandbox-login strong{color:#0f172a;font-size:13px}.sandbox-login span{color:#64748b;font-size:12px;line-height:1.35}.sandbox-login button{background:#fff;color:#1e40af;white-space:nowrap}.demo-login-tabs{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin:4px 0}.demo-login-tabs button{justify-content:center;min-width:0;text-align:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:var(--radius-sm);color:var(--text-main);font-size:12px;font-weight:500;padding:6px 10px;transition:var(--transition)}.demo-login-tabs button:hover{background:var(--accent-light);border-color:var(--accent);color:var(--accent)}.demo-login-tabs button:last-child:nth-child(odd){grid-column:1 / -1}button,input,select,textarea{font:inherit}button,.icon-button{align-items:center;background:#fff;border:1px solid #c9d2dc;border-radius:var(--radius-sm);color:var(--text-main);cursor:pointer;display:inline-flex;gap:8px;min-height:36px;padding:8px 12px;text-decoration:none;font-weight:500;transition:var(--transition)}button:hover,.icon-button:hover{border-color:var(--accent);background-color:var(--bg-main);color:var(--accent)}button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.55}button:focus-visible,.icon-button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.login-panel input{background:#fff;border:1px solid #cbd5e1;border-radius:var(--radius-sm);min-height:40px;padding:10px 14px;width:100%;transition:var(--transition)}.login-panel input:focus{border-color:var(--accent);box-shadow:0 0 0 3px #2563eb26;outline:none}.login-panel>.login-primary{justify-content:center;background:#059669;color:#fff;border:none;font-weight:600;font-size:15px;min-height:42px;border-radius:var(--radius-sm);box-shadow:0 4px 6px #10b98129;transition:var(--transition)}.login-panel>.login-primary:hover{transform:translateY(-1px);box-shadow:0 6px 12px #10b98138;background:#047857}.login-panel>.login-primary[disabled]{background:#94a3b8;cursor:not-allowed;box-shadow:none;transform:none}.login-panel>.login-secondary{justify-content:center;background:transparent;color:#475569;border:1px solid #cbd5f5;font-weight:500;min-height:40px;border-radius:var(--radius-sm);margin-top:6px}.login-hint{display:flex;align-items:center;gap:6px;background:#ecfeff;color:#0e7490;border:1px solid #a5f3fc;padding:8px 12px;border-radius:var(--radius-sm);font-size:13px;margin:0}.login-warning{background:#fef3c7;color:#92400e;border:1px solid #fcd34d;padding:6px 10px;border-radius:var(--radius-sm);font-size:12px;margin:0}.account-actions{display:flex;gap:6px;margin-top:8px;flex-wrap:wrap}.account-action{display:inline-flex;align-items:center;gap:4px;background:#ffffff14;color:#ffffffe6;border:1px solid rgba(255,255,255,.18);border-radius:6px;padding:4px 8px;font-size:11.5px;cursor:pointer;transition:var(--transition)}.account-action:hover{background:#ffffff29;border-color:#ffffff4d}.sidebar-sandbox{display:grid;gap:8px;background:#f59e0b1a;border:1px solid rgba(245,158,11,.32);border-radius:10px;padding:10px 12px}.sidebar-sandbox-head{align-items:center;color:#fbbf24;display:inline-flex;font-size:11px;font-weight:700;gap:6px;letter-spacing:.05em;text-transform:uppercase}.sidebar-sandbox-field{display:grid;gap:4px}.sidebar-sandbox-field span{color:#cbd5e1;font-size:11px;font-weight:600}.sidebar-sandbox-field select{background:#fff;border:1px solid #fcd9a3;border-radius:var(--radius-sm);color:#0f172a;min-height:34px;padding:6px 10px;width:100%;transition:var(--transition)}.sidebar-sandbox-field select:focus{border-color:#f59e0b;box-shadow:0 0 0 3px #f59e0b33;outline:none}.sidebar-sandbox-reset{align-items:center;background:#f59e0b29;border:1px solid rgba(245,158,11,.4);border-radius:var(--radius-sm);color:#fde68a;cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:6px;justify-content:center;min-height:34px;padding:6px 10px;transition:var(--transition)}.sidebar-sandbox-reset:hover:not(:disabled){background:#f59e0b42;border-color:#f59e0b99;color:#fff}.sidebar-sandbox-reset:disabled{cursor:progress;opacity:.65}.app-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.app-shell.sidebar-collapsed{grid-template-columns:76px 1fr}.sidebar{align-self:start;background:linear-gradient(180deg,#0b132b,#1c2541);color:#f8fafc;display:flex;flex-direction:column;gap:20px;height:100vh;overflow-y:auto;padding:24px 16px;position:sticky;top:0;z-index:6;border-right:1px solid rgba(255,255,255,.04);box-shadow:4px 0 15px #0000000d}.sidebar-head{align-items:center;display:flex;gap:8px;justify-content:space-between}.sidebar-toggle{background:transparent;border:1px solid rgba(255,255,255,.1);color:#cbd5e1;min-height:32px;min-width:32px;padding:6px;border-radius:var(--radius-sm);transition:var(--transition)}.sidebar-toggle:hover{background:#ffffff0d;border-color:#ffffff40;color:#fff}.brand{align-items:center;display:flex;gap:12px;min-height:52px}.sidebar .brand-logo{height:38px;filter:drop-shadow(0 2px 4px rgba(255,255,255,.08))}.brand strong{font-weight:700;letter-spacing:0;color:#fff;font-size:15px}.brand span{color:#94a3b8;display:block;font-size:11px;margin-top:3px;font-weight:500}.field{display:grid;gap:6px}.field span{color:#94a3b8;font-size:11px;text-transform:uppercase;letter-spacing:.05em;font-weight:600}.field strong{color:#fff}.field small{color:var(--accent);font-weight:600;font-size:12px}.field select,.form-stack input,.form-stack select,.form-stack textarea{background:#fff;border:1px solid #cbd5e1;border-radius:var(--radius-sm);min-height:36px;padding:8px 12px;width:100%;transition:var(--transition)}.field select:focus,.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px #2563eb1f;outline:none}.form-stack textarea{min-height:88px;resize:vertical}.fi-account-source{background:#f8fafc;border:1px solid #dbe4ee;border-radius:8px;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));padding:10px}.fi-account-source div{display:grid;gap:3px;min-width:0}.fi-account-source span{color:#64748b;font-size:12px;font-weight:700}.fi-account-source strong{color:#0f172a;font-size:14px;overflow-wrap:anywhere}.fi-account-source .fi-author-cell{position:relative;z-index:2}.fi-author-picker{align-items:center;display:flex;position:relative}.fi-author-picker-icon{color:#64748b;left:11px;pointer-events:none;position:absolute}.fi-author-picker input{padding-left:34px;padding-right:32px}.fi-author-clear{align-items:center;background:transparent;border:0;border-radius:6px;color:#94a3b8;cursor:pointer;display:inline-flex;justify-content:center;min-height:0;padding:4px;position:absolute;right:6px}.fi-author-clear:hover{background:#eef2f7;color:#475569}.fi-author-list{background:#fff;border:1px solid #d8e2ec;border-radius:8px;box-shadow:0 18px 42px #0f172a29;display:grid;left:0;max-height:264px;min-width:248px;overflow:auto;padding:6px;position:absolute;right:0;top:calc(100% + 6px);z-index:30}.fi-author-list button{align-items:flex-start;background:transparent;border:0;border-radius:7px;color:#172033;cursor:pointer;display:grid;gap:2px;justify-items:start;min-height:0;padding:8px 10px;text-align:left;width:100%}.fi-author-list button:hover,.fi-author-list button:focus,.fi-author-list button[aria-selected=true]{background:#eef5ff;outline:none}.fi-author-list button strong{align-items:center;color:#172033;display:inline-flex;font-size:13.5px;font-weight:700;gap:7px}.fi-author-list button span{color:#607087;font-size:12px;font-weight:500}.fi-author-cell .fi-author-acct{color:#475569;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11.5px}.fi-author-cell .fi-author-self-badge{background:#dbeafe;border-radius:999px;color:#1d4ed8;font-size:10.5px;font-weight:700;letter-spacing:.02em;padding:1px 7px}.fi-author-empty{color:#607087;font-size:12px;line-height:1.45;padding:10px}.fi-author-cell .fi-author-empty strong{color:#0f172a;font-size:12px}.fi-author-proxy{align-items:center;color:#b45309;display:flex;flex-wrap:wrap;font-size:12px;gap:4px 8px;margin-top:6px}.fi-author-proxy svg{flex-shrink:0}.fi-author-cell .fi-author-proxy span{color:#b45309;font-size:12px;font-weight:500}.fi-author-cell .fi-author-proxy strong{color:#92400e;font-size:12px}.fi-author-proxy button{background:transparent;border:0;color:#1d4ed8;cursor:pointer;font-size:12px;font-weight:600;min-height:0;padding:0;text-decoration:underline}.fi-author-proxy button:hover{color:#1e40af}nav{display:grid;gap:6px}nav button{background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);color:#cbd5e1;justify-content:flex-start;font-weight:500;transition:var(--transition)}nav button:hover{background:#ffffff0d;color:#fff}nav button.active{background:#2563eb26;border-color:transparent;color:#3b82f6;border-left:3px solid #3b82f6;border-radius:var(--radius-sm);font-weight:600}.app-shell.sidebar-collapsed .sidebar{gap:16px;padding-inline:12px}.app-shell.sidebar-collapsed .sidebar-head{justify-content:center}.app-shell.sidebar-collapsed .sidebar .brand div,.app-shell.sidebar-collapsed .sidebar .field,.app-shell.sidebar-collapsed .sidebar .sidebar-sandbox,.app-shell.sidebar-collapsed nav button span{display:none}.app-shell.sidebar-collapsed nav button{justify-content:center;padding-inline:0}.workspace{display:grid;grid-template-rows:auto 1fr;min-width:0;background-color:var(--bg-main)}.topbar{align-items:center;background:#fff;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:10px 18px;justify-content:flex-start;padding:14px 28px;box-shadow:var(--shadow-sm)}.topbar-heading{flex-shrink:0}.fi-workspace-shell .topbar{position:sticky;top:0;z-index:40}.topbar-tabs{align-items:center;display:inline-flex;min-width:0}.topbar-tabs .segmented-control{background:#eef2f7;box-shadow:none;flex-wrap:nowrap;max-width:100%}.topbar-tabs .segmented-control button{align-items:center;display:inline-flex;gap:6px;justify-content:center;min-width:0;padding:6px 14px;white-space:nowrap}.topbar-tabs .segmented-control button svg{flex-shrink:0}@media(max-width:1200px){.topbar-tabs{flex-basis:100%;order:3}.topbar-tabs .segmented-control{width:100%}.topbar-tabs .segmented-control button{flex:1 1 0}}h1,h2,p{margin:0}h1{font-size:20px;font-weight:700;letter-spacing:0;color:var(--primary)}h2{font-size:15px;font-weight:600;color:var(--primary-light)}.topbar p{color:var(--text-muted);margin-top:3px;font-size:12px;font-weight:500}.topbar-tools,.notifications{align-items:center;display:flex;gap:12px}.topbar-tools{flex-shrink:0;margin-left:auto}.topbar-snapshot-btn{align-items:center;background:#fff;border:1px solid #d8e2ec;border-radius:8px;color:#0f172a;display:inline-flex;font-size:13px;font-weight:600;gap:6px;min-height:32px;padding:5px 10px;transition:var(--transition)}.topbar-snapshot-btn:hover:not(:disabled){background:#eef6ff;border-color:#bfdbfe;color:#1e40af}.topbar-snapshot-btn:disabled{opacity:.6}.edit-mode-toggle{align-items:center;background:#f8fafc;border:1px solid #cbd5e1;border-radius:999px;color:#475569;display:inline-flex;font-size:13px;font-weight:700;gap:8px;min-height:34px;padding:5px 11px 5px 6px;transition:var(--transition);white-space:nowrap}.edit-mode-toggle:hover{border-color:#94a3b8;color:#0f172a}.edit-mode-toggle.is-on{background:#ecfdf5;border-color:#86efac;color:#15803d}.edit-mode-switch{align-items:center;background:#cbd5e1;border-radius:999px;display:inline-flex;height:20px;padding:2px;transition:var(--transition);width:34px}.edit-mode-switch span{background:#fff;border-radius:999px;box-shadow:0 1px 4px #0f172a38;display:block;height:16px;transform:translate(0);transition:var(--transition);width:16px}.edit-mode-toggle.is-on .edit-mode-switch{background:#16a34a}.edit-mode-toggle.is-on .edit-mode-switch span{transform:translate(14px)}.workspace-notice{grid-column:1 / -1;margin:12px 28px 0}.notifications{position:relative}.notification-list{background:#fff;border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);display:none;gap:4px;min-width:260px;padding:8px;position:absolute;right:0;top:40px;z-index:10}.notifications:hover .notification-list{display:grid}.notification-list button{align-items:flex-start;border-color:transparent;display:grid;gap:3px;justify-items:start;text-align:left;width:100%;padding:8px 12px;border-radius:var(--radius-sm)}.notification-list button:hover{background:var(--bg-main)}.notification-list button.read{color:var(--text-muted);opacity:.8}.content-grid{align-items:start;display:grid;gap:16px;grid-template-columns:repeat(2,minmax(0,1fr));padding:20px 28px}.panel{align-content:start;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-md);display:grid;gap:14px;min-width:0;padding:20px;transition:var(--transition)}.panel:hover{box-shadow:var(--shadow-lg)}.panel.wide{grid-column:1 / -1}.panel-header,.toolbar,.workflow-item{align-items:center;display:flex;gap:8px}.panel-header,.workflow-item{justify-content:space-between}.muted{color:#607087;font-size:12px;margin-top:4px}.segmented-control{align-items:center;background:#f1f5f9;border:1px solid var(--border);border-radius:var(--radius-sm);display:inline-flex;flex-wrap:wrap;gap:3px;padding:3px}.segmented-control button{background:transparent;border:1px solid transparent;border-radius:var(--radius-sm);min-height:30px;min-width:42px;padding:5px 9px;font-weight:500;color:var(--text-muted);transition:var(--transition)}.segmented-control button.active{background:#fff;border-color:var(--border);box-shadow:var(--shadow-sm);color:var(--accent)}.tab-badge{align-items:center;background:#2563eb1f;border-radius:999px;color:#1d4ed8;display:inline-flex;font-size:11px;font-weight:700;justify-content:center;margin-left:6px;min-width:22px;padding:2px 8px}.segmented-control button.active .tab-badge{background:#ffffffd9;color:#1d4ed8}.fi-review-panel{display:flex;flex-direction:column;gap:14px}.fi-review-panel .panel-header{align-items:flex-start;display:flex;justify-content:space-between;gap:16px}.fi-review-panel .panel-header h2{margin:0}.fi-review-panel .panel-header p.muted{margin:4px 0 0;max-width:720px}.fi-review-filter{align-self:flex-start}.fi-review-filter button{align-items:center;display:inline-flex;gap:8px}.fi-review-panel .list{display:flex;flex-direction:column;gap:12px}.fi-review-panel .workflow-item{align-items:center;background:#fff;border-color:#dbe4ee;display:grid;gap:14px 16px;grid-template-columns:minmax(0,1fr) auto;padding:14px}.fi-review-panel .workflow-item.active-row,.fi-review-panel .workflow-item.review-open{background:#f8fbff;border-color:#9cc5ff}.fi-review-main{gap:7px;min-width:0}.fi-review-code{align-items:center;background:#eef6ff;border:1px solid #c7ddff;border-radius:6px;color:#1d4ed8;display:inline-flex;font-size:12px;font-weight:800;line-height:1.15;margin:0;padding:5px 8px;width:fit-content}.fi-review-title{color:#0f172a;font-size:15px;line-height:1.35;overflow-wrap:anywhere}.fi-review-meta,.fi-review-state-line{align-items:center;color:#475569;display:flex;flex-wrap:wrap;font-size:12px;font-weight:600;gap:8px;margin:0}.fi-review-meta svg{color:#64748b;flex-shrink:0}.fi-review-submitted,.fi-review-khmt{color:#607087;margin:0}.fi-review-toolbar{align-items:center;align-self:stretch;justify-content:flex-end}.fi-review-panel .fi-inline-review-panel{grid-column:1 / -1;margin-top:0}.fi-action-panel{position:sticky;top:12px;z-index:12}.fi-edit-modal-backdrop{align-items:center;background:#0f172a6b;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:28px;position:fixed;z-index:120}.fi-edit-modal{background:#fff;border:1px solid #d9e3ee;border-radius:8px;box-shadow:0 24px 70px #0f172a47;display:grid;gap:0;max-height:calc(100vh - 56px);overflow:hidden;width:min(920px,100%)}.fi-edit-modal-head{align-items:start;background:#fff;border-bottom:1px solid #e6edf5;display:flex;gap:16px;justify-content:space-between;padding:18px 22px 16px}.fi-edit-modal-title{display:grid;gap:8px;min-width:0}.fi-edit-modal-title-row{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.fi-edit-modal-title-row h2,.fi-edit-modal-meta{margin:0}.fi-edit-modal-title-row h2{font-size:18px}.fi-edit-modal-meta{align-items:center;color:#607087;display:flex;flex-wrap:wrap;font-size:13px;gap:8px}.fi-edit-modal-meta strong{color:#0f172a}.fi-edit-modal-meta span:not(:first-child):before{color:#94a3b8;content:"•";margin-right:8px}.fi-edit-modal-close{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:6px;color:#334155;display:inline-flex;height:34px;justify-content:center;min-height:34px;padding:0;width:34px}.fi-edit-modal-body{display:grid;gap:16px;overflow:auto;padding:20px 22px}.fi-edit-modal-alert{align-items:center;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;color:#075985;display:flex;font-size:13px;font-weight:700;gap:8px;padding:10px 12px}.fi-edit-field{display:grid;gap:7px}.fi-edit-field label,.fi-edit-date-field label{color:#334155;font-size:13px;font-weight:700;margin:0}.fi-edit-field input,.fi-edit-field textarea,.fi-edit-date-field input{width:100%}.fi-edit-content-field textarea{line-height:1.45;min-height:220px;resize:vertical}.fi-edit-plan-panel{align-items:end;background:#f8fafc;border:1px solid #dbe4ee;border-radius:8px;display:grid;gap:12px;grid-template-columns:minmax(180px,1fr) max-content minmax(190px,.8fr);padding:12px}.fi-edit-plan-copy{display:grid;gap:4px}.fi-edit-plan-copy strong{color:#0f172a;font-size:13px}.fi-edit-plan-copy span,.fi-edit-legacy-note{color:#607087;font-size:12px}.fi-edit-date-field{display:grid;gap:6px}.fi-edit-done-option{min-height:38px}.fi-edit-modal-actions{background:#f8fafc;border-top:1px solid #e6edf5;display:flex;gap:8px;justify-content:flex-end;padding:14px 22px}@media(max-width:700px){.fi-edit-modal-backdrop{align-items:stretch;padding:12px}.fi-edit-modal{max-height:calc(100vh - 24px)}.fi-edit-modal-head,.fi-edit-modal-actions{padding-left:14px;padding-right:14px}.fi-edit-modal-body{padding:14px}.fi-edit-modal-meta,.fi-edit-plan-panel{align-items:stretch;grid-template-columns:1fr}.fi-edit-plan-panel{gap:10px}.fi-edit-modal-actions{justify-content:stretch}.fi-edit-modal-actions button{flex:1}}.fi-inline-review-panel{background:#f8fbff;border:1px solid #cfe0f3;border-radius:8px;display:grid;gap:12px;margin-top:10px;padding:14px;width:100%}.fi-inline-review-head{align-items:start;display:flex;gap:12px;justify-content:space-between}.fi-inline-review-head h3,.fi-inline-review-head p{margin:0}.fi-inline-review-grid{display:grid;gap:12px;grid-template-columns:minmax(180px,.28fr) minmax(0,1fr)}.fi-inline-review-grid label{color:#334155;display:grid;font-size:13px;font-weight:700;gap:7px}.fi-inline-review-grid select,.fi-inline-review-grid textarea{font-weight:500}.fi-inline-review-actions{display:flex;flex-wrap:wrap;gap:8px}.fi-review-helper{color:#607087;font-size:13px;margin:0}.required-mark{color:#dc2626;font-weight:800}.okr-module-shell{min-width:0}.okr-module-tabs{align-items:center;display:flex;justify-content:flex-start;min-width:0;padding:20px 28px 0}.okr-module-tabs .segmented-control{background:#fff;box-shadow:var(--shadow-sm)}.okr-module-tabs button{justify-content:center;min-width:150px}.okr-module-tabs button svg{flex-shrink:0}@media(max-width:900px){.okr-module-tabs .segmented-control,.topbar-tabs .segmented-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.topbar-tabs .segmented-control button,.okr-module-tabs button{min-width:0}.okr-module-tabs{padding-inline:20px}}.fi-register-layout{align-items:start;display:grid;gap:16px;grid-column:1 / -1;grid-template-columns:minmax(440px,.95fr) minmax(420px,1.05fr);min-width:0}.fi-register-layout.single{grid-template-columns:minmax(0,1fr)}.fi-form-panel,.fi-processing-panel{min-width:0}.fi-processing-panel{align-self:start}.fi-processing-panel .list{gap:8px;max-height:min(340px,calc((100vh - 270px)/2));overflow:auto;padding-right:2px}.fi-list-block{min-width:0}.fi-list-block+.fi-list-block{border-top:1px solid #e2e8f0;margin-top:14px;padding-top:14px}.fi-list-block-head{align-items:flex-start;display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}.fi-list-block-head h3{align-items:center;color:#0f172a;display:flex;font-size:15px;gap:7px;line-height:1.25;margin:0 0 4px}.fi-list-block-head h3 svg{color:#2563eb;flex-shrink:0}.fi-list-block-head p{margin:0}.fi-processing-panel .workflow-item{align-items:flex-start;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto;padding:12px}.fi-processing-panel .fi-inline-review-panel{grid-column:1 / -1}.fi-processing-panel .workflow-main{gap:5px}.fi-processing-panel .workflow-main strong,.fi-processing-panel .workflow-main span{overflow-wrap:anywhere}.fi-processing-panel .workflow-item .toolbar{align-items:flex-start;justify-content:flex-end}.fi-review-command{color:#1d4ed8;font-weight:700;min-width:94px;justify-content:center}.fi-review-command span{color:inherit;display:inline;margin:0}@media(max-width:1200px){.fi-register-layout{grid-template-columns:1fr}.fi-processing-panel .list{max-height:none;overflow:visible;padding-right:0}}.icon-button input{display:none}.matrix{max-width:100%;overflow:auto}.okr-matrix-panel{gap:12px;overflow:hidden}.okr-matrix-panel .panel-header{align-items:flex-start;gap:12px}.okr-matrix-panel .panel-header>div:first-child{min-width:150px}.okr-matrix-panel .toolbar{flex-wrap:wrap;justify-content:flex-end;margin-left:auto}.okr-matrix{background:#fff;border:1px solid #d8e2ec;border-radius:6px;scrollbar-gutter:stable}.okr-matrix-table{border:0;border-collapse:separate;border-spacing:0;min-width:max-content;table-layout:fixed;width:max-content}.okr-team-column{width:62px}.okr-assessment-column{width:106px}.okr-discipline-column{width:66px}.okr-allocation-column{width:34px}.okr-kr-column{width:40px}.okr-matrix-table th,.okr-matrix-table td{border-right:1px solid #edf2f7;font-size:11px;height:44px;letter-spacing:0;padding:7px 5px;text-align:center;vertical-align:middle}.okr-matrix-table th:last-child,.okr-matrix-table td:last-child{border-right:0}.okr-matrix-table thead tr:first-child th{height:32px}.okr-matrix-table thead tr:nth-child(2) th{height:30px}.okr-matrix-table thead tr:first-child th:nth-child(-n+5){line-height:1.15;white-space:normal}.okr-matrix-table td:first-child{color:var(--primary);font-weight:700}.okr-matrix-table td:nth-child(2){line-height:1.25;text-align:left;white-space:normal}.okr-matrix-table .status{font-size:10px;min-width:32px;padding:2px 6px}.okr-matrix-table .matrix-status-button{justify-content:center;min-width:32px;width:100%}.okr-objective-group{background:#f1f5f9;border-left:3px solid var(--accent);font-weight:700;color:var(--primary)}.okr-matrix-overview{background:transparent;border:0;border-radius:0;display:grid;gap:14px;max-width:none;overflow:visible}.okr-matrix-summary-band,.okr-objective-card{background:#fff;border:1px solid #d8e2ec;border-radius:8px;box-shadow:0 1px 2px #0f172a0a;min-width:0}.okr-matrix-summary-band{display:grid;gap:10px;padding:12px}.okr-matrix-summary-heading{align-items:center;display:flex;gap:12px;justify-content:space-between}.okr-matrix-summary-heading div{display:grid;gap:2px}.okr-matrix-summary-heading strong{color:var(--primary);font-size:14px;font-weight:800;letter-spacing:0}.okr-matrix-summary-heading span{color:#607087;font-size:11px;font-weight:600}.okr-matrix-summary-heading>span{background:#eff6ff;border:1px solid #bfdbfe;border-radius:6px;color:#1d4ed8;padding:5px 8px;white-space:nowrap}.okr-team-summary-list{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.okr-team-summary-row{background:#f8fafc;border:1px solid #e3ebf3;border-radius:6px;display:grid;gap:9px;grid-template-columns:minmax(0,1fr);min-height:128px;padding:10px}.okr-team-summary-row.is-missing{background:#f8fafc;border-style:dashed}.okr-team-identity,.okr-team-assessment,.okr-team-status{display:grid;gap:3px;min-width:0}.okr-team-identity strong{color:var(--primary);font-size:14px;font-weight:800}.okr-team-identity span,.okr-team-assessment span,.okr-team-status span{color:#64748b;font-size:11px;font-weight:600}.okr-team-assessment strong{color:#0f172a;font-size:13px;font-weight:800;line-height:1.25;min-height:32px}.okr-team-status .status{border-radius:6px;font-size:10px;min-height:24px;min-width:54px;width:fit-content}.okr-team-allocation{display:grid;gap:6px;grid-template-columns:repeat(2,minmax(0,1fr))}.okr-team-allocation small{background:#f8fafc;border:1px solid #e3ebf3;border-radius:6px;color:#334155;font-size:11px;font-weight:700;min-height:26px;padding:5px 4px;text-align:center}.okr-objective-table-stack{display:grid;gap:12px}.okr-objective-card{border-top:3px solid #2563eb;display:grid;overflow:hidden;padding:0}.okr-objective-card-o1{border-top-color:#0ea5e9}.okr-objective-card-o2{border-top-color:#22c55e}.okr-objective-card-o3{border-top-color:#f59e0b}.okr-objective-card-o4{border-top-color:#8b5cf6}.okr-objective-card-o5{border-top-color:#ef4444}.okr-objective-card-o6{border-top-color:#14b8a6}.okr-objective-card-header{align-items:center;background:#fff;border-bottom:1px solid #e8eef5;display:flex;gap:12px;justify-content:space-between;min-height:48px;padding:10px 12px}.okr-objective-card-header>div:first-child{display:flex;align-items:baseline;gap:8px}.okr-objective-card-header strong{color:var(--primary);font-size:16px;font-weight:800}.okr-objective-card-header span{color:#64748b;font-size:11px;font-weight:700}.okr-objective-status-summary{align-items:center;display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.okr-objective-status-summary span{border:1px solid #d8e2ec;border-radius:6px;color:#334155;font-size:10px;font-weight:800;min-height:24px;padding:5px 7px}.okr-objective-status-summary .okr-summary-ok{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.okr-objective-status-summary .okr-summary-risk{background:#fef2f2;border-color:#fecaca;color:#991b1b}.okr-objective-status-summary .okr-summary-na{background:#f1f5f9;color:#475569}.okr-objective-table{overflow-x:auto}.okr-objective-table-row{align-items:stretch;border-top:1px solid #edf2f7;display:grid;min-width:100%}.okr-objective-table-row:first-child{border-top:0}.okr-objective-table-row.is-header{background:#f8fafc;color:#64748b;font-size:10px;font-weight:800;min-height:34px;text-transform:uppercase}.okr-objective-table-row.is-header span{align-items:center;border-right:1px solid #edf2f7;display:flex;justify-content:center;padding:8px 10px}.okr-objective-table-row.is-header span:nth-child(2){justify-content:flex-start}.okr-objective-table-row.is-header span:last-child{border-right:0}.okr-objective-table-row.active-kr{background:#fff7ed;box-shadow:inset 3px 0 #f97316}.okr-kr-code-cell,.okr-kr-name-cell,.okr-matrix-status-cell{background:transparent;border:0;border-radius:0;border-right:1px solid #edf2f7;color:inherit;min-height:42px;min-width:0;padding:8px 10px;width:100%}.okr-kr-code-cell{align-items:center;color:var(--primary);font-size:12px;font-weight:800;justify-content:flex-start}.okr-kr-name-cell{align-items:center;color:#0f172a;font-size:12px;font-weight:600;justify-content:flex-start;line-height:1.35;text-align:left;white-space:normal}.okr-matrix-status-cell{align-items:center;justify-content:center}.okr-matrix-status-cell:last-child{border-right:0}.okr-kr-code-cell:hover,.okr-kr-name-cell:hover,.okr-matrix-status-cell:hover{background:#eef6ff;border-color:transparent;color:inherit}.compact-status{align-items:center;border:1px solid #cbd5e1;border-radius:6px;display:inline-flex;font-size:10px;font-weight:800;height:24px;justify-content:center;letter-spacing:0;line-height:1;min-width:0;width:100%}.compact-status-ok{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.compact-status-good{background:#eff6ff;border-color:#bfdbfe;color:#1e40af}.compact-status-ng,.compact-status-nok{background:#fef2f2;border-color:#fecaca;color:#991b1b}.compact-status-na{background:#f1f5f9;border-color:#d9e2ec;color:#64748b}@media(max-width:1500px){.okr-team-summary-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:900px){.okr-matrix-summary-heading,.okr-objective-card-header{align-items:flex-start;flex-direction:column}.okr-team-summary-list{grid-template-columns:1fr}.okr-objective-status-summary{justify-content:flex-start}.okr-objective-table-row{min-width:680px}}.okr-exec-matrix-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);display:grid;gap:12px;padding:16px;box-shadow:var(--shadow-md)}.okr-exec-matrix-header{align-items:center;display:flex;gap:12px;justify-content:space-between;border-bottom:1px solid var(--border);padding-bottom:12px}.okr-exec-matrix-header>div:first-child{display:grid;gap:2px}.okr-exec-matrix-header strong{color:var(--primary);font-size:16px;font-weight:800;letter-spacing:-.01em}.okr-exec-matrix-header span{color:var(--text-muted);font-size:12px;font-weight:500}.okr-exec-legend{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.okr-exec-legend span{border:1px solid var(--border);border-radius:20px;font-size:11px;font-weight:700;line-height:1;padding:5px 10px;box-shadow:var(--shadow-sm);transition:var(--transition)}.okr-exec-legend .tone-good{background:#f2fdf6;border-color:#d6f5e1;color:#056144}.okr-exec-legend .tone-mixed{background:#fef9f0;border-color:#faebd1;color:#794006}.okr-exec-legend .tone-risk{background:#fef0f3;border-color:#fad1d8;color:#730d1e}.okr-exec-legend .tone-na{background:#f9fafb;border-color:#e7ebef;color:#627084}.okr-exec-top-panel{display:grid;grid-template-columns:1fr 2fr;gap:16px;align-items:stretch;margin-bottom:12px}.okr-exec-summary-section{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.okr-summary-mini-card{background:var(--bg-main);border:1px solid var(--border);border-radius:var(--radius-sm);display:flex;flex-direction:column;justify-content:center;align-items:center;padding:8px;text-align:center;box-shadow:var(--shadow-sm);transition:var(--transition)}.okr-summary-mini-card:hover{transform:translateY(-1px);box-shadow:var(--shadow-md);background:#fff}.okr-summary-mini-card strong{font-size:16px;font-weight:800;line-height:1.1}.okr-summary-mini-card small{color:var(--text-muted);font-size:10px;font-weight:600;margin-top:2px}.okr-summary-mini-card.is-good{background:#f8fefa;border-color:#d6f5e1}.okr-summary-mini-card.is-good strong{color:#056144}.okr-summary-mini-card.is-risk{background:#fff8f9;border-color:#fad1d8}.okr-summary-mini-card.is-risk strong{color:#730d1e}.okr-summary-mini-card.is-na{background:#fafbfc;border-color:#e7ebef}.okr-summary-mini-card.is-na strong{color:#627084}.okr-exec-kpi-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-sm);padding:12px 16px;box-shadow:var(--shadow-sm);display:flex;flex-direction:column;justify-content:center;gap:10px}.kpi-section-header{display:flex;justify-content:space-between;align-items:center;border-bottom:1px dashed var(--border);padding-bottom:6px}.kpi-section-header strong{font-size:15px;font-weight:800;color:var(--primary)}.kpi-section-header .muted{font-size:12px;color:var(--text-muted)}.kpi-section-actions{display:flex;align-items:center;gap:12px}.kpi-global-save-btn{background:var(--accent);color:#fff;font-size:11.5px;font-weight:700;padding:5px 12px;border-radius:6px;border:1px solid transparent;cursor:pointer;box-shadow:var(--shadow-sm);transition:var(--transition);display:inline-flex;align-items:center;justify-content:center;line-height:1.2}.kpi-global-save-btn:hover{background:var(--accent-hover);transform:translateY(-.5px);box-shadow:var(--shadow-md)}.kpi-global-save-btn:disabled{background:var(--bg-main);border-color:var(--border);color:var(--text-muted);cursor:not-allowed;transform:none;box-shadow:none}.kpi-section-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.kpi-team-compact{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--border);background:var(--bg-main);border-radius:6px;padding:6px 10px;font-size:12.5px;min-height:40px;transition:var(--transition)}.kpi-team-compact:hover{border-color:var(--text-muted);background:#fff}.kpi-team-compact.is-na{background:#f7f7f8;border-color:#e9ebed;opacity:.85}.kpi-team-compact.readonly{background:var(--bg-main)}.kpi-team-compact .team-code{font-weight:800;color:var(--primary);margin-right:6px;font-size:13.5px}.kpi-team-compact .kpi-values{font-size:12px;color:var(--text-muted);font-weight:700}.kpi-team-compact .kpi-value-pill{background:#fff;border:1px solid var(--border);border-radius:4px;padding:3px 6px;font-size:11px;font-weight:600;color:var(--text-muted);display:flex;gap:2px;box-shadow:var(--shadow-sm)}.kpi-team-compact .kpi-value-pill b{color:var(--primary);font-weight:800;font-size:13px}.kpi-team-compact.editable{gap:4px;padding:4px 8px}.kpi-inputs-group{display:flex;align-items:center;gap:6px}.kpi-inputs-group label{display:flex;align-items:center;gap:3px;font-size:11px;font-weight:700;color:var(--text-muted);background:#fff;border:1px solid var(--border);border-radius:4px;padding:3px 6px;transition:var(--transition);box-shadow:var(--shadow-sm)}.kpi-inputs-group label:focus-within{border-color:var(--accent)}.kpi-inputs-group label span{font-size:10px}.kpi-inputs-group input{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;background:transparent;border:0;color:var(--primary);font-size:13px;font-weight:800;line-height:1;padding:0;text-align:center;width:24px}.kpi-inputs-group input::-webkit-outer-spin-button,.kpi-inputs-group input::-webkit-inner-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.kpi-inputs-group input:focus{outline:none}@media(max-width:1024px){.okr-exec-top-panel{grid-template-columns:1fr}}.okr-exec-table-shell{overflow-x:auto;overflow-y:visible;padding:2px}.okr-exec-table{border:1px solid var(--border);border-radius:var(--radius-md);display:grid;min-width:0;overflow:hidden;box-shadow:var(--shadow-sm);background:var(--bg-card)}.okr-exec-row{display:grid;min-height:60px;align-items:stretch;transition:var(--transition)}.okr-exec-row+.okr-exec-row{border-top:1px solid var(--border)}.okr-exec-row:not(.okr-exec-row-header):hover{background-color:#fdfefe}.okr-exec-row>*{border-right:1px solid var(--border);min-width:0}.okr-exec-row>*:last-child{border-right:0}.okr-exec-row-header{background:#f8fafc;min-height:48px;border-bottom:2px solid var(--border)}.okr-exec-row-header>span,.okr-exec-objective-heading{align-items:center;color:var(--text-muted);display:flex;font-size:12.5px;font-weight:700;justify-content:center;letter-spacing:.05em;line-height:1.2;padding:10px 8px;text-transform:uppercase}.okr-exec-row-header>span:first-child,.okr-exec-row-header>span:nth-child(2){justify-content:flex-start;padding-left:16px}.okr-exec-objective-heading{background:#fff;border:0;border-right:1px solid var(--border);border-radius:0;flex-direction:column;gap:3px;min-height:48px;transition:var(--transition);position:relative}.okr-exec-objective-heading:before{content:"";position:absolute;top:0;left:50%;transform:translate(-50%);height:3px;width:0;border-radius:0 0 4px 4px;background-color:var(--accent);transition:var(--transition)}.okr-exec-objective-heading:hover:before,.okr-exec-objective-heading.active-objective:before{width:40px}.okr-exec-objective-heading:last-child{border-right:0}.okr-exec-objective-heading:hover,.okr-exec-objective-heading.active-objective{background:var(--accent-light);color:var(--accent)}.okr-exec-objective-heading strong{color:var(--primary);font-size:14.5px;font-weight:800}.okr-exec-objective-heading small{color:var(--text-muted);font-size:10.5px;font-weight:600}.okr-exec-team,.okr-exec-assessment,.okr-exec-discipline,.okr-exec-kpi{align-items:flex-start;display:flex;flex-direction:column;justify-content:center;padding:8px 12px}.okr-exec-team{gap:3px;padding-left:16px}.okr-exec-team strong{color:var(--primary);font-size:15px;font-weight:700}.okr-exec-team span{color:var(--text-muted);font-size:11.5px;font-weight:500;line-height:1.3}.okr-exec-assessment{gap:4px}.okr-exec-assessment strong{border:1px solid var(--border);border-radius:20px;display:inline-flex;font-size:13px;font-weight:700;line-height:1;max-width:100%;padding:4px 10px;background:var(--bg-main);box-shadow:var(--shadow-sm);white-space:nowrap}.okr-exec-assessment span{color:var(--text-muted);font-size:9.5px;font-weight:600;line-height:1.2}.okr-exec-assessment.tone-good strong{background:#e5faed;border-color:#b6edca;color:#056144}.okr-exec-assessment.tone-complete strong{background:#e6f1fe;border-color:#b1d1fb;color:#104093}.okr-exec-assessment.tone-risk strong{background:#fee7eb;border-color:#f7b6c0;color:#730d1e}.okr-exec-assessment.tone-na strong{background:#edf0f3;border-color:#dae0e7;color:#627084}.okr-exec-discipline{align-items:center}.okr-exec-discipline .status{border-radius:20px;font-size:11.5px;font-weight:700;min-width:60px;padding:5px 10px;box-shadow:var(--shadow-sm)}.okr-exec-kpi{align-items:stretch;gap:4px}.okr-exec-kpi span,.okr-exec-kpi label{align-items:center;background:var(--bg-main);border:1px solid var(--border);border-radius:6px;color:var(--text-main);display:flex;font-size:10.5px;font-weight:700;justify-content:space-between;line-height:1;min-height:20px;padding:3px 6px;transition:var(--transition)}.okr-exec-kpi span:hover,.okr-exec-kpi label:focus-within{border-color:var(--text-muted);background:#fff}.okr-exec-kpi small{color:var(--text-muted);font-size:9px;font-weight:700}.okr-exec-kpi input{-webkit-appearance:textfield;-moz-appearance:textfield;appearance:textfield;background:transparent;border:0;color:var(--primary);font-size:11px;font-weight:800;line-height:1;min-height:16px;padding:0;text-align:right;width:34px}.okr-exec-kpi input::-webkit-outer-spin-button,.okr-exec-kpi input::-webkit-inner-spin-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;margin:0}.okr-exec-kpi input:focus{outline:none}.okr-exec-kpi b{color:var(--primary);font-size:11px;min-height:11px}.okr-exec-kpi.editable{display:grid;gap:4px;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 24px;padding-inline:8px}.okr-exec-kpi.editable label{padding-inline:5px}.okr-kpi-save{align-self:stretch;border-radius:6px;justify-content:center;min-height:0;min-width:0;padding:0}.okr-exec-row.is-missing{background:#fafbfc;opacity:.8}.okr-exec-row.is-missing .okr-exec-team strong{color:var(--text-muted)}.okr-exec-objective-cell{align-items:stretch;display:flex;justify-content:stretch;padding:5px;transition:var(--transition)}.okr-exec-objective-cell.active{background-color:var(--accent-light)!important}.okr-exec-objective-button{align-items:center;background:var(--cell-bg, #ffffff);border:1px solid var(--cell-border, var(--border));border-radius:var(--radius-sm);color:var(--cell-color, var(--text-main));display:flex;flex-direction:column;gap:3px;justify-content:center;min-height:48px;min-width:0;padding:6px 4px;text-align:center;width:100%;transition:var(--transition);box-shadow:var(--shadow-sm)}.okr-exec-objective-button:hover{transform:translateY(-1.5px) scale(1.02);box-shadow:var(--shadow-md);border-color:var(--cell-border-hover, var(--border))}.okr-exec-objective-button strong{font-size:12.5px;font-weight:800;text-transform:uppercase;letter-spacing:.03em;line-height:1;padding:4px 8px;border-radius:12px;background:var(--badge-bg, rgba(0,0,0,.03));border:1px solid var(--badge-border, transparent);color:var(--badge-color, var(--text-main))}.okr-exec-objective-button span{color:var(--cell-subtext, var(--text-muted));font-size:11.5px;font-weight:600;line-height:1.2;max-width:100%;overflow-wrap:anywhere}.okr-exec-objective-cell.tone-good{--cell-bg: hsl(142, 70%, 97%);--cell-border: hsl(142, 60%, 90%);--cell-border-hover: hsl(142, 60%, 80%);--cell-color: hsl(161, 90%, 20%);--cell-subtext: hsl(161, 70%, 30%);--badge-bg: hsl(142, 70%, 92%);--badge-border: hsl(142, 60%, 85%);--badge-color: hsl(161, 90%, 20%)}.okr-exec-objective-cell.tone-mixed{--cell-bg: hsl(38, 90%, 97%);--cell-border: hsl(38, 80%, 90%);--cell-border-hover: hsl(38, 80%, 75%);--cell-color: hsl(30, 90%, 25%);--cell-subtext: hsl(30, 70%, 35%);--badge-bg: hsl(38, 90%, 92%);--badge-border: hsl(38, 80%, 85%);--badge-color: hsl(30, 90%, 25%)}.okr-exec-objective-cell.tone-risk{--cell-bg: hsl(350, 90%, 97%);--cell-border: hsl(350, 80%, 90%);--cell-border-hover: hsl(350, 80%, 75%);--cell-color: hsl(350, 80%, 25%);--cell-subtext: hsl(350, 70%, 35%);--badge-bg: hsl(350, 90%, 92%);--badge-border: hsl(350, 80%, 85%);--badge-color: hsl(350, 80%, 25%)}.okr-exec-objective-cell.tone-na{--cell-bg: hsl(210, 20%, 98%);--cell-border: hsl(210, 20%, 92%);--cell-border-hover: hsl(210, 20%, 85%);--cell-color: hsl(215, 15%, 45%);--cell-subtext: hsl(215, 15%, 55%);--badge-bg: hsl(210, 20%, 94%);--badge-border: hsl(210, 20%, 88%);--badge-color: hsl(215, 15%, 45%)}.okr-exec-objective-heading.tone-good{border-bottom:2px solid hsl(142,60%,70%)!important}.okr-exec-objective-heading.tone-mixed{border-bottom:2px solid hsl(38,80%,70%)!important}.okr-exec-objective-heading.tone-risk{border-bottom:2px solid hsl(350,80%,70%)!important}.okr-exec-objective-heading.tone-na{border-bottom:2px solid hsl(210,20%,80%)!important}.okr-exec-matrix-card .tone-good,.okr-exec-matrix-card .tone-mixed,.okr-exec-matrix-card .tone-risk,.okr-exec-matrix-card .tone-na{background:transparent}@media(max-width:1200px){.okr-exec-table{min-width:980px}}@media(max-width:900px){.okr-exec-matrix-header{align-items:flex-start;flex-direction:column}.okr-exec-legend{justify-content:flex-start}.okr-exec-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.okr-exec-table{min-width:940px}}.discipline-violations{display:grid;gap:10px;margin-top:16px;max-width:100%;width:100%;background:#fff8f9;border:1px solid hsl(350,80%,92%);border-left:4px solid hsl(350,75%,45%);border-radius:var(--radius-sm);padding:14px 18px;box-shadow:var(--shadow-sm)}.discipline-violations h3{color:#730d1e;font-size:13px;font-weight:800;letter-spacing:.05em;margin:0;text-transform:uppercase;display:flex;align-items:center;gap:8px}.discipline-violations h3:before{content:"⚠";font-size:14px;font-weight:900}.discipline-violations ul{color:#730d1e;display:grid;font-size:12px;font-weight:600;gap:6px;line-height:1.45;list-style:none;margin:0;padding:0}.discipline-violations li{padding-left:16px;position:relative;white-space:normal}.discipline-violations li:before{content:"•";color:#c91d39;font-size:14px;left:2px;top:-1px;position:absolute}table{border-collapse:collapse;min-width:900px;width:100%;border:1px solid var(--border);border-radius:var(--radius-sm)}.reference-table{min-width:760px}.allocation-table{min-width:860px}th,td{border-bottom:1px solid var(--border);padding:12px 16px;text-align:left;white-space:nowrap;font-size:13px;color:var(--text-main);transition:var(--transition)}tr:hover td{background-color:var(--accent-light)}.reference-table th,.reference-table td{line-height:1.45;vertical-align:top;white-space:pre-line}.allocation-table th,.allocation-table td{line-height:1.4;vertical-align:top}.allocation-table th:nth-child(6),.allocation-table td:nth-child(6){min-width:280px;white-space:normal}.reference-table th:first-child,.reference-table td:first-child{width:110px}.reference-table th:nth-child(2),.reference-table td:nth-child(2){width:240px}.admin-fi-panel{display:grid;gap:16px}.admin-fi-header{align-items:start}.admin-fi-header h2{margin-bottom:4px}.admin-tabs{align-items:stretch;background:#f8fafc;border:1px solid #dbe4ee;border-radius:8px;display:grid;gap:6px;grid-template-columns:repeat(3,minmax(0,1fr));padding:6px}.admin-tabs button{align-items:center;background:transparent;border:1px solid transparent;border-radius:7px;color:#475569;display:grid;gap:2px 8px;grid-template-columns:auto minmax(0,1fr);justify-content:start;min-height:48px;padding:8px 10px;text-align:left}.admin-tabs button svg{color:#64748b;grid-row:1 / span 2}.admin-tabs button span{color:#0f172a;font-size:13px;font-weight:800;line-height:1.1}.admin-tabs button small{color:#64748b;font-size:11px;font-weight:600;line-height:1.1}.admin-tabs button.active{background:#fff;border-color:#bfdbfe;box-shadow:0 1px 2px #0f172a0d}.admin-tabs button.active svg,.admin-tabs button.active span{color:#1d4ed8}.admin-fi-kpis{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr))}.admin-fi-kpi{background:#fff;border:1px solid #dbe4ee;border-left:3px solid #94a3b8;border-radius:8px;display:grid;gap:5px;min-width:0;padding:12px 14px}.admin-fi-kpi.current{background:#eff6ff;border-color:#bfdbfe;border-left-color:#2563eb}.admin-fi-kpi svg{color:#64748b}.admin-fi-kpi.current svg{color:#1d4ed8}.admin-fi-kpi span{color:#64748b;font-size:12px;font-weight:800;text-transform:uppercase}.admin-fi-kpi strong{color:#0f172a;font-size:26px;line-height:1}.admin-fi-kpi small{color:#607087;font-size:12px;overflow-wrap:anywhere}.admin-current-strip{background:#f8fbff;border:1px solid #cfe0f5;border-radius:8px;display:grid;gap:10px;padding:12px}.admin-current-strip-head{align-items:center;color:#0f172a;display:flex;gap:8px}.admin-current-strip-head svg{color:#2563eb}.admin-current-list{display:grid;gap:8px}.admin-current-item{align-items:start;background:#fff;border:1px solid #d7e4f4;border-radius:8px;color:#0f172a;display:grid;gap:4px;justify-items:start;padding:10px 12px;text-align:left}.admin-current-item:hover{background:#eff6ff;border-color:#93c5fd}.admin-current-item>span{color:#1d4ed8;font-size:12px;font-weight:800}.admin-current-item strong{font-size:14px;overflow-wrap:anywhere}.admin-current-item small{color:#607087;font-size:12px}.admin-fi-controls{align-items:end;display:flex;flex-wrap:wrap;gap:10px}.admin-filter-field,.admin-search-field{display:grid;gap:5px}.admin-filter-field{color:#64748b;font-size:12px;font-weight:800}.admin-filter-field select,.admin-search-field input{background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#0f172a;min-height:34px;padding:7px 10px}.admin-filter-field select{min-width:130px}.admin-search-field{align-items:center;border:1px solid #cbd5e1;border-radius:8px;display:flex;flex:1 1 280px;min-height:36px;padding:0 10px}.admin-search-field svg{color:#94a3b8;flex:0 0 auto}.admin-search-field input{border:0;flex:1;min-width:0;padding:0}.admin-search-field input:focus{box-shadow:none;outline:none}.admin-fi-table-wrap{border:1px solid #dbe4ee;border-radius:8px;overflow:auto}.admin-fi-table{border:0;min-width:1280px}.admin-account-table{min-width:1180px}.admin-okr-table{min-width:920px}.admin-fi-table th{background:#f8fafc;color:#475569;font-size:12px;font-weight:800;letter-spacing:0;text-transform:uppercase}.admin-fi-table th,.admin-fi-table td{vertical-align:top}.admin-fi-title-cell{max-width:320px;min-width:260px;white-space:normal}.admin-current-row td{background:#f8fbff}.admin-person{align-items:start;display:flex;gap:7px}.admin-person svg{color:#64748b;margin-top:2px}.admin-person strong,.admin-person small{display:block}.admin-person small{color:#64748b;margin-top:2px}.admin-cell-note{color:#64748b;display:block;font-size:11px;margin-top:4px}.admin-status-pill,.admin-khmt-pill,.admin-source-pill{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:800;min-height:24px;padding:3px 9px;white-space:nowrap}.admin-status-pill.success,.admin-khmt-pill.success{background:#dcfce7;color:#047857}.admin-status-pill.danger{background:#fee2e2;color:#b91c1c}.admin-status-pill.warning{background:#fef3c7;color:#b45309}.admin-status-pill.info{background:#dbeafe;color:#1d4ed8}.admin-status-pill.neutral,.admin-khmt-pill.empty{background:#f1f5f9;color:#475569}.admin-source-pill.current{background:#e0f2fe;color:#0369a1}.admin-source-pill.historical{background:#f1f5f9;color:#475569}.admin-detail-button{border-color:#bfdbfe;color:#1d4ed8;min-height:30px;padding:4px 9px}.admin-detail-row td{background:#fff;white-space:normal}.admin-fi-detail{display:grid;gap:12px;padding:4px 0}.admin-fi-detail-grid{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.admin-fi-detail-grid div,.admin-fi-detail-section{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:4px;padding:10px}.admin-fi-detail-grid span,.admin-fi-detail-section>span{color:#64748b;font-size:11px;font-weight:800;text-transform:uppercase}.admin-fi-detail-grid strong,.admin-fi-detail-section p{color:#0f172a;font-size:13px;line-height:1.45;margin:0;overflow-wrap:anywhere;white-space:pre-line}.admin-history-list{display:grid;gap:6px}.admin-history-entry{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:3px;padding:8px 10px}.admin-history-entry strong{color:#0f172a}.admin-history-entry small,.admin-history-entry em{color:#64748b;font-size:12px}.admin-account-search{max-width:620px}.admin-okr-toolbar{align-items:center;display:flex;justify-content:space-between}.admin-okr-period{align-items:end;background:#f8fafc;border:1px solid #dbe4ee;border-radius:8px;display:inline-flex;gap:10px;padding:10px 12px}.admin-okr-period>svg{color:#2563eb;margin-bottom:8px}.admin-okr-period label{color:#64748b;display:grid;font-size:12px;font-weight:800;gap:4px}.admin-okr-period select,.admin-okr-period input{background:#fff;border:1px solid #cbd5e1;border-radius:7px;color:#0f172a;height:34px;min-width:88px;padding:6px 9px}.admin-okr-grid{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(0,1fr))}.admin-okr-card{background:#fff;border:1px solid #dbe4ee;border-radius:8px;display:grid;gap:10px;min-width:0;padding:12px}.admin-okr-card-head{align-items:center;display:flex;gap:8px;justify-content:space-between}.admin-okr-card-head strong{color:#0f172a;font-size:15px}.admin-okr-card dl{display:grid;gap:7px;margin:0}.admin-okr-card dl div{display:grid;gap:2px}.admin-okr-card dt{color:#64748b;font-size:11px;font-weight:800;text-transform:uppercase}.admin-okr-card dd{color:#0f172a;font-size:13px;margin:0}.admin-okr-card>small{background:#f8fafc;border-radius:6px;color:#475569;font-size:12px;line-height:1.35;padding:7px 8px}.reference-notes{background:#f8fafc;border:1px solid var(--border);border-radius:var(--radius-md);color:var(--text-muted);display:grid;gap:8px;line-height:1.45;padding:16px;white-space:pre-line;font-size:13px}th{background:#f8fafc;color:var(--text-muted);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;position:sticky;top:0;border-bottom:2px solid var(--border)}.status{border:1px solid #cbd5e1;border-radius:999px;display:inline-flex;font-size:11px;font-weight:600;justify-content:center;min-width:52px;padding:3px 8px;transition:var(--transition)}.status-ok{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.status-good{background:#eff6ff;border-color:#bfdbfe;color:#1e40af}.status-ng,.status-nok{background:#fef2f2;border-color:#fecaca;color:#991b1b}.status-na{background:#f1f5f9;border-color:var(--border);color:var(--text-muted)}.list,.form-stack{display:grid;gap:10px}.evidence-file-list{display:grid;gap:6px}.evidence-file-row{align-items:center;background:#f8fafc;border:1px solid #e1e8ef;border-radius:6px;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto;min-height:34px;padding:6px 8px}.evidence-file-row span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.period-picker{align-items:center;display:inline-flex;gap:6px}.period-picker input,.period-picker select{background:#fff;border:1px solid #c9d2dc;border-radius:6px;min-height:34px;padding:6px 8px}.period-picker input{width:78px}.period-selector{align-items:center;display:inline-flex;flex-wrap:wrap;gap:6px}.period-selector input,.period-selector select{background:#fff;border:1px solid #c9d2dc;border-radius:6px;min-height:34px;padding:6px 8px}.period-selector input{width:78px}.period-label{align-items:center;background:#eef6ff;border:1px solid #bfdbfe;border-radius:999px;color:#1e40af;display:inline-flex;gap:5px;min-height:30px;padding:4px 9px}.period-selector small{color:#607087}.fi-registration-period{align-items:center;display:grid;grid-template-columns:minmax(110px,1fr) auto 96px}.fi-registration-period.with-label{grid-template-columns:max-content 62px 78px;justify-content:start}.fi-registration-period label{align-self:center;color:#334155;font-size:13px;font-weight:700;line-height:1.2;margin:0;white-space:nowrap}.fi-completion-row{align-items:center;background:#f8fafc;border:1px solid #dbe4ee;border-radius:8px;display:grid;gap:8px 12px;grid-template-columns:max-content max-content minmax(180px,1fr) 180px;padding:10px}.fi-completion-title{color:#0f172a;font-size:13px;font-weight:800;white-space:nowrap}.fi-completion-row>label:not(.fi-check-option){color:#334155;font-size:13px;font-weight:700;margin:0}.fi-check-option{align-items:center;color:#0f172a;display:inline-flex;font-size:13px;font-weight:700;gap:8px;margin:0;white-space:nowrap}.fi-check-option input{flex:0 0 auto;min-height:auto;width:16px}.fi-completion-row input[type=date]{min-width:170px}.fi-dashboard-shell{display:grid;gap:16px;grid-column:1 / -1;min-width:0}.fi-dashboard-header{align-items:center;background:#fff;border:1px solid #d9e3ee;border-radius:8px;display:flex;gap:12px;justify-content:space-between;padding:16px 18px}.fi-dashboard-header h2,.fi-dashboard-section-title h3{margin:0}.fi-dashboard-kpis{display:grid;gap:12px;grid-template-columns:repeat(5,minmax(0,1fr))}.fi-dashboard-kpi{background:#fff;border:1px solid #d9e3ee;border-left:4px solid #64748b;border-radius:8px;display:grid;gap:5px;min-width:0;padding:14px}.fi-dashboard-kpi span,.fi-dashboard-table th,.fi-dashboard-section-title{color:#607087;font-size:12px;font-weight:700}.fi-dashboard-kpi strong{color:#0f172a;font-size:26px;line-height:1.05}.fi-dashboard-kpi small,.fi-dashboard-table small{color:#64748b;font-size:12px}.fi-dashboard-kpi.success{border-left-color:#059669}.fi-dashboard-kpi.warning{border-left-color:#d97706}.fi-dashboard-kpi.info{border-left-color:#2563eb}.fi-dashboard-kpi.neutral{border-left-color:#475569}.fi-dashboard-main{align-items:start;display:grid;gap:16px;grid-template-columns:minmax(0,1fr) minmax(300px,.34fr);min-width:0}.fi-dashboard-team-section{background:#fff;border:1px solid #d9e3ee;border-radius:12px;display:grid;gap:14px;padding:18px}.fi-dashboard-team-section>.fi-dashboard-section-title{border-bottom:1px solid #eef2f8;padding-bottom:10px}.fi-dashboard-team-section>.fi-dashboard-section-title h3{margin:0}.fi-dashboard-team-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.fi-team-detail-card{background:linear-gradient(180deg,#fff,#fbfdff);border:1px solid #e1e8ef;border-radius:12px;display:grid;gap:14px;padding:16px;transition:var(--transition)}.fi-team-detail-card:hover{border-color:#c8d4e1;box-shadow:0 4px 12px -6px #0f172a1f;transform:translateY(-1px)}.fi-team-detail-head{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;padding-bottom:12px;border-bottom:1px solid #eef2f8}.fi-team-detail-head>div:first-child{display:grid;gap:2px;min-width:0}.fi-team-detail-name{color:#0f172a;font-size:17px;font-weight:800;letter-spacing:-.01em}.fi-team-detail-head small{color:#64748b;font-size:11.5px;font-weight:500}.fi-team-detail-total{align-items:flex-end;display:grid;gap:2px;text-align:right;white-space:nowrap}.fi-team-detail-total span{color:#607087;font-size:10.5px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.fi-team-detail-total strong{color:#0f172a;font-size:22px;font-weight:800;line-height:1}.fi-team-detail-rates{display:grid;gap:12px}.fi-team-rate{display:grid;gap:5px}.fi-team-rate-head{align-items:baseline;display:flex;gap:8px;justify-content:space-between}.fi-team-rate-head span{color:#475569;font-size:12.5px;font-weight:600}.fi-team-rate-head strong{color:#0f172a;font-size:15px;font-weight:800;font-variant-numeric:tabular-nums}.fi-team-rate-bar{background:#f1f5f9;border-radius:999px;height:8px;overflow:hidden;position:relative}.fi-team-rate-bar-fill{background:linear-gradient(90deg,#2563eb,#3b82f6);border-radius:999px;height:100%;transition:width .4s cubic-bezier(.4,0,.2,1)}.fi-team-rate.tone-success .fi-team-rate-bar-fill{background:linear-gradient(90deg,#059669,#10b981)}.fi-team-rate.tone-success .fi-team-rate-head strong{color:#047857}.fi-team-rate.tone-info .fi-team-rate-bar-fill{background:linear-gradient(90deg,#2563eb,#3b82f6)}.fi-team-rate.tone-info .fi-team-rate-head strong{color:#1d4ed8}.fi-team-rate.tone-completion .fi-team-rate-bar-fill{background:linear-gradient(90deg,#0d9488,#14b8a6)}.fi-team-rate.tone-completion .fi-team-rate-head strong{color:#0f766e}.fi-team-rate small{color:#64748b;font-size:11.5px;font-weight:500}.fi-team-rate small em{color:#b45309;font-style:normal;font-weight:700}.fi-team-detail-breakdown{background:#f8fafc;border:1px solid #e6edf5;border-radius:10px;display:grid;gap:0;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden}.fi-team-detail-breakdown>div{align-items:center;display:grid;gap:2px;justify-items:center;padding:8px 4px;position:relative;text-align:center}.fi-team-detail-breakdown>div+div:before{background:#e6edf5;content:"";height:60%;left:0;position:absolute;top:20%;width:1px}.fi-team-detail-breakdown strong{font-size:17px;font-weight:800;line-height:1;font-variant-numeric:tabular-nums}.fi-team-detail-breakdown span{color:#64748b;font-size:10.5px;font-weight:600}.fi-team-detail-breakdown .tone-success strong{color:#047857}.fi-team-detail-breakdown .tone-danger strong{color:#b91c1c}.fi-team-detail-breakdown .tone-warning strong{color:#b45309}.fi-team-detail-breakdown .tone-neutral strong{color:#475569}.fi-dashboard-aux{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.fi-dashboard-aux .fi-dashboard-card{margin:0}.fi-dashboard-table-wrap,.fi-dashboard-block{background:#fff;border:1px solid #d9e3ee;border-radius:8px;display:grid;gap:12px;min-width:0;padding:16px}.fi-dashboard-section-title{align-items:center;display:flex;gap:8px}.fi-dashboard-section-title svg{color:#64748b}.fi-dashboard-table{border-collapse:collapse;min-width:860px;width:100%}.fi-dashboard-table th,.fi-dashboard-table td{border-bottom:1px solid #e5edf5;padding:10px 8px;text-align:left;vertical-align:top}.fi-dashboard-table th:not(:first-child),.fi-dashboard-table td:not(:first-child){text-align:right}.fi-dashboard-table td:first-child{display:grid;gap:2px}.fi-dashboard-table.compact{min-width:780px}.fi-dashboard-table .metric-pair{align-items:baseline;display:inline-flex;gap:5px;justify-content:flex-end;white-space:nowrap}.fi-dashboard-table .metric-pair small{display:inline;margin:0}.fi-dashboard-table-wrap{overflow:auto}.fi-dashboard-side{display:grid;gap:16px;min-width:0}.fi-khmt-month-grid{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(94px,1fr))}.fi-khmt-month{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;display:grid;gap:2px;padding:10px}.fi-khmt-month span,.fi-dashboard-status-list span{color:#607087;font-size:12px;font-weight:700}.fi-khmt-month strong,.fi-dashboard-status-list strong{color:#0f172a;font-size:20px}.fi-dashboard-status-list{display:grid;gap:8px}.fi-dashboard-status-list div{align-items:center;border-bottom:1px solid #e5edf5;display:flex;gap:12px;justify-content:space-between;padding:7px 0}.fi-dashboard-status-list div:last-child{border-bottom:0}.fi-dashboard-hero{align-items:center;background:linear-gradient(135deg,#1e3a8a,#2563eb,#0ea5e9);border:1px solid #1e40af;border-radius:14px;box-shadow:0 8px 22px -10px #2563eb73;color:#fff;display:flex;gap:18px;justify-content:space-between;padding:20px 24px;position:relative;overflow:hidden}.fi-dashboard-hero:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 85% -20%,rgba(255,255,255,.18),transparent 55%);pointer-events:none}.fi-dashboard-hero-text{display:grid;gap:6px;max-width:720px;z-index:1}.fi-dashboard-hero-title{align-items:center;display:flex;gap:10px}.fi-dashboard-hero-title h2{margin:0;font-size:22px;color:#fff;letter-spacing:.2px}.fi-dashboard-hero-text p{margin:0;color:#ffffffdb;font-size:13px;line-height:1.55}.fi-dashboard-hero-stats{display:flex;flex-wrap:wrap;gap:10px;margin-top:6px}.fi-dashboard-hero-stats span{align-items:center;background:#ffffff29;border-radius:999px;color:#fff;display:inline-flex;font-size:12px;font-weight:600;gap:6px;padding:4px 10px}.fi-dashboard-refresh{align-items:center;background:#ffffff29;border:1px solid rgba(255,255,255,.4);border-radius:999px;color:#fff;cursor:pointer;display:inline-flex;font-weight:600;gap:8px;padding:8px 14px;transition:background .2s;z-index:1}.fi-dashboard-refresh:hover{background:#ffffff47}.fi-dashboard-kpi{position:relative;padding-top:18px;padding-bottom:16px}.fi-dashboard-kpi-icon{position:absolute;top:12px;right:12px;width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:#eef2f7;color:#475569}.fi-dashboard-kpi.total .fi-dashboard-kpi-icon{background:#e0e7ff;color:#4338ca}.fi-dashboard-kpi.success .fi-dashboard-kpi-icon{background:#dcfce7;color:#15803d}.fi-dashboard-kpi.warning .fi-dashboard-kpi-icon{background:#fef3c7;color:#b45309}.fi-dashboard-kpi.info .fi-dashboard-kpi-icon{background:#dbeafe;color:#1d4ed8}.fi-dashboard-kpi.neutral .fi-dashboard-kpi-icon{background:#f1f5f9;color:#334155}.fi-kpi-bar{height:5px;background:#eef2f7;border-radius:999px;overflow:hidden;margin-top:6px}.fi-kpi-bar-fill{height:100%;background:#64748b;border-radius:999px;transition:width .4s ease}.fi-kpi-bar-fill.success{background:linear-gradient(90deg,#22c55e,#16a34a)}.fi-kpi-bar-fill.info{background:linear-gradient(90deg,#60a5fa,#2563eb)}.fi-dashboard-chart-row{display:grid;gap:16px;grid-template-columns:minmax(280px,.85fr) minmax(340px,1.15fr);align-items:stretch}.fi-dashboard-card{background:#fff;border:1px solid #d9e3ee;border-radius:12px;padding:18px;display:grid;gap:14px;min-width:0}.fi-dashboard-card .fi-dashboard-section-title{justify-content:flex-start}.fi-dashboard-card .fi-dashboard-section-title h3{font-size:15px;flex:1}.fi-dashboard-card .fi-dashboard-section-title .muted{font-weight:500}.fi-chart-empty{align-items:center;color:#94a3b8;display:grid;font-size:13px;gap:8px;justify-items:center;padding:30px 16px}.fi-donut{align-items:center;display:grid;gap:14px;grid-template-columns:minmax(150px,200px) 1fr}.fi-donut svg .fi-donut-total{font-size:22px;font-weight:700;fill:#0f172a}.fi-donut svg .fi-donut-label{font-size:11px;font-weight:600;fill:#64748b;letter-spacing:.4px}.fi-donut-legend{list-style:none;margin:0;padding:0;display:grid;gap:8px}.fi-donut-legend li{align-items:center;display:grid;gap:10px;grid-template-columns:12px 1fr auto auto;font-size:13px}.fi-donut-swatch{border-radius:4px;display:inline-block;height:12px;width:12px}.fi-donut-name{color:#334155}.fi-donut-legend strong{color:#0f172a;font-size:14px}.fi-donut-legend small{color:#64748b;font-size:12px;min-width:36px;text-align:right}.fi-team-bars{display:grid;gap:12px}.fi-team-row{display:grid;gap:4px;grid-template-columns:130px 1fr 110px;align-items:center}.fi-team-meta{display:grid;gap:2px}.fi-team-meta strong{color:#0f172a;font-size:14px}.fi-team-meta small{color:#64748b;font-size:11px}.fi-team-track{background:#f1f5f9;border-radius:999px;height:22px;overflow:hidden;position:relative}.fi-team-fill{display:flex;height:100%;border-radius:999px;overflow:hidden;min-width:1%}.fi-team-seg{display:inline-block;height:100%}.fi-team-seg.approved{background:linear-gradient(180deg,#34d399,#16a34a)}.fi-team-seg.deferred{background:linear-gradient(180deg,#fbbf24,#d97706)}.fi-team-seg.pending{background:linear-gradient(180deg,#60a5fa,#2563eb)}.fi-team-seg.rejected{background:linear-gradient(180deg,#f87171,#dc2626)}.fi-team-numbers{display:grid;grid-template-columns:repeat(4,1fr);gap:4px;text-align:center;font-size:12px;font-weight:700}.fi-team-num{display:inline-block;padding:2px 0;border-radius:4px}.fi-team-num.approved{color:#15803d;background:#dcfce7}.fi-team-num.deferred{color:#b45309;background:#fef3c7}.fi-team-num.pending{color:#1d4ed8;background:#dbeafe}.fi-team-num.rejected{color:#b91c1c;background:#fee2e2}.fi-team-legend{align-items:center;border-top:1px dashed #e5edf5;color:#64748b;display:flex;flex-wrap:wrap;font-size:11px;gap:12px;padding-top:10px}.fi-team-legend span{align-items:center;display:inline-flex;gap:6px}.fi-swatch{border-radius:3px;display:inline-block;height:10px;width:10px}.fi-swatch.approved{background:linear-gradient(180deg,#34d399,#16a34a)}.fi-swatch.deferred{background:linear-gradient(180deg,#fbbf24,#d97706)}.fi-swatch.pending{background:linear-gradient(180deg,#60a5fa,#2563eb)}.fi-swatch.rejected{background:linear-gradient(180deg,#f87171,#dc2626)}.fi-trend{display:grid;gap:10px}.fi-trend-meta{align-items:baseline;display:flex;gap:8px;color:#475569;font-size:12px}.fi-trend-meta strong{color:#0f172a;font-size:20px}.fi-trend-meta small{color:#94a3b8}.fi-dashboard-table td .cell-approved{color:#16a34a}.fi-dashboard-table td .cell-khmt{color:#2563eb}.fi-dashboard-table td .cell-khmt-missing{color:#d97706}.legacy-evidence{border-top:1px dashed #e5edf5;display:grid;gap:12px;padding-top:14px}.legacy-evidence-head{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between}.legacy-evidence-title{align-items:center;color:#0f172a;display:inline-flex;font-size:13px;font-weight:700;gap:6px}.legacy-evidence-title em{color:#2563eb;font-style:normal;font-weight:600}.legacy-evidence-head small{align-items:center;display:inline-flex;gap:4px}.legacy-evidence-grid{align-items:start;display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(132px,132px))}.legacy-evidence-thumb{background:transparent;border:0;box-sizing:border-box;padding:0;display:block;width:132px}.legacy-evidence-thumb .image-thumb{display:block;width:100%;height:132px;aspect-ratio:1 / 1;overflow:hidden}.legacy-evidence-thumb .image-thumb img{height:100%;max-height:none;max-width:none;object-fit:contain;width:100%}.legacy-evidence-empty{align-items:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;color:#64748b;display:flex;font-size:13px;gap:8px;justify-content:center;padding:18px}@media(max-width:1200px){.fi-dashboard-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.fi-dashboard-main,.fi-dashboard-chart-row{grid-template-columns:1fr}.fi-team-row{grid-template-columns:110px 1fr 100px}}@media(max-width:700px){.fi-dashboard-hero{align-items:stretch;flex-direction:column}.fi-dashboard-kpis{grid-template-columns:1fr}.fi-donut{grid-template-columns:1fr;justify-items:center}.fi-donut svg{max-width:220px}.fi-team-row{grid-template-columns:1fr;gap:8px}.fi-team-numbers{grid-template-columns:repeat(4,1fr)}}.row-item,.workflow-item{border:1px solid #e1e8ef;border-radius:8px;padding:10px}.report-row{align-items:start;display:grid;gap:3px;justify-items:start;text-align:left;width:100%}.workflow-main{align-items:start;background:transparent;border:0;display:grid;flex:1;gap:3px;justify-items:start;min-height:0;padding:0;text-align:left}.workflow-main:hover{border-color:transparent}.row-item span,.workflow-item span,.row-item small,.workflow-item small{color:#607087;display:block;margin-top:3px}.legacy-sk-panel{--legacy-action-col: 230px;--legacy-khmt-col: 190px;--legacy-period-col: 102px;--legacy-row-padding-x: 16px;--legacy-side-gap: 10px;--legacy-status-col: 126px;--legacy-side-width: calc( var(--legacy-period-col) + var(--legacy-status-col) + var(--legacy-khmt-col) + var(--legacy-action-col) + var(--legacy-side-gap) + var(--legacy-side-gap) + var(--legacy-side-gap) );gap:12px}.fi-history-panel{container-name:fi-history;container-type:inline-size}.legacy-sticky-controls{background:#fff;border-bottom:1px solid #e6edf5;display:grid;gap:12px;margin:-20px -20px 0;padding:16px 20px 12px;position:sticky;top:var(--app-topbar-h, 72px);z-index:30}.legacy-team-picker{max-width:100%}.fi-history-toolbar-tail{align-items:center;display:inline-flex;gap:8px;margin-left:auto}.fi-history-toolbar-count{color:#607087;font-size:12.5px;font-weight:500;white-space:nowrap}.fi-history-toolbar-count strong{color:#0f172a;font-weight:700}.fi-history-reload{align-items:center;background:#fff;border:1px solid var(--border);border-radius:var(--radius-sm);color:#475569;cursor:pointer;display:inline-flex;height:34px;justify-content:center;min-width:34px;padding:0 9px;transition:var(--transition)}.fi-history-reload:hover{background:#f8fafc;border-color:#cbd5e1;color:#1d4ed8}.fi-history-toolbar{align-items:center;background:#f8fafc;border:1px solid #e1e8ef;border-radius:10px;display:flex;flex-wrap:wrap;gap:6px;padding:6px 8px;position:relative;z-index:2}.fi-history-toolbar-lead{align-items:center;color:#64748b;display:inline-flex;font-size:12px;font-weight:700;gap:6px;letter-spacing:.02em;padding:0 6px 0 2px;text-transform:uppercase}.fi-history-toolbar-lead svg{color:#94a3b8}.fi-filter-chip-wrap{display:inline-flex;position:relative}.fi-filter-chip{align-items:center;background:#fff;border:1px solid #d3dbe5;border-radius:8px;color:#1f2937;cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:6px;height:34px;padding:0 10px;transition:var(--transition);white-space:nowrap}.fi-filter-chip:hover{background:#f8fbff;border-color:#94b3df}.fi-filter-chip:focus-visible{border-color:var(--accent);box-shadow:0 0 0 3px #2563eb2e;outline:none}.fi-filter-chip.active{background:#eef6ff;border-color:#93c5fd;color:#1d4ed8}.fi-filter-chip.prominent{background:#0f172a;border-color:#0f172a;color:#fff}.fi-filter-chip.prominent:hover{background:#1e293b;border-color:#1e293b}.fi-filter-chip.prominent .fi-filter-chip-icon,.fi-filter-chip.prominent .fi-filter-chip-label{color:#cbd5e1}.fi-filter-chip.prominent .fi-filter-chip-divider{color:#475569}.fi-filter-chip.prominent .fi-filter-chip-caret{color:#94a3b8}.fi-filter-chip.prominent .fi-filter-chip-value{color:#fff}.fi-filter-chip-wrap.open .fi-filter-chip.prominent{border-color:#1e293b;box-shadow:0 0 0 3px #0f172a2e}.fi-filter-chip-icon{align-items:center;color:#64748b;display:inline-flex}.fi-filter-chip.active .fi-filter-chip-icon{color:#1d4ed8}.fi-filter-chip-label{color:#475569}.fi-filter-chip.active .fi-filter-chip-label{color:#1d4ed8}.fi-filter-chip-divider{color:#cbd5e1;font-weight:400}.fi-filter-chip-value{font-weight:700;max-width:140px;overflow:hidden;text-overflow:ellipsis}.fi-filter-chip-caret{color:#94a3b8;transition:transform .18s ease}.fi-filter-chip-caret.open{color:#1d4ed8;transform:rotate(180deg)}.fi-filter-chip-wrap.open .fi-filter-chip{border-color:var(--accent);box-shadow:0 0 0 3px #2563eb26}.fi-filter-popover{animation:fi-filter-popover-in .16s ease-out both;background:#fff;border:1px solid #e1e8ef;border-radius:12px;box-shadow:0 12px 28px -10px #0f172a38,0 6px 14px -6px #0f172a1f;display:grid;gap:4px;left:0;margin-top:6px;min-width:220px;padding:8px;position:absolute;top:100%;transform-origin:top left;z-index:50}@keyframes fi-filter-popover-in{0%{opacity:0;transform:translateY(-6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.fi-filter-popover{animation:none}.fi-history-stat{transition:none}}.fi-filter-popover-head{align-items:center;display:flex;gap:8px;justify-content:space-between;padding:4px 8px 6px}.fi-filter-popover-head>span{color:#607087;font-size:11px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.fi-filter-popover-clear{background:transparent;border:0;border-radius:4px;color:var(--accent);cursor:pointer;font-size:12px;font-weight:600;padding:2px 6px;transition:var(--transition)}.fi-filter-popover-clear:hover{background:#2563eb14}.fi-filter-popover-hint{color:#94a3b8;font-size:11px;font-weight:500}.fi-filter-popover-body{display:grid;gap:2px;max-height:280px;overflow-y:auto}.fi-filter-popover-empty{color:#94a3b8;font-size:12px;margin:0;padding:8px;text-align:center}.fi-filter-option{align-items:center;border-radius:6px;cursor:pointer;display:grid;font-size:13px;font-weight:500;gap:8px;grid-template-columns:18px minmax(0,1fr) auto;padding:6px 8px;transition:var(--transition)}.fi-filter-option:hover{background:#f1f5f9}.fi-filter-option.checked{background:#eef6ff;color:#1d4ed8}.fi-filter-option input{-webkit-appearance:none;-moz-appearance:none;appearance:none;height:0;margin:0;opacity:0;position:absolute;width:0}.fi-filter-option-mark{align-items:center;background:#fff;border:1.5px solid #cbd5e1;border-radius:4px;display:inline-flex;height:16px;justify-content:center;transition:var(--transition);width:16px}.fi-filter-option.checked .fi-filter-option-mark{background-color:#2563eb;border-color:#2563eb}.fi-filter-option.checked .fi-filter-option-mark:after{border-bottom:2px solid #ffffff;border-left:2px solid #ffffff;content:"";height:4px;margin-top:-2px;transform:rotate(-45deg);width:8px}.fi-filter-option.is-radio .fi-filter-option-mark{border-radius:50%}.fi-filter-option.is-radio.checked .fi-filter-option-mark{background-color:#fff;border-color:#2563eb;border-width:2px}.fi-filter-option.is-radio.checked .fi-filter-option-mark:after{background:#2563eb;border:0;border-radius:50%;content:"";height:7px;margin:0;transform:none;width:7px}.fi-filter-option:focus-within .fi-filter-option-mark{box-shadow:0 0 0 3px #2563eb2e}.fi-filter-option-label{color:#1f2937;overflow-wrap:anywhere}.fi-filter-option.checked .fi-filter-option-label{color:#1d4ed8;font-weight:600}.fi-filter-option-count{background:#f1f5f9;border-radius:999px;color:#64748b;font-size:11px;font-weight:700;min-width:22px;padding:1px 7px;text-align:center}.fi-filter-option.checked .fi-filter-option-count{background:#dbeafe;color:#1d4ed8}.fi-filter-option.tone-success .fi-filter-option-mark{border-color:#6ee7b7}.fi-filter-option.tone-danger .fi-filter-option-mark{border-color:#fca5a5}.fi-filter-option.tone-warning .fi-filter-option-mark{border-color:#fcd34d}.fi-filter-option.tone-neutral .fi-filter-option-mark{border-color:#cbd5e1}.fi-history-filter-reset{align-items:center;background:#fff;border:1px solid #fecaca;border-radius:8px;color:#b91c1c;cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:6px;height:34px;padding:0 10px;transition:var(--transition)}.fi-history-filter-reset:hover{background:#fef2f2;border-color:#fca5a5}.fi-history-filter-reset:focus-visible{box-shadow:0 0 0 3px #b91c1c2e;outline:none}.fi-history-filter-reset-count{background:#b91c1c;border-radius:999px;color:#fff;font-size:11px;font-weight:700;min-width:18px;padding:1px 6px;text-align:center}.fi-history-summary{align-items:stretch;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(132px,1fr))}.fi-history-stat{background:#fff;border:1px solid #e1e8ef;border-left-width:3px;border-radius:8px;display:grid;gap:2px;padding:8px 12px;transition:var(--transition)}.fi-history-stat:hover{border-color:#c9d4e1;box-shadow:0 1px 3px #0f172a0f;transform:translateY(-1px)}.fi-history-stat>span{color:#607087;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.fi-history-stat>strong{color:#0f172a;font-size:22px;font-weight:700;line-height:1.05}.fi-history-stat>small{color:#64748b;font-size:11px;font-weight:500}.fi-history-stat.tone-total{border-left-color:#0f172a}.fi-history-stat.tone-success{border-left-color:#059669}.fi-history-stat.tone-success>strong{color:#047857}.fi-history-stat.tone-danger{border-left-color:#dc2626}.fi-history-stat.tone-danger>strong{color:#b91c1c}.fi-history-stat.tone-warning{border-left-color:#d97706}.fi-history-stat.tone-warning>strong{color:#b45309}.fi-history-stat.tone-neutral{border-left-color:#94a3b8}.fi-history-stat.tone-info{border-left-color:#2563eb}.fi-history-stat.tone-info>strong{color:#1d4ed8}.fi-history-stat.tone-completion{border-left-color:#0d9488}.fi-history-stat.tone-completion>strong{color:#0f766e}.legacy-list,.legacy-month-group{display:grid;gap:10px}.legacy-month-heading{align-items:center;border-top:1px solid #e4ebf2;display:flex;justify-content:space-between;padding-top:10px}.legacy-month-heading h3{font-size:14px;margin:0}.legacy-month-heading span{color:#607087;font-size:12px}.legacy-row-column-labels{align-items:end;display:grid;gap:18px;grid-template-columns:minmax(0,1fr) max-content;margin:2px 0 -2px;padding:0 var(--legacy-row-padding-x)}.legacy-row-column-label-side{display:grid;gap:var(--legacy-side-gap);grid-template-columns:var(--legacy-period-col) var(--legacy-status-col) var(--legacy-khmt-col) var(--legacy-action-col);min-width:var(--legacy-side-width)}.legacy-row-column-label-side span{align-items:center;border:1px solid transparent;border-radius:7px;display:inline-flex;font-size:10.5px;font-weight:800;min-height:24px;justify-content:center;letter-spacing:0;line-height:1.05;padding:0 8px;text-align:center;white-space:nowrap}.legacy-row-column-label-side .tone-period{background:#eaf3ff;border-color:#bfdbfe;color:#1d4ed8}.legacy-row-column-label-side .tone-decision{background:#fff7ed;border-color:#fed7aa;color:#c2410c}.legacy-row-column-label-side .tone-khmt{background:#f0fdf4;border-color:#bbf7d0;color:#15803d}.legacy-record{display:grid;gap:0}.legacy-row{align-items:center;background:#fff;border:1px solid #d9e3ee;border-radius:8px;color:var(--text-main);display:grid;gap:18px;grid-template-columns:minmax(0,1fr) max-content;justify-items:stretch;min-height:0;padding:14px 16px;text-align:left;width:100%}.legacy-row:hover{background:#fbfdff;border-color:#b7c7d8}.legacy-row.active-row{background:#f8fbff;border-color:#8bb8ff;border-radius:8px 8px 0 0;box-shadow:none}.legacy-row-main{display:grid;gap:8px;min-width:0}.legacy-row-toggle{background:transparent;border:0;color:inherit;justify-items:start;padding:0;text-align:left;width:100%}.legacy-row-toggle:hover{border-color:transparent}.legacy-row-head{align-items:center;display:block}.legacy-row-meta{align-items:center;color:#607087;display:flex;flex-wrap:wrap;gap:8px}.legacy-row-head strong{font-size:15px;font-weight:700;line-height:1.35}.legacy-row-head strong,.legacy-row small,.legacy-row-subtitle span{overflow-wrap:anywhere}.legacy-period-pill{align-items:center;background:#eff6ff;border:1px solid #c7ddff;border-radius:6px;box-sizing:border-box;color:var(--accent);display:inline-flex;font-size:12px;font-weight:700;height:30px;justify-content:center;margin-top:0;padding:0 8px;white-space:nowrap;width:var(--legacy-period-col)}.legacy-row-subtitle{align-items:center;color:#334155;display:flex;flex-wrap:wrap;gap:7px;font-size:12px;font-weight:600}.legacy-row-subtitle span:not(:last-child):after{color:#94a3b8;content:"·";margin-left:7px}.legacy-row-side{align-items:center;display:grid;gap:var(--legacy-side-gap);grid-template-columns:var(--legacy-period-col) var(--legacy-status-col) var(--legacy-khmt-col) var(--legacy-action-col);justify-items:stretch;min-width:var(--legacy-side-width)}.legacy-status-pill{align-items:center;border:1px solid #cbd5e1;border-radius:6px;box-sizing:border-box;display:inline-flex;font-size:12px;font-weight:700;height:30px;justify-content:center;line-height:1.15;padding:0 8px;text-align:center;white-space:nowrap;width:var(--legacy-status-col)}.legacy-status-pill.neutral{background:#f8fafc;color:#475569}.legacy-status-pill.info{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.legacy-status-pill.success{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.legacy-status-pill.warning{background:#fffbeb;border-color:#fde68a;color:#92400e}.legacy-status-pill.danger{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.legacy-khmt-pill,.legacy-khmt-select{align-items:center;border:1px solid #d7e0ea;border-radius:6px;box-sizing:border-box;color:#64748b;display:inline-flex;font-size:12px;font-weight:700;height:34px;justify-content:center;line-height:1.2;padding:0 10px;text-align:center;white-space:nowrap;width:var(--legacy-khmt-col)}.legacy-khmt-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:linear-gradient(45deg,transparent 50%,#64748b 50%),linear-gradient(135deg,#64748b 50%,transparent 50%),#fff;background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;background-repeat:no-repeat;background-size:5px 5px,5px 5px;cursor:pointer;display:block;outline:none;padding:0 28px 0 12px;text-align-last:center;text-overflow:ellipsis}.legacy-khmt-select:disabled{cursor:wait;opacity:.72}.legacy-khmt-pill.success,.legacy-khmt-select.success{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.legacy-khmt-pill.empty,.legacy-khmt-select.empty{background:#f8fafc}.legacy-khmt-control{align-items:center;display:grid;gap:6px;grid-template-columns:minmax(0,1fr) auto;width:var(--legacy-khmt-col)}.legacy-khmt-control .legacy-khmt-select{width:100%}.legacy-khmt-save{align-items:center;background:#fff;border:1px solid #93c5fd;border-radius:6px;color:#1d4ed8;display:inline-flex;font-size:11px;font-weight:800;gap:4px;height:34px;justify-content:center;min-height:34px;padding:0 8px}.legacy-khmt-save:hover:not(:disabled){background:#eff6ff;border-color:#60a5fa}.legacy-khmt-save:disabled{background:#f8fafc;border-color:#dbe4ee;color:#94a3b8;cursor:not-allowed}.legacy-row-action{align-items:center;background:transparent;border:1px solid transparent;border-radius:6px;box-sizing:border-box;color:var(--accent);display:inline-flex;font-size:12px;font-weight:700;height:30px;justify-content:center;padding:0 8px;white-space:nowrap;width:86px}.legacy-review-action{background:#fff;border-color:#cbd5e1;color:#1d4ed8;gap:5px;width:98px}.legacy-row-controls{align-items:end;display:flex;gap:6px;justify-content:flex-end;width:var(--legacy-action-col)}.legacy-icon-action{background:#fff;border-color:#cbd5e1;height:30px;justify-content:center;min-height:30px;min-width:30px;padding:0;width:30px}.legacy-inline-detail{border:1px solid #cbdff5;border-top:0;border-radius:0 0 8px 8px;display:grid;gap:12px;padding:12px}.legacy-inline-detail .detail-grid{grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.legacy-expanded-content{background:#fff;border:1px solid #e1e8ef;border-radius:8px;display:grid;gap:12px;padding:14px}.legacy-expanded-content section{display:grid;gap:5px}.legacy-expanded-content span{color:#607087;font-size:12px;font-weight:700}.legacy-expanded-content p{line-height:1.55;margin:0;white-space:pre-line}.legacy-review-note{background:#fffbeb;border:1px solid #fde68a;border-radius:6px;padding:10px}.legacy-khmt-note{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:6px;padding:10px}@container fi-history (max-width: 920px){.legacy-team-picker{flex-wrap:wrap}}@container fi-history (max-width: 900px){.legacy-row-column-labels{display:none}.legacy-row,.legacy-row-head,.legacy-row-meta{grid-template-columns:1fr}.legacy-row-side{align-items:center;grid-template-columns:var(--legacy-period-col) var(--legacy-status-col) minmax(180px,1fr);grid-template-rows:auto auto;justify-content:start;justify-items:stretch;min-width:0;row-gap:8px}.legacy-row-side .legacy-khmt-pill,.legacy-row-side .legacy-khmt-select,.legacy-row-side .legacy-khmt-control{width:100%}.legacy-row-controls{grid-column:1 / -1;justify-content:flex-end;width:100%}}@container fi-history (max-width: 600px){.legacy-row-side{grid-template-columns:1fr 1fr}.legacy-row-side .legacy-period-pill,.legacy-row-side .legacy-status-pill,.legacy-row-side .legacy-khmt-pill,.legacy-row-side .legacy-khmt-select,.legacy-row-side .legacy-khmt-control{width:100%}.fi-filter-chip-value{max-width:90px}}@media(max-width:900px){.admin-tabs,.admin-okr-grid{grid-template-columns:1fr}.admin-fi-kpis,.admin-fi-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-fi-controls{align-items:stretch}.admin-filter-field,.admin-search-field,.admin-fi-controls .segmented-control{width:100%}.admin-okr-toolbar,.admin-okr-period{align-items:stretch;flex-direction:column;width:100%}.legacy-sk-panel .panel-header{align-items:stretch}.legacy-sk-panel .toolbar{align-items:stretch;flex-direction:column}.legacy-team-picker{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.fi-inline-review-grid,.fi-review-panel .workflow-item{grid-template-columns:1fr}.fi-review-toolbar{justify-content:flex-start}}.fi-detail-card{gap:16px}.fi-detail-header{align-items:flex-start;border-bottom:1px solid #e6edf5;display:flex;gap:12px;justify-content:space-between;padding-bottom:14px}.fi-detail-title{display:grid;gap:5px;min-width:0}.fi-detail-title p{color:#607087;font-size:12px;margin:0}.fi-detail-code-line{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.fi-detail-code-line h2{font-size:18px;margin:0}.fi-detail-actions{align-items:center;display:flex;flex-wrap:wrap;flex-shrink:0;gap:8px;justify-content:flex-end}.fi-detail-action{flex-shrink:0}.fi-detail-action.secondary{background:#f8fafc;color:#475569}.fi-status-pill{align-items:center;border:1px solid #cbd5e1;border-radius:999px;display:inline-flex;font-size:12px;font-weight:700;min-height:26px;padding:4px 10px}.fi-status-pill.neutral{background:#f8fafc;color:#475569}.fi-status-pill.info{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.fi-status-pill.success{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.fi-status-pill.warning{background:#fffbeb;border-color:#fde68a;color:#92400e}.fi-status-pill.danger{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.fi-detail-meta{background:#f8fafc;border:1px solid #e1e8ef;border-radius:8px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));overflow:hidden}.fi-meta-item{align-content:start;display:grid;gap:4px;grid-template-columns:auto minmax(0,1fr);padding:12px}.fi-meta-item:not(:last-child){border-right:1px solid #e1e8ef}.fi-meta-item svg{color:#64748b;grid-row:1 / span 2;margin-top:1px}.fi-meta-item span,.fi-section-label,.fi-content-section.notes span{color:#607087;font-size:12px;font-weight:600}.fi-meta-item strong{color:#0f172a;overflow-wrap:anywhere}.fi-detail-content{display:grid;gap:12px}.fi-content-section{border:1px solid #e1e8ef;border-radius:8px;display:grid;gap:10px;padding:14px}.fi-content-section.primary{background:#fff}.fi-content-section.primary h3{font-size:16px;line-height:1.35;margin:0 0 4px;overflow-wrap:anywhere}.fi-content-section.primary p,.fi-content-section.notes p{line-height:1.55;margin:0;white-space:pre-line}.fi-content-section.notes{background:#fffbeb;border-color:#fde68a}.fi-content-section.notes h3,.fi-content-section.timeline h3{font-size:14px;margin:0}.fi-content-section.notes div{display:grid;gap:3px}.fi-content-section.timeline{background:#f8fafc}.fi-section-heading{align-items:center;display:flex;gap:8px}.fi-section-heading svg{color:#64748b}.fi-timeline{display:grid;gap:0}.fi-timeline-item{display:grid;gap:10px;grid-template-columns:14px minmax(0,1fr);padding:2px 0 12px;position:relative}.fi-timeline-item:not(:last-child):before{background:#cbd5e1;bottom:-1px;content:"";left:5px;position:absolute;top:17px;width:2px}.fi-timeline-dot{background:#2563eb;border:3px solid #dbeafe;border-radius:999px;height:12px;margin-top:3px;width:12px;z-index:1}.fi-timeline-row{align-items:baseline;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.fi-timeline-row strong{font-size:13px}.fi-timeline-row time{color:#64748b;font-size:12px}.fi-timeline-actor{align-items:center;color:#475569;display:flex;flex-wrap:wrap;gap:7px;margin:4px 0 0}.fi-timeline-actor span,.fi-timeline-note span{color:#607087;font-size:12px;font-weight:600}.fi-timeline-actor strong{color:#0f172a;font-weight:600}.fi-timeline-note{background:#fff;border:1px solid #e1e8ef;border-radius:6px;display:grid;gap:3px;margin-top:8px;padding:8px 10px}.fi-timeline-note p{color:#0f172a;line-height:1.45;margin:0;white-space:pre-line}@media(max-width:1100px){.fi-detail-meta{grid-template-columns:repeat(2,minmax(0,1fr))}.fi-meta-item:nth-child(2){border-right:0}.fi-meta-item:nth-child(-n+2){border-bottom:1px solid #e1e8ef}}@media(max-width:700px){.admin-fi-kpis,.admin-fi-detail-grid{grid-template-columns:1fr}.fi-detail-header{align-items:stretch;flex-direction:column}.fi-detail-actions{justify-content:stretch}.fi-detail-action{justify-content:center}.fi-detail-meta{grid-template-columns:1fr}.fi-meta-item,.fi-meta-item:nth-child(2){border-right:0}.fi-meta-item:not(:last-child),.fi-meta-item:nth-child(-n+2){border-bottom:1px solid #e1e8ef}.fi-timeline-row{display:grid;gap:3px;justify-content:stretch}}.detail-panel{background:#f8fafc;border:1px solid #e1e8ef;border-radius:8px;display:grid;gap:8px;line-height:1.45;padding:12px;white-space:pre-line}.detail-panel dl{display:grid;gap:6px 12px;grid-template-columns:130px 1fr;margin:0}.detail-panel dt,.detail-grid span{color:#607087;font-size:12px}.detail-panel dd{margin:0}.detail-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.detail-grid div{background:#f8fafc;border:1px solid #e1e8ef;border-radius:8px;display:grid;gap:4px;padding:10px}.history-list{display:grid;gap:4px}.image-empty{align-items:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:6px;display:flex;gap:10px;justify-content:space-between;min-height:48px;padding:8px 10px}.image-placeholder{align-items:center;background:#f8fafc;border:1px solid #e1e8ef;border-radius:4px;color:#607087;display:flex;font-size:12px;justify-content:center;line-height:1.35;min-height:96px;padding:8px;text-align:center;text-decoration:none;width:150px}.image-card-grid{display:flex;flex-wrap:wrap;gap:8px}.image-card{border:1px solid #e1e8ef;border-radius:6px;display:grid;gap:5px;max-width:162px;padding:5px;position:relative}.image-card small{color:#607087;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-thumb{background:transparent;border:0;border-radius:4px;min-height:0;padding:0}.image-thumb:hover{background:transparent}.image-thumb img{border-radius:4px;display:block;max-height:150px;max-width:150px;object-fit:contain}.image-card-delete{background:#ffffffeb;border:0;border-radius:4px;min-height:0;padding:3px;position:absolute;right:5px;top:5px}.image-viewer-backdrop{align-items:center;background:#0f172adb;display:grid;top:0;right:0;bottom:0;left:0;justify-items:center;padding:24px;position:fixed;z-index:100}.image-viewer{background:#0f172a;border:1px solid #334155;border-radius:8px;color:#fff;display:grid;gap:12px;max-height:calc(100vh - 48px);padding:12px;width:min(980px,100%)}.image-viewer-toolbar{align-items:center;display:flex;gap:12px;justify-content:space-between}.image-viewer-toolbar strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-viewer-toolbar div{display:flex;flex-shrink:0;gap:8px}.image-viewer-toolbar button{background:#fff}.image-viewer-stage{align-items:center;display:grid;gap:10px;grid-template-columns:44px minmax(0,1fr) 44px;min-height:min(68vh,720px)}.image-viewer-stage img{border-radius:4px;justify-self:center;max-height:min(68vh,720px);max-width:100%;object-fit:contain}.image-viewer-stage .image-placeholder{justify-self:center}.image-viewer-nav{border-radius:999px;justify-content:center;min-width:40px;padding:8px}.image-viewer>small{color:#cbd5e1;justify-self:center}@media(max-width:900px){.fi-registration-period,.fi-registration-period.with-label{grid-template-columns:1fr 1fr}.fi-registration-period label{grid-column:1 / -1}.fi-completion-row{grid-template-columns:1fr}.fi-completion-row input[type=date]{min-width:0}.image-viewer-backdrop{padding:10px}.image-viewer-toolbar{align-items:stretch;flex-direction:column}.image-viewer-stage{grid-template-columns:36px minmax(0,1fr) 36px;min-height:60vh}}.stats{align-items:baseline;display:flex;gap:8px}.stats.compact strong{font-size:18px}.stats strong{font-size:26px}.error{background:#fff1f2;border:1px solid #fecdd3;border-radius:6px;color:#9f1239;padding:8px 10px}.success{background:#ecfdf3;border:1px solid #bbf7d0;border-radius:6px;color:#166534;padding:8px 10px}.warning-text{background:#fffbeb;border:1px solid #fde68a;border-radius:6px;color:#92400e;display:block;padding:6px 8px}.web-input-shell{display:grid;gap:16px;grid-template-columns:1fr;padding:16px}.web-input-header{grid-template-columns:minmax(220px,1fr) auto}.web-input-controls,.web-input-actions{align-items:end;display:flex;flex-wrap:wrap;gap:8px}.web-input-controls label{display:grid;gap:4px}.web-input-controls span,.objective-override span{color:#607087;font-size:13px;font-weight:600}.web-input-controls select,.objective-override select,.kr-row select,.arising-item select{background:#fff;border:1px solid #c9d2dc;border-radius:7px;font-size:15px;min-height:40px;padding:8px 12px}.status-badge,.save-state{align-items:center;border:1px solid #cbd5e1;border-radius:999px;display:inline-flex;font-size:13px;min-height:32px;padding:5px 12px}.save-state.unsaved{background:#fff7ed;border-color:#fdba74;color:#9a3412}.progress-line{background:#e5eaf0;border-radius:999px;grid-column:1 / -1;height:8px;overflow:hidden}.progress-line span{background:#2563eb;display:block;height:100%}.okr-accordion{border:1px solid #dde5ee;border-radius:8px;overflow:hidden}.okr-accordion+.okr-accordion{margin-top:10px}.okr-accordion-title{background:#f8fafc;border:0;border-radius:0;justify-content:flex-start;width:100%}.okr-accordion-title span{color:#607087;margin-left:auto}.okr-objective-body{display:grid;gap:10px;padding:10px}.objective-override{align-items:center;display:flex;gap:10px;justify-content:flex-end}.kr-row{border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:8px;grid-template-columns:minmax(220px,1.1fr) minmax(260px,1.4fr) minmax(170px,.75fr) minmax(180px,.9fr);padding:10px}.kr-row.invalid,.invalid-row{background:#fff8f8}.kr-readonly{display:grid;gap:4px}.kr-readonly span{line-height:1.35}.et-shell{display:grid;gap:14px;padding:16px}.et-grid{padding:0}.active-row{background:#eef6ff;border-color:#9cc5ff}.wrap-cell{line-height:1.35;max-width:320px;min-width:180px;white-space:normal}.category-row td{background:#dfe9f5;color:#26364a;font-weight:700}.sum-row td{background:#f8fafc;font-weight:700}.et-matrix table{min-width:1180px}.et-item-editor,.et-notes{border-top:1px solid #e2e8f0;display:grid;gap:10px;padding-top:12px}.et-item-editor input,.et-item-editor select,.et-item-editor textarea,.et-notes textarea,.score-input{background:#fff;border:1px solid #c9d2dc;border-radius:6px;min-height:32px;padding:6px 8px}.et-notes{grid-template-columns:repeat(2,minmax(0,1fr))}.level-editor{display:grid;gap:8px;grid-template-columns:repeat(8,minmax(54px,1fr))}.level-editor label{color:#607087;display:grid;font-size:12px;gap:4px}.framework-selector-list{display:grid;gap:6px;max-height:360px;overflow:auto;padding-right:2px}.framework-select-row{align-items:center;background:#fff;border:1px solid #d9e2ec;border-radius:8px;color:#172033;display:grid;gap:8px;grid-template-columns:auto minmax(0,1fr) 10px;min-height:44px;padding:8px 10px;position:relative;text-align:left}.framework-select-row:hover{border-color:#87b9ff;box-shadow:0 4px 12px #0f172a12}.framework-select-row.active-row{background:#eaf4ff;border-color:#60a5fa;box-shadow:0 8px 18px #2563eb24}.framework-select-row.active-row:before{background:#2563eb;border-radius:999px;content:"";height:calc(100% - 16px);left:5px;position:absolute;top:8px;width:3px}.framework-code-chip{background:#eef6ff;border:1px solid #bfdbfe;border-radius:999px;color:#1d4ed8;font-size:12px;font-weight:800;padding:4px 8px;white-space:nowrap}.framework-select-row.active-row .framework-code-chip{background:#2563eb;border-color:#2563eb;color:#fff}.framework-select-row.active-row .framework-select-title{color:#0f2f57}.framework-select-title{color:#26364a;font-size:13px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.framework-status-dot{border-radius:999px;height:9px;width:9px}.framework-status-dot.active{background:#16a34a;box-shadow:0 0 0 3px #dcfce7}.framework-status-dot.inactive{background:#94a3b8;box-shadow:0 0 0 3px #f1f5f9}.framework-hero{align-items:flex-start;border-bottom:1px solid #e2e8f0;display:flex;gap:12px;justify-content:space-between;padding-bottom:12px}.framework-hero h2{margin:8px 0 4px}.framework-summary-grid{display:grid;gap:10px;grid-template-columns:repeat(4,minmax(130px,1fr))}.framework-summary-grid div{background:#f8fafc;border:1px solid #dbe4ee;border-radius:8px;display:grid;gap:4px;min-height:94px;padding:12px;position:relative;overflow:hidden}.framework-summary-grid .tone-skills{background:#eff6ff;border-color:#bfdbfe;border-left:4px solid #2563eb}.framework-summary-grid .tone-average{background:#ecfdf5;border-color:#a7f3d0;border-left:4px solid #16a34a}.framework-summary-grid .tone-max{background:#fff7ed;border-color:#fed7aa;border-left:4px solid #ea580c}.framework-summary-grid .tone-groups{background:#f5f3ff;border-color:#ddd6fe;border-left:4px solid #7c3aed}.framework-summary-grid span,.framework-group-header span{color:#64748b;font-size:12px;font-weight:700;text-transform:uppercase}.framework-summary-grid strong{color:#0f172a;font-size:30px;line-height:1}.framework-level-total-table{align-items:stretch;background:#fff;border:1px solid #dbe4ee;border-radius:8px;display:grid;gap:0;grid-template-columns:minmax(150px,.32fr) minmax(420px,1fr);overflow:hidden}.framework-total-label{background:#f8fafc;border-right:1px solid #dbe4ee;display:grid;gap:4px;padding:12px}.framework-total-label span{color:#64748b;font-size:12px;font-weight:800;text-transform:uppercase}.framework-total-label strong{color:#0f172a;font-size:26px;line-height:1}.framework-total-grid{display:grid;grid-template-columns:repeat(8,minmax(56px,1fr))}.framework-total-head,.level-total-cell{align-items:center;border-left:1px solid #e2e8f0;display:inline-flex;justify-content:center;min-height:34px;padding:6px 8px}.framework-total-head{background:#f8fafc;color:#475569;font-size:12px;font-weight:800}.level-total-cell{border-top:1px solid #e2e8f0;font-size:18px;font-weight:900}.framework-total-grid :nth-child(1),.framework-total-grid :nth-child(9){border-left:0}.level-total-cell.level-1{background:#fff7ed;color:#9a3412}.level-total-cell.level-2{background:#eff6ff;color:#1d4ed8}.level-total-cell.level-3,.level-total-cell.level-4,.level-total-cell.level-5,.level-total-cell.level-6{background:#ecfdf5;color:#166534}.level-total-cell.level-7{background:#f3e8ff;color:#7e22ce}.level-total-cell.level-8{background:#fee2e2;color:#b91c1c}.framework-card-stack{display:grid;gap:12px}.framework-group-card{border:1px solid #dbe4ee;border-radius:8px;overflow:hidden}.framework-group-header{align-items:center;background:#f8fafc;border-bottom:1px solid #dbe4ee;display:flex;justify-content:space-between;padding:12px}.framework-group-header h3{margin:2px 0 0}.framework-group-header strong{align-items:center;background:#dff7e9;border-radius:999px;color:#166534;display:inline-flex;min-width:34px;padding:5px 10px}.framework-item-list{display:grid}.framework-score-column-header{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;display:grid;gap:12px;grid-template-columns:minmax(260px,1fr) minmax(360px,.8fr);padding:8px 12px}.framework-score-column-header.has-actions{grid-template-columns:minmax(260px,1fr) minmax(360px,.8fr) 76px}.framework-score-column-header .framework-score-grid span{color:#475569;font-size:12px;font-weight:800;text-align:center}.framework-item-card{align-items:center;border-bottom:1px solid #edf2f7;display:grid;gap:12px;grid-template-columns:minmax(260px,1fr) minmax(360px,.8fr);padding:12px}.framework-item-card.has-actions{grid-template-columns:minmax(260px,1fr) minmax(360px,.8fr) 76px}.framework-item-card:last-child{border-bottom:0}.framework-item-main{align-items:flex-start;display:grid;gap:10px;grid-template-columns:42px minmax(0,1fr)}.framework-item-index{align-items:center;background:#e2e8f0;border-radius:8px;color:#334155;display:inline-flex;font-weight:800;height:34px;justify-content:center}.link-button{background:transparent;border:0;color:inherit;cursor:pointer;padding:0;text-align:left}.framework-item-title{color:#0f2f57;font-size:15px;font-weight:800;line-height:1.35}.framework-item-title:hover{color:#0b63ce;text-decoration:underline}.framework-item-main p{color:#475569;line-height:1.4;margin:4px 0}.framework-item-main small{color:#64748b;font-weight:700}.framework-score-grid{display:grid;gap:6px;grid-template-columns:repeat(8,minmax(42px,1fr))}.framework-score-chip{align-items:center;border:1px solid transparent;border-radius:8px;display:inline-flex;font-weight:800;justify-items:center;min-height:42px;justify-content:center;padding:4px}.framework-score-chip b{font-size:10px;opacity:.78}.score-empty{background:#f1f5f9;border-color:#e2e8f0;color:#64748b}.score-one,.score-low{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.score-two{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}.score-three{background:#dcfce7;border-color:#86efac;color:#166534}.score-four{background:#f3e8ff;border-color:#c084fc;color:#7e22ce}.score-five{background:#fee2e2;border-color:#f87171;box-shadow:inset 0 0 0 1px #dc262633;color:#b91c1c}.score-mid{background:#eef6ff;border-color:#bfdbfe;color:#1d4ed8}.score-high{background:#dcfce7;border-color:#bbf7d0;color:#166534}.framework-item-actions{display:inline-flex;gap:6px}.danger-button{border-color:#fecaca!important;color:#b91c1c!important}.danger-button:hover:not(:disabled){background:#fef2f2!important;border-color:#f87171!important}.framework-detail-modal{background:#fff;border-radius:8px;box-shadow:0 24px 80px #0f172a3d;display:grid;gap:14px;max-height:min(760px,88vh);max-width:980px;overflow:auto;padding:18px;width:min(980px,calc(100vw - 32px))}.framework-edit-modal,.framework-confirm-modal{background:#fff;border-radius:8px;box-shadow:0 24px 80px #0f172a3d;display:grid;gap:14px;max-height:min(780px,88vh);overflow:auto;padding:18px;width:min(860px,calc(100vw - 32px))}.framework-edit-modal.compact,.framework-confirm-modal{width:min(560px,calc(100vw - 32px))}.framework-edit-modal .form-stack label{color:#475569;display:grid;font-size:12px;font-weight:800;gap:5px;text-transform:uppercase}.modal-actions{border-top:1px solid #e2e8f0;display:flex;gap:8px;justify-content:flex-end;padding-top:12px}.modal-backdrop{align-items:center;background:#0f172a6b;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:16px;position:fixed;z-index:90}.modal-score-grid{grid-template-columns:repeat(8,minmax(54px,1fr))}.framework-detail-section{border-top:1px solid #e2e8f0;display:grid;gap:8px;padding-top:12px}.framework-detail-section h3{margin:0}.framework-detail-section p,.framework-detail-section li{color:#334155;line-height:1.5}.framework-detail-section ul{margin:0;padding-left:20px}@media(max-width:980px){.framework-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.framework-level-total-table{grid-template-columns:1fr}.framework-total-label{border-bottom:1px solid #dbe4ee;border-right:0}.framework-item-card,.framework-score-column-header,.framework-score-column-header.has-actions{grid-template-columns:1fr}.framework-score-column-header>span{display:none}.framework-score-grid,.modal-score-grid{grid-template-columns:repeat(4,minmax(52px,1fr))}}.score-input{width:66px}.gap-pill{border-radius:999px;display:inline-flex;justify-content:center;min-width:38px;padding:3px 8px}.gap-good,.et-heatmap .gap-good{background:#dff7e9;color:#166534}.gap-warn,.et-heatmap .gap-warn{background:#fff3c4;color:#92400e}.gap-bad,.et-heatmap .gap-bad{background:#ffe1e1;color:#991b1b}.gap-empty,.et-heatmap .gap-empty{background:#eef2f6;color:#607087}.gap-na,.et-heatmap .gap-na{background:#f3f4f6;color:#9ca3af}.gap-excluded,.et-heatmap .gap-excluded,.excluded-row{background:#f1f5f9;color:#64748b}.et-stats{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.et-stat-card{background:#fff;border:1px solid #e1e8ef;border-radius:8px;box-shadow:0 8px 20px #0f172a0a;display:grid;gap:5px;overflow:hidden;padding:14px 14px 14px 16px;position:relative}.et-stat-card:before{content:"";inset:0 auto 0 0;position:absolute;width:4px}.et-stat-card.tone-total:before{background:#2563eb}.et-stat-card.tone-team:before{background:#7c3aed}.et-stat-card.tone-role:before{background:#0f766e}.et-stat-card.tone-active:before{background:#16a34a}.et-stat-card.tone-inactive:before{background:#d97706}.et-stat-card.tone-total{background:#f8fbff}.et-stat-card.tone-team{background:#fbfaff}.et-stat-card.tone-role{background:#f6fffd}.et-stat-card.tone-active{background:#f5fff8}.et-stat-card.tone-inactive{background:#fffbeb}.et-stat-card.tone-total strong{color:#1d4ed8}.et-stat-card.tone-team strong{color:#6d28d9}.et-stat-card.tone-role strong{color:#0f766e}.et-stat-card.tone-active strong{color:#15803d}.et-stat-card.tone-inactive strong{color:#b45309}.et-stats strong{font-size:24px;font-variant-numeric:tabular-nums;line-height:1}.et-stats span{color:#607087;font-size:12px;font-weight:700}.et-personnel-dashboard{grid-column:1 / -1}.et-personnel-table-head{align-items:flex-start;gap:14px}.et-personnel-title{display:grid;gap:3px;min-width:220px}.et-personnel-title h2{margin:0}.et-personnel-title .muted{margin:0;max-width:520px}.et-personnel-search{align-items:center;background:#fff;border:1px solid #d8e2ec;border-radius:8px;display:flex;flex:1;gap:8px;min-width:260px;padding:0 10px}.et-personnel-table-head .toolbar{flex:0 0 auto}.et-personnel-search svg{color:#607087;flex:0 0 auto}.et-personnel-search input{border:0;flex:1;min-width:0;padding:10px 0}.et-personnel-search input:focus{outline:none}.et-personnel-panel{overflow:hidden}.et-personnel-table-wrap{border:1px solid #e1e8ef;border-radius:8px;margin-top:4px}.et-personnel-table-wrap table{border-collapse:separate;border-spacing:0;min-width:860px;width:100%}.et-personnel-table-wrap th{background:#f8fafc;border-bottom:1px solid #e1e8ef;color:#526178;font-size:11px;font-weight:800;letter-spacing:.04em;padding:11px 12px;text-align:left;text-transform:uppercase;white-space:nowrap}.et-personnel-table-wrap td{border-bottom:1px solid #edf2f7;padding:12px;vertical-align:middle}.et-personnel-table-wrap tbody tr:last-child td{border-bottom:0}.et-personnel-row{background:#fff;transition:background .15s ease,box-shadow .15s ease}.et-personnel-row:hover{background:#f8fbff;box-shadow:inset 4px 0 #93c5fd}.et-personnel-row.tone-active:hover{box-shadow:inset 4px 0 #22c55e}.et-personnel-row.tone-inactive:hover,.et-personnel-row.tone-transferred:hover{box-shadow:inset 4px 0 #f59e0b}.et-person-name-cell{align-items:center;display:flex;gap:10px;min-width:220px}.et-person-name-cell>div{display:grid;gap:2px;min-width:0}.et-person-name-cell strong{color:#172033;font-size:14px;line-height:1.25}.et-person-name-cell small{color:#64748b;font-size:11.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.et-person-avatar{align-items:center;border-radius:8px;color:#fff;display:inline-flex;flex:0 0 auto;font-size:11px;font-weight:800;height:34px;justify-content:center;letter-spacing:0;width:34px}.et-person-avatar.tone-leader{background:#1d4ed8}.et-person-avatar.tone-captain{background:#0f766e}.et-person-avatar.tone-staff{background:#475569}.et-person-avatar.tone-unknown{background:#94a3b8}.et-code-chip,.et-team-pill,.et-data-pill,.et-salary-pill{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:800;line-height:1;min-height:26px;padding:6px 10px;white-space:nowrap}.et-code-chip{background:#eef2ff;color:#3730a3;font-variant-numeric:tabular-nums}.et-team-pill{background:#f1f5f9;color:#334155}.et-role-leader{background:#dbeafe;color:#1d4ed8}.et-role-captain{background:#ccfbf1;color:#0f766e}.et-role-staff{background:#f1f5f9;color:#475569}.et-role-unknown{background:#f8fafc;border:1px dashed #cbd5e1;color:#64748b}.et-status-active{background:#dcfce7;color:#15803d}.et-status-inactive{background:#fee2e2;color:#b91c1c}.et-status-transferred{background:#fef3c7;color:#b45309}.et-status-unknown{background:#f1f5f9;color:#64748b}.et-salary-high{background:#fef3c7;color:#92400e}.et-salary-mid{background:#e0f2fe;color:#0369a1}.et-salary-low{background:#ecfccb;color:#3f6212}.et-salary-empty{background:#f8fafc;border:1px dashed #cbd5e1;color:#64748b}.et-personnel-empty-state{color:#607087;font-weight:700;padding:24px 12px;text-align:center}.et-assessment-personnel-picker{position:relative}.et-assessment-personnel-picker input{padding-right:38px}.et-assessment-personnel-list{background:#fff;border:1px solid #d8e2ec;border-radius:8px;box-shadow:0 18px 42px #0f172a29;display:grid;left:0;max-height:280px;overflow:auto;padding:6px;position:absolute;right:0;top:calc(100% + 6px);z-index:20}.et-assessment-personnel-list button{align-items:flex-start;background:transparent;border:0;border-radius:7px;color:#172033;cursor:pointer;display:grid;gap:3px;justify-items:start;min-height:52px;padding:9px 10px;text-align:left}.et-assessment-personnel-list button:hover,.et-assessment-personnel-list button:focus,.et-assessment-personnel-list button[aria-selected=true]{background:#eef5ff;outline:none}.et-assessment-personnel-list button strong{font-size:13.5px;font-weight:750}.et-assessment-personnel-list button span,.et-assessment-personnel-empty,.et-assessment-account-link span{color:#607087;font-size:12px}.et-assessment-personnel-empty{padding:12px 10px}.et-assessment-account-link{align-items:center;background:#f8fafc;border:1px solid #e1e8ef;border-radius:8px;display:flex;gap:8px;justify-content:space-between;min-height:38px;padding:8px 10px}.et-assessment-account-link strong{color:#172033;font-size:12.5px}.et-row-actions{display:flex;gap:6px;white-space:nowrap}.et-row-actions button,.et-personnel-modal-close{align-items:center;display:inline-flex;justify-content:center}.et-personnel-modal-backdrop{align-items:center;background:#0f172a6b;display:flex;top:0;right:0;bottom:0;left:0;justify-content:center;padding:20px;position:fixed;z-index:80}.et-personnel-modal{background:#fff;border-radius:8px;box-shadow:0 24px 60px #0f172a47;display:grid;gap:0;max-height:min(760px,calc(100vh - 40px));max-width:860px;overflow:auto;padding:0;width:min(860px,100%)}.et-personnel-modal-head,.et-personnel-modal-actions{align-items:center;display:flex;gap:12px;justify-content:space-between}.et-personnel-modal-head{background:#f8fafc;border-bottom:1px solid #e1e8ef;padding:18px 20px}.et-personnel-modal-head h2{margin:0}.et-personnel-modal-close{height:36px;padding:0;width:36px}.et-personnel-modal-banner{align-items:center;border-bottom:1px solid #eef2f7;display:flex;gap:12px;justify-content:space-between;padding:12px 20px}.et-personnel-modal-banner span{color:#607087;font-size:12px;font-weight:700}.et-personnel-modal-banner strong{color:#0f172a;font-size:15px}.et-personnel-form-grid{display:grid;gap:14px;grid-template-columns:repeat(2,minmax(0,1fr));padding:18px 20px}.et-personnel-form-grid label{color:#40516a;display:grid;font-size:13px;font-weight:700;gap:6px}.et-personnel-form-grid input,.et-personnel-form-grid select{background:#fff;border:1px solid #c9d6e3;border-radius:7px;color:#172033;font-size:14px;font-weight:500;min-height:40px;padding:8px 10px;width:100%}.et-personnel-form-grid input:focus,.et-personnel-form-grid select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb24;outline:none}.et-personnel-section-title,.et-personnel-field-wide{grid-column:1 / -1}.et-personnel-section-title{color:#0f172a;font-size:12px;font-weight:800;letter-spacing:.04em;margin-top:4px;text-transform:uppercase}.et-personnel-modal-actions{border-top:1px solid #e1e8ef;justify-content:flex-end;padding:14px 20px 18px}.et-personnel-modal-actions button{min-height:40px}.et-top-lists{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.et-top-lists div{background:#f8fafc;border:1px solid #e1e8ef;border-radius:8px;display:grid;gap:6px;padding:12px}.et-heatmap table,.et-timeline table{font-size:12px;min-width:1100px}.et-heatmap td:not(:first-child),.et-timeline td:not(:first-child),.et-timeline th:not(:first-child){min-width:46px;text-align:center}.level-1,.level-2{background:#dbeafe;color:#1d4ed8;font-weight:700}.level-3,.level-4{background:#dcfce7;color:#166534;font-weight:700}.level-5,.level-6{background:#fef3c7;color:#92400e;font-weight:700}.level-7,.level-8{background:#fee2e2;color:#991b1b;font-weight:700}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{position:static}.content-grid,.web-input-shell,.et-notes,.et-top-lists{grid-template-columns:1fr}.et-personnel-table-head,.et-personnel-modal-head,.et-personnel-modal-actions{align-items:stretch;flex-direction:column}.et-personnel-form-grid{grid-template-columns:1fr}.level-editor{grid-template-columns:repeat(4,minmax(54px,1fr))}}.kr-readonly small{color:#607087}.kr-row textarea,.arising-item textarea,.email-preview{background:#fff;border:1px solid #c9d2dc;border-radius:7px;font-size:15px;line-height:1.55;min-height:72px;padding:10px 12px;resize:vertical;width:100%}.arising-list{display:grid;gap:10px}.arising-item{align-items:start;display:grid;gap:8px;grid-template-columns:28px minmax(0,1fr) 160px auto}.email-preview{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;min-height:190px}.preview-table{max-height:460px}.preview-summary{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.preview-stat{background:#f8fafc;border:1px solid #dbe4ee;border-radius:8px;display:grid;gap:4px;padding:10px}.preview-stat span,.preview-sections small{color:#607087}.preview-stat strong{font-size:20px}.preview-sections{display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.preview-sections section{border:1px solid #dbe4ee;border-radius:8px;display:grid;gap:8px;padding:12px}.preview-email{white-space:pre-wrap}pre{background:#f8fafc;border-radius:6px;margin:0;overflow:auto;padding:10px}.sr-only{height:1px;left:-10000px;overflow:hidden;position:absolute;top:auto;width:1px}.matrix-status-button{background:transparent;border:0;min-height:28px;min-width:56px;padding:0}.matrix-status-button.active-kr{outline:2px solid #f97316;outline-offset:2px}.monthly-history table{min-width:980px}.monthly-overview-grid{align-items:start;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) 240px}.allocation-note{background:#f8fafc;border:1px solid #dbe4ee;border-radius:8px;display:grid;gap:10px;min-height:100%;padding:12px}.allocation-note-header{display:grid;gap:8px}.allocation-note-header h3{font-size:14px;margin:0}.allocation-note-header div{align-items:center;display:grid;gap:6px;grid-template-columns:auto auto auto auto;justify-content:start}.allocation-note-header span,.allocation-note p{color:#607087}.allocation-note-list{display:grid;gap:8px}.allocation-note-list div{align-items:center;border-top:1px solid #e4ebf2;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto auto;padding-top:8px}.history-cell{border-radius:6px;display:inline-flex;justify-content:center;min-width:74px;padding:5px 8px}.history-good{background:#dcfce7;color:#166534}.history-ok{background:#e0f2fe;color:#075985}.history-ng{background:#fee2e2;color:#991b1b}.history-empty{background:#f1f5f9;color:#64748b}.chart-grid,.warning-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.objective-dashboard{display:grid;gap:20px;grid-column:1 / -1;padding:0 28px 28px}.objective-section{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:grid;gap:16px;padding:0;overflow:hidden;transition:var(--transition)}.objective-section:hover{box-shadow:var(--shadow-md)}.objective-section-header{align-items:center;background:#f8fafc;border-bottom:1px solid var(--border);display:grid;gap:12px;grid-template-columns:38px minmax(0,1fr) auto auto;padding:16px 20px}.objective-section-header h2{font-size:16px;font-weight:700;line-height:1.35;color:var(--primary)}.objective-code{color:var(--accent);font-size:11px;font-weight:700;margin-bottom:2px;text-transform:uppercase;letter-spacing:.05em}.objective-icon,.objective-visual-icon{align-items:center;background:var(--accent-light);border:1px solid rgba(37,99,235,.15);border-radius:var(--radius-sm);color:var(--accent);display:inline-flex;height:36px;justify-content:center;width:36px}.objective-status{border:1px solid #cbd5e1;border-radius:999px;display:inline-flex;font-size:11px;font-weight:700;min-width:92px;padding:4px 10px;justify-content:center;text-transform:uppercase;letter-spacing:.02em}.objective-status-completed{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.objective-status-at_risk{background:#fffbeb;border-color:#fde68a;color:#92400e}.objective-status-failed{background:#fef2f2;border-color:#fecaca;color:#991b1b}.objective-status-no_plan,.objective-status-no_data{background:#f1f5f9;border-color:var(--border);color:var(--text-muted)}.objective-drill-button{white-space:nowrap}.objective-section-body{display:grid;gap:16px;padding:0 20px 20px}.objective-conclusion{background:var(--bg-main);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:var(--radius-sm);color:var(--primary-light);line-height:1.45;padding:12px 16px;font-size:13.5px}.objective-visual-grid{align-items:start;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.objective-visual{align-self:start;border:1px solid var(--border);border-radius:var(--radius-md);display:grid;gap:14px;min-width:0;padding:16px;background-color:var(--bg-card)}.objective-visual-header{align-items:center;display:flex;gap:10px;border-bottom:1px solid var(--border);padding-bottom:10px;margin-bottom:4px}.objective-visual-header h3{font-size:14px;font-weight:600;line-height:1.35;margin:0;color:var(--primary)}.objective-empty,.empty-dashboard-banner{align-items:center;border-radius:var(--radius-sm);display:flex;gap:10px;line-height:1.45;padding:14px;font-size:13px}.objective-empty-plan{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.objective-empty-data,.empty-dashboard-banner{background:var(--bg-main);border:1px dashed var(--border);color:var(--text-muted)}.empty-dashboard-banner{justify-content:space-between;margin:0 28px 16px}.kpi-badge-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.kpi-badge{background:var(--bg-main);border:1px solid var(--border);border-radius:var(--radius-sm);display:grid;gap:4px;padding:12px;transition:var(--transition)}.kpi-badge:hover{background:#fff;border-color:var(--accent);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.kpi-badge span{color:var(--text-muted);font-size:11.5px;font-weight:500}.kpi-badge strong{font-size:18px;color:var(--primary);font-weight:700}.objective-status-grid,.narrative-list{display:grid;gap:8px}.objective-status-grid,.visual-kind-narrative_card .narrative-list{grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}[data-objective-code=O2] .objective-visual-grid{grid-template-columns:minmax(520px,1.15fr) minmax(440px,.85fr)}[data-objective-code=O2] .visual-id-o2_bddk_by_team{grid-column:1;grid-row:1}[data-objective-code=O2] .visual-id-o2_bddk_by_month{grid-column:2;grid-row:1}[data-objective-code=O2] .visual-id-o2_scdx_by_team{grid-column:1;grid-row:2}[data-objective-code=O2] .visual-id-o2_scdx_by_month{grid-column:2;grid-row:2}[data-objective-code=O3] .objective-visual-grid{grid-template-columns:repeat(2,minmax(320px,1fr));gap:16px}[data-objective-code=O3] .objective-visual{padding:12px;gap:8px}[data-objective-code=O3] .objective-visual-header{padding-bottom:6px;margin-bottom:0}[data-objective-code=O5] .objective-visual-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;grid-auto-flow:dense}[data-objective-code=O5] .objective-visual-grid>.objective-visual{margin-bottom:0;width:auto}.visual-id-o5_tpm_narrative .narrative-item{border:none;border-bottom:1px dashed #e2e8f0;border-radius:0;padding:8px 0;display:flex;align-items:flex-start;gap:8px;background:transparent}.visual-id-o5_tpm_narrative .narrative-item:last-child{border-bottom:none}.visual-id-o5_tpm_narrative .narrative-item strong{color:#2563eb;background:#eff6ff;font-size:11px;padding:2px 6px;border-radius:4px;white-space:nowrap}.visual-id-o5_tpm_narrative .narrative-item span{font-size:11px;color:#334155;line-height:1.4}.visual-id-o5_fi .narrative-list{display:grid;gap:10px;grid-template-columns:1fr}.visual-id-o5_fi .narrative-item{background:var(--bg-main);border:1px solid var(--border);border-radius:var(--radius-sm);display:grid;gap:4px;padding:12px;transition:var(--transition);text-align:left}.visual-id-o5_fi .narrative-item:hover{background:#fff;border-color:var(--accent);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.visual-id-o5_fi .narrative-item strong{order:2;font-size:18px;color:var(--primary);font-weight:700}.visual-id-o5_fi .narrative-item span{order:1;color:var(--text-muted);font-size:11.5px;font-weight:500}.objective-status-row,.narrative-item{border:1px solid #e4ebf2;border-radius:8px;display:grid;gap:6px;padding:9px}.objective-status-row span,.narrative-item span{color:#475569;line-height:1.4}.objective-status-row div{display:flex;flex-wrap:wrap;gap:6px}.metric-table-stack{display:grid;gap:10px}.metric-table-wrapper{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.metric-table{border-collapse:collapse;font-size:12px;width:100%}.metric-table th,.metric-table td{border-bottom:1px solid #e4ebf2;padding:10px 8px;text-align:right;vertical-align:middle;white-space:nowrap}.metric-table th{background:#f8fafc;color:#607087;font-weight:600}.metric-table th:first-child,.metric-table td:first-child{text-align:left}.metric-table td strong,.metric-table td small{display:block}.metric-table td small{color:#607087;margin-top:2px}.metric-note-block{background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;color:#7c2d12;display:grid;gap:6px;line-height:1.45;padding:10px}.metric-note-block ul{display:grid;gap:4px;list-style:none;margin:0;padding:0}.metric-note-block li{white-space:pre-wrap}[data-objective-code=O5] .objective-visual-grid>.visual-id-o5_competency,[data-objective-code=O5] .objective-visual-grid>.visual-id-o5_training,[data-objective-code=O5] .objective-visual-grid>.visual-id-o5_fi{grid-column:1 / -1}.visual-id-o5_fi .narrative-list{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.visual-id-o5_competency{background:linear-gradient(180deg,#fff,#f8fcfa);border-color:#b7e7c9}.visual-id-o5_competency .objective-visual-icon{background:#ecfdf5;border-color:#bbf7d0;color:#059669}.visual-id-o5_competency .objective-visual-header{border-color:#d8f3e2}.competency-radar-layout{align-items:start;display:grid;gap:18px;grid-template-areas:"goal radar list";grid-template-columns:minmax(190px,.68fr) minmax(360px,1.18fr) minmax(240px,.88fr)}.competency-goal-panel{display:grid;gap:12px;grid-area:goal;min-width:0}.competency-kicker{align-items:center;color:#059669;display:inline-flex;font-size:12px;font-weight:800;gap:7px;letter-spacing:.04em;text-transform:uppercase}.competency-goal-panel h4{color:#0f172a;font-size:18px;line-height:1.35;margin:0}.competency-main-metric{align-items:baseline;display:flex;gap:8px}.competency-main-metric strong{color:#dc2626;font-size:34px;line-height:1}.competency-main-metric span{color:#059669;font-size:14px;font-weight:800}.competency-mini-stats{display:grid;gap:6px}.competency-mini-stats span{align-items:baseline;color:#475569;display:flex;font-size:12px;gap:6px}.competency-mini-stats strong{color:#0f172a;font-size:14px}.competency-milestones{display:grid;gap:5px;margin:2px 0 0}.competency-milestones div{align-items:baseline;display:grid;gap:6px;grid-template-columns:46px minmax(0,1fr)}.competency-milestones dt{color:#dc2626;font-size:13px;font-weight:800}.competency-milestones dd{color:#334155;font-size:12.5px;margin:0}.competency-radar-stage{display:flex;grid-area:radar;justify-content:center;min-width:0}.competency-radar-svg{height:auto;max-width:100%;overflow:visible;width:460px}.competency-radar-ring{fill:none;stroke:#10b981;stroke-width:1.6}.competency-radar-ring.outer{stroke-width:2}.competency-radar-axis{stroke:#10b9817a;stroke-width:1.1}.competency-radar-main-axis{stroke:#10b98194;stroke-dasharray:4 4;stroke-width:1.2}.competency-radar-scale{fill:#ef4444;font-size:12px;font-weight:800}.competency-radar-data-fill{fill:#ef44441f;stroke:none}.competency-radar-data-line{fill:none;stroke:#ef4444;stroke-linecap:round;stroke-linejoin:round;stroke-width:3}.competency-radar-point{fill:#ef4444;stroke:#fff;stroke-width:1.6}.competency-radar-label{fill:#0f172a;font-size:12px;font-weight:800}.competency-position-list{display:grid;gap:8px;grid-area:list;min-width:0}.competency-fi-dashboard{background:#f8fbff;border:1px solid #dbeafe;border-radius:8px;display:grid;gap:10px;grid-area:fi;min-width:0;padding:12px}.competency-fi-title{align-items:center;display:flex;gap:10px;justify-content:space-between}.competency-fi-title span{align-items:center;color:#2563eb;display:inline-flex;font-size:12px;font-weight:800;gap:6px;text-transform:uppercase}.competency-fi-title strong{color:#0f172a;font-size:12px;font-variant-numeric:tabular-nums}.competency-fi-kpis{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.competency-fi-kpis span{align-items:center;background:#fff;border:1px solid #dbe7ef;border-radius:8px;display:grid;gap:3px;grid-template-columns:18px minmax(0,1fr) auto;min-width:0;padding:8px}.competency-fi-kpis svg{color:#2563eb;grid-row:1 / span 2}.competency-fi-kpis small{color:#64748b;font-size:11px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.competency-fi-kpis strong{color:#0f172a;font-size:18px;font-variant-numeric:tabular-nums;line-height:1}.competency-fi-kpis em{align-self:center;color:#0f766e;font-size:11px;font-style:normal;font-weight:800;grid-row:1 / span 2}.competency-fi-team-grid{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.competency-fi-team{background:#fff;border:1px solid #e1e8ef;border-radius:8px;display:grid;gap:7px;min-width:0;padding:9px}.competency-fi-team-head{align-items:baseline;display:flex;gap:8px;justify-content:space-between}.competency-fi-team-head strong{color:#0f172a;font-size:12px}.competency-fi-team-head span{color:#64748b;font-size:11px;font-weight:700;white-space:nowrap}.competency-fi-team-bars{display:grid;gap:5px}.competency-fi-team-bars span{align-items:center;display:grid;gap:6px;grid-template-columns:minmax(0,1fr) 58px}.competency-fi-team-bars i{background:#eef2f7;border-radius:999px;display:block;height:6px;overflow:hidden}.competency-fi-team-bars b{border-radius:inherit;display:block;height:100%}.competency-fi-team-bars .tone-approved{background:#10b981}.competency-fi-team-bars .tone-khmt{background:#2563eb}.competency-fi-team-bars .tone-okr{background:#f59e0b}.competency-fi-team-bars em{color:#475569;font-size:10.5px;font-style:normal;font-weight:700;text-align:right}.competency-position-item{background:#fff;border:1px solid #dbe7ef;border-radius:8px;display:grid;gap:7px;padding:8px 10px}.competency-position-head{align-items:center;display:grid;gap:8px;grid-template-columns:7px minmax(0,1fr) auto}.competency-position-head span:nth-child(2){color:#334155;font-size:12px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.competency-position-head strong{color:#0f172a;font-size:12px;font-variant-numeric:tabular-nums}.competency-position-dot{background:#94a3b8;border-radius:50%;height:7px;width:7px}.competency-position-track{background:#eef2f7;border-radius:999px;display:block;height:5px;overflow:hidden}.competency-position-track span{background:#94a3b8;border-radius:inherit;display:block;height:100%}.competency-position-item.tone-complete .competency-position-dot,.competency-position-item.tone-complete .competency-position-track span{background:#059669}.competency-position-item.tone-review .competency-position-dot,.competency-position-item.tone-review .competency-position-track span{background:#16a34a}.competency-position-item.tone-progress .competency-position-dot,.competency-position-item.tone-progress .competency-position-track span{background:#f59e0b}.competency-position-item.tone-start .competency-position-dot,.competency-position-item.tone-start .competency-position-track span{background:#f97316}.visual-id-o5_training{background:linear-gradient(180deg,#fff,#f9fbff);border-color:#bfd7ff}.visual-id-o5_training .objective-visual-icon{background:#eff6ff;border-color:#bfdbfe;color:#2563eb}.visual-id-o5_training .objective-visual-header{border-color:#dbeafe}.training-dashboard{display:grid;gap:14px}.training-summary-panel{align-items:stretch;background:#f8fbff;border:1px solid #dbeafe;border-radius:8px;display:grid;gap:14px;grid-template-columns:minmax(240px,.92fr) minmax(320px,1.08fr);padding:14px}.training-summary-main{display:grid;gap:8px;min-width:0}.training-kicker{color:#2563eb;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.training-summary-main h4{color:#0f172a;font-size:18px;line-height:1.25;margin:0}.training-total{align-items:baseline;display:flex;gap:8px}.training-total strong{color:#16a34a;font-size:34px;line-height:1}.training-total span{color:#334155;font-size:14px;font-weight:700}.training-total-track{background:#e5edf7;border-radius:999px;height:8px;overflow:hidden}.training-total-track span{background:linear-gradient(90deg,#2563eb,#16a34a);border-radius:inherit;display:block;height:100%}.training-summary-main small{color:#475569;font-size:12px;font-weight:700}.training-summary-stats{display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr))}.training-summary-stats span{background:#fff;border:1px solid #dbeafe;border-radius:8px;color:#475569;display:grid;font-size:12px;gap:3px;padding:10px}.training-summary-stats strong{color:#0f172a;font-size:18px;line-height:1}.training-month-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.training-month-card{background:#fff;border:1px solid #dbe7ef;border-left:4px solid #94a3b8;border-radius:8px;display:grid;gap:10px;min-width:0;padding:11px}.training-month-card.tone-done{border-left-color:#16a34a}.training-month-card.tone-progress{border-left-color:#2563eb}.training-month-card.tone-planned{border-left-color:#f59e0b}.training-month-card.tone-empty{border-left-color:#cbd5e1}.training-month-head{align-items:baseline;display:flex;gap:8px;justify-content:space-between}.training-month-head strong{color:#0f172a;font-size:16px}.training-month-head span{color:#64748b;font-size:11.5px;font-weight:700}.training-month-bars{display:grid;gap:7px}.training-month-bars div{align-items:center;display:grid;gap:8px;grid-template-columns:62px minmax(0,1fr) 42px}.training-month-bars span{color:#475569;font-size:11.5px;font-weight:700}.training-month-bars i{background:#eef2f7;border-radius:999px;display:block;height:7px;overflow:hidden}.training-month-bars b{border-radius:inherit;display:block;height:100%}.training-month-bars div:first-child b{background:#2563eb}.training-month-bars div:last-child b{background:#16a34a}.training-month-bars strong{color:#0f172a;font-size:12px;font-variant-numeric:tabular-nums;text-align:right}.training-month-footer{align-items:center;display:flex;gap:8px;justify-content:space-between}.training-month-footer strong{color:#0f172a;font-size:18px;font-variant-numeric:tabular-nums}.training-month-footer span,.training-month-card p{border-radius:999px;font-size:11px;font-weight:800;margin:0;padding:4px 8px}.training-month-card.tone-done .training-month-footer span{background:#dcfce7;color:#166534}.training-month-card.tone-progress .training-month-footer span{background:#dbeafe;color:#1d4ed8}.training-month-card.tone-planned .training-month-footer span{background:#fef3c7;color:#92400e}.training-month-card.tone-empty .training-month-footer span{background:#f1f5f9;color:#64748b}.training-month-card p{background:#fff7ed;color:#9a3412;justify-self:start}@media(max-width:1180px){.competency-radar-layout{grid-template-areas:"goal radar" "list list";grid-template-columns:minmax(240px,.8fr) minmax(320px,1fr)}.competency-position-list{grid-area:list;grid-template-columns:repeat(2,minmax(0,1fr))}.competency-fi-team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.competency-radar-layout{grid-template-areas:"goal" "radar" "list";grid-template-columns:1fr}.training-summary-panel,.competency-position-list,.competency-fi-kpis,.competency-fi-team-grid{grid-template-columns:1fr}.competency-position-list{grid-area:list}.competency-goal-panel h4{font-size:16px}.training-summary-stats{grid-template-columns:1fr}}.radar-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:24px;align-items:center}.radar-chart-container{display:flex;justify-content:center;align-items:center}.radar-chart{background:var(--bg-hover, #f8fafc);border:1px solid var(--border, #e4ebf2);border-radius:12px;color:var(--primary, #2563eb);width:220px;height:220px}.radar-grid-circle{fill:none;stroke:var(--border, #e2e8f0);stroke-width:1px}.radar-grid-circle.outer{stroke:var(--border-focus, #cbd5e1);stroke-width:1.2px}.radar-grid-circle:not(.outer){stroke-dasharray:3 3}.radar-grid-spoke{stroke:var(--border, #e2e8f0);stroke-width:1px;stroke-dasharray:2 2}.radar-grid-label{fill:var(--text-muted, #64748b);font-size:8px;font-weight:600;text-anchor:end}.radar-polygon{fill:#2563eb26;stroke:var(--primary, #2563eb);stroke-width:2.5;transition:all .3s ease}.radar-polygon:hover{fill:#2563eb40;stroke-width:3}.radar-legend{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px 12px;width:100%}.radar-legend-item{display:flex;justify-content:space-between;align-items:center;padding:6px 10px;background:var(--bg-card-subtle, #f8fafc);border:1px solid var(--border, #e2e8f0);border-radius:8px;font-size:11px;transition:all .2s ease}.radar-legend-item:hover{background:var(--bg-card-hover, #f1f5f9);border-color:var(--border-focus, #cbd5e1);transform:translateY(-1px)}.radar-legend-label-group{display:flex;align-items:center;gap:8px;min-width:0}.radar-legend-bullet{width:6px;height:6px;border-radius:50%;background:var(--primary, #2563eb);flex-shrink:0}.radar-legend-label{color:var(--text-muted, #475569);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.radar-legend-value{color:var(--text, #0f172a);font-weight:600;font-variant-numeric:tabular-nums;margin-left:8px;flex-shrink:0}.bar-line-chart{color:#2563eb;display:grid;gap:8px}.bar-line-chart svg{background:#f8fafc;border:1px solid #e4ebf2;border-radius:8px;width:100%}.bar-line-chart text{fill:#607087;font-size:11px}.chart-gridline{stroke:#dbe4ee;stroke-dasharray:3 4}.chart-axis-line{stroke:#94a3b8;stroke-width:1}.chart-axis-title{fill:#334155;font-size:11px;font-weight:600;white-space:nowrap}.chart-tick{fill:#607087;font-size:10px}.okr-chart rect,.okr-chart circle{transition:opacity .15s ease,filter .15s ease;cursor:pointer}.okr-chart rect:hover,.okr-chart circle:hover{opacity:.85;filter:brightness(.9)}.chart-legend{align-items:center;color:#607087;display:flex;flex-wrap:wrap;gap:12px;font-size:12px}.summary-badge-row{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.summary-badge{background:#f8fafc;border:1px solid #e1e8ef;border-radius:8px;display:grid;gap:4px;padding:9px 10px}.summary-badge span{color:#607087;font-size:12px}.summary-badge strong{font-size:18px}.chart-legend span{align-items:center;display:inline-flex;gap:5px}.legend-bar,.legend-line{display:inline-block;height:8px;width:18px}.legend-bar{background:#f97316;border-radius:999px}.legend-line{border-top:3px solid #2563eb}.technical-panel{grid-column:1 / -1}.uploaded-reports-panel .list,.warnings-panel .list{max-height:min(56vh,680px);overflow:auto}.technical-panel-body{display:grid;gap:10px}.technical-group{border:1px solid #e1e8ef;border-radius:8px;display:grid;gap:8px;padding:10px}.technical-group-header{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.technical-group-header code{background:#f1f5f9;border-radius:6px;color:#475569;padding:2px 6px}.technical-warning{background:#f8fafc;border-radius:6px;display:grid;gap:4px;padding:8px}.technical-warning small{color:#607087}.chart-block{border:1px solid #dbe4ee;border-radius:8px;display:grid;gap:12px;padding:12px}.chart-block-header{align-items:start;display:flex;gap:10px;justify-content:space-between}.chart-block h3{font-size:15px;margin:0}.chart-block small,.warning-inline{color:#607087}.okr-chart-bars{display:grid;gap:10px}.okr-chart-row{display:grid;gap:8px;grid-template-columns:74px minmax(0,1fr)}.okr-bar-line{align-items:center;display:grid;gap:8px;grid-template-columns:112px minmax(0,1fr) 54px}.okr-bar-label{color:#607087;font-size:12px}.okr-bar-track,.progress-track{background:#eef3f8;border-radius:999px;height:8px;overflow:hidden}.okr-bar-fill,.progress-track span{background:#f97316;display:block;height:100%}.okr-line-chart{color:#2563eb;display:grid;gap:6px}.okr-line-chart svg{background:#f8fafc;border:1px solid #e4ebf2;border-radius:6px;min-height:150px;width:100%}.okr-line-labels{color:#607087;display:grid;font-size:11px;grid-template-columns:repeat(12,1fr)}.okr-card-grid,.okr-progress-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.compact-card,.progress-item{border:1px solid #dbe4ee;border-radius:8px;display:grid;gap:6px;padding:10px}.progress-item strong{font-size:18px}.compact-toolbar{flex-wrap:wrap}.compact-kr-list{display:grid;gap:8px;max-height:560px;overflow:auto}.compact-kr-row{align-items:center;background:#fff;border:1px solid #dbe4ee;border-radius:8px;display:grid;gap:10px;grid-template-columns:78px minmax(220px,1fr) 110px minmax(240px,auto);min-height:48px;padding:8px 10px;text-align:left}.compact-kr-row.active-row{border-color:#f97316;box-shadow:0 0 0 2px #f973162e}.kr-code{color:#334155;font-weight:700}.kr-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.kr-target{color:#475569}.kr-statuses{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.team-status{align-items:center;display:inline-flex;gap:4px}.team-status small{color:#607087}.kr-drilldown{background:#fff;border:1px solid #dbe4ee;border-radius:8px;bottom:18px;box-shadow:0 18px 45px #0f172a29;display:grid;gap:12px;max-width:min(520px,calc(100vw - 36px));padding:14px;position:fixed;right:18px;z-index:20}.objective-kr-panel{max-width:min(760px,calc(100vw - 36px));width:min(760px,calc(100vw - 36px))}.objective-kr-panel .compact-kr-row{grid-template-columns:82px minmax(180px,1fr) minmax(116px,150px) minmax(120px,auto)}.objective-kr-panel .kr-statuses{min-width:0}.kr-drilldown dl,.drilldown-teams{display:grid;gap:8px}.drilldown-team{align-items:center;border-bottom:1px solid #e4ebf2;display:grid;gap:8px;grid-template-columns:74px 82px minmax(0,1fr);padding-bottom:8px}@media(max-width:900px){.app-shell{grid-template-columns:1fr}.sidebar{height:auto;position:static}.app-shell.sidebar-collapsed{grid-template-columns:1fr}.app-shell.sidebar-collapsed .sidebar{gap:18px;padding:18px}.app-shell.sidebar-collapsed .sidebar-head{justify-content:space-between}.app-shell.sidebar-collapsed .sidebar .sidebar-sandbox{display:grid}.app-shell.sidebar-collapsed .sidebar .brand div,.app-shell.sidebar-collapsed .sidebar .field,.app-shell.sidebar-collapsed nav button span{display:block}.app-shell.sidebar-collapsed nav button{justify-content:flex-start;padding-inline:10px}.content-grid{grid-template-columns:1fr}.login-panel{padding:28px 22px 24px}.sandbox-login,.topbar,.topbar-tools{align-items:stretch;flex-direction:column}.sandbox-login{display:flex}.web-input-shell,.web-input-header,.kr-row,.arising-item,.preview-sections,.compact-kr-row,.drilldown-team,.objective-section-header,.radar-layout{grid-template-columns:1fr}.panel-header,.empty-dashboard-banner{align-items:stretch;flex-direction:column}.objective-drill-button{justify-content:center}.okr-matrix-table{min-width:1360px}.monthly-overview-grid,[data-objective-code=O2] .objective-visual-grid{grid-template-columns:1fr}[data-objective-code=O2] .visual-id-o2_bddk_by_team,[data-objective-code=O2] .visual-id-o2_bddk_by_month,[data-objective-code=O2] .visual-id-o2_scdx_by_team,[data-objective-code=O2] .visual-id-o2_scdx_by_month{grid-column:auto;grid-row:auto}[data-objective-code=O3] .objective-visual-grid{grid-template-columns:1fr}[data-objective-code=O5] .objective-visual-grid{column-count:1!important;display:block!important}.visual-id-o5_tpm_narrative .narrative-list{grid-template-columns:1fr!important}}.team-cell-info{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.team-fullname{white-space:normal!important;font-size:10px!important;color:#64748b!important;line-height:1.3!important;max-width:140px;display:block}.bar-line-chart{position:relative}.okr-chart-tooltip{position:absolute;transform:translate(-50%,-100%) translateY(-10px);background:#0f172af2;border:1px solid rgba(255,255,255,.1);border-left:3px solid;border-radius:6px;color:#fff;padding:8px 12px;font-size:11px;pointer-events:none;z-index:100;box-shadow:0 10px 25px -5px #0000004d,0 8px 10px -6px #0000004d;display:flex;flex-direction:column;gap:4px;min-width:130px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:tooltipFadeIn .12s cubic-bezier(.16,1,.3,1) forwards}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%,-100%) translateY(-5px) scale(.95)}to{opacity:1;transform:translate(-50%,-100%) translateY(-10px) scale(1)}}.tooltip-title{color:#94a3b8;font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:.05em}.tooltip-row{display:flex;align-items:center;gap:6px;white-space:nowrap}.tooltip-color-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.tooltip-label{color:#e2e8f0}.tooltip-value{color:#fff;font-weight:700}.auth-shell{position:relative;min-height:100vh;display:grid;place-items:center;padding:clamp(24px,4vw,56px);background:radial-gradient(120% 80% at 100% 0%,rgba(37,99,235,.22),transparent 60%),radial-gradient(90% 70% at 0% 100%,rgba(14,165,233,.14),transparent 60%),linear-gradient(180deg,#050913,#0a1224 55%,#050913);overflow:hidden;font-family:Inter,Be Vietnam Pro,Segoe UI,system-ui,sans-serif;color:#e2e8f0;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}.auth-bg{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:0;overflow:hidden}.auth-bg-orb{position:absolute;border-radius:50%;filter:blur(110px);opacity:.55;animation:authOrbFloat 26s infinite alternate ease-in-out}.auth-bg-orb-a{width:620px;height:620px;background:radial-gradient(circle,rgba(59,130,246,.45) 0%,transparent 70%);top:-180px;right:-160px}.auth-bg-orb-b{width:540px;height:540px;background:radial-gradient(circle,rgba(6,182,212,.32) 0%,transparent 70%);bottom:-200px;left:-140px;animation-duration:32s;animation-delay:-8s}.auth-bg-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(148,163,184,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(148,163,184,.07) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(ellipse 80% 60% at 50% 50%,#000 30%,transparent 80%);-webkit-mask-image:radial-gradient(ellipse 80% 60% at 50% 50%,#000 30%,transparent 80%)}.auth-bg-noise{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(rgba(255,255,255,.04) 1px,transparent 1px);background-size:3px 3px;opacity:.35;mix-blend-mode:overlay}@keyframes authOrbFloat{0%{transform:translateZ(0) scale(1)}50%{transform:translate3d(30px,-40px,0) scale(1.08)}to{transform:translate3d(-30px,30px,0) scale(.94)}}.auth-content{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,460px);gap:clamp(40px,6vw,88px);align-items:center;width:min(1180px,100%);animation:authFadeUp .7s cubic-bezier(.16,1,.3,1) both}.auth-content-compact{grid-template-columns:minmax(0,540px);justify-content:center}@keyframes authFadeUp{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}.auth-hero{display:grid;gap:36px}.auth-hero-brand{display:flex;align-items:center;gap:22px}.auth-hero-logo{width:76px;height:76px;border-radius:22px;background:linear-gradient(160deg,#ffffff1f,#ffffff05);border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 40px -20px #3b82f68c,inset 0 1px #ffffff2e;display:grid;place-items:center;flex-shrink:0}.auth-hero-logo img{width:56px;height:56px;object-fit:contain;filter:drop-shadow(0 4px 10px rgba(0,0,0,.35))}.auth-hero-name{display:grid;gap:4px;min-width:0}.auth-hero-eyebrow{display:inline-flex;align-items:center;gap:6px;color:#60a5fa;font-size:11.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.auth-hero-name strong{color:#f8fafc;font-size:clamp(20px,2.2vw,28px);font-weight:700;letter-spacing:-.015em;line-height:1.2;white-space:nowrap}.auth-hero-factory{color:#93c5fd;font-size:clamp(14px,1.5vw,17px);font-weight:600;margin-top:4px;letter-spacing:.03em;text-transform:uppercase}.auth-hero-tagline{color:#94a3b8;font-size:14.5px;font-weight:500;margin-top:2px}.auth-hero-lede{color:#cbd5e1;font-size:15.5px;line-height:1.65;max-width:56ch;margin:0}.auth-hero-features{list-style:none;padding:0;margin:0;display:grid;gap:12px}.auth-hero-features li{display:grid;grid-template-columns:44px 1fr;align-items:center;gap:16px;padding:16px 18px;background:linear-gradient(180deg,#ffffff0a,#ffffff03);border:1px solid rgba(255,255,255,.06);border-radius:16px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);transition:border-color .25s ease,transform .25s ease,background .25s ease}.auth-hero-features li:hover{border-color:#60a5fa59;background:linear-gradient(180deg,#60a5fa14,#ffffff05);transform:translateY(-1px)}.auth-hero-feature-ico{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;color:#93c5fd;background:#3b82f624;border:1px solid rgba(96,165,250,.25)}.auth-hero-features li strong{display:block;color:#e2e8f0;font-size:14.5px;font-weight:600;letter-spacing:-.005em}.auth-hero-features li small{display:block;color:#94a3b8;font-size:12.5px;margin-top:2px;line-height:1.5}.auth-hero-foot{display:flex;flex-direction:column;align-items:flex-start;gap:12px;margin:0}.auth-hero-copyright{color:#475569;font-size:12px;font-weight:500;letter-spacing:.02em}.auth-credits{display:inline-flex;align-items:center;gap:8px;color:#cbd5e1;font-size:12.5px;font-weight:600;letter-spacing:.01em;background:linear-gradient(135deg,#2563eb14,#0ea5e90a);border:1.5px solid rgba(59,130,246,.2);padding:6px 14px;border-radius:10px;box-shadow:0 4px 12px #2563eb1a;transition:all .25s ease}.auth-credits:hover{transform:translateY(-1px);border-color:#60a5fa66;box-shadow:0 6px 16px #2563eb33}.auth-credits-icon{color:#60a5fa;flex-shrink:0}.auth-external-notice{color:#475569;font-size:11px;line-height:1.6;max-width:58ch;margin:10px 0 0;opacity:.55;transition:opacity .25s ease,color .25s ease}.auth-external-notice:hover{opacity:.9;color:#94a3b8}.auth-notice-link{color:#60a5fa;text-decoration:none;font-weight:600;transition:color .2s ease,border-color .2s ease;border-bottom:1px solid transparent}.auth-notice-link:hover{color:#93c5fd;border-bottom-color:#93c5fd}.auth-card{position:relative;background:#fff;border:1px solid rgba(15,23,42,.06);border-radius:24px;padding:36px;box-shadow:0 1px #0f172a0a,0 24px 60px -24px #0206178c,0 60px 120px -60px #0f172a99;display:grid;gap:0;isolation:isolate;overflow:hidden;animation:authCardIn .7s .05s cubic-bezier(.16,1,.3,1) both}@keyframes authCardIn{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}.auth-card-wide{width:min(540px,100%)}.auth-card-glow{position:absolute;inset:-1px -1px auto -1px;height:3px;background:linear-gradient(90deg,#2563eb,#06b6d4 50%,#10b981);z-index:1;border-top-left-radius:24px;border-top-right-radius:24px}.auth-card-head{display:grid;gap:8px;padding-bottom:22px;border-bottom:1px solid #eef2f6;margin-bottom:22px}.auth-card-eyebrow{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;width:max-content;background:linear-gradient(135deg,#2563eb14,#0ea5e914);border:1px solid rgba(37,99,235,.16);border-radius:999px;color:#1d4ed8;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.auth-card-eyebrow svg{color:#2563eb}.auth-card-head h1{margin:0;font-size:26px;font-weight:700;color:#0b1220;letter-spacing:-.02em;line-height:1.15}.auth-card-head p{margin:0;color:#64748b;font-size:14px;line-height:1.5;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.auth-card-head p strong{color:#0f172a;font-weight:600}.auth-card-icon{width:52px;height:52px;border-radius:16px;background:linear-gradient(135deg,#2563eb,#0ea5e9);color:#fff;display:grid;place-items:center;margin-bottom:6px;box-shadow:0 12px 24px -8px #2563eb8c,inset 0 1px #ffffff40}.auth-card-body{display:grid;gap:16px}.auth-card-foot{margin-top:22px;padding-top:18px;border-top:1px solid #eef2f6}.auth-pill{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.02em}.auth-pill.warning{background:#fef3c7;color:#92400e}.auth-hint{background:linear-gradient(135deg,#0ea5e914,#2563eb0d);border:1px solid rgba(14,165,233,.2);color:#0c4a6e;font-size:13px;line-height:1.55;padding:12px 14px;border-radius:12px;margin:0}.auth-field{display:grid;gap:7px}.auth-field>span{color:#334155;font-size:12px;font-weight:600;letter-spacing:.03em}.auth-input{position:relative;display:flex;align-items:center;background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.auth-input:hover{border-color:#cbd5e1}.auth-input:focus-within{border-color:#2563eb;box-shadow:0 0 0 4px #2563eb24}.auth-input-icon{position:absolute;left:14px;color:#94a3b8;pointer-events:none;transition:color .2s ease}.auth-input:focus-within .auth-input-icon{color:#2563eb}.auth-input input{width:100%;background:transparent;border:none;outline:none;padding:13px 14px 13px 42px;font-size:14.5px;color:#0f172a;font-weight:500;min-height:48px;border-radius:12px;font-family:inherit}.auth-input input::placeholder{color:#94a3b8;font-weight:400}.auth-input-toggle{position:absolute;right:6px;background:transparent;border:none;height:34px;width:34px;color:#64748b;cursor:pointer;display:grid;place-items:center;border-radius:8px;transition:color .2s ease,background .2s ease}.auth-input-toggle:hover{color:#2563eb;background:#2563eb14}.auth-strength{display:grid;gap:4px;margin-top:8px}.auth-strength-track{height:6px;background:#e2e8f0;border-radius:999px;overflow:hidden}.auth-strength-fill{height:100%;border-radius:999px;transition:width .3s ease,background .3s ease;width:0;background:#ef4444}.auth-strength-fill.score-1{width:20%;background:#ef4444}.auth-strength-fill.score-2{width:40%;background:#f59e0b}.auth-strength-fill.score-3{width:60%;background:#3b82f6}.auth-strength-fill.score-4{width:80%;background:#10b981}.auth-strength-fill.score-5{width:100%;background:#059669}.auth-strength span{font-size:12px;color:#64748b}.auth-strength.danger span strong{color:#b91c1c}.auth-strength.warning span strong{color:#b45309}.auth-strength.info span strong{color:#1d4ed8}.auth-strength.success span strong{color:#047857}.auth-mismatch{color:#b91c1c;font-size:12px;margin-top:4px}.auth-rules{list-style:none;padding:12px 14px;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;font-size:12.5px}.auth-rules li{display:flex;align-items:center;gap:6px}.auth-rules li.ok{color:#047857}.auth-rules li.pending{color:#94a3b8}.auth-options{display:flex;align-items:center;justify-content:space-between;padding:2px 0 4px}.auth-remember{position:relative;display:inline-flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none}.auth-remember input{position:absolute;opacity:0;top:0;right:0;bottom:0;left:0;cursor:pointer}.auth-remember-custom{height:18px;width:18px;background:#fff;border:1.5px solid #cbd5e1;border-radius:5px;position:relative;flex-shrink:0;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease}.auth-remember:hover .auth-remember-custom{border-color:#94a3b8}.auth-remember input:focus-visible~.auth-remember-custom{box-shadow:0 0 0 4px #2563eb2e}.auth-remember input:checked~.auth-remember-custom{background:linear-gradient(135deg,#2563eb,#1d4ed8);border-color:#1d4ed8}.auth-remember-custom:after{content:"";position:absolute;display:none;left:5px;top:1.5px;width:5px;height:9px;border:solid #ffffff;border-width:0 2px 2px 0;transform:rotate(45deg)}.auth-remember input:checked~.auth-remember-custom:after{display:block}.auth-remember-label{color:#475569;font-size:13px;font-weight:500;transition:color .2s ease}.auth-remember:hover .auth-remember-label{color:#0f172a}.auth-submit{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:9px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;border:none;font-weight:600;font-size:15px;letter-spacing:.005em;min-height:48px;border-radius:12px;cursor:pointer;box-shadow:0 10px 24px -10px #2563eba6,inset 0 1px #fff3;transition:transform .18s ease,box-shadow .2s ease,background .2s ease;margin-top:4px;font-family:inherit}.auth-submit:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 14px 30px -10px #2563ebb3,inset 0 1px #ffffff40}.auth-submit:active:not(:disabled){transform:translateY(0)}.auth-submit:disabled{background:#cbd5e1;color:#fff;cursor:not-allowed;box-shadow:none;transform:none}.auth-submit-spinner{width:16px;height:16px;border-radius:50%;border:2px solid rgba(255,255,255,.35);border-top-color:#fff;animation:authSpin .7s linear infinite}@keyframes authSpin{to{transform:rotate(360deg)}}.auth-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:transparent;color:#475569;border:1.5px solid #e2e8f0;font-weight:500;font-size:14px;min-height:44px;border-radius:12px;cursor:pointer;transition:border-color .2s ease,color .2s ease,background .2s ease;font-family:inherit}.auth-secondary:hover{border-color:#cbd5e1;background:#f8fafc;color:#0f172a}.auth-actions{display:grid;gap:10px;margin-top:8px}.auth-error{display:flex;align-items:center;gap:9px;background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;padding:11px 14px;border-radius:10px;font-size:13px;font-weight:500;margin:0}.auth-error-dot{width:8px;height:8px;border-radius:999px;background:#ef4444;box-shadow:0 0 0 4px #ef44442e;flex-shrink:0}.auth-success{display:flex;align-items:center;gap:9px;background:#ecfdf5;border:1px solid #a7f3d0;color:#047857;padding:11px 14px;border-radius:10px;font-size:13px;font-weight:500;margin:0}.auth-help{color:#64748b;font-size:12.5px;line-height:1.6;text-align:center;margin:0}.auth-help-link{color:#2563eb;text-decoration:none;font-weight:600;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease}.auth-help-link:hover{color:#1d4ed8;border-bottom-color:#1d4ed8}.auth-boot{position:relative;z-index:1;display:grid;place-items:center;gap:18px;color:#cbd5e1;font-size:14px}.auth-boot-mark{width:72px;height:72px;border-radius:20px;background:linear-gradient(160deg,#ffffff1f,#ffffff05);border:1px solid rgba(255,255,255,.12);display:grid;place-items:center;box-shadow:0 18px 40px -20px #3b82f68c}.auth-boot-mark img{width:48px;height:48px;object-fit:contain}.auth-boot-spinner{width:22px;height:22px;border-radius:50%;border:2px solid rgba(148,163,184,.35);border-top-color:#60a5fa;animation:authSpin .8s linear infinite}.auth-boot p{margin:0;letter-spacing:.02em}@media(max-width:960px){.auth-content{grid-template-columns:minmax(0,1fr);gap:36px;max-width:520px}.auth-hero{text-align:center;gap:24px}.auth-hero-brand{flex-direction:column;text-align:center;align-items:center;gap:14px}.auth-hero-eyebrow{justify-content:center}.auth-hero-name strong{white-space:normal}.auth-hero-lede{margin:0 auto}.auth-hero-features{text-align:left}.auth-hero-foot{justify-content:center}}@media(max-width:520px){.auth-card{padding:28px 22px;border-radius:20px}.auth-card-head h1{font-size:22px}.auth-hero-features li{grid-template-columns:38px 1fr;padding:14px}.auth-hero-feature-ico{width:38px;height:38px;border-radius:10px}}@media(prefers-reduced-motion:reduce){.auth-bg-orb,.auth-content,.auth-card,.auth-submit-spinner,.auth-boot-spinner{animation:none!important}}[data-objective-code=O5] .objective-visual-grid>.visual-id-o5_initiatives{background:linear-gradient(180deg,#fff,#f7faff);border-color:#bfd7ff}[data-objective-code=O5] .objective-visual-grid>.visual-id-o5_tpm_narrative{grid-column:1}[data-objective-code=O5] .objective-visual-grid>.visual-id-o5_initiatives{grid-column:2}.visual-id-o5_initiatives .objective-visual-icon{background:#eff6ff;border-color:#bfdbfe;color:#2563eb}.visual-id-o5_initiatives .objective-visual-header{border-color:#dbeafe}.initiatives-fi-layout{display:grid;gap:20px}.kr-summary-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.kr-summary-card{background:#fff;border:1.5px solid #e2e8f0;border-radius:12px;padding:14px;transition:all .2s ease;box-shadow:0 2px 4px #00000005}.kr-summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 8px #0000000d}.kr12-card{border-left:5px solid #2563eb}.kr13-card{border-left:5px solid #f59e0b}.kr-card-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.kr-badge{font-size:10px;font-weight:800;padding:2px 6px;border-radius:4px;color:#fff}.kr12-badge{background:#2563eb}.kr13-badge{background:#f59e0b}.kr-card-head h4{margin:0;font-size:13px;font-weight:700;color:#1e293b}.kr-card-metrics{display:flex;gap:16px;justify-content:space-around;border-top:1px solid #f1f5f9;padding-top:10px}.kr-metric-box{display:flex;flex-direction:column;align-items:center;gap:4px}.kr-metric-box span{color:#64748b;font-size:11px;font-weight:600;text-transform:uppercase}.kr-metric-box strong{font-size:20px;font-weight:700;color:#0f172a}.fi-dashboard-content{display:grid;gap:14px}.fi-sub-header{border-bottom:2px solid #e2e8f0;padding-bottom:6px;margin-top:8px}.fi-sub-header span{font-size:11.5px;font-weight:800;color:#475569;letter-spacing:.05em;text-transform:uppercase}.fi-narrative-section{display:grid;gap:12px}.visual-id-o5_initiatives .competency-fi-kpis,.visual-id-o5_initiatives .competency-fi-team-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.visual-id-o5_initiatives .kr-card-metrics{gap:10px;flex-wrap:wrap}.visual-id-o5_initiatives .kr-metric-box strong{font-size:18px}.visual-id-o5_initiatives .initiatives-fi-layout{gap:16px}[data-objective-code=O6] .objective-visual-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}.visual-id-o6_running{background:linear-gradient(180deg,#fff,#fffbf7);border-color:#fed7aa}.visual-id-o6_running .objective-visual-icon{background:#fff7ed;border-color:#ffedd5;color:#ea580c}.visual-id-o6_running .objective-visual-header{border-color:#ffedd5}.visual-id-o6_running .compact-card{background:#fff;border:1px solid #fed7aa;border-radius:12px;padding:14px;box-shadow:0 4px 6px -1px #f973160d;transition:all .25s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;display:flex;flex-direction:column;gap:8px}.visual-id-o6_running .compact-card:hover{transform:translateY(-3px) scale(1.01);box-shadow:0 10px 15px -3px #f973161a;border-color:#f97316}.compact-card-header{display:flex;justify-content:space-between;align-items:center;width:100%}.status-pill{font-size:10px;font-weight:800;padding:2px 6px;border-radius:999px;text-transform:uppercase}.status-success{background:#dcfce7;color:#15803d}.status-warning{background:#fef3c7;color:#b45309}.status-danger{background:#fee2e2;color:#b91c1c}.visual-id-o6_running .compact-card strong{font-size:13px;font-weight:700;color:#1e293b}.visual-id-o6_running .compact-card span{font-size:16px;font-weight:800;color:#ea580c;margin:2px 0}.visual-id-o6_running .progress-track{background:#fff7ed;height:8px;border-radius:99px;margin:4px 0;border:1px solid #ffedd5}.visual-id-o6_running .progress-track span{background:linear-gradient(90deg,#f97316,#f43f5e);box-shadow:0 1px 3px #f43f5e4d}.visual-id-o6_running .compact-card small{font-size:11px;color:#64748b;font-weight:600}.visual-id-o6_sports{background:linear-gradient(180deg,#fff,#fffafb);border-color:#fecdd3}.visual-id-o6_sports .objective-visual-icon{background:#fff1f2;border-color:#ffe4e6;color:#e11d48}.visual-id-o6_sports .objective-visual-header{border-color:#ffe4e6}.visual-id-o6_sports .okr-bar-track{background:#fff1f2;border:1px solid #ffe4e6}.visual-id-o6_sports .okr-bar-fill{background:linear-gradient(90deg,#f43f5e,#be123c)}.visual-id-o6_sports .okr-chart-row{transition:background .2s ease;padding:6px;border-radius:8px}.visual-id-o6_sports .okr-chart-row:hover{background:#f43f5e0a}.visual-id-o6_culture{background:linear-gradient(180deg,#fff,#fafaf9);border-color:#e7e5e4}.visual-id-o6_culture .objective-visual-icon{background:#f5f5f4;border-color:#e7e5e4;color:#57534e}.visual-id-o6_culture .objective-visual-header{border-color:#e7e5e4}.visual-id-o6_culture .narrative-item{background:#fff;border:1px solid #e7e5e4;border-radius:10px;padding:12px;display:flex;flex-direction:column;gap:6px;transition:all .2s ease;box-shadow:0 1px 2px #00000003}.visual-id-o6_culture .narrative-item:hover{border-color:#a8a29e;transform:translate(2px);box-shadow:0 4px 6px #00000008}.visual-id-o6_culture .narrative-item strong{background:#f5f5f4;color:#44403c;font-size:11px;padding:3px 8px;border-radius:6px;align-self:flex-start;font-weight:700;border:1px solid #e7e5e4}.visual-id-o6_culture .narrative-item span{font-size:12.5px;color:#292524;font-weight:500}.status-success-soft{background:#ecfdf5;color:#047857}.o6-running-overview,.o6-sports-overview{background:linear-gradient(135deg,#fff7ed,#ffedd5);border:1px solid #fed7aa;border-radius:12px;display:grid;gap:8px;grid-template-columns:minmax(170px,.85fr) minmax(220px,1.15fr);margin-bottom:14px;padding:14px 16px;align-items:center}.o6-sports-overview{background:linear-gradient(135deg,#fff1f2,#ffe4e6);border-color:#fecdd3}.o6-running-overview-main,.o6-sports-overview-main{display:grid;gap:2px}.o6-running-kicker,.o6-sports-kicker{color:#ea580c;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.o6-sports-kicker{color:#e11d48}.o6-running-overview-main strong,.o6-sports-overview-main strong{color:#ea580c;font-size:30px;font-weight:800;line-height:1}.o6-sports-overview-main strong{color:#e11d48}.o6-running-overview-main small,.o6-sports-overview-main small{color:#7c2d12;font-size:12px;font-weight:600}.o6-sports-overview-main small{color:#881337}.o6-running-overview-stats,.o6-sports-overview-stats{display:grid;gap:6px}.o6-running-overview-stats span,.o6-sports-overview-stats span{align-items:baseline;color:#1f2937;display:flex;font-size:13px;gap:6px}.o6-running-overview-stats strong,.o6-sports-overview-stats strong{color:#ea580c;font-size:15px;font-weight:800;font-variant-numeric:tabular-nums}.o6-sports-overview-stats strong{color:#e11d48}.o6-running-overview-stats em,.o6-sports-overview-stats em{color:#475569;font-size:11.5px;font-style:normal;font-weight:600}.o6-sports-layout{display:grid;gap:0}.o6-sports-list{display:grid;gap:10px}.o6-sports-row{background:#fff;border:1px solid #fecdd3;border-left:3px solid #f43f5e;border-radius:10px;display:grid;gap:6px;padding:10px 12px;transition:all .2s ease}.o6-sports-row:hover{box-shadow:0 4px 10px #f43f5e14;transform:translateY(-1px)}.o6-sports-row.tone-meet{border-left-color:#16a34a}.o6-sports-row.tone-miss{border-left-color:#f59e0b}.o6-sports-row-head{align-items:center;display:grid;gap:8px;grid-template-columns:auto minmax(0,1fr) auto}.o6-sports-row-head strong{color:#0f172a;font-size:13px;font-weight:800}.o6-sports-row-head small{color:#64748b;font-size:11.5px;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.o6-sports-row-bar{align-items:center;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto}.o6-sports-row-track{background:#fff1f2;border:1px solid #ffe4e6;border-radius:999px;display:block;height:10px;overflow:visible;position:relative}.o6-sports-row-fill{background:linear-gradient(90deg,#f43f5e,#be123c);border-radius:inherit;display:block;height:100%;position:relative;z-index:1}.o6-sports-row.tone-meet .o6-sports-row-fill{background:linear-gradient(90deg,#16a34a,#15803d)}.o6-sports-row-target{background:#475569;border-radius:1px;height:16px;position:absolute;top:-3px;width:2px;z-index:2}.o6-sports-row-target:before{background:#475569;border-radius:50%;content:"";height:5px;left:-1.5px;position:absolute;top:-3px;width:5px}.o6-sports-row-bar em{color:#475569;font-size:11.5px;font-style:normal;font-weight:700;white-space:nowrap}.visual-id-o6_running .okr-card-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.visual-id-o6_culture{background:linear-gradient(180deg,#fff,#fefce8);border-color:#fde68a}.visual-id-o6_culture .objective-visual-icon{background:#fef3c7;border-color:#fde68a;color:#b45309}.visual-id-o6_culture .objective-visual-header{border-color:#fde68a}.visual-id-o6_culture .narrative-list{grid-template-columns:1fr}.visual-id-o6_culture .narrative-item{background:#fffbeb;border:1px solid #fde68a;border-left:3px solid #f59e0b;border-radius:10px;padding:11px 12px;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px;transition:all .2s ease;box-shadow:0 1px 2px #b453090a}.visual-id-o6_culture .narrative-item:hover{background:#fef9c3;border-color:#f59e0b;transform:none;box-shadow:0 3px 8px #b4530914}.visual-id-o6_culture .narrative-item strong{background:#f59e0b;border:none;color:#fff;font-size:10.5px;font-weight:800;padding:4px 8px;border-radius:6px;white-space:nowrap;letter-spacing:.03em}.visual-id-o6_culture .narrative-item span{color:#422006;font-size:12.5px;font-weight:500;line-height:1.4}@media(max-width:1200px){.o6-running-overview,.o6-sports-overview{grid-template-columns:1fr}}.visual-id-o1_status_grid{background:linear-gradient(180deg,#fff,#fef2f2);border-color:#fecaca}.visual-id-o1_status_grid .objective-visual-icon{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.visual-id-o1_status_grid .objective-visual-header{border-color:#fecaca}.o1-status-board{display:grid;gap:16px}.o1-status-overview{align-items:center;background:linear-gradient(135deg,#fff,#fef2f2);border:1px solid #fecaca;border-radius:14px;display:grid;gap:16px;grid-template-columns:minmax(220px,.95fr) minmax(220px,1.05fr);padding:14px 18px}.o1-status-overview-main{display:grid;gap:4px}.o1-status-kicker{color:#b91c1c;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.o1-status-overview-main strong{color:#0f172a;font-size:32px;font-weight:800;line-height:1}.o1-status-overview-main strong small{color:#64748b;font-size:18px;font-weight:700;margin-left:2px}.o1-status-overview-sub{color:#475569;font-size:12.5px;font-weight:600}.o1-status-overview-stats{display:grid;gap:10px}.o1-stat{align-items:center;background:#fff;border:1px solid #fecaca;border-radius:10px;color:#1f2937;display:grid;gap:8px;grid-template-columns:18px auto minmax(0,1fr);padding:8px 12px}.o1-stat svg{color:#b91c1c}.o1-stat strong{color:#b91c1c;font-size:18px;font-weight:800;font-variant-numeric:tabular-nums}.o1-stat em{color:#475569;font-size:12px;font-style:normal;font-weight:600}.o1-stat.tone-counts strong,.o1-stat.tone-counts svg{color:#475569}.o1-stat.tone-ok{border-color:#bbf7d0}.o1-stat.tone-ok strong,.o1-stat.tone-ok svg{color:#047857}.o1-status-list{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}.o1-status-card{background:#fff;border:1px solid #e2e8f0;border-left:4px solid #94a3b8;border-radius:12px;display:grid;gap:10px;padding:14px 14px 12px;position:relative;transition:all .2s ease}.o1-status-card:hover{box-shadow:0 6px 16px #0f172a0d;transform:translateY(-1px)}.o1-status-card.tone-success{border-left-color:#16a34a;background:linear-gradient(180deg,#fff,#f0fdf4)}.o1-status-card.tone-danger{border-left-color:#ef4444;background:linear-gradient(180deg,#fff,#fef2f2)}.o1-status-card.tone-neutral{border-left-color:#94a3b8}.o1-status-card-head{align-items:center;display:flex;gap:8px;justify-content:space-between}.o1-status-card-code{background:#1e293b;border-radius:6px;color:#fff;font-size:11px;font-weight:800;letter-spacing:.04em;padding:4px 8px}.o1-status-card.tone-success .o1-status-card-code{background:#16a34a}.o1-status-card.tone-danger .o1-status-card-code{background:#dc2626}.o1-status-card-pill{align-items:center;border-radius:999px;display:inline-flex;font-size:11px;font-weight:800;gap:4px;padding:4px 9px}.o1-status-card-pill.tone-ok{background:#ecfdf5;color:#047857}.o1-status-card-pill.tone-ng{background:#fef2f2;color:#b91c1c}.o1-status-card-pill.tone-na{background:#f1f5f9;color:#64748b}.o1-status-card-title{color:#1e293b;font-size:13px;font-weight:600;line-height:1.45;margin:0}.o1-status-card-teams{display:grid;gap:6px;grid-template-columns:repeat(4,minmax(0,1fr))}.o1-status-team{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:2px;justify-items:center;padding:6px 4px;transition:all .15s ease}.o1-status-team strong{color:#475569;font-size:10.5px;font-weight:800;letter-spacing:.03em}.o1-status-team span{font-size:12px;font-weight:800}.o1-status-team.tone-ok{background:#ecfdf5;border-color:#bbf7d0}.o1-status-team.tone-ok strong{color:#065f46}.o1-status-team.tone-ok span{color:#047857}.o1-status-team.tone-ng{background:#fef2f2;border-color:#fecaca}.o1-status-team.tone-ng strong{color:#991b1b}.o1-status-team.tone-ng span{color:#dc2626}.o1-status-team.tone-na{background:#f8fafc;border-color:#e2e8f0}.o1-status-team.tone-na span{color:#94a3b8}.o1-status-card-track{display:grid;gap:3px;grid-template-columns:repeat(4,1fr);height:4px}.o1-status-card-seg{background:#e2e8f0;border-radius:2px;display:block}.o1-status-card-seg.tone-ok{background:#16a34a}.o1-status-card-seg.tone-ng{background:#ef4444}.o1-status-card-seg.tone-na{background:#cbd5e1}@media(max-width:900px){.o1-status-overview{grid-template-columns:1fr}.o1-status-card-teams{grid-template-columns:repeat(2,minmax(0,1fr))}}.metric-table-overview{align-items:center;background:linear-gradient(135deg,#fff,#eff6ff);border:1px solid #bfdbfe;border-radius:12px;display:grid;gap:14px;grid-template-columns:minmax(190px,.85fr) minmax(260px,1.15fr);padding:14px 16px}.metric-table-overview.tone-warning{background:linear-gradient(135deg,#fff,#fef3c7);border-color:#fcd34d}.metric-table-overview.tone-danger{background:linear-gradient(135deg,#fff,#fef2f2);border-color:#fecaca}.metric-table-overview.tone-success{background:linear-gradient(135deg,#fff,#ecfdf5);border-color:#bbf7d0}.metric-table-overview-main{display:grid;gap:4px}.metric-table-kicker{color:#2563eb;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.metric-table-overview.tone-warning .metric-table-kicker{color:#b45309}.metric-table-overview.tone-danger .metric-table-kicker{color:#b91c1c}.metric-table-overview.tone-success .metric-table-kicker{color:#047857}.metric-table-overview-main strong{color:#0f172a;font-size:30px;font-weight:800;line-height:1}.metric-table-overview-main small{color:#475569;font-size:12.5px;font-weight:600}.metric-table-overview-stats{display:grid;gap:6px;grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.metric-table-overview-stats span{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:2px;padding:6px 10px}.metric-table-overview-stats strong{color:#0f172a;font-size:15px;font-weight:800;font-variant-numeric:tabular-nums}.metric-table-overview-stats em{color:#64748b;font-size:11px;font-style:normal;font-weight:600}.metric-table-enhanced tbody tr{transition:background .15s ease}.metric-table-enhanced tbody tr:hover{background:#f8fafc}.metric-table-enhanced tbody tr.row-miss{background:linear-gradient(90deg,rgba(254,226,226,.35) 0%,transparent 60%)}.metric-table-enhanced tbody tr.row-meet{background:linear-gradient(90deg,rgba(220,252,231,.35) 0%,transparent 60%)}.metric-rate-cell{min-width:140px}.metric-rate-bar{align-items:center;display:grid;gap:8px;grid-template-columns:minmax(60px,1fr) auto}.metric-rate-bar-track{background:#f1f5f9;border-radius:999px;display:block;height:8px;overflow:visible;position:relative}.metric-rate-bar-fill{background:linear-gradient(90deg,#2563eb,#1d4ed8);border-radius:inherit;display:block;height:100%;position:relative;z-index:1;transition:width .3s ease}.metric-rate-bar-track.miss .metric-rate-bar-fill{background:linear-gradient(90deg,#f59e0b,#d97706)}.metric-rate-bar-track.meet .metric-rate-bar-fill{background:linear-gradient(90deg,#16a34a,#15803d)}.metric-rate-bar-target{background:#1f2937;border-radius:1px;height:14px;position:absolute;top:-3px;width:2px;z-index:2}.metric-rate-bar-target:before{background:#1f2937;border-radius:50%;content:"";height:5px;left:-1.5px;position:absolute;top:-3px;width:5px}.metric-rate-bar strong{color:#0f172a;font-size:13px;font-variant-numeric:tabular-nums}.metric-target-cell .metric-target-pill{background:#f1f5f9;border-radius:6px;color:#475569;display:inline-block;font-size:11.5px;font-weight:700;padding:3px 8px}.metric-note-block{background:linear-gradient(180deg,#fff7ed,#ffedd5);border:1px solid #fed7aa;border-radius:10px;color:#7c2d12}.metric-note-block strong{align-items:center;display:inline-flex;font-weight:800;font-size:11.5px;gap:6px;letter-spacing:.03em;text-transform:uppercase}@media(max-width:900px){.metric-table-overview{grid-template-columns:1fr}}[data-objective-code=O3] .visual-id-o3_stop_by_team,[data-objective-code=O3] .visual-id-o3_stop_by_month{background:linear-gradient(180deg,#fff,#f0f9ff);border-color:#bae6fd}[data-objective-code=O3] .visual-id-o3_stop_by_team .objective-visual-icon,[data-objective-code=O3] .visual-id-o3_stop_by_month .objective-visual-icon{background:#f0f9ff;border-color:#bae6fd;color:#0369a1}[data-objective-code=O3] .visual-id-o3_stop_by_team .objective-visual-header,[data-objective-code=O3] .visual-id-o3_stop_by_month .objective-visual-header{border-color:#bae6fd}.o3-stop-board{display:grid;gap:14px}.o3-stop-overview{align-items:center;background:linear-gradient(135deg,#fff,#f0f9ff);border:1px solid #bae6fd;border-radius:12px;display:grid;gap:14px;grid-template-columns:minmax(180px,.85fr) minmax(260px,1.15fr);padding:14px 16px}.o3-stop-overview.tone-warning{background:linear-gradient(135deg,#fff,#fef3c7);border-color:#fcd34d}.o3-stop-overview.tone-danger{background:linear-gradient(135deg,#fff,#fef2f2);border-color:#fecaca}.o3-stop-overview.tone-success{background:linear-gradient(135deg,#fff,#ecfdf5);border-color:#bbf7d0}.o3-stop-overview-main{display:grid;gap:6px}.o3-stop-kicker{color:#0369a1;font-size:11px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.o3-stop-overview.tone-success .o3-stop-kicker{color:#047857}.o3-stop-overview.tone-warning .o3-stop-kicker{color:#b45309}.o3-stop-overview.tone-danger .o3-stop-kicker{color:#b91c1c}.o3-stop-overview-metric{align-items:baseline;display:flex;flex-wrap:wrap;gap:8px}.o3-stop-overview-metric strong{color:#0f172a;font-size:30px;font-weight:800;line-height:1}.o3-stop-overview-metric span{color:#475569;font-size:12.5px;font-weight:600}.o3-stop-overview-stats{display:grid;gap:6px;grid-template-columns:repeat(auto-fit,minmax(110px,1fr))}.o3-stop-overview-stats span{background:#fff;border:1px solid #e0f2fe;border-radius:8px;display:grid;gap:2px;padding:6px 10px}.o3-stop-overview-stats strong{color:#0f172a;font-size:15px;font-weight:800;font-variant-numeric:tabular-nums}.o3-stop-overview-stats em{color:#64748b;font-size:11px;font-style:normal;font-weight:600}.o3-stop-team-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.o3-stop-team-card{background:#fff;border:1px solid #e0f2fe;border-left:3px solid #0ea5e9;border-radius:10px;display:grid;gap:8px;padding:10px 12px;transition:all .2s ease}.o3-stop-team-card:hover{box-shadow:0 4px 10px #0ea5e91a;transform:translateY(-1px)}.o3-stop-team-card.tone-meet{border-left-color:#16a34a}.o3-stop-team-card.tone-miss{border-left-color:#f59e0b}.o3-stop-team-card header{align-items:center;display:flex;gap:8px;justify-content:space-between}.o3-stop-team-card header strong{color:#0f172a;font-size:13px;font-weight:800}.o3-stop-team-bar{display:block}.o3-stop-team-track{background:#f0f9ff;border:1px solid #e0f2fe;border-radius:999px;display:block;height:8px;overflow:visible;position:relative}.o3-stop-team-fill{background:linear-gradient(90deg,#0ea5e9,#0369a1);border-radius:inherit;display:block;height:100%;position:relative;z-index:1}.o3-stop-team-card.tone-meet .o3-stop-team-fill{background:linear-gradient(90deg,#16a34a,#15803d)}.o3-stop-team-card.tone-miss .o3-stop-team-fill{background:linear-gradient(90deg,#f59e0b,#d97706)}.o3-stop-team-target{background:#475569;border-radius:1px;height:12px;position:absolute;top:-2px;width:2px;z-index:2}.o3-stop-team-target:before{background:#475569;border-radius:50%;content:"";height:4px;left:-1px;position:absolute;top:-2px;width:4px}.o3-stop-team-card footer{align-items:baseline;color:#475569;display:flex;font-size:11.5px;gap:4px}.o3-stop-team-card footer strong{color:#0369a1;font-size:13px;font-weight:800}.o3-stop-team-card.tone-meet footer strong{color:#047857}.o3-stop-team-card.tone-miss footer strong{color:#b45309}.o3-stop-month-chart{background:#fff;border:1px solid #e0f2fe;border-radius:10px;padding:12px 8px}.o3-stop-point-label{fill:#0369a1;font-size:10px;font-weight:700}.chart-month-label{fill:#475569;font-size:10.5px;font-weight:600}@media(max-width:900px){.o3-stop-overview{grid-template-columns:1fr}}.btn-primary-soft{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#93c5fd!important;color:#1d4ed8!important;font-weight:700}.btn-primary-soft:hover:not(:disabled){background:linear-gradient(135deg,#dbeafe,#bfdbfe);box-shadow:0 4px 10px #2563eb2e;transform:translateY(-1px)}.btn-primary-soft.is-saved{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border-color:#6ee7b7!important;color:#047857!important}.btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8)!important;border-color:#1d4ed8!important;color:#fff!important;font-weight:700}.btn-primary:hover:not(:disabled){background:linear-gradient(135deg,#1d4ed8,#1e40af)!important;box-shadow:0 6px 14px #2563eb52;transform:translateY(-1px)}.btn-primary:disabled{opacity:.55}.conclusion-panel{display:grid;gap:14px}.conclusion-panel .panel-sub{color:#64748b;font-size:12.5px;font-weight:500}.conclusion-grid{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(360px,1fr))}.conclusion-card{background:#fff;border:1px solid #e2e8f0;border-radius:12px;display:grid;gap:12px;padding:14px 16px;transition:all .2s ease}.conclusion-card:hover{box-shadow:0 4px 12px #0f172a0f}.discipline-card{border-left:3px solid #94a3b8}.conclusion-grid.has-violation .discipline-card{border-left-color:#ef4444;background:linear-gradient(180deg,#fff,#fef2f2)}.assessment-card{border-left:3px solid #2563eb;background:linear-gradient(180deg,#fff,#f8fafc)}.conclusion-card>header{align-items:center;display:flex;gap:12px;justify-content:space-between}.conclusion-card-kicker{align-items:center;color:#334155;display:inline-flex;font-size:13.5px;font-weight:700;gap:7px;letter-spacing:0}.conclusion-grid.has-violation .discipline-card .conclusion-card-kicker{color:#b91c1c}.discipline-toggle{display:inline-flex;gap:4px;background:#f1f5f9;border-radius:8px;padding:3px}.discipline-pill{align-items:center;background:transparent;border:none;border-radius:7px;color:#475569;cursor:pointer;display:inline-flex;font-size:14px;font-weight:700;gap:6px;min-height:38px;padding:8px 16px;transition:all .15s ease}.discipline-pill:hover:not(:disabled){color:#0f172a}.discipline-pill.is-active.tone-ok{background:#fff;box-shadow:0 1px 3px #05966929;color:#047857}.discipline-pill.is-active.tone-ng{background:#fff;box-shadow:0 1px 3px #dc26262e;color:#b91c1c}.discipline-detail{display:grid;gap:12px}.discipline-field{display:grid;gap:6px}.discipline-field>span{align-items:center;color:#334155;display:inline-flex;font-size:13px;font-weight:700;gap:6px}.discipline-field textarea{border:1px solid #d8e0ea;border-radius:9px;font-family:inherit;font-size:15px;line-height:1.55;padding:11px 13px;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.discipline-field textarea:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441f;outline:none}.assessment-select{background:#fff;border:1px solid #cbd5e1;border-radius:9px;font-size:15px;font-weight:700;min-height:40px;padding:8px 12px}.assessment-card textarea{border:1px solid #d8e0ea;border-radius:9px;font-family:inherit;font-size:15px;line-height:1.55;padding:11px 13px;resize:vertical;width:100%}.assessment-card textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f;outline:none}.violator-picker{position:relative}.violator-tags{align-items:center;background:#fff;border:1px dashed #cbd5e1;border-radius:10px;display:flex;flex-wrap:wrap;gap:6px;min-height:44px;padding:7px 8px;transition:border-color .15s ease}.violator-picker.is-open .violator-tags{border-color:#ef4444;border-style:solid}.violator-empty{color:#94a3b8;font-size:12.5px;font-style:italic;padding:4px 6px}.violator-tag{align-items:center;background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fecaca;border-radius:999px;color:#991b1b;display:inline-flex;font-size:12px;font-weight:700;gap:6px;padding:4px 4px 4px 10px}.violator-tag em{background:#dc26261f;border-radius:999px;color:#b91c1c;font-size:10px;font-style:normal;font-weight:700;padding:2px 6px}.violator-tag button{align-items:center;background:#dc26261f;border:none;border-radius:50%;color:#b91c1c;cursor:pointer;display:inline-flex;height:18px;justify-content:center;padding:0;transition:all .15s ease;width:18px}.violator-tag button:hover{background:#dc2626;color:#fff}.violator-add{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:999px;color:#475569;cursor:pointer;display:inline-flex;font-size:12px;font-weight:700;gap:5px;padding:4px 10px;transition:all .15s ease}.violator-add:hover{background:#f1f5f9;border-color:#94a3b8;color:#0f172a}.violator-picker.is-open .violator-add{background:#b91c1c;border-color:#b91c1c;color:#fff}.violator-dropdown{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 10px 30px #0f172a1f;display:grid;gap:0;left:0;margin-top:6px;max-height:380px;overflow:hidden;position:absolute;right:0;top:100%;z-index:30}.violator-search{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;color:#64748b;display:grid;gap:8px;grid-template-columns:16px minmax(0,1fr) auto;padding:8px 12px}.violator-search input{background:transparent;border:none;font-size:13px;outline:none;width:100%}.violator-search button{align-items:center;background:transparent;border:none;border-radius:50%;color:#64748b;cursor:pointer;display:inline-flex;height:20px;padding:0;width:20px}.violator-search button:hover{background:#e2e8f0;color:#0f172a}.violator-list{display:grid;gap:4px;max-height:320px;overflow-y:auto;padding:6px}.violator-group h5{color:#64748b;font-size:10.5px;font-weight:800;letter-spacing:.05em;margin:6px 4px 4px;text-transform:uppercase}.violator-option{align-items:center;background:transparent;border:none;border-radius:8px;cursor:pointer;display:grid;gap:8px;grid-template-columns:minmax(0,1fr) auto;padding:8px 10px;text-align:left;transition:background .15s ease;width:100%}.violator-option:hover{background:#f1f5f9}.violator-option.is-selected{background:linear-gradient(135deg,#fef2f2,#fee2e2)}.violator-option.is-selected svg{color:#dc2626}.violator-option-main{display:grid;gap:2px;min-width:0}.violator-option-main strong{color:#0f172a;font-size:13px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.violator-option-main small{color:#64748b;font-size:11px}@media(max-width:900px){.conclusion-grid{grid-template-columns:1fr}}.kr-input-panel .panel-header{align-items:flex-start;gap:12px}.kr-input-panel .panel-header>div:first-child{display:grid;gap:2px}.kr-input-panel .panel-header .panel-sub{color:#64748b;font-size:12.5px;font-weight:500;margin:0}.okr-accordion{background:#fff;border:1px solid #e2e8f0;border-radius:12px;margin-bottom:10px;overflow:hidden;transition:border-color .15s ease,box-shadow .15s ease}.okr-accordion.is-open{border-color:#cbd5e1;box-shadow:0 2px 6px #0f172a0a}.okr-accordion-title{align-items:center;background:linear-gradient(180deg,#f8fafc,#f1f5f9);border:none;cursor:pointer;display:grid;font-family:inherit;gap:12px;grid-template-columns:24px auto minmax(140px,1fr) minmax(120px,.7fr) 44px;padding:12px 16px;text-align:left;transition:background .15s ease;width:100%}.okr-accordion-title:hover{background:linear-gradient(180deg,#f1f5f9,#e2e8f0)}.okr-accordion.is-open .okr-accordion-title{background:linear-gradient(180deg,#eff6ff,#dbeafe)}.okr-accordion-chevron{align-items:center;color:#64748b;display:inline-flex;justify-content:center}.okr-accordion-badge{background:linear-gradient(135deg,#1e293b,#334155);border-radius:8px;color:#fff;font-size:13px;font-weight:800;letter-spacing:.05em;padding:4px 10px}.okr-accordion.is-open .okr-accordion-badge{background:linear-gradient(135deg,#2563eb,#1d4ed8)}.okr-accordion-meta{color:#475569;font-size:13.5px;font-weight:600}.okr-accordion-meta em{color:#0f172a;font-size:15px;font-style:normal;font-weight:800}.okr-accordion-progress{background:#e2e8f0;border-radius:999px;display:block;height:6px;overflow:hidden;position:relative}.okr-accordion-progress span{background:linear-gradient(90deg,#2563eb,#16a34a);border-radius:inherit;display:block;height:100%;transition:width .3s ease}.okr-accordion-pct{color:#2563eb;font-size:12px;font-weight:800;font-variant-numeric:tabular-nums;text-align:right}.okr-objective-body{background:#fff;display:grid;gap:12px;padding:14px}.kr-input-panel .kr-card{background:#fff;border:1px solid #e4e9f0;border-left:4px solid #cbd5e1;border-radius:12px;display:grid;gap:14px;padding:16px 18px}.kr-input-panel .kr-card.tone-pending{border-left-color:#cbd5e1}.kr-input-panel .kr-card.tone-excellent{border-left-color:#15803d}.kr-input-panel .kr-card.tone-good{border-left-color:#1d4ed8}.kr-input-panel .kr-card.tone-pass{border-left-color:#0d9488}.kr-input-panel .kr-card.tone-fail{border-left-color:#dc2626}.kr-input-panel .kr-card.tone-na{border-left-color:#64748b}.kr-input-panel .kr-card.tone-error{border-left-color:#d97706;border-color:#fcd9a3}.kr-input-panel .kr-card-head{align-items:center;display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr) auto}.kr-input-panel .kr-card-code{background:#0f172a;border-radius:7px;color:#fff;font-size:13px;font-weight:800;letter-spacing:.03em;padding:5px 11px;white-space:nowrap}.kr-input-panel .kr-card-title{display:grid;gap:5px;min-width:0}.kr-input-panel .kr-card-title h4{color:#0f172a;font-size:16px;font-weight:700;line-height:1.4;margin:0}.kr-input-panel .kr-card-meta{align-items:center;display:flex;flex-wrap:wrap;gap:8px;margin:0}.kr-input-panel .kr-meta-pill{background:#eef2f7;border-radius:6px;color:#475569;font-size:12.5px;font-weight:600;padding:3px 9px}.kr-input-panel .kr-meta-pill.kr-meta-target{background:#eff6ff;color:#1d4ed8;font-weight:700}.kr-input-panel .kr-status-chip{align-items:center;align-self:center;border-radius:999px;display:inline-flex;font-size:13px;font-weight:700;gap:5px;padding:5px 12px;white-space:nowrap}.kr-input-panel .kr-status-chip.is-pending{background:#f1f5f9;color:#64748b}.kr-input-panel .kr-status-chip.tone-excellent{background:#dcfce7;color:#15803d}.kr-input-panel .kr-status-chip.tone-good{background:#dbeafe;color:#1d4ed8}.kr-input-panel .kr-status-chip.tone-pass{background:#ccfbf1;color:#0f766e}.kr-input-panel .kr-status-chip.tone-fail{background:#fee2e2;color:#b91c1c}.kr-input-panel .kr-status-chip.tone-na{background:#e2e8f0;color:#475569}.kr-input-panel .kr-card-grid{display:grid;gap:16px;grid-template-columns:1fr}.kr-input-panel .kr-field{display:grid;gap:7px;min-width:0;position:relative}.kr-input-panel .kr-field-label{align-items:center;color:#334155;display:inline-flex;gap:6px;font-size:13px;font-weight:700;letter-spacing:0}.kr-input-panel .kr-field-label small{color:#94a3b8;font-size:12px;font-weight:500}.kr-input-panel .kr-field textarea{background:#fff;border:1px solid #d8e0ea;border-radius:9px;color:#1e293b;font-family:inherit;font-size:15px;line-height:1.55;padding:11px 13px;resize:vertical;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.kr-input-panel .kr-field textarea::placeholder{color:#9aa7b8}.kr-input-panel .kr-field textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb24;outline:none}.kr-input-panel .kr-field-report textarea{min-height:92px}.kr-input-panel .kr-field-notes textarea{min-height:60px}.kr-input-panel .kr-field-counter{color:#94a3b8;font-size:12px;position:absolute;right:10px;bottom:8px;font-variant-numeric:tabular-nums}.kr-input-panel .kr-assessment-grid{display:grid;gap:8px;grid-template-columns:repeat(5,minmax(0,1fr))}.kr-input-panel .kr-assessment-pill{align-items:center;background:#fff;border:1.5px solid #d8e0ea;border-radius:10px;color:#334155;cursor:pointer;display:inline-flex;font-family:inherit;font-size:14px;font-weight:600;gap:6px;justify-content:center;min-height:44px;padding:8px 12px;transition:background .15s ease,border-color .15s ease,color .15s ease}.kr-input-panel .kr-assessment-pill:hover:not(:disabled):not(.is-active){background:#f6f9fc;border-color:#94a3b8}.kr-input-panel .kr-assessment-pill:disabled{cursor:not-allowed;opacity:.55}.kr-input-panel .kr-assessment-pill-label{line-height:1.2}.kr-input-panel .kr-assessment-pill-tick{flex-shrink:0}.kr-input-panel .kr-assessment-pill.is-active{border-color:transparent;color:#fff;font-weight:700}.kr-input-panel .kr-assessment-pill.tone-excellent.is-active{background:#15803d}.kr-input-panel .kr-assessment-pill.tone-good.is-active{background:#1d4ed8}.kr-input-panel .kr-assessment-pill.tone-pass.is-active{background:#0d9488}.kr-input-panel .kr-assessment-pill.tone-fail.is-active{background:#dc2626}.kr-input-panel .kr-assessment-pill.tone-na.is-active{background:#64748b}.kr-input-panel .kr-card-messages{display:grid;gap:6px}.kr-input-panel .kr-message{align-items:center;border-radius:7px;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:7px 11px}.kr-input-panel .kr-message-error{background:#fef2f2;color:#b91c1c}.kr-input-panel .kr-message-warning{background:#fef3c7;color:#b45309}@media(max-width:1024px){.kr-input-panel .kr-assessment-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.okr-accordion-title{grid-template-columns:20px auto 1fr}.okr-accordion-progress,.okr-accordion-pct{display:none}}
