*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:#eef1f5;color:#10172b}a{text-decoration:none;color:inherit}img{max-width:100%;display:block}.app-shell{max-width:430px;min-height:100vh;margin:0 auto;background:#f7f7f8;position:relative;box-shadow:0 20px 80px rgba(15,39,77,.12)}.page{padding:18px 16px 94px}.topbar{position:sticky;top:0;z-index:20;background:#f8f8f8;display:flex;justify-content:space-between;align-items:center;padding:16px 18px;border-bottom:1px solid rgba(25,48,84,.08);box-shadow:0 4px 14px rgba(20,34,67,.06)}.brand{display:flex;align-items:center;gap:12px}.brand img{width:94px;height:auto}.brand-text strong{display:block;font-size:22px;line-height:1;color:#1848b8;letter-spacing:.2px}.brand-text span{display:block;color:#2f3240;font-size:12px;line-height:1.35;white-space:pre-line;max-width:130px}.menu-btn{width:44px;height:44px;border:0;background:transparent;border-radius:14px;color:#3a4355;display:grid;place-items:center}.i-menu{width:34px;height:34px}.drawer{position:fixed;inset:0;background:rgba(8,18,39,.22);opacity:0;pointer-events:none;transition:.2s ease;z-index:30}.drawer.open{opacity:1;pointer-events:auto}.drawer-panel{position:absolute;top:0;right:0;width:240px;height:100%;background:#fff;padding:28px 20px;box-shadow:-14px 0 40px rgba(12,27,50,.12);display:flex;flex-direction:column;gap:6px}.drawer-link{padding:14px 10px;border-radius:14px;color:#12244d;font-weight:600}.drawer-link:hover,.drawer-link.admin-link{background:#f1f5ff}.hero-wrap{margin-top:10px}.hero-slider{position:relative;min-height:315px}.hero-card{display:none;background:#eaf1fb;border-radius:18px;padding:22px 18px;grid-template-columns:1.05fr .95fr;gap:6px;align-items:center;overflow:hidden;box-shadow:inset 0 0 0 1px rgba(24,72,184,.04)}.hero-card.is-active{display:grid}.pill{display:inline-flex;padding:9px 16px;border-radius:999px;background:#dfeaff;color:#245fdd;font-size:12px;font-weight:700;margin-bottom:16px}.hero-copy h1{font-size:25px;line-height:1.22;margin:0;color:#0f1b44;font-weight:800;letter-spacing:-.6px}.hero-copy h1 span{display:block;color:#2560df;margin-top:6px}.hero-copy p{font-size:15px;line-height:1.62;color:#475066;margin:22px 0 24px;max-width:235px}.hero-btn{display:inline-flex;align-items:center;gap:12px;background:#1f62ea;color:#fff;border-radius:16px;padding:16px 26px;font-weight:700;box-shadow:0 10px 24px rgba(31,98,234,.2)}.i-arrow{width:18px;height:18px}.hero-art{display:flex;justify-content:flex-end;align-items:flex-end}.hero-art img{width:100%;max-width:320px;mix-blend-mode:multiply}.dots{display:flex;justify-content:center;gap:8px;margin-top:12px}.dot{width:10px;height:10px;border:0;border-radius:999px;background:#cfd5df;padding:0}.dot.is-active{background:#2f67ee}.section-head{display:flex;justify-content:space-between;align-items:center;margin:26px 4px 14px}.section-head h2{margin:0;color:#101a39;font-size:22px;letter-spacing:-.5px}.section-head a{display:flex;align-items:center;gap:4px;color:#2360df;font-size:14px}.i-mini{width:15px;height:15px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.service-card{padding:20px 10px 18px;border-radius:18px;text-align:center;min-height:171px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;box-shadow:0 1px 0 rgba(15,23,42,.04)}.service-card h3{font-size:16px;line-height:1.25;margin:16px 0 8px;color:#111a38}.service-card p{margin:0;color:#566073;font-size:12px;line-height:1.45}.service-icon{width:64px;height:64px;display:grid;place-items:center;border-radius:18px}.i-service{width:38px;height:38px}.service-card.blue{background:#edf3ff}.service-card.blue .service-icon{color:#5b91ff;background:rgba(91,145,255,.12)}.service-card.green{background:#edf7f1}.service-card.green .service-icon{color:#29c886;background:rgba(41,200,134,.12)}.service-card.yellow{background:#fbf6e9}.service-card.yellow .service-icon{color:#f6b72a;background:rgba(246,183,42,.13)}.service-card.purple{background:#f3eefc}.service-card.purple .service-icon{color:#9c71f8;background:rgba(156,113,248,.13)}.panel-card{background:#fff;border-radius:18px;border:1px solid #e8ebf0;padding:18px 16px;box-shadow:0 8px 24px rgba(25,42,74,.04)}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.head-left{display:flex;align-items:center;gap:12px}.head-left h2{font-size:18px;margin:0;color:#121a37}.panel-head a{color:#2360df;font-size:14px}.divider{height:1px;background:#e9edf3;margin:16px 0}.circle-icon{width:42px;height:42px;border-radius:50%;display:grid;place-items:center}.circle-icon.blue{background:#edf4ff;color:#2465e6}.circle-icon.light{background:#eef3fb;color:#3057a6}.i-circle{width:22px;height:22px}.announce-row{position:relative;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;padding-right:20px}.tag{display:inline-flex;padding:6px 10px;border-radius:999px;background:#ecf3ff;color:#2b66e5;font-weight:700;font-size:12px}.date,.inline-date{font-size:12px;color:#7a8395}.announce-row strong{grid-column:2/3;font-size:16px;line-height:1.5;color:#18203b}.announce-arrow,.news-arrow{color:#8c95a6}.i-end{width:18px;height:18px}.news-stack{display:flex;flex-direction:column;gap:14px}.news-card{display:grid;grid-template-columns:138px 1fr auto;gap:14px;align-items:center;background:#fff;border-radius:18px;padding:12px;border:1px solid #e8ebf0}.news-card img{width:138px;height:118px;object-fit:cover;border-radius:16px}.news-copy h3{font-size:17px;line-height:1.35;margin:6px 0;color:#121a38}.news-copy p{font-size:14px;line-height:1.6;color:#576072;margin:8px 0 0}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.gallery-card{background:#fff;border-radius:18px;padding:10px;border:1px solid #e7ebf1;display:block}.gallery-card img{width:100%;height:90px;object-fit:cover;border-radius:14px}.gallery-card span{display:block;font-size:12px;color:#18203b;margin-top:8px;font-weight:600}.contact-box,.about-box{margin-top:18px;background:#fff;border-radius:18px;padding:18px 16px;border:1px solid #e8ebf0}.contact-list{display:flex;flex-direction:column;gap:14px}.contact-item{display:flex;gap:12px;align-items:flex-start}.contact-item strong{display:block;color:#132040}.contact-item p,.about-box p{margin:4px 0 0;color:#566073;font-size:14px;line-height:1.65}.plain{margin-top:0}.bottom-nav{position:fixed;left:50%;bottom:0;transform:translateX(-50%);max-width:430px;width:100%;display:grid;grid-template-columns:repeat(5,1fr);background:#fff;border-top:1px solid rgba(20,32,61,.08);border-radius:24px 24px 0 0;padding:10px 6px calc(10px + env(safe-area-inset-bottom));box-shadow:0 -12px 30px rgba(15,24,43,.08);z-index:25}.bottom-item{display:flex;flex-direction:column;align-items:center;gap:6px;color:#717888;font-size:11px;font-weight:500;padding:4px 2px}.i-bottom{width:24px;height:24px}.bottom-item.active{color:#2560df}.inner-body{background:#eef1f5}.inner-shell{max-width:430px}.compact{padding:12px 16px}.back-link{display:grid;place-items:center;width:34px;height:34px;border-radius:12px;background:#edf3ff;color:#295fdc;transform:rotate(180deg)}.i-back{width:18px;height:18px}.inner-brand img{width:58px}.inner-brand .brand-text strong{font-size:17px}.inner-brand .brand-text span{font-size:11px}.inner-page{padding-bottom:24px}.detail-list{display:flex;flex-direction:column;gap:14px}.detail-card,.detail-full{background:#fff;border-radius:18px;border:1px solid #e8ebf0;padding:16px}.detail-card h3,.detail-full h2{margin:8px 0 8px;color:#121a37}.detail-card p,.detail-full p{margin:8px 0 0;color:#576072;line-height:1.65}.detail-card small,.detail-full .date{color:#768093}.detail-icon{width:60px;height:60px;border-radius:18px;display:grid;place-items:center}.detail-icon.blue{background:#edf3ff;color:#5b91ff}.detail-icon.green{background:#edf7f1;color:#29c886}.detail-icon.yellow{background:#fbf6e9;color:#f6b72a}.detail-icon.purple{background:#f3eefc;color:#9c71f8}.detail-card.has-image{display:grid;grid-template-columns:110px 1fr;gap:14px}.detail-card.has-image img,.hero-detail-image{width:100%;height:180px;object-fit:cover;border-radius:16px}.detail-card.has-image img{height:110px}.gallery-page .gallery-card img{height:112px}.admin-login-body,.admin-body{margin:0;background:#eef2f7;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;color:#13203e}.admin-login-card{width:min(420px,92vw);margin:48px auto;background:#fff;border-radius:28px;padding:26px;box-shadow:0 20px 50px rgba(26,39,70,.12)}.admin-logo{width:128px;margin-bottom:10px}.admin-login-card h1{margin:0 0 6px;font-size:26px}.admin-login-card p{margin:0 0 18px;color:#5a6477;line-height:1.6}.alert,.notice{background:#ecf3ff;color:#285fde;padding:12px 14px;border-radius:14px;margin:0 0 16px}.admin-login-card form,.form-grid{display:grid;gap:12px}.admin-login-card label,.form-grid label{display:grid;gap:8px;font-size:14px;font-weight:600;color:#1b2749}.admin-login-card input,.admin-login-card textarea,.admin-login-card select,.form-grid input,.form-grid textarea,.form-grid select{width:100%;border:1px solid #dbe3ef;background:#fff;border-radius:14px;padding:14px 14px;font-size:14px;outline:0}.admin-login-card textarea,.form-grid textarea{min-height:100px;resize:vertical}.admin-login-card button,.btn-save{border:0;background:#1f62ea;color:#fff;border-radius:16px;padding:15px 18px;font-size:15px;font-weight:700;cursor:pointer;box-shadow:0 10px 24px rgba(31,98,234,.2)}.back-home{display:inline-block;margin-top:14px;color:#275fe0;font-weight:600}.admin-shell{display:grid;grid-template-columns:260px 1fr;min-height:100vh}.admin-side{background:#111a32;color:#dfe6fb;padding:20px;display:flex;flex-direction:column;justify-content:space-between}.side-brand{display:flex;gap:12px;align-items:center;margin-bottom:18px}.side-brand img{width:58px}.side-brand strong{display:block}.side-brand span{font-size:12px;color:#9bb0df}.admin-side nav{display:flex;flex-direction:column;gap:6px}.admin-side nav a,.side-foot a{padding:12px 14px;border-radius:14px;color:#dfe6fb}.admin-side nav a.active,.admin-side nav a:hover,.side-foot a:hover{background:#1d2c54}.side-foot{display:flex;flex-direction:column;gap:8px}.admin-main{padding:24px}.admin-top h1{margin:0;font-size:28px}.admin-top p{margin:6px 0 18px;color:#62708f}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat-card{background:#fff;border-radius:22px;padding:20px;border:1px solid #e5eaf3}.stat-card strong{display:block;font-size:34px;color:#12357f}.stat-card span{color:#5e6780}.admin-panels{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.admin-card{background:#fff;border-radius:24px;padding:20px;border:1px solid #e4e9f2}.admin-card h3{margin:0 0 16px;font-size:21px}.log-item,.item-row{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 0;border-bottom:1px solid #ecf0f5}.log-item:last-child,.item-row:last-child{border-bottom:0}.log-item strong,.item-row strong{display:block;color:#152247}.log-item span,.item-row span{display:block;color:#6d7690;font-size:13px;margin-top:3px}.item-row.with-thumb img{width:72px;height:58px;object-fit:cover;border-radius:12px}.item-row.with-thumb{display:grid;grid-template-columns:72px 1fr auto}.item-actions{display:flex;gap:8px;align-items:center}.item-actions a,.item-actions button,.quick-links a{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:12px;border:0;background:#edf3ff;color:#275fe0;font-weight:700;font-size:13px;cursor:pointer}.item-actions button{background:#fff2f2;color:#e05252}.quick-links{display:flex;flex-wrap:wrap;gap:10px}.form-grid{grid-template-columns:repeat(2,1fr)}.form-grid .full,.password-grid,.check{grid-column:1/-1}.check{display:flex!important;align-items:center;gap:8px;margin-top:4px}.check input{width:auto!important}.preview-box{grid-column:1/-1;border:1px dashed #d8e0ed;border-radius:18px;padding:14px;background:#f8fbff}.preview-box img{max-height:180px;border-radius:14px}.muted{color:#68758f}.detail-full .tag{margin-bottom:10px}.notice{margin-bottom:18px}.service-grid .service-card:nth-child(4) h3{font-size:15px}.news-list .detail-card h3{margin-top:6px}@media (max-width:980px){.admin-shell{grid-template-columns:1fr}.admin-side{padding:14px}.admin-main{padding:16px}.stat-grid,.admin-panels,.form-grid{grid-template-columns:1fr}.form-grid .full{grid-column:auto}}@media (max-width:430px){.app-shell{max-width:100%;box-shadow:none}.brand img{width:88px}.brand-text strong{font-size:18px}.topbar{padding:14px 14px}.hero-card{grid-template-columns:1fr;padding:20px 16px;min-height:inherit}.hero-copy p{max-width:none}.hero-art{justify-content:center}.hero-art img{max-width:250px}.service-grid{grid-template-columns:repeat(2,1fr)}.news-card{grid-template-columns:1fr;align-items:flex-start}.news-card img{width:100%;height:170px}.news-arrow{display:none}.gallery-grid{grid-template-columns:repeat(2,1fr)}.section-head h2{font-size:19px}.bottom-nav{max-width:none}.announce-row{grid-template-columns:auto 1fr auto}.announce-row strong{grid-column:1/-2;margin-top:8px}}
html{scroll-behavior:smooth}body.nav-open{overflow:hidden}.hero-wrap,.section-head,.panel-card,.contact-box,.about-box{scroll-margin-top:92px}.drawer{position:fixed;inset:0;background:rgba(10,18,37,.16);opacity:0;pointer-events:none;transition:opacity .24s ease;z-index:40}.drawer.open{opacity:1;pointer-events:auto}.drawer-panel{position:absolute;right:16px;top:88px;width:min(250px,calc(100vw - 32px));background:#fff;border-radius:22px;padding:12px;display:flex;flex-direction:column;gap:6px;box-shadow:0 20px 50px rgba(17,29,58,.14);transform:translateY(-10px) scale(.98);opacity:0;transition:transform .24s ease,opacity .24s ease}.drawer.open .drawer-panel{transform:translateY(0) scale(1);opacity:1}.drawer-link{padding:13px 14px;border-radius:16px;color:#1a2444;font-weight:600}.drawer-link:hover,.drawer-link:active{background:#f1f5fb}.drawer-link.admin-link{background:#edf3ff;color:#285fde}.bottom-item,.drawer-link,.hero-btn,.menu-btn,.service-card,.news-card,.gallery-card,.announce-row{-webkit-tap-highlight-color:transparent}.menu-btn{transition:transform .2s ease,background .2s ease}.menu-btn:active{transform:scale(.98)}.bottom-item.active{color:#2560df}.bottom-item.active .i-bottom{transform:translateY(-1px)}@media (max-width:430px){.drawer-panel{right:12px;top:82px;width:min(240px,calc(100vw - 24px))}}/* Backup & Restore admin panel, ditambahkan tanpa mengubah UI beranda */
.backup-layout{align-items:start}.backup-layout .full-panel{grid-column:1/-1}.danger-soft{background:#e05252!important;box-shadow:0 10px 24px rgba(224,82,82,.18)!important}.backup-layout .item-row strong{word-break:break-all}@media (max-width:980px){.backup-layout .full-panel{grid-column:auto}}
