:root{--font-sans:"Plus Jakarta Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--biru:#1d2fa6;--biru-tua:#101d6b;--toska:#14a3b4;--toska-muda:#e0f7fa;--navy:#0b1440;--navy-darker:#060b26;--amber:#f59e0b;--kertas:#fff;--kertas-alt:#f8fafd;--abu:#f0f3f9;--abu-border:#e2e8f0;--garis:#d5dbe8;--tinta:#111827;--tinta-lembut:#374151;--redup:#64748b;--kosong-bg:#f4f6fb;--kosong-garis:#9aa6c4;--bayang-halus:0 4px 20px -2px #0b14400f;--bayang-sedang:0 10px 30px -4px #0b14401a;--bayang-tegas:0 20px 40px -6px #0b144029;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px;--header-tinggi:78px;--wadah-lebar:1200px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--biru:#7f8dff;--biru-tua:#c7ceff;--toska:#3fd0df;--toska-muda:#133a44;--navy:#060b26;--navy-darker:#030717;--kertas:#0f1630;--kertas-alt:#141d3d;--abu:#172247;--abu-border:#243261;--garis:#29345a;--tinta:#f8fafc;--tinta-lembut:#e2e8f0;--redup:#94a3b8;--kosong-bg:#18213f;--kosong-garis:#4c5a85;--bayang-halus:0 4px 20px -2px #0006;--bayang-sedang:0 10px 30px -4px #00000080;--bayang-tegas:0 20px 40px -6px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{font-family:var(--font-sans);scroll-behavior:smooth;scroll-padding-top:var(--header-tinggi);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:var(--kertas);color:var(--tinta);flex-direction:column;min-height:100vh;margin:0;font-size:16px;line-height:1.65;transition:background-color .25s,color .25s;display:flex}img,svg{max-width:100%;display:block}a{color:var(--biru);text-decoration:none;transition:color .2s,opacity .2s}a:hover{opacity:.85}button,input,textarea,select{font-family:inherit;font-size:inherit}.wadah{max-width:var(--wadah-lebar);width:100%;margin:0 auto;padding:0 24px}.blok{padding:72px 0}.blok.abu{background-color:var(--kertas-alt);border-top:1px solid var(--garis);border-bottom:1px solid var(--garis)}.blok.navy{background:linear-gradient(135deg, var(--navy) 0%, var(--biru-tua) 100%);color:#fff}h1,h2,h3,h4,h5,h6{color:var(--tinta);letter-spacing:-.02em;margin:0 0 16px;font-weight:800;line-height:1.2}.blok.navy h1,.blok.navy h2,.blok.navy h3,.blok.navy h4{color:#fff}h1{font-size:clamp(32px,5vw,54px)}h2{font-size:clamp(26px,3.5vw,38px)}h3{font-size:clamp(20px,2.5vw,26px)}h4{font-size:19px}p{color:var(--tinta-lembut);margin:0 0 16px}.blok.navy p{color:#cbd5e1}.lead{color:var(--redup);font-size:1.15rem;line-height:1.7}.blok.navy .lead{color:#e2e8f0}.section-tag{border-radius:var(--radius-full);color:var(--toska);letter-spacing:.08em;text-transform:uppercase;background:#14a3b41f;align-items:center;gap:8px;margin-bottom:14px;padding:6px 14px;font-size:13px;font-weight:800;display:inline-flex}.blok.navy .section-tag{color:#3fd0df;background:#3fd0df33}.btn{border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;border:1.5px solid #0000;justify-content:center;align-items:center;gap:10px;padding:12px 24px;font-size:15px;font-weight:700;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);display:inline-flex}.btn:active{transform:translateY(1px)}.btn-utama{background:var(--biru);color:#fff;box-shadow:0 4px 14px #1d2fa659}.btn-utama:hover{background:var(--biru-tua);opacity:1;transform:translateY(-1px);box-shadow:0 6px 20px #1d2fa673}.btn-toska{background:var(--toska);color:#04242c;box-shadow:0 4px 14px #14a3b44d}.btn-toska:hover{opacity:1;color:#fff;background:#118f9e;transform:translateY(-1px)}.btn-outline{border-color:var(--garis);color:var(--tinta);background:0 0}.btn-outline:hover{background:var(--abu);border-color:var(--redup);opacity:1}.btn-outline-putih{color:#fff;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff0d;border-color:#ffffff4d}.btn-outline-putih:hover{opacity:1;background:#ffffff26;border-color:#fff}.btn-sm{border-radius:var(--radius-sm);padding:8px 16px;font-size:13.5px}header.header-utama{z-index:100;background:var(--kertas);border-bottom:1px solid var(--garis);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:all .2s;position:sticky;top:0}.header-inner{height:var(--header-tinggi);justify-content:space-between;align-items:center;display:flex}.brand-logo{align-items:center;gap:12px;text-decoration:none;display:flex}.brand-logo img{-o-object-fit:contain;object-fit:contain;width:auto;height:54px}nav.nav-links ul{align-items:center;gap:4px;margin:0;padding:0;list-style:none;display:flex}nav.nav-links a{border-radius:var(--radius-sm);color:var(--tinta-lembut);align-items:center;padding:8px 14px;font-size:15px;font-weight:600;transition:all .15s;display:inline-flex}nav.nav-links a:hover{color:var(--biru);background:var(--abu);opacity:1}nav.nav-links a.router-link-active,nav.nav-links a.active{color:#fff;background:var(--biru)}.nav-actions{align-items:center;gap:12px;display:flex}.theme-toggle{border:1px solid var(--garis);color:var(--tinta);border-radius:var(--radius-sm);cursor:pointer;background:0 0;justify-content:center;align-items:center;width:38px;height:38px;transition:all .2s;display:flex}.theme-toggle:hover{background:var(--abu)}.hamburger-btn{border:1px solid var(--garis);color:var(--tinta);border-radius:var(--radius-sm);cursor:pointer;background:0 0;padding:8px;display:none}@media (width<=980px){.hamburger-btn{display:flex}nav.nav-links{background:var(--kertas);border-bottom:1px solid var(--garis);box-shadow:var(--bayang-tegas);padding:16px 24px;display:none;position:absolute;top:100%;left:0;right:0}nav.nav-links.buka{display:block}nav.nav-links ul{flex-direction:column;align-items:stretch;gap:6px}nav.nav-links a{padding:12px 16px;font-size:16px}.brand-logo img{height:42px}}.hero-section{background:radial-gradient(circle at 80% 20%, #1a2c85 0%, var(--navy) 60%, var(--navy-darker) 100%);color:#fff;padding:68px 0 84px;position:relative;overflow:hidden}.hero-section:after{content:"";pointer-events:none;background-image:radial-gradient(#ffffff14 1px,#0000 1px);background-size:32px 32px;position:absolute;inset:0}.hero-grid{z-index:2;grid-template-columns:1.15fr .85fr;align-items:center;gap:48px;display:grid;position:relative}@media (width<=900px){.hero-grid{grid-template-columns:1fr;gap:36px}}.hero-actions{flex-wrap:wrap;gap:14px;margin-top:32px;display:flex}.grid-3{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.grid-2{grid-template-columns:repeat(2,1fr);gap:32px;display:grid}.grid-4{grid-template-columns:repeat(4,1fr);gap:24px;display:grid}@media (width<=980px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (width<=640px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.card{background:var(--kertas);border:1px solid var(--garis);border-radius:var(--radius-lg);flex-direction:column;padding:28px;transition:all .25s cubic-bezier(.4,0,.2,1);display:flex;position:relative}.card:hover{box-shadow:var(--bayang-sedang);border-color:var(--toska);transform:translateY(-4px)}.card-icon{border-radius:var(--radius-md);width:52px;height:52px;color:var(--biru);background:#1d2fa614;justify-content:center;align-items:center;margin-bottom:20px;display:flex}[data-theme=dark] .card-icon{color:var(--biru);background:#7f8dff26}.card-pasal{border-top:1px dashed var(--garis);color:var(--toska);letter-spacing:.02em;margin-top:auto;padding-top:14px;font-size:13px;font-weight:700}.pub-card{background:var(--kertas);border:1px solid var(--garis);border-radius:var(--radius-lg);flex-direction:column;transition:all .25s;display:flex;overflow:hidden}.pub-card:hover{box-shadow:var(--bayang-sedang);border-color:var(--biru);transform:translateY(-5px)}.pub-cover{aspect-ratio:4/3;background:var(--navy);width:100%;overflow:hidden}.pub-cover img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;transition:transform .3s}.pub-card:hover .pub-cover img{transform:scale(1.04)}.pub-body{flex-direction:column;flex:1;padding:24px;display:flex}.pub-badge{border-radius:var(--radius-full);background:var(--abu);color:var(--biru);text-transform:uppercase;width:fit-content;margin-bottom:12px;padding:4px 10px;font-size:12px;font-weight:800;display:inline-block}.form-group{margin-bottom:20px}.form-group label{color:var(--tinta);margin-bottom:8px;font-size:14px;font-weight:700;display:block}.form-control{border-radius:var(--radius-md);border:1.5px solid var(--garis);background:var(--kertas);width:100%;color:var(--tinta);padding:12px 16px;font-size:15px;transition:border-color .2s,box-shadow .2s}.form-control:focus{border-color:var(--toska);outline:none;box-shadow:0 0 0 3px #14a3b433}textarea.form-control{resize:vertical;min-height:120px}footer.footer-utama{background:var(--navy);color:#fff;border-top:1px solid #ffffff1a;margin-top:auto;padding:72px 0 32px}.footer-grid{border-bottom:1px solid #ffffff1f;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:40px;padding-bottom:48px;display:grid}@media (width<=900px){.footer-grid{grid-template-columns:1fr 1fr}}@media (width<=600px){.footer-grid{grid-template-columns:1fr}}.footer-col h4{color:#fff;letter-spacing:-.01em;margin-bottom:18px;font-size:16px;font-weight:700}.footer-col ul{margin:0;padding:0;list-style:none}.footer-col li{margin-bottom:10px}.footer-col a{color:#c9d2f0;font-size:14.5px}.footer-col a:hover{color:#3fd0df}.footer-legal-badge{border-radius:var(--radius-sm);color:#cbd5e1;background:#ffffff14;border:1px solid #ffffff1f;margin-top:14px;padding:8px 12px;font-size:13px;display:inline-block}.footer-bottom{color:#94a3b8;justify-content:space-between;align-items:center;padding-top:28px;font-size:14px;display:flex}@media (width<=600px){.footer-bottom{text-align:center;flex-direction:column;gap:12px}}.whatsapp-float{z-index:99;color:#fff;cursor:pointer;background-color:#25d366;border-radius:50%;justify-content:center;align-items:center;width:58px;height:58px;transition:all .25s;display:flex;position:fixed;bottom:28px;right:28px;box-shadow:0 6px 20px #25d36673}.whatsapp-float:hover{color:#fff;transform:scale(1.08)translateY(-3px);box-shadow:0 8px 25px #25d36699}.whatsapp-tooltip{color:#fff;border-radius:var(--radius-sm);white-space:nowrap;pointer-events:none;opacity:0;background:#111827;padding:6px 12px;font-size:13px;font-weight:600;transition:all .2s;position:absolute;right:68px;transform:translate(10px)}.whatsapp-float:hover .whatsapp-tooltip{opacity:1;transform:translate(0)}.admin-layout{background-color:var(--abu);min-height:100vh;display:flex}.admin-sidebar{background:var(--navy);color:#fff;flex-direction:column;flex-shrink:0;width:260px;padding:24px 0;display:flex}.admin-nav{margin:20px 0 0;padding:0;list-style:none}.admin-nav a{color:#cbd5e1;align-items:center;gap:12px;padding:12px 24px;font-size:14.5px;font-weight:600;transition:all .15s;display:flex}.admin-nav a:hover,.admin-nav a.router-link-active{color:#3fd0df;background:#ffffff1a}.admin-content{flex:1;padding:32px 40px;overflow-y:auto}.stat-card{background:var(--kertas);border-radius:var(--radius-lg);border:1px solid var(--garis);box-shadow:var(--bayang-halus);padding:22px}.stat-num{color:var(--biru);margin:6px 0 0;font-size:32px;font-weight:800}.table-responsive{background:var(--kertas);border-radius:var(--radius-lg);border:1px solid var(--garis);width:100%;overflow-x:auto}table.admin-table{border-collapse:collapse;text-align:left;width:100%;font-size:14.5px}table.admin-table th{background:var(--abu);color:var(--tinta);border-bottom:1px solid var(--garis);padding:14px 18px;font-weight:700}table.admin-table td{border-bottom:1px solid var(--garis);color:var(--tinta-lembut);padding:14px 18px}table.admin-table tr:hover td{background:#14a3b40a}
