:root{--ink:#162033;--muted:#697386;--line:#e5e9f0;--paper:#fff;--bg:#f4f6f9;--navy:#0f1c31;--blue:#2367d1;--blue-soft:#eaf1ff;--green:#168c65;--red:#c44242;--gold:#b97918}.step-hours{align-items:center;gap:6px;min-width:105px;display:flex}.step-hours input{width:72px!important}.step-hours span,.sop-step-table td>small{color:var(--muted);font-size:11px}.inline-unit-input{border:1px solid var(--line);background:#fff;border-radius:9px;align-items:center;display:flex;overflow:hidden}.inline-unit-input input{flex:1;border:0!important}.inline-unit-input em{color:var(--muted);padding:0 12px;font-style:normal}.schedule-date-copy{background:#eef5ff;border-radius:7px;width:fit-content;padding:4px 8px;font-weight:700;color:#2362b8!important;display:inline-flex!important}.profile-page,.calendar-page{flex-direction:column;gap:18px;display:flex}.profile-hero{color:#fff;background:linear-gradient(135deg,#12213d,#1e4e93);border-radius:16px;align-items:center;gap:18px;padding:24px;display:flex;box-shadow:0 10px 30px #0f1c311f}.profile-avatar{width:64px;height:64px;color:var(--blue);background:#fff;font-size:25px}.profile-hero h2{margin:4px 0;font-size:25px}.profile-hero p,.profile-hero span{color:#c9d8f1;margin:0}.overall-score{text-align:right;min-width:160px;margin-left:auto}.overall-score b{color:#ffcc72;font-size:42px;line-height:1;display:block}.overall-score em{color:#fff;margin-top:7px;font-size:12px;font-style:normal;display:block}.profile-score-grid{grid-template-columns:repeat(4,1fr);gap:14px;display:grid}.profile-score-grid article,.profile-data-grid article,.calendar-summary,.calendar-list article{border:1px solid var(--line);background:#fff;border-radius:14px;box-shadow:0 6px 20px #0f1c310f}.profile-score-grid article{padding:18px}.profile-score-grid article>div:first-child{color:var(--muted);justify-content:space-between;display:flex}.profile-score-grid article>b{margin:12px 0 8px;font-size:30px;display:block}.profile-score-grid article p{color:var(--muted);margin:9px 0 0;font-size:12px;line-height:1.5}.score-track{background:#e8edf5;border-radius:99px;height:6px;overflow:hidden}.score-track i{background:linear-gradient(90deg, var(--blue), #49a6ff);border-radius:inherit;height:100%;display:block}.profile-data-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.profile-data-grid article{flex-direction:column;gap:5px;padding:17px;display:flex}.profile-data-grid span,.profile-data-grid small{color:var(--muted)}.profile-data-grid b{font-size:22px}.profile-form-grid{grid-template-columns:1fr 1fr;gap:18px;display:grid}.profile-form-grid .create-panel{align-self:start;margin:0}.profile-loading{text-align:center;color:var(--muted);background:#fff;border-radius:14px;padding:30px}.calendar-editor{grid-template-columns:1.5fr repeat(3,1fr) auto;align-items:end;gap:12px;margin:0;display:grid}.calendar-editor>div p{color:var(--muted);margin:5px 0 0;font-size:12px}.calendar-editor>button{height:43px}.calendar-summary{align-items:center;gap:30px;padding:18px 22px;display:flex}.calendar-summary article{box-shadow:none;border:0;flex-direction:column;display:flex}.calendar-summary article b{font-size:24px}.calendar-summary article span,.calendar-summary p{color:var(--muted)}.calendar-summary p{margin-left:auto}.calendar-list{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.calendar-list article{border-left:4px solid #e15b64;flex-direction:column;gap:5px;padding:15px;display:flex}.calendar-list article.calendar-working{border-left-color:#2caa71}.calendar-list time,.calendar-list small{color:var(--muted);font-size:11px}.calendar-list span{color:#b24149;font-size:12px}.calendar-list .calendar-working span{color:#25895c}@media (max-width:900px){.profile-score-grid,.profile-data-grid,.calendar-list{grid-template-columns:repeat(2,1fr)}.profile-form-grid,.calendar-editor{grid-template-columns:1fr}.profile-hero{flex-wrap:wrap;align-items:flex-start}.overall-score{text-align:left;width:100%;margin-left:0}.calendar-summary{flex-wrap:wrap;align-items:flex-start}.calendar-summary p{width:100%;margin:0}}*{box-sizing:border-box}html,body{background:var(--bg);min-height:100%;color:var(--ink);margin:0;font-family:Inter,PingFang SC,Microsoft YaHei,Arial,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}.center-screen{min-height:100vh;color:var(--muted);justify-content:center;align-items:center;gap:14px;display:flex}.loader{border:2px solid #d6dce7;border-top-color:var(--blue);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.auth-page{background:#fff;grid-template-columns:minmax(420px,1.1fr) minmax(420px,.9fr);min-height:100vh;display:grid}.auth-visual{color:#fff;background:#101c2e;flex-direction:column;justify-content:center;padding:11vh 9vw;display:flex;position:relative;overflow:hidden}.auth-visual:after{content:"";background:radial-gradient(circle,#2d70d859,#0000 68%);border-radius:50%;width:520px;height:520px;position:absolute;bottom:-180px;right:-180px}.visual-grid{opacity:.08;background-image:linear-gradient(#fff 1px,#0000 1px),linear-gradient(90deg,#fff 1px,#0000 1px);background-size:52px 52px;position:absolute;inset:0}.auth-visual>:not(.visual-grid){z-index:1;position:relative}.auth-visual>p{letter-spacing:.2em;color:#8fb7f5;font-size:12px;font-weight:700}.auth-visual h1{letter-spacing:-.04em;margin:24px 0;font-size:clamp(42px,5vw,70px);line-height:1.12}.cycle{color:#b9c8dd;align-items:center;gap:13px;margin-top:28px;display:flex}.cycle span{border:1px solid #40536d;border-radius:99px;padding:8px 13px}.cycle b{color:#4e87df}.auth-panel{justify-content:center;align-items:center;padding:50px;display:flex}.auth-panel form{width:min(420px,100%)}.auth-logo,.brand-mark{color:#fff;background:linear-gradient(145deg,#2f75df,#17498f);border-radius:12px;place-items:center;width:42px;height:42px;font-weight:800;display:grid;box-shadow:0 8px 22px #2367d140}.auth-panel h2{letter-spacing:-.02em;margin:7px 0;font-size:29px}.eyebrow{color:var(--blue);text-transform:uppercase;letter-spacing:.13em;margin:22px 0 0;font-size:11px;font-weight:800}.muted{color:var(--muted);font-size:14px;line-height:1.6}.field{color:#465066;flex-direction:column;gap:7px;margin-top:17px;font-size:13px;font-weight:600;display:flex}.field input,.field select,.field textarea{width:100%;color:var(--ink);background:#fff;border:1px solid #dce1ea;border-radius:9px;outline:none;padding:11px 12px;font-weight:400;transition:all .2s}.field input:focus,.field select:focus,.field textarea:focus{border-color:#70a1eb;box-shadow:0 0 0 3px #2367d117}.field textarea{resize:vertical}.field-help{color:var(--muted);font-size:10px;font-weight:400;line-height:1.55}.weight-fieldset{background:#f8faff;border:1px solid #dce5f2;border-radius:10px;margin-top:18px;padding:15px}.weight-fieldset>div:first-child b{font-size:13px}.weight-fieldset>div:first-child p{color:var(--muted);margin:5px 0 0;font-size:10px;line-height:1.5}.weight-fieldset>div:last-child{grid-template-columns:repeat(5,1fr);gap:9px;display:grid}.weight-fieldset .field{margin-top:12px}.primary{background:var(--blue);color:#fff;border:0;border-radius:9px;padding:10px 17px;font-weight:700;box-shadow:0 5px 13px #2367d12e}.primary:hover{background:#195abe}.full{width:100%;margin-top:24px;padding:13px}.form-error{color:#a43232;background:#fff0f0;border-radius:8px;margin:16px 0;padding:10px 12px;font-size:13px}.app-shell{grid-template-columns:242px 1fr;min-height:100vh;display:grid}.sidebar{background:var(--navy);color:#c6d0de;z-index:5;flex-direction:column;width:242px;padding:24px 15px;display:flex;position:fixed;inset:0 auto 0 0}.brand{align-items:center;gap:12px;padding:0 8px 28px;display:flex}.brand-mark{border-radius:10px;width:39px;height:39px}.brand b{color:#fff;font-size:14px;display:block}.brand span{color:#73849d;margin-top:3px;font-size:10px;display:block}.sidebar nav{flex-direction:column;gap:4px;display:flex}.sidebar nav button{color:#9eadc1;text-align:left;background:0 0;border:0;border-radius:8px;align-items:center;gap:12px;padding:11px 13px;display:flex}.sidebar nav button i{text-align:center;color:#70829c;width:20px;font-size:17px;font-style:normal}.sidebar nav button.active{color:#fff;background:#1c2c45}.sidebar nav button.active i{color:#70a7fb}.sidebar nav button em{color:#fff;background:#d75858;border-radius:99px;place-items:center;min-width:19px;height:19px;margin-left:auto;font-size:10px;font-style:normal;display:grid}.sidebar-foot{border-top:1px solid #26364e;align-items:center;gap:10px;margin-top:auto;padding:20px 8px 0;display:flex}.avatar,.mini-avatar{color:#fff;background:#2c4568;border-radius:9px;flex:none;place-items:center;width:33px;height:33px;font-weight:700;display:grid}.sidebar-foot b,.sidebar-foot span{font-size:12px;display:block}.sidebar-foot span{color:#73849d;margin-top:3px;font-size:10px}.sidebar-foot button{color:#70819b;background:0 0;border:0;margin-left:auto;font-size:18px}.main{grid-column:2;min-width:0;padding:0 34px 60px}header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:92px;margin-bottom:28px;display:flex}header p{color:var(--muted);margin:0 0 4px;font-size:11px}header h1{margin:0;font-size:21px}.header-meta{color:var(--muted);align-items:center;gap:8px;font-size:12px;display:flex}.live-dot,.online{background:#28ac74;border-radius:50%;width:8px;height:8px;box-shadow:0 0 0 3px #dff5eb}.toast{z-index:20;color:#fff;border-radius:9px;padding:11px 16px;font-size:13px;position:fixed;top:22px;right:28px;box-shadow:0 10px 35px #0000002e}.toast.ok{background:#168c65}.toast.error{cursor:pointer;background:#b63e3e}.hero{color:#fff;background:linear-gradient(112deg,#162844,#1d3c68);border-radius:15px;justify-content:space-between;align-items:center;padding:27px 30px;display:flex;box-shadow:0 10px 30px #0f1c311f}.hero p{color:#82a9df;letter-spacing:.13em;margin:0;font-size:11px;font-weight:800}.hero h2{margin:8px 0 6px;font-size:24px}.hero span{color:#adbed5;font-size:13px}.ghost{color:#fff;background:#ffffff0d;border:1px solid #536b8c;border-radius:8px;padding:10px 15px}.stat-grid{grid-template-columns:repeat(4,1fr);gap:15px;margin:18px 0;display:grid}.stat{border:1px solid var(--line);background:#fff;border-radius:12px;padding:18px;position:relative;overflow:hidden}.stat:before{content:"";background:#93a0b3;width:3px;position:absolute;inset:0 auto 0 0}.stat.blue:before{background:var(--blue)}.stat.green:before{background:var(--green)}.stat.red:before{background:var(--red)}.stat.gold:before{background:var(--gold)}.stat p,.stat span{color:var(--muted);margin:0;font-size:11px}.stat strong{margin:9px 0 4px;font-size:27px;display:block}.two-col{grid-template-columns:1.12fr .88fr;gap:18px;display:grid}.panel,.create-panel,.table-wrap,.objective-card,.review-card,.member-card{border:1px solid var(--line);background:#fff;border-radius:12px}.panel{padding:20px}.panel-head,.page-title{justify-content:space-between;align-items:center;display:flex}.panel-head h3{margin:3px 0 0;font-size:16px}.panel-head button{color:var(--blue);background:0 0;border:0;font-size:12px}.list{margin-top:12px}.list-row{border-top:1px solid #edf0f4;align-items:center;gap:11px;padding:12px 1px;display:flex}.priority{background:#9ca7b8;border-radius:5px;width:4px;height:31px}.p-high{background:#d98a2e}.p-urgent{background:#d24d4d}.p-low{background:#6ba892}.grow{flex:1;min-width:0}.grow b,.grow span{display:block}.grow b{white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.grow span{color:var(--muted);margin-top:4px;font-size:10.5px}.status{color:#586578;white-space:nowrap;background:#eef1f5;border-radius:99px;padding:4px 8px;font-size:10px;font-weight:700;display:inline-flex}.status-completed,.status-achieved,.status-approved{color:#147856;background:#e6f5ef}.status-in_progress,.status-published,.status-on_track{color:#265fae;background:#e8f0ff}.status-pending_review{color:#96621a;background:#fff3dc}.status-returned,.status-at_risk,.status-behind{color:#ac3d3d;background:#ffebeb}.goal-row{border-top:1px solid #edf0f4;grid-template-columns:1fr auto;gap:9px;padding:13px 0;display:grid}.goal-row b,.goal-row span{display:block}.goal-row b{font-size:13px}.goal-row span{color:var(--muted);margin-top:4px;font-size:10.5px}.goal-row strong{color:var(--blue);font-size:12px}.progress{background:#edf0f4;border-radius:8px;grid-column:1/-1;height:5px;overflow:hidden}.progress i{background:linear-gradient(90deg,#286fd8,#5d96eb);border-radius:8px;height:100%;display:block}.page-title{margin:0 0 20px}.page-title h2{margin:0;font-size:22px}.page-title p{color:var(--muted);margin:6px 0 0;font-size:12px}.title-actions{gap:9px;display:flex}.title-actions>button:not(.primary),.template-button{color:#435169;background:#fff;border:1px solid #d7deea;border-radius:9px;padding:9px 14px;font-weight:650}.create-panel{margin-bottom:20px;padding:21px;box-shadow:0 8px 25px #1e2d460f}.create-panel h3{margin:0 0 5px}.generator-heading{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.generator-heading h3{margin:0}.generator-heading p{color:var(--muted);margin:6px 0 0;font-size:11px}.generate-button{color:#235fae;background:linear-gradient(135deg,#f5f8ff,#eaf1ff);border:1px solid #b9ccec;border-radius:9px;flex:none;padding:9px 14px;font-weight:700}.generate-button:hover{background:#e6efff;border-color:#7fa5df}.generate-button:disabled{opacity:.55;cursor:wait}.annual-panel{border-left:3px solid var(--gold)}.annual-mark{color:#96621a;background:#fff3dc;border-radius:99px;flex:none;padding:6px 10px;font-size:10px;font-weight:700}.rollup-panel{border:1px solid var(--line);background:#fff;border-radius:12px;margin-bottom:20px;overflow:hidden}.rollup-panel>.panel-head{padding:17px 19px 12px}.rollup-panel>.panel-head .eyebrow{margin:0}.rollup-panel>.panel-head>span{color:var(--muted);font-size:10px}.rollup-table{border:0;border-radius:0}.rollup-table td strong{color:var(--green)}.import-heading{justify-content:space-between;align-items:flex-start;gap:20px;display:flex}.import-heading p{color:var(--muted);margin:7px 0 0;font-size:12px}.upload-box{cursor:pointer;background:#f8faff;border:1px dashed #aebbd0;border-radius:11px;flex-direction:column;align-items:center;gap:6px;margin-top:18px;padding:22px;display:flex}.upload-box input{width:min(420px,100%);margin-bottom:8px}.upload-box b{font-size:13px}.upload-box span{color:var(--muted);font-size:11px}.import-result{border:1px solid;border-radius:9px;margin-top:15px;padding:14px 16px}.import-result.valid{background:#f0faf6;border-color:#bfe6d5}.import-result.invalid{background:#fff4f4;border-color:#f0caca}.import-summary{justify-content:space-between;gap:15px;font-size:12px;display:flex}.import-summary span{color:var(--muted)}.import-result ul{color:#a43232;margin:10px 0 0;padding-left:20px;font-size:11px;line-height:1.7}.preview-list{grid-template-columns:repeat(2,1fr);gap:7px 14px;margin-top:12px;display:grid}.preview-list span{color:#59667a;font-size:11px}.preview-list b{color:#1d5dac;margin-right:7px}.form-actions button:disabled{opacity:.5;cursor:not-allowed}.form-grid{grid-template-columns:repeat(2,1fr);column-gap:18px;display:grid}.span-2{grid-column:span 2}.form-actions{justify-content:flex-end;gap:9px;margin-top:18px;display:flex}.form-actions button:not(.primary){border:1px solid var(--line);background:#fff;border-radius:8px;padding:9px 15px}.card-grid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.objective-card{padding:18px}.card-top{color:var(--muted);justify-content:space-between;font-size:11px;display:flex}.objective-card h3{margin:14px 0 7px;font-size:16px}.objective-card>p{color:var(--muted);min-height:35px;font-size:12px;line-height:1.5}.objective-parent{color:#56667e;text-overflow:ellipsis;white-space:nowrap;background:#f0f4fa;border-radius:5px;max-width:100%;margin-bottom:7px;padding:4px 7px;font-size:9px;display:inline-flex;overflow:hidden}.objective-parent.root{color:#8b5d19;background:#fff3dc;font-weight:700}.objective-parent.orphan{color:#a83e3e;background:#ffeded;font-weight:700}.result-metric{background:#fafbfd;border:1px solid #e1e7f0;border-radius:8px;margin-top:14px;padding:11px 12px;position:relative}.result-metric>div span,.result-metric>div b{display:block}.result-metric>div span{color:var(--muted);font-size:9px}.result-metric>div span em{color:#187255;background:#e9f5ef;border-radius:4px;margin-left:6px;padding:2px 5px;font-style:normal}.result-metric>div b{color:#34445c;margin-top:5px;font-size:11px}.result-metric>button{color:#2760ad;background:#e7effc;border:0;border-radius:5px;padding:5px 8px;font-size:9px;position:absolute;top:10px;right:10px}.result-metric>small{color:#7b8798;margin-top:7px;font-size:9px;display:block}.three-progress{gap:8px;margin-top:14px;display:grid}.progress-line>div:first-child{color:#657186;justify-content:space-between;font-size:9px;display:flex}.progress-line b{font-size:9px}.progress-track{background:#edf0f4;border-radius:6px;height:5px;margin-top:4px;overflow:hidden}.progress-track i{border-radius:inherit;background:#3678d5;height:100%;display:block}.progress-line.time .progress-track i{background:#9ba7b8}.progress-line.task .progress-track i{background:#43a47f}.progress-line.danger .progress-track i{background:#d45d5d}.schedule-gap{color:#177657;background:#edf8f3;border-radius:6px;margin-top:11px;padding:7px 8px;font-size:9px}.schedule-gap.behind{color:#ad4141;background:#fff0f0}.progress-editor form{align-items:end;gap:12px;margin-top:13px;display:flex}.progress-editor form .field{flex:1;margin:0}.progress-editor form .form-actions{margin:0}.objective-period-summary{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.objective-period-summary article{background:#fff;border:1px solid;border-radius:10px;padding:15px 17px}.objective-period-summary span,.objective-period-summary small{font-size:9px;display:block}.objective-period-summary b{margin:6px 0 4px;font-size:23px;display:block}.period-summary-annual{color:#245ca8;background:#f4f8ff!important;border-color:#b9cdec!important}.period-summary-quarterly{color:#6c48a1;background:#faf7ff!important;border-color:#d3c5eb!important}.period-summary-monthly{color:#18765a;background:#f4fbf8!important;border-color:#b8dfd1!important}.period-summary-weekly{color:#56657a;background:#f8f9fb!important;border-color:#d5dce7!important}.objective-period-summary small{color:currentColor;opacity:.75}.objective-filter-bar{border:1px solid var(--line);background:#fff;border-radius:10px;align-items:end;gap:12px;margin:13px 0 20px;padding:13px 15px;display:flex}.objective-filter-bar>div{flex:1}.objective-filter-bar b,.objective-filter-bar span,.objective-filter-bar em{display:block}.objective-filter-bar b{font-size:12px}.objective-filter-bar>div span{color:var(--muted);margin-top:4px;font-size:9px}.objective-filter-bar>div em{color:#2666b4;margin-top:6px;font-size:9px;font-style:normal;font-weight:700}.objective-filter-bar label{min-width:155px}.objective-filter-bar label span{color:var(--muted);margin-bottom:5px;font-size:9px}.objective-filter-bar select{background:#fff;border:1px solid #d9e0ea;border-radius:7px;width:100%;padding:8px 10px;font-size:10px}.company-rollup-row{background:#f3f7ff}.company-rollup-row td:first-child{border-left:3px solid #2d68b7}.company-rollup-row td:first-child b{color:#245ca8}.objective-groups{gap:18px;display:grid}.objective-group{border:1px solid var(--line);background:#f8fafc;border-radius:13px;overflow:hidden}.objective-group-head{background:#fff;border-left:4px solid #71819a;justify-content:space-between;align-items:center;gap:15px;padding:15px 17px;display:flex}.group-annual .objective-group-head{border-left-color:#2d68b7}.group-quarterly .objective-group-head{border-left-color:#7952ad}.group-monthly .objective-group-head{border-left-color:#238264}.objective-group-head span,.objective-group-head h3{display:block}.objective-group-head span{color:var(--muted);font-size:9px}.objective-group-head h3{margin:4px 0 0;font-size:15px}.objective-group-head dl{gap:8px;margin:0;display:flex}.objective-group-head dl div{text-align:center;background:#f5f7fa;border-radius:7px;min-width:66px;padding:7px 9px}.objective-group-head dt{color:var(--muted);font-size:8px}.objective-group-head dd{margin:3px 0 0;font-size:11px;font-weight:700}.objective-group>.card-grid{padding:15px}.objective-progress-card{border-top:3px solid #7e8da3}.objective-progress-card.objective-annual{border-top-color:#2d68b7}.objective-progress-card.objective-quarterly{border-top-color:#7952ad}.objective-progress-card.objective-monthly{border-top-color:#238264}.objective-approval-note{color:#8c5d18;background:#fff4dd;border-radius:6px;margin:10px 0 -3px;padding:6px 8px;font-size:9px;font-weight:700}.objective-approval-note.rejected{color:#a83e3e;background:#ffeded}.objective-approval-card{border-top-color:#2d68b7!important}.objective-approval-flow{flex-wrap:wrap;gap:6px;margin-top:11px;display:flex}.objective-approval-flow span{color:#5d6879;background:#eef1f5;border-radius:99px;padding:5px 7px;font-size:8px}.objective-approval-flow span.approved{color:#167556;background:#e9f7f1}.objective-approval-flow span.pending{color:#8e5e18;background:#fff3dc}.objective-approval-flow span.rejected{color:#a83e3e;background:#ffeded}.rollup-visuals{padding:4px 18px 18px}.rollup-visual-head{border-top:1px solid #edf0f4;justify-content:space-between;align-items:flex-end;gap:20px;padding:14px 0;display:flex}.rollup-visual-head>div>span{color:#2a67ba;letter-spacing:.08em;font-size:9px;font-weight:800}.rollup-visual-head h4{margin:5px 0 0;font-size:15px}.rollup-visual-head p{color:var(--muted);margin:5px 0 0;font-size:9px}.rollup-visual-head label{min-width:220px}.rollup-visual-head label span{color:var(--muted);margin-bottom:5px;font-size:9px;display:block}.rollup-visual-head select{color:#34445b;background:#fff;border:1px solid #d6dfec;border-radius:8px;width:100%;padding:8px 10px;font-size:10px}.rollup-kpis{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.rollup-kpis article{background:#fafcff;border:1px solid #e2e8f1;border-radius:9px;align-items:center;gap:11px;padding:13px;display:flex}.rollup-kpis article>i{color:#2764b5;background:#e8f1ff;border-radius:9px;place-items:center;width:34px;height:34px;font-size:16px;font-style:normal;font-weight:800;display:grid}.rollup-kpis span,.rollup-kpis small{color:var(--muted);font-size:8px;display:block}.rollup-kpis b{color:#263b5a;margin:4px 0 2px;font-size:18px;display:block}.rollup-kpis .kpi-success>i{color:#16815c;background:#e7f7f0}.rollup-kpis .kpi-risk>i{color:#c45b3d;background:#fff0eb}.rollup-chart-grid{grid-template-columns:1.15fr 1fr;gap:12px;margin-top:12px;display:grid}.rollup-chart-card{background:#fff;border:1px solid #e0e6ef;border-radius:10px;min-width:0;padding:14px}.chart-card-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.chart-card-head h4{margin:0;font-size:11px}.chart-card-head p{color:var(--muted);margin:4px 0 0;font-size:8px}.chart-card-head>strong{color:#2c66b3;text-align:right;font-size:14px}.chart-card-head>strong small{color:var(--muted);margin-top:2px;font-size:7px;font-weight:500;display:block}.chart-legend{gap:9px;display:flex}.chart-legend span{color:var(--muted);align-items:center;gap:4px;font-size:8px;display:flex}.chart-legend i{border-radius:2px;width:7px;height:7px}.legend-target{background:#b8c8df}.legend-current{background:#2d72ce}.bar-chart-scroll{padding-top:12px;overflow-x:auto}.bar-chart{background:linear-gradient(#0000 33%,#f1f4f8 34%,#0000 35% 66%,#f1f4f8 67%,#0000 68%);border-bottom:1px solid #dae1eb;align-items:flex-end;gap:7px;height:202px;padding:0 8px 5px;display:flex}.bar-column{flex-direction:column;flex:1 0 76px;align-items:center;min-width:76px;display:flex}.bar-value-label{color:#2c65b2;height:14px;font-size:7px;font-weight:700}.bar-pair{align-items:flex-end;gap:4px;height:143px;display:flex}.bar-pair>i{border-radius:4px 4px 1px 1px;width:15px;min-height:2px;transition:height .2s;display:block}.target-bar{background:#b8c8df}.current-bar{background:linear-gradient(#3b83df,#255fac)}.bar-column>b{color:#46556b;text-align:center;text-overflow:ellipsis;white-space:nowrap;width:76px;margin-top:6px;font-size:8px;overflow:hidden}.bar-column>span{color:var(--muted);margin-top:2px;font-size:7px}.chart-footnote{color:#8a601f;margin-top:8px;font-size:8px;display:block}.line-chart-wrap{margin-top:9px;overflow-x:auto}.line-chart{width:100%;min-width:520px;height:210px}.line-chart .grid-line{stroke:#edf0f4;stroke-width:1px}.line-chart .axis-line{stroke:#ccd5e2;stroke-width:1.2px}.line-chart .goal-line{stroke:#2c9a71;stroke-width:1px;stroke-dasharray:5 4}.line-chart text{fill:#8290a3;font-size:8px}.line-chart .trend-area-line{fill:none;stroke:#2c70c8;stroke-width:3px;stroke-linejoin:round;stroke-linecap:round}.line-chart circle{fill:#fff;stroke:#2c70c8;stroke-width:3px}.line-chart .point-rate{fill:#285fae;font-size:7px;font-weight:700}.line-chart .point-label{fill:#667489;font-size:7px}.rollup-detail-table{border-top:1px solid #e6ebf2}.rollup-detail-table>summary{color:#44536a;cursor:pointer;background:#fafbfd;justify-content:space-between;align-items:center;padding:13px 18px;font-size:10px;font-weight:700;list-style:none;display:flex}.rollup-detail-table>summary::-webkit-details-marker{display:none}.rollup-detail-table>summary b{color:#2b61ad;background:#e7effc;border-radius:99px;padding:4px 7px;font-size:8px}.rollup-detail-table[open]>summary{border-bottom:1px solid #e5eaf1}.visibility-button{color:#2b61ad;background:#f7faff;border:1px dashed #b9c9df;border-radius:7px;width:100%;margin-top:11px;padding:7px;font-size:10px}.viewer-grid{grid-template-columns:repeat(3,1fr);gap:9px;margin-top:16px;display:grid}.viewer-grid label{border:1px solid var(--line);cursor:pointer;border-radius:8px;align-items:center;gap:9px;padding:10px;display:flex}.viewer-grid input{width:16px;height:16px}.viewer-grid b,.viewer-grid small{display:block}.viewer-grid b{font-size:11px}.viewer-grid small{color:var(--muted);margin-top:3px;font-size:9px}.owner-line{border-top:1px solid var(--line);align-items:center;gap:8px;padding-top:12px;font-size:11px;display:flex}.mini-avatar{color:#24579f;background:#dfeafb;border-radius:7px;width:25px;height:25px;font-size:10px}.owner-line i{color:var(--muted);margin-left:auto;font-style:normal}.metric{justify-content:space-between;align-items:end;margin-top:16px;display:flex}.metric span,.metric b{font-size:10px;display:block}.metric b{color:#48546a;margin-top:4px}.metric strong{color:var(--blue);font-size:18px}.progress.large{height:6px;margin-top:7px}.table-wrap{overflow:hidden}table{border-collapse:collapse;width:100%}th{text-align:left;color:#687488;text-transform:uppercase;letter-spacing:.05em;background:#f7f8fa;padding:12px 14px;font-size:10.5px}td{vertical-align:middle;border-top:1px solid #edf0f3;padding:13px 14px;font-size:12px}td b,td span,td small{display:block}td span{color:var(--muted);max-width:290px;margin-top:4px;font-size:10.5px}td small{color:var(--blue);margin-top:4px}.overdue td:first-child{box-shadow:inset 3px 0 #cf4a4a}.actions{white-space:nowrap}.actions button{color:#536074;background:#eef1f5;border:0;border-radius:6px;margin-right:5px;padding:6px 9px;font-size:10px}.actions button.accent{color:#235cae;background:#e8f0ff}.submit-panel{border-left:3px solid var(--blue)}.submission-primary{background:#fbfdff;border:2px solid #b9cfee;border-radius:11px;margin-top:16px;padding:17px}.submission-section-head,.review-section-title{align-items:flex-start;gap:10px;display:flex}.submission-section-head>span,.review-section-title>span{color:#fff;background:#2466bc;border-radius:99px;flex:none;padding:4px 8px;font-size:9px;font-weight:700}.submission-section-head b,.submission-section-head p,.review-section-title b,.review-section-title p{display:block}.submission-section-head p,.review-section-title p{color:var(--muted);margin:4px 0 0;font-size:10px;line-height:1.5}.submission-primary>.field{margin-top:14px}.submission-secondary{background:#fafafa!important;border-color:#e1e5eb!important}.submission-section-head.secondary>span{color:#687386;background:#e7eaf0}.sop-schedule{border:1px solid #dce5f2;border-radius:11px;grid-column:1/-1;margin-top:19px;overflow:hidden}.sop-schedule-head{background:#f5f8fd;justify-content:space-between;align-items:center;padding:13px 15px;display:flex}.sop-schedule-head b,.sop-schedule-head span{display:block}.sop-schedule-head b{font-size:12px}.sop-schedule-head span{color:var(--muted);margin-top:4px;font-size:10px}.sop-schedule-head button{color:#285fae;background:#e5eeff;border:0;border-radius:6px;padding:6px 10px;font-size:10px}.sop-schedule-row{border-top:1px solid #e8edf4;grid-template-columns:48px minmax(0,1fr) 145px;align-items:center;gap:11px;padding:13px 15px;transition:all .18s;display:grid}.sop-schedule-row.step-disabled{opacity:.5;background:#fafbfc}.step-check{align-items:center;gap:8px;display:flex}.step-check input{width:16px;height:16px}.step-check i{background:var(--blue-soft);width:24px;height:24px;color:var(--blue);border-radius:50%;place-items:center;font-size:10px;font-style:normal;font-weight:700;display:grid}.step-copy{min-width:0}.step-copy b,.step-copy span,.step-copy small{display:block}.step-copy b{font-size:12px}.step-copy span{color:var(--muted);margin-top:4px;font-size:10px;line-height:1.45}.step-copy small{color:#94631c;margin-top:4px;font-size:9px}.duration-field>span{color:var(--muted);margin-bottom:5px;font-size:9px;display:block}.duration-field>div{background:#fff;border:1px solid #dce1ea;border-radius:8px;align-items:center;display:flex;overflow:hidden}.duration-field input{border:0;outline:0;width:86px;min-width:0;padding:8px}.duration-field em{color:var(--muted);font-size:9px;font-style:normal}.step-copy .dependency-copy{color:#96621a}.step-copy .parallel-copy{color:#17815e}.step-check i{border-radius:12px;width:auto;min-width:24px;padding:0 5px}.nested-sop-picker{grid-template-columns:repeat(2,1fr);gap:8px;margin-top:1px;display:grid}.nested-sop-picker>label{cursor:pointer;background:#fafbfd;border:1px solid #dce3ed;border-radius:8px;align-items:center;gap:9px;padding:10px;display:flex}.nested-sop-picker input{width:16px;height:16px}.nested-sop-picker b,.nested-sop-picker small{display:block}.nested-sop-picker b{font-size:11px}.nested-sop-picker small{color:var(--muted);margin-top:3px;font-size:9px}.step-meta strong{color:#285fae;background:#edf4ff;border-radius:5px;padding:4px 7px;font-size:9px}.sop-step-editor{background:#fff;border:1px solid #dbe3ef;border-radius:10px;margin-top:1px;overflow:hidden}.sop-step-table-wrap{overflow-x:auto}.sop-step-table{min-width:1060px}.sop-step-table th{padding:10px}.sop-step-table td{vertical-align:top;padding:9px}.sop-step-table td:first-child{text-align:center;width:48px;padding-top:18px}.sop-step-table input:not([type=checkbox]),.sop-step-table textarea,.sop-step-table select{background:#fff;border:1px solid #dce1ea;border-radius:7px;outline:none;width:100%;padding:8px;font-size:10px}.sop-step-table textarea{resize:vertical;min-height:67px}.sop-step-table td:nth-child(2){width:220px}.sop-step-table td:nth-child(3),.sop-step-table td:nth-child(4){width:230px}.sop-step-table td:nth-child(5){width:190px}.sop-step-table td:nth-child(2) select{color:#285fae;margin-top:6px}.dependency-checks{flex-wrap:wrap;gap:5px;display:flex}.dependency-checks>span{color:var(--muted);padding-top:8px;font-size:9px}.dependency-checks label{background:#f3f6fa;border-radius:5px;align-items:center;gap:4px;padding:5px 6px;font-size:9px;font-weight:500;display:flex}.dependency-checks input{width:13px;height:13px}.remove-step{color:#ad4141;background:#fff5f5;border:1px solid #efd1d1;border-radius:6px;padding:6px 8px;font-size:9px}.add-step-button{color:#2862b2;background:#f7faff;border:0;border-top:1px dashed #c9d5e6;width:100%;padding:11px;font-size:11px;font-weight:700}.sop-image-toolbar{justify-content:space-between;align-items:center;margin-top:6px;display:flex}.sop-image-toolbar label{color:#2a61aa;cursor:pointer;background:#f2f7ff;border:1px solid #c9d7ea;border-radius:6px;padding:5px 7px;font-size:9px;font-weight:700}.sop-image-toolbar input{display:none}.sop-image-toolbar span{color:var(--muted);font-size:9px}.sop-image-previews{grid-template-columns:repeat(4,1fr);gap:5px;margin-top:7px;display:grid}.sop-image-previews figure{background:#f4f6f9;border:1px solid #dfe5ed;border-radius:5px;margin:0;position:relative;overflow:hidden}.sop-image-previews img{object-fit:cover;width:100%;height:42px;display:block}.sop-image-previews button{color:#fff;background:#141e2dc7;border:0;border-radius:50%;width:17px;height:17px;padding:0;line-height:16px;position:absolute;top:2px;right:2px}.sop-detail-images{grid-template-columns:repeat(4,minmax(80px,140px));gap:8px;margin:9px 0;display:grid}.sop-detail-images a,.task-sop-images a{background:#f4f6f9;border:1px solid #dfe5ed;border-radius:7px;display:block;overflow:hidden}.sop-detail-images img{object-fit:cover;width:100%;height:95px;display:block}.task-sop-images{flex-wrap:wrap;gap:5px;margin-top:7px;display:flex}.task-sop-images a{width:48px;height:38px}.task-sop-images img{object-fit:cover;width:100%;height:100%;display:block}.delay-panel{border-left:3px solid var(--gold)}.delay-note{color:#a06b1a!important}.dependency-note{background:#fff6e6;border-radius:5px;padding:4px 6px;color:#8b5c18!important;max-width:340px!important}.submit-tip{color:var(--muted);margin:7px 0 0;font-size:11px}.evidence-toolbar{align-items:center;gap:12px;margin-top:14px;display:flex}.evidence-toolbar>span{color:var(--muted);font-size:10px}.image-picker{color:#2861b0;cursor:pointer;background:#f7faff;border:1px solid #ccd7e7;border-radius:8px;align-items:center;padding:8px 12px;font-size:11px;font-weight:700;display:inline-flex}.image-picker input{display:none}.evidence-preview{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:13px;display:grid}.evidence-preview figure{border:1px solid var(--line);background:#f4f6f9;border-radius:9px;margin:0;position:relative;overflow:hidden}.evidence-preview img{object-fit:cover;width:100%;height:120px;display:block}.evidence-preview figcaption{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);padding:7px 8px;font-size:9px;overflow:hidden}.evidence-preview button{color:#fff;background:#0f1c31c7;border:0;border-radius:50%;width:23px;height:23px;font-size:15px;position:absolute;top:5px;right:5px}.review-images{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:12px;display:grid}.review-images a{border:1px solid var(--line);min-width:0;color:var(--muted);background:#f7f8fa;border-radius:8px;text-decoration:none;overflow:hidden}.review-images img{object-fit:cover;width:100%;height:120px;display:block}.review-images span{text-overflow:ellipsis;white-space:nowrap;padding:6px 7px;font-size:9px;display:block;overflow:hidden}.evidence-preview video{object-fit:contain;background:#111827;width:100%;height:120px;display:block}.evidence-preview .file-attachment{min-height:120px;padding:17px 12px}.evidence-preview .draft-file figcaption,.evidence-preview .draft-pdf figcaption{display:none}.review-attachments{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px;display:grid}.attachment-card{border:1px solid var(--line);background:#f7f8fa;border-radius:9px;min-width:0;overflow:hidden}.attachment-card>a{color:inherit;text-decoration:none}.attachment-card img,.attachment-card video{object-fit:cover;background:#111827;width:100%;height:160px;display:block}.attachment-card video{object-fit:contain}.attachment-caption{justify-content:space-between;gap:8px;padding:7px 9px;display:flex}.attachment-caption span{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:9px;overflow:hidden}.attachment-caption small{color:var(--muted);flex:none;font-size:8px}.file-attachment{color:#4a5870;align-items:center;gap:11px;min-width:0;padding:13px;text-decoration:none;display:flex}.file-attachment>strong{color:#2c62ad;background:#e6eefb;border-radius:8px;flex:none;place-items:center;width:45px;height:45px;font-size:10px;display:grid}.file-attachment>div{min-width:0}.file-attachment b,.file-attachment span{display:block}.file-attachment b{text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.file-attachment span{color:var(--muted);margin-top:5px;font-size:8px}.review-grid{grid-template-columns:repeat(2,1fr);gap:16px;display:grid}.review-card{padding:19px}.review-head{align-items:center;gap:9px;display:flex}.review-head div:nth-child(2){flex:1}.review-head b,.review-head span{font-size:11px;display:block}.review-head span{color:var(--muted);margin-top:3px;font-size:10px}.review-card h3{margin:17px 0 5px}.review-context{color:var(--muted);margin:0;font-size:11px}.result-box{white-space:pre-wrap;background:#f7f8fa;border-radius:8px;margin-top:13px;padding:13px;font-size:12px;line-height:1.6}.execution-review-primary{background:#f5f9ff;border:2px solid #9bbbe6;border-radius:10px;margin-top:16px;padding:16px}.execution-review-primary .field{margin-top:12px}.sop-review-secondary{background:#fafafa;border:1px solid #e0e4ea;border-radius:9px;margin-top:13px;overflow:hidden}.sop-review-secondary summary{cursor:pointer;color:#5f6b7d;align-items:center;gap:8px;padding:11px 13px;list-style:none;display:flex}.sop-review-secondary summary::-webkit-details-marker{display:none}.sop-review-secondary summary>span{background:#e7eaf0;border-radius:99px;padding:3px 7px;font-size:8px;font-weight:700}.sop-review-secondary summary b{font-size:10px}.sop-review-secondary summary em{color:#8a94a3;margin-left:auto;font-size:9px;font-style:normal}.sop-review-secondary[open] summary{border-bottom:1px solid #e7e9ed}.sop-review-secondary-body{padding:0 13px 13px}.review-actions{justify-content:flex-end;gap:8px;margin-top:14px;display:flex}.review-actions button:not(.primary){background:#fff;border:1px solid #e1e5ec;border-radius:7px;padding:8px 13px}.section-heading{margin:26px 0 12px}.section-heading>span{color:var(--muted);font-size:11px}.delay-review-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.delay-review-card{border:1px solid var(--line);border-top:3px solid var(--gold);background:#fff;border-radius:11px;padding:16px}.delay-review-card h3{margin:15px 0 8px;font-size:14px}.delay-review-card dl{grid-template-columns:1fr 1fr;gap:8px;margin:0;display:grid}.delay-review-card dl div{background:#f7f8fa;border-radius:7px;padding:8px}.delay-review-card dt{color:var(--muted);font-size:9px}.delay-review-card dd{margin:4px 0 0;font-size:10px}.delay-review-card>p{color:#5b6576;min-height:34px;font-size:11px;line-height:1.6}.status-pending{color:#96621a;background:#fff3dc}.page-filter{color:#435169;background:#fff;border:1px solid #d7deea;border-radius:8px;padding:9px 13px}.danger-text{color:var(--red);font-weight:700}.member-grid{grid-template-columns:repeat(3,1fr);gap:15px;display:grid}.member-card{align-items:center;gap:13px;padding:17px;display:flex;position:relative}.avatar.big{color:#315b98;background:#e3ebf7;width:45px;height:45px}.member-card h3{margin:0;font-size:14px}.member-card p,.member-card span{color:var(--muted);margin:4px 0 0;font-size:10px}.member-card i{position:absolute;top:15px;right:15px}.department-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:20px;display:grid}.department-card{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:1.2fr .8fr .8fr auto;align-items:center;gap:8px;padding:13px;display:grid}.department-card b,.department-card span{display:block}.department-card b{font-size:12px}.department-card span{color:var(--muted);margin-top:4px;font-size:9.5px}.department-card input,.department-card select{border:1px solid #dce1ea;border-radius:7px;min-width:0;padding:8px;font-size:10px}.department-card button{color:#235cae;background:#e8f0ff;border:0;border-radius:7px;padding:8px 10px;font-size:10px}.member-card>div:not(.member-actions){min-width:0;padding-bottom:24px;padding-right:42px}.member-card small{color:#8490a2;margin-top:4px;font-size:10px;display:block}.member-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:calc(100% - 80px);padding:0;display:flex;position:absolute;bottom:12px;right:12px}.member-actions button{border:0;border-radius:6px;padding:5px 9px;font-size:10px}.member-edit{color:#2b61ad;background:#edf3ff}.member-permission{color:#187759;background:#edf8f3}.permission-enabled{font-weight:700;color:#187759!important}.member-deactivate{color:#b43c36;background:#fff0ef}.member-disabled{opacity:.62}.edit-panel-head{justify-content:space-between;display:flex}.edit-panel-head p{color:var(--muted);margin:6px 0 0;font-size:11px}.edit-panel-head>button{color:#7b8798;background:0 0;border:0;font-size:24px}.switch-field>span:last-of-type{align-items:center;gap:8px;min-height:42px;display:flex}.switch-field input[type=checkbox]{width:17px;height:17px}.deactivate-panel{border-left:3px solid #c94c46}.danger-button{border:0;color:#fff!important;background:#bd413b!important}.task-history-modal .detail-body section+section{margin-top:24px}.history-list,.submission-history{gap:10px;display:grid}.history-list>article{border:1px solid var(--line);border-radius:9px;align-items:center;gap:12px;padding:12px 14px;display:flex}.history-list>article>strong{color:#8a5b16;background:#fff5df;border-radius:6px;padding:7px 9px;font-size:10px}.history-list article div,.submission-history-head>div{flex:1;min-width:0}.history-list b,.history-list span{display:block}.history-list b{font-size:11px}.history-list span{color:var(--muted);margin-top:4px;font-size:9px}.submission-history>article{border:1px solid var(--line);border-radius:9px;padding:14px}.submission-history-head{align-items:center;gap:12px;display:flex}.submission-history-head b,.submission-history-head span{display:block}.submission-history-head b{font-size:11px}.submission-history-head span{color:var(--muted);margin-top:4px;font-size:9px}.submission-history>article>p{white-space:pre-wrap;color:#4f5b6d;font-size:11px;line-height:1.6}.submission-history>article>small{color:#667286;background:#f7f8fa;border-radius:6px;padding:8px 10px;font-size:9px;display:block}.modal-backdrop{z-index:30;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0a13218f;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.detail-modal{background:#fff;border-radius:15px;width:min(900px,100%);max-height:calc(100vh - 48px);overflow:hidden;box-shadow:0 24px 80px #00000047}.detail-head{border-bottom:1px solid var(--line);background:#f9fafc;justify-content:space-between;padding:23px 26px;display:flex}.detail-head span{color:var(--blue);font-size:11px;font-weight:700}.detail-head h2{margin:6px 0;font-size:22px}.detail-head p{color:var(--muted);margin:0;font-size:11px}.detail-head>button{color:#778397;background:0 0;border:0;align-self:flex-start;font-size:28px}.detail-body{max-height:calc(100vh - 170px);padding:24px 26px 30px;overflow-y:auto}.detail-body section+section{margin-top:24px}.detail-body h3{margin:0 0 12px;font-size:15px}.sop-description p{color:#596579;background:#f7f8fa;border-radius:8px;margin:0;padding:13px 15px;font-size:12px;line-height:1.7}.step-list{gap:10px;display:grid}.step-item{border:1px solid var(--line);border-radius:9px;gap:13px;padding:13px;display:flex}.step-item>i{background:var(--blue-soft);width:27px;height:27px;color:var(--blue);border-radius:50%;flex:none;place-items:center;font-size:11px;font-style:normal;font-weight:700;display:grid}.step-item b{font-size:12px}.step-item p{color:var(--muted);margin:5px 0;font-size:11px;line-height:1.55}.step-item span{color:#8a601f;background:#fff7e7;border-radius:5px;padding:4px 7px;font-size:10px}.comment-section{border-top:1px solid var(--line);padding-top:22px}.comment-form{background:#f7f9fc;border-radius:10px;grid-template-columns:160px 1fr auto;align-items:end;gap:12px;padding:14px;display:grid}.comment-form .field{margin:0}.comment-form>button{height:41px;margin-bottom:1px}.comment-list{margin-top:16px}.comment-item{border-top:1px solid #edf0f3;gap:10px;padding:14px 1px;display:flex}.comment-item>div{flex:1}.comment-item>div>div{align-items:center;gap:9px;display:flex}.comment-item b{font-size:11px}.comment-item small{color:var(--muted);font-size:9.5px}.comment-item strong{color:#e29b27;letter-spacing:1px;margin-left:auto;font-size:11px}.comment-item p{color:#4f5b6d;white-space:pre-wrap;margin:7px 0 0;font-size:11px;line-height:1.6}.step-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-top:7px;display:flex}.step-meta em{color:#8b5c18;background:#fff6e6;border-radius:5px;padding:4px 7px;font-size:9px;font-style:normal}.step-meta em.parallel{color:#167a58;background:#eaf8f2}.primary-sop-steps{background:#fbfdff;border:2px solid #b7cdeb;border-radius:11px;padding:17px}.detail-section-heading{align-items:flex-start;gap:10px;margin-bottom:13px;display:flex}.detail-section-heading>span{color:#fff;background:#2866b9;border-radius:99px;flex:none;padding:4px 8px;font-size:9px;font-weight:700}.detail-section-heading h3{margin:0}.detail-section-heading p{color:var(--muted);margin:4px 0 0;font-size:10px}.evaluation-task-link{color:#46658d;background:#edf3fb;border-radius:5px;margin-top:6px;padding:4px 7px;font-size:9px;display:inline-block}.rating-score{color:#d08a19}.version-history>div{border:1px solid var(--line);border-radius:9px;overflow:hidden}.version-history article{border-top:1px solid #edf0f3;align-items:center;gap:12px;padding:11px 13px;display:flex}.version-history article:first-child{border-top:0}.version-history article>strong{color:#285fae;background:#eaf1fc;border-radius:6px;place-items:center;min-width:38px;height:28px;font-size:10px;display:grid}.version-history article div{flex:1;min-width:0}.version-history article b,.version-history article span{display:block}.version-history article b{color:#445269;font-size:11px}.version-history article span{color:var(--muted);margin-top:4px;font-size:9px}.version-history article>button{color:#8b5d19;background:#fff7e7;border:1px solid #e6c88e;border-radius:6px;flex:none;padding:6px 8px;font-size:9px;font-weight:700}.version-history article>button:disabled{opacity:.55;cursor:wait}.owner-assignment-form{max-width:620px}.owner-assignment-form .field{margin-top:13px}.detail-head-actions{align-items:flex-start;gap:8px;display:flex}.detail-head-actions>button{color:#778397;background:0 0;border:0;font-size:28px}.detail-head-actions .edit-flow-button{color:#285fae;background:#edf4ff;border:1px solid #cbd9ed;border-radius:8px;margin-top:1px;padding:8px 11px;font-size:10px;font-weight:700}.flow-version-form{border:1px solid #cddbef;border-left:3px solid var(--blue);background:#f8faff;border-radius:10px;margin-bottom:22px;padding:17px}.flow-version-form>div:first-child h3{margin:0}.flow-version-form>div:first-child p,.flow-version-form>small{color:var(--muted);font-size:10px;line-height:1.5}.flow-version-form>div:first-child p{margin:5px 0 0}.flow-version-form .field{margin-top:12px}.sop-evaluation-summary{background:#f8faff;border:1px solid #d6e2f3;border-radius:11px;padding:17px}.sop-evaluation-summary>div:first-child p,.metric-explanation{color:var(--muted);font-size:10px;line-height:1.55}.evaluation-metrics{grid-template-columns:repeat(3,1fr);gap:9px;margin-top:12px;display:grid}.evaluation-metrics article{background:#fff;border:1px solid #e1e7f0;border-radius:8px;padding:12px}.evaluation-metrics span,.evaluation-metrics small{color:var(--muted);font-size:9px;display:block}.evaluation-metrics b{color:#245ca8;margin:6px 0 3px;font-size:18px;display:block}.sop-rating-box,.employee-sop-review,.supervisor-sop-review{background:#fafafa;border:1px solid #e0e4e9;border-radius:9px;margin-top:15px;padding:14px}.sop-rating-box>div>p,.supervisor-sop-review>p{color:var(--muted);margin:5px 0 0;font-size:10px;line-height:1.5}.employee-sop-review>div{justify-content:space-between;gap:10px;display:flex}.employee-sop-review strong{color:#d08a19}.employee-sop-review p{white-space:pre-wrap;color:#4f5b6d;font-size:11px}.employee-sop-review small,.section-help{color:var(--muted);font-size:9px;line-height:1.5}.supervisor-sop-review .field{margin-top:10px}.sop-review-secondary .employee-sop-review,.sop-review-secondary .supervisor-sop-review{background:#fff;margin-top:12px}.evaluation-guide{border-left:3px solid var(--blue);background:#eef4fd;border-radius:8px;align-items:flex-start;gap:12px;margin:15px 0;padding:12px 14px;display:flex}.evaluation-guide b{flex:none;font-size:11px}.evaluation-guide span{color:#536176;font-size:10px;line-height:1.55}.evaluation-table table{min-width:1180px}.overall-score{color:#205fae;font-size:16px}.approval-note{background:#fff5df;border-radius:5px;padding:4px 6px;color:#96621a!important}.approval-card-grid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.approval-card{border:1px solid var(--line);background:#fff;border-top:3px solid #4d7fc4;border-radius:11px;padding:16px}.approval-card.sop-approval-card{border-top-color:#9a6b25}.approval-card h3{margin:14px 0 7px;font-size:14px}.approval-card>p{color:#5a6678;white-space:pre-wrap;min-height:34px;font-size:10px;line-height:1.55}.approval-card dl{gap:7px;margin:11px 0 0;display:grid}.approval-card dl div{background:#f7f8fa;border-radius:7px;padding:8px}.approval-card dt{color:var(--muted);font-size:8px}.approval-card dd{color:#445166;margin:3px 0 0;font-size:9px}.guide-version{border-left:4px solid var(--blue);background:#eef5ff;border-radius:10px;align-items:center;gap:20px;padding:17px 19px;display:flex}.guide-version div{flex:none}.guide-version span,.guide-version b{display:block}.guide-version span{color:#6680a3;font-size:9px}.guide-version b{color:#245ca8;margin-top:4px;font-size:14px}.guide-version p{color:#53637a;margin:0;font-size:10px;line-height:1.6}.guide-grid{grid-template-columns:repeat(2,1fr);gap:12px;margin-top:17px;display:grid}.guide-grid details{border:1px solid var(--line);background:#fff;border-radius:10px;overflow:hidden}.guide-grid summary{cursor:pointer;padding:14px 16px;list-style:none}.guide-grid summary::-webkit-details-marker{display:none}.guide-grid summary span,.guide-grid summary b{display:block}.guide-grid summary span{color:#255fae;font-size:11px;font-weight:750}.guide-grid summary b{color:#4c596d;margin-top:5px;font-size:10px;line-height:1.5}.guide-grid details[open] summary{background:#fafcff;border-bottom:1px solid #e8ebef}.guide-grid ol{color:#586477;margin:0;padding:13px 18px 15px 36px;font-size:10px;line-height:1.75}.guide-changelog{border:1px solid var(--line);background:#fff;border-radius:11px;margin-top:20px;padding:18px}.guide-changelog h3{margin:0 0 12px}.guide-changelog article{border-top:1px solid #edf0f3;grid-template-columns:52px 1fr auto;align-items:center;gap:12px;padding:12px 0;display:grid}.guide-changelog article>strong{color:#285fae}.guide-changelog article b,.guide-changelog article p{display:block}.guide-changelog article b{font-size:11px}.guide-changelog article p{color:var(--muted);margin:4px 0 0;font-size:9px}.guide-changelog time{color:var(--muted);font-size:9px}.log-summary{grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:16px;display:grid}.log-summary article{border:1px solid var(--line);background:#fff;border-radius:10px;padding:17px}.log-summary span,.log-summary small{color:var(--muted);font-size:9px;display:block}.log-summary b{color:#235fae;margin:7px 0 5px;font-size:24px;display:block}.log-summary .log-risk{background:#fff8f7;border-color:#efc4c1}.log-summary .log-risk b{color:#b33d38}.log-toolbar{justify-content:space-between;gap:14px;margin-bottom:13px;display:flex}.log-toolbar>div,.log-toolbar form{flex-wrap:wrap;gap:6px;display:flex}.log-toolbar button,.log-pagination button{color:#526076;background:#fff;border:1px solid #d9e0ea;border-radius:7px;padding:8px 10px;font-size:9px}.log-toolbar>div button.active{color:#245eae;background:#eaf2ff;border-color:#3973c2;font-weight:700}.log-toolbar input{border:1px solid #d9e0ea;border-radius:7px;min-width:270px;padding:8px 10px;font-size:10px}.log-toolbar form button:first-of-type{color:#fff;background:#2c68ba;border-color:#2c68ba}.log-table{border:1px solid var(--line);background:#fff;border-radius:11px;min-height:220px;position:relative;overflow-x:auto}.log-table table{min-width:1100px}.log-table th{white-space:nowrap}.log-table td{vertical-align:top}.log-table td b,.log-table td small{display:block}.log-table td b{font-size:10px}.log-table td small{color:var(--muted);margin-top:4px;font-size:8px}.log-time{white-space:nowrap;color:#4c5a70;font-size:9px}.log-agent{text-overflow:ellipsis;white-space:nowrap;max-width:260px;overflow:hidden}.log-action{color:#566276;white-space:nowrap;background:#eef1f5;border-radius:99px;padding:5px 8px;font-size:9px;font-weight:700;display:inline-block}.log-action.login{color:#177555;background:#e8f7f1}.log-action.failed{color:#b23b36;background:#ffebe9}.log-failed-row{background:snow}.log-detail summary{color:#2b63ae;cursor:pointer;font-size:9px}.log-detail pre{color:#4c596b;white-space:pre-wrap;word-break:break-all;background:#f5f7fa;border-radius:6px;width:330px;max-height:180px;margin:7px 0 0;padding:9px;font-size:8px;overflow:auto}.log-loading{color:var(--muted);background:#ffffffd1;justify-content:center;align-items:center;gap:9px;font-size:10px;display:flex;position:absolute;inset:42px 0 0}.log-pagination{color:var(--muted);justify-content:space-between;align-items:center;margin-top:12px;font-size:9px;display:flex}.log-pagination div{gap:7px;display:flex}.log-pagination button:disabled{opacity:.45}.ai-evaluation-panel{background:linear-gradient(135deg,#fbfaff,#f4f6ff);border:1px solid #cfc8ed;border-radius:11px;padding:18px}.ai-evaluation-head{justify-content:space-between;align-items:flex-start;gap:18px;display:flex}.ai-evaluation-head>div>span,.ai-review-assistant>div:first-child>span{color:#6d4cb0;letter-spacing:.08em;text-transform:uppercase;font-size:9px;font-weight:800}.ai-evaluation-head h3{margin:5px 0 0}.ai-evaluation-head p{max-width:620px;color:var(--muted);margin:5px 0 0;font-size:10px;line-height:1.55}.ai-action-button,.ai-review-assistant>button{color:#fff;background:#6a4daf;border:1px solid #bcaee5;border-radius:8px;flex:none;padding:9px 12px;font-size:10px;font-weight:700}.ai-action-button:disabled,.ai-review-assistant>button:disabled{opacity:.55;cursor:wait}.ai-evaluation-result{grid-template-columns:145px 1fr;gap:15px;margin-top:15px;display:grid}.ai-score-block{color:#fff;text-align:center;background:#6247a2;border-radius:10px;padding:17px 12px}.ai-score-block strong{font-size:36px;display:block}.ai-score-block span,.ai-score-block small{display:block}.ai-score-block span{margin-top:2px;font-size:9px}.ai-score-block small{color:#dcd4f2;margin-top:8px;font-size:8px;line-height:1.5}.ai-result-copy>b{color:#3f4960;font-size:11px;line-height:1.65;display:block}.ai-result-copy>small{color:var(--muted);margin-top:10px;font-size:8px;display:block}.ai-dimensions{grid-template-columns:repeat(2,1fr);gap:7px;margin-top:11px;display:grid}.ai-dimensions article{background:#fffc;border:1px solid #e2dff0;border-radius:7px;grid-template-columns:1fr auto;gap:4px 8px;padding:9px 10px;display:grid}.ai-dimensions span{color:#596579;font-size:9px}.ai-dimensions strong{color:#6749aa;font-size:11px}.ai-dimensions p{color:var(--muted);grid-column:1/-1;margin:0;font-size:8px;line-height:1.45}.ai-findings{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px;display:grid}.ai-findings>div{background:#fff;border-radius:7px;padding:9px 10px}.ai-findings b{color:#4b5669;font-size:9px}.ai-findings ul,.ai-review-assistant ul{color:#687387;margin:6px 0 0;padding-left:16px;font-size:8px;line-height:1.55}.ai-empty{background:#ffffff8c;border:1px dashed #cfc8e7;border-radius:8px;margin-top:13px;padding:13px}.ai-empty b{font-size:10px}.ai-empty p{color:var(--muted);margin:4px 0 0;font-size:9px}.ai-review-assistant{background:#f8f6ff;border:1px solid #d4ccec;border-radius:9px;grid-template-columns:1fr auto;gap:10px 14px;margin:14px 0;padding:13px;display:grid}.ai-review-assistant>div:first-child b,.ai-review-assistant>div:first-child p{display:block}.ai-review-assistant>div:first-child b{color:#49556b;margin-top:4px;font-size:10px}.ai-review-assistant>div:first-child p{color:var(--muted);margin:4px 0 0;font-size:8px;line-height:1.5}.ai-review-assistant>section{border-top:1px solid #e1dcef;grid-column:1/-1;grid-template-columns:100px 1fr;gap:12px;padding-top:11px;display:grid}.ai-review-assistant>section>div{color:#fff;text-align:center;background:#6a4daf;border-radius:7px;padding:9px}.ai-review-assistant>section>div strong,.ai-review-assistant>section>div span,.ai-review-assistant>section>div small{display:block}.ai-review-assistant>section>div strong{font-size:24px}.ai-review-assistant>section>div span,.ai-review-assistant>section>div small{margin-top:3px;font-size:7px}.ai-review-assistant>section>article b{color:#465268;font-size:9px;line-height:1.5}.ai-review-assistant>section>article p{color:#6749aa;margin:5px 0;font-size:9px;font-weight:700}.ai-review-assistant>section>article>small{color:var(--muted);font-size:8px}.empty{text-align:center;color:#8b96a7;grid-column:1/-1;padding:35px}.empty span{font-size:26px}.empty p{margin:7px 0;font-size:12px}@media (max-width:1100px){.stat-grid{grid-template-columns:repeat(2,1fr)}.two-col{grid-template-columns:1fr}.card-grid,.member-grid,.delay-review-grid,.approval-card-grid,.viewer-grid{grid-template-columns:repeat(2,1fr)}.department-grid,.rollup-chart-grid{grid-template-columns:1fr}.rollup-kpis{grid-template-columns:repeat(2,1fr)}}@media (max-width:760px){.auth-page{grid-template-columns:1fr}.auth-visual{display:none}.auth-panel{padding:35px 22px}.app-shell{display:block}.sidebar{flex-direction:row;width:auto;height:64px;padding:7px;position:fixed;inset:auto 0 0}.brand,.sidebar-foot{display:none}.sidebar nav{flex-direction:row;justify-content:space-around;width:100%}.sidebar nav button{flex-direction:column;gap:1px;padding:5px;font-size:9px}.sidebar nav button i{font-size:16px}.sidebar nav button em{position:absolute}.main{padding:0 14px 88px}.main header{height:72px;margin-bottom:18px}.header-meta{display:none}.hero{padding:22px}.hero button{display:none}.hero h2{font-size:20px}.stat-grid,.card-grid,.member-grid,.review-grid,.two-col,.form-grid{grid-template-columns:1fr}.span-2{grid-column:span 1}.page-title{align-items:flex-end}.objective-period-summary{grid-template-columns:repeat(2,1fr)}.objective-filter-bar{flex-direction:column;align-items:stretch}.objective-filter-bar label{min-width:0}.objective-group-head{flex-direction:column;align-items:flex-start}.objective-group-head dl{grid-template-columns:repeat(4,1fr);width:100%;display:grid}.objective-group-head dl div{min-width:0}.title-actions{flex-direction:column-reverse}.import-heading,.import-summary,.generator-heading{flex-direction:column}.generator-heading .generate-button{width:100%}.preview-list{grid-template-columns:1fr}.rollup-visuals{padding:3px 12px 14px}.rollup-visual-head{flex-direction:column;align-items:stretch}.rollup-visual-head label{min-width:0}.rollup-kpis{grid-template-columns:repeat(2,1fr)}.rollup-kpis article{align-items:flex-start;padding:10px}.rollup-kpis article>i{width:28px;height:28px}.rollup-kpis b{font-size:15px}.rollup-chart-card{padding:11px}.modal-backdrop{padding:0}.detail-modal{border-radius:0;width:100%;height:100vh;max-height:100vh}.detail-body{max-height:calc(100vh - 115px);padding:18px 15px 90px}.detail-head{padding:18px 16px}.comment-form{grid-template-columns:1fr}.comment-form>button{width:100%}.comment-item>div>div{flex-wrap:wrap}.comment-item strong{width:100%;margin-left:0}.evidence-toolbar{flex-direction:column;align-items:flex-start}.evidence-preview,.review-attachments,.review-images{grid-template-columns:repeat(2,1fr)}.delay-review-grid,.approval-card-grid,.viewer-grid,.guide-grid,.department-card{grid-template-columns:1fr}.page-filter{max-width:140px}.guide-version{flex-direction:column;align-items:flex-start;gap:9px}.log-summary{grid-template-columns:repeat(2,1fr)}.log-toolbar{flex-direction:column}.log-toolbar input{width:100%;min-width:0}.log-toolbar form{grid-template-columns:1fr auto auto;display:grid}.sop-schedule-row{grid-template-columns:40px 1fr}.duration-field{grid-column:2}.duration-field>div{width:140px}.nested-sop-picker,.weight-fieldset>div:last-child,.evaluation-metrics,.ai-dimensions,.ai-findings{grid-template-columns:1fr}.ai-evaluation-head{flex-direction:column}.ai-action-button{width:100%}.ai-evaluation-result,.ai-review-assistant{grid-template-columns:1fr}.ai-review-assistant>button{width:100%}.ai-review-assistant>section{grid-template-columns:1fr}.table-wrap{overflow-x:auto}table{min-width:760px}}
