:root{--bg:#f4f7fb;--surface:#fff;--surface2:#f8fafc;--ink:#0f172a;--muted:#64748b;--line:#e5eaf1;--nav:#0b1220;--nav2:#111c31;--accent:#1f6feb;--accent2:#1557b0;--good:#16865a;--warn:#b7791f;--bad:#c2414f;--radius:18px;--shadow:0 12px 32px rgba(15,23,42,.08)}*{box-sizing:border-box}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg)}a{text-decoration:none;color:inherit}.app-shell{display:grid;grid-template-columns:275px 1fr;min-height:100vh}.sidebar{background:linear-gradient(180deg,var(--nav),#0e1729 70%,#0a1020);color:#d9e2f1;padding:22px 16px;position:sticky;top:0;height:100vh;overflow:auto}.brand{display:flex;align-items:center;gap:12px;padding:4px 10px 22px}.brand-mark{width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,#6ea8ff,#1f6feb);display:grid;place-items:center;font-weight:800;font-size:22px;color:white;box-shadow:0 8px 24px rgba(31,111,235,.35)}.brand strong{display:block;letter-spacing:.14em;font-size:15px}.brand small{display:block;color:#92a3ba;margin-top:3px}.nav-label{font-size:10px;letter-spacing:.14em;color:#697c97;padding:18px 12px 8px;font-weight:800}.nav-section{display:grid;gap:3px}.nav-link{display:flex;align-items:center;gap:11px;padding:10px 12px;border-radius:12px;color:#b7c4d6;font-size:13.5px;transition:.16s}.nav-link:hover{background:rgba(255,255,255,.06);color:#fff}.nav-link.active{background:linear-gradient(90deg,rgba(31,111,235,.25),rgba(31,111,235,.08));color:#fff;box-shadow:inset 3px 0 #5ba0ff}.nav-dot{width:7px;height:7px;border:1px solid #6f819b;border-radius:50%}.nav-link.active .nav-dot{background:#5ba0ff;border-color:#5ba0ff}.sidebar-foot{font-size:11px;color:#8090a7;margin:24px 10px 4px;padding-top:16px;border-top:1px solid rgba(255,255,255,.08)}.status-dot{display:inline-block;width:7px;height:7px;background:#34d399;border-radius:50%;margin-right:6px}.main{min-width:0}.topbar{height:82px;background:rgba(255,255,255,.9);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);display:flex;align-items:center;gap:15px;padding:0 28px;position:sticky;top:0;z-index:9}.topbar h1{margin:0;font-size:19px}.topbar p{margin:4px 0 0;color:var(--muted);font-size:12px}.menu-btn{display:none;border:0;background:var(--surface2);border-radius:10px;padding:9px 11px;font-size:18px}.user{margin-left:auto;display:flex;align-items:center;gap:10px}.user strong,.user small{display:block}.user strong{font-size:13px}.user small{font-size:11px;color:var(--muted);margin-top:2px}.avatar{width:36px;height:36px;border-radius:12px;background:#e8f1ff;color:#1f6feb;display:grid;place-items:center;font-weight:800}.logout{font-size:12px;color:#64748b;margin-left:8px}.content{padding:28px;max-width:1500px;margin:0 auto}.page-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:20px}.page-head h2{font-size:24px;margin:0 0 6px}.page-head p{margin:0;color:var(--muted);max-width:760px}.source-badge,.badge{display:inline-flex;align-items:center;padding:7px 10px;border-radius:999px;font-size:11px;font-weight:700;white-space:nowrap}.source-badge.blue{background:#e8f1ff;color:#1756a9}.source-badge.violet{background:#f0eaff;color:#6d45c7}.source-badge.amber{background:#fff3d7;color:#94620e}.source-badge.cyan{background:#e6f7fb;color:#08738a}.source-badge.green{background:#e7f7ef;color:#13714b}.source-badge.slate{background:#edf1f5;color:#475569}.grid{display:grid;gap:18px}.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.metric-label{font-size:12px;color:var(--muted);font-weight:700}.metric-value{font-size:29px;font-weight:800;margin-top:8px;letter-spacing:-.03em}.metric-sub{font-size:11px;color:var(--muted);margin-top:5px}.card h3{margin:0 0 12px;font-size:15px}.card p{color:var(--muted);line-height:1.6}.section-title{display:flex;justify-content:space-between;gap:15px;align-items:center;margin:25px 0 12px}.section-title h3{margin:0;font-size:17px}.table-wrap{overflow:auto;border:1px solid var(--line);border-radius:15px}table{width:100%;border-collapse:collapse;background:white;font-size:13px}th,td{padding:13px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:#f8fafc;color:#526175;font-size:11px;letter-spacing:.03em;text-transform:uppercase}tr:last-child td{border-bottom:0}.muted{color:var(--muted)}.badge.success{background:#e8f7ef;color:#13714b}.badge.warning{background:#fff4da;color:#8f5f11}.badge.danger{background:#fdebec;color:#a93743}.badge.neutral{background:#eef2f6;color:#536273}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--line);background:white;color:var(--ink);padding:10px 14px;border-radius:11px;font-size:12px;font-weight:750;cursor:pointer}.btn-primary{background:var(--accent);border-color:var(--accent);color:white}.btn-primary:hover{background:var(--accent2)}.btn-danger{background:#fff1f2;color:#b42334;border-color:#ffd4d8}.toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0}.input,.select{border:1px solid #d8e0ea;border-radius:11px;padding:10px 12px;background:white;min-width:180px;outline:none}.input:focus,.select:focus{border-color:#7fb1f6;box-shadow:0 0 0 3px #eaf3ff}.input.wide{min-width:320px}.alert{border-radius:12px;padding:12px 14px;margin-bottom:16px;font-size:13px}.alert.success{background:#e7f7ef;color:#116747}.alert.danger{background:#fdecec;color:#a52e3a}.alert.warning{background:#fff4dc;color:#80550d}.empty{padding:28px;text-align:center;color:var(--muted)}.hero{background:linear-gradient(120deg,#0e1b31,#16385d);color:white;border:0;overflow:hidden;position:relative}.hero:after{content:"";position:absolute;width:320px;height:320px;border-radius:50%;background:rgba(91,160,255,.18);right:-90px;top:-150px}.hero h2{font-size:25px;margin:0 0 8px}.hero p{color:#c6d3e6;max-width:760px}.health{display:flex;align-items:center;gap:10px}.health-dot{width:10px;height:10px;border-radius:50%;background:#9ca3af}.health-dot.ok{background:#24b47e}.health-dot.bad{background:#e45d68}.kv{display:grid;grid-template-columns:160px 1fr;gap:10px;padding:9px 0;border-bottom:1px solid var(--line);font-size:13px}.kv:last-child{border-bottom:0}.kv span{color:var(--muted)}.pagination{display:flex;gap:7px;align-items:center;margin-top:14px}.pagination a,.pagination span{padding:7px 10px;border:1px solid var(--line);border-radius:9px;background:white;font-size:12px}.pagination .active{background:var(--accent);color:white;border-color:var(--accent)}footer{padding:0 28px 28px;color:#8a98aa;font-size:11px}.login-body{min-height:100vh;display:grid;place-items:center;background:radial-gradient(circle at 20% 20%,#18385a 0,#0b1220 40%,#070c16 100%);padding:20px}.login-card{width:min(440px,100%);background:white;border-radius:24px;padding:30px;box-shadow:0 30px 80px rgba(0,0,0,.35)}.login-brand{display:flex;align-items:center;gap:12px;margin-bottom:25px}.login-card h1{margin:0;font-size:22px}.login-card p{color:var(--muted)}.field{display:grid;gap:7px;margin:13px 0}.field label{font-size:12px;font-weight:700}.field input{padding:12px;border:1px solid #d8e0ea;border-radius:11px}.login-card .btn{width:100%;margin-top:10px}@media(max-width:1100px){.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:1fr 1fr}}@media(max-width:820px){.app-shell{display:block}.sidebar{position:fixed;left:-290px;z-index:30;width:275px;transition:.2s}.sidebar.open{left:0}.menu-btn{display:block}.content{padding:18px}.topbar{padding:0 16px}.user>div{display:none}.grid-4,.grid-3,.grid-2{grid-template-columns:1fr}.page-head{display:block}.source-badge{margin-top:10px}.input.wide{min-width:0;width:100%}}
/* BABYLON v5 · Central Governance */
.textarea{border:1px solid #d8e0ea;border-radius:11px;padding:10px 12px;background:white;min-height:92px;width:100%;resize:vertical;font:inherit;outline:none}.textarea:focus{border-color:#7fb1f6;box-shadow:0 0 0 3px #eaf3ff}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.inline-form{display:inline-flex;gap:7px;align-items:center}.notice-box{border:1px solid #d9e8fb;background:#f5f9ff;border-radius:14px;padding:14px;margin:14px 0}.notice-box strong{display:block;font-size:13px}.notice-box p{margin:5px 0 0;font-size:12px}.hero-kicker{font-size:10px;font-weight:850;letter-spacing:.18em;color:#8fc1ff;margin-bottom:10px}.governance-hero{background:linear-gradient(120deg,#0a1729 0%,#12345b 55%,#164a77 100%)}.hero-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.btn-light{background:#fff;color:#15314f;border-color:#fff}.btn-ghost-light{background:rgba(255,255,255,.08);color:#fff;border-color:rgba(255,255,255,.25)}.section-title.compact{margin:0 0 8px}.section-title.compact a{font-size:12px;color:var(--accent);font-weight:750}.attention-card{padding-bottom:12px}.attention-row{display:flex;justify-content:space-between;align-items:center;padding:12px 4px;border-bottom:1px solid var(--line);font-size:13px}.attention-row:last-child{border-bottom:0}.attention-row strong{min-width:36px;height:30px;border-radius:10px;display:grid;place-items:center;background:#eef5ff;color:#1f6feb}.flow-steps{display:grid;gap:10px}.flow-steps>div{display:grid;grid-template-columns:30px 1fr;column-gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}.flow-steps>div:last-child{border-bottom:0}.flow-steps b{grid-row:1/3;width:28px;height:28px;border-radius:9px;background:#e8f1ff;color:#1f6feb;display:grid;place-items:center}.flow-steps span{font-size:13px;font-weight:800}.flow-steps small{font-size:11px;color:var(--muted);margin-top:2px}.approved-box{margin-top:16px;padding:16px;border-radius:14px;background:#eaf8f1;border:1px solid #cceedd}.approved-box small,.approved-box strong,.approved-box span{display:block}.approved-box small{font-size:10px;letter-spacing:.12em;color:#287253;font-weight:800}.approved-box strong{font-size:22px;margin:5px 0}.approved-box span{font-size:12px;color:#41685a}.decision-card{border-color:#cfe1f7;box-shadow:0 14px 36px rgba(31,111,235,.10)}.json-box{margin:0;background:#0f172a;color:#d7e3f3;border-radius:13px;padding:14px;min-height:160px;max-height:380px;overflow:auto;font-size:11px;line-height:1.6;white-space:pre-wrap}.architecture-strip{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 0}.architecture-strip div{min-width:165px;border:1px solid var(--line);border-radius:14px;padding:13px;background:#f8fafc}.architecture-strip b,.architecture-strip small{display:block}.architecture-strip b{font-size:13px}.architecture-strip small{font-size:10px;color:var(--muted);margin-top:4px}.architecture-strip span,.architecture-strip i{font-size:20px;color:#8ca0b8;font-style:normal}
@media(max-width:820px){.form-grid{grid-template-columns:1fr}.architecture-strip{display:grid;grid-template-columns:1fr}.architecture-strip span,.architecture-strip i{display:none}}

/* BABYLON v6 · clinic legal profile */
.legal-doc-card{position:relative}.document-state{display:flex;justify-content:flex-end;margin-bottom:10px}.upload-panel{margin-top:14px;border-top:1px solid var(--line);padding-top:12px}.upload-panel summary{cursor:pointer;font-size:12px;font-weight:800;color:var(--accent)}.upload-panel[open] summary{margin-bottom:12px}.legal-doc-card .kv{grid-template-columns:115px 1fr}.btn-primary{white-space:nowrap}@media(max-width:820px){.legal-doc-card .kv{grid-template-columns:1fr}.legal-doc-card .kv span{margin-bottom:-5px}}

/* BABYLON v7 · clinic master profile, map & building photo */
.back-link{display:inline-block;color:var(--accent);font-size:12px;font-weight:800;margin-bottom:8px}.clinic-profile-head .toolbar{justify-content:flex-end}.central-established-card{background:linear-gradient(145deg,#fff,#f7fbff);border-color:#d8e8fb}.clinic-profile-hero{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(320px,.75fr);gap:18px}.clinic-building-photo{position:relative;min-height:390px;border-radius:22px;overflow:hidden;background:#e8eef5;border:1px solid var(--line);box-shadow:var(--shadow)}.clinic-building-photo>img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover}.photo-placeholder{height:100%;min-height:260px;display:grid;place-items:center;align-content:center;text-align:center;gap:7px;padding:28px;background:linear-gradient(145deg,#eef4fb,#f9fbfd);color:var(--muted)}.photo-placeholder strong{color:#334155}.photo-placeholder span{font-size:12px;max-width:330px;line-height:1.55}.photo-placeholder-icon{width:58px;height:58px;border-radius:18px;background:#dce9f8;color:#31679f;display:grid;place-items:center;font-size:28px;margin-bottom:5px}.photo-overlay{position:absolute;left:0;right:0;bottom:0;padding:60px 22px 22px;background:linear-gradient(transparent,rgba(6,15,28,.84));color:#fff}.photo-overlay strong,.photo-overlay small{display:block}.photo-overlay strong{font-size:21px;margin-top:9px}.photo-overlay small{margin-top:4px;color:#dce7f4}.clinic-summary-card{display:flex;flex-direction:column;justify-content:center}.profile-eyebrow{font-size:10px;letter-spacing:.18em;font-weight:850;color:var(--accent);margin-bottom:9px}.clinic-summary-card h3{font-size:22px;margin-bottom:6px}.profile-code{display:inline-flex;align-self:flex-start;padding:7px 10px;border-radius:9px;background:#eef5ff;color:#1756a9;font-weight:850;font-size:12px;margin-bottom:18px}.profile-facts{display:grid;gap:0}.profile-facts>div{padding:12px 0;border-bottom:1px solid var(--line)}.profile-facts>div:last-child{border-bottom:0}.profile-facts span,.profile-facts strong{display:block}.profile-facts span{font-size:11px;color:var(--muted);margin-bottom:3px}.profile-facts strong{font-size:13px}.clinic-map-card{padding:0;overflow:hidden}.clinic-map{width:100%;height:390px;border:0;display:block;background:#eef2f6}.map-meta{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:16px 18px}.map-meta strong,.map-meta span,.map-meta small{display:block}.map-meta strong{font-size:13px}.map-meta span,.map-meta small{color:var(--muted);font-size:11px;margin-top:4px}.read-only-doc .toolbar{margin-bottom:0}.profile-edit-callout{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-top:18px;padding:18px 20px;border-radius:16px;border:1px solid #cfe1f7;background:#f5f9ff}.profile-edit-callout strong,.profile-edit-callout span{display:block}.profile-edit-callout strong{font-size:14px}.profile-edit-callout span{font-size:12px;color:var(--muted);margin-top:4px}.edit-profile-card{max-width:1050px}.location-input-box{margin:18px 0 6px;padding:16px;border-radius:15px;background:#f7faff;border:1px solid #dbe9fa}.location-input-box>div:first-child strong,.location-input-box>div:first-child span{display:block}.location-input-box>div:first-child span{font-size:11px;color:var(--muted);margin-top:4px;line-height:1.5}.photo-edit-preview{padding:0;overflow:hidden;min-height:300px}.photo-edit-preview>img{width:100%;height:330px;object-fit:cover;display:block}.photo-caption{padding:14px 16px}.photo-caption strong,.photo-caption span{display:block}.photo-caption strong{font-size:12px}.photo-caption span{font-size:11px;color:var(--muted);margin-top:4px}
@media(max-width:980px){.clinic-profile-hero{grid-template-columns:1fr}.clinic-building-photo{min-height:330px}.clinic-summary-card{min-height:auto}.clinic-profile-head .toolbar{justify-content:flex-start}.map-meta,.profile-edit-callout{align-items:flex-start;flex-direction:column}}
@media(max-width:820px){.clinic-building-photo{min-height:280px}.clinic-map{height:330px}.map-meta .btn,.profile-edit-callout .btn{width:100%}}
/* v7.1 - prevent legal document form fields from overflowing their cards */
.legal-doc-card{min-width:0}
.legal-doc-card form,.legal-doc-card .field{min-width:0;max-width:100%}
.document-date-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;min-width:0}
.document-date-grid .field{min-width:0}
.document-date-grid .input,.legal-doc-card input[type="file"]{display:block;width:100%;min-width:0;max-width:100%}
.legal-doc-card input[type="file"]{overflow:hidden}
@media(max-width:520px){.document-date-grid{grid-template-columns:1fr}}


/* BABYLON v7.2 · Central Approval Center notifications */
.notification-wrap{position:relative;margin-left:auto}
.notification-btn{position:relative;width:42px;height:42px;border:1px solid var(--line);border-radius:13px;background:#fff;display:grid;place-items:center;cursor:pointer;box-shadow:0 4px 12px rgba(15,23,42,.04)}
.notification-btn:hover{background:#f8fbff;border-color:#cfe0f5}
.notification-bell{font-size:18px;line-height:1}
.notification-count{position:absolute;right:-5px;top:-6px;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#d73545;color:#fff;border:2px solid #fff;font-size:10px;font-weight:850;display:grid;place-items:center;box-shadow:0 4px 10px rgba(194,65,79,.25)}
.notification-panel{display:none;position:absolute;right:0;top:50px;width:min(390px,calc(100vw - 30px));background:#fff;border:1px solid var(--line);border-radius:17px;box-shadow:0 22px 55px rgba(15,23,42,.18);overflow:hidden;z-index:60}
.notification-wrap.open .notification-panel{display:block}
.notification-panel-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:15px 16px;border-bottom:1px solid var(--line);background:#fbfcfe}
.notification-panel-head strong,.notification-panel-head small{display:block}.notification-panel-head strong{font-size:13px}.notification-panel-head small{font-size:10px;color:var(--muted);margin-top:3px}.notification-panel-head>a{font-size:11px;font-weight:800;color:var(--accent)}
.notification-list{max-height:380px;overflow:auto}.notification-item{display:block;padding:13px 16px;border-bottom:1px solid var(--line);transition:.15s}.notification-item:hover{background:#f7faff}.notification-item strong,.notification-item small,.notification-source{display:block}.notification-item strong{font-size:12px;line-height:1.45;margin:4px 0}.notification-item small{font-size:10px;color:var(--muted)}.notification-source{font-size:9px;font-weight:850;letter-spacing:.08em;text-transform:uppercase;color:#1f6feb}.notification-empty{padding:24px 16px;text-align:center;color:var(--muted);font-size:12px}.notification-panel-foot{display:block;padding:12px 16px;text-align:center;font-size:11px;font-weight:800;color:var(--accent);background:#fbfcfe}
.approval-new-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px;padding:15px 18px;border:1px solid #ffd9dd;border-radius:16px;background:#fff7f8;box-shadow:0 8px 24px rgba(194,65,79,.06)}.approval-new-banner>div{display:flex;align-items:center;gap:13px}.approval-new-icon{width:42px;height:42px;border-radius:13px;background:#fde8ea;display:grid;place-items:center;font-size:18px}.approval-new-banner strong{display:block;font-size:13px}.approval-new-banner p{margin:4px 0 0;color:var(--muted);font-size:11px;line-height:1.5}
@media(max-width:820px){.notification-wrap{margin-left:auto}.notification-panel{position:fixed;right:12px;left:12px;top:74px;width:auto}.approval-new-banner{align-items:flex-start;flex-direction:column}.approval-new-banner .btn{width:100%}}

/* v9.3 profile approval comparison */
.comparison-table{padding:0;overflow:hidden}.comparison-row{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(0,1.15fr) minmax(0,1.15fr);gap:16px;align-items:start;padding:12px 16px;border-bottom:1px solid var(--line);font-size:12px}.comparison-row:last-child{border-bottom:0}.comparison-head{background:#f7f9fc;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.08em}.comparison-row.changed{background:#fffaf0}.comparison-row.changed strong{color:#915c00}.comparison-row em{display:inline-block;margin-left:7px;padding:2px 6px;border-radius:6px;background:#fff0c7;color:#8a5a00;font-style:normal;font-size:9px;letter-spacing:.06em}@media(max-width:760px){.comparison-row{grid-template-columns:1fr;gap:5px}.comparison-head{display:none}.comparison-row>span:first-child{font-weight:800;color:var(--muted)}}


/* v9.3.1 babylon ui fixes */
.topbar{justify-content:flex-start;gap:18px}
.topbar-left{display:flex;align-items:center;gap:14px;min-width:0}
.topbar-title{min-width:0}
.topbar-title h1,.topbar-title p{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.topbar-spacer{flex:1 1 auto}
.topbar-actions{display:flex;align-items:center;gap:12px;flex:0 0 auto}
.notification-wrap{margin-left:0}
.user{margin-left:0;display:flex;align-items:center;gap:12px;padding:6px 8px 6px 10px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 8px 20px rgba(15,23,42,.04)}
.avatar{position:relative;overflow:hidden;flex:0 0 36px}.avatar-fallback{width:100%;height:100%;display:grid;place-items:center}.avatar.avatar-has-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:inherit;display:block}.user-meta{display:grid;gap:2px;min-width:0}
.user-meta strong,.user-meta small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:240px}
.logout{display:none}
.logout-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;border:1px solid #d9e3ef;background:#f8fbff;color:#475569;transition:.18s ease;flex:0 0 auto}
.logout-icon:hover{background:#eef5ff;color:#1f6feb;border-color:#bfd6f6}
.logout-icon svg{width:18px;height:18px;display:block}
.photo-placeholder.is-hidden{display:none}
.kv{grid-template-columns:minmax(118px,160px) minmax(0,1fr)}
.kv strong{min-width:0;overflow-wrap:anywhere;word-break:break-word}
.legal-doc-card{display:flex;flex-direction:column;justify-content:flex-start;min-width:0;overflow:hidden}
.legal-doc-card h3{line-height:1.45;margin-bottom:14px}
.legal-doc-card .kv{grid-template-columns:minmax(88px,110px) minmax(0,1fr);align-items:start}
.legal-doc-card .kv span,.legal-doc-card .kv strong{display:block;min-width:0}
.legal-doc-card .kv strong{overflow-wrap:anywhere;word-break:break-word;line-height:1.5}
.read-only-doc .toolbar{margin-top:16px}
@media (max-width:1100px){.grid-3{grid-template-columns:1fr 1fr}.user-meta strong,.user-meta small{max-width:180px}}
@media (max-width:900px){.topbar{padding:12px 16px;height:auto;min-height:82px;align-items:center}.topbar-left{flex:1 1 auto}.topbar-title p{white-space:normal}.user-meta strong,.user-meta small{max-width:150px}}
@media (max-width:820px){.topbar{align-items:flex-start}.topbar-actions{margin-left:auto}.user{padding:0;border:0;background:transparent;box-shadow:none}.user-meta{display:none}.logout-icon{width:36px;height:36px}.grid-3{grid-template-columns:1fr}.legal-doc-card .kv{grid-template-columns:1fr;gap:4px}.notification-panel{position:fixed;right:12px;left:12px;top:74px;width:auto}}


/* v9.5 clinic-scoped Register Portal data */
.scope-info-banner{display:flex;align-items:center;gap:14px;padding:17px 19px;border-radius:17px;border:1px solid #cfe1f7;background:linear-gradient(135deg,#f6faff,#fff);margin-bottom:20px}.scope-info-icon{width:44px;height:44px;border-radius:14px;background:#e8f1ff;color:#1f6feb;display:grid;place-items:center;font-size:20px;flex:0 0 44px}.scope-info-banner strong,.scope-info-banner span{display:block}.scope-info-banner strong{font-size:14px}.scope-info-banner span{font-size:12px;color:var(--muted);margin-top:4px;line-height:1.55}.clinic-scope-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.clinic-scope-card{display:block;background:#fff;border:1px solid var(--line);border-radius:20px;padding:20px;box-shadow:var(--shadow);transition:.18s ease;min-width:0}.clinic-scope-card:hover{transform:translateY(-2px);border-color:#c5daf4;box-shadow:0 18px 42px rgba(15,23,42,.1)}.clinic-scope-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:15px}.clinic-scope-mark{width:44px;height:44px;border-radius:14px;background:#e8f1ff;color:#1f6feb;display:grid;place-items:center;font-weight:900;font-size:18px}.clinic-scope-name{display:block;font-size:17px;line-height:1.3}.clinic-scope-code{display:block;color:var(--muted);font-size:12px;margin-top:5px}.clinic-scope-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0}.clinic-scope-stats>div{padding:11px 8px;border-radius:13px;background:#f8fafc;text-align:center;min-width:0}.clinic-scope-stats b,.clinic-scope-stats span{display:block}.clinic-scope-stats b{font-size:18px}.clinic-scope-stats span{font-size:10px;color:var(--muted);margin-top:3px}.clinic-scope-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:14px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.clinic-scope-foot b{color:var(--accent);font-size:12px}.clinic-context-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:16px 18px;border-radius:18px;background:linear-gradient(135deg,#0e1b31,#173e67);color:#fff}.clinic-context-main{display:flex;align-items:center;gap:13px;min-width:0}.clinic-context-avatar{width:46px;height:46px;border-radius:15px;background:rgba(255,255,255,.14);display:grid;place-items:center;font-size:18px;font-weight:900;flex:0 0 46px}.clinic-context-main strong,.clinic-context-main small,.clinic-context-kicker{display:block}.clinic-context-kicker{font-size:9px;letter-spacing:.15em;color:#9ec9ff;font-weight:850;margin-bottom:4px}.clinic-context-main strong{font-size:16px}.clinic-context-main small{font-size:11px;color:#c7d7e8;margin-top:4px}.clinic-context-banner .btn{background:#fff;color:#15314f;border-color:#fff}.compact-context{margin-bottom:18px}.employee-scope-metrics{margin-bottom:18px}.clinic-employee-filter{padding:18px 20px;margin-bottom:18px}.clinic-employee-filter-grid{display:grid;grid-template-columns:minmax(250px,1.4fr) minmax(170px,.65fr) minmax(190px,.75fr) auto;gap:12px;align-items:end}.clinic-employee-filter-grid .field{margin:0}.clinic-employee-filter-grid input,.clinic-employee-filter-grid select{width:100%;min-height:44px;border:1px solid #d8e0ea;border-radius:11px;padding:10px 12px;background:#fff}.clinic-employee-list-card{padding:20px}.babylon-employee-table td{vertical-align:middle}.babylon-employee-person{display:flex;align-items:center;gap:11px;min-width:220px}.babylon-employee-person img,.babylon-employee-avatar{width:44px;height:44px;border-radius:13px;object-fit:cover;flex:0 0 44px}.babylon-employee-avatar{display:grid;place-items:center;background:#e8f1ff;color:#1f6feb;font-weight:850}.babylon-employee-person strong,.babylon-employee-person small{display:block}.babylon-employee-person small{font-size:11px;color:var(--muted);margin-top:3px}.btn-sm{padding:8px 11px;min-height:36px}.mono-small{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px}.clinic-employee-pagination{justify-content:flex-end;margin-top:18px;flex-wrap:wrap}.clinic-employee-pagination .disabled{opacity:.4;pointer-events:none}.babylon-detail-hero{display:grid;grid-template-columns:minmax(340px,.9fr) minmax(0,1.1fr);gap:20px}.babylon-photo-card{min-height:420px;padding:26px 24px}.babylon-photo-card img,.babylon-photo-card .employee-photo-placeholder{width:min(100%,240px);height:300px;border-radius:32px;object-fit:cover;box-shadow:0 18px 40px rgba(15,23,42,.12)}.employee-photo-card{text-align:center;display:grid;place-items:center;align-content:center}.employee-photo-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,#e8f1ff,#d8e8ff);color:#1f6feb;font-size:70px;font-weight:900}.employee-photo-card>div:last-child{margin-top:18px}.employee-photo-card strong,.employee-photo-card span{display:block}.employee-photo-card strong{font-size:25px;line-height:1.2}.employee-photo-card span{font-size:13px;color:var(--muted);margin-top:6px}.register-clinic-data-card{padding:20px}.register-clinic-data-head{display:flex;justify-content:space-between;align-items:center;gap:16px}.register-clinic-data-head strong,.register-clinic-data-head span{display:block}.register-clinic-data-head>div>span{font-size:11px;color:var(--muted);margin-top:4px}.register-clinic-data-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:18px 0}.register-clinic-data-grid>div{padding:14px;border-radius:14px;background:#f8fafc;border:1px solid #edf1f5}.register-clinic-data-grid b,.register-clinic-data-grid span{display:block}.register-clinic-data-grid b{font-size:21px}.register-clinic-data-grid span{font-size:10px;color:var(--muted);margin-top:4px}.register-clinic-data-card .toolbar{margin-bottom:0}
@media(max-width:1150px){.clinic-scope-grid{grid-template-columns:1fr 1fr}.register-clinic-data-grid{grid-template-columns:repeat(3,1fr)}.clinic-employee-filter-grid{grid-template-columns:1fr 1fr}.clinic-employee-filter-grid .filter-actions{grid-column:1/-1}}
@media(max-width:820px){.clinic-scope-grid{grid-template-columns:1fr}.clinic-context-banner{align-items:flex-start;flex-direction:column}.babylon-detail-hero{grid-template-columns:1fr}.register-clinic-data-grid{grid-template-columns:1fr 1fr}.clinic-scope-stats{grid-template-columns:1fr 1fr 1fr}.clinic-employee-pagination{justify-content:flex-start}}
@media(max-width:620px){.clinic-employee-filter-grid{grid-template-columns:1fr}.clinic-employee-filter-grid .filter-actions{grid-column:auto}.register-clinic-data-grid{grid-template-columns:1fr}.clinic-scope-stats{grid-template-columns:1fr}.babylon-photo-card img,.babylon-photo-card .employee-photo-placeholder{width:min(100%,200px);height:250px}}


/* v9.6 clinic-scoped Rekam Medis patients */
.patient-clinic-grid .clinic-scope-card{min-height:230px;display:flex;flex-direction:column}.patient-clinic-source{margin:18px 0;padding:13px 14px;border-radius:14px;background:#f8fafc;border:1px solid #edf1f5}.patient-clinic-source span,.patient-clinic-source strong{display:block}.patient-clinic-source span{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}.patient-clinic-source strong{font-size:13px;margin-top:4px}.patient-clinic-grid .clinic-scope-foot{margin-top:auto}
.patient-summary-grid{margin-bottom:18px}.patient-metric-text{font-size:20px;font-weight:850;line-height:1.25;margin-top:10px}.patient-ok{color:#13714b}.patient-warn{color:#8f5f11}
.clinic-patient-filter{padding:18px 20px;margin-bottom:18px}.clinic-patient-filter-grid{display:grid;grid-template-columns:minmax(320px,1fr) auto;gap:14px;align-items:end}.clinic-patient-filter-grid .field{margin:0}.clinic-patient-filter-grid input{width:100%;min-height:44px;border:1px solid #d8e0ea;border-radius:11px;padding:10px 12px;background:#fff}.clinic-patient-filter-grid .filter-actions{display:flex;align-items:center;gap:9px}
.clinic-patient-list-card{padding:20px}.babylon-patient-table td{vertical-align:middle}.patient-section-note{margin:4px 0 0!important;font-size:11px}.patient-subline{display:block;color:var(--muted);font-size:11px;margin-top:4px}.patient-contact-cell{display:grid;gap:3px;min-width:190px}.patient-contact-cell strong{font-size:13px;color:#172033}.patient-contact-cell span{font-size:12px;font-weight:750;color:#34445c;overflow-wrap:anywhere}.patient-contact-cell small{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.clinic-patient-pagination{justify-content:flex-end;margin-top:18px;flex-wrap:wrap}.clinic-patient-pagination .disabled{opacity:.4;pointer-events:none}
.patient-detail-head{align-items:center}.patient-detail-banner{display:grid;grid-template-columns:.7fr 1.5fr .8fr;gap:1px;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--line);box-shadow:var(--shadow)}.patient-detail-banner>div{background:#fff;padding:18px 20px}.patient-detail-banner span,.patient-detail-banner strong{display:block}.patient-detail-banner span{font-size:10px;color:var(--muted);font-weight:800;letter-spacing:.12em}.patient-detail-banner strong{font-size:18px;margin-top:7px}.patient-detail-grid .kv strong{overflow-wrap:anywhere;word-break:break-word}.allergy-grid>div{padding:16px;border:1px solid var(--line);border-radius:14px;background:#fbfdff}.allergy-grid span,.allergy-grid strong{display:block}.allergy-grid span{font-size:11px;color:var(--muted);margin-bottom:5px}.allergy-grid strong{font-size:13px}
.patient-governance-note{display:grid;grid-template-columns:48px 1fr;gap:14px;align-items:center;margin-top:18px;padding:18px 20px;border:1px solid #cfe7dc;border-radius:18px;background:linear-gradient(135deg,#f3fbf7,#fff)}.patient-governance-icon{width:48px;height:48px;border-radius:15px;background:#e3f5eb;color:#13714b;display:grid;place-items:center;font-weight:900;font-size:13px}.patient-governance-note strong,.patient-governance-note span{display:block}.patient-governance-note span{font-size:12px;color:var(--muted);line-height:1.6;margin-top:4px}
@media(max-width:980px){.patient-summary-grid{grid-template-columns:1fr 1fr}.patient-detail-banner{grid-template-columns:1fr}}
@media(max-width:720px){.patient-summary-grid{grid-template-columns:1fr}.clinic-patient-filter-grid{grid-template-columns:1fr}.clinic-patient-filter-grid .filter-actions{flex-direction:column}.clinic-patient-filter-grid .filter-actions .btn{width:100%}.clinic-patient-pagination{justify-content:flex-start}.patient-detail-banner strong{font-size:16px}}

/* Data Master hub */
.master-page-head{align-items:center;margin-bottom:20px}.master-eyebrow{font-size:10px;font-weight:850;letter-spacing:.16em;color:#4774ad;margin-bottom:7px}.master-clinic-chip{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid #dbe5f1;border-radius:15px;background:#fff;box-shadow:0 8px 22px rgba(15,23,42,.05)}.master-clinic-chip>span{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#eaf3ff;color:#1f6feb;font-weight:900}.master-clinic-chip strong,.master-clinic-chip small{display:block}.master-clinic-chip strong{font-size:12px}.master-clinic-chip small{font-size:10px;color:var(--muted);margin-top:2px}.master-hero-card{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;gap:24px;padding:25px 28px;border-radius:22px;background:linear-gradient(120deg,#0c1b30,#123c68 60%,#17609b);color:#fff;box-shadow:0 20px 45px rgba(15,43,77,.16);margin-bottom:20px}.master-hero-card:after{content:"";position:absolute;width:260px;height:260px;border-radius:50%;right:-90px;top:-130px;background:rgba(255,255,255,.08)}.master-hero-card>div{position:relative;z-index:1}.master-hero-kicker{display:block;font-size:10px;font-weight:850;letter-spacing:.18em;color:#9dccff;margin-bottom:8px}.master-hero-card h3{font-size:20px;margin:0 0 7px}.master-hero-card p{margin:0;color:#c8d9ea;max-width:720px;font-size:12px;line-height:1.6}.master-hero-orbit{flex:0 0 72px;width:72px;height:72px;border-radius:22px;display:grid;place-items:center;align-content:center;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(8px)}.master-hero-orbit span{font-size:27px;font-weight:900;line-height:1}.master-hero-orbit small{font-size:8px;letter-spacing:.14em;margin-top:5px;color:#dceafa}.master-data-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:17px}.master-data-card{position:relative;overflow:hidden;min-width:0;display:flex;flex-direction:column;min-height:250px;padding:20px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 12px 30px rgba(15,23,42,.06);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.master-data-card:hover{transform:translateY(-3px);box-shadow:0 18px 42px rgba(15,23,42,.1);border-color:#bfd2e8}.master-data-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--master-accent,#1f6feb)}.master-data-card.tone-blue{--master-accent:#1f6feb;--master-soft:#eaf3ff;--master-ink:#1756a9}.master-data-card.tone-violet{--master-accent:#7857d7;--master-soft:#f1edff;--master-ink:#6745bf}.master-data-card.tone-green{--master-accent:#1b9366;--master-soft:#e9f8f1;--master-ink:#13714b}.master-data-card.tone-amber{--master-accent:#cf8a1c;--master-soft:#fff4dc;--master-ink:#8f5f11}.master-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.master-card-icon{width:48px;height:48px;border-radius:15px;display:grid;place-items:center;background:var(--master-soft);color:var(--master-ink);font-weight:900;font-size:13px;letter-spacing:.04em}.master-card-status{font-size:9px;font-weight:850;letter-spacing:.08em;padding:6px 8px;border-radius:999px}.master-card-status.ready{background:#e8f7ef;color:#13714b}.master-card-status.waiting{background:#fff4da;color:#8f5f11}.master-card-body{padding:20px 0 16px}.master-card-count{display:block;font-size:27px;line-height:1;font-weight:900;letter-spacing:-.03em;color:#152238}.master-card-body h3{font-size:16px;margin:8px 0 7px}.master-card-body p{font-size:11.5px;line-height:1.6;color:var(--muted);margin:0;max-width:500px}.master-card-foot{margin-top:auto;padding-top:14px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:12px}.master-card-foot>span{font-size:10px;font-weight:800;color:#748399}.master-card-foot b{font-size:11px;color:var(--master-ink)}.master-card-foot b span{font-size:15px;margin-left:4px}.master-info-strip{display:flex;align-items:flex-start;gap:13px;margin-top:18px;padding:16px 18px;border:1px solid #dce8f5;border-radius:16px;background:linear-gradient(135deg,#f7faff,#fff)}.master-info-mark{width:34px;height:34px;flex:0 0 34px;border-radius:11px;display:grid;place-items:center;background:#eaf3ff;color:#1f6feb;font-weight:900}.master-info-strip strong,.master-info-strip span{display:block}.master-info-strip strong{font-size:13px}.master-info-strip span{font-size:11px;color:var(--muted);line-height:1.55;margin-top:4px}.master-back-link{margin-bottom:12px}.master-module-context{margin-bottom:18px}.master-module-card{padding:20px}.master-module-note{font-size:11px;margin:4px 0 0}.master-module-pagination{justify-content:flex-end;flex-wrap:wrap;margin-top:18px}.master-module-pagination .disabled{opacity:.42;pointer-events:none}.master-clinic-grid{margin-bottom:10px}
@media(max-width:900px){.master-data-grid{grid-template-columns:1fr}.master-page-head{align-items:flex-start}.master-clinic-chip{margin-top:10px}.master-hero-card{align-items:flex-start}.master-hero-orbit{display:none}}
@media(max-width:620px){.master-hero-card{padding:22px 19px}.master-data-card{min-height:230px}.master-clinic-chip{width:100%}.master-card-foot{align-items:flex-start;flex-direction:column}}

/* v9.7.1 Data Master clean UI */
.dm-shell{max-width:1260px;margin:0 auto}.dm-overview{display:flex;align-items:center;justify-content:space-between;gap:28px;padding:26px 28px;margin-bottom:22px;background:linear-gradient(135deg,#fff 0%,#f7faff 100%);border:1px solid #dfe7f1;border-radius:22px;box-shadow:0 12px 34px rgba(15,23,42,.06);position:relative;overflow:hidden}.dm-overview:after{content:"";position:absolute;width:180px;height:180px;border-radius:50%;right:-75px;top:-95px;background:rgba(31,111,235,.06)}.dm-overview-copy{min-width:0;position:relative;z-index:1}.dm-kicker{display:block;font-size:10px;font-weight:850;letter-spacing:.16em;color:#4774ad;margin-bottom:8px}.dm-overview h2{margin:0 0 7px;font-size:27px;letter-spacing:-.02em}.dm-overview p{margin:0;max-width:760px;color:var(--muted);font-size:13px;line-height:1.65}.dm-clinic{position:relative;z-index:1;display:flex;align-items:center;gap:11px;min-width:260px;padding:11px 13px;border:1px solid #dbe5f1;border-radius:16px;background:#fff;box-shadow:0 8px 20px rgba(15,23,42,.04)}.dm-clinic-avatar{width:42px;height:42px;flex:0 0 42px;border-radius:13px;display:grid;place-items:center;background:#eaf3ff;color:#1f6feb;font-weight:900;font-size:16px}.dm-clinic strong,.dm-clinic small{display:block}.dm-clinic strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dm-clinic small{margin-top:3px;color:var(--muted);font-size:10px}.dm-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 2px 14px}.dm-section-head h3{margin:0;font-size:17px}.dm-section-head p{margin:4px 0 0;color:var(--muted);font-size:11px}.dm-section-head>span{padding:7px 10px;border-radius:999px;background:#edf3fa;color:#52667f;font-size:10px;font-weight:800}.dm-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.dm-card{--dm-accent:#1f6feb;--dm-soft:#eaf3ff;--dm-text:#1756a9;display:flex;flex-direction:column;min-width:0;min-height:245px;padding:20px 21px;border:1px solid #e0e7ef;border-radius:20px;background:#fff;box-shadow:0 10px 26px rgba(15,23,42,.055);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;position:relative;overflow:hidden}.dm-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--dm-accent)}.dm-card:hover{transform:translateY(-2px);border-color:#c5d5e7;box-shadow:0 16px 34px rgba(15,23,42,.09)}.dm-blue{--dm-accent:#1f6feb;--dm-soft:#eaf3ff;--dm-text:#1756a9}.dm-violet{--dm-accent:#7655d4;--dm-soft:#f1edff;--dm-text:#6544ba}.dm-green{--dm-accent:#16865a;--dm-soft:#e8f7ef;--dm-text:#13714b}.dm-amber{--dm-accent:#c78018;--dm-soft:#fff3da;--dm-text:#8a5b10}.dm-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px}.dm-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:var(--dm-soft);color:var(--dm-text)}.dm-icon svg{width:23px;height:23px}.dm-state{font-size:9px;font-weight:850;letter-spacing:.06em;padding:6px 8px;border-radius:999px}.dm-state.is-ready{background:#e8f7ef;color:#13714b}.dm-state.is-waiting{background:#fff3da;color:#8a5b10}.dm-card-content{padding:18px 0 16px}.dm-count{display:block;font-size:29px;line-height:1;font-weight:900;letter-spacing:-.04em;color:#12213a}.dm-card-content h3{margin:9px 0 7px;font-size:16px}.dm-card-content p{margin:0;color:var(--muted);font-size:11.5px;line-height:1.62;max-width:500px}.dm-card-bottom{margin-top:auto;padding-top:13px;border-top:1px solid #edf1f5;display:flex;align-items:center;justify-content:space-between;gap:12px}.dm-card-bottom>span{font-size:10px;font-weight:800;color:#8290a2}.dm-card-bottom strong{font-size:11px;color:var(--dm-text)}.dm-card-bottom b{font-size:15px;margin-left:4px}.dm-note{display:flex;align-items:flex-start;gap:12px;margin-top:18px;padding:14px 16px;border:1px solid #dfe8f3;border-radius:15px;background:#f8fbff}.dm-note>span{width:30px;height:30px;flex:0 0 30px;border-radius:10px;display:grid;place-items:center;background:#eaf3ff;color:#1f6feb;font-weight:900}.dm-note p{margin:0;color:#64748b;font-size:11px;line-height:1.55}.dm-note strong{color:#334155}
@media(max-width:900px){.dm-overview{align-items:flex-start;flex-direction:column}.dm-clinic{min-width:0;width:100%}.dm-grid{grid-template-columns:1fr}}
@media(max-width:620px){.dm-overview{padding:21px 18px}.dm-overview h2{font-size:24px}.dm-card{min-height:225px}.dm-section-head{align-items:flex-start}.dm-section-head>span{display:none}}

.dm-toolbar{display:flex;gap:9px;justify-content:flex-end;flex-wrap:wrap;margin:-8px 0 18px}.dm-total-clinic{position:relative;z-index:1;min-width:150px;padding:16px 18px;border-radius:16px;background:#eef5ff;border:1px solid #d6e7fb;text-align:center}.dm-total-clinic strong,.dm-total-clinic span{display:block}.dm-total-clinic strong{font-size:28px;color:#1756a9}.dm-total-clinic span{margin-top:4px;font-size:10px;font-weight:800;color:#57718f;text-transform:uppercase;letter-spacing:.08em}.dm-clinic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.dm-clinic-card{display:flex;flex-direction:column;min-width:0;min-height:205px;padding:19px;border:1px solid #e0e7ef;border-radius:19px;background:#fff;box-shadow:0 10px 26px rgba(15,23,42,.055);transition:.18s ease}.dm-clinic-card:hover{transform:translateY(-2px);border-color:#c5d5e7;box-shadow:0 16px 34px rgba(15,23,42,.09)}.dm-clinic-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px}.dm-clinic-type{font-size:9px;font-weight:850;letter-spacing:.06em;padding:6px 8px;border-radius:999px;background:#eef2f6;color:#536273}.dm-clinic-type.is-central{background:#e8f7ef;color:#13714b}.dm-clinic-card>strong{font-size:15px;line-height:1.35}.dm-clinic-card>small{margin-top:5px;color:var(--muted);font-size:11px}.dm-clinic-card-foot{margin-top:auto;padding-top:14px;border-top:1px solid #edf1f5;display:flex;align-items:center;justify-content:space-between;gap:10px}.dm-clinic-card-foot span{font-size:10px;color:#8290a2}.dm-clinic-card-foot b{font-size:11px;color:#1756a9}
@media(max-width:1100px){.dm-clinic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.dm-clinic-grid{grid-template-columns:1fr}.dm-toolbar{justify-content:flex-start}}


/* v9.7.2 clinic selector search */
.clinic-search-card{margin:0 0 16px;padding:14px 16px;border:1px solid #dfe7f1;border-radius:17px;background:linear-gradient(180deg,#fff,#fbfdff);box-shadow:0 8px 24px rgba(15,23,42,.045)}
.clinic-search-form{display:flex;align-items:center;gap:10px}
.clinic-search-input{position:relative;flex:1 1 520px;min-width:220px}
.clinic-search-input>span{position:absolute;left:14px;top:50%;transform:translateY(-50%);width:18px;height:18px;color:#7890ad;pointer-events:none}
.clinic-search-input svg{width:18px;height:18px;display:block}
.clinic-search-input input{width:100%;height:46px;padding:0 15px 0 43px;border:1px solid #d6e0ec;border-radius:13px;background:#fff;color:var(--ink);font:inherit;font-size:13px;outline:none;transition:.18s ease}
.clinic-search-input input::placeholder{color:#95a3b5}
.clinic-search-input input:focus{border-color:#7fb1f6;box-shadow:0 0 0 4px #eaf3ff}
.clinic-search-form>.btn{height:46px;min-width:104px;border-radius:13px;white-space:nowrap}
.clinic-search-result{margin-top:10px;padding-top:10px;border-top:1px solid #edf1f5;color:#68788c;font-size:11px}
.clinic-search-result strong{color:#334155}
.clinic-search-empty{grid-column:1/-1;min-height:150px;display:grid;place-items:center;align-content:center;text-align:center;box-shadow:none;background:#fbfdff}
.clinic-search-empty strong,.clinic-search-empty span{display:block}.clinic-search-empty strong{font-size:14px}.clinic-search-empty span{margin-top:5px;color:var(--muted);font-size:11px}
.clinic-selector-subtitle{font-size:11px;margin:4px 0 0}
@media(max-width:720px){.clinic-search-form{align-items:stretch;flex-direction:column}.clinic-search-input{width:100%;min-width:0;flex-basis:auto}.clinic-search-form>.btn{width:100%}}

/* v9.8 employee mutation governance */
.mutation-clinic-grid .clinic-scope-card{min-height:230px;display:flex;flex-direction:column}.mutation-clinic-grid .clinic-scope-foot{margin-top:auto}.mutation-scope-stats{grid-template-columns:1fr 1fr}.mutation-direct-banner{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:18px 20px;border-radius:18px;border:1px solid #cfe6db;background:linear-gradient(135deg,#f3fbf7,#fff)}.mutation-direct-banner strong,.mutation-direct-banner p,.mutation-direct-kicker{display:block}.mutation-direct-kicker{font-size:9px;letter-spacing:.14em;color:#16865a;font-weight:900;margin-bottom:5px}.mutation-direct-banner strong{font-size:16px}.mutation-direct-banner p{font-size:11px;color:var(--muted);margin:5px 0 0;line-height:1.55}.mutation-main-grid{grid-template-columns:minmax(0,1.4fr) minmax(300px,.6fr);gap:18px}.mutation-form-card{padding:24px 26px}.mutation-form-card .field select,.mutation-form-card .field textarea{width:100%;min-height:46px;border:1px solid #d8e0ea;border-radius:12px;padding:11px 12px;background:#fff;font:inherit}.mutation-form-card .field textarea{min-height:120px;resize:vertical}.mutation-rules-card{padding:22px}.mutation-rule{display:grid;grid-template-columns:38px 1fr;gap:11px;align-items:start;padding:14px 0;border-bottom:1px solid var(--line)}.mutation-rule:last-child{border-bottom:0}.mutation-rule>span{width:34px;height:34px;border-radius:11px;background:#f0f5fb;color:#4f6f96;display:grid;place-items:center;font-size:10px;font-weight:850}.mutation-rule strong,.mutation-rule small{display:block}.mutation-rule strong{font-size:12px}.mutation-rule small{font-size:11px;color:var(--muted);line-height:1.5;margin-top:4px}.mutation-history-card{padding:20px}.mutation-history-card td{vertical-align:middle}.mutation-form-card button[disabled]{opacity:.45;cursor:not-allowed}
@media(max-width:1050px){.mutation-main-grid{grid-template-columns:1fr}.mutation-direct-banner{align-items:flex-start;flex-direction:column}}

/* v9.8.1 Karyawan Keluar */
.employee-exit-scope-count{margin:18px 0 4px;padding:14px 15px;border-radius:14px;background:#f8fafc;border:1px solid #e7edf4}.employee-exit-scope-count b,.employee-exit-scope-count span{display:block}.employee-exit-scope-count b{font-size:26px}.employee-exit-scope-count span{font-size:11px;color:var(--muted);margin-top:3px}.employee-exit-babylon-metrics{margin-bottom:18px}.employee-exit-filter{padding:16px 18px;margin-bottom:18px}.employee-exit-filter-form{display:flex;align-items:center;gap:10px}.employee-exit-search{flex:1;display:flex;align-items:center;gap:9px;border:1px solid #d8e2ee;border-radius:14px;padding:0 13px;background:#fff}.employee-exit-search span{color:#8291a6;font-size:18px}.employee-exit-search input{width:100%;height:46px;border:0;outline:0;background:transparent;font:inherit}.employee-exit-list-card{padding:20px}.babylon-exit-table td{vertical-align:middle}.employee-exit-detail-hero{display:grid;grid-template-columns:minmax(320px,.75fr) minmax(0,1.25fr);gap:18px}.employee-exit-photo-card{min-height:390px;display:grid;place-items:center;align-content:center;text-align:center}.employee-exit-photo-card img,.babylon-exit-photo-placeholder{width:220px;height:275px;border-radius:30px;object-fit:cover}.babylon-exit-photo-placeholder{display:grid;place-items:center;background:linear-gradient(135deg,#eef2f7,#e1e8f0);color:#475569;font-size:72px;font-weight:900}.employee-exit-photo-card strong{font-size:22px;margin-top:16px}.employee-exit-photo-card span{font-size:13px;color:var(--muted);margin-top:5px}.employee-exit-kicker{display:block;font-size:10px;letter-spacing:.14em;font-weight:850;color:#64748b;margin-bottom:5px}.employee-exit-decision-card h3{font-size:22px;margin:4px 0 16px}
@media(max-width:900px){.employee-exit-filter-form{align-items:stretch;flex-direction:column}.employee-exit-detail-hero{grid-template-columns:1fr}}


/* v9.8.2 branch registration media approval fix */
.approval-building-photo-preview{width:100%;height:220px;display:block;object-fit:cover;border-radius:14px;margin:9px 0 13px;background:#eef2f6;border:1px solid var(--line)}.approval-submission-media-card{min-width:0;overflow:hidden}.approval-submission-media-card .kv strong{min-width:0;overflow-wrap:anywhere;word-break:break-word}


/* SKTM Master */
.sktm-page-head{align-items:center}.sktm-create-btn{white-space:nowrap}.sktm-metrics{margin-bottom:18px}.sktm-clinic-code{font-size:22px}.sktm-filter-card{padding:16px 18px;margin-bottom:18px}.sktm-filter{display:flex;align-items:center;gap:10px}.sktm-search{flex:1;display:flex;align-items:center;gap:9px;border:1px solid #d8e2ee;border-radius:14px;padding:0 13px;background:#fff}.sktm-search span{font-size:20px;color:#8190a5}.sktm-search input{width:100%;height:46px;border:0;outline:0;background:transparent;font:inherit}.sktm-list-card,.sktm-pending-card{padding:20px}.sktm-pending-card{margin-top:18px}.sktm-create-grid{grid-template-columns:minmax(0,1.5fr) minmax(300px,.5fr);gap:18px}.sktm-form-card{padding:24px 26px}.sktm-patient-search{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:end;padding:15px;border:1px solid #dbe7f5;border-radius:16px;background:#f8fbff}.sktm-patient-search .field{margin:0}.sktm-patient-options,.sktm-service-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.sktm-patient-option,.sktm-service-option{display:flex;align-items:flex-start;gap:10px;padding:13px 14px;border:1px solid #dce5ef;border-radius:14px;background:#fff;cursor:pointer;transition:.16s}.sktm-patient-option:hover,.sktm-service-option:hover{border-color:#bcd3ef;background:#f8fbff}.sktm-patient-option input,.sktm-service-option input{margin-top:3px}.sktm-patient-option strong,.sktm-patient-option small,.sktm-service-option strong,.sktm-service-option small{display:block}.sktm-patient-option small,.sktm-service-option small{margin-top:4px;color:var(--muted);font-size:11px}.sktm-select-empty{padding:20px;border:1px dashed #ced9e7;border-radius:14px;background:#fbfdff;color:var(--muted);text-align:center}.sktm-rules{padding:22px;height:max-content}.sktm-clinic-banner{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:18px;padding:18px 20px;border-radius:18px;background:linear-gradient(135deg,#0f223b,#18568a);color:white}.sktm-clinic-banner>div:last-child{text-align:right}.sktm-clinic-banner span,.sktm-clinic-banner strong,.sktm-clinic-banner small{display:block}.sktm-clinic-banner span{font-size:9px;letter-spacing:.14em;color:#9dcbf2;font-weight:850}.sktm-clinic-banner strong{font-size:19px;margin-top:4px}.sktm-clinic-banner small{color:#d9e7f3;margin-top:3px}
@media(max-width:980px){.sktm-create-grid{grid-template-columns:1fr}.sktm-patient-options,.sktm-service-options{grid-template-columns:1fr}}
@media(max-width:720px){.sktm-page-head{align-items:flex-start}.sktm-filter,.sktm-patient-search{grid-template-columns:1fr;display:grid}.sktm-filter .btn{width:100%}.sktm-clinic-banner{align-items:flex-start;flex-direction:column}.sktm-clinic-banner>div:last-child{text-align:left}}

/* v9.9.1 SKTM RM patient picker modal */
.sktm-patient-picker-box{display:flex;align-items:center;gap:14px;min-height:92px;padding:16px 17px;border:1px solid #cfe0f3;border-radius:17px;background:linear-gradient(135deg,#f7fbff,#fff);transition:.18s ease}.sktm-patient-picker-box.is-empty{border-style:dashed;background:#fbfdff}.sktm-selected-empty,.sktm-selected-content{display:flex;align-items:center;gap:13px;min-width:0;flex:1}.sktm-selected-empty[hidden],.sktm-selected-content[hidden]{display:none!important}.sktm-selected-icon{width:46px;height:46px;flex:0 0 46px;border-radius:14px;display:grid;place-items:center;background:#e8f2ff;color:#1f6feb;font-size:11px;font-weight:900;letter-spacing:.06em}.sktm-selected-empty strong,.sktm-selected-empty small,.sktm-selected-main strong,.sktm-selected-main small{display:block}.sktm-selected-empty strong,.sktm-selected-main strong{font-size:14px}.sktm-selected-empty small,.sktm-selected-main small{margin-top:4px;color:var(--muted);font-size:11px;line-height:1.45}.sktm-selected-main{min-width:0}.sktm-selected-main strong{font-size:16px}.sktm-selected-main b{color:#34506f}.sktm-pick-patient-btn{margin-left:auto;white-space:nowrap;flex:0 0 auto}
body.sktm-modal-open{overflow:hidden}.sktm-patient-modal{position:fixed;inset:0;z-index:1200;display:none;align-items:center;justify-content:center;padding:24px}.sktm-patient-modal.is-open{display:flex}.sktm-modal-backdrop{position:absolute;inset:0;background:rgba(9,20,37,.58);backdrop-filter:blur(4px)}.sktm-modal-dialog{position:relative;width:min(1080px,100%);max-height:min(88vh,840px);display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.72);border-radius:24px;background:#fff;box-shadow:0 35px 90px rgba(7,20,39,.28)}.sktm-modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:22px 24px 15px;border-bottom:1px solid #e6edf5}.sktm-modal-kicker{display:block;color:#1f6feb;font-size:9px;letter-spacing:.16em;font-weight:900}.sktm-modal-head h3{margin:5px 0 4px;font-size:22px}.sktm-modal-head p{margin:0;color:var(--muted);font-size:12px}.sktm-modal-close{width:38px;height:38px;flex:0 0 38px;border:1px solid #dce5ef;border-radius:12px;background:#fff;color:#53657a;font-size:25px;line-height:1;cursor:pointer}.sktm-modal-close:hover{background:#f5f8fc;color:#172b46}.sktm-modal-search{display:flex;align-items:center;gap:10px;margin:17px 24px 10px;padding:0 14px;border:1px solid #cfdbeb;border-radius:14px;background:#fbfdff;transition:.16s}.sktm-modal-search:focus-within{border-color:#7facdf;box-shadow:0 0 0 3px rgba(31,111,235,.08);background:#fff}.sktm-modal-search>span{font-size:20px;color:#8190a5}.sktm-modal-search input{width:100%;height:48px;border:0;outline:0;background:transparent;font:inherit}.sktm-modal-meta{display:flex;justify-content:space-between;gap:14px;align-items:center;padding:0 24px 12px;color:#56687e;font-size:11px}.sktm-modal-meta>span{font-weight:800;color:#304760}.sktm-patient-table-wrap{position:relative;min-height:330px;overflow:auto;border-top:1px solid #edf2f7;border-bottom:1px solid #edf2f7}.sktm-patient-table{width:100%;border-collapse:collapse}.sktm-patient-table th{position:sticky;top:0;z-index:2;padding:11px 14px;background:#f7f9fc;color:#68798e;font-size:10px;letter-spacing:.04em;text-align:left;border-bottom:1px solid #e4ebf3}.sktm-patient-table td{padding:13px 14px;border-bottom:1px solid #edf2f7;vertical-align:middle;font-size:12px}.sktm-patient-table tbody tr{transition:.13s}.sktm-patient-table tbody tr:hover{background:#f8fbff}.sktm-patient-table td strong,.sktm-patient-table td small{display:block}.sktm-patient-table td strong{font-size:12px;color:#20344d}.sktm-patient-table td small{margin-top:3px;color:var(--muted);font-size:10px;max-width:240px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sktm-patient-table .sktm-rm-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:850;color:#1e5c9f}.sktm-patient-table .sktm-choose-row{white-space:nowrap;text-align:right}.sktm-patient-table .btn{min-height:34px;padding:7px 12px}.sktm-modal-state{position:absolute;inset:48px 0 0;display:none;place-items:center;padding:30px;text-align:center;background:rgba(255,255,255,.94);color:var(--muted);font-size:12px}.sktm-modal-state.is-visible{display:grid}.sktm-modal-state.is-error{color:#a73642}.sktm-modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:12px;padding:14px 24px 18px}.sktm-modal-footer>span{min-width:92px;text-align:center;color:#66788e;font-size:11px;font-weight:750}.sktm-modal-footer button:disabled{opacity:.45;cursor:not-allowed}
@media(max-width:760px){.sktm-patient-picker-box{align-items:flex-start;flex-direction:column}.sktm-pick-patient-btn{margin-left:0;width:100%}.sktm-patient-modal{padding:10px}.sktm-modal-dialog{max-height:94vh;border-radius:19px}.sktm-modal-head{padding:18px 17px 13px}.sktm-modal-search{margin:13px 16px 9px}.sktm-modal-meta{padding:0 16px 10px;align-items:flex-start;flex-direction:column;gap:3px}.sktm-patient-table-wrap{min-height:320px}.sktm-patient-table{min-width:780px}.sktm-modal-footer{padding:12px 16px 15px;justify-content:space-between}.sktm-modal-footer .btn{padding-inline:10px}}


/* v1.9.2 / v9.9.2 - 20 pasien per halaman + pagination bernomor */
.sktm-modal-pagination{display:flex;align-items:center;justify-content:center;gap:6px;flex:1;min-width:0}
.sktm-modal-pagination[hidden]{display:none!important}
.sktm-page-number{width:34px;height:34px;display:grid;place-items:center;border:1px solid #dce5ef;border-radius:10px;background:#fff;color:#41556e;font:inherit;font-size:11px;font-weight:800;cursor:pointer;transition:.15s}
.sktm-page-number:hover{border-color:#a9c4e6;background:#f6faff;color:#1756a9}
.sktm-page-number.active{background:var(--accent);border-color:var(--accent);color:#fff;box-shadow:0 6px 14px rgba(31,111,235,.18)}
.sktm-page-dots{display:grid;place-items:center;width:22px;height:34px;color:#8a99ac;font-size:12px}
.sktm-modal-page-label{min-width:105px;text-align:center;color:#66788e;font-size:11px;font-weight:750}
@media(max-width:760px){.sktm-modal-pagination{order:3;flex-basis:100%;justify-content:flex-start;overflow-x:auto;padding-top:4px}.sktm-modal-page-label{order:2;margin-left:auto}.sktm-modal-footer{flex-wrap:wrap}.sktm-page-number{flex:0 0 34px}}


/* v9.9.2 - SKTM form visual parity with Register Portal */
.sktm-form-card{padding:26px 28px;border-color:#e1e8f1;box-shadow:0 14px 34px rgba(15,23,42,.07)}
.sktm-form-card form{min-width:0}
.sktm-form-card .form-section-title{margin:6px 0 8px;padding-top:8px}
.sktm-form-card .form-section-title:not(:first-child){margin-top:22px;padding-top:22px;border-top:1px solid var(--line)}
.sktm-form-card .form-section-title h3{margin:0;font-size:16px;letter-spacing:-.01em}
.sktm-form-card .form-section-title p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.55}
.sktm-form-card .form-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.sktm-form-card .field{min-width:0}
.sktm-form-card .field input,.sktm-form-card .field textarea{width:100%;min-width:0;background:#fff;transition:border-color .15s,box-shadow .15s}
.sktm-form-card .field input:focus,.sktm-form-card .field textarea:focus{outline:none;border-color:#7facdf;box-shadow:0 0 0 3px rgba(31,111,235,.08)}
.sktm-form-card .field textarea{min-height:118px;resize:vertical;padding:12px 13px;border:1px solid #d8e0ea;border-radius:12px;font:inherit;line-height:1.5}
.sktm-form-card .approval-effect-note{display:flex;gap:12px;align-items:flex-start;margin-top:18px;padding:16px 17px;border:1px solid #cfe2fa;background:linear-gradient(135deg,#f5f9ff,#fbfdff);border-radius:15px}
.sktm-form-card .approval-effect-note strong,.sktm-form-card .approval-effect-note span{display:block}
.sktm-form-card .approval-effect-note strong{white-space:nowrap;font-size:12px;color:#174f92}
.sktm-form-card .approval-effect-note span{font-size:11px;color:#5d7088;line-height:1.55}
.sktm-form-card .toolbar{margin-top:14px;padding-top:2px}
.sktm-rules{border-color:#e1e8f1;box-shadow:0 14px 34px rgba(15,23,42,.06)}
@media(max-width:720px){.sktm-form-card{padding:20px}.sktm-form-card .form-grid-2{grid-template-columns:1fr}.sktm-form-card .approval-effect-note{flex-direction:column}.sktm-form-card .approval-effect-note strong{white-space:normal}}


/* SKTM v1.9.3 / v9.9.3: patient-specific therapy discount + always-visible patient pagination */
.sktm-discount-box{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.55fr);gap:14px;align-items:stretch;margin:0 0 18px;padding:16px;border:1px solid #cfe0f6;border-radius:17px;background:linear-gradient(135deg,#f7fbff,#fff)}
.sktm-discount-box .field{margin:0}.sktm-discount-box .field>small{display:block;margin-top:7px;color:var(--muted);font-size:11px;line-height:1.5}
.sktm-percent-input{display:flex;align-items:center;border:1px solid #cfdbeb;border-radius:13px;background:#fff;overflow:hidden}.sktm-percent-input:focus-within{border-color:#7facdf;box-shadow:0 0 0 3px rgba(31,111,235,.08)}.sktm-percent-input input{width:100%;height:46px;padding:0 13px;border:0!important;outline:0;box-shadow:none!important;background:transparent}.sktm-percent-input>span{height:46px;min-width:46px;display:grid;place-items:center;border-left:1px solid #e1e8f0;background:#f8fafc;color:#34516f;font-weight:900}
.sktm-discount-scope{display:flex;flex-direction:column;justify-content:center;padding:14px 16px;border:1px solid #d9e9dd;border-radius:14px;background:#f5fbf7}.sktm-discount-scope strong{font-size:10px;letter-spacing:.1em;color:#14734c}.sktm-discount-scope span{margin-top:5px;color:#557067;font-size:11px;line-height:1.5}
.sktm-discount-chip{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#eaf7ef;color:#126b47;font-size:11px;font-weight:900;white-space:nowrap}
.sktm-modal-dialog{height:min(88vh,840px)}.sktm-patient-table-wrap{flex:1 1 auto;min-height:0;max-height:none}.sktm-modal-footer{position:sticky;bottom:0;z-index:6;flex:0 0 auto;background:#fff;border-top:1px solid #e7edf4;box-shadow:0 -10px 24px rgba(15,23,42,.04)}
.sktm-modal-pagination:not([hidden]){display:flex}.sktm-modal-page-label{white-space:nowrap}
@media(max-width:760px){.sktm-discount-box{grid-template-columns:1fr}.sktm-modal-dialog{height:94vh}.sktm-modal-footer{position:sticky}}

/* v10.0 Data Layanan Master */
.service-page-head{align-items:center}.service-metrics{margin:18px 0}.service-governance-note{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;padding:18px 20px;border-color:#cfe1f7;background:linear-gradient(135deg,#f7fbff,#fff)}.service-governance-note strong,.service-governance-note span{display:block}.service-governance-note strong{font-size:13px}.service-governance-note span{margin-top:5px;color:var(--muted);font-size:12px;line-height:1.55}.service-filter-card{padding:18px 20px;margin-bottom:18px}.service-filter-grid{display:grid;grid-template-columns:minmax(240px,1.4fr) minmax(180px,.65fr) minmax(170px,.55fr) auto;gap:12px;align-items:end}.service-filter-grid .field{margin:0}.service-list-card{padding:20px}.service-table td{vertical-align:middle}.service-table td:first-child strong,.service-table td:first-child small{display:block}.service-table td:first-child small{margin-top:4px;color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.service-category-chip{display:inline-flex;padding:6px 9px;border-radius:10px;background:#eef5ff;color:#1756a9;font-size:10px;font-weight:850}.service-package-summary{min-width:260px;max-width:410px;white-space:normal;line-height:1.5;font-size:11px;color:#506174}
@media(max-width:1050px){.service-filter-grid{grid-template-columns:1fr 1fr}}@media(max-width:720px){.service-governance-note{align-items:flex-start;flex-direction:column}.service-filter-grid{grid-template-columns:1fr}.service-page-head{align-items:flex-start}}

/* v10.1 service pricing */
.service-price-chip{display:inline-flex;align-items:center;padding:6px 9px;border-radius:10px;background:#eef8f2;color:#17653f;font-weight:850;white-space:nowrap}
.sktm-service-option .service-option-price{color:#17653f;font-weight:800}


/* v10.1.2 Data Layanan table readability */
.service-table{min-width:1180px}.service-table th:first-child,.service-table td:first-child{min-width:230px;width:230px}.service-table td:first-child strong{font-size:13px;line-height:1.35;white-space:normal}.service-table td:first-child small{max-width:210px;overflow-wrap:anywhere}.service-table th:nth-child(2),.service-table td:nth-child(2){min-width:145px}.service-table th:nth-child(3),.service-table td:nth-child(3){min-width:105px}.service-table th:nth-child(4),.service-table td:nth-child(4){min-width:125px}.service-table th:nth-child(5),.service-table td:nth-child(5){min-width:120px;white-space:nowrap}.service-package-summary{min-width:300px;max-width:440px}


/* SKTM searchable multi-service dropdown */
.sktm-service-picker{position:relative;margin-bottom:8px}
.sktm-service-picker-trigger{width:100%;min-height:64px;display:flex;align-items:center;gap:13px;padding:12px 14px;border:1px solid #cfdceb;border-radius:15px;background:#fff;color:var(--text);text-align:left;cursor:pointer;transition:.16s ease;box-shadow:0 5px 14px rgba(15,23,42,.03)}
.sktm-service-picker-trigger:hover,.sktm-service-picker.is-open .sktm-service-picker-trigger{border-color:#9fc2ef;box-shadow:0 0 0 3px rgba(37,99,235,.07)}
.sktm-service-picker-trigger-main{min-width:0;flex:1;display:grid;gap:4px}.sktm-service-picker-trigger-main b{font-size:13px}.sktm-service-picker-trigger-main small{font-size:10px;color:var(--muted)}
.sktm-service-picker-count{flex:0 0 auto;padding:6px 9px;border-radius:10px;background:#eef5ff;color:#1756a9;font-size:10px;font-weight:850;white-space:nowrap}.sktm-service-picker-chevron{font-size:19px;color:#70839a;transition:.16s}.sktm-service-picker.is-open .sktm-service-picker-chevron{transform:rotate(180deg)}
.sktm-service-picker-panel{position:absolute;z-index:80;left:0;right:0;top:calc(100% + 8px);padding:12px;border:1px solid #d6e1ee;border-radius:17px;background:#fff;box-shadow:0 22px 55px rgba(15,23,42,.18)}
.sktm-service-picker-search{display:flex;align-items:center;gap:9px;height:46px;padding:0 12px;border:1px solid #cedae8;border-radius:13px;background:#f9fbfe}.sktm-service-picker-search span{font-size:19px;color:#8190a5}.sktm-service-picker-search input{width:100%;border:0;outline:0;background:transparent;font:inherit;font-size:12px}
.sktm-service-picker-meta{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:9px 3px 8px;color:var(--muted);font-size:10px}.sktm-service-picker-meta>span{font-weight:850;color:#53677f}
.sktm-service-picker-list{max-height:310px;overflow:auto;display:grid;gap:6px;padding-right:3px}.sktm-service-picker-item{display:grid;grid-template-columns:20px minmax(0,1fr) auto;gap:10px;align-items:center;padding:10px 11px;border:1px solid #e0e7f0;border-radius:12px;background:#fff;cursor:pointer;transition:.14s ease}.sktm-service-picker-item:hover{border-color:#b9d2f1;background:#f8fbff}.sktm-service-picker-item:has(input:checked){border-color:#a8c9f5;background:#f3f8ff}
.sktm-service-picker-item input{position:absolute;opacity:0;pointer-events:none}.sktm-service-picker-check{width:20px;height:20px;border:1px solid #c8d5e5;border-radius:7px;display:grid;place-items:center;color:transparent;background:#fff;font-size:11px;font-weight:900}.sktm-service-picker-item input:checked+.sktm-service-picker-check{border-color:#2563eb;background:#2563eb;color:#fff}
.sktm-service-picker-info{min-width:0;display:grid;gap:3px}.sktm-service-picker-info strong{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sktm-service-picker-info small{font-size:9px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sktm-service-picker-price{font-size:10px;font-weight:850;color:#17653f;white-space:nowrap}
.sktm-service-picker-empty{padding:18px 12px;text-align:center;color:var(--muted);font-size:11px}.sktm-service-picker-selected{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.sktm-service-chip{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:7px 8px 7px 10px;border-radius:11px;background:#eef5ff;color:#174f96;font-size:10px;font-weight:800}.sktm-service-chip span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sktm-service-chip button{width:18px;height:18px;border:0;border-radius:6px;background:#dbeaff;color:#1756a9;cursor:pointer;display:grid;place-items:center;font-size:12px;line-height:1}.sktm-service-chip button:hover{background:#c9defb}
@media(max-width:720px){.sktm-service-picker-trigger{min-height:58px}.sktm-service-picker-trigger-main small{display:none}.sktm-service-picker-panel{position:fixed;z-index:120;left:12px;right:12px;top:80px;max-height:calc(100vh - 100px)}.sktm-service-picker-list{max-height:calc(100vh - 245px)}.sktm-service-picker-meta small{display:none}.sktm-service-picker-price{font-size:9px}}


/* SKTM service search fix: author display:grid must not override filtered/hidden state */
.sktm-service-picker-item[hidden],.sktm-service-picker-item.is-filtered-out{display:none!important}
.sktm-service-picker-empty[hidden]{display:none!important}
.sktm-service-picker-empty.is-visible{display:block}


/* SKTM v1.5 action controls */
.sktm-row-actions{display:inline-flex;align-items:center;gap:7px;flex-wrap:nowrap;white-space:nowrap}.sktm-inline-form{display:inline-flex;margin:0}.sktm-row-actions .btn{flex:0 0 auto}@media(max-width:760px){.sktm-row-actions{flex-wrap:wrap;white-space:normal}}


/* Data Kunjungan v2.2 / BABYLON v10.2 - Rekam Medis read-only */
.visit-page-head{align-items:center}.visit-kicker{display:block;font-size:10px;letter-spacing:.14em;font-weight:850;color:#16705a;margin-bottom:7px}.visit-source-lock{display:flex;align-items:center;gap:11px;min-width:300px;padding:13px 15px;border:1px solid #cfe6dc;border-radius:15px;background:#f4fbf8}.visit-source-lock>span{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#e1f3eb}.visit-source-lock strong,.visit-source-lock small{display:block}.visit-source-lock strong{font-size:12px}.visit-source-lock small{font-size:10px;color:var(--muted);margin-top:3px}.visit-source-lock.compact{min-width:240px}.visit-metrics{margin:18px 0}.visit-filter-card{padding:18px 20px;margin-bottom:18px}.visit-filter-grid{display:grid;grid-template-columns:minmax(260px,1.4fr) minmax(145px,.55fr) minmax(145px,.55fr) minmax(170px,.65fr) auto;gap:12px;align-items:end}.visit-filter-grid .field{margin:0}.visit-filter-actions{display:flex;gap:8px;align-items:center}.visit-list-card{padding:20px}.visit-table{min-width:1180px}.visit-table th:nth-child(1){min-width:140px}.visit-table th:nth-child(2){min-width:125px}.visit-table th:nth-child(3){min-width:190px}.visit-table th:nth-child(4){min-width:210px}.visit-table th:nth-child(5){min-width:180px}.visit-table td{vertical-align:middle}.visit-table td strong,.visit-table td small{display:block}.visit-table td small{font-size:10px;color:var(--muted);margin-top:4px;line-height:1.45}.visit-type-chip{display:inline-flex;padding:5px 8px;border-radius:9px;background:#f1f5f9;color:#475569;font-size:10px;font-weight:800}.visit-source-chip{display:inline-flex;align-items:center;padding:6px 9px;border-radius:10px;font-size:9px;font-weight:850;letter-spacing:.04em;white-space:nowrap}.visit-source-chip.rm{background:#eaf7f1;color:#147255}.visit-source-chip.management{background:#eaf2ff;color:#1d5cb8}.visit-pagination{margin-top:17px;align-items:center;flex-wrap:wrap}.visit-page-count{padding:0 4px;font-size:10px;color:var(--muted);font-weight:700}.visit-readonly-note{display:flex;gap:12px;align-items:flex-start;margin-top:18px;padding:15px 17px;border:1px solid #d8e6e0;border-radius:15px;background:#f8fcfa}.visit-readonly-note>span{width:28px;height:28px;border-radius:9px;background:#e6f4ed;color:#16705a;display:grid;place-items:center;font-weight:900;flex:0 0 28px}.visit-readonly-note p{margin:0;color:#5d6e68;font-size:11px;line-height:1.6}.visit-readonly-note strong{color:#263a33}
@media(max-width:1180px){.visit-filter-grid{grid-template-columns:1fr 1fr 1fr}.visit-search{grid-column:1/-1}.visit-filter-actions{grid-column:1/-1}}@media(max-width:720px){.visit-page-head{align-items:flex-start}.visit-source-lock{min-width:0;width:100%;margin-top:12px}.visit-filter-grid{grid-template-columns:1fr}.visit-search,.visit-filter-actions{grid-column:auto}.visit-filter-actions{flex-direction:column;align-items:stretch}.visit-filter-actions .btn{width:100%}.visit-metrics{grid-template-columns:1fr 1fr}}


/* v10.2.1 Data Kunjungan — Register Portal visual parity */
.visit-page-head{align-items:center}
.visit-filter-card{padding:18px 20px;border-radius:18px;background:#fff}
.visit-filter-card .field{display:grid;gap:8px;margin:0;min-width:0}
.visit-filter-card .field>span{font-size:12px;font-weight:800;color:#1f2a44;letter-spacing:.01em}
.visit-filter-card .field input:not([type=file]):not([type=checkbox]):not([type=radio]),
.visit-filter-card .field select{
  width:100%;min-width:0;min-height:48px;padding:12px 14px;
  border:1px solid #d8e2ee;border-radius:14px;background:#fff;color:var(--ink);
  font:inherit;font-size:13px;box-shadow:0 1px 2px rgba(15,23,42,.02),inset 0 1px 0 rgba(255,255,255,.75);
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}
.visit-filter-card .field input:focus,
.visit-filter-card .field select:focus{
  outline:none;border-color:#7fb1f6;box-shadow:0 0 0 4px #eaf3ff;
}
.visit-filter-card .field select{
  appearance:none;-webkit-appearance:none;-moz-appearance:none;padding-right:46px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2364758b' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"),linear-gradient(180deg,#ffffff,#f8fbff);
  background-repeat:no-repeat,no-repeat;background-position:right 14px center,0 0;background-size:16px 16px,100% 100%;
}
.visit-filter-card .field input[type=date]{background:linear-gradient(180deg,#ffffff,#f8fbff)}
.visit-filter-actions .btn{min-height:48px;padding-inline:16px;border-radius:14px;white-space:nowrap}
.visit-metrics .card{border-radius:18px}
.visit-list-card{border-radius:18px}
.visit-table-wrap{border-radius:15px}
@media(max-width:1180px){
  .visit-filter-grid{grid-template-columns:1fr 1fr 1fr}
  .visit-search{grid-column:1/-1}
  .visit-filter-actions{grid-column:1/-1}
}
@media(max-width:720px){
  .visit-page-head{align-items:flex-start}
  .visit-source-lock{min-width:0;width:100%;margin-top:12px}
  .visit-filter-grid{grid-template-columns:1fr}
  .visit-search,.visit-filter-actions{grid-column:auto}
  .visit-filter-actions{flex-direction:column;align-items:stretch}
  .visit-filter-actions .btn{width:100%}
}


/* Daily visit trend - Chart.js */
.visit-chart-card{padding:22px 22px 18px;margin-bottom:18px;border-radius:18px;overflow:hidden}
.visit-chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.visit-chart-head h3{margin:0;font-size:16px;color:var(--text)}
.visit-chart-head p{margin:6px 0 0;font-size:11px;line-height:1.55;color:var(--muted)}
.visit-chart-range{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border-radius:11px;background:#f5f8fc;border:1px solid #e2e9f2;color:#52647d;font-size:10px;font-weight:800;white-space:nowrap}
.visit-chart-range:before{content:'↗';display:grid;place-items:center;width:20px;height:20px;border-radius:7px;background:#e7f0ff;color:#1f6feb;font-size:11px}
.visit-chart-wrap{position:relative;height:330px;margin-top:18px}
.visit-chart-wrap canvas{width:100%!important;height:100%!important}
.visit-chart-error{display:none;margin-top:14px;padding:12px 14px;border-radius:12px;background:#fff6e6;border:1px solid #f5dfb3;color:#8a5b10;font-size:11px}
@media(max-width:720px){.visit-chart-head{flex-direction:column}.visit-chart-range{white-space:normal}.visit-chart-wrap{height:280px}}


/* v10.4 Detail Layanan Pasien */
.patient-service-head{align-items:center}.ps-money{font-size:22px!important}.ps-metrics{margin:18px 0}.ps-filter-card{padding:18px 20px;margin-bottom:18px}.ps-filter-form{display:grid;grid-template-columns:minmax(260px,1.5fr) minmax(180px,.55fr) auto;gap:14px;align-items:end}.ps-filter-form .field{margin:0}.ps-filter-actions{display:flex;gap:8px;align-items:center}.ps-list-card{padding:20px}.ps-patient-list{display:grid;gap:11px}.ps-patient-card{display:grid;grid-template-columns:minmax(220px,1.05fr) minmax(220px,1.25fr) 120px 150px 150px auto;gap:16px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:17px;background:#fff;transition:.16s}.ps-patient-card:hover{border-color:#cbd9ea;box-shadow:0 10px 28px rgba(15,23,42,.05);transform:translateY(-1px)}.ps-patient-main{display:flex;gap:11px;align-items:center;min-width:0}.ps-avatar,.ps-detail-avatar{display:grid;place-items:center;background:#eaf2ff;color:#1f6feb;font-weight:900}.ps-avatar{width:44px;height:44px;border-radius:14px;flex:0 0 44px}.ps-patient-main strong,.ps-patient-main small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ps-patient-main small{font-size:11px;color:var(--muted);margin-top:4px}.ps-services>span,.ps-stat>span{display:block;font-size:9px;letter-spacing:.09em;text-transform:uppercase;color:#8795a8;font-weight:850;margin-bottom:6px}.ps-chip-row{display:flex;gap:5px;flex-wrap:wrap}.ps-chip{display:inline-flex;padding:5px 7px;border-radius:8px;background:#edf5ff;color:#245c9d;font-size:10px;line-height:1.2}.ps-stat strong,.ps-stat small{display:block}.ps-stat strong{font-size:12px}.ps-stat small{font-size:9px;color:var(--muted);margin-top:4px;line-height:1.35}.ps-card-action{display:flex;align-items:center;gap:8px;justify-content:flex-end;white-space:nowrap}.ps-pagination{margin-top:18px}.ps-sync-note{display:grid;grid-template-columns:40px 1fr;gap:12px;align-items:start;padding:15px 17px;margin-top:18px;border:1px solid #cfe2f7;border-radius:15px;background:#f7fbff}.ps-sync-note>span{width:36px;height:36px;border-radius:11px;background:#e5f1ff;color:#2167b5;display:grid;place-items:center;font-size:18px}.ps-sync-note strong,.ps-sync-note p{display:block}.ps-sync-note p{margin:4px 0 0;color:var(--muted);font-size:11px;line-height:1.55}.ps-create-grid{grid-template-columns:minmax(0,1.4fr) minmax(280px,.6fr);gap:18px}.ps-create-card{padding:26px}.ps-rules-card{padding:22px}.ps-service-select{position:relative;margin-bottom:8px}.ps-service-trigger{width:100%;min-height:62px;padding:12px 14px;border:1px solid #d7e2ef;border-radius:14px;background:#fff;display:flex;align-items:center;justify-content:space-between;text-align:left;cursor:pointer}.ps-service-trigger span,.ps-service-trigger b,.ps-service-trigger small{display:block}.ps-service-trigger small{margin-top:4px;color:var(--muted);font-size:11px}.ps-service-trigger i{font-style:normal;color:#73839a}.ps-service-panel{position:absolute;z-index:30;top:calc(100% + 8px);left:0;right:0;padding:12px;border:1px solid #dbe5f0;border-radius:16px;background:#fff;box-shadow:0 22px 55px rgba(15,23,42,.16)}.ps-service-list{max-height:310px;overflow:auto;display:grid;gap:6px;margin-top:10px}.ps-service-option{width:100%;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:11px 12px;border:1px solid transparent;border-radius:12px;background:#fbfdff;text-align:left;cursor:pointer}.ps-service-option:hover{border-color:#cbdcf0;background:#f4f9ff}.ps-service-option span,.ps-service-option strong,.ps-service-option small{display:block}.ps-service-option small{font-size:10px;color:var(--muted);margin-top:3px}.ps-service-option>b{font-size:11px;color:#1559a1;white-space:nowrap}.ps-service-option[hidden]{display:none!important}.ps-auto-note{display:flex;gap:10px;align-items:flex-start;margin:18px 0;padding:14px 15px;border:1px solid #cae4d6;border-radius:14px;background:#f5fcf8}.ps-auto-note strong,.ps-auto-note span{display:block}.ps-auto-note strong{font-size:12px;color:#146b49}.ps-auto-note span{font-size:11px;color:#557067;line-height:1.5}.ps-detail-hero{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:18px;padding:22px 24px}.ps-detail-person{display:flex;align-items:center;gap:15px}.ps-detail-avatar{width:58px;height:58px;border-radius:18px;font-size:20px}.ps-kicker{font-size:9px;font-weight:850;letter-spacing:.13em;color:#6f8096}.ps-detail-person h2{margin:4px 0 5px}.ps-detail-person p{margin:0;color:var(--muted);font-size:12px}.ps-detail-status{text-align:right}.ps-detail-status small{display:block;color:var(--muted);font-size:10px;margin-top:6px}.ps-history-head{display:flex;justify-content:space-between;align-items:end;margin:22px 0 12px}.ps-history-head h3{margin:0}.ps-history-head p{margin:4px 0 0;color:var(--muted);font-size:11px}.ps-history-head>span{font-size:11px;color:var(--muted)}.ps-history-list{display:grid;gap:14px}.ps-history-card{padding:20px 22px}.ps-history-top{display:flex;justify-content:space-between;gap:16px;align-items:start}.ps-history-top h3{margin:4px 0}.ps-history-top p{margin:0;color:var(--muted);font-size:11px}.ps-component-row{display:flex;gap:7px;flex-wrap:wrap;margin:13px 0}.ps-component-row span{padding:6px 9px;border-radius:9px;background:#f0f5fb;color:#49627e;font-size:10px;font-weight:750}.ps-progress-block{margin:16px 0}.ps-progress-label{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.ps-progress-label strong,.ps-progress-label b{font-size:11px}.ps-progress{height:9px;background:#edf2f7;border-radius:20px;overflow:hidden}.ps-progress i{display:block;height:100%;background:#2875db;border-radius:20px}.ps-progress-block small{display:block;margin-top:7px;color:var(--muted);font-size:10px}.ps-finance-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.ps-finance-grid>div{padding:12px 13px;border:1px solid var(--line);border-radius:12px;background:#fbfdff}.ps-finance-grid span,.ps-finance-grid strong{display:block}.ps-finance-grid span{font-size:9px;color:#8795a8;text-transform:uppercase;letter-spacing:.06em}.ps-finance-grid strong{font-size:11px;margin-top:5px}.ps-notes{margin-top:14px;padding:12px 14px;border-radius:12px;background:#f8fafc;color:#526174;font-size:11px;line-height:1.55}
@media(max-width:1150px){.ps-patient-card{grid-template-columns:1fr 1fr 120px 140px}.ps-card-action{justify-content:flex-start}.ps-finance-grid{grid-template-columns:1fr 1fr}}@media(max-width:820px){.ps-filter-form,.ps-create-grid{grid-template-columns:1fr}.ps-patient-card{grid-template-columns:1fr 1fr}.ps-card-action{justify-content:flex-start}.ps-detail-hero{align-items:flex-start;flex-direction:column}.ps-detail-status{text-align:left}.ps-finance-grid{grid-template-columns:1fr 1fr}}@media(max-width:560px){.ps-patient-card,.ps-finance-grid{grid-template-columns:1fr}.ps-filter-actions{flex-wrap:wrap}.ps-patient-main strong,.ps-patient-main small{white-space:normal}}


/* Patient Service Details - polished status select */
.ps-filter-form .field select,
.ps-create-card .field select{
  width:100%;
  min-height:42px;
  padding:10px 44px 10px 13px;
  border:1px solid #d8e2ee;
  border-radius:13px;
  background-color:#fff;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2364758b' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"),linear-gradient(180deg,#ffffff,#f8fbff);
  background-repeat:no-repeat,no-repeat;
  background-position:right 13px center,0 0;
  background-size:18px 18px,100% 100%;
  color:var(--ink);
  font:inherit;
  font-size:13px;
  line-height:1.2;
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  outline:none;
  cursor:pointer;
  transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease;
}
.ps-filter-form .field select:hover,
.ps-create-card .field select:hover{border-color:#bdcddd;background-color:#fbfdff}
.ps-filter-form .field select:focus,
.ps-create-card .field select:focus{border-color:#78aef4;box-shadow:0 0 0 4px rgba(31,111,235,.10);background-color:#fff}
.ps-filter-form .field select::-ms-expand,
.ps-create-card .field select::-ms-expand{display:none}

/* v10.6 Employee attendance monitoring */
.attendance-flow-note{display:flex;align-items:center;gap:12px;padding:15px 18px;margin:0 0 18px;border:1px solid #dbe6f3;border-radius:17px;background:linear-gradient(135deg,#f8fbff,#fff)}.attendance-flow-step{display:flex;align-items:center;gap:10px;flex:1;min-width:0}.attendance-flow-step>b{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:#e8f1ff;color:#1f6feb}.attendance-flow-step span,.attendance-flow-step strong,.attendance-flow-step small{display:block}.attendance-flow-step strong{font-size:12px}.attendance-flow-step small{font-size:10px;color:var(--muted);margin-top:3px}.attendance-flow-note>i{font-style:normal;color:#91a1b5}.attendance-metrics{margin-bottom:18px}.attendance-tabs{display:flex;gap:7px;margin:0 0 18px;padding:5px;border:1px solid #dfe7f0;border-radius:14px;background:#fff;width:max-content;max-width:100%}.attendance-tabs a{padding:9px 14px;border-radius:10px;color:#607086;font-size:11px;font-weight:850;text-decoration:none}.attendance-tabs a.active{background:#eaf3ff;color:#175fb4}.attendance-list-card{padding:20px}.attendance-list-head{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:14px}.attendance-list-head h3{margin:0}.attendance-list-head p{margin:5px 0 0;color:var(--muted);font-size:10px}.attendance-month-filter{display:flex;align-items:end;gap:8px}.attendance-month-filter input[type=month]{min-height:40px;padding:8px 10px;border:1px solid #d8e2ee;border-radius:11px;background:#fff}.attendance-search-mini{display:flex;align-items:center;gap:6px;border:1px solid #d8e2ee;border-radius:11px;padding:0 9px;background:#fff}.attendance-search-mini input{border:0!important;box-shadow:none!important;padding:9px 0!important;min-width:150px}.attendance-table td{vertical-align:middle}.clinic-scope-stats{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px}.clinic-scope-stats>div{padding:10px;border:1px solid var(--line);border-radius:11px;background:#fbfdff}.clinic-scope-stats b,.clinic-scope-stats span{display:block}.clinic-scope-stats b{font-size:16px}.clinic-scope-stats span{font-size:9px;color:var(--muted);margin-top:3px}
@media(max-width:760px){.attendance-flow-note{align-items:stretch;flex-direction:column}.attendance-flow-note>i{transform:rotate(90deg);align-self:center}.attendance-list-head,.attendance-month-filter{align-items:stretch;flex-direction:column}.attendance-tabs{width:100%}.attendance-tabs a{flex:1;text-align:center}.attendance-metrics{grid-template-columns:1fr 1fr}}

/* v10.7 Employee shift monitoring */
.babylon-shift-strip{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 18px;padding:15px 18px;border:1px solid #dbe5f0;border-radius:16px;background:#fff}.babylon-shift-strip strong{display:block;margin-top:4px;font-size:13px}.babylon-shift-chips{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.babylon-shift-chip{display:flex;align-items:center;gap:8px;padding:8px 11px;border-radius:11px;background:#f4f8fd;border:1px solid #dce7f3}.babylon-shift-chip b{font-size:11px}.babylon-shift-chip small{font-size:10px;color:var(--muted)}
@media(max-width:760px){.babylon-shift-strip{align-items:flex-start;flex-direction:column}.babylon-shift-chips{justify-content:flex-start}}


/* attendance matrix v2 */
.attendance-calendar-card{padding:20px}.attendance-calendar-legend,.attendance-shift-key{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 14px}.attendance-legend-item{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:#617287}.attendance-shift-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;border:1px solid #d9e6f4;background:#fbfdff;color:#27405e;font-size:12px}.attendance-shift-chip b{width:24px;height:24px;border-radius:999px;display:grid;place-items:center;background:#eaf2ff;color:#1f6feb;font-size:12px}.attendance-shift-chip small{font-size:12px;color:#4e627b}.attendance-calendar-wrap{overflow:auto;padding-bottom:4px}.attendance-calendar-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0}.attendance-calendar-table th,.attendance-calendar-table td{padding:8px 6px;border-bottom:1px solid #e8eef6;text-align:center;background:#fff}.attendance-calendar-table thead th{position:sticky;top:0;z-index:2;background:#f7fbff;font-size:11px;color:#607086;font-weight:800;white-space:nowrap}.attendance-calendar-table thead th span,.attendance-calendar-table thead th small{display:block}.attendance-calendar-table thead th small{margin-top:2px;font-size:10px;color:#8a9bb0}.attendance-calendar-table th.weekend,.attendance-calendar-table td.weekend{background:#fbfcfe}.attendance-sticky-col{position:sticky;left:0;z-index:3;background:#fff!important;box-shadow:10px 0 18px -18px rgba(15,23,42,.5)}.attendance-calendar-table thead .attendance-sticky-col{z-index:4;background:#f7fbff!important}.attendance-employee-col{min-width:230px;max-width:230px;text-align:left}.attendance-employee-col strong,.attendance-employee-col small{display:block}.attendance-employee-col small{margin-top:4px;font-size:11px;color:#798aa1;line-height:1.35}.attendance-cell-mark{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:12px;border:1px solid #d9e3ef;background:#fff;color:#71839b;font-size:13px;font-weight:900;line-height:1}.attendance-cell-mark.present{background:#e7f7ec;border-color:#b7e4c2;color:#15803d}.attendance-cell-mark.absent{background:#fff0f0;border-color:#f1b4b4;color:#c03232}.attendance-cell-mark.planned{background:#eef5ff;border-color:#cdddff;color:#2458c7}.attendance-cell-mark.warning{background:#fff7e8;border-color:#f5d79d;color:#b57900}.attendance-cell-mark.leave{background:#edf6ff;border-color:#c7def7;color:#1e61b6}.attendance-cell-mark.permission{background:#fff8e1;border-color:#edd08d;color:#9a6a00}.attendance-cell-mark.sick{background:#ffeff3;border-color:#f0bcc8;color:#c2415c}.attendance-cell-mark.duty{background:#f0ecff;border-color:#cdc3ff;color:#5b43d6}.attendance-cell-mark.holiday{background:#f2f4f7;border-color:#d8dee6;color:#667085}.attendance-cell-mark.empty{background:#fff;border-color:#e5ebf2;color:#c2ceda}.attendance-calendar-table tbody tr:hover td{background:#fcfdff}.attendance-calendar-table tbody tr:hover .attendance-sticky-col{background:#fcfdff!important}@media(max-width:760px){.attendance-calendar-card{padding:16px}.attendance-calendar-legend,.attendance-shift-key{gap:8px}.attendance-calendar-table .attendance-employee-col{min-width:180px;max-width:180px}.attendance-cell-mark{width:30px;height:30px;border-radius:10px;font-size:12px}}

/* v10.9 Payroll + overtime */
.attendance-cell-mark.overtime{background:#ede9fe;border-color:#c4b5fd;color:#6d28d9}.attendance-overtime-history{margin-top:18px;padding:20px}.attendance-overtime-history table td{vertical-align:middle}
.payroll-rule-banner{display:flex;align-items:flex-start;gap:14px;margin:0 0 18px;padding:16px 18px;border:1px solid #d9e7f7;border-radius:17px;background:linear-gradient(135deg,#f8fbff,#fff)}.payroll-rule-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#ede9fe;color:#6d28d9;font-weight:900;flex:0 0 38px}.payroll-rule-banner strong,.payroll-rule-banner p{display:block}.payroll-rule-banner p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.6}.payroll-metrics{margin-bottom:18px}.payroll-list-card{padding:22px}.payroll-table{min-width:1180px}.payroll-table td{vertical-align:middle;white-space:nowrap}.payroll-table td:first-child{white-space:normal;min-width:210px}@media(max-width:760px){.payroll-rule-banner{align-items:flex-start}}

/* v10.9.1 payroll BPJS + therapist */
.payroll-bpjs-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-bottom:18px}.payroll-bpjs-summary>div{padding:14px 16px;border:1px solid #e1e9f2;border-radius:15px;background:#fff}.payroll-bpjs-summary span,.payroll-bpjs-summary strong{display:block}.payroll-bpjs-summary span{font-size:11px;color:var(--muted)}.payroll-bpjs-summary strong{margin-top:6px;font-size:16px}.payroll-table-expanded{min-width:1650px}@media(max-width:760px){.payroll-bpjs-summary{grid-template-columns:1fr}}

/* v10.10 payroll management parity */
.payroll-rule-banner{display:flex;align-items:flex-start;gap:14px;margin:0 0 18px;padding:16px 18px;border:1px solid #d9e7f7;border-radius:17px;background:linear-gradient(135deg,#f8fbff,#fff)}.payroll-rule-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#ede9fe;color:#6d28d9;font-weight:900;flex:0 0 38px}.payroll-rule-banner strong,.payroll-rule-banner p{display:block}.payroll-rule-banner p{margin:5px 0 0;color:var(--muted);font-size:12px;line-height:1.6}.payroll-tabs{margin-bottom:18px}.payroll-settings-grid{align-items:start}.payroll-setting-card,.payroll-policy-card,.payroll-profile-card,.payroll-list-card{padding:22px}.money-input{display:flex;align-items:center;border:1px solid #d8e2ee;border-radius:13px;background:#fff;overflow:hidden}.money-input>span{padding:0 12px;color:#64748b;font-weight:800;font-size:12px}.money-input input{border:0!important;box-shadow:none!important;min-width:0;width:100%;padding:12px 12px 12px 0!important;background:transparent}.money-input:focus-within{border-color:#78aef4;box-shadow:0 0 0 4px rgba(31,111,235,.10)}.money-input.compact{max-width:220px}.payroll-policy-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid var(--line);font-size:12px}.payroll-policy-row:last-of-type{border-bottom:0}.payroll-policy-row span{color:var(--muted)}.payroll-profile-table td{vertical-align:middle}.payroll-profile-form{display:contents}.payroll-actions{display:flex;align-items:end;gap:10px;flex-wrap:wrap}.payroll-actions form{margin:0}.payroll-metrics{margin-bottom:18px}.payroll-table{min-width:1180px}.payroll-table td{vertical-align:middle;white-space:nowrap}.payroll-table td:first-child{white-space:normal;min-width:210px}@media(max-width:760px){.payroll-rule-banner{align-items:flex-start}.payroll-settings-grid{grid-template-columns:1fr}.payroll-actions{align-items:stretch;flex-direction:column}.payroll-actions form,.payroll-actions .btn{width:100%}.money-input.compact{max-width:none}}



/* v10.10.1 payroll employee cards UI parity with Register Portal */
.payroll-employee-cards{display:grid;gap:14px}
.payroll-employee-card{padding:18px;border:1px solid #e1e8f1;border-radius:17px;background:#fbfdff}
.payroll-employee-card-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}
.payroll-employee-card-head strong,.payroll-employee-card-head small{display:block}
.payroll-employee-card-head strong{font-size:15px;line-height:1.35;color:#172033}
.payroll-employee-card-head small{margin-top:4px;color:var(--muted);font-size:11px;line-height:1.45}
.payroll-profile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.payroll-profile-grid>.field{margin:0;padding:14px;border:1px solid #e3eaf3;border-radius:14px;background:#fff;align-content:start}
.payroll-profile-grid>.field label{margin-bottom:4px}
.payroll-benefit-box{padding:14px;border:1px solid #e3eaf3;border-radius:14px;background:#fff;min-width:0}
.payroll-check{display:flex;align-items:flex-start;gap:10px;margin-bottom:11px;cursor:pointer}
.payroll-check input[type="checkbox"]{width:17px;height:17px;margin:2px 0 0;accent-color:#1f6feb;flex:0 0 auto}
.payroll-check span,.payroll-check strong,.payroll-check small{display:block}
.payroll-check strong{font-size:12px;line-height:1.35}
.payroll-check small{margin-top:3px;font-size:10px;color:var(--muted);line-height:1.45}
.payroll-inline-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,.85fr);gap:10px;align-items:center}
.payroll-inline-fields .select{min-width:0;width:100%;min-height:44px;padding:10px 40px 10px 12px;border:1px solid #d8e2ee;border-radius:13px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364758b' stroke-width='2.2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center;appearance:none}
.payroll-inline-fields .select:focus{outline:none;border-color:#78aef4;box-shadow:0 0 0 4px rgba(31,111,235,.10)}
.payroll-benefit-box .money-input.compact,.payroll-profile-grid>.field .money-input.compact{max-width:none;width:100%;min-height:44px}
.payroll-benefit-box>.muted{display:block;margin-top:9px;font-size:10px;line-height:1.5}
.payroll-therapist-box{grid-column:span 2}
.payroll-employee-card-head .btn{min-height:38px;padding:8px 14px;border-radius:11px}
@media(max-width:900px){.payroll-profile-grid{grid-template-columns:1fr}.payroll-therapist-box{grid-column:auto}.payroll-inline-fields{grid-template-columns:1fr}.payroll-employee-card-head{align-items:flex-start;flex-direction:column}.payroll-employee-card-head .btn{width:100%}}


/* Therapist performance v2.9 / v10.11 */
.performance-page-head{align-items:center}.performance-metrics{margin-bottom:18px}.performance-source-value{font-size:25px}.performance-filter-card{padding:18px 20px;margin-bottom:18px}.performance-filter-form{display:grid;grid-template-columns:180px minmax(280px,1fr) auto auto;gap:12px;align-items:end}.performance-filter-form .field{margin:0}.performance-filter-form input{width:100%;min-height:44px;padding:10px 12px;border:1px solid #d8e2ee;border-radius:13px;background:#fff;font:inherit}.performance-filter-form input:focus{outline:none;border-color:#78aef4;box-shadow:0 0 0 4px rgba(31,111,235,.10)}.performance-matrix-card{padding:20px}.performance-card-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:14px}.performance-card-head h3{margin:0}.performance-card-head p{margin:5px 0 0;font-size:11px;color:var(--muted)}.performance-card-head>span{font-size:11px;color:var(--muted);font-weight:800}.performance-matrix-wrap{overflow:auto}.performance-matrix-table{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0}.performance-matrix-table th,.performance-matrix-table td{padding:8px 6px;border-bottom:1px solid #e8eef6;text-align:center;background:#fff}.performance-matrix-table thead th{position:sticky;top:0;z-index:2;background:#f7fbff;color:#607086;font-size:10px;font-weight:850;white-space:nowrap}.performance-matrix-table thead th span,.performance-matrix-table thead th small{display:block}.performance-matrix-table thead th small{margin-top:2px;color:#8a9bb0;font-size:9px}.performance-matrix-table th.weekend,.performance-matrix-table td.weekend{background:#fbfcfe}.performance-sticky-col{position:sticky;left:0;z-index:3;background:#fff!important;box-shadow:10px 0 18px -18px rgba(15,23,42,.55)}.performance-matrix-table thead .performance-sticky-col{z-index:4;background:#f7fbff!important}.performance-staff-col{min-width:250px;max-width:250px;text-align:left!important}.performance-staff-col strong,.performance-staff-col small,.performance-staff-col em{display:block}.performance-staff-col strong{font-size:13px}.performance-staff-col small{margin-top:4px;color:#75869b;font-size:10px;line-height:1.35}.performance-staff-col em{margin-top:5px;font-size:9px;font-style:normal;color:#9a6a00}.performance-day-count{display:inline-flex;align-items:center;justify-content:center;min-width:32px;height:32px;padding:0 7px;border-radius:10px;border:1px solid #e3e9f1;background:#fff;color:#b0bccb;font-size:11px;font-weight:900}.performance-day-count.has-data{background:#eaf3ff;border-color:#c9dcf7;color:#1f61b7}.performance-total-col{min-width:76px;background:#f9fbfe!important}.performance-total-col strong{font-size:14px;color:#1d3554}.performance-note{display:flex;gap:10px;align-items:flex-start;margin-top:14px;padding:13px 15px;border:1px solid #dce7f4;border-radius:14px;background:#f8fbff}.performance-note>span{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#e8f1ff;color:#1f6feb;font-weight:900}.performance-note p{margin:1px 0 0;color:#607086;font-size:11px;line-height:1.6}.performance-note strong{color:#23364d}@media(max-width:850px){.performance-filter-form{grid-template-columns:1fr}.performance-filter-form .btn{width:100%}.performance-card-head{align-items:flex-start;flex-direction:column}.performance-staff-col{min-width:190px;max-width:190px}}

/* v10.12 Supervision workflow */
.badge.info{background:#e8f1ff;color:#1756a9}.supervision-metrics{margin-bottom:18px}.supervision-filter-card{padding:18px 20px;margin-bottom:18px}.supervision-filter{display:grid;grid-template-columns:minmax(0,1fr) 220px auto;gap:12px;align-items:end}.supervision-filter .field{margin:0}.supervision-filter .field input,.supervision-filter .field select,.supervision-create-card .field input,.supervision-create-card .field select,.supervision-create-card .field textarea,.supervision-response-form .field textarea,.supervision-decision-form .field textarea{width:100%;min-width:0;padding:12px 13px;border:1px solid #d8e2ee;border-radius:13px;background:#fff;font:inherit;outline:none}.supervision-filter .field select,.supervision-create-card .field select{appearance:none;padding-right:42px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364758b' stroke-width='2.1'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 13px center}.supervision-filter .field input:focus,.supervision-filter .field select:focus,.supervision-create-card .field input:focus,.supervision-create-card .field select:focus,.supervision-create-card .field textarea:focus,.supervision-decision-form .field textarea:focus{border-color:#78aef4;box-shadow:0 0 0 4px rgba(31,111,235,.09)}.supervision-filter-action{display:flex;gap:8px}.supervision-list{display:grid;gap:12px}.supervision-task-card{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:22px;padding:20px 22px;transition:.16s}.supervision-task-card:hover{border-color:#c9d9ed;box-shadow:0 16px 36px rgba(15,23,42,.10);transform:translateY(-1px)}.supervision-task-top{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:10px}.supervision-task-title{display:block;font-size:17px;color:#142238}.supervision-task-code{display:block;margin-top:5px;font-size:10px;font-weight:800;letter-spacing:.04em;color:#718399}.supervision-task-main p{margin:10px 0 0;font-size:12px;line-height:1.65}.supervision-task-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;align-items:start}.supervision-task-meta>div{padding:10px;border:1px solid #e5ebf3;border-radius:12px;background:#fbfdff}.supervision-task-meta span,.supervision-task-meta strong{display:block}.supervision-task-meta span{font-size:9px;color:#7b8da2}.supervision-task-meta strong{font-size:11px;margin-top:4px;overflow-wrap:anywhere}.supervision-task-meta>b{grid-column:1/-1;justify-self:end;font-size:11px;color:#1f6feb}.supervision-detail-head{display:flex;justify-content:space-between;gap:20px;align-items:flex-start;margin-bottom:18px}.supervision-detail-head h2{margin:0 0 5px;font-size:25px}.supervision-detail-head p{margin:0;color:var(--muted);font-size:12px}.supervision-detail-deadline{min-width:170px;padding:13px 15px;border:1px solid #dce7f2;border-radius:14px;background:#fff}.supervision-detail-deadline span,.supervision-detail-deadline strong{display:block}.supervision-detail-deadline span{font-size:10px;color:var(--muted)}.supervision-detail-deadline strong{font-size:14px;margin-top:5px}.supervision-detail-grid{align-items:start}.supervision-instruction{padding:15px 16px;border:1px solid #dce7f2;border-radius:14px;background:#f8fbff;line-height:1.7;font-size:13px;margin-bottom:13px}.supervision-kv{display:grid;grid-template-columns:125px 1fr;gap:12px;padding:10px 2px;border-bottom:1px solid #edf1f5;font-size:12px}.supervision-kv span{color:var(--muted)}.supervision-decision{margin-top:16px;padding:14px 15px;border-radius:14px}.supervision-decision p{margin:6px 0 0}.supervision-decision.revision{background:#fff5e8;border:1px solid #f1d39e;color:#845d13}.supervision-decision.approved{background:#eaf8f0;border:1px solid #c8ead6;color:#176442}.supervision-decision-form .field{margin:12px 0}.supervision-decision-form textarea{resize:vertical}.supervision-waiting,.supervision-complete{padding:18px;border-radius:15px}.supervision-waiting{background:#fff8e8;border:1px solid #efd8a5}.supervision-complete{background:#eaf8f0;border:1px solid #c8ead6}.supervision-response-list{display:grid;gap:12px}.supervision-response-card{padding:18px 20px}.supervision-response-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.supervision-response-head>div{display:flex;align-items:center;gap:10px}.supervision-response-head strong{font-size:13px}.supervision-response-head small{color:var(--muted);font-size:10px}.supervision-files{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:12px}.supervision-files>a{display:flex;align-items:center;gap:10px;padding:11px 12px;border:1px solid #dde7f1;border-radius:12px;background:#fbfdff}.supervision-files>a:hover{border-color:#bcd2ee;background:#f5f9ff}.supervision-files span{font-size:18px}.supervision-files strong,.supervision-files small{display:block}.supervision-files strong{font-size:11px;overflow-wrap:anywhere}.supervision-files small{font-size:9px;color:var(--muted);margin-top:3px}.supervision-timeline{padding:18px 20px}.supervision-timeline-item{display:grid;grid-template-columns:18px minmax(0,1fr);gap:11px;position:relative;padding:8px 0 16px}.supervision-timeline-item>span{width:11px;height:11px;border-radius:50%;background:#3b82f6;margin-top:4px;box-shadow:0 0 0 4px #eaf2ff}.supervision-timeline-item:not(:last-child):before{content:"";position:absolute;left:5px;top:19px;bottom:-2px;width:1px;background:#dce6f2}.supervision-timeline-item strong,.supervision-timeline-item small{display:block}.supervision-timeline-item strong{font-size:12px}.supervision-timeline-item small{font-size:10px;color:var(--muted);margin-top:3px}.supervision-timeline-item p{font-size:11px;margin:6px 0 0}.supervision-create-card{max-width:900px;padding:24px}.supervision-create-card .form-grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.supervision-create-card .span-2{grid-column:1/-1}.supervision-form-actions,.supervision-decision-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:18px}.supervision-notification-btn{position:relative}
@media(max-width:980px){.supervision-task-card{grid-template-columns:1fr}.supervision-filter{grid-template-columns:1fr 1fr}.supervision-filter-action{grid-column:1/-1}.supervision-detail-grid{grid-template-columns:1fr}.supervision-files{grid-template-columns:1fr}}
@media(max-width:700px){.supervision-filter{grid-template-columns:1fr}.supervision-filter-action{grid-column:auto;flex-direction:column}.supervision-task-meta{grid-template-columns:1fr}.supervision-detail-head{flex-direction:column}.supervision-detail-deadline{width:100%}.supervision-create-card .form-grid-2{grid-template-columns:1fr}.supervision-create-card .span-2{grid-column:auto}.supervision-form-actions,.supervision-decision-actions{flex-direction:column}.supervision-form-actions .btn,.supervision-decision-actions .btn{width:100%}.supervision-metrics{grid-template-columns:1fr 1fr}}

/* v10.13 Kebijakan & Target */
.policy-page-head{align-items:center}.policy-clinic-toolbar{margin-bottom:18px}.policy-clinic-toolbar .clinic-search-form{display:grid;grid-template-columns:minmax(280px,1fr) 180px auto;gap:10px;align-items:center}.policy-clinic-toolbar input[type=month],.policy-month-picker input[type=month]{min-height:42px;padding:8px 11px;border:1px solid #d8e2ee;border-radius:12px;background:#fff}.policy-clinic-revenue{margin-top:15px;padding:12px;border-radius:13px;background:#f7faff;border:1px solid #e1eaf5}.policy-clinic-revenue span,.policy-clinic-revenue b{display:block}.policy-clinic-revenue span{font-size:10px;color:var(--muted)}.policy-clinic-revenue b{margin-top:5px;font-size:16px}.policy-month-picker{display:flex;gap:8px;align-items:center}.policy-metrics{margin:18px 0}.policy-money{font-size:22px!important}.negative{color:#b42336!important}.positive{color:#16865a!important}.policy-progress-card{margin-bottom:18px}.policy-progress-head{display:flex;justify-content:space-between;gap:20px;margin-bottom:12px}.policy-progress-head>div span,.policy-progress-head>div strong{display:block}.policy-progress-head>div span{font-size:10px;color:var(--muted);font-weight:800}.policy-progress-head>div strong{margin-top:5px;font-size:18px}.policy-progress{height:10px;border-radius:999px;background:#edf2f7;overflow:hidden}.policy-progress i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#1f6feb,#65a7ff)}.policy-main-grid{align-items:start}.policy-form-card{padding:22px}.policy-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.policy-form-grid .field{margin:0}.policy-form-grid input,.policy-form-grid select,.policy-expense-form input,.policy-expense-form select,.policy-inline-edit input{width:100%;min-height:44px;padding:10px 12px;border:1px solid #d8e2ee;border-radius:12px;background:#fff;font:inherit}.policy-form-grid textarea{width:100%;min-height:92px;padding:11px 12px;border:1px solid #d8e2ee;border-radius:12px;resize:vertical;font:inherit}.policy-form-grid input:focus,.policy-form-grid select:focus,.policy-form-grid textarea:focus,.policy-expense-form input:focus,.policy-expense-form select:focus{outline:none;border-color:#78aef4;box-shadow:0 0 0 4px rgba(31,111,235,.1)}.policy-form-grid .span-2{grid-column:1/-1}.policy-check-field{display:flex;align-items:end;padding-bottom:9px}.policy-check-field label{display:flex;align-items:center;gap:9px}.policy-check-field input{width:18px!important;height:18px;min-height:0!important}.money-input{display:flex;align-items:center;border:1px solid #d8e2ee;border-radius:12px;background:#fff;overflow:hidden}.money-input span{padding-left:12px;font-size:12px;font-weight:850;color:#657891}.money-input input{border:0!important;box-shadow:none!important;padding-left:8px!important}.policy-cost-breakdown{margin:18px 0}.policy-cost-breakdown .card span,.policy-cost-breakdown .card strong,.policy-cost-breakdown .card small{display:block}.policy-cost-breakdown .card span{font-size:11px;color:var(--muted);font-weight:750}.policy-cost-breakdown .card strong{margin-top:7px;font-size:20px}.policy-cost-breakdown .card small{margin-top:5px;color:#7b8da4}.policy-expense-card,.policy-service-card{margin-top:18px}.policy-expense-form{display:grid;grid-template-columns:150px 210px 180px minmax(220px,1fr) auto;gap:10px;align-items:end;margin-bottom:16px}.policy-expense-form .field{margin:0}.policy-expense-desc{min-width:0}.policy-table td{vertical-align:middle}.policy-service-table table{min-width:980px}.policy-service-table td{vertical-align:middle}.policy-service-table td:first-child strong,.policy-service-table td:first-child small{display:block}.policy-service-table td:first-child small{margin-top:4px;font-size:10px;color:var(--muted)}.policy-inline-edit{position:relative}.policy-inline-edit summary{list-style:none;display:inline-flex;cursor:pointer;padding:7px 10px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:11px;font-weight:800}.policy-inline-edit summary::-webkit-details-marker{display:none}.policy-inline-edit[open] form{position:absolute;right:0;top:36px;z-index:15;width:290px;padding:14px;border:1px solid #dbe5f0;border-radius:15px;background:#fff;box-shadow:0 18px 45px rgba(15,23,42,.16)}.policy-inline-edit form .field{margin:0 0 9px}.policy-inline-edit form label{font-size:10px}.policy-data-note{display:flex;gap:12px;margin-top:14px;padding:13px 15px;border:1px solid #dbe6f3;border-radius:13px;background:#f8fbff}.policy-data-note strong{white-space:nowrap;font-size:11px}.policy-data-note span{font-size:11px;line-height:1.55;color:#657991}
@media(max-width:1100px){.policy-clinic-toolbar .clinic-search-form{grid-template-columns:1fr 180px}.policy-clinic-toolbar .clinic-search-form .btn{grid-column:1/-1;width:max-content}.policy-main-grid{grid-template-columns:1fr}.policy-expense-form{grid-template-columns:1fr 1fr 1fr}.policy-expense-desc{grid-column:1/-1}.policy-expense-form>.btn{width:max-content}}
@media(max-width:720px){.policy-clinic-toolbar .clinic-search-form,.policy-form-grid,.policy-expense-form{grid-template-columns:1fr}.policy-clinic-toolbar .clinic-search-form .btn,.policy-expense-desc{grid-column:auto}.policy-month-picker{margin-top:12px;align-items:stretch;flex-direction:column}.policy-progress-head,.policy-data-note{flex-direction:column}.policy-cost-breakdown{grid-template-columns:1fr}.policy-inline-edit[open] form{position:fixed;left:16px;right:16px;top:auto;bottom:16px;width:auto}.policy-form-grid .span-2{grid-column:auto}}


/* Financial reports v3.2 / v10.14 */
.financial-report-page-head{align-items:center}.financial-report-kicker{display:block;margin-bottom:6px;color:#1f6feb;font-size:10px;font-weight:900;letter-spacing:.14em}.financial-report-filter{padding:18px 20px;margin-bottom:14px}.financial-report-filter-form{display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;gap:12px;align-items:end}.financial-report-filter-form .field{margin:0;min-width:0}.financial-report-filter-form input,.financial-report-filter-form select{width:100%;min-height:44px;padding:10px 40px 10px 12px;border:1px solid #d8e2ee;border-radius:13px;background:#fff;font:inherit}.financial-report-filter-form select{appearance:none;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364758b' stroke-width='2.2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 12px center}.financial-report-filter-form input:focus,.financial-report-filter-form select:focus{outline:none;border-color:#78aef4;box-shadow:0 0 0 4px rgba(31,111,235,.10)}.financial-preset-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.financial-preset-buttons a{padding:7px 11px;border:1px solid #dde6ef;border-radius:999px;background:#f8fbff;color:#48617f;font-size:11px;font-weight:800}.financial-preset-buttons a:hover{border-color:#bcd2ef;background:#eef5ff;color:#1f6feb}.financial-period-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 2px 14px;color:#63748a;font-size:11px}.financial-period-caption strong{color:#253c58;font-size:12px}.financial-report-metrics,.financial-secondary-metrics{margin-bottom:16px}.financial-money{font-size:21px!important;white-space:nowrap}.financial-small-money{font-size:19px!important;white-space:nowrap}.financial-money.negative,.financial-negative{color:#b42334!important}.financial-report-chart-card{padding:20px 22px;margin-bottom:18px}.financial-report-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:14px}.financial-report-card-head h3{margin:0}.financial-report-card-head p{margin:4px 0 0;font-size:11px;color:var(--muted)}.financial-report-chart-wrap{height:340px;position:relative}.financial-breakdown-grid{margin-bottom:18px}.financial-breakdown-list{display:grid;gap:0}.financial-breakdown-list>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 2px;border-bottom:1px solid #edf1f5;font-size:12px}.financial-breakdown-list>div:last-child{border-bottom:0}.financial-breakdown-list span{color:#65778d}.financial-breakdown-list span small{color:#94a1b1}.financial-breakdown-list strong{color:#1d3049}.financial-breakdown-list .total{margin-top:5px;padding-top:14px;border-top:1px solid #dbe4ee;font-weight:800}.financial-monthly-card,.financial-transactions-card{padding:20px;margin-bottom:18px}.financial-monthly-table td{vertical-align:middle;white-space:nowrap}.financial-monthly-table td:first-child{white-space:normal;min-width:145px}.financial-monthly-table td small{color:var(--muted)}
@media(max-width:1150px){.financial-report-filter-form{grid-template-columns:1fr 1fr}.financial-report-filter-form .btn{grid-column:1/-1;width:max-content}.financial-report-metrics,.financial-secondary-metrics{grid-template-columns:1fr 1fr}}
@media(max-width:720px){.financial-report-filter-form{grid-template-columns:1fr}.financial-report-filter-form .btn{grid-column:auto;width:100%}.financial-report-metrics,.financial-secondary-metrics{grid-template-columns:1fr}.financial-period-caption,.financial-report-card-head{align-items:flex-start;flex-direction:column}.financial-report-chart-wrap{height:300px}.financial-money,.financial-small-money{white-space:normal}.financial-breakdown-grid{grid-template-columns:1fr}}

/* BABYLON v10.14.1 — financial report filter + pie chart polish */
.financial-filter-title{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;padding-bottom:13px;border-bottom:1px solid #edf2f7}.financial-filter-title>div{display:grid;gap:3px}.financial-filter-title strong{font-size:13px;color:#263d59}.financial-filter-title span:not(.badge){font-size:11px;color:var(--muted)}.financial-report-filter-form{grid-template-columns:1.05fr 1fr 1fr 1.05fr auto}.financial-date-field{display:block!important}.financial-filter-help{margin-top:10px;color:#718096;font-size:10.5px}.financial-pie-grid{margin-bottom:18px}.financial-pie-card{padding:20px;min-width:0}.financial-pie-layout{display:grid;grid-template-columns:minmax(230px,.85fr) minmax(250px,1.15fr);gap:22px;align-items:center}.financial-pie-wrap{position:relative;height:270px;min-width:0}.financial-pie-list{min-width:0}.financial-pie-list>div{padding:10px 2px}.financial-pie-list span{min-width:0}.financial-pie-list strong{white-space:nowrap}
@media(max-width:1150px){.financial-report-filter-form{grid-template-columns:1fr 1fr}.financial-filter-title{align-items:flex-start}.financial-pie-layout{grid-template-columns:1fr}.financial-pie-wrap{height:250px}.financial-pie-list{max-width:520px;margin:0 auto;width:100%}}
@media(max-width:720px){.financial-filter-title{flex-direction:column}.financial-report-filter-form{grid-template-columns:1fr}.financial-pie-grid{grid-template-columns:1fr}.financial-pie-card{padding:16px}.financial-pie-wrap{height:240px}.financial-pie-layout{gap:12px}}

/* v3.3 / v10.15 · finance billing, cost pie, shift transaction filter & shift closing */
.financial-pie-grid{margin-bottom:18px}.financial-pie-card,.financial-method-card{padding:20px;min-width:0}.financial-pie-layout{display:grid;grid-template-columns:minmax(220px,.85fr) minmax(250px,1.15fr);gap:22px;align-items:center}.financial-pie-wrap{position:relative;height:260px;min-width:0}.financial-pie-list{min-width:0}.financial-pie-list>div{padding:10px 2px}.financial-method-list>div{padding:14px 2px}.financial-method-list span{display:grid;gap:3px}.financial-method-list span strong{font-size:12px;color:#233a56}.financial-method-list span small{font-size:10px}.financial-method-list b{font-size:13px;color:#172d48;white-space:nowrap}.billing-chart-card{border-top:3px solid rgba(31,111,235,.18)}
.financial-invoice-card{padding:20px;margin-bottom:18px}.invoice-summary-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:16px}.invoice-summary-strip>div{padding:13px 14px;border:1px solid #e3eaf2;border-radius:14px;background:#f8fbfe;display:grid;gap:5px}.invoice-summary-strip span{font-size:10px;color:#74859a;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.invoice-summary-strip strong{font-size:15px;color:#1f3855}.financial-invoice-table td{vertical-align:middle;white-space:nowrap}.financial-invoice-table td:nth-child(2){min-width:170px;white-space:normal}.financial-invoice-table small{color:#8794a5}.invoice-progress{height:5px;min-width:88px;margin-top:6px;border-radius:99px;background:#e8edf3;overflow:hidden}.invoice-progress span{display:block;height:100%;border-radius:inherit;background:#31a36d}
.transaction-shift-filter{display:flex;align-items:end;gap:10px;padding:12px 14px;margin:0 0 14px;border:1px solid #e4eaf1;border-radius:14px;background:#f8fbfe}.transaction-shift-filter .field{margin:0;min-width:250px}.transaction-shift-filter select{min-height:40px}.transaction-shift-filter .btn{min-height:40px}.financial-transactions-card td small{color:#7e8da0}
.shift-closing-grid{margin-bottom:18px;align-items:start}.shift-closing-card,.shift-history-card{padding:20px;min-width:0}.closure-preview-filter{display:grid;grid-template-columns:1fr 1.1fr auto;gap:10px;align-items:end;margin-bottom:13px}.closure-preview-filter .field{margin:0}.closure-system-summary{display:grid;grid-template-columns:1.25fr .8fr 1.2fr;gap:9px;margin-bottom:14px}.closure-system-summary>div{padding:12px 13px;border:1px solid #dce7f2;border-radius:13px;background:#f6faff;display:grid;gap:4px}.closure-system-summary span{font-size:9.5px;color:#718198;text-transform:uppercase;font-weight:850;letter-spacing:.04em}.closure-system-summary strong{font-size:14px;color:#1b3656}.closure-save-form{padding-top:13px;border-top:1px solid #e9eef4}.closure-live-variance{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;margin:0 0 12px;border-radius:12px;background:#f5f7fa;border:1px solid #e4e9ef}.closure-live-variance span{font-size:11px;color:#66798f;font-weight:800}.closure-live-variance strong{font-size:15px}.closure-live-variance strong.plus{color:#087443}.closure-live-variance strong.minus{color:#b42334}.closure-live-variance strong.balanced{color:#53677f}.variance-badge{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;font-size:10.5px;font-weight:900;white-space:nowrap}.variance-badge.plus{background:#e8f8f0;color:#087443}.variance-badge.minus{background:#fff0f1;color:#b42334}.variance-badge.balanced{background:#edf2f7;color:#53677f}.shift-history-card .table-wrap{max-height:480px}.shift-history-card td{vertical-align:middle;white-space:nowrap}
@media(max-width:1150px){.financial-pie-layout{grid-template-columns:1fr}.financial-pie-wrap{height:245px}.invoice-summary-strip{grid-template-columns:1fr 1fr}.closure-preview-filter{grid-template-columns:1fr 1fr}.closure-preview-filter .btn{grid-column:1/-1;width:max-content}.closure-system-summary{grid-template-columns:1fr}.shift-closing-grid{grid-template-columns:1fr}}
@media(max-width:720px){.financial-pie-grid{grid-template-columns:1fr}.financial-pie-card,.financial-method-card,.financial-invoice-card,.shift-closing-card,.shift-history-card{padding:16px}.financial-pie-wrap{height:230px}.invoice-summary-strip{grid-template-columns:1fr}.transaction-shift-filter{align-items:stretch;flex-direction:column}.transaction-shift-filter .field{min-width:0;width:100%}.transaction-shift-filter .btn{width:100%}.closure-preview-filter{grid-template-columns:1fr}.closure-preview-filter .btn{grid-column:auto;width:100%}.closure-save-form .form-grid-2{grid-template-columns:1fr}}

/* BABYLON v10.15.1 · Reports / Shift UI parity with Register Portal */
.financial-transactions-card .field input:not([type=file]):not([type=checkbox]):not([type=radio]),
.financial-transactions-card .field select,
.shift-closing-card .field input:not([type=file]):not([type=checkbox]):not([type=radio]),
.shift-closing-card .field select,
.shift-closing-card .field textarea{
  width:100%;
  min-width:0;
  min-height:48px;
  padding:12px 14px;
  border:1px solid #d8e2ee;
  border-radius:14px;
  background:#fff;
  color:var(--ink);
  font:inherit;
  font-size:13px;
  line-height:1.25;
  box-shadow:0 1px 2px rgba(15,23,42,.02),inset 0 1px 0 rgba(255,255,255,.75);
  transition:border-color .18s ease,box-shadow .18s ease,background-color .18s ease;
}
.financial-transactions-card .field select,
.shift-closing-card .field select{
  appearance:none;
  -webkit-appearance:none;
  -moz-appearance:none;
  padding-right:46px;
  cursor:pointer;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%2364758b' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E"),linear-gradient(180deg,#ffffff,#f8fbff);
  background-repeat:no-repeat,no-repeat;
  background-position:right 14px center,0 0;
  background-size:16px 16px,100% 100%;
}
.shift-closing-card .field input[type=date]{
  background:linear-gradient(180deg,#ffffff,#f8fbff);
}
.financial-transactions-card .field select:hover,
.shift-closing-card .field select:hover,
.shift-closing-card .field input:hover,
.shift-closing-card .field textarea:hover{border-color:#bfd0e3}
.financial-transactions-card .field select:focus,
.shift-closing-card .field input:focus,
.shift-closing-card .field select:focus,
.shift-closing-card .field textarea:focus{
  outline:none;
  border-color:#7fb1f6;
  box-shadow:0 0 0 4px #eaf3ff;
  background-color:#fff;
}
.shift-closing-card .field textarea{
  min-height:108px;
  resize:vertical;
  line-height:1.5;
}
.shift-closing-card .field label,
.financial-transactions-card .field label{
  display:block;
  margin:0 0 8px;
  color:#172033;
  font-size:12px;
  font-weight:800;
}
.shift-closing-card .field label small{font-weight:600;color:#7a899c}

/* Keep the two actual reconciliation values aligned just like Register Portal. */
.closure-save-form .form-grid-2{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
  margin-bottom:14px;
}
.closure-save-form .form-grid-2 .field{margin:0;min-width:0}
.closure-save-form>.field{margin:0 0 14px}

/* Cleaner shift selectors on transaction filtering. */
.transaction-shift-filter{
  display:grid;
  grid-template-columns:minmax(280px,420px) auto;
  justify-content:start;
  align-items:end;
  gap:12px;
  padding:14px 16px;
  margin:0 0 16px;
  border:1px solid #dfe8f2;
  border-radius:15px;
  background:linear-gradient(180deg,#fbfdff,#f6faff);
}
.transaction-shift-filter .field{margin:0;min-width:0;width:100%}
.transaction-shift-filter .btn{min-height:48px;padding:0 18px;border-radius:14px;white-space:nowrap}

/* Preview controls keep date, shift and action visually balanced. */
.closure-preview-filter{
  display:grid;
  grid-template-columns:minmax(155px,.9fr) minmax(190px,1fr) auto;
  gap:12px;
  align-items:end;
  margin-bottom:14px;
}
.closure-preview-filter .field{margin:0;min-width:0}
.closure-preview-filter .btn{min-height:48px;padding:0 18px;border-radius:14px;white-space:nowrap}

.closure-system-summary{gap:10px;margin-bottom:16px}
.closure-system-summary>div{
  min-width:0;
  padding:14px 14px;
  border:1px solid #dce7f2;
  border-radius:14px;
  background:linear-gradient(180deg,#f8fbff,#f3f8ff);
}
.closure-system-summary span{font-size:9.5px;letter-spacing:.05em}
.closure-system-summary strong{font-size:15px}
.closure-save-form{padding-top:16px}
.closure-live-variance{margin:0 0 14px;padding:12px 14px;border-radius:13px}

@media(max-width:900px){
  .closure-preview-filter{grid-template-columns:1fr 1fr}
  .closure-preview-filter .btn{grid-column:1/-1;width:max-content}
}
@media(max-width:720px){
  .transaction-shift-filter{grid-template-columns:1fr}
  .transaction-shift-filter .btn{width:100%}
  .closure-preview-filter{grid-template-columns:1fr}
  .closure-preview-filter .btn{grid-column:auto;width:100%}
  .closure-save-form .form-grid-2{grid-template-columns:1fr}
}


/* BABYLON v10.15.2 — keep Rekonsiliasi Shift controls inside the card */
.shift-closing-grid{
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
}
.closure-preview-filter{
  display:grid;
  grid-template-columns:minmax(0,.9fr) minmax(0,1fr) minmax(0,.78fr);
  gap:12px;
  align-items:end;
  width:100%;
  min-width:0;
}
.closure-preview-filter .field,
.closure-preview-filter .field input,
.closure-preview-filter .field select,
.closure-preview-filter .btn{
  min-width:0;
  max-width:100%;
}
.closure-preview-filter .field input,
.closure-preview-filter .field select{
  width:100%;
}
.closure-preview-filter .btn{
  width:100%;
  min-height:48px;
  padding-left:10px;
  padding-right:10px;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
@media(max-width:1180px){
  .shift-closing-grid{grid-template-columns:1fr}
  .closure-preview-filter{grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(130px,.72fr)}
}
@media(max-width:760px){
  .closure-preview-filter{grid-template-columns:1fr 1fr}
  .closure-preview-filter .btn{grid-column:1/-1;width:100%}
}
@media(max-width:520px){
  .closure-preview-filter{grid-template-columns:1fr}
  .closure-preview-filter .btn{grid-column:auto}
}

/* v10.16 Financial report export / print */
.financial-report-export-bar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:12px 0 18px;padding:14px 16px;border:1px solid #dbe7f5;border-radius:16px;background:linear-gradient(135deg,#f8fbff,#f1f6ff)}
.financial-report-export-bar>div:first-child{display:flex;flex-direction:column;gap:3px;min-width:0}.financial-report-export-bar strong{font-size:13px;color:#0f172a}.financial-report-export-bar span{font-size:11px;color:#64748b;line-height:1.45}.financial-report-export-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.financial-report-export-actions .btn{white-space:nowrap}
@media(max-width:720px){.financial-report-export-bar{align-items:stretch;flex-direction:column}.financial-report-export-actions{width:100%}.financial-report-export-actions .btn{flex:1;text-align:center}}

/* Dashboard financial parity + revenue chart v10.17 */
.dashboard-finance-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:26px 0 12px}.dashboard-finance-head h3,.dashboard-chart-head h3{margin:4px 0 4px;font-size:18px}.dashboard-finance-head p,.dashboard-chart-head p{margin:0;color:var(--muted);font-size:11px}.dashboard-section-kicker{display:block;font-size:9px;font-weight:900;letter-spacing:.12em;color:#6c86a5}.dashboard-finance-metrics{margin-bottom:14px}.finance-metric-card{min-width:0}.finance-value{font-size:21px;white-space:nowrap}.finance-value.negative{color:#b42334}.dashboard-target-progress-card{padding:19px 21px;margin-bottom:18px}.dashboard-target-progress-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.dashboard-target-progress-head strong,.dashboard-target-progress-head span{display:block}.dashboard-target-progress-head strong{font-size:13px}.dashboard-target-progress-head span{font-size:10px;color:var(--muted);margin-top:4px}.dashboard-target-progress-head b{font-size:20px;color:#1f6feb}.dashboard-progress-track{height:10px;border-radius:999px;background:#edf2f7;overflow:hidden;margin:13px 0 17px}.dashboard-progress-track span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#1f6feb,#5b9bf3);min-width:0}.dashboard-cost-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.dashboard-cost-strip span{padding:10px 12px;border:1px solid #e4eaf2;border-radius:12px;background:#fbfcfe}.dashboard-cost-strip small,.dashboard-cost-strip strong{display:block}.dashboard-cost-strip small{font-size:9px;color:var(--muted);margin-bottom:4px}.dashboard-cost-strip strong{font-size:12px}.dashboard-revenue-chart-card{padding:20px 22px;margin-bottom:18px}.dashboard-chart-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:14px}.dashboard-chart-wrap{position:relative;height:320px}.dashboard-chart-error{position:absolute;inset:0;display:grid;place-items:center;text-align:center;color:#a33b45;background:#fff;border:1px dashed #efc8cc;border-radius:14px;font-size:12px;padding:20px}.dashboard-chart-error[hidden]{display:none!important}@media(max-width:1000px){.dashboard-cost-strip{grid-template-columns:1fr 1fr}.finance-value{font-size:19px}}@media(max-width:720px){.dashboard-finance-head,.dashboard-chart-head,.dashboard-target-progress-head{align-items:flex-start;flex-direction:column}.dashboard-cost-strip{grid-template-columns:1fr}.dashboard-chart-wrap{height:280px}}

/* Master Data Karyawan ↔ Rekam Medis: payroll hanya menampilkan identitas terkunci. */
.rm-locked-payroll{display:grid;gap:4px;padding:10px 12px;border:1px solid #dfe8f2;border-radius:12px;background:#f8fbff;min-height:44px}
.rm-locked-payroll strong{font-size:12px;line-height:1.35}.rm-locked-payroll small{font-size:10px;color:var(--muted);line-height:1.4}.rm-locked-payroll .badge{width:max-content;margin-bottom:2px}

/* Financial report cost composition responsive fix · 2026-09-09
   Prevents the cost labels/amounts from overflowing their card when the
   application sidebar reduces the available card width on desktop. */
.financial-pie-card,
.financial-method-card{
  overflow:hidden;
}
.financial-pie-layout{
  grid-template-columns:minmax(150px,.72fr) minmax(0,1.28fr);
  gap:16px;
  width:100%;
  max-width:100%;
}
.financial-pie-wrap{
  width:100%;
  max-width:100%;
  min-width:0;
}
.financial-pie-list{
  width:100%;
  max-width:100%;
  min-width:0;
}
.financial-pie-list>div{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  min-width:0;
  width:100%;
}
.financial-pie-list span{
  min-width:0;
  overflow-wrap:anywhere;
  word-break:normal;
  line-height:1.35;
}
.financial-pie-list strong{
  min-width:max-content;
  white-space:nowrap;
  text-align:right;
  font-size:11.5px;
}
@media(max-width:720px){
  .financial-pie-layout{
    grid-template-columns:1fr;
    gap:12px;
  }
  .financial-pie-list strong{
    font-size:12px;
  }
}


/* Risk Management v1 · Register Portal + BABYLON */
.risk-page-head{align-items:center}.risk-kicker{display:block;margin-bottom:6px;font-size:9px;font-weight:900;letter-spacing:.14em;color:#b7791f}.risk-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.risk-metrics{margin:0 0 18px}.risk-metric-danger{color:#b42334}.risk-metric-warn{color:#9a670d}.risk-metric-good{color:#13714b}
.risk-scope-card{padding:16px 18px;margin-bottom:18px}.risk-scope-form{display:grid;grid-template-columns:minmax(280px,480px) auto auto;align-items:end;justify-content:start;gap:10px}.risk-scope-form .field{margin:0}.risk-scope-form select{width:100%;min-width:0;padding:12px 42px 12px 13px;border:1px solid #d8e2ee;border-radius:13px;background:#fff;font:inherit;outline:none}.risk-scope-form select:focus{border-color:#78aef4;box-shadow:0 0 0 4px rgba(31,111,235,.09)}
.risk-form-card{padding:23px 24px;margin-bottom:18px;border-color:#d9e5f2}.risk-form-card .section-title{align-items:flex-start}.risk-form-card .section-title p{margin:4px 0 0;font-size:11px}.risk-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 14px}.risk-form-grid .field{margin:0;min-width:0}.risk-form-grid .span-2{grid-column:1/-1}.risk-form-grid input,.risk-form-grid select,.risk-form-grid textarea{width:100%;min-width:0;padding:12px 13px;border:1px solid #d8e2ee;border-radius:13px;background:#fff;font:inherit;color:var(--ink);outline:none}.risk-form-grid textarea{resize:vertical;line-height:1.55}.risk-form-grid input:focus,.risk-form-grid select:focus,.risk-form-grid textarea:focus{border-color:#78aef4;box-shadow:0 0 0 4px rgba(31,111,235,.09)}.risk-form-grid select{appearance:none;padding-right:42px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364758b' stroke-width='2.1'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 13px center}.risk-inline-help{min-height:45px;display:flex;align-items:center;padding:10px 12px;border:1px dashed #d8e2ee;border-radius:13px;background:#f8fafc;color:var(--muted);font-size:11px;line-height:1.45}.risk-form-foot{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:17px;padding-top:17px;border-top:1px solid #edf1f5}.risk-form-foot>.btn{min-width:150px}.risk-score-preview{display:grid;grid-template-columns:auto auto auto;align-items:center;gap:9px;padding:9px 12px;border-radius:12px;border:1px solid transparent}.risk-score-preview span{font-size:10px;font-weight:750}.risk-score-preview strong{font-size:20px;line-height:1}.risk-score-preview b{font-size:11px}.risk-score-preview.level-low{background:#eef8f1;border-color:#d4ead9;color:#176442}.risk-score-preview.level-moderate{background:#fff8df;border-color:#eedda1;color:#805d0a}.risk-score-preview.level-high{background:#fff0df;border-color:#f1cf9e;color:#99510a}.risk-score-preview.level-critical{background:#fdebed;border-color:#efc6cb;color:#a12f3c}
.risk-overview-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(285px,.75fr);gap:18px;align-items:start;margin-bottom:18px}.risk-matrix-card,.risk-priority-card{min-width:0}.risk-matrix-wrap{overflow:auto;border:1px solid var(--line);border-radius:15px}.risk-matrix{min-width:690px;table-layout:fixed}.risk-matrix th,.risk-matrix td{text-align:center;vertical-align:middle;padding:8px;border-right:1px solid rgba(255,255,255,.62);border-bottom:1px solid rgba(255,255,255,.62)}.risk-matrix th{background:#f8fafc;color:#40516a;text-transform:none;letter-spacing:0;font-size:11px}.risk-matrix th:first-child{width:142px}.risk-matrix th small{display:block;margin-top:3px;font-size:8px;font-weight:600;color:#7b8a9d}.risk-matrix td span{display:block;font-size:17px;font-weight:900;line-height:1}.risk-matrix td small{display:block;margin-top:4px;font-size:8px;font-weight:700;opacity:.75}.risk-cell.level-low{background:#e8f6ed;color:#176442}.risk-cell.level-moderate{background:#fff3c8;color:#7a5b06}.risk-cell.level-high{background:#ffe4c3;color:#92480b}.risk-cell.level-critical{background:#f8d4d8;color:#9c2837}.risk-legend{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:12px}.risk-legend span,.risk-level-pill{display:inline-flex;align-items:center;border-radius:999px;font-size:9px;font-weight:900;letter-spacing:.02em;white-space:nowrap}.risk-legend span{padding:6px 9px}.risk-level-pill{padding:6px 8px}.risk-legend .level-low,.risk-level-pill.level-low{background:#e8f6ed;color:#176442}.risk-legend .level-moderate,.risk-level-pill.level-moderate{background:#fff3c8;color:#7a5b06}.risk-legend .level-high,.risk-level-pill.level-high{background:#ffe4c3;color:#92480b}.risk-legend .level-critical,.risk-level-pill.level-critical{background:#f8d4d8;color:#9c2837}
.risk-priority-list{display:grid;gap:9px}.risk-priority-item{display:grid;gap:6px;padding:12px 13px;border:1px solid #e4eaf2;border-radius:13px;background:#fbfdff;transition:.15s;min-width:0}.risk-priority-item:hover{border-color:#c9d9ed;background:#f7fbff;transform:translateY(-1px)}.risk-priority-item .risk-level-pill{width:max-content}.risk-priority-item strong{font-size:12px;line-height:1.4;overflow-wrap:anywhere}.risk-priority-item small{color:var(--muted);font-size:9.5px;line-height:1.45;overflow-wrap:anywhere}
.risk-filter-card{padding:17px 18px;margin-bottom:18px}.risk-filter-grid{display:grid;grid-template-columns:minmax(240px,1.5fr) minmax(165px,.9fr) minmax(160px,.75fr) minmax(150px,.72fr) auto;gap:11px;align-items:end}.risk-filter-grid .field{margin:0;min-width:0}.risk-filter-grid input,.risk-filter-grid select{width:100%;min-width:0;padding:12px 13px;border:1px solid #d8e2ee;border-radius:13px;background:#fff;font:inherit;outline:none}.risk-filter-grid input:focus,.risk-filter-grid select:focus{border-color:#78aef4;box-shadow:0 0 0 4px rgba(31,111,235,.09)}.risk-filter-actions{display:flex;gap:7px;align-items:center}.risk-filter-actions .btn{min-height:44px}
.risk-register-card{padding:20px}.risk-register-card .section-title{margin-bottom:12px}.risk-table-wrap{max-width:100%}.risk-table{min-width:930px}.risk-table td{vertical-align:middle}.risk-table .risk-title-cell{min-width:260px;max-width:380px}.risk-title-cell strong,.risk-title-cell small,.risk-title-cell p{display:block}.risk-title-cell strong{font-size:12px;line-height:1.45;overflow-wrap:anywhere}.risk-title-cell small{margin-top:3px;color:var(--muted);font-size:9px}.risk-title-cell p{margin:7px 0 0;color:#66788d;font-size:9.5px;line-height:1.45}.risk-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:10px;font-weight:850;color:#31506f;white-space:nowrap}.risk-assessment-mini,.risk-clinic-name,.risk-overdue-note{display:block;margin-top:5px;color:var(--muted);font-size:9px}.risk-overdue{color:#b42334;font-weight:850;white-space:nowrap}.risk-overdue-note{color:#b42334;font-weight:800}.risk-pagination{justify-content:flex-end}
@media(max-width:1180px){.risk-overview-grid{grid-template-columns:1fr}.risk-priority-list{grid-template-columns:repeat(2,minmax(0,1fr))}.risk-filter-grid{grid-template-columns:1fr 1fr 1fr}.risk-filter-actions{grid-column:1/-1}.risk-scope-form{grid-template-columns:minmax(0,1fr) auto auto}}
@media(max-width:760px){.risk-page-head{align-items:flex-start;display:flex;flex-direction:column}.risk-head-actions{width:100%;justify-content:flex-start}.risk-head-actions .btn{flex:1}.risk-form-card{padding:18px}.risk-form-grid{grid-template-columns:1fr}.risk-form-grid .span-2{grid-column:auto}.risk-form-foot{align-items:stretch;flex-direction:column}.risk-form-foot>.btn{width:100%}.risk-score-preview{width:100%;grid-template-columns:1fr auto auto}.risk-priority-list{grid-template-columns:1fr}.risk-filter-grid{grid-template-columns:1fr}.risk-filter-actions{grid-column:auto}.risk-filter-actions .btn{flex:1}.risk-scope-form{grid-template-columns:1fr}.risk-scope-form .btn{width:100%}.risk-register-card{padding:16px}.risk-matrix-card,.risk-priority-card{padding:17px}.risk-pagination{justify-content:flex-start;overflow-x:auto}}

/* BABYLON v10.17.8 — Monitoring & Analitik Executive Intelligence */
.analytics-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:18px}.analytics-hero h2{margin:5px 0 6px;font-size:28px;letter-spacing:-.02em}.analytics-hero p{max-width:780px;margin:0;color:#64748b;line-height:1.65}.analytics-kicker{display:block;font-size:10px;letter-spacing:.14em;font-weight:800;color:#2563eb}.analytics-scope-chip{min-width:250px;background:#0f2747;color:#fff;border-radius:18px;padding:16px 18px;display:grid;gap:3px;box-shadow:0 12px 28px rgba(15,39,71,.12)}.analytics-scope-chip span{font-size:10px;letter-spacing:.12em;font-weight:800;color:#93c5fd}.analytics-scope-chip strong{font-size:15px}.analytics-scope-chip small{color:#bfdbfe}.analytics-filter{display:grid;grid-template-columns:minmax(220px,1.5fr) minmax(160px,.8fr) minmax(145px,.7fr) minmax(145px,.7fr) auto;gap:12px;align-items:end;margin-bottom:18px}.analytics-filter .field{margin:0}.analytics-filter .btn{height:44px;white-space:nowrap}.analytics-market-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));background:#0b1220;border-radius:18px;padding:4px;overflow:hidden;margin-bottom:18px;box-shadow:0 14px 34px rgba(15,23,42,.13)}.analytics-market-item{min-width:0;padding:15px 16px;border-right:1px solid rgba(148,163,184,.16);display:flex;flex-direction:column;gap:5px}.analytics-market-item:last-child{border-right:0}.analytics-market-item span{font-size:9px;letter-spacing:.11em;font-weight:800;color:#94a3b8}.analytics-market-item strong{font-size:18px;color:#f8fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.analytics-market-item strong.negative{color:#fda4af}.analytics-market-item em{font-style:normal;font-size:10px;color:#94a3b8}.analytics-market-item em.up,.analytics-chart-meta em.up{color:#4ade80}.analytics-market-item em.down,.analytics-chart-meta em.down{color:#fb7185}.analytics-market-item em.neutral,.analytics-chart-meta em.neutral{color:#94a3b8}.analytics-snapshot-grid{margin-bottom:18px}.analytics-snapshot-card{padding:18px 20px}.analytics-snapshot-card>span{display:block;font-size:11px;color:#64748b;font-weight:700;margin-bottom:8px}.analytics-snapshot-card>strong{display:block;font-size:26px;letter-spacing:-.03em;color:#0f172a}.analytics-snapshot-card>strong b{font-size:inherit}.analytics-snapshot-card>small{display:block;margin-top:5px;color:#718096;line-height:1.4}.analytics-market-chart-card{padding:22px;margin-bottom:18px;overflow:hidden}.analytics-card-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.analytics-card-head h3{margin:4px 0 4px;font-size:18px}.analytics-card-head p{margin:0;color:#64748b;line-height:1.55;font-size:12px;max-width:720px}.analytics-chart-tabs{display:flex;gap:4px;padding:4px;background:#f1f5f9;border-radius:12px;flex:0 0 auto}.analytics-chart-tabs button{border:0;background:transparent;border-radius:9px;padding:8px 12px;font:inherit;font-size:11px;font-weight:700;color:#64748b;cursor:pointer}.analytics-chart-tabs button.active{background:#fff;color:#1d4ed8;box-shadow:0 3px 10px rgba(15,23,42,.08)}.analytics-chart-meta{display:flex;align-items:baseline;gap:12px;margin:20px 0 8px}.analytics-chart-meta span{font-size:11px;color:#64748b;font-weight:700}.analytics-chart-meta strong{font-size:27px;letter-spacing:-.03em;color:#0f172a}.analytics-chart-meta em{font-style:normal;font-size:11px;font-weight:700}.analytics-main-chart{height:360px;position:relative}.analytics-chart-foot{display:flex;gap:20px;flex-wrap:wrap;border-top:1px solid #e2e8f0;margin-top:12px;padding-top:12px;color:#64748b;font-size:10px}.analytics-secondary-grid{margin-top:0;margin-bottom:18px}.analytics-finance-chart-card,.analytics-position-card{min-width:0}.analytics-secondary-chart{height:300px;margin-top:18px}.analytics-kv{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:12px 0;border-bottom:1px solid #e8eef6}.analytics-kv span{color:#64748b;font-size:12px}.analytics-kv strong{color:#0f172a;text-align:right}.analytics-progress{height:8px;background:#e8eef6;border-radius:99px;overflow:hidden;margin:12px 0 6px}.analytics-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#2563eb,#38bdf8)}.analytics-cost-stack{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:16px}.analytics-cost-stack div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:12px}.analytics-cost-stack span{display:block;color:#64748b;font-size:9px;font-weight:700;margin-bottom:6px}.analytics-cost-stack strong{font-size:12px;color:#0f172a}.analytics-clinic-board{margin-bottom:18px}.analytics-clinic-table td{vertical-align:middle}.analytics-clinic-table td:nth-child(2) strong{display:block;white-space:nowrap}.analytics-clinic-table td:nth-child(2) small{display:block;color:#64748b;margin-top:3px;white-space:nowrap}.analytics-rank{width:28px;height:28px;border-radius:9px;background:#eff6ff;color:#1d4ed8;display:inline-grid;place-items:center;font-weight:800}.analytics-target-pill{display:inline-block;background:#eef2ff;color:#4338ca;padding:5px 8px;border-radius:99px;font-weight:700;font-size:11px}.analytics-bottom-grid{margin-bottom:8px}.analytics-note-card p{color:#475569;line-height:1.65}.analytics-note-card p+p{margin-top:12px}.analytics-position-card .negative,.analytics-clinic-table .negative{color:#be123c}.badge.danger{background:#ffe4e6;color:#be123c}
@media(max-width:1180px){.analytics-market-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.analytics-market-item:nth-child(3){border-right:0}.analytics-market-item:nth-child(n+4){border-top:1px solid rgba(148,163,184,.16)}.analytics-filter{grid-template-columns:1.4fr 1fr 1fr 1fr}.analytics-filter .btn{grid-column:1/-1;width:max-content}.analytics-snapshot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.analytics-secondary-grid,.analytics-bottom-grid{grid-template-columns:1fr}}
@media(max-width:760px){.analytics-hero{flex-direction:column}.analytics-scope-chip{width:100%;min-width:0}.analytics-filter{grid-template-columns:1fr}.analytics-filter .btn{width:100%}.analytics-market-strip{grid-template-columns:1fr}.analytics-market-item,.analytics-market-item:nth-child(3){border-right:0;border-top:1px solid rgba(148,163,184,.16)}.analytics-market-item:first-child{border-top:0}.analytics-snapshot-grid{grid-template-columns:1fr}.analytics-card-head{flex-direction:column}.analytics-chart-tabs{width:100%;overflow:auto}.analytics-chart-tabs button{flex:1;white-space:nowrap}.analytics-chart-meta{flex-wrap:wrap}.analytics-main-chart{height:300px}.analytics-cost-stack{grid-template-columns:1fr}.analytics-chart-foot{display:grid;gap:5px}}

/* BABYLON v10.17.10 — Audit pagination */
.audit-list-card{padding:20px}.audit-table-head{margin:18px 0 12px}.audit-table-head h3{margin:0}.audit-table-head>span{font-size:11px;white-space:nowrap}.audit-pagination{justify-content:flex-end;flex-wrap:wrap}.audit-pagination span{color:var(--muted);background:#f8fafc}.audit-pagination a{white-space:nowrap}.audit-pagination a:hover{border-color:#b8cae0;background:#f7faff}.audit-pagination .active:hover{background:var(--accent)}
@media(max-width:760px){.audit-table-head{align-items:flex-start;flex-direction:column}.audit-table-head>span{white-space:normal}.audit-pagination{justify-content:flex-start;overflow-x:auto;flex-wrap:nowrap;padding-bottom:4px}.audit-pagination a,.audit-pagination span{flex:0 0 auto}}

/* v10.17.12 - Global SMTP managed by BABYLON */
.smtp-global-card{overflow:hidden}.smtp-global-banner{display:flex;align-items:flex-start;gap:14px;padding:15px 17px;border:1px solid #cfe0f6;background:linear-gradient(135deg,#f7fbff,#eef5ff);border-radius:15px;margin:14px 0 18px}.smtp-global-banner strong{white-space:nowrap;color:#174f96}.smtp-global-banner span{font-size:12px;color:#5d7088;line-height:1.6}.smtp-global-form{display:grid;gap:10px}.smtp-global-toggles{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:8px 0 4px}.smtp-global-toggles label{display:flex;gap:10px;align-items:flex-start;padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:#fbfdff}.smtp-global-toggles label span{display:grid;gap:3px}.smtp-global-toggles label small{color:var(--muted)}.smtp-test-box{margin-top:18px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:#fbfdff;display:flex;justify-content:space-between;gap:18px;align-items:center}.smtp-test-box>div{display:grid;gap:4px}.smtp-test-box span{font-size:12px;color:var(--muted)}.smtp-test-form{display:flex;gap:9px;align-items:center}.smtp-test-form input{min-width:260px;min-height:44px;border:1px solid #d8e2ee;border-radius:12px;padding:10px 12px}.smtp-summary>div{padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:#fbfdff;display:grid;gap:5px}.smtp-summary span{font-size:11px;color:var(--muted);font-weight:700}.smtp-summary strong{font-size:13px;overflow-wrap:anywhere}@media(max-width:850px){.smtp-global-toggles{grid-template-columns:1fr}.smtp-global-banner{display:grid}.smtp-global-banner strong{white-space:normal}.smtp-test-box{align-items:stretch;flex-direction:column}.smtp-test-form{align-items:stretch;flex-direction:column}.smtp-test-form input{min-width:0;width:100%}}

/* BABYLON v10.17.13 - polished SMTP encryption selector */
.smtp-encryption-field{min-width:0}.smtp-encryption-control{position:relative;display:flex;align-items:center;min-height:52px;border:1px solid #d7e1ee;border-radius:14px;background:linear-gradient(180deg,#fff 0%,#f9fbfe 100%);box-shadow:0 3px 12px rgba(15,23,42,.045),inset 0 1px 0 rgba(255,255,255,.75);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;overflow:hidden}.smtp-encryption-control:hover{border-color:#b9cce4;box-shadow:0 5px 16px rgba(15,23,42,.065),inset 0 1px 0 rgba(255,255,255,.82)}.smtp-encryption-control:focus-within{border-color:#6ca6ef;box-shadow:0 0 0 4px rgba(31,111,235,.10),0 7px 18px rgba(31,111,235,.08)}.smtp-encryption-icon{width:46px;align-self:stretch;display:grid;place-items:center;flex:0 0 46px;background:linear-gradient(145deg,#eef6ff,#e5f0ff);border-right:1px solid #dbe9f8;color:#2563eb}.smtp-encryption-icon svg{width:22px;height:22px;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.smtp-encryption-select{appearance:none;-webkit-appearance:none;width:100%;min-width:0;min-height:50px;border:0!important;outline:0!important;background:transparent!important;padding:0 48px 0 14px!important;color:#162033;font:inherit;font-size:13px;font-weight:700;cursor:pointer;box-shadow:none!important}.smtp-select-chevron{position:absolute;right:14px;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:#f1f5f9;color:#64748b;pointer-events:none}.smtp-select-chevron svg{width:16px;height:16px;stroke:currentColor;stroke-width:2.1;stroke-linecap:round;stroke-linejoin:round}.smtp-encryption-help{display:flex;align-items:center;gap:6px;color:#718096;font-size:10.5px;line-height:1.45}.smtp-encryption-help strong{color:#47627f;font-weight:750}.smtp-security-dot{width:7px;height:7px;border-radius:50%;background:#22a06b;box-shadow:0 0 0 3px rgba(34,160,107,.10);flex:0 0 auto}@media(max-width:520px){.smtp-encryption-control{min-height:50px}.smtp-encryption-icon{width:43px;flex-basis:43px}.smtp-encryption-select{padding-left:12px!important;font-size:12.5px}.smtp-encryption-help{align-items:flex-start}}

/* BABYLON v10.17.15 - polished Monitoring & Analytics filters */
.analytics-filter{padding:18px 20px;border-color:#dfe7f1;background:linear-gradient(180deg,#fff 0%,#fbfdff 100%)}
.analytics-filter .field>label{margin-bottom:2px;color:#24364d;font-size:11px;font-weight:800;letter-spacing:.015em}
.analytics-select-field{min-width:0}
.analytics-select-control{position:relative;display:flex;align-items:center;min-height:48px;border:1px solid #d7e2ee;border-radius:14px;background:linear-gradient(180deg,#fff 0%,#f8fbff 100%);box-shadow:0 3px 12px rgba(15,23,42,.04),inset 0 1px 0 rgba(255,255,255,.85);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;overflow:hidden}
.analytics-select-control:hover{border-color:#b9cde5;box-shadow:0 6px 18px rgba(15,23,42,.06),inset 0 1px 0 rgba(255,255,255,.92)}
.analytics-select-control:focus-within{border-color:#6ea8f4;box-shadow:0 0 0 4px rgba(31,111,235,.10),0 7px 20px rgba(31,111,235,.07)}
.analytics-select-icon{width:44px;align-self:stretch;display:grid;place-items:center;flex:0 0 44px;background:linear-gradient(145deg,#eef6ff,#e6f0ff);border-right:1px solid #dce9f7;color:#2563eb}
.analytics-select-icon svg{width:20px;height:20px;stroke:currentColor;stroke-width:1.85;stroke-linecap:round;stroke-linejoin:round}
.analytics-select-control select{appearance:none;-webkit-appearance:none;width:100%;min-width:0;min-height:46px;border:0!important;outline:0!important;background:transparent!important;padding:0 48px 0 13px!important;color:#17243a;font:inherit;font-size:12.5px;font-weight:750;cursor:pointer;box-shadow:none!important}
.analytics-select-control select option{font-weight:500;color:#17243a;background:#fff}
.analytics-select-chevron{position:absolute;right:11px;top:50%;transform:translateY(-50%);width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:#eef3f8;color:#64748b;pointer-events:none;transition:background .16s ease,color .16s ease}
.analytics-select-control:hover .analytics-select-chevron{background:#e8f1fb;color:#326aa9}
.analytics-select-chevron svg{width:15px;height:15px;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.analytics-filter .analytics-custom-date input{width:100%;min-height:48px;border:1px solid #d7e2ee;border-radius:14px;background:linear-gradient(180deg,#fff 0%,#f9fbfe 100%);padding:0 12px;color:#17243a;font:inherit;font-size:12.5px;font-weight:650;outline:none;box-shadow:0 3px 12px rgba(15,23,42,.035);transition:border-color .16s ease,box-shadow .16s ease}
.analytics-filter .analytics-custom-date input:hover{border-color:#b9cde5}
.analytics-filter .analytics-custom-date input:focus{border-color:#6ea8f4;box-shadow:0 0 0 4px rgba(31,111,235,.10),0 7px 20px rgba(31,111,235,.06)}
.analytics-filter>.btn{min-height:48px;border-radius:13px;padding:0 17px;box-shadow:0 7px 16px rgba(31,111,235,.16);transition:transform .16s ease,box-shadow .16s ease,background .16s ease}
.analytics-filter>.btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(31,111,235,.20)}
@media(max-width:760px){.analytics-filter{padding:16px}.analytics-select-control,.analytics-filter .analytics-custom-date input,.analytics-filter>.btn{min-height:50px}.analytics-select-icon{width:43px;flex-basis:43px}}

/* BABYLON v10.17.16 - Integration System Control Center */
.integration-page-head{align-items:center}.integration-kicker,.integration-section-kicker{display:block;margin-bottom:6px;font-size:9px;font-weight:900;letter-spacing:.14em;color:#1672c4}.integration-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.integration-overall{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border-radius:999px;font-size:11px;font-weight:850;border:1px solid transparent}.integration-overall i,.integration-state i{width:8px;height:8px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px rgba(100,116,139,.09)}.integration-overall.success{background:#e9f8f0;border-color:#d2ecdd;color:#13714b}.integration-overall.warning{background:#fff6df;border-color:#f0dfae;color:#8d650d}.integration-overall.danger{background:#fdebed;border-color:#efcbd0;color:#a93743}
.integration-hero{display:flex;align-items:center;justify-content:space-between;gap:26px;margin-bottom:18px;padding:25px 28px;overflow:hidden;position:relative;background:linear-gradient(115deg,#10223c 0%,#173e66 55%,#165d72 100%);border:0;color:#fff}.integration-hero:before{content:"";position:absolute;width:350px;height:350px;border-radius:50%;right:-100px;top:-220px;background:rgba(109,195,255,.18)}.integration-hero-copy{position:relative;z-index:1;max-width:820px}.integration-hero-copy>span{display:block;font-size:9px;font-weight:900;letter-spacing:.16em;color:#8fcef9}.integration-hero-copy h3{margin:7px 0 7px;font-size:22px}.integration-hero-copy p{margin:0;max-width:760px;color:#c7d8e8;font-size:12px;line-height:1.65}.integration-health-ring{--integration-progress:0%;position:relative;z-index:1;width:106px;height:106px;flex:0 0 106px;border-radius:50%;display:grid;place-items:center;text-align:center;background:conic-gradient(#66d6aa var(--integration-progress),rgba(255,255,255,.13) 0);box-shadow:0 10px 30px rgba(0,0,0,.16)}.integration-health-ring:before{content:"";position:absolute;inset:9px;border-radius:50%;background:#173653}.integration-health-ring strong,.integration-health-ring span{position:relative;z-index:1}.integration-health-ring strong{align-self:end;font-size:22px;line-height:1}.integration-health-ring span{align-self:start;margin-top:4px;font-size:9px;color:#cfe1ef}
.integration-metrics{margin-bottom:18px}.integration-metric{padding:17px 18px;display:grid;gap:5px;min-width:0}.integration-metric>span{font-size:10px;font-weight:800;color:#6c7d92;text-transform:uppercase;letter-spacing:.055em}.integration-metric>strong{font-size:24px;letter-spacing:-.025em}.integration-metric>small{font-size:9.5px;color:#8896a7;line-height:1.4}.integration-good{color:#148158}.integration-warn{color:#a1690d}
.integration-system-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:18px}.integration-system-card{min-width:0;padding:20px 21px;position:relative;overflow:hidden}.integration-system-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#cbd5e1}.integration-system-card.is-good:before{background:#24a36a}.integration-system-card.is-ready:before{background:#3386e5}.integration-system-card.is-warn:before{background:#d69a29}.integration-system-card.is-bad:before{background:#db5966}.integration-system-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;margin-bottom:16px}.integration-system-head>div:nth-child(2)>span{display:block;font-size:8px;font-weight:900;letter-spacing:.12em;color:#8190a3;margin-bottom:3px}.integration-system-head h3{margin:0;font-size:15px}.integration-system-icon{width:42px;height:42px;border-radius:13px;display:grid;place-items:center;font-size:12px;font-weight:900;letter-spacing:.04em}.integration-system-icon.rm{background:#eaf3ff;color:#1f6feb}.integration-system-icon.register{background:#e9f8f3;color:#16815b}.integration-system-icon.ms{background:#f1ecff;color:#6b4bc5}.integration-state{display:inline-flex;align-items:center;gap:7px;padding:7px 9px;border-radius:999px;font-size:9px;font-weight:900;white-space:nowrap}.integration-state.good{background:#e9f8f0;color:#13714b}.integration-state.bad{background:#fdebed;color:#aa3744}.integration-state.ready{background:#eaf3ff;color:#1d62b7}.integration-state.warn{background:#fff4dc;color:#8f620e}.integration-state i{width:7px;height:7px}.integration-kv-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin-bottom:14px}.integration-kv-grid>div{min-width:0;padding:10px 11px;border:1px solid #e1e8f0;border-radius:12px;background:#fafcff;display:grid;gap:4px}.integration-kv-grid .span-2{grid-column:1/-1}.integration-kv-grid span{font-size:9px;color:#7c8a9c;font-weight:800;text-transform:uppercase;letter-spacing:.04em}.integration-kv-grid strong{font-size:11px;color:#253a54;line-height:1.45;overflow-wrap:anywhere}.integration-system-card>p{min-height:58px;margin:0 0 15px;font-size:11px;line-height:1.55;color:#62748a}.integration-card-actions{display:flex;gap:8px;flex-wrap:wrap}.integration-card-actions .btn{padding:8px 11px;font-size:10.5px}.integration-card-actions .btn.ghost{background:#f8fafc}
.integration-flow-card{margin-bottom:18px;padding:22px}.integration-flow-card .section-title{margin:0 0 16px}.integration-flow-card .section-title h3,.integration-detail-grid .section-title h3,.integration-ownership-card .section-title h3{margin:0}.integration-flow-card .section-title p,.integration-detail-grid .section-title p,.integration-ownership-card .section-title p{margin:4px 0 0;font-size:10.5px}.integration-flow{display:grid;grid-template-columns:minmax(130px,1fr) auto minmax(130px,1fr) auto minmax(130px,1fr) auto minmax(130px,1fr) auto minmax(130px,1fr);align-items:stretch;gap:8px}.integration-node{position:relative;min-height:116px;padding:15px 14px;border:1px solid #dce6f0;border-radius:15px;background:#fbfdff;display:flex;flex-direction:column;justify-content:center;gap:5px}.integration-node>span{position:absolute;right:10px;top:9px;font-size:8px;font-weight:900;color:#a0afbf}.integration-node strong{font-size:12px;color:#1d3550}.integration-node small{font-size:9px;line-height:1.45;color:#738399}.integration-node.source{background:linear-gradient(145deg,#f6faff,#edf5ff)}.integration-node.portal{background:linear-gradient(145deg,#f7fcfa,#edf9f4)}.integration-node.central{border-color:#bcd7f7;background:linear-gradient(145deg,#f3f8ff,#e8f2ff);box-shadow:0 8px 20px rgba(31,111,235,.07)}.integration-node.api{background:linear-gradient(145deg,#f7f5ff,#f0ecff)}.integration-node.management{background:linear-gradient(145deg,#fbf8ff,#f5efff)}.integration-arrow{display:grid;place-items:center;font-size:19px;color:#87a0ba;font-weight:800}.integration-arrow.bidirectional{color:#3879bd}.integration-flow-note{margin-top:14px;padding:11px 13px;border-radius:12px;background:#f6f9fc;border:1px solid #e1e8f0;color:#62748a;font-size:10.5px;line-height:1.55}.integration-flow-note strong{color:#274563}
.integration-detail-grid{margin-bottom:18px;align-items:start}.integration-freshness-card,.integration-queue-card{padding:21px}.integration-detail-grid .section-title{margin:0 0 13px}.integration-domain-list,.integration-event-list{display:grid}.integration-domain-row,.integration-event-row{display:grid;align-items:center;gap:12px;border-bottom:1px solid #edf1f5;padding:11px 2px}.integration-domain-row:last-child,.integration-event-row:last-child{border-bottom:0}.integration-domain-row{grid-template-columns:minmax(0,1fr) 78px 132px}.integration-domain-row>div:first-child strong,.integration-event-row>div:first-child strong{display:block;font-size:11.5px;color:#243b55}.integration-domain-row>div:first-child small,.integration-event-row>div:first-child small{display:block;margin-top:3px;font-size:9.5px;line-height:1.4;color:#8190a2}.integration-domain-count{text-align:right}.integration-domain-count strong{display:block;font-size:14px}.integration-domain-count small,.integration-domain-time small{font-size:9px;color:#8b98a8}.integration-domain-time{text-align:right;display:grid;justify-items:end;gap:4px}.integration-domain-time .badge{padding:5px 7px;font-size:8.5px}.integration-queue-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:8px}.integration-queue-summary>div{padding:10px 9px;border:1px solid #e3e9f0;border-radius:11px;background:#fafcff;text-align:center}.integration-queue-summary span{display:block;font-size:8px;color:#8492a3;text-transform:uppercase;font-weight:850}.integration-queue-summary strong{display:block;margin-top:3px;font-size:15px}.integration-queue-summary .good{color:#13714b}.integration-queue-summary .bad{color:#b42334}.integration-event-row{grid-template-columns:minmax(0,1fr) auto}.integration-event-row>div:last-child{text-align:right;display:grid;justify-items:end;gap:4px}.integration-event-row .badge{font-size:8px;padding:5px 7px}.integration-event-row>div:last-child small{font-size:8.5px;color:#8a98a9}
.integration-ownership-card{padding:21px}.integration-ownership-card .section-title{margin:0 0 14px}.integration-ownership-table td{vertical-align:middle}.integration-ownership-table td:first-child{min-width:170px}.integration-ownership-table td:nth-child(3){min-width:230px}.integration-ownership-table td:nth-child(4){white-space:nowrap;color:#60758c;font-weight:700;font-size:11px}
@media(max-width:1260px){.integration-system-grid{grid-template-columns:1fr 1fr}.integration-system-card:last-child{grid-column:1/-1}.integration-flow{grid-template-columns:1fr}.integration-arrow{height:24px;transform:rotate(90deg)}.integration-arrow.bidirectional{transform:none}.integration-arrow.bidirectional:after{content:""}.integration-detail-grid{grid-template-columns:1fr}}
@media(max-width:900px){.integration-metrics{grid-template-columns:1fr 1fr}.integration-system-grid{grid-template-columns:1fr}.integration-system-card:last-child{grid-column:auto}.integration-hero{align-items:flex-start}.integration-health-ring{width:92px;height:92px;flex-basis:92px}.integration-domain-row{grid-template-columns:minmax(0,1fr) 65px 120px}}
@media(max-width:680px){.integration-page-head{align-items:flex-start;flex-direction:column}.integration-head-actions{justify-content:flex-start;width:100%}.integration-hero{flex-direction:column}.integration-health-ring{align-self:flex-start}.integration-metrics{grid-template-columns:1fr}.integration-system-head{grid-template-columns:auto minmax(0,1fr)}.integration-system-head .integration-state{grid-column:1/-1;width:max-content}.integration-kv-grid{grid-template-columns:1fr}.integration-kv-grid .span-2{grid-column:auto}.integration-system-card>p{min-height:0}.integration-domain-row{grid-template-columns:minmax(0,1fr) auto}.integration-domain-time{grid-column:1/-1;justify-items:start;text-align:left}.integration-queue-summary{grid-template-columns:1fr 1fr}.integration-card-actions .btn{flex:1}.integration-ownership-table td:nth-child(4){white-space:normal}}


/* BABYLON v10.17.17 - delegated access security */
.access-permission-check{display:flex;gap:12px;align-items:flex-start;padding:14px 15px;margin:4px 0 16px;border:1px solid #dbe7f3;border-radius:14px;background:linear-gradient(180deg,#fbfdff,#f5f9fd);cursor:pointer}
.access-permission-check input{width:18px;height:18px;margin-top:2px;accent-color:#2563eb;flex:0 0 auto}
.access-permission-check span{display:flex;flex-direction:column;gap:4px;line-height:1.35}
.access-permission-check small{color:#64748b;font-weight:400}
.security-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.security-actions .inline-form{margin:0}

/* v10.17.18 - RM health on Integration System follows clinic-specific Register Portal connection */
.integration-rm-clinics{display:grid;gap:7px;margin-top:14px;padding-top:13px;border-top:1px solid #e9eef4}
.integration-rm-clinic-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;border:1px solid #e5ebf2;border-radius:11px;background:#fbfcfe}
.integration-rm-clinic-row strong{display:block;font-size:10.5px;color:#263d57;line-height:1.35}
.integration-rm-clinic-row small{display:block;margin-top:3px;font-size:8.8px;color:#8190a2;line-height:1.35;overflow-wrap:anywhere}
.integration-rm-clinic-row .badge{font-size:8px;padding:5px 7px;white-space:nowrap}
@media(max-width:680px){.integration-rm-clinic-row{grid-template-columns:1fr}.integration-rm-clinic-row .badge{width:max-content}}


/* BABYLON v10.17.21 - Settings Hub */
.settings-subnav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 18px;padding:7px;background:#eef4fb;border:1px solid #dce6f2;border-radius:16px}
.settings-subnav-link{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:8px 14px;border-radius:11px;color:#52637b;text-decoration:none;font-weight:800;font-size:13px;transition:.18s ease}
.settings-subnav-link:hover{background:#fff;color:#1f4f8f;box-shadow:0 4px 14px rgba(22,53,92,.08)}
.settings-subnav-link.active{background:#fff;color:#1769d2;box-shadow:0 5px 16px rgba(19,75,142,.12);border:1px solid #d8e6f7}
.settings-hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 18px}
.settings-hub-card{position:relative;display:flex;align-items:center;gap:14px;min-height:112px;padding:18px;border:1px solid #dfe8f3;border-radius:18px;background:linear-gradient(145deg,#fff,#f8fbff);text-decoration:none;color:#17243a;box-shadow:0 8px 24px rgba(24,47,77,.055);transition:.18s ease;overflow:hidden}
.settings-hub-card:before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:#3b82f6}
.settings-hub-card.violet:before{background:#7c5ce7}.settings-hub-card.amber:before{background:#e6a22d}.settings-hub-card.cyan:before{background:#25a7c8}
.settings-hub-card:hover{transform:translateY(-2px);box-shadow:0 12px 30px rgba(24,47,77,.095);border-color:#cad9eb}
.settings-hub-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:#edf5ff;color:#2673d8;font-weight:900;font-size:18px;flex:0 0 auto}
.settings-hub-card.violet .settings-hub-icon{background:#f0ecff;color:#6f52d9}.settings-hub-card.amber .settings-hub-icon{background:#fff5df;color:#b97508}.settings-hub-card.cyan .settings-hub-icon{background:#e9f9fc;color:#1888a3}
.settings-hub-card strong{display:block;font-size:15px;margin-bottom:5px}.settings-hub-card small{display:block;color:#6d7c91;line-height:1.45}.settings-hub-arrow{margin-left:auto;font-size:28px;color:#9aabc0}
@media(max-width:920px){.settings-hub-grid{grid-template-columns:1fr}.settings-subnav{overflow-x:auto;flex-wrap:nowrap}.settings-subnav-link{white-space:nowrap}}


/* Pasien Baru · Assessment */
.new-patient-head{align-items:center}.new-patient-kicker{display:inline-flex;margin-bottom:7px;font-size:9px;font-weight:900;letter-spacing:.12em;color:#187b8f}.new-patient-summary{margin-bottom:18px}.new-patient-filter{padding:18px 20px;margin-bottom:18px}.new-patient-filter-grid{display:grid;grid-template-columns:minmax(260px,2fr) repeat(2,minmax(155px,1fr)) auto;gap:12px;align-items:end}.new-patient-filter-grid .field{margin:0}.new-patient-filter-grid .span-2{grid-column:auto}.new-patient-filter-actions{display:flex;gap:8px;align-items:center}.new-patient-list-card{padding:20px}.new-patient-table{min-width:980px}.new-patient-table td{vertical-align:middle}.new-patient-service{display:inline-flex;padding:5px 8px;border-radius:9px;background:#e8f7f8;color:#116a78;font-size:10px;font-weight:850;line-height:1.2}.new-patient-count{display:inline-grid;place-items:center;min-width:40px;padding:7px 9px;border-radius:10px;background:#eef4ff;color:#245ea8;font-size:11px;font-weight:900}.new-patient-pagination{margin-top:16px;justify-content:flex-end}.dm-cyan .dm-icon{background:#e7f8f8;color:#178396}.dm-cyan:hover{border-color:#a9dddd}.dm-cyan .dm-card-bottom strong{color:#17798a}
@media(max-width:900px){.new-patient-filter-grid{grid-template-columns:1fr 1fr}.new-patient-filter-grid .field:first-child{grid-column:1/-1}.new-patient-filter-actions{grid-column:1/-1}.new-patient-summary{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.new-patient-filter-grid,.new-patient-summary{grid-template-columns:1fr}.new-patient-filter-grid .field:first-child,.new-patient-filter-actions{grid-column:auto}.new-patient-filter-actions .btn{flex:1}.new-patient-list-card{padding:15px}.new-patient-pagination{justify-content:flex-start;overflow-x:auto}}


/* BABYLON v10.17.29 - Kinerja Terapis drill-down + payroll nominal bebas */
.performance-day-count.has-data{cursor:pointer;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,background .18s ease}.performance-day-count.has-data:hover{transform:translateY(-2px);background:#dcebff;box-shadow:0 6px 14px rgba(31,97,183,.16)}
.performance-detail-head{align-items:center}.performance-detail-eyebrow{display:block;margin-bottom:6px;font-size:10px;font-weight:900;letter-spacing:.11em;color:#147e99}.performance-detail-head h2{margin:0 0 4px}.performance-detail-head p{margin:0;color:var(--muted)}
.performance-detail-metrics{margin-bottom:18px}.performance-metric-therapy{border-color:#cdebdc}.performance-metric-therapy .metric-value{color:#157347}.performance-metric-assessment{border-color:#f4dfb3}.performance-metric-assessment .metric-value{color:#a26100}
.performance-reconcile-card,.performance-detail-card{padding:20px;margin-bottom:18px}.performance-service-chips{display:flex;flex-wrap:wrap;gap:9px}.performance-service-chip{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid #dfe8f3;border-radius:13px;background:#f8fbff;color:#40546d;font-size:11px;font-weight:800}.performance-service-chip b{display:grid;place-items:center;min-width:25px;height:25px;padding:0 7px;border-radius:9px;background:#e6f1ff;color:#1f61b7;font-size:11px}.performance-service-chip.assessment{background:#fffaf0;border-color:#f0dfba;color:#7a5717}.performance-service-chip.assessment b{background:#fff0cb;color:#9a6200}
.performance-detail-table{width:100%;min-width:980px;border-collapse:collapse}.performance-detail-table th,.performance-detail-table td{padding:12px 11px;border-bottom:1px solid #e8eef6;text-align:left;vertical-align:middle}.performance-detail-table th{background:#f7fbff;color:#607086;font-size:10px;font-weight:900;white-space:nowrap}.performance-detail-table td strong,.performance-detail-table td small{display:block}.performance-detail-table td strong{font-size:12px;color:#20344f}.performance-detail-table td small{margin-top:3px;font-size:9px;color:#7e8da1}.performance-detail-table tbody tr:hover{background:#fbfdff}
.performance-type-badge,.performance-incentive{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:5px 9px;border-radius:9px;font-size:9px;font-weight:900;white-space:nowrap}.performance-type-badge.therapy{background:#e8f7ef;color:#157347}.performance-type-badge.assessment{background:#fff3d7;color:#946000}.performance-type-badge.other{background:#eef2f6;color:#64748b}.performance-incentive.yes{background:#e8f7ef;color:#157347}.performance-incentive.no{background:#f4f1f1;color:#8a5c5c}.performance-reconcile-note{margin-bottom:0}
.rupiah-free-input{font-variant-numeric:tabular-nums;letter-spacing:.01em}.money-input:focus-within{border-color:#9bbcff;box-shadow:0 0 0 3px rgba(37,99,235,.10)}
@media(max-width:850px){.performance-detail-head{align-items:flex-start}.performance-detail-head .btn{width:100%}.performance-detail-metrics{grid-template-columns:1fr 1fr}.performance-reconcile-card,.performance-detail-card{padding:15px}}@media(max-width:560px){.performance-detail-metrics{grid-template-columns:1fr}}

/* Monthly visit count badge on Data Master cards */
.dm-count-line{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.dm-period-label{display:inline-flex;align-items:center;min-height:24px;padding:4px 9px;border-radius:999px;background:rgba(16,185,129,.10);border:1px solid rgba(16,185,129,.16);color:#047857;font-size:10px;font-weight:800;letter-spacing:.05em;white-space:nowrap}

/* Payroll Bonus & Payslip */
.payroll-bonus-head{margin-bottom:16px}.payroll-bonus-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:18px}.payroll-bonus-metrics>div{border:1px solid #e4eaf2;background:#f8fafc;border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;gap:5px}.payroll-bonus-metrics span{font-size:12px;color:#64748b;font-weight:700}.payroll-bonus-metrics strong{font-size:18px;color:#14213d}.payroll-bonus-form{display:grid;grid-template-columns:minmax(150px,190px) minmax(180px,1fr) auto;gap:8px;align-items:center;min-width:500px}.payroll-bonus-note{height:40px;border:1px solid #d8e0ea;border-radius:10px;padding:0 11px;background:#fff}.payroll-bonus-table td{vertical-align:top}.text-warning{color:#a15c00}.text-success{color:#18794e}@media(max-width:900px){.payroll-bonus-metrics{grid-template-columns:1fr}.payroll-bonus-form{grid-template-columns:1fr;min-width:280px}}


/* Payroll period filter premium UI */
.payroll-period-filter{
  display:grid;
  grid-template-columns:repeat(3,minmax(158px,1fr)) auto;
  align-items:stretch;
  gap:10px;
  padding:11px;
  border:1px solid #dce7f3;
  border-radius:18px;
  background:linear-gradient(135deg,#f8fbff 0%,#f4f8fd 55%,#ffffff 100%);
  box-shadow:0 8px 24px rgba(15,23,42,.05),inset 0 1px 0 rgba(255,255,255,.9);
}
.payroll-period-filter>label{
  position:relative;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:6px;
  min-width:0;
  min-height:62px;
  margin:0;
  padding:9px 12px 10px 42px;
  border:1px solid #dbe5ef;
  border-radius:14px;
  background:#fff;
  box-shadow:0 2px 8px rgba(15,23,42,.035);
  transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease;
}
.payroll-period-filter>label:hover{
  border-color:#b8cce3;
  box-shadow:0 5px 14px rgba(15,23,42,.065);
}
.payroll-period-filter>label:focus-within{
  border-color:#6da5e8;
  box-shadow:0 0 0 4px rgba(31,111,235,.09),0 6px 16px rgba(15,23,42,.06);
  transform:translateY(-1px);
}
.payroll-period-filter>label::before{
  content:"";
  position:absolute;
  left:12px;
  top:50%;
  width:20px;
  height:20px;
  transform:translateY(-50%);
  border-radius:7px;
  background-color:#eaf3ff;
  background-repeat:no-repeat;
  background-position:center;
  background-size:13px 13px;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%231f6feb' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M16 3v4M8 3v4M3 11h18'/%3E%3C/svg%3E");
}
.payroll-period-filter>label:nth-of-type(3)::before{
  background-color:#f0edff;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236d28d9' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 2v4M16 2v4M3 10h18'/%3E%3Crect x='3' y='4' width='18' height='18' rx='2'/%3E%3Cpath d='M8 15h2M14 15h2M8 18h2'/%3E%3C/svg%3E");
}
.payroll-period-filter>label small{
  display:block;
  margin:0;
  color:#718096;
  font-size:9px;
  line-height:1;
  font-weight:850;
  letter-spacing:.055em;
  text-transform:uppercase;
}
.payroll-period-filter>label input[type=date],
.payroll-period-filter>label input[type=month]{
  width:100%;
  min-width:0;
  min-height:24px;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  outline:0;
  background:transparent!important;
  box-shadow:none!important;
  color:#172033;
  font:inherit;
  font-size:13px;
  font-weight:800;
}
.payroll-period-filter input::-webkit-calendar-picker-indicator{
  cursor:pointer;
  opacity:.55;
  transition:opacity .18s ease;
}
.payroll-period-filter input::-webkit-calendar-picker-indicator:hover{opacity:.95}
.payroll-period-filter>.btn{
  min-height:62px;
  height:100%;
  padding:0 18px;
  border-radius:14px;
  white-space:nowrap;
  align-self:stretch;
  box-shadow:0 6px 14px rgba(31,111,235,.12);
}
.payroll-period-filter>.btn.btn-primary{
  background:linear-gradient(135deg,#2563eb,#1d4ed8);
  border-color:#1d4ed8;
  box-shadow:0 8px 18px rgba(37,99,235,.22);
}
.payroll-period-filter>.btn.btn-primary:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 22px rgba(37,99,235,.26);
}
@media(max-width:1180px){
  .payroll-period-filter{grid-template-columns:repeat(2,minmax(180px,1fr))}
  .payroll-period-filter>.btn{grid-column:1/-1;min-height:46px}
}
@media(max-width:760px){
  .payroll-period-filter{display:grid!important;grid-template-columns:1fr;width:100%;padding:10px;border-radius:16px}
  .payroll-period-filter>label{min-height:58px}
  .payroll-period-filter>.btn{grid-column:auto;width:100%;min-height:48px}
}

/* SKTM v10.17.40: pilihan potongan Persen / Rupiah */
.sktm-discount-box-flex{grid-template-columns:minmax(0,1.45fr) minmax(220px,.55fr)}
.sktm-discount-main{min-width:0}
.sktm-discount-type-label{display:block;margin-bottom:8px;font-size:11px;font-weight:850;color:#334155}
.sktm-discount-type-switch{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:12px}
.sktm-discount-type-switch label{position:relative;cursor:pointer}
.sktm-discount-type-switch input{position:absolute;opacity:0;pointer-events:none}
.sktm-discount-type-switch span{min-height:44px;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 12px;border:1px solid #d5dfeb;border-radius:12px;background:#fff;color:#64748b;font-size:11px;font-weight:850;transition:.16s ease}
.sktm-discount-type-switch span b{display:grid;place-items:center;min-width:27px;height:27px;padding:0 5px;border-radius:8px;background:#f1f5f9;color:#475569;font-size:11px}
.sktm-discount-type-switch input:checked+span{border-color:#8bb8f1;background:#eff6ff;color:#1756a9;box-shadow:0 0 0 3px rgba(37,99,235,.07)}
.sktm-discount-type-switch input:checked+span b{background:#dbeafe;color:#1d4ed8}
.sktm-discount-value-panel[hidden]{display:none!important}
.sktm-discount-value-panel .field{margin:0}
.sktm-rupiah-input{display:flex;align-items:center;min-height:46px;border:1px solid #cfdbeb;border-radius:13px;background:#fff;overflow:hidden}
.sktm-rupiah-input:focus-within{border-color:#7facdf;box-shadow:0 0 0 3px rgba(31,111,235,.08)}
.sktm-rupiah-input>span{align-self:stretch;display:grid;place-items:center;padding:0 13px;border-right:1px solid #e1e8f0;background:#f4f8fd;color:#1756a9;font-weight:900}
.sktm-rupiah-input input{width:100%;height:46px;padding:0 13px;border:0!important;outline:0;box-shadow:none!important;background:transparent;font-weight:800}
.sktm-discount-chip.is-rupiah{background:#eef5ff;color:#1756a9}
@media(max-width:760px){.sktm-discount-box-flex{grid-template-columns:1fr}.sktm-discount-type-switch{grid-template-columns:1fr 1fr}}

/* Data Rekam Medis v10.17.42 */
.dm-rose{--dm-accent:#c2416c;--dm-soft:#fff0f5;--dm-text:#a92f58}
.medical-record-head{align-items:center}.medical-record-kicker{display:inline-flex;margin-bottom:7px;font-size:9px;font-weight:900;letter-spacing:.12em;color:#a92f58}.medical-record-lock{display:flex;align-items:center;gap:10px;min-width:280px;padding:12px 14px;border:1px solid #ead9df;border-radius:16px;background:#fff9fb}.medical-record-lock>span{width:38px;height:38px;display:grid;place-items:center;border-radius:12px;background:#fff0f5;font-size:18px}.medical-record-lock strong,.medical-record-lock small{display:block}.medical-record-lock strong{font-size:12px}.medical-record-lock small{margin-top:3px;color:var(--muted);font-size:10px;line-height:1.45}
.medical-record-metrics{margin-bottom:18px}.medical-record-filter-card{padding:18px 20px;margin-bottom:18px}.medical-record-filter-grid{display:grid;grid-template-columns:minmax(320px,2fr) minmax(155px,.8fr) minmax(155px,.8fr) auto;gap:12px;align-items:end}.medical-record-filter-grid .field{margin:0}.medical-record-filter-actions{display:flex;gap:8px;align-items:center}.medical-record-list-card{padding:20px}.medical-record-table{min-width:1080px}.medical-record-table td{vertical-align:middle}.medical-record-table td small,.medical-record-table td strong{display:block}.medical-record-table td small{margin-top:4px;color:var(--muted);font-size:10px}.medical-record-service-chip{display:inline-flex;align-items:center;padding:6px 9px;border-radius:10px;background:#fff0f5;color:#a92f58;font-size:10px;font-weight:850;line-height:1.3}.medical-record-pagination{margin-top:16px;justify-content:flex-end}.medical-record-note{display:flex;align-items:flex-start;gap:12px;margin-top:18px;padding:14px 16px;border:1px solid #eadfe4;border-radius:15px;background:#fffafd}.medical-record-note>span{width:30px;height:30px;flex:0 0 30px;border-radius:10px;display:grid;place-items:center;background:#fff0f5;color:#a92f58;font-weight:900}.medical-record-note p{margin:0;color:#64748b;font-size:11px;line-height:1.6}.medical-record-note strong{color:#334155}
.medical-record-detail-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:18px}.medical-record-detail-summary .card{padding:15px 16px;min-width:0}.medical-record-detail-summary span,.medical-record-detail-summary strong,.medical-record-detail-summary small{display:block}.medical-record-detail-summary span{font-size:9px;font-weight:850;letter-spacing:.07em;text-transform:uppercase;color:#8995a7}.medical-record-detail-summary strong{margin-top:6px;font-size:13px;overflow:hidden;text-overflow:ellipsis}.medical-record-detail-summary small{margin-top:4px;color:var(--muted);font-size:10px}.medical-record-result-card{padding:20px}.medical-record-field-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.medical-record-field{min-width:0;padding:13px 14px;border:1px solid #e3e8ef;border-radius:13px;background:#fbfcfe}.medical-record-field>span{display:block;margin-bottom:7px;font-size:9px;font-weight:850;letter-spacing:.05em;text-transform:uppercase;color:#738197}.medical-record-field>div{color:#1f2937;font-size:12px;line-height:1.6;word-break:break-word;white-space:normal}
@media(max-width:980px){.medical-record-filter-grid{grid-template-columns:1fr 1fr}.medical-record-search{grid-column:1/-1}.medical-record-filter-actions{grid-column:1/-1}.medical-record-detail-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.medical-record-lock{min-width:0;width:100%}.medical-record-filter-grid{grid-template-columns:1fr}.medical-record-search,.medical-record-filter-actions{grid-column:auto}.medical-record-filter-actions{flex-wrap:wrap}.medical-record-detail-summary{grid-template-columns:1fr}.medical-record-field-grid{grid-template-columns:1fr}}

/* Data Rekam Medis v3.6.39 / BABYLON v10.17.43 · RME history + readable forms */
.medical-record-actions{display:flex;gap:6px;align-items:center;flex-wrap:wrap}.medical-record-note code{padding:2px 5px;border-radius:6px;background:#f6eef2;color:#94405d;font-size:10px}
.medical-history-page-head,.medical-form-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 16px}.medical-history-page-head h2,.medical-form-toolbar h2{margin:0}.medical-history-page-head p,.medical-form-toolbar p{margin:6px 0 0;color:var(--muted);font-size:11px}.medical-history-counts{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.medical-history-counts span{display:flex;align-items:center;gap:7px;min-height:42px;padding:8px 12px;border:1px solid #e3e8ef;border-radius:13px;background:#fff;color:#64748b;font-size:10px;font-weight:750}.medical-history-counts b{font-size:17px;color:#152238}
.medical-paper{width:min(100%,930px);margin:0 auto 18px;padding:24px 28px;border:1px solid #dfe5ec;border-radius:4px;background:#fff;box-shadow:0 10px 28px rgba(15,23,42,.07)}.medical-paper-brand{display:flex;align-items:center;gap:14px}.medical-paper-mark{width:52px;height:52px;display:grid;place-items:center;border-radius:16px;background:linear-gradient(145deg,#e9fff0,#eef6ff);color:#14804a;font-size:18px;font-weight:950;letter-spacing:-.04em}.medical-paper-brand strong{display:block;font-family:Georgia,"Times New Roman",serif;font-size:14px}.medical-paper-brand h3{margin:1px 0 0;font-family:Georgia,"Times New Roman",serif;font-size:23px}.medical-paper-brand small{display:block;margin-top:2px;color:#667085;font-size:10px}.medical-paper-rule{height:2px;margin:13px 0 17px;background:#182230}.medical-patient-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px 28px}.medical-patient-grid>div{display:grid;grid-template-columns:115px 1fr;gap:8px;align-items:baseline}.medical-patient-grid span{color:#667085;font-size:11px}.medical-patient-grid strong{font-size:12px}.patient-paper{margin-bottom:12px}
.medical-history-tabs{width:min(100%,930px);margin:0 auto 12px;display:flex;gap:8px;flex-wrap:wrap}.medical-history-tabs a{padding:8px 12px;border:1px solid #dfe5ec;border-radius:999px;background:#fff;color:#40516a;font-size:10px;font-weight:850;text-decoration:none}.medical-history-tabs a:hover{border-color:#c891a5;background:#fff7fa;color:#9d3156}
.medical-history-section{padding:20px;margin-bottom:18px}.medical-visit-timeline{display:grid;gap:12px;margin-top:12px}.medical-visit-card{display:grid;grid-template-columns:145px minmax(0,1fr);border:1px solid #e1e6ed;border-radius:16px;overflow:hidden;background:#fff}.medical-visit-date{padding:16px;background:#f8fafc;border-right:1px solid #e5eaf0}.medical-visit-date strong,.medical-visit-date span{display:block}.medical-visit-date strong{font-size:12px;color:#1f2a3d}.medical-visit-date span{margin-top:5px;color:#7a8797;font-size:10px}.medical-visit-main{padding:15px 16px;min-width:0}.medical-visit-title{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.medical-visit-meta{display:flex;gap:14px;flex-wrap:wrap;margin:8px 0 11px;color:#6b7789;font-size:10px}.medical-visit-meta b{color:#2b374a}.medical-visit-forms{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.medical-form-link{display:grid;grid-template-columns:31px minmax(0,1fr) auto;align-items:center;gap:9px;min-width:0;padding:10px 11px;border:1px solid #e3e8ef;border-radius:12px;background:#fbfcfe;text-decoration:none;color:#2b374a;transition:.15s ease}.medical-form-link:hover{border-color:#d4a5b5;background:#fff7fa;transform:translateY(-1px)}.medical-form-link strong,.medical-form-link small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis}.medical-form-link strong{font-size:10px;white-space:nowrap}.medical-form-link small{margin-top:3px;color:#8290a3;font-size:9px}.medical-form-link>b{color:#a92f58}.medical-form-icon{width:30px;height:30px;display:grid;place-items:center;border-radius:9px;background:#fff0f5;font-size:14px}
.medical-cppt-wrap{margin-top:12px;border:1px solid #cfd7e1;border-radius:4px;overflow:auto}.medical-cppt-table{width:100%;min-width:760px;border-collapse:collapse;font-family:Georgia,"Times New Roman",serif}.medical-cppt-table th,.medical-cppt-table td{border-right:1px solid #aeb7c2;border-bottom:1px solid #aeb7c2;padding:11px 12px;vertical-align:top}.medical-cppt-table th:last-child,.medical-cppt-table td:last-child{border-right:0}.medical-cppt-table tr:last-child td{border-bottom:0}.medical-cppt-table th{background:#f1f3f5;color:#1d2735;text-align:center;font-size:12px}.medical-cppt-table th:first-child{width:150px}.medical-cppt-table th:last-child{width:190px}.medical-cppt-date{text-align:center}.medical-cppt-date strong,.medical-cppt-date span,.medical-cppt-date small{display:block}.medical-cppt-date strong{font-size:12px}.medical-cppt-date span{margin-top:4px;font-size:11px}.medical-cppt-date small{margin-top:9px;color:#64748b;font-family:var(--font,Arial,sans-serif);font-size:9px}.medical-soap{display:grid;gap:10px;font-family:Georgia,"Times New Roman",serif}.medical-soap>div{display:grid;grid-template-columns:24px minmax(0,1fr);gap:6px;line-height:1.55}.medical-soap b{font-size:13px}.medical-soap span{font-size:12px;white-space:normal}.medical-cppt-staff{text-align:center}.medical-cppt-staff strong,.medical-cppt-staff small{display:block}.medical-cppt-staff strong{margin-top:7px;font-size:11px}.medical-cppt-staff small{margin-top:4px;color:#667085;font-family:var(--font,Arial,sans-serif);font-size:9px}.medical-staff-avatar{width:48px;height:48px;display:grid;place-items:center;margin:0 auto;border:1px solid #d7dee7;border-radius:50%;background:#fbfcfe;color:#56657a;font-size:20px}
.medical-form-toolbar{margin-bottom:14px}.medical-form-toolbar>.btn{flex:0 0 auto}.medical-exam-paper{width:min(100%,950px);padding:27px 32px}.medical-form-title{margin:0 0 18px;text-align:center;text-decoration:underline;font-family:Georgia,"Times New Roman",serif;font-size:16px;color:#111827}.medical-exam-patient{margin-bottom:16px}.medical-exam-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 18px;padding:11px;border:1px solid #e1e6ed;background:#f8fafc}.medical-exam-meta span{min-width:0;color:#475569;font-size:10px}.medical-exam-meta b{display:block;margin-bottom:4px;color:#7a8797;font-size:8px;text-transform:uppercase;letter-spacing:.07em}.medical-form-sections{display:grid;gap:14px}.medical-form-section{border:1px solid #aeb7c2;border-radius:2px;overflow:hidden;background:#fff}.medical-form-section h4{margin:0;padding:8px 10px;border-bottom:1px solid #aeb7c2;background:#f1f3f5;color:#1a2433;font-family:Georgia,"Times New Roman",serif;font-size:12px}.medical-form-items{padding:8px 10px}.medical-form-item{display:grid;grid-template-columns:minmax(220px,1fr) minmax(120px,.75fr);gap:12px;padding:7px 0;border-bottom:1px dashed #e3e7ec}.medical-form-item:last-child{border-bottom:0}.medical-form-item span{font-family:Georgia,"Times New Roman",serif;font-size:11px;line-height:1.45;color:#273244}.medical-form-item strong{font-family:Georgia,"Times New Roman",serif;font-size:11px;line-height:1.45;font-weight:600;white-space:normal;word-break:break-word}.medical-form-item strong.is-empty{color:#8a94a3;font-weight:400}.medical-form-signoff{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:22px;padding-top:16px;border-top:1px solid #cdd4de}.medical-form-signoff>div:last-child{text-align:right}.medical-form-signoff span,.medical-form-signoff strong,.medical-form-signoff small{display:block}.medical-form-signoff span{color:#7a8797;font-size:9px}.medical-form-signoff strong{margin-top:5px;font-family:Georgia,"Times New Roman",serif;font-size:12px}.medical-form-signoff small{margin-top:3px;color:#667085;font-size:9px}
@media(max-width:900px){.medical-history-page-head,.medical-form-toolbar{align-items:flex-start;flex-direction:column}.medical-history-counts{justify-content:flex-start}.medical-paper{padding:20px}.medical-patient-grid{grid-template-columns:1fr}.medical-visit-card{grid-template-columns:1fr}.medical-visit-date{border-right:0;border-bottom:1px solid #e5eaf0}.medical-visit-forms{grid-template-columns:1fr}.medical-exam-meta{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.medical-paper{padding:16px}.medical-paper-brand{align-items:flex-start}.medical-paper-mark{width:44px;height:44px;flex:0 0 44px}.medical-paper-brand h3{font-size:19px}.medical-patient-grid>div{grid-template-columns:100px 1fr}.medical-exam-meta{grid-template-columns:1fr 1fr}.medical-form-item{grid-template-columns:1fr;gap:4px}.medical-form-signoff{grid-template-columns:1fr}.medical-form-signoff>div:last-child{text-align:left}.medical-record-actions{min-width:130px}}
.medical-paper-logo{width:62px;height:52px;object-fit:contain;flex:0 0 62px}

/* Data Rekam Medis v3.6.40 / BABYLON v10.17.44 · separated history modals + print */
.medical-history-launch-grid{width:min(100%,930px);margin:16px auto 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.medical-history-launch-card{position:relative;display:grid;grid-template-columns:48px minmax(0,1fr) auto 26px;align-items:center;gap:13px;width:100%;padding:18px 17px;border:1px solid #e1e7ee;border-radius:18px;background:#fff;text-align:left;color:#243247;box-shadow:0 8px 24px rgba(15,23,42,.045);cursor:pointer;transition:.16s ease}.medical-history-launch-card:hover{border-color:#d7a1b5;box-shadow:0 12px 28px rgba(63,30,45,.09);transform:translateY(-2px)}.medical-history-launch-card.is-cppt:hover{border-color:#9dc6b0}.medical-history-launch-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:14px;background:#fff0f5;font-size:21px}.medical-history-launch-card.is-cppt .medical-history-launch-icon{background:#edf9f2}.medical-history-launch-content{min-width:0}.medical-history-launch-content small,.medical-history-launch-content strong,.medical-history-launch-content em{display:block}.medical-history-launch-content small{margin-bottom:4px;color:#a92f58;font-size:8px;font-style:normal;font-weight:900;letter-spacing:.08em}.medical-history-launch-card.is-cppt .medical-history-launch-content small{color:#24704a}.medical-history-launch-content strong{font-size:13px}.medical-history-launch-content em{margin-top:5px;color:#78869a;font-size:10px;font-style:normal;line-height:1.5}.medical-history-launch-count{min-width:38px;height:38px;padding:0 9px;display:grid;place-items:center;border-radius:12px;background:#f5f7fa;color:#2f4057;font-size:14px;font-weight:900}.medical-history-launch-arrow{color:#93a0b2;font-size:18px;font-weight:900}
body.medical-modal-open{overflow:hidden}.medical-modal{position:fixed;inset:0;z-index:1400;display:none;align-items:center;justify-content:center;padding:22px}.medical-modal.is-open{display:flex}.medical-form-document-modal{z-index:1410}.medical-modal-backdrop{position:absolute;inset:0;background:rgba(9,20,37,.62);backdrop-filter:blur(5px)}.medical-modal-dialog{position:relative;width:min(980px,100%);max-height:92vh;display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(255,255,255,.7);border-radius:22px;background:#fff;box-shadow:0 35px 95px rgba(7,20,39,.32)}.medical-modal-dialog-wide{width:min(1120px,100%)}.medical-modal-dialog-document{width:min(1080px,100%)}.medical-modal-dialog-form{width:min(1080px,100%);height:min(94vh,940px)}.medical-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 20px 14px;border-bottom:1px solid #e5ebf2;background:#fff}.medical-modal-head h3{margin:3px 0 0;font-size:19px}.medical-modal-head p{margin:4px 0 0;color:#77869a;font-size:10px}.medical-modal-head-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}.medical-modal-close{width:37px;height:37px;display:grid;place-items:center;border:1px solid #dce4ed;border-radius:11px;background:#fff;color:#65758a;font-size:23px;line-height:1;cursor:pointer}.medical-modal-close:hover{background:#f5f8fb;color:#17263b}.medical-modal-body{flex:1 1 auto;min-height:0;overflow:auto;padding:18px 20px;background:#f8fafc}.medical-modal-document-body{padding:20px;background:#e9edf1}.medical-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 20px 15px;border-top:1px solid #e5ebf2;background:#fff}.medical-modal-footer>span{color:#76869a;font-size:9px}.medical-form-button{width:100%;font:inherit;text-align:left;cursor:pointer}.medical-form-frame-wrap{position:relative;flex:1 1 auto;min-height:0;background:#e6eaee}.medical-form-frame{width:100%;height:100%;border:0;background:#fff}.medical-form-frame-state{position:absolute;inset:0;z-index:2;display:grid;place-items:center;background:#f7f9fb;color:#718096;font-size:12px;font-weight:750}.medical-form-frame-state.is-hidden{display:none}.medical-print-document{width:min(100%,900px);margin:0 auto;padding:28px 30px;background:#fff;border:1px solid #cfd6df;box-shadow:0 8px 24px rgba(15,23,42,.08)}.medical-print-patient{margin-bottom:18px}.medical-embed-page{margin:0;padding:24px;background:#e7ebef;font-family:Arial,sans-serif}.medical-embed-page .medical-exam-paper{margin:0 auto;box-shadow:0 8px 26px rgba(15,23,42,.09)}.medical-embed-error{width:min(700px,calc(100% - 32px));margin:40px auto;padding:20px;border:1px solid #f0c6cc;border-radius:14px;background:#fff7f8;color:#7d2834}.medical-embed-error p{margin-bottom:0;color:#76505a}
@media(max-width:800px){.medical-history-launch-grid{grid-template-columns:1fr}.medical-modal{padding:8px}.medical-modal-dialog{max-height:96vh;border-radius:17px}.medical-modal-head{padding:15px}.medical-modal-head-actions .btn{padding:8px 10px}.medical-modal-body{padding:13px}.medical-modal-footer{padding:10px 14px}.medical-print-document{padding:18px 14px}.medical-history-launch-card{grid-template-columns:44px minmax(0,1fr) auto}.medical-history-launch-arrow{display:none}.medical-history-launch-icon{width:44px;height:44px}.medical-embed-page{padding:8px}}
@media print{body.medical-print-cppt *{visibility:hidden!important}body.medical-print-cppt [data-medical-print-area="cppt"],body.medical-print-cppt [data-medical-print-area="cppt"] *{visibility:visible!important}body.medical-print-cppt [data-medical-print-area="cppt"]{position:absolute!important;left:0!important;top:0!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important}.medical-embed-page{padding:0!important;background:#fff!important}.medical-embed-page .medical-exam-paper{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important}.medical-embed-page .medical-form-section{break-inside:avoid}.medical-embed-page .medical-form-signoff{break-inside:avoid}.medical-cppt-table tr{break-inside:avoid}}

@media print{
 body.medical-print-cppt .medical-modal[data-medical-modal="cppt"]{display:block!important;position:static!important;inset:auto!important;padding:0!important;background:#fff!important}
 body.medical-print-cppt .medical-modal[data-medical-modal="cppt"]>.medical-modal-backdrop,body.medical-print-cppt .medical-modal[data-medical-modal="cppt"] .medical-modal-head,body.medical-print-cppt .medical-modal[data-medical-modal="cppt"] .medical-modal-footer{display:none!important}
 body.medical-print-cppt .medical-modal[data-medical-modal="cppt"] .medical-modal-dialog{position:static!important;width:100%!important;max-width:none!important;max-height:none!important;overflow:visible!important;border:0!important;border-radius:0!important;box-shadow:none!important}
 body.medical-print-cppt .medical-modal[data-medical-modal="cppt"] .medical-modal-body{overflow:visible!important;padding:0!important;background:#fff!important}
 body.medical-print-cppt .medical-modal[data-medical-modal="cppt"] .table-wrap{overflow:visible!important}
 body.medical-print-cppt [data-medical-print-area="cppt"]{position:static!important}
}


/* Rekam Medis - tanda tangan petugas v3.6.41 / v10.17.45 */
.medical-signoff-person{display:flex;flex-direction:column;align-items:flex-end;justify-content:flex-start;min-width:210px}.medical-signature-box{width:150px;min-height:76px;display:flex;align-items:center;justify-content:center;margin:3px 0 5px}.medical-signature-img{display:block;max-width:145px;max-height:76px;width:auto;height:auto;object-fit:contain;mix-blend-mode:multiply}.medical-signature-img.is-cppt{max-width:105px;max-height:62px;margin:0 auto}.medical-signature-missing{width:138px;min-height:54px;align-items:center;justify-content:center;border:1px dashed #cbd5e1;border-radius:8px;color:#94a3b8;font:600 9px/1.35 Arial,sans-serif;text-align:center;background:#fbfcfd}.medical-signature-missing.is-cppt{width:104px;min-height:48px}.medical-cppt-signature{min-height:66px;display:flex;align-items:center;justify-content:center;margin:0 auto 4px}.medical-cppt-staff strong{margin-top:2px}.medical-form-signoff .medical-signoff-person strong{margin-top:0}.medical-form-signoff .medical-signoff-person small{margin-top:3px}
@media(max-width:620px){.medical-signoff-person{align-items:flex-start;min-width:0}.medical-signature-box{justify-content:flex-start}}
@media print{.medical-signature-img{mix-blend-mode:multiply}.medical-signature-missing{background:#fff}}

/* Data Operasional · Buat Acara v1 */
.event-kicker{display:inline-flex;margin-bottom:7px;font-size:9px;font-weight:900;letter-spacing:.13em;color:#6d4fd3}.event-page-head{align-items:center}.event-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 18px}.event-metrics .card{padding:16px 18px;position:relative;overflow:hidden}.event-metrics .card:after{content:"";position:absolute;right:-20px;top:-28px;width:84px;height:84px;border-radius:50%;background:#f5f3ff}.event-metrics .card.is-active:after{background:#ecfdf3}.event-metrics .card.is-scheduled:after{background:#eff6ff}.event-metrics span,.event-metrics strong,.event-metrics small{display:block;position:relative;z-index:1}.event-metrics span{font-size:9px;font-weight:850;letter-spacing:.06em;text-transform:uppercase;color:#7b8797}.event-metrics strong{margin-top:6px;font-size:25px;color:#182338}.event-metrics small{margin-top:3px;color:#8a96a7;font-size:9px}.event-filter-card{padding:16px 18px;margin-bottom:18px}.event-filter{display:grid;grid-template-columns:minmax(320px,1fr) 220px auto;gap:12px;align-items:end}.event-filter-field{display:flex;flex-direction:column;gap:7px}.event-filter-field label{font-size:10px;font-weight:850;letter-spacing:.05em;text-transform:uppercase;color:#7b8797}.event-search{display:flex;align-items:center;gap:8px;height:48px;padding:0 14px;border:1px solid #dbe3ed;border-radius:14px;background:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 1px 2px rgba(15,23,42,.02);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.event-search:focus-within{border-color:#7c5ce6;box-shadow:0 0 0 4px rgba(124,92,230,.12)}.event-search span{font-size:18px;color:#8a97a8}.event-search input{width:100%;border:0;outline:0;background:transparent;font-size:14px;color:#233147}.event-search input::placeholder{color:#9aa5b4}.event-select-wrap{position:relative}.event-select{width:100%;height:48px;padding:0 42px 0 14px;border:1px solid #dbe3ed;border-radius:14px;background:linear-gradient(180deg,#fff 0%,#fbfcfe 100%);color:#233147;font-size:14px;appearance:none;-webkit-appearance:none;-moz-appearance:none;box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 1px 2px rgba(15,23,42,.02);transition:border-color .18s ease,box-shadow .18s ease}.event-select:focus{outline:none;border-color:#7c5ce6;box-shadow:0 0 0 4px rgba(124,92,230,.12)}.event-select-icon{pointer-events:none;position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:14px;color:#7c8696}.event-filter-actions{display:flex;gap:8px;align-items:flex-end;padding-bottom:1px}.event-filter-actions .btn{height:48px;display:inline-flex;align-items:center;justify-content:center;padding:0 18px}.event-list-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.event-card{position:relative;overflow:hidden;padding:20px;border:1px solid #e2e7ee;border-radius:20px;background:#fff;box-shadow:0 9px 28px rgba(15,23,42,.045)}.event-card-accent{position:absolute;inset:0 auto 0 0;width:4px;background:linear-gradient(180deg,#7c5ce6,#b794f4)}.event-card-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.event-card-top>div{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.event-code{font-size:9px;font-weight:850;letter-spacing:.05em;color:#7d8998}.event-source{padding:5px 8px;border-radius:999px;background:#f5f3ff;color:#6d4fd3;font-size:8px;font-weight:900}.event-card h3{margin:16px 0 3px;font-size:18px;line-height:1.25;color:#182338}.event-card-category{margin:0;color:#8591a1;font-size:10px}.event-period{display:flex;gap:10px;align-items:center;margin-top:15px;padding:11px 12px;border:1px solid #ece8fb;border-radius:13px;background:#fbfaff}.event-period>span{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:#eee9ff;color:#6d4fd3;font-weight:900}.event-period strong,.event-period small{display:block}.event-period strong{font-size:10px}.event-period small{margin-top:3px;color:#7f8b9a;font-size:9px}.event-benefit-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:13px}.event-benefit-chips span{padding:6px 8px;border-radius:9px;background:#f6f8fb;color:#44536a;font-size:9px;font-weight:750;line-height:1.35}.event-quota-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}.event-quota-bar>div{padding:9px 10px;border:1px solid #e6eaf0;border-radius:11px;background:#fff}.event-quota-bar span,.event-quota-bar strong{display:block}.event-quota-bar span{font-size:8px;text-transform:uppercase;letter-spacing:.05em;color:#929cab}.event-quota-bar strong{margin-top:3px;font-size:11px;color:#233147}.event-card-actions{display:flex;gap:7px;flex-wrap:wrap;align-items:center;margin-top:16px;padding-top:14px;border-top:1px solid #edf0f4}.event-card-actions form{margin:0}.event-empty{grid-column:1/-1;padding:42px;text-align:center}.event-empty>div{width:54px;height:54px;display:grid;place-items:center;margin:0 auto 12px;border-radius:17px;background:#f2efff;color:#6d4fd3;font-size:24px}.event-empty strong{display:block;font-size:15px}.event-empty p{margin:7px 0 14px;color:#8190a3;font-size:11px}.event-pagination{margin-top:18px;justify-content:flex-end}.event-integration-note{display:flex;gap:11px;align-items:flex-start;margin-top:18px;padding:14px 16px;border:1px solid #e8e3f8;border-radius:15px;background:#fcfbff}.event-integration-note>span{width:28px;height:28px;flex:0 0 28px;display:grid;place-items:center;border-radius:9px;background:#eee9ff;color:#6d4fd3;font-weight:900}.event-integration-note p{margin:0;color:#68778b;font-size:10px;line-height:1.6}.event-integration-note strong{color:#35445a}.event-integration-note code{padding:2px 4px;border-radius:5px;background:#f0edf9;color:#6046bb}.event-clinic-banner{display:flex;align-items:center;gap:11px;margin-bottom:16px;padding:12px 14px;border:1px solid #e5e9ef;border-radius:15px;background:#fff}.event-clinic-banner>div:nth-child(2){min-width:0;flex:1}.event-clinic-banner strong,.event-clinic-banner small{display:block}.event-clinic-banner strong{font-size:12px}.event-clinic-banner small{margin-top:3px;color:#7c8999;font-size:9px}.event-clinic-banner>span{padding:6px 9px;border-radius:999px;background:#f6f8fb;color:#64748b;font-size:9px;font-weight:800}
.event-form-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}.event-form-card{padding:22px}.event-form-section{display:flex;align-items:flex-start;gap:12px;margin:4px 0 15px;padding-top:19px;border-top:1px solid #edf0f4}.event-form-section:first-child{padding-top:0;border-top:0}.event-form-section>span{width:31px;height:31px;flex:0 0 31px;display:grid;place-items:center;border-radius:10px;background:#eee9ff;color:#6d4fd3;font-size:9px;font-weight:950}.event-form-section>div{min-width:0;flex:1}.event-form-section h3{margin:0;color:#26344a;font-size:13px}.event-form-section p{margin:4px 0 0;color:#8390a1;font-size:10px;line-height:1.5}.event-benefit-heading{align-items:center}.event-quota-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}.event-quota-choice label{position:relative;cursor:pointer}.event-quota-choice input{position:absolute;opacity:0;pointer-events:none}.event-quota-choice span{display:block;min-height:76px;padding:14px;border:1px solid #dfe5ed;border-radius:14px;background:#fff;transition:.15s ease}.event-quota-choice strong,.event-quota-choice small{display:block}.event-quota-choice strong{font-size:11px;color:#34445b}.event-quota-choice small{margin-top:5px;color:#8895a6;font-size:9px;line-height:1.45}.event-quota-choice input:checked+span{border-color:#9f8ae8;background:#f8f6ff;box-shadow:0 0 0 3px rgba(109,79,211,.07)}.event-quota-choice input:checked+span strong{color:#6247c2}.event-benefit-list{display:grid;gap:12px}.event-benefit-card{padding:16px;border:1px solid #e2e7ee;border-radius:16px;background:#fafbfc}.event-benefit-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:13px}.event-benefit-card-head span,.event-benefit-card-head strong{display:block}.event-benefit-card-head span{font-size:8px;font-weight:900;letter-spacing:.08em;color:#7c62d7}.event-benefit-card-head strong{margin-top:3px;font-size:11px;color:#2f3e54}.event-remove-benefit{width:30px;height:30px;border:1px solid #e1e5eb;border-radius:9px;background:#fff;color:#94a0ae;font-size:20px;line-height:1;cursor:pointer}.event-remove-benefit:hover{border-color:#f0b4bc;background:#fff6f7;color:#c94052}.event-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px;padding-top:17px;border-top:1px solid #edf0f4}.event-guide-card{position:sticky;top:18px;padding:20px;border:1px solid #e6e0fa;border-radius:20px;background:linear-gradient(160deg,#fbfaff,#fff);box-shadow:0 10px 30px rgba(56,38,110,.06)}.event-guide-icon{width:46px;height:46px;display:grid;place-items:center;border-radius:14px;background:linear-gradient(135deg,#7454d8,#9d83ef);color:#fff;font-size:20px}.event-guide-card h3{margin:14px 0 6px;font-size:15px}.event-guide-card>p{margin:0 0 14px;color:#7b899b;font-size:10px;line-height:1.6}.event-guide-item{display:flex;gap:10px;padding:11px 0;border-top:1px solid #eeeaf9}.event-guide-item>b{width:28px;height:28px;flex:0 0 28px;display:grid;place-items:center;border-radius:9px;background:#f1edff;color:#6d4fd3;font-size:8px}.event-guide-item span{min-width:0}.event-guide-item strong,.event-guide-item small{display:block}.event-guide-item strong{font-size:10px;color:#39485e}.event-guide-item small{margin-top:3px;color:#8b97a7;font-size:8px;line-height:1.45}
@media(max-width:1100px){.event-form-layout{grid-template-columns:1fr}.event-guide-card{position:static}.event-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:850px){.event-list-grid{grid-template-columns:1fr}.event-filter{grid-template-columns:1fr 1fr}.event-filter-search-field{grid-column:1/-1}.event-page-head{align-items:flex-start;flex-direction:column}.event-filter-actions{grid-column:1/-1;justify-content:flex-end}}
@media(max-width:620px){.event-metrics{grid-template-columns:1fr 1fr}.event-filter{grid-template-columns:1fr}.event-filter-search-field,.event-filter-actions{grid-column:auto}.event-filter-actions{justify-content:stretch;flex-wrap:wrap}.event-filter-actions .btn{flex:1 1 0}.event-quota-choice{grid-template-columns:1fr}.event-form-card{padding:16px}.event-benefit-heading{align-items:flex-start;flex-wrap:wrap}.event-benefit-heading .btn{margin-left:43px}.event-quota-bar{grid-template-columns:1fr}.event-clinic-banner{align-items:flex-start;flex-wrap:wrap}}


/* Buat Acara v2 · layanan + voucher barcode/QR */
.event-service-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:12px}.event-service-choice label{position:relative;cursor:pointer}.event-service-choice input{position:absolute;opacity:0;pointer-events:none}.event-service-choice span{display:block;min-height:70px;padding:13px;border:1px solid #dfe5ed;border-radius:14px;background:#fff}.event-service-choice strong,.event-service-choice small{display:block}.event-service-choice strong{font-size:11px;color:#34445b}.event-service-choice small{margin-top:5px;color:#8895a6;font-size:9px;line-height:1.45}.event-service-choice input:checked+span{border-color:#9f8ae8;background:#f8f6ff;box-shadow:0 0 0 3px rgba(109,79,211,.07)}.event-service-picker{padding:13px;border:1px solid #e3e8ef;border-radius:15px;background:#fafbfc;margin-bottom:16px}.event-service-toolbar{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-bottom:10px}.event-service-toolbar .event-search{flex:1;min-width:220px}.event-service-count{margin-left:auto;padding:6px 9px;border-radius:9px;background:#f1edff;color:#6d4fd3;font-size:9px;font-weight:800}.event-service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;max-height:340px;overflow:auto;padding:2px}.event-service-option{display:flex;align-items:center;gap:9px;padding:10px;border:1px solid #e1e6ed;border-radius:11px;background:#fff;cursor:pointer;transition:.12s}.event-service-option:hover{border-color:#c9bfef}.event-service-option>input{position:absolute;opacity:0;pointer-events:none}.event-service-check{width:23px;height:23px;flex:0 0 23px;display:grid;place-items:center;border:1px solid #d4dbe5;border-radius:7px;color:transparent;background:#fff;font-size:10px}.event-service-option:has(input:checked){border-color:#9f8ae8;background:#faf8ff}.event-service-option input:checked+.event-service-check{border-color:#7454d8;background:#7454d8;color:#fff}.event-service-info{min-width:0}.event-service-info strong,.event-service-info small{display:block}.event-service-info strong{font-size:10px;color:#334258}.event-service-info small{margin-top:3px;color:#8c98a8;font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-services-empty{grid-column:1/-1;padding:18px;text-align:center;color:#8491a3;font-size:10px}.event-code-assets{margin-top:14px;padding:13px;border:1px solid #ded7f5;border-radius:14px;background:#fff}.event-code-assets-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.event-code-assets-head strong,.event-code-assets-head small{display:block}.event-code-assets-head strong{font-size:11px;color:#3e315f}.event-code-assets-head small{margin-top:3px;color:#8995a5;font-size:8px;line-height:1.5}.event-code-preview-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(190px,.55fr);gap:10px}.event-code-preview{padding:10px;border:1px solid #e5e8ed;border-radius:11px;background:#fafbfc;text-align:center}.event-code-preview>span{display:block;margin-bottom:8px;font-size:8px;font-weight:900;letter-spacing:.07em;color:#7357ce}.event-code-preview canvas{display:block;max-width:100%;height:auto;margin:0 auto 9px;background:#fff;border-radius:6px}.event-code-preview>div{display:flex;justify-content:center;gap:6px}.event-code-preview.qr canvas{width:180px;height:180px;image-rendering:pixelated}
@media(max-width:760px){.event-service-choice,.event-service-grid,.event-code-preview-grid{grid-template-columns:1fr}.event-service-count{margin-left:0}.event-code-assets-head{align-items:flex-start;flex-direction:column}}

/* v4.9 · Global ZENKIDS branding logo */
.brand-mark.brand-mark-logo{overflow:hidden;padding:4px;background:#fff;box-shadow:0 8px 24px rgba(31,111,235,.28)}
.brand-mark.brand-mark-logo img{display:block;width:100%;height:100%;object-fit:contain;border-radius:9px}
.login-brand .brand-mark-logo{flex:0 0 42px}
.branding-settings-card{margin:0 0 18px;padding:0;overflow:hidden}
.branding-settings-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:20px 22px;border-bottom:1px solid var(--line);background:linear-gradient(135deg,#fff,#f8fbff)}
.branding-settings-head h3{margin:4px 0 5px;font-size:17px}.branding-settings-head p{margin:0;max-width:720px;font-size:12px;color:var(--muted);line-height:1.6}
.branding-kicker{font-size:9px;font-weight:900;letter-spacing:.12em;color:#5b64d8}
.branding-settings-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(360px,1.2fr);gap:20px;padding:20px 22px}
.branding-preview{display:flex;align-items:center;gap:15px;padding:15px;border:1px solid #e2e8f0;border-radius:16px;background:#fbfcff;min-width:0}
.branding-preview-stage{width:96px;height:76px;flex:0 0 96px;display:grid;place-items:center;padding:8px;border-radius:14px;background:linear-gradient(135deg,#0b1220,#17233a)}
.branding-preview-stage img{display:block;max-width:100%;max-height:100%;object-fit:contain}
.branding-preview strong,.branding-preview small{display:block}.branding-preview strong{font-size:12px;color:#243247}.branding-preview small{margin-top:5px;font-size:10px;color:#7a8798;line-height:1.5;word-break:break-word}
.branding-upload-area{min-width:0}.branding-upload-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:end}.branding-upload-form>label{grid-column:1/-1;font-size:10px;font-weight:850;letter-spacing:.04em;text-transform:uppercase;color:#6f7d90}.branding-file-control{min-width:0;height:46px;border:1px solid #d9e2ec;border-radius:12px;background:#fff;display:flex;align-items:center;padding:5px 7px;overflow:hidden}.branding-file-control:focus-within{border-color:#73a5ed;box-shadow:0 0 0 4px rgba(31,111,235,.09)}.branding-file-control input[type=file]{width:100%;min-width:0;font-size:11px;color:#64748b;border:0;padding:0}.branding-file-control input[type=file]::file-selector-button{border:0;border-radius:8px;background:#eef4ff;color:#1f5eb6;font-weight:800;padding:8px 10px;margin-right:10px;cursor:pointer}.branding-upload-form>small{grid-column:1/-1;color:#8491a2;font-size:10px;line-height:1.5}.branding-upload-form .btn{height:46px;white-space:nowrap}.branding-reset-form{margin-top:9px}.branding-readonly-note{padding:15px;border-radius:13px;background:#f7f9fc;color:#66758a;font-size:11px;line-height:1.6}
@media(max-width:900px){.branding-settings-grid{grid-template-columns:1fr}.branding-upload-form{grid-template-columns:1fr}.branding-upload-form .btn{width:100%}}
@media(max-width:560px){.branding-settings-head{padding:16px;flex-direction:column}.branding-settings-grid{padding:16px}.branding-preview{align-items:flex-start}.branding-preview-stage{width:78px;height:64px;flex-basis:78px}}

/* v1.2 · Sinkron UI Detail Layanan dengan Register Portal */
.psv2-list-card{overflow:hidden}
.psv2-section-head{gap:18px;align-items:flex-start}
.psv2-patient-list{display:grid;gap:14px}
.psv2-patient-card{display:block;padding:20px;border:1px solid #d7e2ef;border-radius:18px;background:#fff;box-shadow:0 1px 0 rgba(15,23,42,.01)}
.psv2-card-top{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:16px;border-bottom:1px solid #edf2f7}
.psv2-identity{display:flex;align-items:center;gap:13px;min-width:0}.psv2-avatar{width:48px;height:48px;flex:0 0 48px;border-radius:15px;display:grid;place-items:center;background:#eaf2ff;color:#1f6feb;font-weight:900;font-size:15px}
.psv2-identity-text{min-width:0}.psv2-identity-text strong,.psv2-identity-text small{display:block}.psv2-identity-text strong{font-size:14px;line-height:1.35;color:var(--text);overflow-wrap:anywhere}.psv2-identity-text small{margin-top:5px;color:var(--muted);font-size:10px}.psv2-identity-text small b{color:#4a607a}
.psv2-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;flex:0 0 auto}.psv2-actions .btn,.psv2-actions .badge{white-space:nowrap}
.psv2-fact-grid{display:grid;grid-template-columns:minmax(180px,1.35fr) repeat(3,minmax(125px,1fr));gap:12px;padding-top:16px}
.psv2-fact{min-width:0;min-height:76px;padding:13px 14px;border:1px solid #e4ebf3;border-radius:14px;background:#f9fbfd;display:flex;flex-direction:column;justify-content:center}
.psv2-label{display:block;margin-bottom:7px;color:#7c8da3;font-size:9px;line-height:1.2;font-weight:850;letter-spacing:.08em;text-transform:uppercase}.psv2-value{display:block;color:var(--text);font-size:12px;line-height:1.4;font-weight:850;overflow-wrap:anywhere}.psv2-value.is-muted{color:var(--muted);font-weight:700}.psv2-help{display:block;margin-top:5px;color:var(--muted);font-size:9px;line-height:1.4}
.psv2-chips{display:flex;flex-wrap:wrap;gap:6px}.psv2-chip{display:inline-flex;align-items:center;max-width:100%;padding:5px 8px;border-radius:9px;background:#eaf2ff;color:#1e5ca9;font-size:9px;line-height:1.25;font-weight:850;white-space:normal;overflow-wrap:anywhere}.psv2-chip.is-muted{background:#eef2f6;color:#65758a}
.psv2-patient-card.is-session-ended,.ps-history-card.is-session-ended{background:#fff3bf!important;border-color:#d6a900!important;box-shadow:0 0 0 1px rgba(214,169,0,.12) inset}.psv2-patient-card.is-stopped,.ps-history-card.is-stopped{background:#ffe0dc!important;border-color:#dc5f55!important;box-shadow:0 0 0 1px rgba(220,95,85,.12) inset}
.ps-history-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;max-width:460px}.ps-history-actions .btn,.ps-history-actions .badge{white-space:nowrap}
.ps-detail-hero{min-width:0}.ps-history-card{min-width:0;overflow:hidden}.ps-history-top>div:first-child{min-width:0;flex:1 1 340px}.ps-history-top h3,.ps-history-top p{overflow-wrap:anywhere}
.ps-session-history{display:block!important;width:100%;box-sizing:border-box;margin:18px 0!important;padding:16px!important;border:1px solid #dfe7ef!important;border-radius:16px!important;background:#fcfdff!important}
.ps-session-history-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:18px!important;margin:0 0 14px!important}.ps-session-history-head>div{min-width:0;max-width:780px}.ps-session-history-head strong{display:block!important;font-size:13px!important;line-height:1.35!important;color:var(--text)!important}.ps-session-history-head small{display:block!important;margin-top:5px!important;color:var(--muted)!important;font-size:10px!important;line-height:1.55!important}.ps-session-history-head>span{flex:0 0 auto;padding:5px 8px;border-radius:999px;background:#eef4fb;color:#516982;font-size:9px!important;font-weight:900!important;white-space:nowrap}
.ps-session-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;width:100%!important}.ps-session-item{display:flex!important;flex-direction:column!important;min-width:0!important;min-height:118px;padding:12px 13px!important;border:1px solid #dfe6ee!important;border-radius:12px!important;background:#fff!important;box-sizing:border-box}.ps-session-item.is-attended{border-color:#b8dfca!important;background:#f2fbf6!important}.ps-session-item.is-legacy{border-color:#e2d8b3!important;background:#fffaf0!important}.ps-session-item.is-pending{border-style:dashed!important;background:#f8fafc!important;color:#7b8796!important}.ps-session-no{margin-bottom:6px!important;font-size:9px!important;font-weight:900!important;letter-spacing:.07em!important;text-transform:uppercase!important;color:#5f7187!important}.ps-session-item>strong{display:block!important;font-size:12px!important;line-height:1.35!important;overflow-wrap:anywhere}.ps-session-meta{display:grid!important;gap:4px!important;margin-top:8px!important;min-width:0}.ps-session-meta>span{display:block!important;min-width:0;color:var(--muted)!important;font-size:9px!important;line-height:1.35!important;overflow-wrap:anywhere!important}
.ps-finance-grid>div{min-width:0}.ps-finance-grid strong{overflow-wrap:anywhere}
@media(max-width:1050px){.psv2-fact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ps-session-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:820px){.psv2-card-top{align-items:flex-start;flex-direction:column}.psv2-actions{justify-content:flex-start;width:100%;padding-top:2px}.psv2-fact-grid{grid-template-columns:1fr}.psv2-fact{min-height:0}.psv2-section-head{flex-direction:column}.psv2-section-head>.badge{align-self:flex-start}.ps-session-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.ps-history-top{flex-direction:column}.ps-history-actions{justify-content:flex-start;max-width:none;width:100%}}
@media(max-width:620px){.ps-session-grid{grid-template-columns:1fr!important}.ps-session-history-head{flex-direction:column!important}.ps-session-item{min-height:0}}
