/* =============================================================================
   revisi-v26.css — bahasa visual bersama halaman v26 (namespace .rd26)

   Mengikuti dashboard utama: hero navy bergradasi, kartu putih bertepi halus,
   ikon berwarna per fungsi, huruf Plus Jakarta Sans untuk judul. Warna merek
   memakai --c-primary-* sehingga ikut fitur "Ganti Tema". Mode gelap lewat .dark.
   ========================================================================== */

.rd26{
  --ink:#13233a;--muted:#617086;--line:#e3e7ee;--line-2:#eef1f5;--card:#fff;--soft:#f6f7fa;--soft-2:#eef2f7;
  --brand:rgb(var(--c-primary-600,41 80 131));--brand-2:rgb(var(--c-primary-500,56 101 159));--brand-soft:rgb(var(--c-primary-500,56 101 159)/.1);
  --shadow:0 1px 2px rgba(16,24,40,.04),0 8px 24px -14px rgba(16,24,40,.18);--shadow-lift:0 2px 4px rgba(16,24,40,.05),0 18px 38px -18px rgba(16,24,40,.32);
  --gold:#c99a2e;--r:18px;
  color:var(--ink);max-width:1440px;margin:0 auto;min-width:0;font-size:14px;line-height:1.55;
}
.dark .rd26{--ink:#e7edf5;--muted:#9babbe;--line:rgba(255,255,255,.08);--line-2:rgba(255,255,255,.05);--card:#152132;--soft:#1a283b;--soft-2:#203048;--brand-soft:rgb(var(--c-primary-400,97 138 188)/.16);--shadow:0 1px 0 rgba(255,255,255,.03) inset,0 10px 30px -18px rgba(0,0,0,.6);--shadow-lift:0 1px 0 rgba(255,255,255,.04) inset,0 22px 44px -22px rgba(0,0,0,.75)}
.rd26 *{box-sizing:border-box}
.rd26 h1,.rd26 h2,.rd26 h3,.rd26 h4,.rd26 p{margin:0}
.rd26 h1,.rd26 h2,.rd26 h3{font-family:'Plus Jakarta Sans',Inter,system-ui,sans-serif;letter-spacing:-.02em}
.rd26 [hidden]{display:none!important}
.rd26 button{font-family:inherit}
.rd26 .fa-solid,.rd26 .fa-regular{line-height:1}

/* ---------------------------------------------------------------- warna nada */
.rd26 .tone-indigo,.rd26-tone-indigo{--t:#4f46e5;--t2:#818cf8;--ts:rgba(79,70,229,.11)}
.rd26 .tone-emerald,.rd26-tone-emerald{--t:#059669;--t2:#34d399;--ts:rgba(5,150,105,.11)}
.rd26 .tone-amber,.rd26-tone-amber{--t:#c2780a;--t2:#fbbf24;--ts:rgba(217,119,6,.12)}
.rd26 .tone-rose,.rd26-tone-rose{--t:#e11d48;--t2:#fb7185;--ts:rgba(225,29,72,.1)}
.rd26 .tone-sky,.rd26-tone-sky{--t:#0284c7;--t2:#38bdf8;--ts:rgba(2,132,199,.11)}
.rd26 .tone-violet,.rd26-tone-violet{--t:#7c3aed;--t2:#a78bfa;--ts:rgba(124,58,237,.11)}
.rd26 .tone-teal,.rd26-tone-teal{--t:#0d9488;--t2:#2dd4bf;--ts:rgba(13,148,136,.11)}
.rd26 .tone-orange,.rd26-tone-orange{--t:#ea580c;--t2:#fb923c;--ts:rgba(234,88,12,.11)}
.rd26 .tone-slate,.rd26-tone-slate{--t:#475569;--t2:#94a3b8;--ts:rgba(71,85,105,.11)}
.rd26 .tone-gold,.rd26-tone-gold{--t:#b7791f;--t2:#f6c453;--ts:rgba(201,154,46,.14)}
.dark .rd26 .tone-indigo{--t:#a5b4fc}.dark .rd26 .tone-emerald{--t:#6ee7b7}.dark .rd26 .tone-amber{--t:#fcd34d}.dark .rd26 .tone-rose{--t:#fda4af}
.dark .rd26 .tone-sky{--t:#7dd3fc}.dark .rd26 .tone-violet{--t:#c4b5fd}.dark .rd26 .tone-teal{--t:#5eead4}.dark .rd26 .tone-orange{--t:#fdba74}
.dark .rd26 .tone-slate{--t:#cbd5e1}.dark .rd26 .tone-gold{--t:#f6d27a}

/* ---------------------------------------------------------------------- hero */
.rd26-hero{position:relative;isolation:isolate;display:flex;align-items:stretch;justify-content:space-between;gap:24px;padding:30px 32px;margin-bottom:22px;border-radius:24px;overflow:hidden;color:#fff;
  background:radial-gradient(120% 140% at 100% 0%,var(--hero-glow,rgba(99,179,237,.35)) 0%,transparent 46%),radial-gradient(80% 120% at 0% 100%,rgba(255,255,255,.08) 0%,transparent 55%),linear-gradient(135deg,rgb(var(--c-primary-700,33 64 106)) 0%,rgb(var(--c-primary-900,22 42 70)) 62%,#0d1a2c 100%);
  box-shadow:0 18px 40px -22px rgb(var(--c-primary-900,22 42 70)/.8)}
.rd26-hero::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cg fill='none' stroke='%23fff' stroke-width='1'%3E%3Cpath d='M32 6l7.5 18.5L58 32l-18.5 7.5L32 58l-7.5-18.5L6 32l18.5-7.5z'/%3E%3Ccircle cx='32' cy='32' r='9'/%3E%3C/g%3E%3C/svg%3E");background-size:64px 64px;-webkit-mask-image:linear-gradient(105deg,transparent 30%,#000 75%);mask-image:linear-gradient(105deg,transparent 30%,#000 75%)}
.rd26-hero::after{content:"";position:absolute;right:-60px;bottom:-90px;width:280px;height:280px;border-radius:50%;z-index:-1;background:radial-gradient(circle,var(--hero-glow,rgba(99,179,237,.35)),transparent 70%);filter:blur(4px)}
.rd26-hero.tone-emerald{--hero-glow:rgba(52,211,153,.38)}.rd26-hero.tone-gold{--hero-glow:rgba(246,196,83,.42)}.rd26-hero.tone-rose{--hero-glow:rgba(251,113,133,.38)}
.rd26-hero.tone-sky{--hero-glow:rgba(56,189,248,.4)}.rd26-hero.tone-violet{--hero-glow:rgba(167,139,250,.42)}.rd26-hero.tone-amber{--hero-glow:rgba(251,191,36,.38)}
.rd26-hero.tone-teal{--hero-glow:rgba(45,212,191,.38)}.rd26-hero.tone-orange{--hero-glow:rgba(251,146,60,.4)}.rd26-hero.tone-indigo{--hero-glow:rgba(129,140,248,.42)}
.rd26-hero-main{min-width:0;display:flex;flex-direction:column;justify-content:center}
.rd26-eyebrow{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);color:#f3e2b3;font-size:10.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;backdrop-filter:blur(6px)}
.rd26-hero h1{color:#fff!important;font-size:clamp(25px,3.1vw,38px);font-weight:800;line-height:1.12;margin:14px 0 8px}
.rd26-hero p{color:rgba(232,240,250,.82)!important;max-width:640px;font-size:14px;line-height:1.7}
.rd26-hero-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.rd26-hero-aside{flex:none;display:flex;align-items:center;justify-content:flex-end}
.rd26-hero-icon{width:104px;height:104px;border-radius:30px;display:grid;place-items:center;font-size:42px;color:#fff;background:linear-gradient(145deg,rgba(255,255,255,.22),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.22);box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 20px 40px -18px rgba(0,0,0,.55);transform:rotate(-6deg)}
.rd26-hero-icon i{transform:rotate(6deg);filter:drop-shadow(0 6px 10px rgba(0,0,0,.25))}
.rd26-clock{min-width:210px;padding:16px 18px;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);text-align:right;backdrop-filter:blur(8px)}
.rd26-clock b{display:block;font:800 30px/1.1 'Plus Jakarta Sans',Inter,sans-serif;letter-spacing:-.03em;color:#fff;font-variant-numeric:tabular-nums}
.rd26-clock span{display:block;font-size:12px;color:rgba(232,240,250,.75);margin-top:6px}
.rd26-hero .rd26-btn{border-color:rgba(255,255,255,.22);background:rgba(255,255,255,.1);color:#fff}
.rd26-hero .rd26-btn:hover{background:rgba(255,255,255,.18)}
.rd26-hero .rd26-btn.is-primary{background:#fff;color:rgb(var(--c-primary-800,27 52 87));border-color:#fff}
.rd26-hero .rd26-btn.is-primary:hover{background:#f1f5fb}

/* ---------------------------------------------------------------- tombol */
.rd26-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:9px 16px;border-radius:12px;border:1px solid var(--line);background:var(--card);color:var(--ink);font-size:13px;font-weight:650;line-height:1.3;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .15s,border-color .15s,transform .15s,box-shadow .15s}
.rd26-btn:hover{background:var(--soft);border-color:rgb(var(--c-primary-300,148 177 214))}
.rd26-btn:active{transform:translateY(1px)}
.rd26-btn:disabled{opacity:.55;cursor:default;transform:none}
.rd26-btn.is-primary{background:linear-gradient(135deg,var(--brand-2),var(--brand));border-color:transparent;color:#fff;box-shadow:0 8px 18px -10px var(--brand)}
.rd26-btn.is-primary:hover{filter:brightness(1.06)}
.rd26-btn.is-soft{background:var(--brand-soft);border-color:transparent;color:var(--brand)}
.dark .rd26-btn.is-soft{color:rgb(var(--c-primary-300,148 177 214))}
.rd26-btn.is-danger{color:#be123c;border-color:rgba(225,29,72,.25);background:rgba(225,29,72,.06)}
.rd26-btn.is-ghost{background:transparent;border-color:transparent}
.rd26-btn.is-sm{min-height:34px;padding:6px 12px;font-size:12px;border-radius:10px}
.rd26-btn:focus-visible,.rd26 [tabindex]:focus-visible,.rd26 input:focus-visible,.rd26 select:focus-visible,.rd26 textarea:focus-visible,.rd26-chip:focus-visible{outline:3px solid rgb(var(--c-primary-400,97 138 188)/.55);outline-offset:2px}

/* ------------------------------------------------------------------ KPI */
.rd26-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-bottom:22px}
.rd26-kpi{position:relative;overflow:hidden;display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:var(--r);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);min-width:0;transition:transform .2s,box-shadow .2s}
.rd26-kpi:hover{transform:translateY(-2px);box-shadow:var(--shadow-lift)}
.rd26-kpi::after{content:"";position:absolute;right:-30px;top:-30px;width:110px;height:110px;border-radius:50%;background:var(--ts,var(--brand-soft));opacity:.7}
.rd26-kpi-icon{position:relative;z-index:1;flex:none;width:46px;height:46px;border-radius:14px;display:grid;place-items:center;font-size:18px;color:#fff;background:linear-gradient(140deg,var(--t2,var(--brand-2)),var(--t,var(--brand)));box-shadow:0 10px 18px -10px var(--t,var(--brand))}
.rd26-kpi-body{position:relative;z-index:1;min-width:0;flex:1}
.rd26-kpi small{display:block;font-size:12px;font-weight:650;color:var(--muted)}
.rd26-kpi strong{display:block;font:800 28px/1.15 'Plus Jakarta Sans',Inter,sans-serif;letter-spacing:-.03em;margin:4px 0 2px;color:var(--ink);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.rd26-kpi strong sub{font-size:14px;font-weight:700;color:var(--muted);vertical-align:baseline;margin-left:2px}
.rd26-kpi-note{display:block;font-size:11.5px;color:var(--muted);line-height:1.5}
.rd26-meter{height:7px;border-radius:99px;background:var(--soft-2);overflow:hidden;margin-top:10px}
.rd26-meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--t,var(--brand)),var(--t2,var(--brand-2)));transition:width .8s cubic-bezier(.2,.8,.2,1)}

/* ---------------------------------------------------------------- panel */
.rd26-panel{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:20px 22px;margin-bottom:20px;min-width:0}
.rd26-panel-head{display:flex;align-items:center;gap:12px;margin-bottom:16px;flex-wrap:wrap}
.rd26-panel-head>.rd26-ico{flex:none}
.rd26-panel-head h2{font-size:17px;font-weight:750;color:var(--ink)}
.rd26-panel-head p{font-size:12px;color:var(--muted);margin-top:2px}
.rd26-panel-head>div{flex:1;min-width:160px}
.rd26-panel-head>.rd26-actions{flex:none;min-width:0;display:flex;gap:8px;flex-wrap:wrap}
.rd26-ico{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;font-size:15px;color:var(--t,var(--brand));background:var(--ts,var(--brand-soft))}
.rd26-grid-2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.15fr);gap:20px}
.rd26-grid-2>.rd26-panel{margin-bottom:0}
.rd26-stack{display:grid;gap:20px;margin-bottom:20px}
.rd26-note{font-size:12px;color:var(--muted);line-height:1.7;margin-top:12px}
.rd26-period{display:inline-flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);margin:0 0 14px;padding:6px 12px;border-radius:999px;background:var(--soft);border:1px solid var(--line)}
.rd26-notice{display:flex;gap:12px;align-items:flex-start;padding:14px 16px;border-radius:14px;margin-bottom:18px;font-size:13px;line-height:1.65;background:rgba(201,154,46,.1);border:1px solid rgba(201,154,46,.3);color:#7a5a17}
.rd26-notice>i{margin-top:3px;color:#b7791f}
.rd26-notice.is-info{background:var(--brand-soft);border-color:rgb(var(--c-primary-300,148 177 214)/.6);color:rgb(var(--c-primary-800,27 52 87))}
.rd26-notice.is-info>i{color:var(--brand)}
.dark .rd26-notice{color:#f3dfa8;background:rgba(201,154,46,.12)}.dark .rd26-notice.is-info{color:#d6e4f5}

/* ---------------------------------------------------------- filter & chip */
.rd26-filters{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);padding:16px 18px;margin-bottom:20px}
.rd26-filter-row{display:flex;flex-wrap:wrap;gap:12px;align-items:flex-end}
.rd26-filter-row+.rd26-filter-row{margin-top:12px;padding-top:12px;border-top:1px dashed var(--line)}
.rd26-field{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:650;color:var(--muted);min-width:140px;flex:1}
.rd26-field.is-wide{flex:2;min-width:220px}
.rd26-field.is-narrow{flex:0 1 150px;min-width:120px}
.rd26 input:not([type=checkbox]):not([type=radio]):not([type=file]),.rd26 select,.rd26 textarea,.rd26-form input:not([type=checkbox]):not([type=radio]):not([type=file]),.rd26-form select,.rd26-form textarea{width:100%;min-width:0;min-height:42px;padding:9px 12px;border-radius:11px;border:1px solid var(--line);background:var(--soft);color:var(--ink);font:inherit;font-size:13.5px;font-weight:500;transition:border-color .15s,background .15s,box-shadow .15s}
.rd26 input:focus,.rd26 select:focus,.rd26 textarea:focus,.rd26-form input:focus,.rd26-form select:focus,.rd26-form textarea:focus{border-color:rgb(var(--c-primary-400,97 138 188));background:var(--card);box-shadow:0 0 0 4px rgb(var(--c-primary-400,97 138 188)/.15);outline:none}
.rd26-search{position:relative}
.rd26-search>i{position:absolute;left:13px;bottom:14px;font-size:13px;color:var(--muted);pointer-events:none}
.rd26-search input{padding-left:36px!important}
.rd26-chips{display:flex;gap:8px;flex-wrap:wrap}
.rd26-chips.is-scroll{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}
.rd26-chips.is-scroll::-webkit-scrollbar{display:none}
.rd26-chip{display:inline-flex;align-items:center;gap:8px;flex:none;min-height:38px;padding:7px 14px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--muted);font-size:12.5px;font-weight:650;cursor:pointer;transition:all .15s}
.rd26-chip:hover{border-color:rgb(var(--c-primary-300,148 177 214));color:var(--ink)}
.rd26-chip b{min-width:22px;height:20px;padding:0 6px;border-radius:99px;display:inline-grid;place-items:center;font-size:11px;background:var(--soft-2);color:var(--muted)}
.rd26-chip[aria-pressed=true],.rd26-chip[aria-selected=true]{background:var(--ink);border-color:var(--ink);color:var(--card)}
.dark .rd26-chip[aria-pressed=true],.dark .rd26-chip[aria-selected=true]{background:#e7edf5;color:#0f1a2a;border-color:#e7edf5}
.rd26-chip[aria-pressed=true] b,.rd26-chip[aria-selected=true] b{background:rgba(255,255,255,.2);color:inherit}
.rd26-chip>i{font-size:12px}
.rd26-tabs{display:flex;gap:6px;padding:6px;border-radius:16px;background:var(--soft);border:1px solid var(--line);margin-bottom:18px;width:fit-content;max-width:100%;overflow-x:auto;scrollbar-width:none}
.rd26-tabs::-webkit-scrollbar{display:none}
.rd26-tab{display:inline-flex;align-items:center;gap:9px;flex:none;min-height:42px;padding:8px 16px;border:0;border-radius:11px;background:transparent;color:var(--muted);font-size:13px;font-weight:700;cursor:pointer;transition:all .18s}
.rd26-tab:hover{color:var(--ink)}
.rd26-tab[aria-selected=true]{background:var(--card);color:var(--ink);box-shadow:0 2px 10px -4px rgba(16,24,40,.25)}
.rd26-tab[aria-selected=true]>i{color:var(--t,var(--brand))}
.rd26-tab b{font-size:11px;padding:1px 7px;border-radius:99px;background:var(--soft-2);color:var(--muted)}

/* --------------------------------------------------------- status & pill */
.rd26-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:11.5px;font-weight:700;line-height:1.35;color:var(--t,var(--muted));background:var(--ts,var(--soft-2));white-space:nowrap}
.rd26-pill::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;flex:none}
.rd26-pill.no-dot::before{display:none}
.rd26-tag{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:8px;font-size:11.5px;font-weight:600;color:var(--muted);background:var(--soft);border:1px solid var(--line);white-space:nowrap}
.rd26-tag>i{font-size:10.5px}

/* ---------------------------------------------------------------- avatar */
.rd26-avatar{flex:none;width:var(--s,40px);height:var(--s,40px);border-radius:calc(var(--s,40px)*.34);display:grid;place-items:center;color:#fff;font:800 calc(var(--s,40px)*.38)/1 'Plus Jakarta Sans',Inter,sans-serif;background:linear-gradient(140deg,var(--a1,#60a5fa),var(--a2,#4f46e5));box-shadow:inset 0 -2px 0 rgba(0,0,0,.12);text-transform:uppercase;letter-spacing:-.02em}

/* ------------------------------------------------------------------ list */
.rd26-list{display:flex;flex-direction:column;gap:8px}
.rd26-row{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:14px;border:1px solid var(--line-2);background:var(--card);min-width:0;transition:background .15s,border-color .15s}
.rd26-row:hover{background:var(--soft);border-color:var(--line)}
.rd26-row-main{flex:1;min-width:0}
.rd26-row-main b{display:block;font-size:13.5px;font-weight:700;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rd26-row-main small{display:block;font-size:11.5px;color:var(--muted);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rd26-row-value{flex:none;text-align:right}
.rd26-row-value b{display:block;font:800 17px/1.1 'Plus Jakarta Sans',Inter,sans-serif;color:var(--ink);font-variant-numeric:tabular-nums}
.rd26-row-value small{font-size:11px;color:var(--muted)}
.rd26-rank{flex:none;width:34px;height:34px;border-radius:11px;display:grid;place-items:center;font:800 13px/1 'Plus Jakarta Sans',Inter,sans-serif;color:var(--muted);background:var(--soft)}
.rd26-rank.r1{color:#7a5208;background:linear-gradient(140deg,#fde68a,#f2b632)}.rd26-rank.r2{color:#334155;background:linear-gradient(140deg,#f1f5f9,#b9c3cf)}.rd26-rank.r3{color:#6b3a12;background:linear-gradient(140deg,#fcd9b6,#d58a4a)}
.rd26-row.is-me{border-color:rgb(var(--c-primary-400,97 138 188)/.6);background:var(--brand-soft);box-shadow:inset 3px 0 0 var(--brand)}
.rd26-link{border:0;background:none;padding:0;color:inherit;font:inherit;text-align:left;cursor:pointer;min-width:0}
.rd26-link:hover b{color:var(--brand)}

/* ----------------------------------------------------------------- table */
.rd26-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px}
.rd26 table{width:100%;border-collapse:collapse;font-size:13px;min-width:520px}
.rd26 th{position:sticky;top:0;background:var(--soft);color:var(--muted);font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.06em;text-align:left;padding:11px 14px;white-space:nowrap;border-bottom:1px solid var(--line)}
.rd26 td{padding:12px 14px;border-bottom:1px solid var(--line-2);vertical-align:middle}
.rd26 tr:last-child td{border-bottom:0}
.rd26 tbody tr:hover td{background:var(--soft)}

/* ------------------------------------------------------- donut & batang */
.rd26-donut-wrap{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.rd26-donut{--p:0;position:relative;flex:none;width:168px;height:168px;border-radius:50%;background:var(--donut,conic-gradient(var(--line) 0 100%));display:grid;place-items:center}
.rd26-donut::before{content:"";position:absolute;inset:18px;border-radius:50%;background:var(--card);box-shadow:inset 0 2px 6px rgba(16,24,40,.06)}
.rd26-donut>div{position:relative;text-align:center}
.rd26-donut b{display:block;font:800 30px/1 'Plus Jakarta Sans',Inter,sans-serif;letter-spacing:-.03em;color:var(--ink)}
.rd26-donut small{display:block;font-size:11px;color:var(--muted);margin-top:5px}
.rd26-legend{flex:1;min-width:200px;display:grid;gap:9px}
.rd26-legend-row{display:grid;grid-template-columns:12px minmax(0,1fr) auto;gap:10px;align-items:center;font-size:13px}
.rd26-legend-row>i{width:12px;height:12px;border-radius:4px;background:var(--c)}
.rd26-legend-row span{text-transform:capitalize;color:var(--ink);font-weight:600}
.rd26-legend-row b{font-variant-numeric:tabular-nums}
.rd26-legend-row em{font-style:normal;color:var(--muted);font-size:11.5px;margin-left:6px;font-weight:500}
.rd26-bars{display:grid;gap:12px}
.rd26-bar{display:grid;grid-template-columns:minmax(90px,30%) minmax(0,1fr) auto;gap:12px;align-items:center;font-size:12.5px}
.rd26-bar>span{font-weight:650;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rd26-bar>div{height:10px;border-radius:99px;background:var(--soft-2);overflow:hidden}
.rd26-bar>div>i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--t,var(--brand)),var(--t2,var(--brand-2)))}
.rd26-bar>b{font-variant-numeric:tabular-nums;min-width:38px;text-align:right}

/* ---------------------------------------------------------------- podium */
.rd26-podium{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;gap:14px;margin:6px 0 22px}
.rd26-podium-item{position:relative;text-align:center;padding:22px 14px 16px;border-radius:22px 22px 16px 16px;background:linear-gradient(180deg,var(--pc1),var(--pc2));border:1px solid var(--pb);box-shadow:var(--shadow);min-width:0;animation:rd26-rise .6s cubic-bezier(.2,.8,.2,1) both}
.rd26-podium-item.p1{--pc1:#fff9e6;--pc2:#fdecc0;--pb:#efcf7a;padding-top:30px;min-height:236px;order:2;animation-delay:.05s}
.rd26-podium-item.p2{--pc1:#f8fafc;--pc2:#e5eaf1;--pb:#cbd5e1;min-height:206px;order:1;animation-delay:.15s}
.rd26-podium-item.p3{--pc1:#fff6ee;--pc2:#fbe1cb;--pb:#e9b48a;min-height:190px;order:3;animation-delay:.25s}
.dark .rd26-podium-item.p1{--pc1:#3a3220;--pc2:#2b2618;--pb:#8a7334}.dark .rd26-podium-item.p2{--pc1:#2a3342;--pc2:#212937;--pb:#4b5a70}.dark .rd26-podium-item.p3{--pc1:#3a2a20;--pc2:#2a2019;--pb:#7d5536}
.rd26-podium-item .rd26-avatar{margin:0 auto 10px;--s:58px;box-shadow:0 0 0 4px var(--card),0 10px 20px -10px rgba(0,0,0,.4)}
.rd26-podium-item.p1 .rd26-avatar{--s:70px}
.rd26-crown{position:absolute;top:-16px;left:50%;transform:translateX(-50%);font-size:26px;color:#e5a913;filter:drop-shadow(0 4px 6px rgba(201,154,46,.45))}
.rd26-medal{display:inline-grid;place-items:center;min-width:30px;height:24px;padding:0 8px;border-radius:99px;font:800 12px/1 'Plus Jakarta Sans',Inter,sans-serif;margin-bottom:8px;color:#5b4210;background:rgba(255,255,255,.75)}
.dark .rd26-medal{background:rgba(0,0,0,.25);color:#f8e7b4}
.rd26-podium-item h3{font-size:14px;font-weight:750;line-height:1.3;color:var(--ink);overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.rd26-podium-item p{font-size:11.5px;color:var(--muted);margin:3px 0 10px}
.rd26-podium-item strong{display:block;font:800 24px/1 'Plus Jakarta Sans',Inter,sans-serif;color:var(--ink);font-variant-numeric:tabular-nums}
.rd26-podium-item strong small{font-size:11px;font-weight:650;color:var(--muted);margin-left:3px}
.rd26-podium-item.is-me{box-shadow:0 0 0 3px var(--brand),var(--shadow)}

/* -------------------------------------------------------- posisi ananda */
.rd26-me{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px;align-items:center;padding:20px 22px;margin-bottom:20px;border-radius:var(--r);color:#fff;background:linear-gradient(120deg,rgb(var(--c-primary-600,41 80 131)),rgb(var(--c-primary-800,27 52 87)));box-shadow:0 18px 34px -22px rgb(var(--c-primary-900,22 42 70))}
.rd26-me-rank{width:86px;height:86px;border-radius:24px;display:grid;place-items:center;text-align:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.2)}
.rd26-me-rank b{display:block;font:800 30px/1 'Plus Jakarta Sans',Inter,sans-serif}
.rd26-me-rank small{display:block;font-size:10.5px;opacity:.8;margin-top:4px}
.rd26-me h3{font-size:18px;color:#fff;font-weight:800}
.rd26-me p{font-size:13px;color:rgba(232,240,250,.85);margin-top:4px}
.rd26-me .rd26-meter{background:rgba(255,255,255,.15);margin-top:12px}
.rd26-me .rd26-meter i{background:linear-gradient(90deg,#fde68a,#f6c453)}
.rd26-me-score{text-align:right}
.rd26-me-score b{display:block;font:800 34px/1 'Plus Jakarta Sans',Inter,sans-serif}
.rd26-me-score small{font-size:12px;opacity:.85}

/* ------------------------------------------------------------ kartu umum */
.rd26-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}
.rd26-card{position:relative;display:flex;flex-direction:column;gap:12px;padding:18px;border-radius:var(--r);background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);min-width:0;overflow:hidden;transition:transform .2s,box-shadow .2s,border-color .2s;animation:rd26-rise .45s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i,0)*35ms)}
.rd26-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift);border-color:rgb(var(--c-primary-300,148 177 214)/.7)}
.rd26-card.has-stripe::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--t2,var(--brand-2)),var(--t,var(--brand)))}
.rd26-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.rd26-card h3{font-size:15.5px;font-weight:750;line-height:1.35;color:var(--ink);overflow-wrap:anywhere}
.rd26-card-text{font-size:13px;color:var(--muted);line-height:1.6;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}
.rd26-card-person{display:flex;align-items:center;gap:10px;min-width:0}
.rd26-card-person b{display:block;font-size:13px;font-weight:700;color:var(--ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rd26-card-person small{display:block;font-size:11.5px;color:var(--muted)}
.rd26-card-meta{display:flex;flex-wrap:wrap;gap:6px}
.rd26-card-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:auto;padding-top:12px;border-top:1px dashed var(--line)}
.rd26-card-foot small{font-size:11.5px;color:var(--muted)}
.rd26-card-media{position:relative;margin:-18px -18px 0;height:150px;background:linear-gradient(135deg,var(--ts,var(--soft)),var(--soft-2));display:grid;place-items:center;overflow:hidden}
.rd26-card-media>i{font-size:40px;color:var(--t,var(--muted));opacity:.75}
.rd26-card-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .35s}
.rd26-card-media img.is-ready{opacity:1}
.rd26-card-media .rd26-pill{position:absolute;left:12px;top:12px;background:var(--card);box-shadow:0 4px 12px -6px rgba(0,0,0,.35)}

/* ----------------------------------------------------------------- stepper */
.rd26-steps{display:flex;align-items:flex-start;gap:0;margin:4px 0 2px;overflow-x:auto;scrollbar-width:none}
.rd26-step{flex:1;min-width:74px;display:flex;flex-direction:column;align-items:center;gap:6px;position:relative;text-align:center;font-size:11px;font-weight:650;color:var(--muted);border:0;background:none;padding:0;cursor:default}
.rd26-step::before{content:"";position:absolute;top:13px;left:-50%;right:50%;height:3px;background:var(--line);z-index:0}
.rd26-step:first-child::before{display:none}
.rd26-step>i{position:relative;z-index:1;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font-size:12px;background:var(--soft-2);color:var(--muted);border:2px solid var(--card);box-shadow:0 0 0 1px var(--line)}
.rd26-step.is-done>i{background:var(--t,var(--brand));color:#fff;box-shadow:none}
.rd26-step.is-done::before,.rd26-step.is-current::before{background:var(--t,var(--brand))}
.rd26-step.is-current>i{background:var(--card);color:var(--t,var(--brand));box-shadow:0 0 0 3px var(--t,var(--brand))}
.rd26-step.is-current{color:var(--ink)}
button.rd26-step{cursor:pointer}
button.rd26-step:hover>i{transform:scale(1.08)}

/* -------------------------------------------------------------- timeline */
.rd26-timeline{position:relative;display:grid;gap:14px;padding-left:24px}
.rd26-timeline::before{content:"";position:absolute;left:7px;top:6px;bottom:6px;width:2px;background:var(--line);border-radius:2px}
.rd26-tl{position:relative;font-size:13px}
.rd26-tl::before{content:"";position:absolute;left:-22px;top:4px;width:12px;height:12px;border-radius:50%;background:var(--card);border:3px solid var(--t,var(--brand))}
.rd26-tl b{font-weight:700;color:var(--ink)}
.rd26-tl p{color:var(--muted);margin-top:2px;line-height:1.6;overflow-wrap:anywhere}
.rd26-tl small{display:block;font-size:11px;color:var(--muted);margin-top:3px}

/* ------------------------------------------------------- kosong & muat */
.rd26-empty{display:flex;flex-direction:column;align-items:center;text-align:center;gap:10px;padding:42px 20px;border-radius:var(--r);border:1.5px dashed var(--line);background:var(--soft)}
.rd26-empty>span{width:64px;height:64px;border-radius:20px;display:grid;place-items:center;font-size:26px;color:var(--t,var(--brand));background:var(--ts,var(--brand-soft))}
.rd26-empty b{font-size:15px;color:var(--ink)}
.rd26-empty p{font-size:13px;color:var(--muted);max-width:420px;line-height:1.6}
.rd26-skel{border-radius:var(--r);background:linear-gradient(90deg,var(--soft) 25%,var(--soft-2) 50%,var(--soft) 75%);background-size:200% 100%;animation:rd26-shimmer 1.3s linear infinite}
.rd26-skel-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px}
.rd26-error{display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:var(--r);border:1px solid rgba(225,29,72,.25);background:rgba(225,29,72,.05)}
.rd26-error>i{font-size:20px;color:#e11d48;margin-top:2px}
.rd26-error b{display:block;color:#be123c}
.rd26-error p{font-size:13px;color:var(--muted);margin:4px 0 12px}
.rd26-pager{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px;font-size:12px;color:var(--muted)}

/* ------------------------------------------------------- lencana level */
.rd26-level{flex:none;position:relative;width:44px;height:48px;display:grid;place-items:center;color:#fff;font:800 14px/1 'Plus Jakarta Sans',Inter,sans-serif;background:linear-gradient(150deg,#a78bfa,#6d28d9);clip-path:polygon(50% 0,100% 25%,100% 75%,50% 100%,0 75%,0 25%)}
.rd26-level small{position:absolute;bottom:7px;font-size:7px;letter-spacing:.08em;opacity:.85}
.rd26-xpbar{min-width:120px;flex:1}
.rd26-xpbar small{display:flex;justify-content:space-between;font-size:11px;color:var(--muted);margin-bottom:4px}

/* ------------------------------------------------------- ring nilai */
.rd26-score{--v:0;--c:#e11d48;position:relative;flex:none;width:76px;height:76px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--c) calc(var(--v)*1%),var(--soft-2) 0)}
.rd26-score::before{content:"";position:absolute;inset:7px;border-radius:50%;background:var(--card)}
.rd26-score>div{position:relative;text-align:center}
.rd26-score b{display:block;font:800 21px/1 'Plus Jakarta Sans',Inter,sans-serif;color:var(--ink)}
.rd26-score small{display:block;font-size:9.5px;font-weight:700;color:var(--muted);margin-top:3px}
.rd26-score.is-pass{--c:#059669}
.rd26-delta{display:inline-flex;align-items:center;gap:8px;font:800 18px/1 'Plus Jakarta Sans',Inter,sans-serif}
.rd26-delta i{font-size:12px;color:var(--muted)}
.rd26-delta em{font-style:normal;font-size:11.5px;padding:3px 8px;border-radius:99px;background:rgba(5,150,105,.12);color:#047857}
.rd26-delta em.is-down{background:rgba(225,29,72,.1);color:#be123c}

/* ------------------------------------------------------- dokumentasi */
.rd26-day{margin-bottom:22px}
.rd26-day-head{position:sticky;top:0;z-index:2;display:flex;align-items:center;gap:12px;padding:10px 0;margin-bottom:6px;background:linear-gradient(180deg,rgb(var(--canvas,243 242 239)) 70%,transparent)}
.rd26-day-date{flex:none;width:54px;height:58px;border-radius:16px;display:grid;place-items:center;text-align:center;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow)}
.rd26-day-date b{display:block;font:800 21px/1 'Plus Jakarta Sans',Inter,sans-serif;color:var(--ink)}
.rd26-day-date small{display:block;font-size:10px;font-weight:750;text-transform:uppercase;color:#e11d48;margin-top:3px;letter-spacing:.06em}
.rd26-day-head h3{font-size:15px;font-weight:750;color:var(--ink)}
.rd26-day-head p{font-size:12px;color:var(--muted)}
.rd26-sessions{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px;padding-left:66px}
.rd26-session{display:flex;flex-direction:column;border-radius:var(--r);overflow:hidden;background:var(--card);border:1px solid var(--line);box-shadow:var(--shadow);transition:transform .2s,box-shadow .2s;animation:rd26-rise .45s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i,0)*35ms);text-align:left;cursor:pointer;padding:0;color:inherit;font:inherit}
.rd26-session:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift)}
.rd26-session-photos{display:grid;grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr;gap:3px;height:150px;background:var(--soft-2)}
.rd26-session-photos img{width:100%;height:100%;object-fit:cover;display:block;background:var(--soft-2)}
.rd26-session-photos img:first-child{grid-row:span 2}
.rd26-session-photos.n1 img:first-child{grid-column:span 2}
.rd26-session-photos .more{position:relative}
.rd26-session-photos .more span{position:absolute;inset:0;display:grid;place-items:center;background:rgba(10,16,27,.55);color:#fff;font-weight:800;font-size:18px}
.rd26-session-empty{height:150px;display:grid;place-items:center;text-align:center;gap:6px;background:repeating-linear-gradient(135deg,var(--soft),var(--soft) 10px,var(--soft-2) 10px,var(--soft-2) 20px);color:var(--muted);font-size:12px;font-weight:650}
.rd26-session-empty i{font-size:26px;color:#e11d48;opacity:.7;display:block;margin-bottom:6px}
.rd26-session-body{padding:14px 16px;display:flex;flex-direction:column;gap:8px}
.rd26-session-body h4{font:750 15px/1.3 'Plus Jakarta Sans',Inter,sans-serif;color:var(--ink)}
.rd26-session-body .rd26-card-meta{gap:6px}

/* ----------------------------------------------------- formulir modal */
.rd26-form{display:grid;gap:14px;color:var(--ink);font-size:14px}
.rd26-form label.rd26-field{color:var(--muted);flex:none;min-width:0}
.rd26-form .rd26-form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}
.rd26-form textarea{min-height:90px;resize:vertical;line-height:1.55}
.rd26-form .rd26-hint{font-size:12px;color:var(--muted);line-height:1.6}
.rd26-form [role=alert]{color:#be123c;font-size:13px;font-weight:600}
.rd26-form [role=alert]:empty{display:none}
.rd26-catgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));gap:8px}
.rd26-cat{display:flex;flex-direction:column;align-items:center;gap:7px;padding:12px 8px;border-radius:14px;border:1.5px solid var(--line);background:var(--card);color:var(--muted);font-size:11.5px;font-weight:650;text-align:center;cursor:pointer;transition:all .15s}
.rd26-cat i{width:36px;height:36px;border-radius:11px;display:grid;place-items:center;font-size:15px;color:var(--t,var(--brand));background:var(--ts,var(--brand-soft))}
.rd26-cat:hover{border-color:rgb(var(--c-primary-300,148 177 214))}
.rd26-cat[aria-pressed=true]{border-color:var(--brand);color:var(--ink);background:var(--brand-soft);box-shadow:0 0 0 3px rgb(var(--c-primary-400,97 138 188)/.18)}
.rd26-photo-pick{position:relative;display:flex;align-items:center;gap:14px;padding:14px;border-radius:16px;border:1.5px dashed var(--line);background:var(--soft)}
.rd26-photo-pick .rd26-thumb{flex:none;width:84px;height:84px;border-radius:14px;overflow:hidden;display:grid;place-items:center;background:var(--soft-2);color:var(--muted);font-size:24px}
.rd26-photo-pick .rd26-thumb img{width:100%;height:100%;object-fit:cover}
.rd26-photo-pick>div{flex:1;min-width:0;display:grid;gap:8px}
.rd26-photo-pick b{font-size:13px}
.rd26-photo-pick small{font-size:11.5px;color:var(--muted)}
.rd26-photo-pick .rd26-actions{display:flex;flex-wrap:wrap;gap:8px}
.rd26-file{position:relative;overflow:hidden}
.rd26-file input{position:absolute;inset:0;opacity:0;cursor:pointer;width:100%}
.rd26-file:has(input:disabled),[aria-disabled=true]>.rd26-file{opacity:.5;pointer-events:none}
/* Banyak foto (Cek Kamar): kisi pratinjau dengan tombol hapus per foto. */
.rd26-foto-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(72px,1fr));gap:8px}
.rd26-foto-grid:empty{display:none}
.rd26-foto-mini{position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden;background:var(--soft-2)}
.rd26-foto-mini img{width:100%;height:100%;object-fit:cover;display:block}
.rd26-foto-mini button{position:absolute;top:4px;right:4px;width:26px;height:26px;border-radius:50%;border:0;display:grid;place-items:center;background:rgba(15,23,42,.72);color:#fff;font-size:12px;cursor:pointer}
/* Kotak unggah Belajar Malam: dua tombol sumber foto. */
.v14-unggah.rd26-sumber-foto{cursor:default}
.v14-unggah .rd26{margin-top:6px}
.v14-unggah .rd26-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.v14-unggah .rd26-btn i{font-size:13px;color:inherit}
.rd26-switch{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:14px;background:var(--soft);border:1px solid var(--line);cursor:pointer}
.rd26-switch input{appearance:none;-webkit-appearance:none;flex:none;width:42px;height:24px;border-radius:99px;background:#cbd5e1;position:relative;cursor:pointer;transition:background .2s;margin:0}
.rd26-switch input::after{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .2s}
.rd26-switch input:checked{background:var(--brand)}
.rd26-switch input:checked::after{transform:translateX(18px)}
.rd26-switch b{display:block;font-size:13px;color:var(--ink)}
.rd26-switch small{display:block;font-size:11.5px;color:var(--muted)}
.rd26-seg{display:inline-flex;padding:4px;border-radius:12px;background:var(--soft);border:1px solid var(--line);gap:4px;flex-wrap:wrap}
.rd26-seg button{border:0;background:transparent;padding:8px 14px;border-radius:9px;font-size:12.5px;font-weight:650;color:var(--muted);cursor:pointer;min-height:36px}
.rd26-seg button[aria-pressed=true]{background:var(--card);color:var(--ink);box-shadow:0 2px 8px -4px rgba(16,24,40,.3)}
.rd26-items{display:grid;gap:10px}
.rd26-item-row{display:grid;grid-template-columns:minmax(0,1.6fr) 74px minmax(0,1fr) minmax(0,1.2fr) 40px;gap:8px;align-items:center}
.rd26-item-row button{width:40px;height:40px;border-radius:11px;border:1px solid var(--line);background:var(--card);color:#be123c;cursor:pointer}
.rd26-detail{display:grid;gap:16px;color:var(--ink);font-size:14px}
.rd26-detail-media{position:relative;height:240px;border-radius:16px;overflow:hidden;background:linear-gradient(135deg,var(--ts,var(--soft)),var(--soft-2));display:grid;place-items:center}
.rd26-detail-media>i{font-size:54px;color:var(--t,var(--muted));opacity:.7}
.rd26-detail-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#0b1220;opacity:0;transition:opacity .3s}
.rd26-detail-media img.is-ready{opacity:1}
.rd26-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}
.rd26-detail>.rd26-card-person{flex-wrap:wrap;row-gap:8px}
.rd26-detail table{min-width:0}
.rd26-fact{padding:12px 14px;border-radius:14px;background:var(--soft);border:1px solid var(--line-2)}
.rd26-fact small{display:flex;align-items:center;gap:7px;font-size:11px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.05em}
.rd26-fact b{display:block;margin-top:4px;font-size:13.5px;font-weight:650;color:var(--ink);overflow-wrap:anywhere}
.rd26-detail-title{font:800 21px/1.25 'Plus Jakarta Sans',Inter,sans-serif;margin-top:10px;color:var(--ink);overflow-wrap:anywhere}
.rd26-section-title{font:750 14px/1.3 'Plus Jakarta Sans',Inter,sans-serif;color:var(--ink);display:flex;align-items:center;gap:8px}
.rd26-actionbox{display:grid;gap:10px;padding:14px;border-radius:16px;background:var(--soft);border:1px solid var(--line)}

/* ------------------------------------------------------- animasi */
@keyframes rd26-rise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes rd26-shimmer{to{background-position:-200% 0}}
.rd26-rise{animation:rd26-rise .5s cubic-bezier(.2,.8,.2,1) both;animation-delay:calc(var(--i,0)*45ms)}
/* Animasi dimatikan pada mode ringan / kurangi gerak. Reveal bawaan aplikasi
   ([data-reveal], opacity awal 0) wajib langsung terlihat agar tidak tertahan. */
[data-ringan="1"] .rd26 *,[data-ringan="1"] .rd26-podium-item{animation:none!important;transition:none!important}
[data-ringan="1"] .rd26[data-reveal],[data-ringan="1"] .rd26 [data-reveal]{opacity:1!important;transform:none!important}
@media (prefers-reduced-motion:reduce){.rd26 *{animation:none!important;transition:none!important}.rd26[data-reveal],.rd26 [data-reveal]{opacity:1!important;transform:none!important}}

/* ------------------------------------------------------- responsif */
@media (max-width:1100px){.rd26-grid-2{grid-template-columns:1fr}}
@media (max-width:760px){
  .rd26-hero{flex-direction:column;padding:24px 20px;border-radius:20px;gap:18px}
  .rd26-hero-aside{justify-content:flex-start}
  .rd26-hero-icon{display:none}
  .rd26-clock{text-align:left;min-width:0;width:100%;display:flex;align-items:baseline;justify-content:space-between;gap:10px}
  .rd26-clock b{font-size:24px}.rd26-clock span{margin:0}
  .rd26-kpis{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .rd26-kpi{flex-direction:column;gap:10px;padding:14px}
  .rd26-kpi-icon{width:38px;height:38px;border-radius:12px;font-size:15px}
  .rd26-kpi strong{font-size:23px}
  .rd26-panel{padding:16px 14px}
  .rd26-filters{padding:14px}
  .rd26-field,.rd26-field.is-narrow{flex:1 1 140px;min-width:0}
  .rd26-field.is-wide{flex:1 1 100%;min-width:0}
  .rd26-filter-row>.rd26-btn{flex:1 1 auto}
  .rd26-tab{padding:8px 12px;font-size:12.5px}
  .rd26-podium{gap:8px}
  .rd26-podium-item{padding:18px 8px 12px}.rd26-podium-item.p1{min-height:200px}.rd26-podium-item.p2{min-height:176px}.rd26-podium-item.p3{min-height:162px}
  .rd26-podium-item .rd26-avatar{--s:44px}.rd26-podium-item.p1 .rd26-avatar{--s:54px}
  .rd26-podium-item h3{font-size:12px}.rd26-podium-item strong{font-size:18px}
  .rd26-me{grid-template-columns:auto minmax(0,1fr);gap:14px;padding:16px}
  .rd26-me-rank{width:68px;height:68px;border-radius:20px}.rd26-me-rank b{font-size:24px}
  .rd26-me-score{grid-column:1/-1;text-align:left;display:flex;align-items:baseline;gap:8px}
  .rd26-sessions{padding-left:0;grid-template-columns:1fr}
  .rd26-cards{grid-template-columns:1fr}
  .rd26-item-row{grid-template-columns:minmax(0,1fr) 64px 40px;}
  .rd26-item-row input:nth-child(3),.rd26-item-row input:nth-child(4){grid-column:span 1}
  .rd26-item-row .rd26-item-extra{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .rd26-tabs{width:100%}
  .rd26-tab{flex:1;justify-content:center;padding:8px 10px}
  .rd26-donut{width:140px;height:140px}
  .rd26 input:not([type=checkbox]):not([type=radio]):not([type=file]),.rd26 select,.rd26 textarea,.rd26-form input:not([type=checkbox]):not([type=radio]):not([type=file]),.rd26-form select,.rd26-form textarea{font-size:16px}
}
@media (max-width:420px){.rd26-kpis{grid-template-columns:1fr 1fr}.rd26-kpi strong{font-size:20px}.rd26-bar{grid-template-columns:80px minmax(0,1fr) auto}}

/* =====================================================================
   PENYEGARAN EDITOR LANDING PAGE (.lp-editor) — hanya tampilan.
   ===================================================================== */
.lp-editor{--le-ink:#13233a;--le-muted:#617086;--le-border:#e3e7ee;--le-card:#fff;--le-soft:#f5f7fa;font-size:14px}
.dark .lp-editor{--le-ink:#e7edf5;--le-muted:#9babbe;--le-border:rgba(255,255,255,.08);--le-card:#152132;--le-soft:#1a283b}
.lp-editor-hero{position:relative;isolation:isolate;overflow:hidden;padding:32px 34px!important;border-radius:24px!important;background:radial-gradient(120% 140% at 100% 0%,rgba(246,196,83,.32) 0%,transparent 46%),linear-gradient(135deg,rgb(var(--c-primary-700,33 64 106)),rgb(var(--c-primary-900,22 42 70)) 62%,#0d1a2c)!important;box-shadow:0 18px 40px -22px rgb(var(--c-primary-900,22 42 70)/.8)}
.lp-editor-hero::before{content:"";position:absolute;inset:0;z-index:-1;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='64' height='64' viewBox='0 0 64 64'%3E%3Cg fill='none' stroke='%23fff' stroke-width='1'%3E%3Cpath d='M32 6l7.5 18.5L58 32l-18.5 7.5L32 58l-7.5-18.5L6 32l18.5-7.5z'/%3E%3Ccircle cx='32' cy='32' r='9'/%3E%3C/g%3E%3C/svg%3E");background-size:64px;-webkit-mask-image:linear-gradient(105deg,transparent 30%,#000 75%);mask-image:linear-gradient(105deg,transparent 30%,#000 75%)}
.lp-editor-hero::after{content:"\f1fc";font:900 40px/1 "Font Awesome 6 Free";position:absolute;right:34px;top:50%;transform:translateY(-50%) rotate(-6deg);width:96px;height:96px;display:grid;place-items:center;border-radius:28px;color:#fff;background:linear-gradient(145deg,rgba(255,255,255,.22),rgba(255,255,255,.05));border:1px solid rgba(255,255,255,.22)}
.lp-editor-hero>span{display:inline-flex;padding:6px 12px;border-radius:999px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);color:#f3e2b3!important;font-size:10.5px!important;font-weight:700;letter-spacing:.14em!important}
.lp-editor-hero h2{font:800 clamp(25px,3vw,36px)/1.15 'Plus Jakarta Sans',Inter,sans-serif!important;margin:14px 0 8px!important;letter-spacing:-.02em}
.lp-editor-hero p{font-size:14px!important;color:rgba(232,240,250,.82)!important;max-width:560px}
.lp-editor-tabs{padding:6px!important;border-radius:16px!important;gap:6px!important}
.lp-editor-tabs button{font-size:13px!important;font-weight:700!important;padding:10px 18px!important;border-radius:11px!important;display:inline-flex;align-items:center;gap:9px}
.lp-editor-tabs button::before{font:900 13px/1 "Font Awesome 6 Free";color:rgb(var(--c-primary-500,56 101 159))}
.lp-editor-tabs [data-lp-tab=content]::before{content:"\f031"}.lp-editor-tabs [data-lp-tab=visual]::before{content:"\f53f"}.lp-editor-tabs [data-lp-tab=preview]::before{content:"\f06e"}
.lp-card{border-radius:20px!important;box-shadow:0 1px 2px rgba(16,24,40,.04),0 8px 24px -14px rgba(16,24,40,.18);padding:26px!important}
.lp-section-heading{padding-bottom:14px;border-bottom:1px dashed var(--le-border)}
.lp-section-heading>span{width:40px!important;height:40px!important;flex-basis:40px!important;border-radius:13px!important;font-size:13px!important;color:#fff!important;background:linear-gradient(140deg,rgb(var(--c-primary-400,97 138 188)),rgb(var(--c-primary-600,41 80 131)))!important;box-shadow:0 10px 18px -10px rgb(var(--c-primary-600,41 80 131))}
.lp-section-heading h3{font:750 16px/1.3 'Plus Jakarta Sans',Inter,sans-serif!important}
.lp-section-heading p{font-size:12px!important}
.lp-field>span{font-size:12px!important;color:var(--le-ink)!important}
.lp-field input,.lp-field textarea,.lp-field select{font-size:14px!important;background:var(--le-soft)!important;border-radius:12px!important;transition:border-color .15s,box-shadow .15s,background .15s}
.lp-field input:focus,.lp-field textarea:focus,.lp-field select:focus{outline:none!important;background:var(--le-card)!important;border-color:rgb(var(--c-primary-400,97 138 188))!important;box-shadow:0 0 0 4px rgb(var(--c-primary-400,97 138 188)/.15)}
.lp-hint{font-size:12px!important;padding:10px 12px;border-radius:12px;background:var(--le-soft);border-left:3px solid rgb(var(--c-primary-400,97 138 188))}
.lp-button{font-size:13px!important;border-radius:12px!important;font-family:inherit!important}
.lp-button.is-primary{background:linear-gradient(135deg,rgb(var(--c-primary-500,56 101 159)),rgb(var(--c-primary-700,33 64 106)))!important;border-color:transparent!important;box-shadow:0 10px 20px -12px rgb(var(--c-primary-700,33 64 106))}
.lp-preview-card{background:linear-gradient(180deg,var(--le-card),var(--le-soft))!important}
.lp-preview-heading>div{font-size:13px!important;font-weight:700}
.lp-preview-modes{border-radius:14px!important}
.lp-preview-modes button{font-size:12px!important;font-family:inherit!important}
.lp-preview-slot{border-radius:16px!important;box-shadow:0 0 0 8px #0f1b2b,0 0 0 9px rgba(255,255,255,.08),0 26px 50px -24px rgba(0,0,0,.7);margin:10px 9px 12px}
.lp-editor-footer{backdrop-filter:blur(10px);background:color-mix(in srgb,var(--le-card) 88%,transparent)!important;border-radius:18px!important;box-shadow:0 -10px 30px -18px rgba(16,24,40,.35)!important}
.lp-editor-footer b{font-size:13px!important}.lp-editor-footer small{font-size:11.5px!important}
.lp-upload{border-radius:16px!important;padding:28px 18px!important;transition:border-color .15s,background .15s}
.lp-upload:hover{border-color:rgb(var(--c-primary-400,97 138 188))!important}
.lp-upload b{font-size:14px!important}.lp-upload>span{font-size:12px!important}
.lp-switch{border-radius:16px!important}.lp-switch b{font-size:13px!important}.lp-switch small{font-size:12px!important}
.lp-logo-preview{border-radius:28px!important;box-shadow:0 18px 36px -18px rgba(0,0,0,.55),inset 0 1px 0 rgba(255,255,255,.12)}
@media (max-width:760px){.lp-editor-hero::after{display:none}.lp-editor-hero{padding:24px 20px!important}.lp-editor-tabs button{padding:10px 8px!important;font-size:12px!important}}

/* Galeri: tab "Foto kehadiran" pindah ke halaman Dokumentasi tersendiri. */
.rd26-galeri [data-doc-tab=kehadiran]{display:none!important}
