:root{--navy:#0b2545;--navy-2:#143d66;--blue:#1677ff;--blue-soft:#eaf3ff;--bg:#f4f7fb;--card:#fff;--text:#172033;--muted:#6b778c;--border:#e3e9f2;--green:#159b62;--red:#dc3545;--amber:#e49a13;--shadow:0 8px 24px rgba(30,54,84,.07);--radius:14px}*{box-sizing:border-box}html{font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--text);background:var(--bg)}body{margin:0;min-height:100vh;font-size:14px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}.sidebar{position:fixed;inset:0 auto 0 0;width:254px;background:#fff;border-right:1px solid var(--border);z-index:40;display:flex;flex-direction:column}.brand-lockup{height:74px;display:flex;align-items:center;gap:11px;padding:0 22px;border-bottom:1px solid var(--border)}.brand-lockup>span:last-child{display:flex;flex-direction:column}.brand-lockup strong{letter-spacing:1px;font-size:17px;color:var(--navy)}.brand-lockup small{font-size:10px;color:var(--muted);margin-top:2px}.brand-mark{width:40px;height:40px;border-radius:11px;display:inline-grid;place-items:center;background:linear-gradient(145deg,#1976e9,#0d3e75);color:#fff;font-weight:800;font-size:13px;box-shadow:0 6px 14px rgba(24,112,224,.22)}.brand-mark.large{width:64px;height:64px;font-size:20px;border-radius:17px;margin:auto}.sidebar nav{padding:16px 12px;overflow:auto;flex:1}.nav-label{font-size:9px;letter-spacing:1.3px;color:#98a4b6;font-weight:800;margin:18px 10px 8px}.sidebar nav a{display:flex;align-items:center;gap:11px;padding:9px 11px;border-radius:8px;color:#526074;font-size:13px;margin:2px 0;transition:.18s}.sidebar nav a:hover{background:#f4f7fb;color:var(--navy)}.sidebar nav a.active{background:var(--blue-soft);color:#1767cb;font-weight:700}.nav-icon{width:25px;text-align:center;font-size:19px}.nav-badge{width:25px;height:25px;border-radius:7px;display:grid;place-items:center;background:color-mix(in srgb,var(--badge) 13%,white);color:var(--badge);font-size:8px;font-weight:800}.sidebar-user{padding:13px 14px;border-top:1px solid var(--border);display:flex;align-items:center;gap:9px}.sidebar-user>div:nth-child(2){min-width:0;flex:1;display:flex;flex-direction:column}.sidebar-user strong{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user small{font-size:10px;color:var(--muted);margin-top:3px}.avatar{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#dcecff;color:#1466c4;font-weight:800;flex:none}.app-shell{margin-left:254px;min-height:100vh;display:flex;flex-direction:column}.topbar{height:74px;background:#fff;border-bottom:1px solid var(--border);display:flex;align-items:center;padding:0 30px;position:sticky;top:0;z-index:30}.menu-toggle{display:none}.topbar-title{display:flex;flex-direction:column}.topbar-title strong{font-size:15px}.topbar-title small{color:var(--muted);font-size:11px;margin-top:4px}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:14px}.icon-button{border:1px solid var(--border);background:#fff;width:40px;height:40px;border-radius:10px;display:grid;place-items:center;font-size:18px}.notification-button{position:relative}.notification-button span{position:absolute;right:-4px;top:-4px;background:#e23c4c;color:#fff;font-size:9px;min-width:17px;height:17px;border-radius:9px;display:grid;place-items:center;border:2px solid #fff}.user-chip{display:flex;align-items:center;gap:9px}.user-chip>span{display:flex;flex-direction:column;min-width:130px}.user-chip strong{font-size:12px}.user-chip small{font-size:10px;color:var(--muted);margin-top:3px}.user-chip>b{color:#9aa7b8}.content{padding:25px 30px 40px;flex:1;max-width:1600px;width:100%;margin:auto}.app-footer{padding:18px 30px;color:#8490a2;font-size:10px;display:flex;justify-content:space-between;border-top:1px solid var(--border)}.eyebrow{font-size:9px;letter-spacing:1.5px;font-weight:800;color:#4083d2;margin:0 0 9px}.muted{color:var(--muted)}h1,h2,h3,p{margin-top:0}h1{font-size:26px;line-height:1.2;margin-bottom:8px}h2{font-size:18px;margin-bottom:6px}h3{font-size:15px}.welcome-banner{background:linear-gradient(125deg,#0b2d52,#13528e);border-radius:18px;color:#fff;padding:28px 34px;display:flex;align-items:center;overflow:hidden;position:relative;box-shadow:0 10px 28px rgba(8,50,92,.2)}.welcome-banner:after{content:"";position:absolute;width:330px;height:330px;border:1px solid rgba(255,255,255,.1);border-radius:50%;right:-80px;top:-150px;box-shadow:0 0 0 45px rgba(255,255,255,.025),0 0 0 90px rgba(255,255,255,.02)}.welcome-banner>div:first-child{max-width:610px;z-index:1}.welcome-banner .eyebrow{color:#8bc0ff}.welcome-banner h1{font-size:27px}.welcome-banner p:last-child{color:#c7dbef;margin:0;line-height:1.6}.quality-orbit{margin-left:auto;margin-right:45px;width:130px;height:130px;border-radius:50%;background:conic-gradient(#4db5ff 0 76%,rgba(255,255,255,.13) 76%);display:grid;place-items:center;z-index:1}.quality-orbit:before{content:"";position:absolute;width:105px;height:105px;border-radius:50%;background:#114679}.quality-orbit div{z-index:1;text-align:center;display:flex;flex-direction:column}.quality-orbit strong{font-size:29px}.quality-orbit strong small{font-size:13px}.quality-orbit span{font-size:9px;color:#bcd9f3}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:18px 0 28px}.stat-card{background:#fff;border:1px solid var(--border);border-radius:12px;padding:17px 18px;display:flex;gap:13px;align-items:center;box-shadow:0 3px 12px rgba(39,62,89,.035)}.stat-icon{width:42px;height:42px;border-radius:10px;display:grid;place-items:center;font-size:20px}.stat-card.blue .stat-icon{background:#e8f2ff;color:#2877db}.stat-card.amber .stat-icon{background:#fff4df;color:#d58b09}.stat-card.green .stat-icon{background:#e7f8ef;color:#159b62}.stat-card.red .stat-icon{background:#ffebed;color:#dd3e4d}.stat-card>div{display:grid;grid-template-columns:auto 1fr;align-items:end;flex:1}.stat-card p{grid-column:1/-1;color:#607087;font-size:11px;margin-bottom:4px}.stat-card strong{font-size:24px}.stat-card small{font-size:9px;color:#9aa6b7;text-align:right;margin-bottom:3px}.section-heading,.panel-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:15px}.section-heading h2,.panel-heading h2{margin:0}.section-heading>span{font-size:11px}.module-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.module-card{background:#fff;border:1px solid var(--border);border-radius:13px;padding:18px;display:flex;flex-direction:column;transition:.2s;min-height:180px}.module-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--module) 30%,white)}.module-card-top{display:flex;justify-content:space-between;align-items:center}.module-icon,.activity-icon{width:39px;height:39px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,var(--module) 12%,white);color:var(--module);font-size:10px;font-weight:900}.module-count{font-size:9px;color:#8b98a9;background:#f6f8fb;padding:5px 8px;border-radius:10px}.module-card h3{margin:14px 0 6px}.module-card p{color:#6e7a8d;font-size:11px;line-height:1.5;flex:1}.module-link{font-size:10px;color:var(--module);font-weight:700}.module-link b{margin-left:4px}.dashboard-columns{display:grid;grid-template-columns:1.35fr 1fr;gap:16px;margin-top:28px}.panel{background:#fff;border:1px solid var(--border);border-radius:var(--radius);padding:20px;box-shadow:0 3px 12px rgba(39,62,89,.025)}.panel-heading a{font-size:10px;color:#2174d4;font-weight:700}.activity-list a,.action-list a{display:flex;align-items:center;gap:11px;padding:11px 0;border-top:1px solid #edf1f6}.activity-list a:first-child,.action-list a:first-child{border-top:0}.activity-list a>div,.action-list a>div{min-width:0;flex:1;display:flex;flex-direction:column}.activity-list strong,.action-list strong{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.activity-list small,.action-list small{font-size:9px;color:var(--muted);margin-top:4px}.status{display:inline-flex;align-items:center;padding:5px 8px;border-radius:10px;font-size:9px;font-weight:700;white-space:nowrap;background:#eef2f7;color:#617087}.status.draft{background:#f0f2f5;color:#6e7783}.status.submitted{background:#eaf3ff;color:#2472ce}.status.review{background:#fff4d9;color:#ac7100}.status.approved,.status.established,.status.completed{background:#e4f7ed;color:#128354}.status.rejected{background:#ffeaec;color:#c42c3b}.status.archived{background:#edf0f4;color:#535f70}.priority-dot{width:9px;height:9px;border-radius:50%;background:#e5a114}.priority-dot.overdue{background:#dc3545}.empty-mini{padding:25px;text-align:center;color:var(--muted);font-size:11px}.success-empty{color:var(--green)}.page-title{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:22px;gap:20px}.page-title.compact{margin-bottom:20px}.page-title h1{margin-bottom:7px}.page-title p:not(.eyebrow):not(.breadcrumbs){color:var(--muted);font-size:12px;margin-bottom:0}.breadcrumbs{font-size:10px;color:#8c98aa;margin-bottom:9px}.breadcrumbs a{color:#2b78ce}.title-with-icon{display:flex;gap:15px}.page-module-icon{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;flex:none;background:color-mix(in srgb,var(--module) 12%,white);color:var(--module);font-size:11px;font-weight:900}.button{border:0;border-radius:8px;padding:10px 15px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:700;font-size:11px;line-height:1.2}.button.primary{background:#176fd1;color:#fff;box-shadow:0 4px 10px rgba(23,111,209,.18)}.button.secondary{background:#fff;color:#47556a;border:1px solid #d9e0e9}.button.ghost{background:#f3f6fa;color:#5d6a7b}.button.success{background:#159b62;color:#fff}.button.danger{background:#d83e4d;color:#fff}.button.danger-outline{border:1px solid #efbac0;background:#fff;color:#c92e3d}.button.full{width:100%}.mini-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:16px}.mini-stats a{background:#fff;border:1px solid var(--border);border-radius:10px;padding:13px 16px;display:flex;justify-content:space-between;align-items:center}.mini-stats a.selected{border-color:#73a9e7;background:#f5f9ff}.mini-stats span{font-size:10px;color:var(--muted)}.mini-stats strong{font-size:19px}.toolbar{display:flex;align-items:center;gap:9px;margin-bottom:16px}.toolbar select{max-width:180px}.search-field{position:relative;flex:1}.search-field span{position:absolute;left:12px;top:10px;color:#8995a6}.search-field input{padding-left:34px}label{display:flex;flex-direction:column;gap:7px;color:#465268;font-size:11px;font-weight:600}label em{color:#e04553;font-style:normal}input,select,textarea{width:100%;border:1px solid #d9e1ec;background:#fff;border-radius:8px;padding:10px 11px;color:#263246;outline:none;transition:.15s}input:focus,select:focus,textarea:focus{border-color:#599be5;box-shadow:0 0 0 3px rgba(49,132,226,.09)}textarea{resize:vertical;line-height:1.5}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:750px}th{text-align:left;color:#8290a3;font-size:9px;letter-spacing:.5px;text-transform:uppercase;padding:11px 10px;border-bottom:1px solid var(--border);background:#fafbfd}td{padding:12px 10px;border-bottom:1px solid #edf1f5;color:#4a576a;font-size:11px}tbody tr:hover{background:#fbfcfe}.record-title{display:flex;flex-direction:column}.record-title strong{color:#263246;font-size:11px}.record-title small{color:#8794a6;margin-top:4px;font-size:9px}.table-action{font-weight:900;letter-spacing:1px}.empty-table{text-align:center;padding:45px;color:var(--muted)}.empty-table>span{font-size:30px;display:block}.empty-table strong{display:block;color:#4c596b;margin:8px}.empty-table p{font-size:10px}.form-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:17px;align-items:start}.form-main{display:flex;flex-direction:column;gap:15px}.form-section-heading{display:flex;align-items:center;gap:12px;padding-bottom:15px;margin-bottom:18px;border-bottom:1px solid var(--border)}.form-section-heading>span{width:30px;height:30px;border-radius:8px;background:#e9f3ff;color:#1971cf;display:grid;place-items:center;font-weight:800}.form-section-heading h2{margin:0 0 3px}.form-section-heading p{font-size:10px;color:var(--muted);margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.span-2{grid-column:1/-1}.form-side{position:sticky;top:92px;display:flex;flex-direction:column;gap:14px}.form-side .panel,.admin-form{display:flex;flex-direction:column;gap:13px}.form-side h3{margin:0 0 3px}.form-actions{display:flex;flex-direction:column;gap:8px}.save-note{font-size:9px;text-align:center;color:var(--muted);line-height:1.5}.upload-box{border:1.5px dashed #cbd7e5;border-radius:11px;padding:25px;text-align:center;align-items:center;background:#fafcff;cursor:pointer}.upload-box input{display:none}.upload-box>span{font-size:24px;color:#397ed0}.upload-box strong{color:#445166}.upload-box small{color:#8b98aa;font-weight:400}.risk-hint{background:#fff7df;color:#8b6617;border-radius:8px;padding:11px;font-size:10px;margin-top:15px;display:flex;gap:9px}.risk-hint span{width:18px;height:18px;border-radius:50%;background:#e3a61a;color:#fff;display:grid;place-items:center;flex:none}.title-status{display:flex;align-items:center;gap:12px}.title-status h1{margin-bottom:0}.title-actions{display:flex;gap:8px}.detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:17px;align-items:start}.detail-main{display:flex;flex-direction:column;gap:15px}.detail-side{display:flex;flex-direction:column;gap:15px;position:sticky;top:92px}.detail-header{display:flex;align-items:center;gap:12px;padding-bottom:18px;border-bottom:1px solid var(--border)}.detail-header>div:nth-child(2){display:flex;flex-direction:column}.detail-header .eyebrow{margin-bottom:4px}.risk-score{margin-left:auto;display:grid;grid-template-columns:auto auto;column-gap:8px;align-items:center;border-radius:9px;padding:8px 12px}.risk-score small,.risk-score span{font-size:8px}.risk-score strong{font-size:21px;grid-row:1/3;grid-column:2}.risk-score.red{background:#ffe7e9;color:#b9202f}.risk-score.orange{background:#fff0df;color:#bc6500}.risk-score.yellow{background:#fff7d9;color:#967100}.risk-score.green{background:#e5f7ed;color:#14794e}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;padding:20px 0}.detail-grid div,.description-block{display:flex;flex-direction:column;gap:5px}.detail-grid small,.description-block small{color:#8b97a8;font-size:9px;text-transform:uppercase;letter-spacing:.5px}.detail-grid strong{font-size:11px}.description-block{padding-top:16px;border-top:1px solid var(--border)}.description-block p{line-height:1.65;color:#505d70;font-size:12px;margin:0}.metadata-list{display:grid;grid-template-columns:1fr 1fr;margin:0 0 20px}.metadata-list div{padding:13px;border-bottom:1px solid var(--border)}.metadata-list dt{font-size:9px;color:#8895a7;margin-bottom:6px}.metadata-list dd{margin:0;font-size:11px;line-height:1.5}.file-list a{display:flex;align-items:center;gap:10px;padding:11px;border:1px solid var(--border);border-radius:9px;margin-top:8px}.file-icon{width:37px;height:37px;border-radius:8px;background:#eaf3ff;color:#276fc4;display:grid;place-items:center;font-size:8px;font-weight:800}.file-list a div{display:flex;flex-direction:column;flex:1}.file-list strong{font-size:10px}.file-list small{font-size:8px;color:var(--muted);margin-top:4px}.workflow-card h2,.timeline-card h2{margin-bottom:17px}.workflow-progress{display:flex;justify-content:space-between;margin:8px 0 20px;position:relative}.workflow-progress:before{content:"";position:absolute;height:2px;background:#e1e7ef;left:16px;right:16px;top:12px}.workflow-progress div{z-index:1;text-align:center;width:20%}.workflow-progress span{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;margin:auto;background:#eef1f5;color:#8792a3;font-size:9px;border:3px solid #fff}.workflow-progress small{display:block;font-size:7px;color:#8c98aa;margin-top:5px}.workflow-progress .done span{background:#1b7bdc;color:#fff}.workflow-progress .done small{color:#3679c3;font-weight:700}.workflow-form{display:flex;flex-direction:column;gap:7px;margin-top:8px}.workflow-form input{font-size:10px}.button-row{display:grid;grid-template-columns:1fr 1fr;gap:7px}.timeline>div{display:flex;gap:10px;position:relative;padding-bottom:17px}.timeline>div>span{width:9px;height:9px;background:#5a9be3;border-radius:50%;margin-top:3px;z-index:1;flex:none}.timeline>div:after{content:"";position:absolute;width:1px;background:#dce4ee;left:4px;top:11px;bottom:-2px}.timeline>div:last-child:after{display:none}.timeline p{font-size:10px;line-height:1.5;margin:0}.timeline small{display:block;color:var(--muted);font-size:8px;margin-top:3px}.admin-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start}.admin-form{position:sticky;top:92px}.user-cell{display:flex;align-items:center;gap:8px}.user-cell>div{display:flex;flex-direction:column}.user-cell small{font-size:8px;color:var(--muted);margin-top:3px}.module-table-cell{display:flex;align-items:center;gap:8px}.module-table-cell span{width:29px;height:29px;border-radius:7px;display:grid;place-items:center;background:color-mix(in srgb,var(--module) 12%,white);color:var(--module);font-size:7px;font-weight:900}.report-chart{margin-bottom:16px}.bar-chart{height:230px;display:flex;align-items:flex-end;gap:14px;padding:25px 10px 0;border-bottom:1px solid var(--border)}.bar-chart>div{height:100%;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:8px}.bar-chart span{width:min(34px,80%);background:linear-gradient(#4298ec,#1768bb);border-radius:6px 6px 0 0;position:relative;min-height:8px}.bar-chart b{position:absolute;top:-17px;width:100%;text-align:center;font-size:9px}.bar-chart small{font-size:8px;color:var(--muted);white-space:nowrap}.profile-layout{display:grid;grid-template-columns:300px minmax(0,600px);gap:17px}.profile-summary{text-align:center}.profile-avatar{width:86px;height:86px;border-radius:50%;display:grid;place-items:center;background:#dcecff;color:#1769c3;font-size:28px;font-weight:800;margin:8px auto 14px}.profile-summary>p{color:var(--muted)}.profile-summary dl{text-align:left;margin-top:22px}.profile-summary dl div{padding:12px 0;border-top:1px solid var(--border);display:flex;justify-content:space-between}.profile-summary dt{color:var(--muted);font-size:10px}.profile-summary dd{margin:0;font-weight:700;font-size:10px}.notification-list a{display:flex;gap:14px;align-items:center;padding:16px;border-bottom:1px solid var(--border)}.notification-list a>span{width:40px;height:40px;border-radius:10px;background:#eaf3ff;color:#2476d4;display:grid;place-items:center;font-size:18px}.notification-list a>div{flex:1}.notification-list p{font-size:11px;color:var(--muted);margin:4px 0}.notification-list small{font-size:8px;color:#98a4b4}.alert{padding:12px 15px;border-radius:9px;margin-bottom:15px;font-size:11px}.alert.success{background:#e5f7ed;color:#137b4e;border:1px solid #bde9d1}.alert.danger{background:#ffeaec;color:#b82937;border:1px solid #f5c6cb}.setup-page{display:grid;place-items:center;background:linear-gradient(145deg,#eaf3ff,#f6f9fd);padding:25px}.setup-card{width:min(460px,100%);background:#fff;border:1px solid var(--border);border-radius:18px;padding:35px;text-align:center;box-shadow:var(--shadow)}.setup-card h1{margin:14px 0 8px}.check-list{text-align:left;margin:22px 0;display:flex;flex-direction:column;gap:10px;background:#f7f9fc;padding:15px;border-radius:10px}.check{color:var(--green);font-weight:900;margin-right:8px}.credential-box{display:grid;grid-template-columns:1fr 1fr;text-align:left;padding:15px;background:#f6f9fc;border-radius:10px;gap:8px;margin:15px 0}.credential-box span{color:var(--muted)}.danger-text{color:var(--red);font-size:10px}.login-page{background:#fff}.login-shell{min-height:100vh;display:grid;grid-template-columns:1.15fr .85fr}.login-visual{background:linear-gradient(140deg,rgba(5,39,73,.92),rgba(15,84,145,.88)),radial-gradient(circle at 20% 20%,#2a8de7,#082747);color:#fff;padding:55px;position:relative;overflow:hidden}.login-visual:before,.login-visual:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.08);border-radius:50%}.login-visual:before{width:600px;height:600px;right:-280px;bottom:-250px;box-shadow:0 0 0 70px rgba(255,255,255,.02),0 0 0 140px rgba(255,255,255,.015)}.login-visual:after{width:260px;height:260px;left:-150px;top:180px}.visual-content{height:100%;display:flex;flex-direction:column;position:relative;z-index:1}.brand-lockup.light{border:0;padding:0;height:auto}.brand-lockup.light strong,.brand-lockup.light small{color:#fff}.brand-lockup.light small{color:#a9c5df}.visual-copy{margin:auto 0;max-width:570px}.visual-copy .eyebrow{color:#78b9f3}.visual-copy h1{font-size:46px;letter-spacing:-1px;margin-bottom:18px}.visual-copy>p:last-child{color:#c4d8e9;line-height:1.8;font-size:15px}.pdsa-flow{display:flex;align-items:center;margin-bottom:20px}.pdsa-flow span{display:flex;align-items:center;gap:8px;font-size:10px;color:#c2d7e9}.pdsa-flow b{width:31px;height:31px;border-radius:50%;background:rgba(255,255,255,.12);display:grid;place-items:center;color:#fff}.pdsa-flow i{height:1px;background:rgba(255,255,255,.25);width:35px;margin:0 7px}.login-panel{display:flex;flex-direction:column;padding:45px 9%;background:#fff}.mobile-brand{display:none}.login-form{width:min(390px,100%);margin:auto}.login-form h2{font-size:27px;margin-bottom:9px}.login-form>.muted{margin-bottom:28px}.login-form form{display:flex;flex-direction:column;gap:18px}.password-wrap{position:relative}.password-wrap input{padding-right:45px}.peek{position:absolute;right:7px;top:5px;border:0;background:transparent;padding:7px}.large-button{padding:13px;margin-top:3px;justify-content:space-between}.login-help{text-align:center;font-size:10px;color:var(--muted);margin-top:20px}.login-help a{color:#2174d4;font-weight:700}.login-panel footer{text-align:center;font-size:9px;color:#9ca6b5}.sidebar-overlay{display:none}
@media(max-width:1100px){.module-grid{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:repeat(2,1fr)}.detail-layout{grid-template-columns:1fr}.detail-side,.form-side,.admin-form{position:static}.detail-side{display:grid;grid-template-columns:1fr 1fr}.form-layout{grid-template-columns:1fr}.admin-layout{grid-template-columns:1fr}.login-visual{padding:40px}.visual-copy h1{font-size:38px}}
@media(max-width:780px){.sidebar{transform:translateX(-100%);transition:.2s}.sidebar.open{transform:translateX(0)}.sidebar-overlay.open{display:block;position:fixed;inset:0;background:rgba(7,24,43,.45);z-index:35}.app-shell{margin-left:0}.menu-toggle{display:grid}.topbar{padding:0 15px}.topbar-title{display:none}.user-chip>span,.user-chip>b{display:none}.content{padding:17px 14px 30px}.welcome-banner{padding:23px}.quality-orbit{display:none}.stats-grid{grid-template-columns:1fr 1fr}.module-grid{grid-template-columns:1fr 1fr}.dashboard-columns{grid-template-columns:1fr}.mini-stats{grid-template-columns:repeat(2,1fr)}.toolbar{flex-wrap:wrap}.search-field{flex-basis:100%}.toolbar select{flex:1;max-width:none}.detail-side{display:flex}.login-shell{display:block}.login-visual{display:none}.login-panel{min-height:100vh;padding:30px 25px}.mobile-brand{display:flex;align-items:center;gap:10px;color:var(--navy)}.login-form{margin:auto}.form-grid{grid-template-columns:1fr}.span-2{grid-column:auto}.profile-layout{grid-template-columns:1fr}.app-footer span:last-child{display:none}}
@media(max-width:520px){.stats-grid,.module-grid{grid-template-columns:1fr}.stat-card{padding:14px}.page-title{flex-direction:column}.page-title>.button{width:100%}.detail-grid,.metadata-list{grid-template-columns:1fr}.mini-stats{grid-template-columns:1fr 1fr}.title-actions{width:100%}.title-actions .button{flex:1}.topbar-actions{gap:8px}.panel{padding:15px}.welcome-banner h1{font-size:22px}.welcome-banner p:last-child{font-size:11px}.app-footer{padding:15px}.pdsa-flow{display:none}}
@media print{.sidebar,.topbar,.app-footer,.title-actions,.detail-side,.button,.toolbar{display:none!important}.app-shell{margin:0}.content{padding:0}.panel{box-shadow:none;break-inside:avoid}.page-title{margin-top:0}}
.infection-icon{--module:#0f8f7a}.process-strip{display:flex;align-items:center;background:linear-gradient(110deg,#073f56,#087968);color:#fff;border-radius:14px;padding:16px 22px;margin-bottom:17px;box-shadow:0 7px 20px rgba(6,93,88,.15)}.process-strip>div{display:flex;align-items:center;gap:10px;flex:1}.process-strip>div>span{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.2);font-weight:800}.process-strip p{margin:0;display:flex;flex-direction:column}.process-strip strong{font-size:11px}.process-strip small{font-size:9px;color:#bde1dc;margin-top:3px}.process-strip>i{font-style:normal;color:#70c5b8;margin:0 14px}.infection-stats{margin-top:0}.infection-status{display:inline-flex;align-items:center;padding:5px 8px;border-radius:10px;font-size:9px;font-weight:700;white-space:nowrap}.infection-status.monitoring{background:#e8f3ff;color:#216fbf}.infection-status.suspected{background:#fff0d4;color:#9a6500}.infection-status.confirmed{background:#ffe7ea;color:#b52636}.infection-status.not_infection{background:#e3f7ed;color:#128151}.infection-status.closed{background:#edf0f4;color:#596577}.procedure-note{background:linear-gradient(145deg,#f4fbfa,#fff);border-color:#cae9e3}.procedure-note p:last-child{font-size:10px;color:var(--muted);line-height:1.6;margin:0}.patient-summary{margin-bottom:15px}.patient-id{display:flex;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid var(--border)}.patient-id>span{width:47px;height:47px;border-radius:12px;background:#dff5ef;color:#087963;display:grid;place-items:center;font-size:18px;font-weight:800}.patient-id>div{display:flex;flex-direction:column}.patient-id .eyebrow{margin-bottom:3px}.patient-id small{font-size:9px;color:var(--muted);margin-top:4px}.patient-summary dl{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin:17px 0}.patient-summary dl div{display:flex;flex-direction:column;gap:5px}.patient-summary dt{font-size:8px;text-transform:uppercase;letter-spacing:.5px;color:#8996a8}.patient-summary dd{margin:0;font-size:11px;font-weight:700}.diagnosis-line{border-top:1px solid var(--border);padding-top:13px}.diagnosis-line small{font-size:8px;text-transform:uppercase;letter-spacing:.5px;color:#8996a8}.diagnosis-line p{font-size:11px;color:#4d5a6c;line-height:1.5;margin:5px 0 0}.infection-workflow-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:11px;margin-bottom:22px;position:sticky;top:89px;z-index:15}.infection-workflow-tabs a{display:flex;gap:10px;align-items:center;background:#fff;border:1px solid var(--border);border-radius:11px;padding:12px 14px;box-shadow:0 4px 12px rgba(28,53,78,.04)}.infection-workflow-tabs a>span{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#e7f5f2;color:#087b67;font-weight:800}.infection-workflow-tabs a>div{display:flex;flex-direction:column}.infection-workflow-tabs strong{font-size:10px}.infection-workflow-tabs small{font-size:8px;color:var(--muted);margin-top:3px}.infection-workflow-tabs a.complete{border-color:#a8ddce}.infection-workflow-tabs a.complete>span{background:#159b62;color:#fff}.infection-section{scroll-margin-top:160px;margin-bottom:28px}.infection-two-column{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(280px,.7fr);gap:15px;align-items:start}.compact-form{display:flex;flex-direction:column;gap:11px;position:sticky;top:157px}.compact-form h3{padding-bottom:11px;border-bottom:1px solid var(--border);margin:0 0 2px}.table-sub{display:block;color:var(--muted);font-size:8px;margin-top:4px}.bundle-fieldset{border:1px solid var(--border);border-radius:9px;padding:10px;display:flex;flex-direction:column;gap:8px}.bundle-fieldset legend{font-size:9px;color:#647287;padding:0 5px;font-weight:700}.check-label{flex-direction:row;align-items:flex-start;gap:8px;font-weight:500}.check-label input{width:15px;height:15px;flex:none;margin:1px 0 0;accent-color:#11856f}.check-label>span{display:flex;flex-direction:column;gap:2px}.check-label small{font-size:8px;color:var(--muted)}.suspect-check{padding:10px;border:1px solid #f0d3a1;background:#fff8e8;border-radius:8px;color:#7d5b16}.surveillance-cards{display:flex;flex-direction:column;gap:11px}.surveillance-card{border:1px solid var(--border);border-radius:10px;padding:14px}.surveillance-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.surveillance-head>div{display:flex;flex-direction:column}.surveillance-head strong{font-size:11px}.surveillance-head small{font-size:8px;color:var(--muted);margin-top:4px}.surveillance-head>span{font-size:8px;font-weight:700;padding:5px 8px;border-radius:10px}.surveillance-head .suspect{background:#ffe7ea;color:#b72b39}.surveillance-head .clear{background:#e5f7ed;color:#147e50}.bundle-meter{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;margin:13px 0 9px}.bundle-meter>div{height:6px;border-radius:4px;background:#e9edf2;overflow:hidden}.bundle-meter>div span{display:block;height:100%;background:linear-gradient(90deg,#14a17a,#38bd8f);border-radius:4px}.bundle-meter strong{font-size:10px}.bundle-meter small{grid-column:1/-1;font-size:8px;color:var(--muted);margin-top:-4px}.bundle-checks{display:flex;flex-wrap:wrap;gap:5px}.bundle-checks span{font-size:8px;padding:4px 6px;border-radius:6px}.bundle-checks .yes{background:#e7f7ee;color:#147e50}.bundle-checks .no{background:#f1f3f6;color:#9ba4b2;text-decoration:line-through}.surveillance-card>p{border-top:1px solid var(--border);padding-top:10px;margin:11px 0 0;font-size:9px;color:#586578;line-height:1.6}.determination-layout{grid-template-columns:minmax(0,1fr) minmax(320px,.7fr)}.determination-summary{text-align:center;min-height:330px}.determination-seal{width:70px;height:70px;border-radius:50%;display:grid;place-items:center;margin:7px auto 15px;font-size:27px;font-weight:900}.determination-seal.confirmed{background:#ffe5e8;color:#bb2636;border:5px solid #fff2f3;box-shadow:0 0 0 1px #f1b6bd}.determination-seal.not_infection{background:#dff5e9;color:#148154;border:5px solid #f0faf5;box-shadow:0 0 0 1px #abdcc4}.determination-summary>p:not(.eyebrow){color:var(--muted)}.determination-summary dl{display:grid;grid-template-columns:1fr 1fr;text-align:left;margin:20px 0}.determination-summary dl div{padding:11px;border-top:1px solid var(--border)}.determination-summary dt{font-size:8px;color:var(--muted);margin-bottom:5px}.determination-summary dd{margin:0;font-size:10px;font-weight:700}.determination-summary .diagnosis-line{text-align:left}.authority-note strong{color:#755b19}.authority-note p{font-size:10px;color:var(--muted);line-height:1.6;margin:8px 0 0}
@media(max-width:1050px){.patient-summary dl{grid-template-columns:repeat(3,1fr)}.infection-two-column,.determination-layout{grid-template-columns:1fr}.compact-form{position:static}}
@media(max-width:700px){.process-strip{display:block}.process-strip>div{margin:8px 0}.process-strip>i{display:none}.infection-workflow-tabs{position:static;grid-template-columns:1fr}.patient-summary dl{grid-template-columns:1fr 1fr}.infection-form{display:block}.infection-form .form-side{margin-top:15px}}
.patient-safety-icon{--module:#d14a5a}.patient-process{background:linear-gradient(110deg,#173b66,#7b3047)}.patient-note{background:linear-gradient(145deg,#f5f9ff,#fff);border-color:#cfdeef}.risk-band{display:inline-flex;align-items:center;padding:5px 9px;border-radius:11px;font-size:9px;font-weight:800;text-transform:capitalize;white-space:nowrap}.risk-band.blue{background:#dceeff;color:#1668b5}.risk-band.green{background:#dff5e9;color:#167c52}.risk-band.yellow{background:#fff2c8;color:#927000}.risk-band.red{background:#ffe2e5;color:#b62636}.incident-status{display:inline-flex;align-items:center;padding:5px 8px;border-radius:10px;font-size:9px;font-weight:700;white-space:nowrap}.incident-status.reported{background:#e8f2ff;color:#226fc3}.incident-status.unit_investigation,.incident-status.tkprs_review{background:#fff3d6;color:#9a6800}.incident-status.rca{background:#ffe4e7;color:#b82b3b}.incident-status.ready_ministry{background:#eee8ff;color:#6c48b8}.incident-status.reported_ministry,.incident-status.closed{background:#e2f7eb;color:#138151}.incident-summary{margin-bottom:15px}.incident-summary-head{display:flex;align-items:center;justify-content:space-between;padding-bottom:16px;border-bottom:1px solid var(--border)}.incident-number{display:flex;align-items:center;gap:12px}.incident-number>span{width:48px;height:48px;border-radius:12px;background:#ffe9ec;color:#bc2e3d;display:grid;place-items:center;font-size:11px;font-weight:900}.incident-number>div{display:flex;flex-direction:column}.incident-number .eyebrow{margin-bottom:3px}.incident-number small{font-size:9px;color:var(--muted);margin-top:4px}.large-risk-band{min-width:130px;border-radius:11px;padding:10px 13px;display:grid;grid-template-columns:1fr auto;text-align:left}.large-risk-band small{grid-column:1/-1;font-size:7px;font-weight:800;letter-spacing:.5px}.large-risk-band strong{font-size:18px}.large-risk-band span{font-size:8px;align-self:center}.large-risk-band.blue{background:#dceeff;color:#1668b5}.large-risk-band.green{background:#dff5e9;color:#167c52}.large-risk-band.yellow{background:#fff2c8;color:#927000}.large-risk-band.red{background:#ffe2e5;color:#b62636}.large-risk-band.ungraded{background:#edf0f4;color:#667284}.incident-summary dl{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;margin:17px 0}.incident-summary dl div{display:flex;flex-direction:column;gap:5px}.incident-summary dt{font-size:8px;text-transform:uppercase;color:#8996a8}.incident-summary dd{margin:0;font-size:10px;font-weight:700}.incident-narrative{display:grid;grid-template-columns:1.4fr 1fr;gap:15px;border-top:1px solid var(--border);padding-top:15px}.incident-narrative small,.investigation-grid small{font-size:8px;text-transform:uppercase;letter-spacing:.4px;color:#8794a5}.incident-narrative p,.investigation-grid p{font-size:10px;line-height:1.6;color:#4f5c6e;margin:6px 0 0}.incident-workflow{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:25px}.incident-workflow>div{background:#fff;border:1px solid var(--border);border-radius:11px;padding:12px;display:flex;align-items:center;gap:9px}.incident-workflow>div>span{width:28px;height:28px;border-radius:50%;background:#eef1f5;color:#8490a1;display:grid;place-items:center;font-size:9px;font-weight:800;flex:none}.incident-workflow>div.complete{border-color:#b9dfcf}.incident-workflow>div.complete>span{background:#159b62;color:#fff}.incident-workflow p{display:flex;flex-direction:column;margin:0}.incident-workflow strong{font-size:9px}.incident-workflow small{font-size:7px;color:var(--muted);margin-top:3px}.incident-stage{margin-bottom:28px;scroll-margin-top:90px}.stage-locked{display:flex;align-items:center;gap:13px;color:#657286}.stage-locked>span{width:40px;height:40px;border-radius:10px;background:#f0f3f7;display:grid;place-items:center;font-size:17px}.stage-locked p{font-size:10px;margin:5px 0 0}.investigation-form{display:flex;flex-direction:column;gap:18px}.risk-calculator{display:grid;grid-template-columns:1fr 190px auto 190px 150px;gap:12px;align-items:end;background:#f8fafc;border:1px solid var(--border);border-radius:11px;padding:15px}.risk-calculator h3{margin:0}.multiply{font-size:20px;color:#8390a2;margin-bottom:8px}.live-risk-band{border-radius:9px;padding:8px 11px;display:grid;grid-template-columns:1fr auto;min-height:54px}.live-risk-band small{font-size:7px;grid-column:1/-1}.live-risk-band strong{font-size:15px}.live-risk-band span{font-size:8px;align-self:center}.live-risk-band.blue{background:#dceeff;color:#1668b5}.live-risk-band.green{background:#dff5e9;color:#167c52}.live-risk-band.yellow{background:#fff2c8;color:#927000}.live-risk-band.red{background:#ffe2e5;color:#b62636}.risk-guidance{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.risk-guidance small{font-size:9px;color:var(--muted);margin-left:5px}.investigation-result{padding:0;overflow:hidden}.investigation-meta{display:grid;grid-template-columns:repeat(4,1fr);background:#f8fafc;border-bottom:1px solid var(--border)}.investigation-meta>div{padding:13px;display:flex;flex-direction:column;gap:5px;border-right:1px solid var(--border)}.investigation-meta small{font-size:8px;color:#8794a5}.investigation-meta strong{font-size:10px}.investigation-grid{display:grid;grid-template-columns:1fr 1fr;padding:8px 15px 15px}.investigation-grid>div{padding:12px;border-bottom:1px solid var(--border)}.five-whys{margin:0 20px 20px;background:#fff9eb;border:1px solid #f1dfaa;border-radius:9px;padding:14px}.five-whys>div{display:flex;gap:10px;align-items:flex-start;padding:7px 0;border-top:1px solid #f3e5bc}.five-whys>div>span{width:20px;height:20px;border-radius:50%;background:#e5aa24;color:#fff;display:grid;place-items:center;font-size:8px;flex:none}.five-whys p{font-size:9px;margin:2px 0;line-height:1.5}.rca-stage{border-left:3px solid #dc4050;padding-left:17px}.rca-required{background:#ffe3e6;color:#b72635;padding:6px 9px;border-radius:10px;font-size:8px;font-weight:800;text-transform:uppercase}.ministry-not-required{display:flex;align-items:center;gap:12px}.ministry-not-required>span{width:34px;height:34px;border-radius:50%;background:#e7f1fc;color:#2472c8;display:grid;place-items:center}.ministry-not-required p{font-size:10px;color:var(--muted);margin:4px 0 0}.ministry-layout{grid-template-columns:1fr 360px}.ministry-summary{text-align:center;min-height:310px}.ministry-seal{width:65px;height:65px;border-radius:50%;display:grid;place-items:center;margin:5px auto 14px;background:#eee8ff;color:#704bbb;font-size:24px;font-weight:900}.ministry-seal.reported{background:#e0f5e9;color:#158354}.ministry-summary dl{display:grid;grid-template-columns:1fr 1fr;text-align:left;margin:20px 0}.ministry-summary dl div{padding:11px;border-top:1px solid var(--border)}.ministry-summary dt{font-size:8px;color:var(--muted)}.ministry-summary dd{margin:5px 0 0;font-size:10px;font-weight:700}.ministry-summary>p:last-child{font-size:10px;color:var(--muted)}
@media(max-width:1100px){.risk-calculator{grid-template-columns:1fr 1fr}.risk-calculator>div:first-child,.live-risk-band{grid-column:1/-1}.multiply{display:none}.incident-summary dl{grid-template-columns:repeat(3,1fr)}.ministry-layout{grid-template-columns:1fr}}
@media(max-width:760px){.incident-workflow{grid-template-columns:1fr 1fr}.incident-narrative{grid-template-columns:1fr}.investigation-meta{grid-template-columns:1fr 1fr}.patient-process{display:block}.patient-process>div{margin:8px 0}.incident-summary-head{align-items:flex-start;gap:12px}.incident-summary dl{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.risk-calculator,.investigation-grid{grid-template-columns:1fr}.risk-calculator>div:first-child,.live-risk-band{grid-column:auto}.incident-workflow{grid-template-columns:1fr}.investigation-meta{grid-template-columns:1fr}.incident-summary-head{display:block}.large-risk-band{margin-top:13px}.incident-summary dl{grid-template-columns:1fr}}
.indicator-page-title{align-items:center}.year-filter label{flex-direction:row;align-items:center;gap:8px}.year-filter select{width:95px;padding:8px}.indicator-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:16px}.indicator-kpi{background:#fff;border:1px solid var(--border);border-radius:12px;padding:15px;display:flex;align-items:center;gap:12px;position:relative;overflow:hidden}.indicator-kpi:after{content:"";position:absolute;width:70px;height:70px;border-radius:50%;right:-28px;bottom:-32px;background:currentColor;opacity:.06}.indicator-kpi>span{width:42px;height:42px;border-radius:9px;display:grid;place-items:center;font-size:18px;font-weight:800;flex:none}.indicator-kpi>div{display:flex;flex-direction:column}.indicator-kpi small{font-size:9px;color:#6d7a8c}.indicator-kpi strong{font-size:20px;margin-top:3px;color:#263348}.indicator-kpi p{font-size:8px;color:#98a4b4;margin:3px 0 0}.indicator-kpi.orange{color:#db8b13}.indicator-kpi.orange>span{background:#fff0da}.indicator-kpi.cyan{color:#0b95b5}.indicator-kpi.cyan>span{background:#dff6fb}.indicator-kpi.green{color:#159b62}.indicator-kpi.green>span{background:#e2f7ed}.indicator-kpi.red{color:#dc4452}.indicator-kpi.red>span{background:#ffe5e8}.indicator-dashboard-layout{display:grid;grid-template-columns:minmax(0,1fr) 315px;gap:16px;align-items:start}.indicator-dashboard-main{display:flex;flex-direction:column;gap:16px;min-width:0}.indicator-input-side{display:flex;flex-direction:column;gap:14px;position:sticky;top:91px}.indicator-chart-panel{padding-bottom:12px}.chart-legend{display:flex;align-items:center;gap:13px;font-size:8px;color:#718095}.chart-legend span{display:flex;align-items:center;gap:5px}.chart-legend span:before{content:"";width:9px;height:9px;border-radius:3px}.chart-legend .achieved:before{background:#18a265}.chart-legend .missed:before{background:#e24b5a}.chart-legend .target:before{height:2px;border-radius:0;background:#e7a11b}.indicator-chart-scroll{overflow-x:auto}.indicator-chart{width:100%;min-width:780px;height:auto;display:block}.indicator-chart .grid-line{stroke:#e8edf3;stroke-width:1}.indicator-chart .axis-label,.indicator-chart .month-label{fill:#8592a3;font-size:10px;font-family:inherit}.indicator-chart .target-line{stroke:#e4a022;stroke-width:2;stroke-dasharray:6 5}.indicator-chart .target-label{fill:#b47b0c;font-size:9px;font-weight:700}.indicator-chart .chart-bar{transition:.2s}.indicator-chart .chart-bar.met{fill:url(#none);fill:#17a367}.indicator-chart .chart-bar.not-met{fill:#df4756}.indicator-chart .chart-bar.empty{fill:#e9edf3}.indicator-chart .chart-bar-group:hover .chart-bar{filter:brightness(.9)}.indicator-chart .bar-value{fill:#405068;font-size:9px;font-weight:700}.chart-empty{min-height:260px;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#8592a3}.chart-empty>span{font-size:35px;color:#c6d1dd}.chart-empty strong{margin:10px 0 5px;color:#59677a}.chart-empty p{font-size:10px}.value-good{color:#118455}.value-bad{color:#cf3544}.analysis-cell{display:flex;flex-direction:column;max-width:280px}.analysis-cell strong{font-size:9px;font-weight:600;white-space:normal}.analysis-cell small{font-size:8px;color:var(--muted);margin-top:4px;white-space:normal}.indicator-input-form{display:flex;flex-direction:column;gap:13px}.input-form-head{display:flex;align-items:center;gap:10px;padding-bottom:13px;border-bottom:1px solid var(--border)}.input-form-head>span{width:36px;height:36px;border-radius:9px;background:#e5f1ff;color:#2275d1;display:grid;place-items:center;font-size:19px}.input-form-head .eyebrow{margin-bottom:3px}.input-form-head h2{margin:0}.measure-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.measurement-preview{border-radius:9px;padding:12px;text-align:center;display:grid;grid-template-columns:1fr auto;align-items:center}.measurement-preview small{font-size:7px;grid-column:1/-1}.measurement-preview strong{font-size:22px}.measurement-preview span{font-size:8px;text-align:right;max-width:120px}.measurement-preview.met{background:#e3f7ed;color:#118052}.measurement-preview.not-met{background:#fff0e1;color:#a56d0a}.indicator-summary-card>div{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-top:1px solid var(--border)}.indicator-summary-card>div span{font-size:9px;color:#7f8c9e}.indicator-summary-card>div strong{font-size:11px}.indicator-summary-card>p:last-child{font-size:9px;line-height:1.6;color:#59677a;background:#f7f9fc;padding:9px;border-radius:7px;margin:9px 0 0}
@media(max-width:1150px){.indicator-kpis{grid-template-columns:1fr 1fr}.indicator-dashboard-layout{grid-template-columns:1fr}.indicator-input-side{position:static;display:grid;grid-template-columns:1fr 1fr}.indicator-page-title{align-items:flex-start}}
@media(max-width:700px){.indicator-kpis{grid-template-columns:1fr}.indicator-input-side{display:flex}.indicator-page-title .title-actions{flex-wrap:wrap}.chart-legend{display:none}}
.indicator-follow-up-section{margin-top:22px;scroll-margin-top:90px}.indicator-follow-up-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:13px}.indicator-follow-up-heading h2{margin-bottom:5px}.indicator-follow-up-heading>div:first-child>p:last-child{margin:0;color:var(--muted);font-size:10px}.indicator-follow-up-heading>div:last-child{display:flex;gap:8px}.indicator-follow-up-heading>div:last-child>span{display:flex;align-items:center;gap:9px;padding:8px 11px;border:1px solid var(--border);border-radius:9px;background:#fff}.indicator-follow-up-heading>div:last-child small{font-size:7px;color:var(--muted)}.indicator-follow-up-heading>div:last-child strong{font-size:14px}.indicator-follow-up-heading>div:last-child .danger{border-color:#f0c2c8;background:#fff1f2;color:#bd3041}.indicator-follow-up-layout{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:16px;align-items:start}.indicator-follow-up-list{display:flex;flex-direction:column;gap:12px}.indicator-follow-up-card{padding:18px;border-left:4px solid #2778d3}.indicator-follow-up-card.overdue{border-left-color:#d83e4d}.indicator-follow-up-card>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.indicator-follow-up-card>header>div{display:flex;align-items:center;gap:9px}.indicator-follow-up-card>header small{font-size:8px;color:var(--muted)}.indicator-follow-up-card>header>a{font-size:9px;color:#176fd1;font-weight:800}.indicator-follow-up-card>h3{font-size:13px;line-height:1.5;margin:13px 0}.quality-follow-up-status{display:inline-flex;padding:5px 8px;border-radius:8px;font-size:8px;font-weight:800}.quality-follow-up-status.open{background:#edf1f5;color:#657287}.quality-follow-up-status.in_progress{background:#e8f2ff;color:#176fc8}.quality-follow-up-status.monitoring{background:#fff2d9;color:#a66a08}.quality-follow-up-status.completed{background:#e2f7ed;color:#138154}.quality-follow-up-progress{display:grid;grid-template-columns:repeat(4,1fr);position:relative;margin:5px 0 16px}.quality-follow-up-progress:before{content:"";position:absolute;left:25px;right:25px;top:12px;height:2px;background:#e3e8ef}.quality-follow-up-progress>div{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:4px;color:#9aa5b4}.quality-follow-up-progress span{display:grid;place-items:center;width:25px;height:25px;border:3px solid #fff;border-radius:50%;background:#e8edf3;font-size:7px;font-weight:900}.quality-follow-up-progress small{font-size:7px}.quality-follow-up-progress .done{color:#176fd1}.quality-follow-up-progress .done span{background:#176fd1;color:#fff}.indicator-follow-up-card dl{display:grid;grid-template-columns:1fr 1fr;margin:0;border:1px solid var(--border);border-radius:9px;overflow:hidden}.indicator-follow-up-card dl>div{padding:11px;border-bottom:1px solid var(--border)}.indicator-follow-up-card dl>div:nth-child(odd){border-right:1px solid var(--border)}.indicator-follow-up-card dt{margin-bottom:5px;color:#8793a4;font-size:7px;text-transform:uppercase;letter-spacing:.4px}.indicator-follow-up-card dd{margin:0;color:#4f5d70;font-size:9px;line-height:1.55}.indicator-follow-up-card>footer{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:13px}.indicator-follow-up-card>footer>div{display:flex;flex-direction:column;gap:3px}.indicator-follow-up-card>footer small{font-size:7px;color:var(--muted)}.indicator-follow-up-card>footer strong{font-size:9px}.indicator-follow-up-form{position:sticky;top:91px;display:flex;flex-direction:column;gap:12px;scroll-margin-top:90px}.indicator-follow-up-form .form-section-heading{margin-bottom:3px}.indicator-follow-up-form .form-grid{gap:9px}.indicator-follow-up-empty{min-height:230px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:var(--muted)}.indicator-follow-up-empty>span{font-size:32px;color:#92b6db}.indicator-follow-up-empty>strong{margin:9px 0 5px;color:#4c596c}.indicator-follow-up-empty>p{font-size:9px}.indicator-follow-up-access{text-align:center}.indicator-follow-up-access>span{font-size:25px}.indicator-follow-up-access h3{margin:8px 0 5px}.indicator-follow-up-access p{margin:0;color:var(--muted);font-size:9px;line-height:1.6}
@media(max-width:1050px){.indicator-follow-up-layout{grid-template-columns:1fr}.indicator-follow-up-form{position:static}.indicator-follow-up-layout>aside{order:-1}}
@media(max-width:650px){.indicator-follow-up-heading{align-items:flex-start;flex-direction:column}.indicator-follow-up-heading>div:last-child{width:100%}.indicator-follow-up-heading>div:last-child>span{flex:1;justify-content:center}.indicator-follow-up-card dl{grid-template-columns:1fr}.indicator-follow-up-card dl>div:nth-child(odd){border-right:0}.indicator-follow-up-card>footer{grid-template-columns:1fr}.quality-follow-up-progress small{font-size:6px}}
.hidden-panel{display:none!important}.pokja-icon{--module:#b45309}.pokja-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;background:linear-gradient(120deg,#263f59,#1b6680);color:#fff;padding:24px 28px;border-radius:15px;margin-bottom:14px;overflow:hidden;position:relative}.pokja-hero:after{content:"";position:absolute;width:210px;height:210px;border-radius:50%;border:1px solid rgba(255,255,255,.1);right:-65px;top:-90px;box-shadow:0 0 0 35px rgba(255,255,255,.025)}.pokja-hero>div:first-child{max-width:700px;z-index:1}.pokja-hero .eyebrow{color:#8bd3eb}.pokja-hero h2{font-size:23px}.pokja-hero p:last-child{color:#c8dce5;font-size:11px;line-height:1.6;margin:0}.pokja-score{width:120px;height:120px;border-radius:50%;display:grid;place-items:center;align-content:center;border:8px solid rgba(73,205,167,.85);background:rgba(5,42,61,.3);z-index:1;flex:none}.pokja-score strong{font-size:25px}.pokja-score strong small{font-size:11px}.pokja-score span{font-size:7px;color:#cce5eb;margin-top:3px}.pokja-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:15px}.pokja-kpis article{background:#fff;border:1px solid var(--border);border-radius:10px;padding:13px;display:flex;align-items:center;gap:10px}.pokja-kpis article>span{width:34px;height:34px;border-radius:8px;background:#eaf3ff;color:#2675ce;display:grid;place-items:center}.pokja-kpis article div{display:flex;flex-direction:column}.pokja-kpis small{font-size:8px;color:var(--muted)}.pokja-kpis strong{font-size:18px}.pokja-map{margin-bottom:20px}.pokja-flow{display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 0}.pokja-flow>i{font-style:normal;color:#9eb0c3}.flow-node{width:165px;min-height:92px;border:1px solid var(--border);border-radius:10px;padding:12px;display:flex;flex-direction:column;align-items:center;text-align:center;background:#fbfcfe}.flow-node>span{width:25px;height:25px;border-radius:50%;background:#e7eef7;color:#61738a;display:grid;place-items:center;font-size:9px;font-weight:800;margin-bottom:7px}.flow-node strong{font-size:9px}.flow-node small{font-size:7px;color:var(--muted);line-height:1.4;margin-top:4px}.primary-node{background:#edf6ff;border-color:#b8d7f5}.primary-node>span{background:#2478d2;color:#fff}.success-node{background:#e9f8f0;border-color:#b5e3cc}.success-node>span{background:#159b62;color:#fff}.pokja-support-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;border-top:1px dashed #dce3ec;padding-top:14px;margin-top:9px}.pokja-support-flow>div{display:grid;grid-template-columns:auto 1fr;column-gap:8px;align-items:center;padding:10px;background:#f8fafc;border-radius:8px}.pokja-support-flow>div>span{grid-row:1/3;width:29px;height:29px;border-radius:7px;background:#fff;color:#397ac3;display:grid;place-items:center}.pokja-support-flow strong{font-size:8px}.pokja-support-flow small{font-size:7px;color:var(--muted)}.pokja-add-form,.pokja-inline-form{margin-bottom:17px}.pokja-add-form>.button,.pokja-inline-form>.button{margin-top:14px}.pokja-list-heading{margin-top:24px}.pokja-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.pokja-card{background:#fff;border:1px solid var(--border);border-top:3px solid var(--pokja);border-radius:12px;padding:17px;min-height:205px;display:flex;flex-direction:column;transition:.2s}.pokja-card:hover{transform:translateY(-3px);box-shadow:var(--shadow)}.pokja-card-head{display:flex;justify-content:space-between;align-items:center}.pokja-card-head>span{background:color-mix(in srgb,var(--pokja) 12%,white);color:var(--pokja);padding:6px 8px;border-radius:7px;font-size:9px;font-weight:900}.pokja-card-head>b{font-size:16px;color:var(--pokja)}.pokja-card h3{margin:13px 0 6px}.pokja-card>p{font-size:9px;color:var(--muted);line-height:1.5;flex:1}.pokja-progress{height:6px;border-radius:4px;background:#e9edf2;overflow:hidden}.pokja-progress span{display:block;height:100%;background:var(--pokja);border-radius:4px}.pokja-card-stats{display:flex;gap:13px;margin-top:10px}.pokja-card-stats span{font-size:7px;color:var(--muted)}.pokja-card-stats b{color:#435268;font-size:9px}.pokja-open{font-size:8px;color:var(--pokja);margin-top:11px}.pokja-detail-summary{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;background:#fff;border:1px solid var(--border);border-left:4px solid var(--pokja);border-radius:11px;margin-bottom:15px}.pokja-detail-summary>div{padding:15px;border-right:1px solid var(--border);display:flex;flex-direction:column;gap:5px}.pokja-detail-summary small{font-size:8px;color:var(--muted)}.pokja-detail-summary strong{font-size:17px}.pokja-detail-summary .pokja-progress{margin-top:4px}.pokja-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:15px;align-items:start}.pokja-standards{display:flex;flex-direction:column;gap:13px}.pokja-detail-side{display:flex;flex-direction:column;gap:13px;position:sticky;top:90px}.standard-card{padding:0;overflow:hidden}.standard-head{display:flex;align-items:center;gap:11px;padding:15px 17px;background:#fafbfd;border-bottom:1px solid var(--border)}.standard-head>span{width:43px;height:43px;border-radius:9px;background:color-mix(in srgb,var(--pokja) 12%,white);color:var(--pokja);display:grid;place-items:center;font-size:8px;font-weight:900;flex:none}.standard-head>div:nth-child(2){flex:1}.standard-head h2{font-size:13px;margin:0 0 4px}.standard-head p{font-size:8px;color:var(--muted);margin:0}.standard-score{display:flex;flex-direction:column;text-align:right}.standard-score strong{font-size:17px}.standard-score small{font-size:8px;color:var(--muted)}.element-list{padding:7px 15px 15px}.element-row{display:grid;grid-template-columns:48px 1fr 78px auto;align-items:center;gap:10px;padding:11px 0;border-bottom:1px solid #edf1f5}.element-code{font-size:8px;font-weight:800;color:#647287}.element-info{display:flex;flex-direction:column}.element-info strong{font-size:9px;line-height:1.45}.element-info small{font-size:7px;color:var(--muted);margin-top:4px}.element-info span{font-size:7px;color:#3979c0;margin-top:4px}.element-score{display:flex;flex-direction:column;text-align:center;padding:5px;border-radius:7px}.element-score strong{font-size:14px}.element-score small{font-size:6px}.element-score.score-10{background:#e3f7ed;color:#137f51}.element-score.score-5{background:#fff2cf;color:#967000}.element-score.score-0{background:#ffe6e8;color:#b82d3b}.element-score.score-na{background:#edf0f4;color:#758092}.element-assessment-form{background:#f7f9fc;border:1px solid var(--border);border-radius:9px;padding:13px;margin:8px 0}.element-assessment-form>.button{margin-top:12px}.score-legend>div{display:flex;gap:9px;padding:9px 0;border-top:1px solid var(--border)}.legend-score{width:29px;height:29px;border-radius:7px;display:grid;place-items:center;font-size:10px;font-weight:800;flex:none}.legend-score.zero{background:#ffe6e8;color:#b82d3b}.legend-score.five{background:#fff2cf;color:#967000}.legend-score.ten{background:#e3f7ed;color:#137f51}.score-legend p{display:flex;flex-direction:column;margin:0}.score-legend strong{font-size:8px}.score-legend small{font-size:7px;color:var(--muted);margin-top:3px}
@media(max-width:1050px){.pokja-grid{grid-template-columns:1fr 1fr}.pokja-flow{overflow-x:auto;justify-content:flex-start}.flow-node{min-width:150px}.pokja-detail-layout{grid-template-columns:1fr}.pokja-detail-side{position:static;display:grid;grid-template-columns:1fr 1fr}}
@media(max-width:700px){.pokja-hero{padding:20px}.pokja-score{display:none}.pokja-kpis{grid-template-columns:1fr 1fr}.pokja-grid{grid-template-columns:1fr}.pokja-support-flow{grid-template-columns:1fr 1fr}.pokja-detail-summary{grid-template-columns:1fr 1fr}.pokja-detail-summary>div:first-child{grid-column:1/-1}.pokja-detail-side{display:flex}.element-row{grid-template-columns:42px 1fr 65px}.element-row>.button{grid-column:2/-1}.pokja-flow>i{display:none}}
.portal-page{background:#fff;color:#17243a}.portal-header{height:78px;display:flex;align-items:center;padding:0 max(5vw,25px);border-bottom:1px solid #e6edf4;position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);z-index:20}.portal-brand{display:flex;align-items:center;gap:10px}.portal-brand>div{display:flex;flex-direction:column}.portal-brand strong{color:#0c3156;letter-spacing:.7px}.portal-brand small{font-size:9px;color:#738196;margin-top:2px}.portal-header nav{margin-left:auto;display:flex;align-items:center;gap:24px}.portal-header nav>a:not(.button){font-size:11px;color:#536176}.portal-hero{min-height:520px;background:radial-gradient(circle at 85% 25%,rgba(43,151,216,.18),transparent 28%),linear-gradient(130deg,#eef7ff 0,#fff 55%,#eaf9f4 100%);display:grid;grid-template-columns:1.1fr .9fr;align-items:center;padding:70px max(7vw,30px);overflow:hidden}.portal-hero-content{max-width:680px}.portal-hero-content .eyebrow{color:#1479c8}.portal-hero h1{font-size:50px;letter-spacing:-1.5px;color:#0a2c4d;margin-bottom:20px}.portal-hero-content>p:not(.eyebrow){font-size:15px;line-height:1.8;color:#596b80;max-width:650px}.portal-cta{margin-top:15px;padding:14px 19px}.portal-visual{height:360px;position:relative;display:grid;place-items:center}.quality-rings{width:260px;height:260px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#1884dc 0 25%,#18a578 25% 50%,#e7a31b 50% 75%,#d94555 75%);box-shadow:0 25px 60px rgba(30,86,126,.2);position:relative}.quality-rings:before{content:"";position:absolute;inset:16px;border-radius:50%;background:#fff}.quality-rings:after{content:"";position:absolute;inset:-35px;border:1px dashed #a9c9dc;border-radius:50%;animation:spin 28s linear infinite}.quality-rings>div{z-index:1;text-align:center;display:flex;flex-direction:column}.quality-rings strong{font-size:35px;color:#0c4774}.quality-rings small{font-size:8px;color:#718298}.floating-pill{position:absolute;background:#fff;border:1px solid #dde8f1;border-radius:18px;padding:9px 13px;font-size:9px;font-weight:700;color:#35516c;box-shadow:0 10px 30px rgba(25,67,98,.12)}.floating-pill.one{top:35px;left:2%}.floating-pill.two{right:0;top:120px}.floating-pill.three{bottom:25px;left:8%}@keyframes spin{to{transform:rotate(360deg)}}.portal-services{padding:75px max(5vw,24px)}.portal-section-title{text-align:center;max-width:680px;margin:0 auto 35px}.portal-section-title h2{font-size:30px;color:#0c3155}.portal-section-title>p:last-child{color:#718095;font-size:12px;line-height:1.6}.portal-choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;max-width:1320px;margin:auto}.portal-choice{border:1px solid #dfe8f0;border-radius:18px;padding:26px;box-shadow:0 12px 35px rgba(32,62,88,.07);display:flex;flex-direction:column;position:relative;overflow:hidden}.portal-choice:before{content:"";position:absolute;height:4px;left:0;right:0;top:0}.simmutu-choice:before{background:linear-gradient(90deg,#176fd1,#13a2ca)}.survey-choice:before{background:linear-gradient(90deg,#0c9a70,#3bb58c)}.culture-choice:before{background:linear-gradient(90deg,#b52d4b,#e56e83)}.choice-top{display:flex;align-items:center;justify-content:space-between}.choice-icon{width:52px;height:52px;border-radius:13px;display:grid;place-items:center;font-weight:900}.simmutu-choice .choice-icon{background:#e7f2ff;color:#176cc6}.survey-choice .choice-icon{background:#e2f7ed;color:#108259;font-size:24px}.culture-choice .choice-icon{background:#fff0f3;color:#b52d4b;font-size:11px}.choice-audience{font-size:8px;letter-spacing:1px;font-weight:800;color:#8492a5}.portal-choice h2{font-size:23px;margin:20px 0 3px}.portal-choice h3{font-size:11px;color:#758397;font-weight:500}.portal-choice>p{font-size:11px;line-height:1.65;color:#58677a}.portal-choice ul{list-style:none;padding:0;margin:8px 0 22px;display:grid;grid-template-columns:1fr 1fr;gap:9px}.portal-choice li{font-size:9px;color:#526175}.portal-choice li:before{content:"✓";color:#159b62;font-weight:900;margin-right:6px}.portal-choice>.button{margin-top:auto;padding:13px}.survey-button{background:#128c68;color:#fff;box-shadow:0 5px 13px rgba(18,140,104,.2)}.culture-button{background:#b52d4b;color:#fff;box-shadow:0 5px 13px rgba(181,45,75,.2)}.portal-stats{display:grid;grid-template-columns:repeat(4,1fr);background:#0d3153;color:#fff;padding:32px max(10vw,30px)}.portal-stats article{text-align:center;border-right:1px solid rgba(255,255,255,.14);display:flex;flex-direction:column}.portal-stats article:last-child{border:0}.portal-stats strong{font-size:28px}.portal-stats span{font-size:9px;color:#b8cde0;margin-top:4px}.portal-about{padding:70px max(8vw,30px);display:grid;grid-template-columns:.75fr 1.25fr;align-items:center;gap:45px;background:#f7fafc}.portal-about h2{font-size:27px;color:#0d3357}.portal-about p:last-child{font-size:11px;line-height:1.7;color:#627185}.portal-data-flow{display:flex;align-items:center;gap:8px}.portal-data-flow span{flex:1;background:#fff;border:1px solid #dfe7ef;border-radius:10px;padding:16px 10px;text-align:center;font-size:9px;font-weight:700;color:#3d5269}.portal-data-flow b{color:#96a8b9}.portal-footer{padding:25px max(6vw,25px);display:flex;justify-content:space-between;align-items:center;border-top:1px solid #e6edf4}.portal-footer p{font-size:9px;color:#8290a3;margin:0}.survey-page{background:#eef6f5}.survey-public-header{height:74px;background:#fff;border-bottom:1px solid #dce8e5;display:flex;align-items:center;padding:0 max(6vw,22px)}.survey-public-header>a:last-child{margin-left:auto;font-size:10px;color:#607184}.survey-shell{max-width:1000px;margin:auto;padding:35px 20px 60px}.survey-intro{background:linear-gradient(125deg,#075d58,#13946e);border-radius:17px;color:#fff;padding:28px 32px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.survey-intro>div:first-child{max-width:570px}.survey-intro .eyebrow{color:#91ead1}.survey-intro h1{font-size:27px}.survey-intro p:last-child{font-size:11px;color:#c6e9df;line-height:1.6;margin:0}.survey-scale-legend{display:grid;grid-template-columns:1fr 1fr;gap:7px;min-width:250px}.survey-scale-legend span{background:rgba(255,255,255,.1);padding:7px;border-radius:7px;font-size:7px;display:flex;align-items:center;gap:6px}.survey-scale-legend b{width:20px;height:20px;border-radius:5px;background:rgba(255,255,255,.18);display:grid;place-items:center;font-size:9px}.survey-public-form{display:flex;flex-direction:column;gap:15px}.survey-section-head{display:flex;align-items:center;gap:12px;border-bottom:1px solid var(--border);padding-bottom:14px;margin-bottom:18px}.survey-section-head>span{width:31px;height:31px;border-radius:8px;background:#e2f5ef;color:#10815e;display:grid;place-items:center;font-weight:800}.survey-section-head h2{margin:0 0 3px}.survey-section-head p{font-size:9px;color:var(--muted);margin:0}.survey-question{padding:16px 0;border-bottom:1px solid var(--border)}.survey-question:last-child{border-bottom:0}.question-copy{display:flex;align-items:flex-start;gap:10px;margin-bottom:12px}.question-copy>span{width:24px;height:24px;border-radius:50%;background:#edf4f4;color:#607a77;display:grid;place-items:center;font-size:8px;font-weight:800}.question-copy>div{display:flex;flex-direction:column}.question-copy strong{font-size:11px}.question-copy small{font-size:8px;color:var(--muted);margin-top:4px}.score-options{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-left:34px}.score-options label{cursor:pointer}.score-options input{display:none}.score-options label>span{border:1px solid #dce5e4;border-radius:9px;padding:9px;display:flex;align-items:center;gap:8px;background:#fafcfc}.score-options label>span b{width:26px;height:26px;border-radius:7px;background:#edf2f2;color:#61736f;display:grid;place-items:center}.score-options label>span small{font-size:8px;color:#677872}.score-options input:checked+span{border-color:#1b9b76;background:#e8f8f1;box-shadow:0 0 0 2px rgba(27,155,118,.09)}.score-options input:checked+span b{background:#15966f;color:#fff}.survey-section>label+label{margin-top:14px}.survey-submit{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid #dce8e5;border-radius:12px;padding:15px 18px}.survey-submit p{font-size:9px;color:#77867f;margin:0;max-width:550px}.survey-submit .button{padding:13px 20px}.survey-public-footer{text-align:center;padding:20px;color:#80908a;font-size:9px}.survey-thanks-page{min-height:100vh;display:grid;place-items:center;background:linear-gradient(145deg,#e8f8f1,#f4fbff);padding:20px}.survey-thanks-card{width:min(520px,100%);background:#fff;border:1px solid #dce9e4;border-radius:19px;padding:40px;text-align:center;box-shadow:0 20px 50px rgba(32,80,65,.1)}.thanks-check{width:72px;height:72px;border-radius:50%;display:grid;place-items:center;margin:0 auto 18px;background:#dcf5e8;color:#128355;font-size:30px}.survey-thanks-card>p:not(.eyebrow){color:#65766f;line-height:1.65}.survey-receipt{display:grid;grid-template-columns:1fr 1fr;text-align:left;background:#f6faf8;border-radius:10px;padding:14px;gap:7px;margin:20px 0}.survey-receipt span{font-size:8px;color:#7b8a84}.survey-receipt strong{font-size:11px}.thanks-actions{display:flex;gap:8px;justify-content:center}.document-number-icon{--module:#1d6a8a}.issued-number-card{display:flex;justify-content:space-between;align-items:center;padding:18px 21px;border-radius:12px;background:linear-gradient(115deg,#e2f7ed,#f7fcfa);border:1px solid #bfe7d2;margin-bottom:14px}.issued-number-card>div{display:flex;align-items:center;gap:12px}.issued-number-card>div>span{width:39px;height:39px;border-radius:50%;background:#159b62;color:#fff;display:grid;place-items:center;font-size:18px}.issued-number-card .eyebrow{color:#168153;margin-bottom:3px}.issued-number-card h2{margin:0 0 4px;font-size:20px}.issued-number-card p:last-child{font-size:9px;color:#64766e;margin:0}.document-number-format{background:#123b5c;color:#fff;border-radius:12px;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.document-number-format .eyebrow{color:#76c3ef;margin-bottom:3px}.document-number-format>div:first-child{display:flex;flex-direction:column}.document-number-format small{color:#a9c6da;font-size:8px;margin-top:5px}.format-parts{display:flex;align-items:center;gap:5px}.format-parts span{background:rgba(255,255,255,.09);padding:7px;border-radius:6px;font-size:7px}.format-parts b{color:#74b4dc}.document-number-stats{grid-template-columns:repeat(3,1fr)}.document-number-stats>div{background:#fff;border:1px solid var(--border);border-radius:10px;padding:13px 16px;display:flex;justify-content:space-between;align-items:center}.document-number-form{margin-bottom:15px}.document-number-form>.button{margin-top:14px}.document-number-status{font-size:8px;font-weight:700;padding:5px 7px;border-radius:9px}.document-number-status.issued{background:#e7f2ff;color:#216fc4}.document-number-status.used{background:#e2f7ed;color:#148054}.document-number-status.cancelled{background:#ffe8ea;color:#b92c3a}.table-action-button{width:27px;height:27px;border-radius:7px;border:1px solid #cfe0d8;background:#eef9f3;color:#168154}.survey-result-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:15px}.survey-result-kpis article{background:#fff;border:1px solid var(--border);border-radius:11px;padding:14px;display:flex;align-items:center;gap:10px}.survey-result-kpis article>span{width:38px;height:38px;border-radius:9px;background:#e8f3ff;color:#2174ca;display:grid;place-items:center;font-size:16px}.survey-result-kpis article.good>span{background:#e1f6ea;color:#128154}.survey-result-kpis article.warning>span{background:#fff0d9;color:#a66b04}.survey-result-kpis article>div{display:flex;flex-direction:column}.survey-result-kpis small{font-size:8px;color:var(--muted)}.survey-result-kpis strong{font-size:19px}.survey-result-kpis p{font-size:7px;color:var(--muted);margin:3px 0 0}.survey-results-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:14px;margin-bottom:14px}.survey-results-grid.lower{grid-template-columns:1fr 1fr}.survey-css-chart{height:260px;display:flex;align-items:flex-end;gap:8px;padding:25px 5px 0;border-bottom:1px solid var(--border)}.survey-css-chart>div{height:100%;flex:1;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:7px}.survey-css-chart span{width:min(34px,85%);min-height:3px;border-radius:5px 5px 0 0;background:#e3e8ee;position:relative}.survey-css-chart span.met{background:#17a06a}.survey-css-chart span.not-met{background:#dc4856}.survey-css-chart b{position:absolute;top:-16px;width:100%;font-size:7px;text-align:center;color:#536175}.survey-css-chart small{font-size:7px;color:var(--muted)}.question-score-row{display:grid;grid-template-columns:105px 1fr 30px;align-items:center;gap:8px;padding:6px 0}.question-score-row>span{font-size:8px}.question-score-row>div{height:6px;border-radius:4px;background:#e9edf2;overflow:hidden}.question-score-row i{display:block;height:100%;background:linear-gradient(90deg,#16a173,#47bd98)}.question-score-row strong{font-size:9px}.feedback-list article{padding:10px 0;border-top:1px solid var(--border)}.feedback-list article:first-child{border-top:0}.feedback-list article>div{display:flex;justify-content:space-between}.feedback-list strong{font-size:9px}.feedback-list article>div span{font-size:8px;color:#148054}.feedback-list p{font-size:9px;line-height:1.5;color:#58677a;margin:6px 0}.feedback-list small{font-size:7px;color:var(--muted)}.survey-indicator-link{text-align:right;font-size:9px;color:var(--muted)}.survey-indicator-link a{color:#1970ca;font-weight:700}
@media(max-width:900px){.portal-hero{grid-template-columns:1fr;min-height:auto}.portal-visual{display:none}.portal-hero h1{font-size:39px}.portal-choice-grid{grid-template-columns:1fr}.portal-about{grid-template-columns:1fr}.portal-data-flow{flex-wrap:wrap}.survey-intro{display:block}.survey-scale-legend{margin-top:18px}.survey-results-grid,.survey-results-grid.lower{grid-template-columns:1fr}.survey-result-kpis{grid-template-columns:1fr 1fr}.format-parts{display:none}}
@media(max-width:620px){.portal-header nav>a:not(.button){display:none}.portal-header{padding:0 15px}.portal-brand small{display:none}.portal-hero{padding:50px 22px}.portal-hero h1{font-size:33px}.portal-services{padding:50px 18px}.portal-choice{padding:21px}.portal-choice ul{grid-template-columns:1fr}.portal-stats{grid-template-columns:1fr 1fr;gap:20px}.portal-stats article:nth-child(2){border:0}.portal-about{padding:50px 20px}.portal-data-flow{display:grid;grid-template-columns:1fr}.portal-data-flow b{transform:rotate(90deg)}.portal-footer{display:block;text-align:center}.portal-footer .portal-brand{justify-content:center;margin-bottom:12px}.survey-intro{padding:22px}.survey-scale-legend{min-width:0}.score-options{grid-template-columns:1fr 1fr;margin-left:0}.survey-submit{display:block;text-align:center}.survey-submit .button{margin-top:12px;width:100%}.survey-result-kpis{grid-template-columns:1fr}.document-number-format{display:block}.document-number-stats{grid-template-columns:1fr}.issued-number-card{display:block}.issued-number-card>.button{margin-top:12px;width:100%}.thanks-actions{flex-direction:column}.survey-thanks-card{padding:28px 20px}}

/* Pengisian capaian mutu harian */
.quality-entry-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:16px;align-items:start}
.quality-scope-filter{display:flex;align-items:center;gap:16px;margin-bottom:16px;padding:12px 14px}
.quality-category-tabs{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:7px;flex:1}
.quality-category-tabs a{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:9px;color:#637186;background:#fafbfd}
.quality-category-tabs a span{font-size:10px;font-weight:700}
.quality-category-name{display:flex;align-items:center;gap:8px}
.quality-category-name i{width:27px;height:27px;border-radius:8px;display:grid;place-items:center;background:#edf2f7;color:#47617e;font-size:12px;font-style:normal;flex:none}
.quality-category-tabs a.active .quality-category-name i{background:#176fd1;color:#fff}
.quality-category-tabs a strong{min-width:24px;height:24px;border-radius:12px;display:grid;place-items:center;background:#e8edf3;font-size:9px}
.quality-category-tabs a.active{border-color:#73a9e7;background:#eaf3ff;color:#1767c5}
.quality-category-tabs a.active strong{background:#176fd1;color:#fff}
.quality-scope-filter>form{width:230px;flex:none}
.quality-scope-filter>form label{gap:5px}
.locked-unit{min-width:190px;padding:8px 12px;border-left:1px solid var(--border);display:flex;flex-direction:column;gap:4px}
.locked-unit small{font-size:8px;color:var(--muted);font-weight:700}
.locked-unit strong{font-size:11px}
.quality-entry-main{display:flex;flex-direction:column;gap:16px}
.quality-indicator-list{position:sticky;top:92px;padding:13px}
.quality-indicator-list>.eyebrow{padding:7px 8px 9px;margin:0}
.quality-indicator-list>a{display:flex;flex-direction:row;align-items:flex-start;gap:9px;padding:12px;border-radius:9px;border:1px solid transparent;margin-top:4px}
.quality-indicator-list>a:hover{background:#f6f9fc}
.quality-indicator-list>a.selected{background:#eaf3ff;border-color:#b8d6f7;color:#155eae}
.quality-indicator-list>a strong{font-size:11px;line-height:1.45}
.quality-indicator-list>a small{font-size:8px;color:#78879a;line-height:1.45}
.indicator-list-icon{width:30px;height:30px;border-radius:8px;display:grid;place-items:center;background:#edf3fa;color:#276fb9;font-size:13px;font-weight:900;flex:none}
.quality-indicator-list>a.selected .indicator-list-icon{background:#176fd1;color:#fff}
.indicator-list-copy{display:flex;flex-direction:column;gap:4px;min-width:0}
.quick-quality-form{gap:16px}
.quick-quality-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;padding-bottom:15px;border-bottom:1px solid var(--border)}
.quick-quality-head>div{flex:1}
.selected-indicator-icon{width:43px;height:43px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(145deg,#e4f1ff,#eef8ff);color:#176bc2;font-size:19px;font-weight:900;flex:none}
.quick-quality-head h2{margin-bottom:5px}
.quick-quality-head p:last-child{font-size:10px;color:var(--muted);margin:0}
.quick-quality-fields{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px}
.optional-fields{border:1px solid var(--border);border-radius:9px;background:#fafbfd}
.optional-fields summary{padding:12px;color:#526176;font-size:10px;font-weight:700;cursor:pointer}
.optional-fields>div{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 12px 12px}
.compact-history article{display:grid;grid-template-columns:1fr auto 85px;gap:14px;align-items:center;padding:11px 0;border-top:1px solid var(--border)}
.compact-history article:first-child{border-top:0}
.compact-history article>div{display:flex;flex-direction:column;gap:4px}
.compact-history article strong,.compact-history article b{font-size:11px}
.compact-history article small{font-size:8px;color:var(--muted)}
.measurement-filter{display:flex;align-items:center;gap:16px;margin-bottom:16px;padding:12px 14px}
.measurement-filter>form{display:flex;align-items:flex-end;gap:8px}
.measurement-filter>form label{min-width:185px}
.measurement-filter>strong{margin-left:auto;color:#526176;font-size:11px}
.period-tabs{display:flex;padding:3px;background:#edf2f7;border-radius:9px}
.period-tabs a{padding:8px 12px;border-radius:7px;font-size:10px;font-weight:700;color:#64748b}
.period-tabs a.active{background:#fff;color:#176fd1;box-shadow:0 2px 7px rgba(30,55,85,.1)}
@media(max-width:1350px){.quality-scope-filter{align-items:stretch;flex-direction:column}.quality-scope-filter>form{width:100%}.quality-category-tabs{width:100%}.locked-unit{width:100%;border-left:0;border-top:1px solid var(--border)}}
@media(max-width:900px){.quality-scope-filter{align-items:stretch;flex-direction:column}.quality-scope-filter>form{width:100%}.quality-category-tabs{width:100%}.locked-unit{width:100%;border-left:0;border-top:1px solid var(--border)}.quality-entry-layout{grid-template-columns:1fr}.quality-indicator-list{position:static;display:grid;grid-template-columns:repeat(2,1fr)}.quality-indicator-list>.eyebrow{grid-column:1/-1}.measurement-filter{align-items:stretch;flex-wrap:wrap}.measurement-filter>strong{margin-left:0;width:100%}}
@media(max-width:620px){.quality-category-tabs{grid-template-columns:1fr}.quality-indicator-list{grid-template-columns:1fr}.quick-quality-fields,.optional-fields>div{grid-template-columns:1fr}.measurement-filter>form{width:100%;flex-wrap:wrap}.measurement-filter>form label{flex:1;min-width:160px}.compact-history article{grid-template-columns:1fr auto}.compact-history article .status{display:none}.period-tabs{width:100%}.period-tabs a{flex:1;text-align:center}}

/* Ruang kerja surveilans IPCN */
.ppi-process>div{min-width:0}.infection-stats a.stat-card{cursor:pointer}
.ppi-denominator-panel{margin-bottom:16px}
.ppi-denominator-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.ppi-denominator-grid article{border:1px solid var(--border);border-radius:10px;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fafcfd}
.ppi-denominator-grid article>div{display:flex;flex-direction:column;gap:4px}.ppi-denominator-grid article>div strong{font-size:11px}.ppi-denominator-grid article>div small{font-size:8px;color:var(--muted)}
.ppi-denominator-grid article>b{font-size:18px;color:#087968}.ppi-denominator-grid article>b small{font-size:10px}
.regulation-note,.form-regulation-hint{font-size:9px;line-height:1.6;color:#607184;background:#f2f7f7;border-left:3px solid #159b83;border-radius:6px;padding:9px 11px;margin:12px 0 0}
.ppi-toolbar select{max-width:165px}.ppi-worklist td{vertical-align:middle}
.visit-badge{display:inline-flex;padding:6px 8px;border-radius:9px;font-size:8px;font-weight:800;white-space:nowrap}.visit-badge.urgent{background:#ffe6e9;color:#b32636}.visit-badge.due{background:#fff0d8;color:#9c6708}.visit-badge.done{background:#e2f7ed;color:#138051}
.daily-visit-banner{display:flex;align-items:center;justify-content:space-between;gap:15px;border-radius:12px;padding:13px 16px;margin-bottom:12px;border:1px solid}.daily-visit-banner>div{display:flex;align-items:center;gap:10px}.daily-visit-banner>div>span{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-weight:900}.daily-visit-banner>div>div{display:flex;flex-direction:column;gap:3px}.daily-visit-banner strong{font-size:11px}.daily-visit-banner small{font-size:8px}.daily-visit-banner.due{background:#fff8e9;border-color:#efd39c;color:#8b6113}.daily-visit-banner.due>div>span{background:#f2c864;color:#704900}.daily-visit-banner.done{background:#edf9f3;border-color:#bfe6d3;color:#176b4a}.daily-visit-banner.done>div>span{background:#1b9b67;color:#fff}
.infection-workflow-tabs.four-steps{grid-template-columns:repeat(4,1fr)}
.inline-remove-device{display:flex;gap:5px;align-items:center;min-width:210px}.inline-remove-device input{padding:7px;font-size:9px}.inline-remove-device .button{padding:8px;white-space:nowrap}
.ipcn-review-state{margin-top:11px;padding:9px 10px;border-radius:8px;display:flex;flex-direction:column;gap:4px}.ipcn-review-state strong{font-size:9px}.ipcn-review-state small{font-size:8px}.ipcn-review-state p{margin:4px 0 0;font-size:9px}.ipcn-review-state.recorded{background:#fff4df;color:#8c6317}.ipcn-review-state.reviewed{background:#e8f7ef;color:#16724e}.ipcn-review-state.escalated{background:#ffe7ea;color:#a92b38}
.ipcn-review-form{border-top:1px solid var(--border);margin-top:10px;padding-top:10px;display:flex;align-items:flex-end;gap:8px}.ipcn-review-form label{flex:1}.ipcn-review-form>div{display:flex;gap:5px}
.ipcn-daily-form>.eyebrow{margin-bottom:-8px}.ppi-followup-side{display:flex;flex-direction:column;gap:12px}.ppi-followup-list{display:flex;flex-direction:column;gap:9px}.ppi-followup-list article{border:1px solid var(--border);border-radius:10px;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:12px}.ppi-followup-list article>div{display:flex;flex-direction:column;gap:5px}.ppi-followup-list article strong{font-size:10px;line-height:1.5}.ppi-followup-list article small{font-size:8px;color:var(--muted)}.ppi-followup-list article.done{opacity:.68;background:#f7f9fa}.followup-type{align-self:flex-start;background:#e8f3ff;color:#1d6ebf;border-radius:8px;padding:4px 7px;font-size:8px;font-weight:800}.close-monitoring-card p{font-size:9px;line-height:1.6;color:var(--muted)}.close-monitoring-card small{display:block;margin-top:8px;text-align:center;color:#a66d08}.close-monitoring-card button:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:1100px){.ppi-denominator-grid{grid-template-columns:1fr 1fr}.infection-workflow-tabs.four-steps{grid-template-columns:1fr 1fr}.ppi-toolbar{flex-wrap:wrap}.ppi-toolbar .search-field{min-width:100%}}
@media(max-width:700px){.ppi-denominator-grid{grid-template-columns:1fr}.daily-visit-banner{align-items:stretch;flex-direction:column}.daily-visit-banner .button{width:100%}.infection-workflow-tabs.four-steps{grid-template-columns:1fr}.ipcn-review-form{align-items:stretch;flex-direction:column}.ipcn-review-form>div{display:grid;grid-template-columns:1fr 1fr}.ppi-followup-list article{align-items:stretch;flex-direction:column}}
.alert.warning{background:#fff8e1;color:#8a6116;border:1px solid #f3d593}
.drive-integration-status{display:flex;align-items:center;gap:14px;margin:0 0 18px;padding:14px 18px;border:1px solid var(--border);border-radius:16px;background:#fff}
.drive-integration-status>span{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#eff6ff;color:#2563eb;font-size:21px}
.drive-integration-status>div{display:flex;flex:1;flex-direction:column;gap:3px}.drive-integration-status small{color:var(--muted)}.drive-integration-status a{font-weight:800;color:#2563eb;white-space:nowrap}
.drive-integration-status.connected{border-color:#bbf7d0;background:#f0fdf4}.drive-integration-status.connected>span{background:#dcfce7;color:#15803d}
.drive-integration-status.pending{border-color:#fde68a;background:#fffbeb}
.element-evidence-links{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.element-evidence-links a{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#1d4ed8;font-size:11px;font-weight:800}
@media(max-width:700px){.drive-integration-status{align-items:flex-start;flex-wrap:wrap}.drive-integration-status a{margin-left:54px}}
.quality-field-help{display:block;margin-top:1px;color:var(--muted);font-size:8px;font-weight:500;line-height:1.45}
.test-account-guide{display:flex;align-items:center;gap:13px;margin-bottom:16px;padding:14px 17px;border:1px solid #bfdbfe;border-radius:13px;background:#eff6ff;color:#1e4f87}.test-account-guide>span{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#fff;color:#2563eb;font-size:19px}.test-account-guide>div{display:flex;flex:1;flex-direction:column;gap:4px}.test-account-guide small{color:#55708f}.test-account-guide details{max-width:370px}.test-account-guide summary{cursor:pointer;font-size:10px;font-weight:800;color:#1765bd}.test-account-guide details p{margin:8px 0 0;font-size:9px;line-height:1.6}
@media(max-width:800px){.test-account-guide{align-items:flex-start;flex-wrap:wrap}.test-account-guide details{width:100%;max-width:none;margin-left:51px}}
.step-card-nav{position:static;margin-bottom:12px}
.step-card-nav a{position:relative;display:grid;grid-template-columns:38px 1fr;min-height:88px;padding:15px;transition:.18s}
.step-card-nav a:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.step-card-nav a>span{grid-row:1/3;width:36px;height:36px}
.step-card-nav a>div{align-self:center}
.step-card-nav a>b{grid-column:2;font-size:8px;font-weight:600;color:#8a96a8}
.step-card-nav a.active{border:2px solid #2381dd;background:#eff7ff;box-shadow:0 7px 18px rgba(35,129,221,.13)}
.step-card-nav a.active>span{background:#2381dd;color:#fff}
.step-card-nav a.active:after{content:"TAHAP AKTIF";position:absolute;right:9px;top:8px;color:#2374c7;font-size:6px;font-weight:900;letter-spacing:.7px}
.active-step-caption{display:flex;align-items:center;gap:12px;margin-bottom:15px;padding:10px 14px;border-left:4px solid #2381dd;border-radius:0 9px 9px 0;background:#fff}
.active-step-caption>span{font-size:8px;font-weight:900;letter-spacing:1px;color:#2374c7}.active-step-caption>strong{font-size:11px}.active-step-caption>small{margin-left:auto;color:var(--muted);font-size:8px}
@media(max-width:700px){.step-card-nav a{min-height:72px}.active-step-caption{align-items:flex-start;flex-direction:column;gap:4px}.active-step-caption>small{margin-left:0}}

/* Audit kepatuhan dan lingkungan PPI */
.ppi-audit-regulation{display:flex;align-items:center;gap:13px;margin-bottom:15px;padding:13px 16px;border:1px solid #bfe4db;border-radius:12px;background:#f0faf7;color:#176b5a}
.ppi-audit-regulation>span{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#daf3eb;font-size:19px;font-weight:900}
.ppi-audit-regulation>div{display:flex;flex-direction:column;gap:3px}.ppi-audit-regulation strong{font-size:11px}.ppi-audit-regulation small{font-size:8px;line-height:1.55;color:#52796f}
.ppi-audit-type-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:16px}
.ppi-audit-type-grid>a{display:grid;grid-template-columns:38px 1fr;gap:10px;min-width:0;padding:13px;border:1px solid var(--border);border-radius:12px;background:#fff;color:inherit;transition:.18s}
.ppi-audit-type-grid>a:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.ppi-audit-type-grid>a.active{border-color:var(--audit);box-shadow:inset 0 3px 0 var(--audit),0 6px 15px rgba(31,55,78,.08)}
.ppi-audit-type-grid>a>span{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:color-mix(in srgb,var(--audit) 13%,white);color:var(--audit);font-size:17px;font-weight:900}
.ppi-audit-type-grid>a>div{display:flex;flex-direction:column;gap:4px;min-width:0}.ppi-audit-type-grid strong{font-size:10px}.ppi-audit-type-grid small{font-size:7px;line-height:1.4;color:var(--muted)}
.ppi-audit-type-grid footer{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:9px;border-top:1px solid var(--border)}
.ppi-audit-type-grid footer b{font-size:9px;color:var(--audit)}.ppi-audit-type-grid footer em{font-size:7px;font-style:normal;color:var(--muted)}
.ppi-audit-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:16px;align-items:start}.ppi-audit-main,.ppi-audit-history{min-width:0}
.ppi-checklist-card{padding:0;overflow:hidden}.ppi-checklist-card>form{padding:18px}
.ppi-checklist-head{display:flex;align-items:center;gap:13px;padding:17px 18px;border-bottom:1px solid var(--border);background:linear-gradient(100deg,color-mix(in srgb,var(--audit) 8%,white),#fff)}
.ppi-checklist-head>span{display:grid;place-items:center;width:43px;height:43px;border-radius:12px;background:var(--audit);color:#fff;font-size:19px;font-weight:900}
.ppi-checklist-head>div{flex:1}.ppi-checklist-head h2{margin:2px 0 4px}.ppi-checklist-head p:last-child{margin:0;font-size:9px;color:var(--muted)}
.ppi-checklist-head>b{padding:7px 10px;border-radius:9px;background:#fff;border:1px solid color-mix(in srgb,var(--audit) 35%,white);color:var(--audit);font-size:9px;white-space:nowrap}
.ppi-audit-meta{display:grid;grid-template-columns:1fr 1fr 1.25fr;gap:11px;margin-bottom:14px}
.ppi-checklist-legend{display:flex;justify-content:flex-end;gap:14px;margin:2px 0 9px;color:var(--muted);font-size:8px;font-weight:700}.ppi-checklist-legend span{display:flex;align-items:center;gap:5px}.ppi-checklist-legend i{width:8px;height:8px;border-radius:50%}.ppi-checklist-legend .yes{background:#1d9b67}.ppi-checklist-legend .no{background:#dd4d5e}.ppi-checklist-legend .na{background:#8a96a8}
.ppi-checklist-items{display:flex;flex-direction:column;border:1px solid var(--border);border-radius:11px;overflow:hidden}
.ppi-checklist-items article{display:grid;grid-template-columns:28px minmax(0,1fr) 150px;gap:10px;align-items:center;padding:11px;border-top:1px solid var(--border);background:#fff}.ppi-checklist-items article:first-child{border-top:0}.ppi-checklist-items article:hover{background:#fafcfd}
.ppi-checklist-items article>span{display:grid;place-items:center;width:25px;height:25px;border-radius:8px;background:#edf3f7;color:#526176;font-size:9px;font-weight:900}
.ppi-checklist-items article>div{display:flex;flex-direction:column;gap:6px}.ppi-checklist-items article strong{font-size:10px;line-height:1.5}.ppi-checklist-items article>div input{padding:7px 9px;font-size:8px;background:#fafbfd}
.ppi-checklist-items fieldset{display:grid;grid-template-columns:repeat(3,1fr);gap:5px;padding:0;border:0;margin:0}
.ppi-checklist-items fieldset label{position:relative;cursor:pointer}.ppi-checklist-items fieldset input{position:absolute;opacity:0;pointer-events:none}
.ppi-checklist-items fieldset span{display:grid;place-items:center;height:34px;border:1px solid var(--border);border-radius:8px;background:#fff;color:#7c8998;font-size:9px;font-weight:900;transition:.15s}
.ppi-checklist-items .result-yes input:checked+span{border-color:#1d9b67;background:#e4f7ef;color:#13744d}.ppi-checklist-items .result-no input:checked+span{border-color:#dd4d5e;background:#ffeaed;color:#b3263a}.ppi-checklist-items .result-na input:checked+span{border-color:#8a96a8;background:#edf1f4;color:#546171}
.ppi-checklist-items fieldset input:focus-visible+span{outline:2px solid #2684ff;outline-offset:1px}
.ppi-audit-result{display:grid;grid-template-columns:1.7fr repeat(3,1fr);gap:1px;margin:14px 0;background:var(--border);border:1px solid var(--border);border-radius:11px;overflow:hidden}
.ppi-audit-result>div{display:flex;flex-direction:column;justify-content:center;gap:3px;min-height:65px;padding:10px 13px;background:#f8fafb}.ppi-audit-result small{font-size:7px;font-weight:800;color:var(--muted)}.ppi-audit-result strong{font-size:20px;color:#526176}.ppi-audit-result b{font-size:17px}.ppi-audit-result span{font-size:8px;color:var(--muted)}
.ppi-audit-result.met>div:first-child{background:#e7f8f0}.ppi-audit-result.met strong{color:#158157}.ppi-audit-result.not-met>div:first-child{background:#fff0f1}.ppi-audit-result.not-met strong{color:#bd3043}
.ppi-audit-history{position:sticky;top:92px}.ppi-audit-history-list{display:flex;flex-direction:column;gap:8px}
.ppi-audit-history-list article{display:grid;grid-template-columns:1fr auto;gap:6px 10px;padding:11px;border:1px solid var(--border);border-left:3px solid #26a376;border-radius:9px;background:#fff}
.ppi-audit-history-list article.follow_up{border-left-color:#e08b2f}.ppi-audit-history-list article>div{display:flex;flex-direction:column;gap:4px}.ppi-audit-history-list article strong{font-size:10px}.ppi-audit-history-list article small,.ppi-audit-history-list article span{font-size:8px;color:var(--muted)}.ppi-audit-history-list article>b{font-size:13px;color:#17825b}.ppi-audit-history-list article.follow_up>b{color:#b36b20}.ppi-audit-history-list article>p{grid-column:1/-1;margin:3px 0 0;padding-top:7px;border-top:1px dashed var(--border);font-size:8px;line-height:1.5;color:#7d5a2d}
@media(max-width:1200px){.ppi-audit-type-grid{grid-template-columns:repeat(3,1fr)}.ppi-audit-layout{grid-template-columns:1fr}.ppi-audit-history{position:static}}
@media(max-width:760px){.ppi-audit-type-grid{grid-template-columns:1fr 1fr}.ppi-audit-meta{grid-template-columns:1fr}.ppi-checklist-head{align-items:flex-start;flex-wrap:wrap}.ppi-checklist-head>b{margin-left:56px}.ppi-checklist-items article{grid-template-columns:28px 1fr}.ppi-checklist-items fieldset{grid-column:2}.ppi-audit-result{grid-template-columns:1fr 1fr}.ppi-audit-result>div:first-child{grid-column:1/-1}}
@media(max-width:500px){.ppi-audit-type-grid{grid-template-columns:1fr}.ppi-checklist-items article{grid-template-columns:1fr}.ppi-checklist-items article>span{display:none}.ppi-checklist-items fieldset{grid-column:1}.ppi-audit-result{grid-template-columns:1fr}.ppi-audit-result>div:first-child{grid-column:auto}}

/* Survei budaya keselamatan pasien dan PDCA */
.culture-public-page{background:linear-gradient(145deg,#fff7f9,#f3f8fd);color:var(--text)}.culture-public-header .brand-mark{background:linear-gradient(145deg,#c23d5a,#8d2540);font-size:9px}.culture-public-shell{max-width:1120px;margin:auto;padding:34px 20px 65px}.culture-public-hero{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:16px;padding:30px 34px;border-radius:18px;background:radial-gradient(circle at 90% 15%,rgba(255,255,255,.15),transparent 25%),linear-gradient(125deg,#7c2038,#c44660);color:#fff;box-shadow:0 12px 30px rgba(125,32,56,.15)}.culture-public-hero>div:first-child{max-width:720px}.culture-public-hero .eyebrow{color:#ffc4d1}.culture-public-hero h1{font-size:29px;margin-bottom:10px}.culture-public-hero p:last-child{margin:0;color:#f6ced7;font-size:11px;line-height:1.7}.culture-public-hero>div:last-child{display:flex;flex-direction:column;align-items:center;min-width:125px;padding:17px;border:1px solid rgba(255,255,255,.2);border-radius:14px;background:rgba(255,255,255,.1)}.culture-public-hero>div:last-child strong{font-size:26px}.culture-public-hero>div:last-child span{font-size:10px;font-weight:800}.culture-public-hero>div:last-child small{margin-top:4px;font-size:7px;color:#f1beca}.culture-public-page .culture-survey-note{max-width:1100px;margin:0 auto 15px}.culture-public-page .culture-scale-key{top:84px}.public-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.culture-thanks-card .thanks-check{background:#ffe6ec;color:#b52d4b}
.safety-culture-icon{--module:#c2415b;background:#fff0f3;color:#b52d4b}.pdca-page-icon{--module:#176fd1;background:#eaf3ff;color:#176fd1;font-size:8px}
.safety-culture-filter{display:flex;align-items:flex-end;gap:10px;margin-bottom:15px;padding:13px 15px}.safety-culture-filter label{width:220px}.safety-culture-filter .button{margin-bottom:1px}
.culture-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:16px}.culture-kpis article{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--border);border-radius:12px;background:#fff}.culture-kpis article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#eaf3ff;color:#176fd1;font-size:20px;font-weight:900}.culture-kpis article>div{display:grid;grid-template-columns:auto 1fr;align-items:end;flex:1}.culture-kpis small{grid-column:1/-1;font-size:8px;color:var(--muted)}.culture-kpis strong{font-size:23px}.culture-kpis p{margin:0 0 3px;text-align:right;color:var(--muted);font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:120px}.culture-kpis article.good>span{background:#e4f7ed;color:#128354}.culture-kpis article.warning>span{background:#fff3df;color:#bd7611}
.culture-dashboard-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(280px,.7fr);gap:16px;margin-bottom:16px}.culture-legend{display:flex;gap:12px;font-size:7px;font-weight:800}.culture-legend span:before{content:"";display:inline-block;width:7px;height:7px;margin-right:4px;border-radius:50%}.culture-legend .strong:before{background:#159b62}.culture-legend .develop:before{background:#e49a13}.culture-legend .priority:before{background:#dc3545}
.dimension-list{display:flex;flex-direction:column}.dimension-list article{display:grid;grid-template-columns:minmax(180px,1.3fr) minmax(130px,1fr) 48px 75px;align-items:center;gap:12px;padding:10px 0;border-top:1px solid #edf1f5}.dimension-list article:first-child{border-top:0}.dimension-list article>div:first-child{display:flex;flex-direction:column;gap:4px}.dimension-list strong{font-size:10px}.dimension-list small{font-size:7px;color:var(--muted)}.dimension-list article>b{text-align:right;font-size:11px}.dimension-list article>a{text-align:right;color:#2673c8;font-size:8px;font-weight:800}.dimension-meter{height:8px;overflow:hidden;border-radius:8px;background:#edf1f5}.dimension-meter i{display:block;height:100%;border-radius:8px}.dimension-meter i.strong{background:#159b62}.dimension-meter i.develop{background:#e49a13}.dimension-meter i.priority{background:#dc5260}
.unit-culture-list{display:flex;flex-direction:column}.unit-culture-list a{display:flex;align-items:center;gap:10px;padding:11px 0;border-top:1px solid #edf1f5}.unit-culture-list a:first-child{border-top:0}.unit-culture-list a>div{display:flex;flex:1;flex-direction:column;gap:3px}.unit-culture-list strong{font-size:10px}.unit-culture-list small{font-size:8px;color:var(--muted)}.unit-culture-list b{padding:6px 8px;border-radius:8px;font-size:10px}.unit-culture-list b.good{background:#e4f7ed;color:#128354}.unit-culture-list b.develop{background:#fff3df;color:#a8670d}.unit-culture-list b.priority{background:#ffeaec;color:#bd3041}
.pdca-chart-panel{margin-bottom:16px}.pdca-chart-panel>.panel-heading>span{font-size:9px;color:var(--muted)}.pdca-chart-layout{display:grid;grid-template-columns:220px minmax(320px,1fr) 250px;gap:24px;align-items:center}.pdca-donut-wrap{display:flex;flex-direction:column;align-items:center;gap:15px;padding-right:22px;border-right:1px solid var(--border)}.pdca-donut{width:156px;height:156px;border-radius:50%;display:grid;place-items:center;background:var(--pdca-chart);position:relative}.pdca-donut:after{content:"";position:absolute;width:101px;height:101px;border-radius:50%;background:#fff;box-shadow:0 2px 10px rgba(30,55,85,.06)}.pdca-donut>div{z-index:1;display:flex;flex-direction:column;align-items:center}.pdca-donut strong{font-size:29px;color:#223047}.pdca-donut small{font-size:8px;color:var(--muted);font-weight:700}.pdca-chart-summary{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:8px}.pdca-chart-summary>div{display:flex;flex-direction:column;align-items:center;gap:3px;padding:8px;border-radius:8px;background:#f5f8fb}.pdca-chart-summary small{font-size:7px;color:var(--muted)}.pdca-chart-summary strong{font-size:13px;color:#176fd1}.pdca-chart-summary .danger{background:#fff0f1}.pdca-chart-summary .danger strong{color:#c63042}
.pdca-stage-chart{display:flex;flex-direction:column;gap:13px}.pdca-stage-chart article{display:grid;grid-template-columns:110px minmax(120px,1fr) 100px;align-items:center;gap:10px}.pdca-stage-chart header{display:flex;align-items:center;gap:7px}.pdca-stage-chart header>span{width:9px;height:9px;border-radius:3px;background:var(--stage-color)}.pdca-stage-chart header strong{font-size:10px}.pdca-stage-chart header b{margin-left:auto;font-size:11px}.pdca-stage-chart article>div{height:10px;border-radius:8px;background:#edf1f5;overflow:hidden}.pdca-stage-chart article>div i{display:block;height:100%;min-width:0;border-radius:8px;background:var(--stage-color);transition:.25s}.pdca-stage-chart article>small{font-size:7px;color:var(--muted)}.pdca-chart-insight{align-self:stretch;display:flex;flex-direction:column;justify-content:center;padding:17px;border-radius:11px;background:#f5f8fc}.pdca-chart-insight .eyebrow{margin-bottom:7px}.pdca-chart-insight h3{margin:0 0 7px;font-size:13px;line-height:1.4}.pdca-chart-insight>p:not(.eyebrow){margin:0 0 13px;color:var(--muted);font-size:9px;line-height:1.6}.pdca-overdue-alert{display:flex;gap:8px;margin-bottom:12px;padding:9px;border-radius:8px;background:#ffeaec;color:#ad2c3a}.pdca-overdue-alert>span{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#d63b4c;color:#fff;font-size:9px;font-weight:900}.pdca-overdue-alert>div{display:flex;flex-direction:column;gap:2px}.pdca-overdue-alert strong{font-size:8px}.pdca-overdue-alert small{font-size:7px}
.pdca-board{margin-bottom:15px}.pdca-columns{display:grid;grid-template-columns:repeat(5,minmax(170px,1fr));gap:10px;overflow:auto}.pdca-columns>section{min-width:170px;padding:9px;border:1px solid var(--border);border-radius:11px;background:#f8fafc}.pdca-columns>section>header{display:flex;align-items:center;gap:7px;padding:2px 2px 10px}.pdca-columns>section>header span{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:#176fd1;color:#fff;font-size:9px;font-weight:900}.pdca-columns>section>header strong{font-size:10px}.pdca-columns>section>header b{margin-left:auto;padding:3px 6px;border-radius:8px;background:#e7edf4;color:#607087;font-size:8px}.pdca-columns>section>div{display:flex;flex-direction:column;gap:7px}.pdca-card{display:flex;flex-direction:column;gap:5px;padding:10px;border:1px solid var(--border);border-left:3px solid #4a91df;border-radius:8px;background:#fff}.pdca-card.overdue{border-left-color:#d94757}.pdca-card>small{font-size:7px;color:#2373c8;font-weight:800}.pdca-card>strong{font-size:9px;line-height:1.45}.pdca-card>span{font-size:7px;color:var(--muted)}.pdca-card footer{display:flex;justify-content:space-between;gap:6px;padding-top:6px;border-top:1px dashed var(--border)}.pdca-card footer em{max-width:80px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:7px;color:var(--muted);font-style:normal}.pdca-card footer b{font-size:7px;color:#5e6d81}.pdca-card.overdue footer b{color:#c52e3d}.pdca-empty{padding:18px;text-align:center;color:#9aa6b6;font-size:8px}
.culture-survey-note{display:flex;align-items:center;gap:13px;margin-bottom:15px;padding:14px 17px;border:1px solid #bfe5d2;border-radius:12px;background:#f0faf5;color:#176b4a}.culture-survey-note>span{font-size:23px}.culture-survey-note strong{font-size:11px}.culture-survey-note p{margin:4px 0 0;font-size:9px;line-height:1.5;color:#527767}.culture-survey-form{display:flex;flex-direction:column;gap:14px;max-width:1100px;margin:auto}.anonymous-choice{flex-direction:row;align-items:center;padding:12px;border:1px solid #cce6da;border-radius:10px;background:#f4fbf7;cursor:pointer}.anonymous-choice input{width:auto}.anonymous-choice>span{display:flex;flex-direction:column;gap:3px}.anonymous-choice small{font-size:8px;color:var(--muted);font-weight:500}
.culture-scale-key{position:sticky;top:85px;z-index:12;display:flex;align-items:center;justify-content:center;gap:12px;padding:10px 14px;border:1px solid var(--border);border-radius:11px;background:rgba(255,255,255,.96);box-shadow:0 5px 15px rgba(30,55,85,.07)}.culture-scale-key>strong{font-size:9px;margin-right:5px}.culture-scale-key>span{display:flex;align-items:center;gap:5px;color:#64748b;font-size:8px}.culture-scale-key b{display:grid;place-items:center;width:21px;height:21px;border-radius:6px;background:#edf3fa;color:#176fd1}
.culture-question-group{padding:0;overflow:hidden}.culture-question-group>header{display:flex;align-items:center;gap:12px;padding:15px 18px;border-bottom:1px solid var(--border);background:linear-gradient(100deg,#f0f6fd,#fff)}.culture-question-group>header>span{display:grid;place-items:center;width:39px;height:39px;border-radius:10px;background:#176fd1;color:#fff;font-size:11px;font-weight:900}.culture-question-group>header h2{margin:0 0 3px}.culture-question-group>header .eyebrow{margin-bottom:3px}.culture-question-group>header small{font-size:8px;color:var(--muted)}.culture-question-group>article{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:15px;align-items:center;padding:15px 18px;border-top:1px solid #edf1f5}.culture-question-group>article:first-of-type{border-top:0}.culture-question-group>article>div{display:flex;align-items:flex-start;gap:10px}.culture-question-group>article>div>strong{display:grid;place-items:center;min-width:32px;height:25px;border-radius:7px;background:#edf3fa;color:#3975b7;font-size:8px}.culture-question-group>article p{margin:3px 0 0;font-size:11px;line-height:1.55}.culture-question-group fieldset{display:grid;grid-template-columns:repeat(5,1fr);gap:5px;padding:0;border:0}.culture-question-group fieldset label{position:relative;cursor:pointer}.culture-question-group fieldset input{position:absolute;opacity:0}.culture-question-group fieldset span{display:flex;flex-direction:column;align-items:center;gap:2px;padding:7px;border:1px solid var(--border);border-radius:8px;background:#fff}.culture-question-group fieldset b{font-size:11px}.culture-question-group fieldset small{font-size:6px;color:var(--muted)}.culture-question-group fieldset input:checked+span{border-color:#176fd1;background:#eaf3ff;color:#176fd1;box-shadow:0 0 0 2px rgba(23,111,209,.08)}.culture-survey-submit{position:sticky;bottom:12px;z-index:15;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:13px 16px;border:1px solid #cbd8e8;border-radius:12px;background:rgba(255,255,255,.96);box-shadow:0 8px 25px rgba(26,52,83,.15)}.culture-survey-submit>div{display:flex;align-items:center;gap:10px;flex:1}.culture-survey-submit strong{font-size:9px;white-space:nowrap}.survey-progress{height:7px;max-width:260px;flex:1;border-radius:8px;background:#e8edf3;overflow:hidden}.survey-progress i{display:block;width:0;height:100%;border-radius:8px;background:#159b62;transition:.2s}
.pdca-stage-badge{padding:8px 13px;border-radius:10px;background:#eaf3ff;color:#176fd1;font-size:10px;font-weight:900;text-transform:uppercase}.pdca-stage-badge.completed{background:#e4f7ed;color:#128354}.pdca-form-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:16px}.pdca-form-flow>div{display:grid;grid-template-columns:34px 1fr;align-items:center;padding:11px;border:1px solid var(--border);border-radius:10px;background:#fff;color:#8b97a8}.pdca-form-flow span{grid-row:1/3;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#edf1f5;font-size:10px;font-weight:900}.pdca-form-flow strong{font-size:10px}.pdca-form-flow small{font-size:7px}.pdca-form-flow>div.active{border-color:#a9cbef;color:#176fd1;background:#f4f9ff}.pdca-form-flow>div.active span{background:#176fd1;color:#fff}
.pdca-form-layout{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:16px;align-items:start}.pdca-form-main{display:flex;flex-direction:column;gap:14px}.pdca-stage-section>header{display:flex;align-items:center;gap:11px;margin-bottom:17px;padding-bottom:14px;border-bottom:1px solid var(--border)}.pdca-stage-section>header>span{display:grid;place-items:center;width:36px;height:36px;border-radius:10px;background:#176fd1;color:#fff;font-size:15px;font-weight:900}.pdca-stage-section.do>header>span{background:#7c3aed}.pdca-stage-section.check>header>span{background:#e49a13}.pdca-stage-section.act>header>span{background:#159b62}.pdca-stage-section>header .eyebrow{margin-bottom:3px}.pdca-stage-section>header h2{margin:0}.pdca-form-side{position:sticky;top:92px;display:flex;flex-direction:column;gap:14px}.pdca-form-side>section{display:flex;flex-direction:column;gap:13px}.pdca-form-side h3{margin:0 0 3px}.pdca-audit-info>div{display:flex;flex-direction:column;gap:3px;padding-top:10px;border-top:1px solid var(--border)}.pdca-audit-info small,.pdca-audit-info span{font-size:8px;color:var(--muted)}.pdca-audit-info strong{font-size:10px}
@media(max-width:1100px){.culture-dashboard-grid{grid-template-columns:1fr}.culture-kpis{grid-template-columns:1fr 1fr}.pdca-chart-layout{grid-template-columns:190px 1fr}.pdca-chart-insight{grid-column:1/-1}.pdca-form-layout{grid-template-columns:1fr}.pdca-form-side{position:static}.pdca-columns{grid-template-columns:repeat(5,220px)}}
@media(max-width:760px){.culture-public-shell{padding:22px 13px 50px}.culture-public-hero{align-items:flex-start;flex-direction:column;padding:23px}.culture-public-hero h1{font-size:24px}.culture-public-hero>div:last-child{align-items:flex-start;width:100%}.safety-culture-filter{align-items:stretch;flex-direction:column}.safety-culture-filter label{width:100%}.culture-kpis{grid-template-columns:1fr}.dimension-list article{grid-template-columns:1fr 50px}.dimension-list article>div:first-child{grid-column:1/-1}.dimension-list article>a{display:none}.culture-legend{display:none}.pdca-chart-layout{grid-template-columns:1fr}.pdca-donut-wrap{padding:0 0 18px;border-right:0;border-bottom:1px solid var(--border)}.pdca-stage-chart article{grid-template-columns:80px 1fr}.pdca-stage-chart article>small{grid-column:2}.pdca-chart-insight{grid-column:auto}.culture-scale-key{position:static;overflow:auto;justify-content:flex-start}.culture-scale-key>span{min-width:80px}.culture-question-group>article{grid-template-columns:1fr}.culture-survey-submit{align-items:stretch;flex-direction:column}.culture-survey-submit>div{width:100%}.culture-survey-submit .button{width:100%}.pdca-form-flow{grid-template-columns:1fr 1fr}}

/* Ruang kerja tindak lanjut indikator */
.follow-up-workspace-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:16px}.follow-up-workspace-kpis article{display:flex;align-items:center;gap:12px;padding:16px;border:1px solid var(--border);border-radius:12px;background:#fff}.follow-up-workspace-kpis article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#eaf3ff;color:#176fd1;font-size:17px;font-weight:900}.follow-up-workspace-kpis article>div{display:flex;flex-direction:column;gap:3px}.follow-up-workspace-kpis small{font-size:8px;color:var(--muted)}.follow-up-workspace-kpis strong{font-size:22px}.follow-up-workspace-kpis article.danger>span{background:#ffeaec;color:#bd3041}.follow-up-workspace-panel{margin-bottom:16px}.follow-up-priority-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.follow-up-priority-card{display:flex;flex-direction:column;padding:15px;border:1px solid var(--border);border-left:4px solid #d94757;border-radius:11px;background:#fff}.follow-up-priority-card.overdue{border-left-color:#ad2637;background:#fffafb}.follow-up-priority-card>header{display:flex;align-items:center;justify-content:space-between;gap:8px}.follow-up-priority-card>header small{font-size:8px;color:var(--muted);font-weight:800}.follow-up-priority-card>h3{margin:13px 0 4px;font-size:12px;line-height:1.45}.follow-up-priority-card>p{margin:0 0 13px;color:var(--muted);font-size:8px}.follow-up-achievement{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;overflow:hidden;margin-bottom:12px;border:1px solid var(--border);border-radius:9px;background:var(--border)}.follow-up-achievement>div{display:flex;flex-direction:column;gap:4px;padding:10px;background:#f8fafc}.follow-up-achievement small{font-size:7px;color:var(--muted)}.follow-up-achievement strong{font-size:10px}.follow-up-achievement>div:first-child strong{color:#c52e3d;font-size:14px}.follow-up-active-note{display:flex;justify-content:space-between;gap:10px;margin-bottom:12px;padding:9px;border-radius:8px;background:#f3f7fb}.follow-up-active-note span{display:flex;flex-direction:column;gap:3px;color:var(--muted);font-size:7px}.follow-up-active-note strong{color:var(--text);font-size:8px}.follow-up-priority-card>.button{margin-top:auto}.follow-up-history-panel .table-sub{display:block;margin-top:4px}.follow-up-history-panel td:nth-child(2){max-width:310px;line-height:1.45}.follow-up-history-panel td:last-child{text-align:right}.follow-up-history-panel td:last-child a{font-size:8px;font-weight:800;color:#176fd1}
@media(max-width:1100px){.follow-up-priority-grid{grid-template-columns:1fr 1fr}.follow-up-workspace-kpis{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.follow-up-priority-grid,.follow-up-workspace-kpis{grid-template-columns:1fr}.follow-up-achievement{grid-template-columns:1fr}.follow-up-active-note{flex-direction:column}}

/* Chart Insiden Keselamatan Pasien */
.ikp-chart-panel{margin-bottom:16px}.ikp-chart-heading{align-items:flex-end}.ikp-chart-heading form label{display:flex;align-items:center;gap:8px;font-size:8px}.ikp-chart-heading select{min-width:100px}.ikp-chart-layout{display:grid;grid-template-columns:320px minmax(390px,1fr) 245px;gap:22px;align-items:stretch}.ikp-type-chart{display:grid;grid-template-columns:130px 1fr;gap:17px;align-items:center;padding-right:20px;border-right:1px solid var(--border)}.ikp-donut{position:relative;display:grid;place-items:center;width:130px;height:130px;border-radius:50%;background:var(--ikp-donut)}.ikp-donut:after{content:"";position:absolute;width:82px;height:82px;border-radius:50%;background:#fff;box-shadow:0 2px 8px rgba(26,52,83,.08)}.ikp-donut>div{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center}.ikp-donut strong{font-size:25px}.ikp-donut small{font-size:7px;color:var(--muted);font-weight:800}.ikp-type-legend{display:flex;flex-direction:column}.ikp-type-legend>div{display:grid;grid-template-columns:8px minmax(0,1fr) 21px 34px;align-items:center;gap:6px;padding:7px 0;border-top:1px solid #edf1f5}.ikp-type-legend>div:first-child{border-top:0}.ikp-type-legend i,.ikp-inline-legend i{width:7px;height:7px;border-radius:3px;background:var(--type-color)}.ikp-type-legend span{display:flex;min-width:0;flex-direction:column;gap:2px}.ikp-type-legend span strong{font-size:8px}.ikp-type-legend span small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:6px;color:var(--muted)}.ikp-type-legend b{font-size:10px;text-align:right}.ikp-type-legend em{font-size:7px;color:var(--muted);font-style:normal;text-align:right}.ikp-monthly-chart{min-width:0;padding-right:20px;border-right:1px solid var(--border)}.ikp-monthly-chart>header{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-bottom:12px}.ikp-monthly-chart h3,.ikp-grade-chart h3{margin:0;font-size:12px}.ikp-monthly-chart>header span{font-size:7px;color:var(--muted)}.ikp-monthly-plot{display:grid;grid-template-columns:repeat(12,minmax(22px,1fr));align-items:end;gap:5px;height:170px;padding:10px 5px 0;border-bottom:1px solid #dce3ec;background:repeating-linear-gradient(to bottom,#fff 0,#fff 41px,#edf1f5 42px)}.ikp-month-column{display:grid;grid-template-rows:13px 132px 20px;align-items:end;height:100%;text-align:center}.ikp-month-value{font-size:7px;font-weight:900;color:#4d5a6c}.ikp-stack{display:flex;flex-direction:column-reverse;justify-content:flex-start;align-self:end;width:70%;height:125px;margin:auto}.ikp-stack i{display:block;min-height:0;background:var(--type-color);border-radius:3px 3px 0 0;box-shadow:0 0 0 .5px rgba(255,255,255,.5)}.ikp-month-column>small{padding-top:6px;font-size:7px;color:var(--muted)}.ikp-inline-legend{display:flex;justify-content:center;gap:11px;margin-top:11px}.ikp-inline-legend span{display:flex;align-items:center;gap:4px;font-size:7px;color:var(--muted)}.ikp-grade-chart{display:flex;flex-direction:column}.ikp-grade-chart>.eyebrow{margin-bottom:4px}.ikp-grade-chart h3{margin-bottom:14px}.ikp-grade-row{display:grid;grid-template-columns:48px 1fr 18px;align-items:center;gap:7px;margin-bottom:10px}.ikp-grade-row>span{display:flex;align-items:center;gap:5px;font-size:8px}.ikp-grade-row>span i{width:8px;height:8px;border-radius:50%}.ikp-grade-row>span i.blue{background:#2784d7}.ikp-grade-row>span i.green{background:#19a66c}.ikp-grade-row>span i.yellow{background:#e2ad19}.ikp-grade-row>span i.red{background:#d93f51}.ikp-grade-row>div{height:8px;border-radius:8px;background:#edf1f5;overflow:hidden}.ikp-grade-row>div b{display:block;height:100%;border-radius:8px;background:#6c8eb5}.ikp-grade-row>strong{font-size:9px;text-align:right}.ikp-chart-insight{display:flex;align-items:center;gap:9px;margin-top:auto;padding:11px;border-radius:9px;background:#f2f6fa}.ikp-chart-insight>span{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#176fd1;color:#fff;font-size:9px;font-weight:900}.ikp-chart-insight p{display:flex;flex-direction:column;gap:3px;margin:0}.ikp-chart-insight strong{font-size:8px}.ikp-chart-insight small{font-size:7px;color:var(--muted)}
@media(max-width:1400px){.ikp-chart-layout{grid-template-columns:300px minmax(0,1fr)}.ikp-grade-chart{grid-column:1/-1;display:grid;grid-template-columns:140px repeat(4,minmax(90px,1fr)) 220px;align-items:center;gap:9px}.ikp-grade-chart>.eyebrow,.ikp-grade-chart>h3{grid-column:1}.ikp-grade-chart>h3{margin:0}.ikp-grade-row{margin:0}.ikp-chart-insight{margin:0}}
@media(max-width:900px){.ikp-chart-layout{grid-template-columns:1fr}.ikp-type-chart,.ikp-monthly-chart{padding:0 0 18px;border-right:0;border-bottom:1px solid var(--border)}.ikp-grade-chart{grid-column:auto;display:flex}.ikp-grade-chart h3{margin-bottom:14px}.ikp-chart-insight{margin-top:10px}.ikp-chart-heading{align-items:flex-start;flex-direction:column}}
@media(max-width:560px){.ikp-type-chart{grid-template-columns:1fr}.ikp-donut{margin:auto}.ikp-monthly-plot{overflow-x:auto;grid-template-columns:repeat(12,34px)}.ikp-inline-legend{flex-wrap:wrap}}

/* Fishbone, RCA, dan PDCA IKP */
.incident-workflow{grid-template-columns:repeat(5,1fr)}.fishbone-stage{border-left:3px solid #3b82c4;padding-left:17px}.fishbone-workspace{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:16px;align-items:start}.fishbone-diagram-panel>.panel-heading>small{font-size:7px;color:var(--muted)}.fishbone-diagram{padding:12px 5px}.fishbone-cause-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px 38px;padding:0 42px}.fishbone-cause-grid article{position:relative;display:flex;gap:9px;min-height:88px;padding:11px;border:1px solid var(--border);border-radius:10px;background:#f9fbfd}.fishbone-cause-grid article:after{content:"";position:absolute;left:50%;width:2px;height:37px;background:#7fa5cb}.fishbone-cause-grid article.top:after{bottom:-37px;transform:rotate(-35deg);transform-origin:top}.fishbone-cause-grid article.bottom:after{top:-37px;transform:rotate(35deg);transform-origin:bottom}.fishbone-cause-grid article>span{display:grid;place-items:center;min-width:28px;height:28px;border-radius:8px;background:#e8f2fc;color:#2675bd;font-size:11px}.fishbone-cause-grid article>div{min-width:0}.fishbone-cause-grid strong{font-size:9px}.fishbone-cause-grid p{margin:5px 0 0;color:#637187;font-size:8px;line-height:1.45}.fishbone-spine{position:relative;display:grid;grid-template-columns:1fr 22px 180px;align-items:center;gap:0;margin:31px 0}.fishbone-spine>i{height:4px;border-radius:4px;background:#326fa9}.fishbone-spine>b{color:#326fa9;font-size:22px;transform:translateX(-5px)}.fishbone-spine>div{display:flex;flex-direction:column;gap:4px;padding:12px;border:2px solid #d3495a;border-radius:10px;background:#fff3f4}.fishbone-spine small{font-size:7px;color:#b62f40;font-weight:900}.fishbone-spine strong{font-size:9px;line-height:1.45}.fishbone-conclusion{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}.fishbone-conclusion>div{padding:12px;border-radius:9px;background:#f2f6fa}.fishbone-conclusion>div:last-child{background:#fff0f1}.fishbone-conclusion small{font-size:7px;color:var(--muted);font-weight:900}.fishbone-conclusion p{margin:5px 0 0;font-size:9px;line-height:1.5}.fishbone-form{position:sticky;top:90px;display:flex;flex-direction:column;gap:11px}.fishbone-input-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.fishbone-input-grid label>span{font-size:8px;font-weight:800}.rca-fishbone-context{display:flex;align-items:flex-start;gap:11px;padding:12px;border:1px solid #b9d8f4;border-radius:10px;background:#f2f8fe}.rca-fishbone-context>span{display:grid;place-items:center;min-width:32px;height:32px;border-radius:9px;background:#2478c7;color:#fff}.rca-fishbone-context>div{display:flex;flex-direction:column;gap:3px}.rca-fishbone-context small{font-size:7px;color:#2470b5;font-weight:900}.rca-fishbone-context strong{font-size:10px}.rca-fishbone-context p{margin:2px 0 0;color:var(--muted);font-size:8px}
.ikp-pdca-stage{scroll-margin-top:85px}.ikp-pdca-summary{display:flex;gap:8px}.ikp-pdca-summary>span{display:flex;align-items:center;gap:6px;padding:7px 9px;border:1px solid var(--border);border-radius:9px;background:#fff;font-size:7px;color:var(--muted)}.ikp-pdca-summary strong{font-size:11px;color:var(--text)}.ikp-pdca-summary .danger{border-color:#efb8c0;background:#fff3f4}.ikp-pdca-summary .danger strong{color:#bd3041}.ikp-pdca-layout{display:grid;grid-template-columns:minmax(0,1fr) 390px;gap:16px;align-items:start}.ikp-pdca-list{display:flex;flex-direction:column;gap:12px}.ikp-pdca-card{border-left:4px solid #2478c7}.ikp-pdca-card.overdue{border-left-color:#d53d4e}.ikp-pdca-card>header{display:flex;align-items:center;justify-content:space-between;gap:10px}.ikp-pdca-card>header>div{display:flex;align-items:center;gap:9px}.ikp-pdca-card>header small{font-size:8px;color:var(--muted)}.ikp-pdca-card>header>a{font-size:8px;color:#176fd1;font-weight:900}.ikp-pdca-card>h3{margin:13px 0;font-size:13px}.pdca-stage-badge.plan{background:#e8f2ff;color:#176fc8}.pdca-stage-badge.do{background:#eee8ff;color:#6841b6}.pdca-stage-badge.check{background:#fff2d9;color:#a66a08}.pdca-stage-badge.act{background:#e5f7ef;color:#168157}.ikp-pdca-progress{display:grid;grid-template-columns:repeat(4,1fr);position:relative;margin-bottom:14px}.ikp-pdca-progress:before{content:"";position:absolute;left:24px;right:24px;top:12px;height:2px;background:#dfe6ee}.ikp-pdca-progress>div{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:4px;color:#9aa5b4}.ikp-pdca-progress span{display:grid;place-items:center;width:25px;height:25px;border:3px solid #fff;border-radius:50%;background:#e8edf3;font-size:7px;font-weight:900}.ikp-pdca-progress small{font-size:7px}.ikp-pdca-progress .done{color:#176fd1}.ikp-pdca-progress .done span{background:#176fd1;color:#fff}.ikp-pdca-card dl{display:grid;grid-template-columns:1fr 1fr;margin:0;border:1px solid var(--border);border-radius:9px;overflow:hidden}.ikp-pdca-card dl>div{padding:11px;border-bottom:1px solid var(--border)}.ikp-pdca-card dl>div:nth-child(odd){border-right:1px solid var(--border)}.ikp-pdca-card dt{margin-bottom:5px;color:#7c899b;font-size:7px;font-weight:900;text-transform:uppercase}.ikp-pdca-card dd{margin:0;font-size:9px;line-height:1.5}.ikp-pdca-card dd small{display:block;margin-top:5px;color:#176fd1;font-size:7px}.ikp-pdca-card>footer{display:flex;justify-content:space-between;gap:12px;margin-top:12px;padding-top:10px;border-top:1px dashed var(--border)}.ikp-pdca-card>footer span{display:flex;flex-direction:column;gap:3px;color:var(--muted);font-size:7px}.ikp-pdca-card>footer strong{color:var(--text);font-size:8px}.ikp-pdca-card>footer b{color:#bd3041;font-size:8px}.ikp-pdca-form{position:sticky;top:90px;display:flex;flex-direction:column;gap:11px}.ikp-pdca-empty{display:flex;min-height:220px;flex-direction:column;align-items:center;justify-content:center;text-align:center}.ikp-pdca-empty>span{font-size:28px;color:#6fa4d5}.ikp-pdca-empty>strong{margin:8px 0 4px}.ikp-pdca-empty>p{color:var(--muted);font-size:8px}
@media(max-width:1180px){.fishbone-workspace,.ikp-pdca-layout{grid-template-columns:1fr}.fishbone-form,.ikp-pdca-form{position:static}.incident-workflow{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.fishbone-cause-grid{grid-template-columns:1fr;padding:0;gap:8px}.fishbone-cause-grid article:after{display:none}.fishbone-spine{grid-template-columns:1fr 18px 150px;margin:14px 0}.fishbone-input-grid,.fishbone-conclusion,.ikp-pdca-card dl{grid-template-columns:1fr}.ikp-pdca-card dl>div:nth-child(odd){border-right:0}.incident-workflow{grid-template-columns:1fr 1fr}.ikp-pdca-summary{flex-wrap:wrap}}

/* Fishbone rapi dan kartu analisis pada menu IKP */
.fishbone-workspace{grid-template-columns:minmax(0,1fr) 360px}.fishbone-diagram{position:relative;height:400px;margin-top:8px;padding:0;overflow:hidden}.fishbone-skeleton{position:absolute;inset:0;z-index:0;width:100%;height:100%}.fishbone-skeleton marker path{fill:#2f6fa9}.fishbone-main-bone{stroke:#2f6fa9;stroke-width:5;stroke-linecap:round}.fishbone-branch{stroke:#7fa8d0;stroke-width:3;stroke-linecap:round}.fishbone-cause{position:absolute;z-index:1;display:flex;gap:7px;width:22%;min-height:94px;padding:10px;border:1px solid #d7e1ec;border-radius:10px;background:#f9fbfd;box-shadow:0 3px 10px rgba(31,62,96,.04)}.fishbone-cause.cause-1{top:0;left:1%}.fishbone-cause.cause-2{top:0;left:25%}.fishbone-cause.cause-3{top:0;left:49%}.fishbone-cause.cause-4{bottom:0;left:1%}.fishbone-cause.cause-5{bottom:0;left:25%}.fishbone-cause.cause-6{bottom:0;left:49%}.fishbone-cause>span{display:grid;place-items:center;min-width:27px;height:27px;border-radius:8px;background:#e8f2fc;color:#2675bd;font-size:10px}.fishbone-cause>div{min-width:0}.fishbone-cause strong{font-size:8px;line-height:1.35}.fishbone-cause p{margin:5px 0 0;color:#637187;font-size:8px;line-height:1.45;overflow-wrap:anywhere}.fishbone-effect{position:absolute;z-index:1;top:50%;right:0;display:flex;width:18%;min-height:65px;transform:translateY(-50%);flex-direction:column;justify-content:center;gap:5px;padding:12px;border:2px solid #d3495a;border-radius:11px;background:#fff3f4}.fishbone-effect small{font-size:7px;color:#b62f40;font-weight:900}.fishbone-effect strong{font-size:9px;line-height:1.45;overflow-wrap:anywhere}
.ikp-analysis-menu{margin-bottom:16px}.ikp-analysis-menu>.panel-heading>small{font-size:8px;color:var(--muted)}.ikp-analysis-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.ikp-analysis-card{display:flex;min-width:0;flex-direction:column;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--text);box-shadow:0 3px 12px rgba(31,57,88,.04);transition:transform .18s,border-color .18s,box-shadow .18s}.ikp-analysis-card:hover{transform:translateY(-2px);border-color:#a9c9e8;box-shadow:0 9px 22px rgba(31,57,88,.10)}.ikp-analysis-card>header{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:10px}.ikp-analysis-card>header>div{display:flex;min-width:0;flex-direction:column;gap:3px}.ikp-analysis-card>header>div strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px}.ikp-analysis-card>header>div small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:7px;color:var(--muted)}.ikp-analysis-card>header>.incident-status{font-size:6px}.ikp-analysis-type{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#eaf3ff;color:#176fd1;font-size:9px;font-weight:900}.ikp-analysis-type.knc{background:#e6f8f5;color:#118578}.ikp-analysis-type.ktc{background:#fff4dc;color:#a36a0b}.ikp-analysis-type.ktd{background:#ffede6;color:#b84e28}.ikp-analysis-type.sentinel{background:#ffe8ec;color:#aa2941}.ikp-analysis-card>p{margin:10px 0;color:var(--muted);font-size:7px}.ikp-analysis-statuses{display:grid;grid-template-columns:repeat(3,1fr);overflow:hidden;border:1px solid var(--border);border-radius:9px;background:var(--border);gap:1px}.ikp-analysis-statuses>span{display:grid;grid-template-columns:23px 1fr;align-items:center;min-width:0;padding:9px 8px;background:#f8fafc}.ikp-analysis-statuses i{grid-row:1/3;display:grid;place-items:center;width:21px;height:21px;border-radius:7px;background:#e8edf3;color:#7a8798;font-size:7px;font-style:normal;font-weight:900}.ikp-analysis-statuses small{font-size:6px;color:var(--muted)}.ikp-analysis-statuses strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:7px}.ikp-analysis-statuses .complete i{background:#ddf5e9;color:#118052}.ikp-analysis-statuses .active i{background:#e4f0ff;color:#176fd1}.ikp-analysis-statuses .required i{background:#ffe4e7;color:#b72e3e}.ikp-analysis-statuses .required strong{color:#b72e3e}.ikp-analysis-card>footer{display:flex;align-items:center;justify-content:space-between;margin-top:11px;padding-top:10px;border-top:1px dashed var(--border);color:#176fd1;font-size:8px;font-weight:900}.ikp-analysis-card>footer b{font-size:14px}.ikp-analysis-empty{grid-column:1/-1;display:flex;min-height:150px;align-items:center;justify-content:center;flex-direction:column;color:var(--muted);text-align:center}.ikp-analysis-empty>span{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#edf3fa;color:#477aaa;font-size:9px;font-weight:900}.ikp-analysis-empty strong{margin:9px 0 3px;color:var(--text)}.ikp-analysis-empty p{font-size:8px}
@media(max-width:1100px){.ikp-analysis-card-grid{grid-template-columns:1fr 1fr}}@media(max-width:760px){.fishbone-diagram{display:grid;height:auto;grid-template-columns:1fr;gap:8px;overflow:visible}.fishbone-skeleton{display:none}.fishbone-cause,.fishbone-effect{position:static;width:auto;min-height:auto;transform:none}.fishbone-cause.cause-1,.fishbone-cause.cause-2,.fishbone-cause.cause-3,.fishbone-cause.cause-4,.fishbone-cause.cause-5,.fishbone-cause.cause-6{position:static}.fishbone-effect{order:7}.ikp-analysis-card-grid{grid-template-columns:1fr}.ikp-analysis-statuses{grid-template-columns:1fr}.ikp-analysis-menu>.panel-heading{align-items:flex-start;flex-direction:column}}

/* Validasi dan agregasi indikator mutu */
.indicator-validation-title{align-items:center}.indicator-validation-filter{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:16px}.indicator-validation-filter form{display:flex;align-items:flex-end;gap:10px}.indicator-validation-filter label{min-width:190px}.indicator-validation-filter>span{padding:8px 11px;border-radius:8px;background:#edf5ff;color:#176fd1;font-size:8px;font-weight:800}.validation-kpis{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.validation-kpis article{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid var(--border);border-radius:12px;background:#fff}.validation-kpis article>span{display:grid;place-items:center;width:42px;height:42px;border-radius:11px;background:#edf1f5;color:#64748b;font-size:16px;font-weight:900}.validation-kpis article.success>span{background:#e1f6eb;color:#148255}.validation-kpis article.warning>span{background:#fff0db;color:#aa6b08}.validation-kpis article.primary>span{background:#e7f1ff;color:#176fd1}.validation-kpis article>div{display:flex;flex-direction:column;gap:3px}.validation-kpis small{font-size:7px;color:var(--muted);font-weight:800}.validation-kpis strong{font-size:21px}.validation-kpis p{margin:0;color:var(--muted);font-size:7px}.aggregation-method-card{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:16px;background:linear-gradient(115deg,#f5f9ff,#fff)}.aggregation-method-card>div{display:flex;align-items:flex-start;gap:12px;max-width:570px}.aggregation-method-card>div>span{display:grid;place-items:center;min-width:42px;height:42px;border-radius:11px;background:#176fd1;color:#fff;font-size:17px;font-weight:900}.aggregation-method-card h2{margin:4px 0 5px}.aggregation-method-card p{margin:0;color:var(--muted);font-size:8px;line-height:1.55}.aggregation-method-card ol{display:flex;gap:12px;margin:0;padding:0;list-style:none}.aggregation-method-card li{display:flex;align-items:center;gap:7px}.aggregation-method-card li b{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#e8f1fb;color:#176fd1;font-size:8px}.aggregation-method-card li span{display:flex;flex-direction:column;font-size:8px;font-weight:800}.aggregation-method-card li small{margin-top:2px;color:var(--muted);font-size:6px;font-weight:500}.indicator-validation-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:16px}.indicator-validation-card{display:flex;min-width:0;flex-direction:column;padding:14px;border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--text);transition:.18s}.indicator-validation-card:hover,.indicator-validation-card.selected{border-color:#80b2e3;box-shadow:0 7px 20px rgba(30,64,100,.09);transform:translateY(-1px)}.indicator-validation-card.selected{box-shadow:inset 0 3px #2379ca,0 7px 20px rgba(30,64,100,.08)}.indicator-validation-card>header{display:grid;grid-template-columns:35px minmax(0,1fr);align-items:center;gap:9px}.indicator-validation-card>header>span{display:grid;place-items:center;width:35px;height:35px;border-radius:9px;background:#eaf3ff;color:#176fd1;font-size:7px;font-weight:900}.indicator-validation-card>header>div{display:flex;min-width:0;flex-direction:column;gap:3px}.indicator-validation-card>header strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:9px}.indicator-validation-card>header small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted);font-size:7px}.validation-card-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;overflow:hidden;margin:12px 0;border:1px solid var(--border);border-radius:8px;background:var(--border)}.validation-card-metrics>div{display:flex;flex-direction:column;gap:4px;padding:9px;background:#f8fafc}.validation-card-metrics small{font-size:6px;color:var(--muted)}.validation-card-metrics strong{font-size:10px}.indicator-validation-card>footer{display:flex;align-items:center;justify-content:space-between;gap:8px}.indicator-validation-card>footer b{color:#176fd1;font-size:7px}.validation-status{display:inline-flex;align-items:center;width:max-content;padding:5px 7px;border-radius:20px;background:#edf1f5;color:#697789;font-size:6px;font-weight:900;white-space:nowrap}.validation-status.validated{background:#def5e9;color:#117c50}.validation-status.rejected{background:#ffe5e8;color:#b52d3f}.validation-status.pending{background:#fff1dc;color:#9b650b}.indicator-validation-detail{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:16px;align-items:start;scroll-margin-top:85px}.validation-detail-main>.panel-heading p:last-child{margin:5px 0 0;color:var(--muted);font-size:8px}.validation-definition-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1px;overflow:hidden;margin-bottom:14px;border:1px solid var(--border);border-radius:9px;background:var(--border)}.validation-definition-grid>div{padding:11px;background:#f8fafc}.validation-definition-grid small{color:#176fd1;font-size:6px;font-weight:900}.validation-definition-grid p{margin:5px 0 0;font-size:8px;line-height:1.45}.validation-data-table{min-width:980px}.validation-data-table td{vertical-align:top}.automatic-checks{display:flex;max-width:225px;flex-wrap:wrap;gap:4px}.automatic-checks span{padding:4px 5px;border-radius:5px;background:#e6f6ee;color:#128052;font-size:6px;font-weight:800}.automatic-checks span.fail{background:#ffe5e8;color:#b52c3e}.automatic-checks span.warning{background:#fff1dc;color:#946008}.validation-review{position:relative}.validation-review>summary{cursor:pointer;color:#176fd1;font-size:7px;font-weight:900;white-space:nowrap}.validation-review[open]>form{display:flex}.validation-review>form{position:absolute;z-index:20;right:0;display:none;width:280px;flex-direction:column;gap:9px;padding:13px;border:1px solid #c7d7e8;border-radius:10px;background:#fff;box-shadow:0 12px 28px rgba(25,51,80,.18)}.validation-review>form>strong{font-size:9px}.check-line{display:flex!important;align-items:flex-start;flex-direction:row!important;gap:7px;font-size:8px!important;font-weight:600!important}.check-line input{width:auto;margin-top:1px}.validation-blocker{margin:0;padding:8px;border-radius:7px;background:#fff0f1;color:#a92e3d;font-size:7px;line-height:1.45}.aggregate-validation-panel{position:sticky;top:90px;display:flex;flex-direction:column;gap:13px}.aggregate-status-head{display:flex;align-items:center;gap:10px}.aggregate-status-head>span{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#176fd1;color:#fff;font-size:16px;font-weight:900}.aggregate-status-head h2{margin:3px 0 0}.aggregate-formula{display:flex;flex-direction:column;gap:6px;padding:13px;border-radius:10px;background:#f2f7fd}.aggregate-formula small{font-size:6px;color:var(--muted);font-weight:900}.aggregate-formula code{font-family:inherit;font-size:8px;color:#536277}.aggregate-formula strong{font-size:25px;color:#176fd1}.aggregate-audit-list{display:grid;grid-template-columns:1fr 1fr;margin:0;border:1px solid var(--border);border-radius:9px;overflow:hidden}.aggregate-audit-list>div{padding:9px;border-bottom:1px solid var(--border)}.aggregate-audit-list>div:nth-child(odd){border-right:1px solid var(--border)}.aggregate-audit-list dt{margin-bottom:4px;color:var(--muted);font-size:6px}.aggregate-audit-list dd{margin:0;font-size:9px;font-weight:900}.aggregate-readiness{display:flex;align-items:center;gap:9px;padding:11px;border-radius:9px}.aggregate-readiness.ready{background:#e5f7ee;color:#147c51}.aggregate-readiness.not-ready{background:#fff0df;color:#9a650f}.aggregate-readiness>span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.75);font-size:10px;font-weight:900}.aggregate-readiness p{display:flex;flex-direction:column;gap:3px;margin:0}.aggregate-readiness strong{font-size:8px}.aggregate-readiness small{font-size:7px}.aggregate-last-review{display:flex;flex-direction:column;gap:3px;padding:10px;border:1px dashed var(--border);border-radius:8px}.aggregate-last-review small{font-size:6px;color:var(--muted)}.aggregate-last-review strong{font-size:8px}.aggregate-last-review span{font-size:7px;color:var(--muted)}.aggregate-last-review p{margin:5px 0 0;font-size:7px}.aggregate-validation-form{display:flex;flex-direction:column;gap:10px;padding-top:12px;border-top:1px solid var(--border)}.measurement-aggregation-strip{display:grid;grid-template-columns:1fr 30px 1fr auto;align-items:center;gap:12px;margin-bottom:16px}.measurement-aggregation-strip>div{display:flex;flex-direction:column;gap:4px}.measurement-aggregation-strip small{color:var(--muted);font-size:6px;font-weight:900}.measurement-aggregation-strip strong{font-size:11px}.measurement-aggregation-strip p{margin:0;color:var(--muted);font-size:7px}.measurement-aggregation-strip>span{text-align:center;color:#8aa4bd;font-size:17px}.measurement-aggregation-strip .validated{padding:10px;border-radius:8px;background:#e7f7ef}.measurement-aggregation-strip .validated strong{color:#137d51}
.validation-card-toolbar{display:flex;align-items:flex-end;justify-content:space-between;margin:3px 0 10px}.validation-card-toolbar h2{margin:3px 0 0}
.validation-result-value{color:#176fd1}.validation-result-empty{display:inline-flex;padding:5px 7px;border-radius:7px;background:#f1f4f7;color:var(--muted);font-size:6px;font-weight:800}.validation-reabstract-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.validation-reabstract-grid label{min-width:0}.validation-reabstract-help{margin:0;padding:8px;border-radius:7px;background:#eef6ff;color:#42627f;font-size:7px;line-height:1.45}.spss-statistics-output{margin-top:18px;padding-top:17px;border-top:1px solid var(--border)}.spss-output-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:12px}.spss-output-heading h3{margin:3px 0 0;font-size:12px}.spss-output-heading>span{padding:6px 8px;border-radius:7px;background:#edf5ff;color:#176fd1;font-size:7px;font-weight:900}.aggregate-comparison{display:grid;grid-template-columns:1fr auto 1fr 1fr;align-items:stretch;gap:9px;margin-bottom:12px}.aggregate-comparison>div{display:flex;min-width:0;flex-direction:column;gap:4px;padding:11px;border:1px solid var(--border);border-radius:9px;background:#f8fafc}.aggregate-comparison>b{align-self:center;color:#8b9aac;font-size:7px;text-transform:uppercase}.aggregate-comparison small{color:var(--muted);font-size:6px;font-weight:900}.aggregate-comparison strong{font-size:14px}.aggregate-comparison span{color:var(--muted);font-size:7px}.aggregate-comparison .aggregate-difference.pass{border-color:#b8e2cd;background:#ecf8f2}.aggregate-comparison .aggregate-difference.pass strong{color:#117c50}.aggregate-comparison .aggregate-difference.fail{border-color:#f0c3c9;background:#fff2f3}.aggregate-comparison .aggregate-difference.fail strong{color:#ad3142}.spss-output-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.35fr);gap:12px}.spss-output-card{overflow:hidden;border:1px solid #ccd7e2;border-radius:10px;background:#fff}.spss-output-card>header{display:flex;align-items:center;gap:8px;padding:10px 11px;border-bottom:1px solid #ccd7e2;background:#f2f5f8}.spss-output-card>header span{padding:4px 6px;border-radius:5px;background:#315d86;color:#fff;font-size:6px;font-weight:900}.spss-output-card h4{margin:0;font-family:Arial,sans-serif;font-size:10px}.spss-table{width:100%;min-width:420px;border-collapse:collapse;font-family:Arial,sans-serif}.spss-table th,.spss-table td{padding:7px 8px;border-right:1px solid #d6dee6;border-bottom:1px solid #d6dee6;font-size:7px;text-align:right}.spss-table thead th{background:#eaf0f5;color:#315d86;font-weight:700}.spss-table tbody th{background:#f1f4f7;color:#315d86;text-align:left}.spss-table td:first-of-type{text-align:right}.correlations-table{min-width:540px}.correlations-table tbody td:nth-child(2){text-align:left}.spss-footnote{margin:0;padding:8px 10px;background:#fff8e8;color:#78612c;font-family:Arial,sans-serif;font-size:7px;line-height:1.45}.statistical-criteria{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.statistical-criteria span{padding:6px 8px;border-radius:7px;font-size:7px;font-weight:900}.statistical-criteria .pass{background:#e4f6ed;color:#117c50}.statistical-criteria .fail{background:#ffe8eb;color:#ad3042}
@media(max-width:1200px){.indicator-validation-card-grid{grid-template-columns:1fr 1fr}.indicator-validation-detail{grid-template-columns:1fr}.aggregate-validation-panel{position:static}.aggregation-method-card{align-items:flex-start;flex-direction:column}.validation-kpis{grid-template-columns:1fr 1fr}}@media(max-width:760px){.indicator-validation-filter,.indicator-validation-filter form,.validation-card-toolbar{align-items:stretch;flex-direction:column}.indicator-validation-filter label{min-width:0}.indicator-validation-card-grid,.validation-kpis,.validation-definition-grid{grid-template-columns:1fr}.aggregation-method-card ol{align-items:flex-start;flex-direction:column}.measurement-aggregation-strip{grid-template-columns:1fr}.measurement-aggregation-strip>span{transform:rotate(90deg)}}
@media(max-width:980px){.spss-output-grid{grid-template-columns:1fr}.aggregate-comparison{grid-template-columns:1fr 24px 1fr}.aggregate-comparison .aggregate-difference{grid-column:1/-1}.aggregate-comparison>b{text-align:center}}@media(max-width:760px){.validation-reabstract-grid,.aggregate-comparison{grid-template-columns:1fr}.aggregate-comparison>b{display:none}.aggregate-comparison .aggregate-difference{grid-column:auto}.spss-output-heading{align-items:flex-start;flex-direction:column}.statistical-criteria{flex-direction:column}.statistical-criteria span{width:100%}}

/* Konteks pasien untuk telaah TKPRS */
.tkprs-patient-context{display:grid;grid-template-columns:390px minmax(0,1fr);gap:14px;margin-bottom:14px;scroll-margin-top:85px}.tkprs-patient-context article{padding:16px}.tkprs-patient-context article>header{display:flex;align-items:center;gap:10px;margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--border)}.tkprs-patient-context article>header>span{display:grid;place-items:center;min-width:36px;height:36px;border-radius:10px;background:#e8f2ff;color:#176fd1;font-size:8px;font-weight:900}.tkprs-patient-context article>header .eyebrow{margin-bottom:3px}.tkprs-patient-context article>header h3{margin:0;font-size:12px}.tkprs-patient-card dl{display:grid;grid-template-columns:1fr 1fr;gap:1px;overflow:hidden;margin:0;border:1px solid var(--border);border-radius:9px;background:var(--border)}.tkprs-patient-card dl>div{display:flex;min-width:0;flex-direction:column;gap:4px;padding:10px;background:#f8fafc}.tkprs-patient-card dt{color:var(--muted);font-size:6px;font-weight:800;text-transform:uppercase}.tkprs-patient-card dd{overflow-wrap:anywhere;margin:0;font-size:9px;font-weight:800}.tkprs-confidentiality{margin:11px 0 0;padding:9px;border-radius:8px;background:#fff5df;color:#8b631c;font-size:7px;line-height:1.45}.tkprs-chronology-card>header>span{background:#e8f7ef!important;color:#147d51!important}.tkprs-chronology-body{min-height:105px;padding:13px;border-left:3px solid #2b7bc2;border-radius:0 9px 9px 0;background:#f6f9fc}.tkprs-chronology-body p{margin:0;font-size:9px;line-height:1.7}.tkprs-chronology-card>footer{margin-top:11px;padding:11px;border-radius:9px;background:#f1f6fb}.tkprs-chronology-card>footer small{color:#176fd1;font-size:6px;font-weight:900}.tkprs-chronology-card>footer p{margin:5px 0 0;font-size:8px;line-height:1.55}
@media(max-width:1000px){.tkprs-patient-context{grid-template-columns:1fr}}@media(max-width:560px){.tkprs-patient-card dl{grid-template-columns:1fr}}

/* Responsive card interface v2: desktop, tablet, and mobile */
:root{
  --content-max:1800px;
  --card-radius:16px;
  --card-shadow:0 8px 24px rgba(31,55,84,.065);
  --card-shadow-hover:0 14px 34px rgba(31,55,84,.11);
  --mobile-gap:12px;
}

.app-page{
  background:
    radial-gradient(circle at 92% 3%,rgba(47,132,226,.055),transparent 22rem),
    var(--bg);
}
.app-page .sidebar{width:270px;box-shadow:5px 0 25px rgba(28,50,76,.035)}
.app-page .app-shell{margin-left:270px}
.app-page .content{max-width:var(--content-max);padding:28px 34px 44px}
.app-page .topbar{padding:0 34px;backdrop-filter:blur(14px);background:rgba(255,255,255,.96)}
.app-page .menu-toggle{display:none}
.app-page .panel,
.app-page .module-card,
.app-page .stat-card{
  border-color:#dfe7f0;
  border-radius:var(--card-radius);
  box-shadow:var(--card-shadow);
}
.app-page .panel{padding:22px}
.app-page .page-title{
  align-items:center;
  padding:20px 22px;
  border:1px solid #dfe7f0;
  border-radius:var(--card-radius);
  background:rgba(255,255,255,.94);
  box-shadow:var(--card-shadow);
}
.app-page .page-title h1{font-size:28px}
.app-page .page-title p:not(.eyebrow):not(.breadcrumbs){font-size:13px;line-height:1.6}
.app-page .eyebrow{font-size:10px}
.app-page .button{min-height:40px;font-size:12px;padding:10px 16px}
.app-page label{font-size:12px}
.app-page input,
.app-page select,
.app-page textarea{font-size:13px;min-height:42px}
.app-page textarea{min-height:84px}
.app-page table{border-collapse:separate;border-spacing:0}
.app-page th{font-size:10px;padding:12px;background:#f7f9fc}
.app-page td{font-size:12px;padding:13px 11px}
.app-page tbody tr:last-child td{border-bottom:0}
.app-page .table-wrap{border:1px solid #e3e9f1;border-radius:12px;background:#fff}
.app-page .panel>.table-wrap{margin:-2px}
.app-page .section-heading,
.app-page .panel-heading{gap:16px}
.app-page .panel-heading h2,
.app-page .section-heading h2{font-size:19px}

.app-page .module-grid{
  grid-template-columns:repeat(auto-fit,minmax(270px,1fr));
  gap:16px;
}
.app-page .module-card{min-height:190px;padding:20px}
.app-page .module-card:hover,
.app-page .indicator-validation-card:hover,
.app-page .ikp-analysis-card:hover,
.app-page .follow-up-priority-card:hover{box-shadow:var(--card-shadow-hover)}
.app-page :is(
  .stats-grid,
  .indicator-kpis,
  .validation-kpis,
  .survey-result-kpis,
  .culture-kpis,
  .follow-up-workspace-kpis
){
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
  gap:14px;
}
.app-page .mini-stats{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}
.app-page :is(
  .stat-card,
  .indicator-kpi,
  .validation-kpis article,
  .survey-result-kpis article,
  .culture-kpis article,
  .follow-up-workspace-kpis article
){min-height:104px;padding:17px}
.app-page :is(
  .stat-card,
  .indicator-kpi,
  .validation-kpis article,
  .survey-result-kpis article,
  .culture-kpis article,
  .follow-up-workspace-kpis article
) small{font-size:10px}
.app-page :is(
  .indicator-kpi,
  .validation-kpis article,
  .survey-result-kpis article,
  .culture-kpis article,
  .follow-up-workspace-kpis article
) p{font-size:10px;line-height:1.45}

.app-page .form-layout{grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:20px}
.app-page .detail-layout{grid-template-columns:minmax(0,1fr) minmax(330px,390px);gap:20px}
.app-page .admin-layout{grid-template-columns:minmax(0,1fr) minmax(310px,370px);gap:20px}
.app-page .indicator-dashboard-layout{grid-template-columns:minmax(0,1fr) minmax(330px,390px);gap:20px}
.app-page .indicator-follow-up-layout{grid-template-columns:minmax(0,1fr) minmax(360px,420px);gap:20px}
.app-page .ppi-audit-layout{grid-template-columns:minmax(0,1fr) minmax(340px,400px);gap:20px}
.app-page .pdca-form-layout{grid-template-columns:minmax(0,1fr) minmax(310px,370px);gap:20px}
.app-page :is(.form-side,.detail-side,.admin-form,.indicator-input-side,.indicator-follow-up-form,.ppi-audit-history,.pdca-form-side,.aggregate-validation-panel){
  top:92px;
}

.app-page .toolbar{
  flex-wrap:wrap;
  padding:14px;
  border:1px solid #e1e8f0;
  border-radius:13px;
  background:#fff;
  box-shadow:0 4px 14px rgba(31,55,84,.035);
}
.app-page .toolbar .search-field{min-width:240px}
.app-page .title-actions{flex-wrap:wrap;justify-content:flex-end}
.app-page .process-strip{border-radius:var(--card-radius)}
.app-page :is(.incident-workflow>div,.infection-workflow-tabs a,.pdca-card,.follow-up-priority-card,.ikp-analysis-card,.indicator-validation-card){
  border-radius:13px;
  box-shadow:0 4px 15px rgba(31,55,84,.045);
}
.app-page :is(.status,.risk-band,.incident-status,.infection-status,.validation-status){font-size:10px;padding:6px 9px}

/* Readable cards for specialist quality and patient-safety pages */
.app-page .indicator-validation-card{padding:17px}
.app-page .indicator-validation-card>header strong{font-size:13px}
.app-page .indicator-validation-card>header small{font-size:10px}
.app-page .validation-card-metrics small{font-size:9px}
.app-page .validation-card-metrics strong{font-size:14px}
.app-page .indicator-validation-card>footer b{font-size:10px}
.app-page .validation-definition-grid small{font-size:9px}
.app-page .validation-definition-grid p{font-size:12px}
.app-page .automatic-checks span{font-size:9px;padding:5px 7px}
.app-page .validation-review>summary{font-size:11px}
.app-page .validation-review>form{width:330px;padding:16px}
.app-page .validation-review>form>strong{font-size:13px}
.app-page .validation-reabstract-help,
.app-page .validation-blocker{font-size:10px}
.app-page .aggregate-formula small,
.app-page .aggregate-audit-list dt,
.app-page .aggregate-last-review small{font-size:9px}
.app-page .aggregate-formula code{font-size:11px}
.app-page .aggregate-audit-list dd{font-size:12px}
.app-page .aggregate-readiness strong{font-size:11px}
.app-page .aggregate-readiness small{font-size:10px}
.app-page .spss-output-heading>span,
.app-page .spss-output-card>header span,
.app-page .spss-table th,
.app-page .spss-table td,
.app-page .spss-footnote,
.app-page .statistical-criteria span{font-size:10px}
.app-page .spss-output-card h4{font-size:13px}
.app-page .aggregate-comparison small{font-size:9px}
.app-page .aggregate-comparison span{font-size:10px}

.app-page .ikp-analysis-card{padding:17px}
.app-page .ikp-analysis-card>header>div strong{font-size:13px}
.app-page .ikp-analysis-card>header>div small,
.app-page .ikp-analysis-card>p{font-size:10px}
.app-page .ikp-analysis-statuses small{font-size:9px}
.app-page .ikp-analysis-statuses strong,
.app-page .ikp-analysis-card>footer{font-size:10px}
.app-page .fishbone-cause{padding:13px}
.app-page .fishbone-cause strong{font-size:11px}
.app-page .fishbone-cause p{font-size:10px}
.app-page .fishbone-effect small{font-size:9px}
.app-page .fishbone-effect strong{font-size:11px}
.app-page .tkprs-patient-card dt,
.app-page .tkprs-chronology-card>footer small{font-size:9px}
.app-page .tkprs-patient-card dd{font-size:12px}
.app-page .tkprs-confidentiality,
.app-page .tkprs-chronology-card>footer p{font-size:10px}
.app-page .tkprs-chronology-body p{font-size:12px}

.app-page .indicator-validation-card-grid,
.app-page .ikp-analysis-card-grid,
.app-page .follow-up-priority-grid{gap:15px}
.app-page .indicator-validation-card-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.app-page .ikp-analysis-card-grid{grid-template-columns:repeat(auto-fit,minmax(310px,1fr))}
.app-page .follow-up-priority-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.app-page .pdca-columns{gap:13px;padding:3px 2px 10px}
.app-page .pdca-card{padding:14px}

/* Public pages remain card-based and touch-friendly */
.portal-page .portal-choice,
.survey-page .panel,
.culture-public-page .panel,
.survey-thanks-card,
.setup-card,
.login-form{
  border-radius:18px;
}
.portal-page .portal-choice{box-shadow:var(--card-shadow)}
.survey-page input,
.survey-page select,
.survey-page textarea,
.culture-public-page input,
.culture-public-page select,
.culture-public-page textarea{min-height:44px}

@media(min-width:1500px){
  .app-page .content{padding-left:40px;padding-right:40px}
  .app-page .dashboard-columns{grid-template-columns:minmax(0,1.55fr) minmax(360px,.75fr)}
  .app-page .indicator-validation-detail{grid-template-columns:minmax(0,1fr) 390px}
  .app-page .indicator-validation-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .app-page .ikp-analysis-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}

@media(max-width:1200px){
  .app-page .content{padding:24px}
  .app-page :is(
    .form-layout,
    .detail-layout,
    .admin-layout,
    .indicator-dashboard-layout,
    .indicator-follow-up-layout,
    .ppi-audit-layout,
    .pdca-form-layout,
    .indicator-validation-detail
  ){grid-template-columns:1fr}
  .app-page :is(.form-side,.detail-side,.admin-form,.indicator-input-side,.indicator-follow-up-form,.ppi-audit-history,.pdca-form-side,.aggregate-validation-panel){
    position:static;
  }
  .app-page .detail-side,
  .app-page .indicator-input-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
  .app-page .aggregation-method-card{align-items:flex-start;flex-direction:column}
}

@media(max-width:1024px){
  .app-page .sidebar{
    width:min(84vw,320px);
    transform:translateX(-105%);
    transition:transform .24s ease;
    box-shadow:18px 0 42px rgba(10,32,57,.18);
  }
  .app-page .sidebar.open{transform:translateX(0)}
  .app-page .app-shell{margin-left:0}
  .app-page .menu-toggle{display:grid}
  .app-page .sidebar-overlay.open{
    display:block;
    position:fixed;
    inset:0;
    z-index:35;
    background:rgba(7,24,43,.48);
    backdrop-filter:blur(2px);
  }
  .app-page.menu-open{overflow:hidden}
  .app-page .content{padding:20px}
  .app-page .topbar{padding:0 20px}
  .app-page .module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .app-page .dashboard-columns,
  .app-page .culture-dashboard-grid,
  .app-page .survey-results-grid,
  .app-page .survey-results-grid.lower{grid-template-columns:1fr}
  .app-page .fishbone-workspace{grid-template-columns:1fr}
}

@media(max-width:900px) and (min-width:721px){
  .app-page :is(
    .stats-grid,
    .indicator-kpis,
    .validation-kpis,
    .survey-result-kpis,
    .culture-kpis,
    .follow-up-workspace-kpis
  ){grid-template-columns:repeat(2,minmax(0,1fr))}
}

@media(max-width:720px){
  :root{--card-radius:14px}
  body{font-size:14px}
  .app-page .topbar{height:64px;padding:0 12px}
  .app-page .topbar-title{display:none}
  .app-page .topbar-actions{gap:8px}
  .app-page .user-chip>span,
  .app-page .user-chip>b{display:none}
  .app-page .icon-button{width:42px;height:42px}
  .app-page .content{padding:12px 10px 28px}
  .app-page .app-footer{padding:15px 12px}
  .app-page .app-footer span:last-child{display:none}
  .app-page .page-title{
    align-items:stretch;
    flex-direction:column;
    gap:14px;
    margin-bottom:14px;
    padding:16px;
  }
  .app-page .page-title h1{font-size:22px}
  .app-page .page-title p:not(.eyebrow):not(.breadcrumbs){font-size:12px}
  .app-page .page-title>.button,
  .app-page .page-title .title-actions{width:100%}
  .app-page .page-title .title-actions{display:grid;grid-template-columns:1fr}
  .app-page .page-title .button{width:100%}
  .app-page .panel{padding:16px}
  .app-page .panel-heading,
  .app-page .section-heading{
    align-items:flex-start;
    flex-direction:column;
    margin-bottom:13px;
  }
  .app-page .panel-heading h2,
  .app-page .section-heading h2{font-size:17px}
  .app-page .button{min-height:44px;font-size:13px}
  .app-page input,
  .app-page select,
  .app-page textarea,
  .survey-page input,
  .survey-page select,
  .survey-page textarea,
  .culture-public-page input,
  .culture-public-page select,
  .culture-public-page textarea{
    min-height:46px;
    font-size:16px;
  }
  .app-page textarea,
  .survey-page textarea,
  .culture-public-page textarea{min-height:96px}
  .app-page .module-grid,
  .app-page :is(
    .stats-grid,
    .indicator-kpis,
    .validation-kpis,
    .survey-result-kpis,
    .culture-kpis,
    .follow-up-workspace-kpis,
    .indicator-validation-card-grid,
    .ikp-analysis-card-grid,
    .follow-up-priority-grid
  ){grid-template-columns:1fr}
  .app-page .mini-stats{grid-template-columns:1fr 1fr}
  .app-page .detail-side,
  .app-page .indicator-input-side{display:flex}
  .app-page .toolbar{
    align-items:stretch;
    flex-direction:column;
    margin-bottom:12px;
    padding:12px;
  }
  .app-page .toolbar .search-field{min-width:0;width:100%}
  .app-page .toolbar select,
  .app-page .toolbar .button{width:100%;max-width:none}
  .app-page .form-grid,
  .app-page .detail-grid,
  .app-page .metadata-list,
  .app-page .validation-definition-grid,
  .app-page .tkprs-patient-card dl,
  .app-page .investigation-grid,
  .app-page .investigation-meta,
  .app-page .risk-calculator,
  .app-page .ppi-audit-meta,
  .app-page .ppi-audit-result{grid-template-columns:1fr}
  .app-page .span-2{grid-column:auto}

  /* Standard tables become readable cards on phones */
  .app-page .table-wrap:has(>.mobile-card-table){
    overflow:visible;
    border:0;
    border-radius:0;
    background:transparent;
  }
  .app-page .mobile-card-table{display:block;width:100%;min-width:0}
  .app-page .mobile-card-table thead{
    position:absolute;
    width:1px;
    height:1px;
    overflow:hidden;
    clip:rect(0 0 0 0);
    white-space:nowrap;
  }
  .app-page .mobile-card-table tbody{display:grid;gap:var(--mobile-gap)}
  .app-page .mobile-card-table tbody tr{
    display:block;
    overflow:hidden;
    border:1px solid #dfe7f0;
    border-radius:13px;
    background:#fff;
    box-shadow:0 5px 16px rgba(31,55,84,.055);
  }
  .app-page .mobile-card-table tbody td{
    display:grid;
    grid-template-columns:minmax(105px,.8fr) minmax(0,1.35fr);
    align-items:start;
    gap:12px;
    width:100%;
    min-height:43px;
    padding:11px 12px;
    border-bottom:1px solid #edf1f5;
    text-align:right;
    overflow-wrap:anywhere;
  }
  .app-page .mobile-card-table tbody td::before{
    content:attr(data-label);
    color:#7a889b;
    font-size:10px;
    font-weight:800;
    letter-spacing:.35px;
    text-align:left;
    text-transform:uppercase;
  }
  .app-page .mobile-card-table tbody td:last-child{border-bottom:0}
  .app-page .mobile-card-table tbody td[colspan]{
    display:block;
    padding:0;
    text-align:left;
  }
  .app-page .mobile-card-table tbody td[colspan]::before{display:none}
  .app-page .mobile-card-table td :is(.status,.validation-status,.risk-band,.incident-status,.infection-status){margin-left:auto}
  .app-page .mobile-card-table td form{justify-self:end;max-width:100%}
  .app-page .mobile-card-table .table-sub{font-size:10px}
  .app-page .mobile-card-table .automatic-checks{justify-content:flex-end;max-width:none}
  .app-page .mobile-card-table .record-title,
  .app-page .mobile-card-table .user-cell,
  .app-page .mobile-card-table .module-table-cell{align-items:flex-end}

  .app-page .spss-output-grid{grid-template-columns:1fr}
  .app-page .spss-output-card .table-wrap{overflow:auto;border-radius:0}
  .app-page .aggregate-comparison{grid-template-columns:1fr}
  .app-page .aggregate-comparison>b{display:none}
  .app-page .statistical-criteria{flex-direction:column}
  .app-page .statistical-criteria span{width:100%}
  .app-page .validation-review>form{
    position:fixed;
    inset:76px 10px 10px;
    width:auto;
    max-height:calc(100dvh - 86px);
    overflow:auto;
    z-index:80;
    border-radius:16px;
    box-shadow:0 20px 60px rgba(8,29,53,.28);
  }
  .app-page .aggregation-method-card ol{align-items:flex-start;flex-direction:column}
  .app-page .indicator-validation-filter,
  .app-page .indicator-validation-filter form,
  .app-page .validation-card-toolbar,
  .app-page .indicator-follow-up-heading,
  .app-page .culture-survey-submit{align-items:stretch;flex-direction:column}
  .app-page .indicator-validation-filter label{min-width:0}
  .app-page .quality-scope-filter{align-items:stretch;flex-direction:column}
  .app-page .quality-category-tabs{
    display:flex;
    overflow:auto;
    scroll-snap-type:x proximity;
    padding-bottom:4px;
  }
  .app-page .quality-category-tabs a{min-width:220px;scroll-snap-align:start}
  .app-page .quality-scope-filter>form{width:100%}
  .app-page .process-strip{padding:14px}
  .app-page .incident-workflow,
  .app-page .infection-workflow-tabs{grid-template-columns:1fr}
  .app-page .indicator-chart-scroll,
  .app-page .pdca-columns,
  .app-page .culture-scale-key{
    -webkit-overflow-scrolling:touch;
    scrollbar-width:thin;
  }
  .app-page .fishbone-diagram{
    display:grid;
    height:auto;
    grid-template-columns:1fr;
    gap:10px;
    overflow:visible;
  }
  .app-page .fishbone-skeleton{display:none}
  .app-page .fishbone-cause,
  .app-page .fishbone-effect,
  .app-page .fishbone-cause.cause-1,
  .app-page .fishbone-cause.cause-2,
  .app-page .fishbone-cause.cause-3,
  .app-page .fishbone-cause.cause-4,
  .app-page .fishbone-cause.cause-5,
  .app-page .fishbone-cause.cause-6{
    position:static;
    width:auto;
    min-height:auto;
    transform:none;
  }
  .app-page .fishbone-effect{order:7}

  .portal-header{height:auto;min-height:70px;padding:10px 14px}
  .portal-header nav{gap:8px}
  .portal-header .button{padding:10px 12px}
  .portal-hero{padding:42px 18px}
  .portal-hero h1{font-size:32px;letter-spacing:-.7px}
  .portal-services{padding:42px 14px}
  .portal-choice{padding:20px}
  .portal-stats{grid-template-columns:1fr 1fr;padding:28px 16px}
  .portal-about{padding:42px 18px}
  .survey-shell,
  .culture-public-shell{padding:18px 10px 45px}
  .survey-intro,
  .culture-public-hero{padding:20px 17px}
  .survey-page .panel,
  .culture-public-page .panel{padding:16px}
  .score-options{grid-template-columns:1fr 1fr;margin-left:0}
  .culture-scale-key{position:static}
  .survey-submit,
  .culture-survey-submit{display:flex;text-align:left}
  .survey-submit .button,
  .culture-survey-submit .button{width:100%}
  .login-panel{padding:24px 16px}
  .login-form{
    padding:22px;
    border:1px solid #e1e8f0;
    background:#fff;
    box-shadow:var(--card-shadow);
  }
}

@media(max-width:420px){
  .app-page .mini-stats{grid-template-columns:1fr}
  .app-page .mobile-card-table tbody td{grid-template-columns:1fr;gap:5px;text-align:left}
  .app-page .mobile-card-table td :is(.status,.validation-status,.risk-band,.incident-status,.infection-status){margin-left:0}
  .app-page .mobile-card-table .automatic-checks{justify-content:flex-start}
  .app-page .mobile-card-table td form{justify-self:start;width:100%}
  .app-page .mobile-card-table .record-title,
  .app-page .mobile-card-table .user-cell,
  .app-page .mobile-card-table .module-table-cell{align-items:flex-start}
  .portal-stats{grid-template-columns:1fr}
  .score-options{grid-template-columns:1fr}
  .thanks-actions{flex-direction:column}
}

/* Alur halaman bertahap dalam tema asli SIMMUTU */
.app-page .tabbed-card-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  align-items:start;
  gap:14px;
}
.app-page .tabbed-card-layout>.card-tabs,
.app-page .tabbed-card-layout>.card-tab-pane,
.app-page .tabbed-card-layout>.step-controls{
  grid-column:1/-1;
  width:100%;
  min-width:0;
}
.app-page .card-tab-pane[hidden]{display:none!important}
.app-page .card-tabs,
.app-page .page-section-tabs{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:8px;
  border:1px solid var(--border);
  border-radius:12px;
  background:#fff;
  box-shadow:0 5px 18px rgba(30,54,84,.055);
  scrollbar-width:thin;
}
.app-page .page-section-tabs{
  position:sticky;
  top:82px;
  z-index:24;
  margin:-4px 0 16px;
}
.app-page .card-tab-button,
.app-page .page-section-tab{
  display:inline-flex;
  flex:1 0 max-content;
  align-items:center;
  gap:8px;
  min-height:42px;
  padding:8px 12px;
  border:1px solid transparent;
  border-radius:9px;
  background:transparent;
  color:#617086;
  font-size:12px;
  font-weight:700;
  text-align:left;
  transition:background .18s,border-color .18s,color .18s,transform .18s;
}
.app-page .card-tab-button::before,
.app-page .page-section-tab::before{
  content:attr(data-step);
  display:grid;
  flex:none;
  place-items:center;
  width:25px;
  height:25px;
  border-radius:50%;
  background:#edf2f7;
  color:#64748b;
  font-size:11px;
  font-weight:800;
}
.app-page .card-tab-button:hover,
.app-page .page-section-tab:hover{
  border-color:#cfdded;
  background:#f7faff;
  color:var(--navy);
}
.app-page .card-tab-button.active,
.app-page .page-section-tab.active{
  border-color:#b8d5f6;
  background:var(--blue-soft);
  color:#1767cb;
  box-shadow:inset 0 -2px #1677ff;
}
.app-page .card-tab-button.active::before,
.app-page .page-section-tab.active::before{
  background:var(--blue);
  color:#fff;
}
.app-page .card-tab-button.complete::before{
  content:'\2713';
  background:#e2f5ec;
  color:var(--green);
}
.app-page .card-tab-button:focus-visible,
.app-page .page-section-tab:focus-visible{
  outline:3px solid rgba(22,119,255,.2);
  outline-offset:2px;
}
.app-page .step-controls{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding:12px 14px;
  border:1px solid var(--border);
  border-radius:12px;
  background:#fff;
}
.app-page .step-status{
  margin:0;
  color:var(--muted);
  font-size:12px;
  font-weight:700;
}
.app-page .step-control-actions{display:flex;gap:8px}
.app-page .step-controls .button{min-width:122px;justify-content:center}
.app-page .step-controls .button:disabled{
  cursor:not-allowed;
  opacity:.48;
  box-shadow:none;
}
.app-page .page-section-tabs+*{scroll-margin-top:145px}

@media(max-width:720px){
  .app-page .card-tabs,
  .app-page .page-section-tabs{
    gap:6px;
    padding:6px;
    scroll-snap-type:x proximity;
  }
  .app-page .page-section-tabs{top:70px;margin-bottom:12px}
  .app-page .card-tab-button,
  .app-page .page-section-tab{
    flex:0 0 auto;
    min-height:40px;
    padding:7px 10px;
    scroll-snap-align:start;
    font-size:11px;
  }
  .app-page .step-controls{align-items:stretch;flex-direction:column}
  .app-page .step-control-actions{display:grid;grid-template-columns:1fr 1fr}
  .app-page .step-controls .button{min-width:0;width:100%}
  .app-page .page-section-tabs+*{scroll-margin-top:132px}
}

/* Ukuran baca yang lebih nyaman pada seluruh ruang kerja */
body{font-size:16px;line-height:1.55}
.app-page .sidebar nav a{font-size:14px;line-height:1.35}
.app-page .nav-label{font-size:11px}
.app-page .brand-lockup small,
.app-page .sidebar-user small,
.app-page .topbar-title small{font-size:12px}
.app-page .topbar-title strong,
.app-page .sidebar-user strong{font-size:14px}
.app-page .page-title h1{font-size:30px;line-height:1.18}
.app-page .page-title p:not(.eyebrow):not(.breadcrumbs){font-size:15px;line-height:1.6}
.app-page main.content .eyebrow{font-size:12px;line-height:1.4}
.app-page main.content p{font-size:14px;line-height:1.6}
.app-page main.content small{font-size:12px;line-height:1.45}
.app-page main.content label{font-size:13px;line-height:1.45}
.app-page main.content input,
.app-page main.content select,
.app-page main.content textarea{min-height:44px;font-size:14px;line-height:1.45}
.app-page main.content textarea{min-height:104px}
.app-page main.content th{font-size:12px;line-height:1.4}
.app-page main.content td{font-size:13px;line-height:1.5}
.app-page main.content .table-sub{font-size:12px}
.app-page main.content .button{font-size:13px}
.app-page main.content .panel-heading h2,
.app-page main.content .section-heading h2{font-size:20px;line-height:1.3}
.app-page main.content .panel h3{font-size:17px;line-height:1.35}
.app-page main.content .module-card h3{font-size:17px;line-height:1.35}
.app-page main.content .module-card p{font-size:13px;line-height:1.55}
.app-page main.content .module-card footer{font-size:12px}
.app-page main.content .stat-card p{font-size:13px}
.app-page main.content .stat-card>strong{font-size:28px;line-height:1.15}
.app-page main.content .stat-card small,
.app-page main.content .stat-card span{font-size:12px}
.app-page main.content :is(
  .status,
  .risk-band,
  .incident-status,
  .infection-status,
  .validation-status,
  .validation-result-empty,
  .aggregate-readiness,
  .statistical-criteria span,
  .automatic-checks span
){font-size:11px;line-height:1.35}
.app-page main.content .indicator-validation-card>header strong{font-size:13px}
.app-page main.content .indicator-validation-card>header small{font-size:11px}
.app-page main.content .validation-card-metrics small{font-size:10px}
.app-page main.content .validation-card-metrics strong{font-size:14px}
.app-page main.content .indicator-validation-card>footer b{font-size:11px}
.app-page main.content .aggregate-formula small,
.app-page main.content .aggregate-audit-list dt,
.app-page main.content .aggregate-last-review small{font-size:11px}
.app-page main.content .aggregate-formula code,
.app-page main.content .aggregate-audit-list dd,
.app-page main.content .aggregate-last-review strong{font-size:13px}

/* Status langkah: belum, proses, dan selesai */
.app-page .card-tab-button,
.app-page .page-section-tab{
  min-width:210px;
  min-height:52px;
  padding:10px 12px;
  font-size:13px;
  line-height:1.35;
}
.app-page .card-tab-button::before,
.app-page .page-section-tab::before{
  width:30px;
  height:30px;
  font-size:12px;
}
.app-page .card-tab-button::after,
.app-page .page-section-tab::after{
  content:attr(data-state-label);
  flex:none;
  margin-left:auto;
  padding:5px 8px;
  border-radius:20px;
  background:#edf1f5;
  color:#68768a;
  font-size:10px;
  font-weight:800;
  letter-spacing:.2px;
}
.app-page :is(.card-tab-button,.page-section-tab)[data-step-state="pending"]{
  border-color:#e2e8f0;
  background:#f8fafc;
  color:#68768a;
}
.app-page :is(.card-tab-button,.page-section-tab)[data-step-state="process"]{
  border-color:#9fc9f8;
  background:var(--blue-soft);
  color:#145fad;
  box-shadow:inset 0 -3px var(--blue);
}
.app-page :is(.card-tab-button,.page-section-tab)[data-step-state="process"]::after{
  background:#d8eaff;
  color:#145fad;
}
.app-page :is(.card-tab-button,.page-section-tab)[data-step-state="complete"]{
  border-color:#b8e4cf;
  background:#eef9f3;
  color:#13784e;
  box-shadow:none;
}
.app-page :is(.card-tab-button,.page-section-tab)[data-step-state="complete"]::before{
  content:'\2713';
  background:var(--green);
  color:#fff;
}
.app-page :is(.card-tab-button,.page-section-tab)[data-step-state="complete"]::after{
  background:#dcefe6;
  color:#13784e;
}
.app-page .step-status{font-size:14px;line-height:1.45;color:#435268}
.app-page .step-controls{padding:14px 16px}
.app-page .step-controls .button{min-height:44px;font-size:13px}

@media(max-width:720px){
  body{font-size:15px}
  .app-page .page-title h1{font-size:25px}
  .app-page main.content p{font-size:14px}
  .app-page .card-tab-button,
  .app-page .page-section-tab{min-width:205px;min-height:50px}
  .app-page .card-tab-button::after,
  .app-page .page-section-tab::after{font-size:9px}
  .app-page .step-status{font-size:13px}
}

/* Tipografi besar dan tata letak ramah ponsel */
html{font-size:17px}
body{font-size:17px;line-height:1.65}
.app-page .brand-lockup strong{font-size:20px}
.app-page .brand-lockup small{font-size:13px}
.app-page .sidebar nav a{min-height:46px;font-size:16px;line-height:1.4}
.app-page .nav-label{font-size:12px;letter-spacing:1.15px}
.app-page .nav-badge{width:30px;height:30px;font-size:12px}
.app-page .nav-icon{width:30px;font-size:21px}
.app-page .page-module-icon{font-size:13px}
.app-page .sidebar-user strong,
.app-page .topbar-title strong,
.app-page .user-chip strong{font-size:16px}
.app-page .sidebar-user small,
.app-page .topbar-title small,
.app-page .user-chip small{font-size:13px}
.app-page main.content h1,
.app-page .page-title h1{font-size:34px;line-height:1.2}
.app-page main.content h2{font-size:23px;line-height:1.35}
.app-page main.content h3{font-size:19px;line-height:1.4}
.app-page main.content .eyebrow,
.app-page main.content .breadcrumbs{font-size:13px;line-height:1.5}
.app-page main.content p{font-size:16px;line-height:1.7}
.app-page main.content small{font-size:13px;line-height:1.55}
.app-page main.content label{font-size:15px;line-height:1.5}
.app-page main.content input,
.app-page main.content select,
.app-page main.content textarea{min-height:48px;font-size:16px;line-height:1.5;padding:12px 13px}
.app-page main.content textarea{min-height:118px}
.app-page main.content .button{min-height:46px;font-size:15px;padding:12px 18px}
.app-page main.content th{font-size:13px;line-height:1.45;padding:14px 12px}
.app-page main.content td{font-size:15px;line-height:1.55;padding:15px 12px}
.app-page main.content .record-title strong,
.app-page main.content .activity-list strong,
.app-page main.content .action-list strong{font-size:15px}
.app-page main.content .record-title small,
.app-page main.content .activity-list small,
.app-page main.content .action-list small,
.app-page main.content .table-sub{font-size:13px}
.app-page main.content :is(
  .status,.risk-band,.incident-status,.infection-status,.validation-status,
  .validation-result-empty,.statistical-criteria span,.automatic-checks span
){font-size:13px;line-height:1.4;padding:7px 10px}

/* POKJA sebelumnya masih menggunakan ukuran mikro 6-9 px */
.app-page .pokja-hero h2{font-size:27px}
.app-page .pokja-hero p:last-child{font-size:16px;line-height:1.7}
.app-page .pokja-score{width:136px;height:136px}
.app-page .pokja-score strong{font-size:30px}
.app-page .pokja-score strong small,
.app-page .pokja-score span{font-size:12px}
.app-page .pokja-kpis article{min-height:88px;padding:17px}
.app-page .pokja-kpis article>span{width:42px;height:42px;font-size:18px}
.app-page .pokja-kpis small{font-size:13px}
.app-page .pokja-kpis strong{font-size:25px}
.app-page .flow-node{width:190px;min-height:118px;padding:16px}
.app-page .flow-node>span{width:32px;height:32px;font-size:13px}
.app-page .flow-node strong{font-size:14px;line-height:1.4}
.app-page .flow-node small{font-size:12px;line-height:1.5}
.app-page .pokja-support-flow>div{min-height:78px;padding:14px}
.app-page .pokja-support-flow>div>span{width:36px;height:36px;font-size:17px}
.app-page .pokja-support-flow strong{font-size:14px}
.app-page .pokja-support-flow small{font-size:12px;line-height:1.45}
.app-page .pokja-card{min-height:240px;padding:21px}
.app-page .pokja-card-head>span{font-size:13px;padding:7px 10px}
.app-page .pokja-card-head>b{font-size:22px}
.app-page .pokja-card h3{font-size:19px}
.app-page .pokja-card>p{font-size:15px;line-height:1.65}
.app-page .pokja-card-stats{flex-wrap:wrap;gap:10px 16px}
.app-page .pokja-card-stats span,
.app-page .pokja-card-stats b{font-size:13px}
.app-page .pokja-open{font-size:14px}
.app-page .pokja-detail-summary small{font-size:13px}
.app-page .pokja-detail-summary strong{font-size:24px}
.app-page .standard-head{align-items:flex-start;padding:19px 20px}
.app-page .standard-head>span{width:54px;height:54px;font-size:12px}
.app-page .standard-head h2{font-size:18px;line-height:1.45}
.app-page .standard-head p{font-size:15px;line-height:1.65}
.app-page .standard-score strong{font-size:23px}
.app-page .standard-score small{font-size:12px}
.app-page .element-list{padding:10px 20px 20px}
.app-page .element-row{grid-template-columns:90px minmax(0,1fr) 90px auto;gap:14px;padding:16px 0}
.app-page .element-code{font-size:13px;line-height:1.45}
.app-page .element-info strong{font-size:15px;line-height:1.6}
.app-page .element-info small,
.app-page .element-info span{font-size:13px;line-height:1.55;margin-top:7px}
.app-page .element-score{padding:8px}
.app-page .element-score strong{font-size:20px}
.app-page .element-score small{font-size:11px}
.app-page .score-legend strong{font-size:14px}
.app-page .score-legend small{font-size:13px}
.app-page .legend-score{width:36px;height:36px;font-size:14px}

/* Halaman publik dan autentikasi juga mengikuti ukuran baca baru */
:is(.portal-page,.survey-page,.culture-public-page,.survey-thanks-page,.login-page,.setup-page){font-size:17px;line-height:1.65}
:is(.portal-page,.survey-page,.culture-public-page,.survey-thanks-page,.login-page,.setup-page) :is(input,select,textarea,button,.button){font-size:16px;min-height:46px}
:is(.survey-page,.culture-public-page,.login-page,.setup-page) label{font-size:15px}

@media(max-width:1024px){
  .app-page .sidebar{width:min(88vw,340px)}
  .app-page .topbar{height:70px}
  .app-page .content{padding:18px}
}

@media(max-width:720px){
  html{font-size:16px}
  body{font-size:16px;overflow-x:hidden}
  img,svg,video,canvas{max-width:100%;height:auto}
  .app-page .topbar{height:66px;padding:0 10px}
  .app-page .content{padding:10px 9px 28px;overflow-x:hidden}
  .app-page .panel{padding:15px}
  .app-page .page-title{gap:12px;padding:15px}
  .app-page .title-with-icon{align-items:flex-start;gap:11px}
  .app-page .page-module-icon{width:44px;height:44px}
  .app-page main.content h1,
  .app-page .page-title h1{font-size:27px}
  .app-page main.content h2{font-size:21px}
  .app-page main.content h3{font-size:18px}
  .app-page main.content p{font-size:16px}
  .app-page main.content small{font-size:13px}
  .app-page main.content .button{width:100%;min-height:48px;font-size:16px}
  .app-page .page-title .title-actions,
  .app-page .page-title .title-actions form{width:100%}
  .app-page .topbar-actions .button,
  .app-page .icon-button{width:44px;min-height:44px;padding:0}
  .app-page .pokja-hero{padding:19px 17px}
  .app-page .pokja-hero h2{font-size:23px}
  .app-page .pokja-hero p:last-child{font-size:15px}
  .app-page .pokja-kpis{grid-template-columns:1fr 1fr}
  .app-page .pokja-flow{display:grid;grid-template-columns:1fr;overflow:visible}
  .app-page .flow-node{width:100%;min-height:0;align-items:flex-start;text-align:left}
  .app-page .pokja-support-flow{grid-template-columns:1fr}
  .app-page .pokja-card{min-height:0}
  .app-page .pokja-detail-summary{grid-template-columns:1fr 1fr}
  .app-page .pokja-detail-summary>div{min-width:0;padding:14px}
  .app-page .standard-head{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px}
  .app-page .standard-score{grid-column:1/-1;align-items:flex-start;text-align:left}
  .app-page .element-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;padding:16px 0}
  .app-page .element-code{grid-column:1}
  .app-page .element-score{grid-column:2;grid-row:1}
  .app-page .element-info{grid-column:1/-1}
  .app-page .element-row>.button{grid-column:1/-1;width:100%}
  .app-page .mobile-card-table tbody td{font-size:15px;line-height:1.55}
  .app-page .mobile-card-table tbody td::before{font-size:12px;line-height:1.4}
  .app-page .mobile-card-table .record-title,
  .app-page .mobile-card-table .user-cell,
  .app-page .mobile-card-table .module-table-cell{align-items:flex-end}
  .portal-header{flex-wrap:wrap}
  .portal-header nav{margin-left:auto}
  .portal-hero h1{font-size:34px}
}

@media(max-width:480px){
  .app-page .pokja-kpis,
  .app-page .pokja-detail-summary,
  .app-page .mini-stats,
  .portal-stats{grid-template-columns:1fr}
  .app-page .pokja-detail-summary>div:first-child{grid-column:auto}
  .app-page .mobile-card-table tbody td{grid-template-columns:1fr;text-align:left}
  .app-page .mobile-card-table td :is(.status,.validation-status,.risk-band,.incident-status,.infection-status){margin-left:0}
  .app-page .mobile-card-table td form{justify-self:stretch;width:100%}
  .app-page .mobile-card-table .record-title,
  .app-page .mobile-card-table .user-cell,
  .app-page .mobile-card-table .module-table-cell{align-items:flex-start}
  .app-page .standard-head{grid-template-columns:1fr}
  .app-page .standard-score{grid-column:1}
  .portal-header nav>a:not(.button){display:none}
}
