:root{--navy:#071a37;--blue:#0b4f9c;--red:#d71920;--gold:#f2c94c;--soft:#f5f7fb;--line:#d9e2ef;--text:#0f172a;--muted:#667085}
*{box-sizing:border-box}body{margin:0;font-family:Inter,Arial,Helvetica,sans-serif;background:#eef2f7;color:var(--text)}button,input,select,textarea{font-family:inherit}button{border:0;border-radius:12px;background:linear-gradient(135deg,var(--blue),#0a2c5f);color:#fff;font-weight:800;padding:10px 14px;cursor:pointer}button:hover{filter:brightness(1.05)}button.small{padding:6px 9px;border-radius:9px;font-size:12px;margin:2px}.btn-secondary{background:#e8eef8!important;color:#082b57!important}.danger{background:#dc2626!important}.hidden{display:none!important}.muted{color:var(--muted);font-size:13px;line-height:1.45}.notice{background:#fff8dd;border:1px solid #f2d77c;border-radius:14px;padding:14px;margin:10px 0;color:#594200}.pill{display:inline-block;background:#e8eef8;color:#082b57;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:800}.login-page{min-height:100vh;display:grid;place-items:center;position:relative;background:linear-gradient(120deg,rgba(7,23,48,.65),rgba(9,42,90,.38),rgba(230,176,52,.22)),url('assets/login-background.png') center/cover no-repeat}.login-overlay{position:absolute;inset:0;background:radial-gradient(circle at 20% 20%,rgba(255,255,255,.18),transparent 34%),linear-gradient(90deg,rgba(7,26,55,.45),rgba(7,26,55,.12))}.login-card{position:relative;width:min(430px,92vw);background:rgba(255,255,255,.93);border-radius:26px;padding:30px;box-shadow:0 28px 90px rgba(0,0,0,.38);backdrop-filter:blur(10px)}.login-card h1{margin:0;color:#082b57;font-size:32px}.login-card p{color:#44536b;margin-bottom:22px}.login-card input{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:12px;margin:8px 0;background:white}.login-card button{width:100%;margin:12px 0}.login-card small{display:block;color:#667085;line-height:1.4}.app{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.sidebar{background:linear-gradient(180deg,#071a37,#0c254b);color:#fff;padding:20px;position:sticky;top:0;height:100vh;overflow:auto}.brand{font-size:24px;font-weight:950;letter-spacing:.4px;margin-bottom:16px}.brand span{color:var(--gold)}.role-badge{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);padding:12px;border-radius:16px;font-size:13px;margin-bottom:14px;color:#eaf2ff}.sidebar nav{display:grid;gap:7px}.sidebar nav button{background:transparent;text-align:left;border:1px solid rgba(255,255,255,.08);color:#dbeafe;font-weight:750;padding:10px 12px}.sidebar nav button:hover{background:rgba(255,255,255,.10)}.logout{width:100%;margin-top:16px;background:rgba(255,255,255,.12)}.content{padding:24px;overflow:auto}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.topbar h2{margin:0;color:#0f2444}.card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:18px;margin-bottom:16px;box-shadow:0 8px 24px rgba(15,23,42,.05)}.card h3{margin:0 0 12px;color:#0f2444}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field{display:grid;gap:6px}.field span{font-size:12px;font-weight:800;color:#334155}.field input,.field select,.field textarea{border:1px solid var(--line);border-radius:12px;padding:10px 11px;background:#fff;min-width:0}.field textarea{min-height:82px;resize:vertical}.actions{display:flex;gap:10px;flex-wrap:wrap}.dash-hero{background:linear-gradient(135deg,#0b3f7a,#071a37);color:#fff;border-radius:22px;padding:22px;margin-bottom:16px;display:flex;justify-content:space-between;align-items:center}.dash-hero h2{margin:0 0 6px}.dash-hero p{margin:0;color:#dbeafe}.stats{margin-bottom:16px}.stat{background:#fff;border:1px solid var(--line);border-left:5px solid var(--blue);border-radius:18px;padding:16px;box-shadow:0 8px 20px rgba(15,23,42,.05)}.stat small{color:#667085;font-weight:800}.stat b{display:block;font-size:34px;color:#082b57;margin-top:5px}table{width:100%;border-collapse:collapse;font-size:13px;background:#fff;border-radius:12px;overflow:hidden}th,td{text-align:left;border-bottom:1px solid #eef2f7;padding:9px;vertical-align:middle}th{background:#f6f8fb;color:#334155;font-size:12px;text-transform:uppercase}tr:hover td{background:#fafcff}.avatar{width:42px;height:42px;object-fit:cover;border-radius:10px;border:1px solid var(--line)}.profile-card{text-align:center}.profile-photo{width:120px;height:140px;object-fit:cover;border-radius:16px;border:4px solid #fff;box-shadow:0 8px 22px rgba(0,0,0,.15)}.print-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:14px}.print-actions select{padding:10px 12px;border:1px solid var(--line);border-radius:12px;min-width:280px}.bar-chart{display:grid;gap:9px}.bar-item{display:grid;grid-template-columns:82px 1fr 28px;gap:8px;align-items:center;font-size:12px}.bar-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar-track{height:12px;background:#eaf0f8;border-radius:99px;overflow:hidden}.bar-track span{display:block;height:100%;background:linear-gradient(90deg,var(--blue),var(--gold));border-radius:99px}.pie-wrap{display:flex;gap:14px;align-items:center;margin-top:12px}.pie{width:90px;height:90px;border-radius:50%;border:6px solid #fff;box-shadow:0 4px 12px rgba(0,0,0,.12)}.pie-legend{display:grid;gap:4px;font-size:12px}.pie-legend span{display:flex;align-items:center;gap:6px}.pie-legend i{width:10px;height:10px;border-radius:3px;display:inline-block}
/* KTA Rev 54 Template - menggunakan background unggahan terbaru */
.rev50-sheet{width:297mm;min-height:210mm;margin:auto;background:#fff;padding:10mm;display:flex;gap:10mm;align-items:flex-start;justify-content:center}
.rev50-card{width:85.6mm;height:53.98mm;position:relative;overflow:hidden;border-radius:3.8mm;background-image:url('assets/kta-template-rev56.png');background-size:100% 100%;background-repeat:no-repeat;background-position:center;box-shadow:0 4px 18px rgba(0,0,0,.18);font-family:Arial,Helvetica,sans-serif;color:#082b57}
.rev50-logo{position:absolute;top:4.2mm;width:15mm;height:10mm;display:grid;place-items:center;z-index:2}.rev50-logo img{max-width:100%;max-height:100%;object-fit:contain}.rev50-logo b{font-size:4.6mm;color:#0c3365;letter-spacing:.4mm}.rev50-logo-left{left:6mm}.rev50-logo-right{right:6mm}
.rev50-title{position:absolute;left:22mm;right:22mm;top:4.7mm;text-align:center;z-index:2}.rev50-title h1{margin:0;color:#071a37;font-size:5.8mm;letter-spacing:.32mm;line-height:1;font-weight:950;white-space:nowrap}.rev50-title p{margin:.8mm 0 0;color:#163b67;font-size:1.95mm;line-height:1;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rev50-title strong{display:block;margin:.65mm 0 0;color:#c9141b;font-size:2.25mm;line-height:1;font-weight:950;letter-spacing:.18mm;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.rev50-badge{position:absolute;left:33mm;right:33mm;top:17.1mm;height:5.2mm;border-radius:999px;background:linear-gradient(180deg,#115fb0,#072c63);color:#fff;display:grid;place-items:center;font-size:2.8mm;font-weight:950;letter-spacing:.22mm;box-shadow:inset 0 1px 0 rgba(255,255,255,.28),0 1.2mm 2.4mm rgba(0,0,0,.18);z-index:2}
.rev50-photo{position:absolute;left:7.8mm;top:23.2mm;width:20.5mm;height:25.5mm;border:0.45mm solid #246cae;border-radius:2mm;overflow:hidden;display:grid;place-items:center;color:#6f7f92;background:#eef2f4;font-size:2.5mm;font-weight:900;z-index:2}.rev50-photo img{width:100%;height:100%;object-fit:cover}
.rev50-front-values{position:absolute;left:33mm;top:24.2mm;width:45.2mm;z-index:2}.rev50-row{display:grid;grid-template-columns:15.2mm 2mm 1fr;align-items:center;height:3.35mm;font-size:2.15mm;line-height:1;color:#082b57}.rev50-row b{font-weight:950}.rev50-row span{font-weight:950;text-align:center}.rev50-row strong{font-weight:850;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-bottom:.12mm solid rgba(8,43,87,.54);padding-bottom:.2mm;min-width:0}
.rev50-front-daerah{position:absolute;left:6.7mm;bottom:3.25mm;width:41mm;color:#fff;font-size:2.35mm;font-weight:900;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 1px rgba(0,0,0,.42);z-index:2}.rev50-front-no{position:absolute;right:7mm;bottom:3.1mm;width:35mm;text-align:right;color:#fff0a3;font-size:2.35mm;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-shadow:0 1px 1px rgba(0,0,0,.42);z-index:2}
.rev50-back-title{top:4.5mm}.rev50-back-badge{top:16.6mm}.rev50-rules{position:absolute;left:7.5mm;top:23mm;width:52mm;color:#082b57;z-index:2}.rev50-rules h2{margin:0 0 1.1mm;font-size:3mm;letter-spacing:.18mm;color:#071a37}.rev50-rules ol{margin:0;padding-left:4.2mm;font-size:2.15mm;line-height:1.22;font-weight:850}.rev50-rules li{margin:.45mm 0}.rev50-qr{position:absolute;right:6.7mm;top:25.3mm;width:15mm;height:18.2mm;background:#fff;border:.5mm solid #0c3d78;border-radius:1.4mm;display:grid;place-items:center;overflow:hidden;z-index:2}.rev50-qr svg{width:12.1mm;height:12.1mm}.rev50-qr em{font-style:normal;font-size:1.75mm;font-weight:950;color:#0c3d78;line-height:1}.rev50-sign{position:absolute;text-align:center;color:#082b57;z-index:2}.rev50-sign-left{left:15.5mm;top:40.2mm;width:19.5mm}.rev50-sign-right{left:50.5mm;top:40.2mm;width:19.5mm}.rev50-sign-title{font-size:2.05mm;font-weight:950;line-height:1.04;margin-bottom:.25mm}.rev50-ttd{height:4.7mm;max-width:18.5mm;object-fit:contain;display:block;margin:0 auto -0.35mm}.rev50-sign-line{height:.16mm;background:#082b57;margin:0 auto .25mm;width:17.5mm}.rev50-sign-name{font-size:1.8mm;line-height:1.05;font-weight:950;white-space:normal;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:3.8mm}.rev50-stamp-wrap{position:absolute;left:38mm;top:39.7mm;width:9.5mm;height:9.5mm;display:grid;place-items:center;z-index:3}.rev50-stamp{max-width:9.5mm;max-height:9.5mm;object-fit:contain;opacity:.92}.rev50-back-address{position:absolute;left:7.4mm;bottom:2.25mm;width:70.8mm;color:white;font-size:1.72mm;font-weight:850;line-height:1.08;white-space:normal;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;text-shadow:0 1px 1px rgba(0,0,0,.35);z-index:2}
@media(max-width:900px){.app{grid-template-columns:1fr}.sidebar{position:relative;height:auto}.grid.two{grid-template-columns:1fr}.rev50-sheet{transform:scale(.78);transform-origin:top left;width:380mm}.content{padding:14px}}
@media print{html,body{width:297mm!important;height:210mm!important;background:white!important;overflow:hidden!important}.sidebar,.topbar,.print-actions,.no-print{display:none!important}.app,.content,#view,.card{display:block!important;width:297mm!important;height:auto!important;margin:0!important;padding:0!important;background:white!important;box-shadow:none!important;border:0!important;overflow:hidden!important}.rev50-sheet{width:297mm!important;height:210mm!important;padding:10mm!important;gap:10mm!important;align-items:flex-start!important;justify-content:center!important;page-break-after:avoid!important}.rev50-card{width:85.6mm!important;height:53.98mm!important;box-shadow:none!important;-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}.rev50-title h1{font-size:5.6mm!important}.rev50-row{height:3.35mm!important;font-size:2.05mm!important}.rev50-sign-left{left:15.5mm!important;top:40.2mm!important;width:19.5mm!important}.rev50-sign-right{left:50.5mm!important;top:40.2mm!important;width:19.5mm!important}.rev50-stamp-wrap{left:38mm!important;top:39.7mm!important;width:9.8mm!important;height:9.8mm!important}.rev50-stamp{max-width:9.8mm!important;max-height:9.8mm!important}.rev50-back-address{font-size:1.68mm!important;bottom:2.2mm!important}@page{size:A4 landscape;margin:0}}


/* ===== Online Final Revisi 55: UI shell & Login Rev50 ===== */
:root{--ui-blue:#1267bd;--ui-light:#eff7ff;--ui-deep:#08335f;--ui-gold:#f6c33b;--ui-red:#d61f26}
.login-page{align-items:center;justify-items:end;padding:42px 62px;background-image:linear-gradient(90deg,rgba(4,24,47,.18),rgba(4,24,47,.40)),url('assets/login-background.png');background-position:center;background-size:cover}
.login-card{margin-right:2.5vw;border-top:5px solid var(--ui-gold);width:min(420px,92vw);box-shadow:0 28px 90px rgba(0,0,0,.28)}
.login-card h1{font-size:29px;color:var(--ui-deep)}
.login-identity{position:absolute;left:38px;bottom:35px;background:rgba(255,255,255,.92);padding:14px 18px;border-radius:18px;border-left:6px solid var(--ui-gold);box-shadow:0 10px 30px rgba(0,0,0,.18);display:grid;gap:3px;min-width:310px;color:#0c315d}
.identity-logos{display:flex;align-items:center;gap:14px;margin-bottom:6px}.identity-logos img{height:38px;width:80px;object-fit:contain}.identity-logos img:last-child{width:54px}
.login-identity b{font-size:17px}.login-identity span{font-size:12px;font-weight:700;color:#334e70}
.sidebar{background:linear-gradient(180deg,#1267bd,#08417e);padding:16px;color:#fff}
.brand-panel{margin:-16px -16px 16px;padding:14px;background:linear-gradient(135deg,#f7fbff,#e3f2ff);color:#08335f;border-bottom:4px solid var(--ui-gold)}
.brand-logos{display:flex;gap:9px;align-items:center;margin-bottom:8px}.brand-logos img{width:74px;height:42px;object-fit:contain}.brand-logos img:last-child{width:47px}
.brand-panel strong{font-size:15px;display:block}.brand-panel small{font-size:10.5px;font-weight:700;line-height:1.35}
.role-badge{background:rgba(255,255,255,.16);border-color:rgba(255,255,255,.3)}
.sidebar nav button{border-color:rgba(255,255,255,.22);color:#fff}.sidebar nav button:hover{background:rgba(255,255,255,.18)}
.dash-hero{background:linear-gradient(120deg,#1f83db,#0e5eae);box-shadow:0 12px 32px rgba(18,103,189,.24)}
.stat{border-left-color:#39a6eb}.topbar h2{color:#08335f}
.tab-row{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}.tab-row button.active{background:var(--ui-gold);color:#08335f}
.approval-status{font-weight:800;border-radius:20px;padding:4px 8px;font-size:11px}.approval-pending{background:#fff1c9;color:#835d00}.approval-approved{background:#d6f5e3;color:#116338}.approval-rejected{background:#fee2e2;color:#991b1b}

/* ===== Revisi 55: KTA printable overlay ===== */
.rev50-sheet{box-sizing:border-box;align-items:flex-start}
.rev50-title{left:18.5mm;right:18.5mm;top:5.6mm}
.rev50-title h1{font-size:4.25mm;letter-spacing:.18mm}
.rev50-title p{font-size:1.48mm;margin-top:.62mm}
.rev50-title strong{font-size:1.65mm;margin-top:.58mm}
.rev50-logo{top:3.75mm;width:13.4mm;height:9.2mm}
.rev50-logo-left{left:4.2mm}.rev50-logo-right{right:4.2mm}
.rev50-badge{left:32.5mm;right:32.5mm;top:15.4mm;height:4.4mm;font-size:2.2mm;white-space:nowrap}
.rev50-photo{left:6.2mm;top:22mm;width:19.5mm;height:26mm}
.rev50-front-values{left:29mm;top:22.2mm;width:49.5mm}
.rev50-row{grid-template-columns:13.5mm 2mm 1fr;height:3.35mm;font-size:1.95mm}
.rev50-front .rev50-front-daerah,.rev50-front .rev50-front-no{display:none!important}
.rev50-rules{left:7mm;top:22.5mm;width:53.5mm}
.rev50-rules h2{font-size:2.45mm;margin-bottom:1mm}
.rev50-rules ol{font-size:1.78mm;line-height:1.25;padding-left:4.2mm}
.rev50-rules li{margin:.4mm 0}
.rev50-qr{right:6.5mm;top:25mm;width:13.6mm;height:16mm}
.rev50-qr canvas,.rev50-qr img{width:10.7mm!important;height:10.7mm!important;image-rendering:pixelated}
.rev50-qr em{font-size:1.45mm}
.rev50-sign-left{left:12.3mm;top:39.8mm;width:22mm}
.rev50-sign-right{left:49mm;top:39.8mm;width:22mm}
.rev50-sign-title{font-size:1.72mm}.rev50-ttd{height:4.25mm;max-width:18mm}.rev50-sign-name{font-size:1.45mm;min-height:3mm}
.rev50-stamp-wrap{left:38.55mm;top:39.35mm;width:9.1mm;height:9.1mm}.rev50-stamp{max-width:9.1mm;max-height:9.1mm}
.rev50-back-address{left:10mm;right:10mm;width:auto;bottom:2.35mm;color:#111;text-shadow:none;font-size:1.35mm;font-weight:750;line-height:1.08;text-align:center;display:block;white-space:nowrap;text-overflow:ellipsis}

/* Standard report print view */
.report-table{font-size:12px}.report-table th{background:#eaf4fe;color:#08335f}
.report-print-header{display:none}
@media(max-width:700px){.login-page{justify-items:center;padding:24px}.login-identity{left:16px;right:16px;bottom:16px;min-width:0}.login-card{margin:0 0 148px}}
@media print{
  .rev50-title h1{font-size:4.15mm!important}
  .rev50-title p{font-size:1.45mm!important}
  .rev50-title strong{font-size:1.62mm!important}
  .rev50-front-values{left:29mm!important;top:22.2mm!important;width:49.5mm!important}
  .rev50-row{height:3.28mm!important;font-size:1.9mm!important}
  .rev50-front .rev50-front-daerah,.rev50-front .rev50-front-no{display:none!important}
  .rev50-rules h2{font-size:2.4mm!important}.rev50-rules ol{font-size:1.75mm!important}
  .rev50-back-address{font-size:1.3mm!important;color:#111!important;text-shadow:none!important;text-align:center!important}
  body.report-print .sidebar,body.report-print .topbar,body.report-print .print-actions,body.report-print .grid.stats,body.report-print .grid.two{display:none!important}
  body.report-print #view .card:last-child{display:block!important;width:275mm!important;margin:8mm auto!important}
  body.report-print #view .card:last-child h3{font-size:18pt!important;margin-bottom:10mm!important}
  body.report-print table{font-size:10pt!important}
}


/* ===== Revisi 56: KTA template alignment update ===== */
.rev50-card{background-image:url('assets/kta-template-rev56.png')!important;background-size:100% 100%!important;}
.rev50-logo{top:6.7mm!important;width:12.2mm!important;height:8.6mm!important}
.rev50-logo-left{left:8.0mm!important}.rev50-logo-right{right:8.0mm!important}
.rev50-title{left:17mm!important;right:17mm!important;top:9.8mm!important;text-align:center!important}
.rev50-title h1{font-size:3.45mm!important;letter-spacing:.10mm!important;line-height:1.02!important;white-space:normal!important}
.rev50-title p{font-size:1.28mm!important;line-height:1.12!important;margin-top:.8mm!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
.rev50-title strong{font-size:1.45mm!important;line-height:1.12!important;margin-top:.55mm!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important}
.rev50-badge{left:31mm!important;right:31mm!important;top:18.8mm!important;height:3.7mm!important;font-size:1.95mm!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important}
.rev50-photo{left:8.5mm!important;top:24.3mm!important;width:18.8mm!important;height:24.6mm!important;border-radius:2.2mm!important}
.rev50-front-values{left:31.4mm!important;top:25.0mm!important;width:44.8mm!important}
.rev50-row{grid-template-columns:12.2mm 1.8mm 1fr!important;height:3.05mm!important;font-size:1.72mm!important}
.rev50-row strong{padding-bottom:.15mm!important}
.rev50-back-title{top:9.8mm!important}
.rev50-back-badge{top:18.8mm!important}
.rev50-rules{left:8.0mm!important;top:24.6mm!important;width:49.5mm!important}
.rev50-rules h2{font-size:2.05mm!important;margin:0 0 .7mm!important}
.rev50-rules ol{font-size:1.52mm!important;line-height:1.16!important;padding-left:3.7mm!important}
.rev50-rules li{margin:.25mm 0!important}
.rev50-qr{right:7.4mm!important;top:26.6mm!important;width:12.3mm!important;height:14.4mm!important;padding:.5mm!important;grid-template-rows:1fr auto!important}
.rev50-qr img{display:block;width:9.5mm!important;height:9.5mm!important;object-fit:contain!important}
.rev50-qr em{font-size:1.18mm!important;letter-spacing:.02mm!important}
.rev50-sign-left{left:15.2mm!important;top:40.8mm!important;width:18mm!important}
.rev50-sign-right{left:50.6mm!important;top:40.8mm!important;width:18mm!important}
.rev50-sign-title{font-size:1.56mm!important;margin-bottom:.2mm!important}
.rev50-ttd{height:3.8mm!important;max-width:16.8mm!important}
.rev50-sign-line{width:16.5mm!important}.rev50-sign-name{font-size:1.32mm!important;min-height:2.7mm!important;line-height:1.02!important}
.rev50-stamp-wrap{left:39.3mm!important;top:40.0mm!important;width:8.6mm!important;height:8.6mm!important}
.rev50-stamp{max-width:8.6mm!important;max-height:8.6mm!important}
.rev50-back-address{left:10mm!important;right:10mm!important;bottom:2.0mm!important;width:auto!important;color:#111!important;font-size:1.22mm!important;line-height:1.05!important;text-align:center!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;text-shadow:none!important}
@media print{
  .rev50-title{top:9.8mm!important}
  .rev50-title h1{font-size:3.35mm!important}
  .rev50-title p{font-size:1.24mm!important}
  .rev50-title strong{font-size:1.42mm!important}
  .rev50-badge{top:18.8mm!important;height:3.7mm!important;font-size:1.9mm!important}
  .rev50-front-values{left:31.4mm!important;top:25.0mm!important;width:44.8mm!important}
  .rev50-row{font-size:1.68mm!important;height:3.00mm!important}
  .rev50-rules{top:24.6mm!important;width:49.5mm!important}
  .rev50-rules h2{font-size:2.0mm!important}
  .rev50-rules ol{font-size:1.48mm!important}
  .rev50-qr{top:26.6mm!important;width:12.3mm!important;height:14.4mm!important}
  .rev50-qr img{width:9.5mm!important;height:9.5mm!important}
}


/* ===== Revisi 57: clean identity, filters & mass print ===== */
.login-identity{background:transparent!important;border:0!important;box-shadow:none!important;color:#fff!important;padding:0!important;text-shadow:0 2px 7px rgba(0,0,0,.48)}
.login-identity span{color:#fff!important}.identity-logos img{filter:drop-shadow(0 3px 5px rgba(0,0,0,.3));object-fit:contain!important;background:transparent!important}
.brand-panel{background:transparent!important;border-bottom:1px solid rgba(255,255,255,.28)!important;color:#fff!important}
.brand-panel small,.brand-panel strong{color:#fff!important}.brand-logos img{background:transparent!important;filter:drop-shadow(0 2px 3px rgba(0,0,0,.2))}
.section-header{display:flex;justify-content:space-between;align-items:end;gap:16px;margin-bottom:14px}.section-header h3{margin:0!important}.search-box{display:flex;align-items:center;gap:10px;min-width:min(460px,60vw)}.search-box input,.search-input{width:100%;border:1px solid var(--line);border-radius:12px;padding:11px 13px;background:#fff}.search-box span{font-size:12px;color:var(--muted);white-space:nowrap;font-weight:700}
.report-control,.kta-control{display:flex;justify-content:space-between;align-items:end;gap:16px;flex-wrap:wrap}.inline-field{min-width:280px}.toolbar-grid{display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,240px) minmax(260px,1fr);gap:10px;flex:1}.toolbar-grid select{padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff}
@media(max-width:980px){.section-header{display:block}.search-box{margin-top:10px;min-width:0}.toolbar-grid{grid-template-columns:1fr}}
@media print{body.print-kta-batch .rev50-sheet{page-break-after:always!important;break-after:page!important} body.print-kta-batch .rev50-sheet:last-child{page-break-after:avoid!important;break-after:avoid!important}}


/* ===== Revisi 58: penyempurnaan posisi header, logo, ketentuan dan QR ===== */
.rev50-logo{top:4.0mm!important;width:12.2mm!important;height:8.1mm!important}
.rev50-logo-left{left:8.0mm!important}.rev50-logo-right{right:8.0mm!important}
.rev50-title{left:16mm!important;right:16mm!important;top:8.7mm!important;text-align:center!important}
.rev50-title h1{font-size:2.85mm!important;letter-spacing:.06mm!important;line-height:1.04!important;white-space:nowrap!important;overflow:visible!important}
.rev50-title p{font-size:1.16mm!important;line-height:1.12!important;margin-top:.65mm!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important}
.rev50-title strong{font-size:1.30mm!important;line-height:1.12!important;margin-top:.50mm!important;white-space:nowrap!important;overflow:visible!important;text-overflow:clip!important}
.rev50-badge{left:31.5mm!important;right:31.5mm!important;top:16.7mm!important;height:3.55mm!important;font-size:1.78mm!important;letter-spacing:.08mm!important}
.rev50-photo{top:22.4mm!important}
.rev50-front-values{top:23.2mm!important}
.rev50-back-title{top:8.7mm!important}
.rev50-back-badge{top:16.7mm!important}
.rev50-rules{left:8.0mm!important;top:21.8mm!important;width:49.2mm!important}
.rev50-rules h2{font-size:1.78mm!important;margin:0 0 .58mm!important;letter-spacing:.08mm!important}
.rev50-rules ol{font-size:1.37mm!important;line-height:1.13!important;padding-left:3.5mm!important}
.rev50-rules li{margin:.19mm 0!important}
.rev50-qr{right:7.2mm!important;top:23.1mm!important;width:12.8mm!important;height:15.2mm!important;background:#fff!important;z-index:5!important;display:grid!important;grid-template-rows:1fr auto!important;padding:.5mm!important}
.rev50-qr img{display:block!important;width:10.3mm!important;height:10.3mm!important;object-fit:contain!important;visibility:visible!important;opacity:1!important}
.rev50-qr em{font-size:1.12mm!important;color:#0c3d78!important}
.rev50-sign-left{top:38.6mm!important}.rev50-sign-right{top:38.6mm!important}.rev50-stamp-wrap{top:38.3mm!important}
@media print{
  .rev50-logo{top:4.0mm!important;width:12.2mm!important;height:8.1mm!important}
  .rev50-title{top:8.7mm!important}
  .rev50-title h1{font-size:2.82mm!important;white-space:nowrap!important}
  .rev50-title p{font-size:1.13mm!important;white-space:nowrap!important}
  .rev50-title strong{font-size:1.27mm!important;white-space:nowrap!important}
  .rev50-badge{top:16.7mm!important;height:3.55mm!important;font-size:1.76mm!important}
  .rev50-rules{top:21.8mm!important}.rev50-rules h2{font-size:1.76mm!important}.rev50-rules ol{font-size:1.34mm!important}
  .rev50-qr{top:23.1mm!important;width:12.8mm!important;height:15.2mm!important}
  .rev50-qr img{width:10.3mm!important;height:10.3mm!important}
  .rev50-sign-left,.rev50-sign-right{top:38.6mm!important}.rev50-stamp-wrap{top:38.3mm!important}
}


/* ===== Revisi 59: identity panel blocks with transparent-only logos ===== */
.login-identity{background:rgba(255,255,255,.94)!important;border:1px solid rgba(255,255,255,.75)!important;border-left:6px solid var(--ui-gold)!important;box-shadow:0 12px 32px rgba(0,0,0,.20)!important;color:#0c315d!important;padding:14px 18px!important;text-shadow:none!important}
.login-identity span{color:#334e70!important}
.identity-logos img{background:transparent!important;filter:drop-shadow(0 2px 3px rgba(8,43,87,.14))!important}
.brand-panel{background:linear-gradient(135deg,#f8fcff,#e7f3ff)!important;border-bottom:4px solid var(--ui-gold)!important;color:#08335f!important}
.brand-panel small,.brand-panel strong{color:#08335f!important}
.brand-logos img{background:transparent!important;filter:drop-shadow(0 2px 2px rgba(8,43,87,.14))!important}


/* ===== Revisi 60: panel transparan & logo unggahan resmi ===== */
.login-identity{
  background:rgba(7,33,70,.46)!important;
  border:1px solid rgba(255,255,255,.34)!important;
  border-left:5px solid var(--ui-gold)!important;
  box-shadow:0 14px 38px rgba(0,0,0,.24)!important;
  backdrop-filter:blur(9px)!important;
  -webkit-backdrop-filter:blur(9px)!important;
  color:#fff!important;
}
.login-identity b,.login-identity span{color:#fff!important;text-shadow:0 1px 3px rgba(0,0,0,.40)!important}
.identity-logos img{object-fit:contain!important;background:transparent!important;filter:drop-shadow(0 2px 3px rgba(0,0,0,.25))!important}
.brand-panel{
  background:rgba(255,255,255,.12)!important;
  border:1px solid rgba(255,255,255,.22)!important;
  border-bottom:3px solid var(--ui-gold)!important;
  border-radius:14px!important;
  margin:0 0 16px!important;
  padding:13px!important;
  backdrop-filter:blur(6px)!important;
  -webkit-backdrop-filter:blur(6px)!important;
  color:#fff!important;
}
.brand-panel strong,.brand-panel small{color:#fff!important;text-shadow:0 1px 2px rgba(0,0,0,.20)!important}
.brand-logos img{object-fit:contain!important;background:transparent!important;filter:drop-shadow(0 2px 3px rgba(0,0,0,.22))!important}

/* ===== Revisi 61: rapatkan area tanda tangan belakang KTA ===== */
.rev50-sign-left{
  left:17.4mm!important;
  width:18mm!important;
}
.rev50-sign-right{
  left:48.6mm!important;
  width:18mm!important;
}
.rev50-stamp-wrap{
  left:38.5mm!important;
}
@media print{
  .rev50-sign-left{
    left:17.4mm!important;
    width:18mm!important;
  }
  .rev50-sign-right{
    left:48.6mm!important;
    width:18mm!important;
  }
  .rev50-stamp-wrap{
    left:38.5mm!important;
  }
}

/* ===== Revisi 62: hasil print KTA hanya kartu depan-belakang ===== */
@media print{
  body.print-kta-single,
  body.print-kta-batch{
    width:297mm!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    overflow:visible!important;
  }

  body.print-kta-single #loginPage,
  body.print-kta-batch #loginPage,
  body.print-kta-single .sidebar,
  body.print-kta-batch .sidebar,
  body.print-kta-single .topbar,
  body.print-kta-batch .topbar,
  body.print-kta-single #view > *:not(#ktaPreview),
  body.print-kta-batch #view > *:not(#ktaPreview){
    display:none!important;
  }

  body.print-kta-single .app,
  body.print-kta-batch .app,
  body.print-kta-single .content,
  body.print-kta-batch .content,
  body.print-kta-single #view,
  body.print-kta-batch #view{
    display:block!important;
    width:297mm!important;
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    overflow:visible!important;
  }

  body.print-kta-single #ktaPreview,
  body.print-kta-batch #ktaPreview{
    display:block!important;
    position:static!important;
    width:297mm!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
  }

  body.print-kta-single #ktaPreview .rev50-sheet{
    display:flex!important;
    width:297mm!important;
    height:210mm!important;
    min-height:210mm!important;
    margin:0!important;
    padding:16mm 10mm!important;
    gap:10mm!important;
    justify-content:center!important;
    align-items:flex-start!important;
    page-break-after:avoid!important;
    break-after:avoid!important;
  }

  body.print-kta-batch #ktaPreview .rev50-sheet{
    display:flex!important;
    width:297mm!important;
    height:210mm!important;
    min-height:210mm!important;
    margin:0!important;
    padding:16mm 10mm!important;
    gap:10mm!important;
    justify-content:center!important;
    align-items:flex-start!important;
    page-break-after:always!important;
    break-after:page!important;
  }

  body.print-kta-batch #ktaPreview .rev50-sheet:last-child{
    page-break-after:avoid!important;
    break-after:avoid!important;
  }

  body.print-kta-single .rev50-card,
  body.print-kta-batch .rev50-card{
    flex:none!important;
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }

  @page{
    size:A4 landscape;
    margin:0;
  }
}

/* ===== Revisi 63: identitas daerah yang sedang login ===== */
.role-badge .sidebar-identity-label{
  display:block;
  font-size:9.5px;
  font-weight:800;
  letter-spacing:.12em;
  color:rgba(255,255,255,.76);
  margin-bottom:6px;
}
.role-badge b{
  display:block;
  font-size:14px;
  line-height:1.28;
  color:#fff;
  margin-bottom:3px;
}
.role-badge span{
  font-size:11px;
  color:rgba(255,255,255,.88);
  line-height:1.28;
  word-break:break-word;
}

/* ===== Revisi 64: tombol pengaturan urutan otomatis ===== */
button:disabled{
  opacity:.42;
  cursor:not-allowed;
  filter:none!important;
}

/* ===== Revisi 65: notifikasi dan ringkasan approval ===== */
.stat.pending-stat{border-left-color:#f59e0b;background:#fffcf4}
.stat.approved-stat{border-left-color:#16a34a;background:#f5fff8}
.notification-card{border-top:4px solid #f6c33b}
.notification-card .section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:6px}
.notify-list{display:grid;gap:8px;margin-top:12px}
.notify-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid #e2e8f0;border-radius:12px;background:#fbfdff}
.notify-row.unread{border-left:4px solid #f59e0b;background:#fffaf0}
.notify-row div{display:grid;gap:3px}
.notify-row div b{font-size:13px;color:#08335f}
.notify-row div span{font-size:12px;color:#64748b}
.approval-status.approval-pending{background:#fff1c9;color:#835d00}
.approval-status.approval-approved{background:#d6f5e3;color:#116338}
.approval-status.approval-rejected{background:#fee2e2;color:#991b1b}


/* ===== Revisi 66: Copyright footer login dan sidebar dashboard ===== */
.login-identity{bottom:58px!important;}
.login-copyright{
  position:absolute;
  left:38px;
  bottom:22px;
  z-index:2;
  font-size:12px;
  font-weight:700;
  letter-spacing:.02em;
  color:rgba(255,255,255,.92);
  text-shadow:0 1px 5px rgba(0,0,0,.48);
}
.sidebar{display:flex!important;flex-direction:column!important;}
.sidebar nav{flex:0 0 auto;}
.sidebar-copyright{
  margin-top:auto;
  padding:18px 4px 4px;
  text-align:left;
  font-size:11px;
  font-weight:700;
  color:rgba(255,255,255,.78);
  letter-spacing:.02em;
}
@media(max-width:700px){
  .login-identity{bottom:50px!important;}
  .login-copyright{left:16px;bottom:18px;font-size:11px;}
}
@media print{
  .login-copyright,.sidebar-copyright{display:none!important;}
}

/* ===== Revisi 67: Copyright center pada login dan dashboard ===== */
.login-copyright{
  left:0!important;
  right:0!important;
  width:100%!important;
  text-align:center!important;
  padding:0 16px!important;
  margin:0!important;
}
.sidebar-copyright{
  display:block!important;
  width:100%!important;
  text-align:center!important;
  padding:18px 0 4px!important;
  margin-left:auto!important;
  margin-right:auto!important;
}
@media(max-width:700px){
  .login-copyright{
    left:0!important;
    right:0!important;
    width:100%!important;
    text-align:center!important;
    padding:0 12px!important;
  }
}
@media print{
  .login-copyright,.sidebar-copyright{display:none!important;}
}

/* ===== Revisi 68: Ikon notifikasi dashboard dengan badge merah ===== */
.topbar-actions{
  display:flex;
  align-items:center;
  gap:10px;
}
.notification-shell{
  position:relative;
}
.notification-button{
  width:46px;
  height:46px;
  padding:0!important;
  border-radius:14px!important;
  display:grid;
  place-items:center;
  position:relative;
  background:#fff!important;
  color:#08335f!important;
  border:1px solid #d7e4f3!important;
  box-shadow:0 4px 14px rgba(8,51,95,.08);
}
.notification-button:hover{
  background:#edf6ff!important;
}
.notification-button.has-alert{
  border-color:#efbac0!important;
}
.bell-icon{
  font-size:20px;
  line-height:1;
}
.notification-count{
  position:absolute;
  top:-6px;
  right:-6px;
  min-width:20px;
  height:20px;
  padding:0 5px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#dc2626;
  color:#fff;
  font-size:11px;
  font-weight:900;
  border:2px solid #fff;
}
.notification-panel{
  position:absolute;
  top:54px;
  right:0;
  width:min(360px,85vw);
  background:#fff;
  border:1px solid #d9e2ef;
  border-radius:16px;
  box-shadow:0 18px 44px rgba(15,23,42,.18);
  z-index:100;
  overflow:hidden;
}
.notification-panel-head{
  padding:13px 15px;
  background:#edf6ff;
  color:#08335f;
  border-bottom:1px solid #d9e2ef;
}
.notification-panel-body{
  max-height:330px;
  overflow-y:auto;
  padding:8px;
}
.notification-item{
  padding:10px;
  margin:4px 0;
  border-radius:11px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:8px;
  background:#f8fbff;
  border:1px solid #eef3f9;
}
.notification-item.pending{
  border-left:4px solid #dc2626;
  background:#fff8f8;
}
.notification-item div{
  display:grid;
  gap:3px;
  min-width:0;
}
.notification-item b{
  font-size:12px;
  color:#08335f;
}
.notification-item div span{
  font-size:11px;
  color:#64748b;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.notification-empty{
  padding:12px 8px;
  margin:0;
}
.notification-link{
  width:100%;
  border-radius:0!important;
  padding:12px!important;
}
@media(max-width:700px){
  .topbar{align-items:flex-start;gap:12px;}
  .topbar-actions{flex-shrink:0;}
}
@media print{
  .notification-shell{display:none!important;}
}

.verify-card{background:#f5faff;border:1px solid #d9e8fb;border-radius:14px;padding:14px;margin-top:14px}.verify-card p{margin:7px 0;color:#12345d}

/* ===== Revisi 70: status aktif/nonaktif Admin Daerah ===== */
.admin-status{
  display:inline-flex;
  align-items:center;
  padding:5px 10px;
  border-radius:999px;
  font-size:11px;
  font-weight:900;
}
.admin-active{background:#dcfce7;color:#166534}
.admin-inactive{background:#fee2e2;color:#991b1b}
button.admin-enable{background:#16a34a!important;color:#fff!important}

/* ===== Revisi 71: login pertama wajib ganti password ===== */
.password-change-page{
  min-height:100vh;
  display:grid;
  place-items:center;
  padding:24px;
  background:linear-gradient(120deg,rgba(7,23,48,.48),rgba(9,42,90,.34)),url('assets/login-background.png') center/cover no-repeat;
}
.password-change-card{
  width:min(470px,94vw);
  background:rgba(255,255,255,.97);
  border-radius:24px;
  padding:28px;
  border-top:5px solid var(--ui-gold);
  box-shadow:0 22px 60px rgba(0,0,0,.28);
}
.password-logo-row{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:18px;
  margin-bottom:12px;
}
.password-logo-row img:first-child{height:54px;width:110px;object-fit:contain}
.password-logo-row img:last-child{height:54px;width:68px;object-fit:contain}
.password-change-card h1{
  margin:0 0 8px;
  text-align:center;
  color:#08335f;
}
.password-change-card p{
  color:#475569;
  font-size:13px;
  line-height:1.5;
  text-align:center;
  margin:0 0 18px;
}
.password-change-card input{
  width:100%;
  padding:12px 13px;
  border:1px solid var(--line);
  border-radius:12px;
  background:#fff;
}
.password-change-card button{
  width:100%;
  margin-top:14px;
}
.password-policy{
  margin-top:10px;
  padding:10px 12px;
  background:#edf6ff;
  border-radius:10px;
  font-size:12px;
  color:#334e70;
}
.password-logout{margin-top:8px!important}

/* ===== Revisi 71: pagination seluruh daftar/tabel ===== */
.table-pagination{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:10px;
  padding:12px 2px 2px;
  font-size:12px;
  color:#526176;
}
.page-size-control label{
  display:flex;
  align-items:center;
  gap:7px;
  font-weight:700;
}
.page-size-control select{
  padding:6px 9px;
  border:1px solid var(--line);
  border-radius:8px;
  background:#fff;
}
.page-info{
  font-weight:700;
  color:#334155;
}
.page-actions{
  display:flex;
  gap:6px;
}
@media(max-width:700px){
  .table-pagination{flex-direction:column;align-items:flex-start}
}
@media print{
  .password-change-page,.table-pagination{display:none!important}
}

/* ===== Revisi 72: Persetujuan aman, profil view, dan arsip ===== */
.approval-toolbar .section-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  flex-wrap:wrap;
  margin-bottom:14px;
}
.approval-switch{
  display:flex;
  gap:6px;
}
.approval-switch button{
  background:#edf4fc!important;
  color:#08335f!important;
}
.approval-switch button.active{
  background:#1267bd!important;
  color:#fff!important;
}
.approval-bulk-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  padding:12px;
  background:#f5f9fe;
  border:1px solid #e2ecf7;
  border-radius:13px;
  margin:10px 0 16px;
}
.select-all-request{
  margin-right:8px;
  display:flex;
  gap:6px;
  align-items:center;
  font-size:12px;
  font-weight:800;
  color:#334155;
}
.approval-actions{white-space:nowrap}
.approval-archived{background:#e5e7eb;color:#374151}
.modal-shell{
  position:fixed;
  inset:0;
  z-index:400;
  display:grid;
  place-items:center;
  padding:18px;
  background:rgba(2,12,27,.58);
}
.modal-card{
  width:min(790px,96vw);
  max-height:92vh;
  overflow:auto;
  background:#fff;
  border-radius:20px;
  padding:18px;
  box-shadow:0 26px 70px rgba(0,0,0,.28);
}
.modal-head{
  display:flex;
  justify-content:space-between;
  align-items:center;
  padding-bottom:12px;
  border-bottom:1px solid #e6edf6;
}
.modal-head h3{margin:0;color:#08335f}
.modal-close{
  font-size:26px;
  line-height:1;
  padding:0!important;
  width:38px;
  height:38px;
  background:#edf4fc!important;
  color:#08335f!important;
}
.request-meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin:14px 0;
  font-size:12px;
  color:#526176;
}
.request-profile-grid{
  display:grid;
  grid-template-columns:170px 1fr;
  gap:18px;
}
.request-photo{
  height:215px;
  border-radius:14px;
  border:1px solid #d9e2ef;
  background:#f5f7fb;
  display:grid;
  place-items:center;
  overflow:hidden;
  color:#667085;
  font-size:12px;
}
.request-photo img{width:100%;height:100%;object-fit:cover}
.profile-detail-list{display:grid;gap:6px}
.profile-read-row{
  display:grid;
  grid-template-columns:115px 10px 1fr;
  gap:6px;
  font-size:13px;
  line-height:1.35;
  border-bottom:1px dashed #e2e8f0;
  padding-bottom:5px;
}
.profile-read-row b{color:#526176}
.profile-read-row strong{color:#0f2444;word-break:break-word}
.pending-kta{
  display:inline-block;
  background:#fff1c9;
  color:#835d00;
  border-radius:999px;
  padding:3px 8px;
  font-size:11px;
}
.modal-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  justify-content:flex-end;
  border-top:1px solid #e6edf6;
  padding-top:14px;
  margin-top:16px;
}
@media(max-width:700px){
  .request-profile-grid{grid-template-columns:1fr}
  .request-photo{width:150px;height:190px;margin:auto}
  .profile-read-row{grid-template-columns:98px 8px 1fr;font-size:12px}
}
@media print{
  .modal-shell,.approval-bulk-actions{display:none!important}
}

/* ===== Revisi 73: Ulang Tahun & WhatsApp ===== */
.birthday-summary-card{border-top:4px solid #f59e0b;background:linear-gradient(135deg,#fffdf7,#fff)}
.birthday-summary-card .section-header,.birthday-hero{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.birthday-hero{border-top:4px solid #f59e0b}
.birthday-hero h3{font-size:19px}
.checkbox-field{align-content:start}
.consent-line{display:flex;align-items:flex-start;gap:8px;padding:10px 11px;border:1px solid var(--line);border-radius:12px;background:#fff;line-height:1.35;font-size:12px;color:#334155}
.consent-line input{width:auto;margin-top:1px}
@media print{.birthday-summary-card,.birthday-hero{display:none!important}}

/* ===== Revisi 74: Aktivasi Mandiri Anggota via Magic Link ===== */
.btn-activation{
  background:linear-gradient(135deg,#f6c33b,#dca51a)!important;
  color:#08335f!important;
  margin-top:4px!important;
}
.btn-magic-login{
  background:#edf6ff!important;
  color:#08335f!important;
  border:1px solid #d5e5f7!important;
  margin-top:5px!important;
}
.activation-modal{
  position:fixed;
  inset:0;
  z-index:500;
  background:rgba(3,17,36,.64);
  display:grid;
  place-items:center;
  padding:18px;
}
.activation-card{
  position:relative;
  width:min(470px,96vw);
  background:#fff;
  border-radius:20px;
  border-top:5px solid var(--ui-gold);
  padding:26px 24px 22px;
  box-shadow:0 25px 70px rgba(0,0,0,.3);
}
.activation-card h2{
  margin:0 0 8px;
  color:#08335f;
}
.activation-card p{
  color:#526176;
  font-size:13px;
  line-height:1.45;
}
.activation-card input{
  width:100%;
  padding:11px 12px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#fff;
}
.activation-card button[type="submit"]{
  width:100%;
  margin-top:16px;
}
.activation-close{
  position:absolute;
  right:12px;
  top:12px;
  width:36px;
  height:36px;
  padding:0!important;
  border-radius:999px!important;
  background:#edf6ff!important;
  color:#08335f!important;
  font-size:25px;
  line-height:1;
}
.activation-security-note{
  margin:14px 0 0!important;
  padding:10px 12px;
  border-radius:10px;
  background:#f5f9fe;
  font-size:11.5px!important;
}
@media print{
  .activation-modal{display:none!important}
}
