:root{--navy:#0A3071;--navy-deep:#071F4F;--ink:#16233A;--muted:#5C6B82;--on-navy:#D6E0F5;--on-navy-muted:#C3D0EB;--nav-h:68px;--paper:#FBF8F2;--card:#FFFFFF;--line:#E8E2D6;--line-soft:#EFEAE0;--sun:#F2A33C;--sun-deep:#E08A1E;--r-lg:22px;--r-md:16px;--r-sm:11px;--shadow:0 14px 34px -18px rgba(21,41,75,.34);--shadow-soft:0 8px 22px -16px rgba(21,41,75,.3);--maxw:1140px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:Plus Jakarta Sans,system-ui,sans-serif;background:var(--paper);color:var(--ink);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{max-width:100%}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 22px}.baloo{font-family:"Baloo 2",cursive}.nav{position:sticky;top:0;z-index:50;background:var(--navy-deep)}.nav-in{display:flex;align-items:center;gap:18px;height:var(--nav-h)}.brand{display:flex;align-items:center;gap:11px;font-weight:800;font-size:18px;color:#fff;white-space:nowrap}.brand .mark{width:36px;height:36px;border-radius:10px;background:var(--sun);color:var(--navy-deep);display:grid;place-items:center}.brand b{font-family:"Baloo 2",cursive;font-weight:800;color:var(--sun)}.tabs{display:flex;gap:4px;margin-left:auto;overflow-x:auto;scrollbar-width:none}.tabs::-webkit-scrollbar{display:none}.tab{font-size:14.5px;font-weight:600;color:var(--on-navy);padding:9px 14px;border-radius:999px;white-space:nowrap;transition:.18s}.tab:hover{color:#fff;background:#ffffff14}.tab.active{color:#fff;background:#ffffff29}.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-family:inherit;font-weight:700;font-size:15px;border:0;border-radius:999px;padding:13px 22px;cursor:pointer;transition:.18s;line-height:1;min-height:44px}.btn.primary{background:var(--sun);color:#2e1c00;box-shadow:0 10px 20px -10px #e08a1eb3}.btn.primary:hover{background:var(--sun-deep);transform:translateY(-1px)}.btn.ghost{background:transparent;border:1.6px solid var(--line);color:var(--navy)}.btn.ghost:hover{border-color:var(--navy);background:#fff}.btn.outline-light{background:transparent;border:2px solid rgba(255,255,255,.4);color:#fff}.btn.outline-light:hover{border-color:#fff;background:#ffffff14}.btn.sm{padding:9px 15px;font-size:13.5px;min-height:36px}.btn.lg{padding:16px 26px;font-size:16px;font-weight:800}.btn:disabled{opacity:.5;cursor:default;transform:none}.eyebrow{display:block;font-size:12.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#b4501f}.sec-title{font-size:clamp(28px,4.2vw,44px);font-weight:800;color:var(--navy);letter-spacing:-.01em;line-height:1.08;font-family:"Baloo 2",cursive;margin-top:4px}.lead{color:var(--muted);font-size:17px;max-width:62ch}section.block{padding:56px 0}.hsec{padding-top:64px}.hsec.last{padding-bottom:80px}section.block.tight{padding:40px 0}.sec-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:16px}.sec-more{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:15px;color:var(--navy);min-height:44px}.sec-more:hover{text-decoration:underline}.hero{position:relative;overflow:hidden;background:var(--navy)}.hero-grid{display:flex;flex-wrap:wrap;align-items:center;gap:24px;padding-top:52px}.hero-copy{flex:1 1 440px;min-width:0;padding-bottom:72px;position:relative;z-index:2}.hero-eyebrow{display:inline-block;font-size:12.5px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--sun);background:#f2a33c1f;padding:7px 14px;border-radius:999px}.hero h1{font-family:"Baloo 2",cursive;font-weight:800;color:#fff;font-size:clamp(40px,6vw,68px);line-height:1.02;margin:20px 0 18px}.hero h1 .hl{color:var(--sun)}.hero p.sub{font-size:18.5px;color:var(--on-navy);max-width:46ch;margin-bottom:30px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-trust{list-style:none;display:flex;flex-wrap:wrap;gap:10px 22px;margin-top:34px;font-size:14px;font-weight:600;color:var(--on-navy-muted)}.hero-trust li{display:inline-flex;align-items:center;gap:8px}.hero-trust .icon{color:#7fd3a0}.hero-visual{flex:1 1 440px;min-width:0;position:relative;align-self:flex-end;display:flex;justify-content:center}.hero-visual img{width:100%;max-width:540px;height:auto;display:block;margin-bottom:-40px;-webkit-mask-image:linear-gradient(to right,transparent,#000 14%,#000 92%,transparent),linear-gradient(to bottom,transparent,#000 14%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent,#000 14%,#000 92%,transparent),linear-gradient(to bottom,transparent,#000 14%);mask-composite:intersect}.hero-wave{display:block;width:100%;height:56px;position:relative;z-index:3;margin-top:-1px}.hero-wave path{fill:var(--paper)}.fl{position:absolute;animation:floaty 6s ease-in-out infinite}.fl-sun{top:40px;left:6%;width:30px;height:30px;border-radius:50%;background:var(--sun);box-shadow:0 0 24px 6px #f2a33c8c}.fl-leaf{top:46%;left:0;width:26px;height:26px;border-radius:7px;background:#3fa956;box-shadow:0 0 20px 4px #3fa95680;animation-delay:-2s}.fl-tri{top:12%;right:2%;width:0;height:0;border-left:16px solid transparent;border-right:16px solid transparent;border-bottom:28px solid #1FA2C2;filter:drop-shadow(0 0 10px rgba(31,162,194,.8));animation-delay:-4s}@keyframes floaty{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-14px) rotate(8deg)}}@media (max-width:600px){.hero-grid{padding-top:28px}.hero-visual{order:-1;max-height:300px;overflow:hidden;align-items:flex-start}.hero-visual img{margin:-40px 0 0}.hero-copy{padding-bottom:40px}.hero-actions .btn{flex:1 1 100%}}.how{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px;padding-top:36px}.how-card{display:flex;gap:16px;align-items:flex-start;background:var(--card);border-radius:var(--r-lg);padding:22px;box-shadow:0 10px 30px -22px #071f4f80}.how-ic{flex:0 0 auto;width:52px;height:52px;border-radius:16px;display:grid;place-items:center}.how-k{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.how-card h3{font-size:18px;color:var(--navy);margin:2px 0 4px}.how-card p{font-size:14.5px;color:var(--muted)}.themes{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:22px;margin-top:30px}.theme{display:flex;flex-direction:column;border-radius:26px;overflow:hidden;color:#fff;transition:transform .25s ease,box-shadow .25s ease}.theme:hover{transform:translateY(-6px);box-shadow:0 26px 40px -22px #071f4f8c}.theme .top{aspect-ratio:4/3;overflow:hidden;display:flex;align-items:center;justify-content:center}.theme .top-art{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s ease}.theme:hover .top-art{transform:scale(1.06)}.theme .body{padding:18px 22px 22px;display:flex;flex-direction:column;gap:6px;flex:1}.theme .kicker{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--soft)}.theme h3{font-family:"Baloo 2",cursive;font-weight:800;font-size:26px;line-height:1.1}.theme p{font-size:14.5px;color:#fff;opacity:.92}.theme .meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:8px}.theme .pill{background:#ffffff2e;color:#fff}@media (max-width:600px){.themes.rail{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;margin:24px -22px 0;padding:0 22px 10px;scroll-padding:0 22px;scrollbar-width:none}.themes.rail::-webkit-scrollbar{display:none}.themes.rail .theme{flex:0 0 80%;scroll-snap-align:start}.themes.rail .theme:hover{transform:none}}.pill{font-size:12px;font-weight:700;padding:5px 11px;border-radius:999px;background:#f2ece0;color:#5b4a2c}.pill.ef{background:#eaf0fa;color:var(--navy)}.flow-panel{background:var(--card);border-radius:32px;padding:44px clamp(22px,4vw,52px);margin-top:72px;box-shadow:0 20px 50px -34px #071f4f73}.flow-head{text-align:center;max-width:640px;margin:0 auto 36px}.flow-head .lead{margin:10px auto 0}.flow{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:24px 18px;position:relative}.flow:before{content:"";position:absolute;left:10%;right:10%;top:38px;border-top:3px dashed var(--line)}@media (max-width:900px){.flow:before{display:none}}.flow li{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;position:relative}.flow-dot{width:78px;height:78px;border-radius:50%;background:var(--ph);color:#fff;display:grid;place-items:center;box-shadow:0 0 0 8px var(--card),0 0 0 10px var(--ph-tint)}.flow-name{font-family:"Baloo 2",cursive;font-weight:800;font-size:22px;color:var(--ph-text);line-height:1;margin-top:4px}.flow-min{font-size:12px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.flow-desc{font-size:14px;color:#475468}.spot{display:flex;flex-wrap:wrap;border-radius:32px;overflow:hidden}.spot-art{flex:1 1 380px;min-height:340px;position:relative}.spot-art img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.spot-tag{position:absolute;top:20px;left:20px;font-size:12.5px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;background:#fff;padding:8px 14px;border-radius:999px;box-shadow:0 8px 18px -10px #071f4f80}.spot-body{flex:1 1 420px;min-width:0;padding:40px clamp(24px,4vw,48px)}.spot-note{color:#3c4a60;font-size:16px;margin:10px 0 16px}.spot-list{display:flex;flex-direction:column;gap:10px;margin-bottom:26px}.check-row{display:flex;align-items:center;gap:12px;background:#fff;border-radius:14px;padding:12px 16px;font-size:15px;font-weight:600;color:var(--ink);cursor:pointer;min-height:48px}.check-row input{width:20px;height:20px;flex:0 0 auto;cursor:pointer}.check-row:has(input:checked){color:var(--muted);text-decoration:line-through}.ef{display:flex;flex-wrap:wrap;gap:40px;align-items:center}.ef-intro{flex:1 1 320px;min-width:0}.ef-intro .lead{margin-top:12px;max-width:42ch}.ef-cards{flex:2 1 560px;min-width:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px}.ef-card{background:var(--card);border-radius:24px;padding:24px;border-top:6px solid}.ef-ic{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;margin-bottom:14px}.ef-card h3{font-size:18px;color:var(--navy);margin-bottom:4px}.ef-card p{font-size:14.5px;color:var(--muted)}.scan-wrap{max-width:640px}.scan-wrap .lead{margin-top:10px}.scan-box{margin-top:28px;display:flex;flex-direction:column;align-items:flex-start;gap:12px}.scan-cam{position:relative;width:100%;max-width:420px;aspect-ratio:1;border-radius:26px;overflow:hidden;background:#000}.scan-cam video{width:100%;height:100%;object-fit:cover;display:block}.scan-frame{position:absolute;top:18%;right:18%;bottom:18%;left:18%;border:4px solid var(--sun);border-radius:22px;box-shadow:0 0 0 999px #00000059}.scan-stop{position:absolute;bottom:14px;left:50%;transform:translate(-50%);background:#fff}.scan-tip{display:flex;gap:14px;align-items:flex-start;background:#e6f5f8;color:#0f6f86;border-radius:20px;padding:18px 20px}.scan-tip p{color:var(--ink);font-size:15px}.scan-code{margin-top:32px;display:flex;flex-direction:column;gap:8px}.scan-code label{font-weight:800;color:var(--navy);font-size:15px}.scan-code-row{display:flex;gap:10px;flex-wrap:wrap}.scan-code input{flex:1 1 220px;font:inherit;font-size:16px;border:1.6px solid var(--line);border-radius:14px;padding:12px 16px;background:#fff;min-height:48px;text-transform:uppercase}.scan-code input:focus{outline:2px solid var(--sun);border-color:transparent}.scan-ext{margin-top:18px;font-size:14.5px;color:var(--muted);word-break:break-all}.scan-ext a{color:var(--navy);font-weight:700}.botnav{display:none}@media (max-width:768px){body{padding-bottom:84px}.botnav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:end;position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;border-top:1px solid var(--line);padding:6px 6px calc(10px + env(safe-area-inset-bottom));box-shadow:0 -10px 30px -20px #071f4f80}.bn{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:3px;min-height:52px;font-size:11.5px;font-weight:700;color:var(--muted)}.bn.active{color:var(--navy);font-weight:800}.bn-fab{width:60px;height:60px;border-radius:50%;background:var(--sun);color:#2e1c00;display:grid;place-items:center;margin-top:-30px;box-shadow:0 0 0 6px #fff,0 12px 22px -8px #f2a33ce6}.bn-scan{color:var(--navy);font-weight:800}.toast-wrap{bottom:96px}}.filters{margin-top:24px;display:flex;flex-direction:column;gap:14px}.fil-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.fil-label{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);width:74px;flex:0 0 auto}.fchip{border:1.4px solid var(--line);background:#fff;font-family:inherit;font-size:13.5px;font-weight:600;color:var(--ink);padding:8px 14px;border-radius:999px;cursor:pointer;transition:.15s;display:inline-flex;align-items:center;gap:7px}.fchip:hover{border-color:var(--navy)}.fchip.active{background:var(--navy);color:#fff;border-color:var(--navy)}.fchip .dot{width:9px;height:9px;border-radius:50%}.lib-count{font-size:14px;color:var(--muted);font-weight:600;margin:20px 0 16px}.grid{display:grid;grid-template-columns:1fr;gap:16px}@media (min-width:600px){.grid{grid-template-columns:repeat(2,1fr)}}@media (min-width:940px){.grid{grid-template-columns:repeat(3,1fr)}}.res{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:18px;display:flex;flex-direction:column;gap:11px;transition:.18s}.res:hover{transform:translateY(-3px);box-shadow:var(--shadow-soft)}.res .rtop{display:flex;align-items:center;justify-content:space-between;gap:10px}.res .ic{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;font-size:19px;color:#fff;flex:0 0 auto}.res .tag{font-size:11px;font-weight:800;padding:5px 9px;border-radius:999px;color:#fff}.res h4{font-size:15.5px;color:var(--ink);line-height:1.32}.res .rmeta{font-size:12.5px;color:var(--muted);font-weight:600;margin-top:auto}.res .open{margin-top:6px;font-size:13.5px;font-weight:700;color:var(--navy)}.empty{text-align:center;padding:50px 20px;color:var(--muted)}.offline{display:flex;gap:14px;align-items:center;background:#fbefd9;border:1px solid #F0DCB4;border-radius:var(--r-md);padding:18px 22px;margin-top:26px}.offline p{font-size:14px;color:#6a5429}.bagians{display:grid;grid-template-columns:1fr;gap:14px;margin-top:28px}@media (min-width:720px){.bagians{grid-template-columns:repeat(2,1fr)}}.bagian{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:22px 24px;display:flex;gap:16px;align-items:flex-start}.bagian .rom{font-family:"Baloo 2",cursive;font-weight:800;color:var(--sun-deep);font-size:22px;width:46px;height:46px;border-radius:12px;background:#fbefd9;display:grid;place-items:center;flex:0 0 auto}.bagian h3{font-size:16.5px;color:var(--navy);margin-bottom:4px}.bagian p{font-size:13.5px;color:var(--muted)}.bagian .chs{font-size:12px;color:var(--muted);font-weight:700;margin-top:8px}.banner{position:relative;overflow:hidden;isolation:isolate;background:var(--navy);color:#fff;border-radius:32px;padding:44px clamp(24px,5vw,56px);display:flex;flex-wrap:wrap;gap:28px;align-items:center;justify-content:space-between}.banner:before{content:"";position:absolute;z-index:-1;right:-80px;top:-120px;width:360px;height:360px;border-radius:50%;background:var(--sun);opacity:.16}.banner:after{content:"";position:absolute;z-index:-1;right:140px;bottom:-60px;width:140px;height:140px;border-radius:36px;background:#3fa956;opacity:.18;transform:rotate(18deg)}.banner>div:first-child{flex:1 1 380px;min-width:0}.banner .eyebrow{color:var(--sun)}.banner h2{font-family:"Baloo 2",cursive;font-size:clamp(26px,3.4vw,38px);line-height:1.08;margin:6px 0 10px}.banner p{color:var(--on-navy);max-width:52ch;font-size:16px}.banner-actions{display:flex;flex-direction:column;gap:12px}.two{display:grid;grid-template-columns:1fr;gap:34px}@media (min-width:860px){.two{grid-template-columns:1.2fr .8fr}}.feed{display:flex;flex-direction:column;gap:14px;margin-top:20px}.post{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:18px 20px}.post .ph{display:flex;align-items:center;gap:11px;margin-bottom:9px}.post .av{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:#fff;font-weight:800;font-size:15px}.post .who{font-size:14px;font-weight:700;color:var(--ink)}.post .when{font-size:12px;color:var(--muted)}.post p{font-size:14.5px;color:#34425a}.pform{background:var(--card);border:1px solid var(--line);border-radius:var(--r-md);padding:18px 20px;display:flex;flex-direction:column;gap:10px;margin-top:20px}.pform input,.pform textarea{font-family:inherit;font-size:14px;border:1.4px solid var(--line);border-radius:10px;padding:11px 13px;background:var(--paper);color:var(--ink);resize:vertical}.pform input:focus,.pform textarea:focus{outline:2px solid var(--sun);border-color:transparent}.dl{display:flex;flex-direction:column;gap:10px;margin-top:20px}.dlitem{display:flex;align-items:center;gap:13px;background:var(--card);border:1px solid var(--line);border-radius:var(--r-sm);padding:13px 16px;transition:.15s}.dlitem:hover{border-color:var(--navy)}.dlitem .di{width:34px;height:34px;border-radius:9px;background:#eaf0fa;display:grid;place-items:center;font-size:15px;flex:0 0 auto}.dlitem .dt{font-size:14px;font-weight:700;color:var(--ink)}.dlitem .ds{font-size:12px;color:var(--muted)}.dlitem .dgo{margin-left:auto;color:var(--navy);font-weight:700;font-size:13px}.td-band{position:relative;overflow:hidden;isolation:isolate;color:#fff}.td-band:before{content:"";position:absolute;z-index:-1;left:-60px;bottom:-90px;width:260px;height:260px;border-radius:50%;background:var(--blob);opacity:.5}.td-band-in{display:flex;flex-wrap:wrap;gap:36px;align-items:center;padding-top:30px;padding-bottom:44px}.td-back{display:inline-flex;align-items:center;gap:7px;font-family:inherit;font-weight:700;font-size:14px;color:#fff;background:#ffffff24;border:0;padding:10px 16px;border-radius:999px;cursor:pointer;margin-bottom:24px;transition:.15s;min-height:44px}.td-back:hover{background:#ffffff3d}.td-htext{flex:1 1 440px;min-width:0}.td-bab{font-size:13px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:var(--soft)}.td-title{font-family:"Baloo 2",cursive;font-weight:800;font-size:clamp(38px,5.4vw,60px);line-height:1.02;margin:8px 0 12px}.td-desc{color:#fff;opacity:.92;font-size:18px;max-width:48ch}.td-meta{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.tdchip{display:flex;flex-direction:column;gap:1px;background:#ffffff24;border-radius:14px;padding:10px 16px}.tdchip .k{font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--soft)}.tdchip .v{font-size:14.5px;font-weight:700}.td-actions{margin-top:26px;display:flex;flex-wrap:wrap;gap:12px}.td-art{flex:0 1 360px;min-width:240px;width:100%;aspect-ratio:1;object-fit:cover;border-radius:30px;border:6px solid rgba(255,255,255,.9);transform:rotate(2deg);box-shadow:0 30px 50px -28px #0009}@media (max-width:760px){.td-art{display:none}}.td-strip{position:sticky;top:var(--nav-h);z-index:40;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 8px 20px -18px #071f4f80}.td-strip-in{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;padding-top:10px;padding-bottom:10px}.td-strip-k{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.td-strip-bar{flex:1 1 480px;display:flex;gap:4px;min-width:0}.td-seg{flex-basis:0;min-width:0;border:0;font-family:inherit;font-size:12.5px;font-weight:800;padding:8px 10px;border-radius:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;transition:box-shadow .2s;min-height:36px}.td-seg:first-child{border-radius:12px 6px 6px 12px}.td-seg:last-child{border-radius:6px 12px 12px 6px}.td-seg.active{box-shadow:0 0 0 2px #fff,0 0 0 4px var(--ph)}.seg-short{display:none}@media (max-width:560px){.seg-full{display:none}.seg-short{display:inline}}.td-sec{padding:32px 0 0}.td-h{font-size:12.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;color:#b4501f;margin-bottom:14px}.td-tujuan{background:#fff;border-radius:22px;padding:24px 28px;display:flex;gap:18px;align-items:flex-start}.td-tujuan-ic{flex:0 0 auto;width:48px;height:48px;border-radius:14px;display:grid;place-items:center}.td-tujuan p{font-size:17.5px;color:#34425a;font-weight:500}.oa-list{list-style:none;display:flex;flex-direction:column;gap:14px}.oa-step{display:flex;gap:18px;align-items:stretch;scroll-margin-top:calc(var(--nav-h) + 80px)}.oa-left{flex:0 0 64px;display:flex;flex-direction:column;align-items:center;gap:6px}.oa-n{width:56px;height:56px;border-radius:50%;display:grid;place-items:center;font-family:"Baloo 2",cursive;font-weight:800;font-size:22px;transition:box-shadow .25s}.oa-step.active .oa-n{box-shadow:0 0 0 5px color-mix(in srgb,var(--ph) 25%,transparent)}.oa-num{font-size:12.5px;font-weight:800;color:var(--muted)}.oa-card{flex:1;min-width:0;background:#fff;border-radius:22px;padding:18px 24px;transition:box-shadow .25s}.oa-step.active .oa-card{box-shadow:0 0 0 2px var(--ph)}.oa-phase{font-size:12px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.oa-card h4{font-size:19px;color:var(--navy);margin:2px 0 4px}.oa-card p{font-size:15px;color:#475468}.oa-say{display:inline-block;margin-top:12px;padding:10px 16px;border-radius:16px 16px 16px 4px}@media (max-width:560px){.oa-step{gap:12px}.oa-left{flex-basis:44px}.oa-n{width:42px;height:42px;font-size:18px}.oa-card{padding:16px 18px}}.td-unduhan{font-size:14.5px;color:#475468;margin:-4px 0 16px;max-width:70ch}.td-unduhan a{font-weight:700;color:var(--sun-deep);white-space:nowrap}.prep{background:#fff;border-radius:22px;padding:22px 28px}.prep h4,.infocard h4{font-size:15px;color:var(--navy);margin-bottom:11px}.prep-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px}.prep .check-row{background:var(--paper)}.prep-note{margin-top:13px;font-size:13.5px;font-style:italic;color:var(--muted)}.infocard{background:#fff;border-radius:22px;padding:18px 24px}.infocard p{font-size:15px;color:#475468}.infocard ul{list-style:none;display:flex;flex-direction:column;gap:9px}.infocard li{font-size:15px;color:#475468;padding-left:20px;position:relative}.infocard li:before{content:"";position:absolute;left:1px;top:9px;width:7px;height:7px;border-radius:50%;background:var(--line)}.infocard li em{color:var(--muted);font-size:13.5px}.infocard .ases-lv{margin-top:13px;font-size:12.5px;color:var(--muted);font-weight:700}.infocard.kalau{padding:6px 24px}.kalau-row{display:grid;grid-template-columns:1fr 1.4fr;gap:10px 22px;padding:14px 0;border-bottom:1px dashed var(--line-soft)}.kalau-row:last-child{border-bottom:0}@media (max-width:700px){.kalau-row{grid-template-columns:1fr;gap:4px}}.kalau-if{font-size:14.5px;font-weight:800;color:var(--navy)}.kalau-then{font-size:15px;color:#475468}.infocard.dif2{display:grid;gap:20px;padding:20px 24px}@media (min-width:820px){.infocard.dif2{grid-template-columns:1fr 1fr;gap:30px}}.dif-item h5{font-size:14px;color:var(--navy);margin-bottom:6px;display:flex;align-items:center;gap:7px}.td-refl{background:#fdf3e7;border-radius:22px;padding:22px 28px;display:flex;gap:18px;align-items:center}.td-refl-ic{flex:0 0 auto;width:52px;height:52px;border-radius:50%;background:#fff;color:#b4501f;display:grid;place-items:center}.td-refl h4{color:#8a3a12;font-size:12.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;margin-bottom:2px}.td-refl p{font-size:17px;font-weight:600;color:#3c2a1a}.td-nav{display:flex;justify-content:space-between;gap:14px;margin:26px 0 10px;flex-wrap:wrap}.td-navbtn{flex:1;min-width:210px;background:#fff;border:1px solid var(--line);border-radius:var(--r-md);padding:15px 20px;cursor:pointer;font-family:inherit;text-align:left;transition:.15s;display:flex;align-items:center;gap:12px}.td-navbtn:hover{border-color:var(--navy);box-shadow:var(--shadow-soft)}.td-navbtn .nl{font-size:11.5px;color:var(--muted);font-weight:700;display:block}.td-navbtn .nt{font-size:15.5px;color:var(--navy);font-weight:800;display:block}.td-navbtn .nico{font-size:24px;flex:0 0 auto}.td-navbtn.next{text-align:right;justify-content:flex-end}.center-page{min-height:52vh;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:14px;padding:60px 22px}.center-page .big{font-size:56px}.center-page h1{font-family:"Baloo 2",cursive;color:var(--navy);font-size:30px}.center-page p{color:var(--muted);max-width:46ch}.footer{background:var(--navy-deep);color:#aeb9cf;margin-top:24px}.footer .ft{display:grid;grid-template-columns:1fr;gap:28px;padding:44px 22px 28px}@media (min-width:760px){.footer .ft{grid-template-columns:1.4fr 1fr 1fr}}.footer h4{color:#fff;font-size:14px;margin-bottom:12px}.footer a{display:block;color:#9fb0cc;font-size:14px;padding:5px 0;transition:.15s}.footer a:hover{color:#fff}.footer .fbrand{display:flex;align-items:center;gap:10px;color:#fff;font-weight:800;font-size:17px;margin-bottom:12px}.footer p.fp{font-size:13.5px;color:#aeb9cf;max-width:38ch}.footer .fbrand b{color:var(--sun)}.fmotto{font-family:"Baloo 2",cursive;font-size:16px;color:var(--sun)}.fbar{border-top:1px solid rgba(255,255,255,.1);padding:18px 22px;font-size:12.5px;color:#7e8fad;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between}.loading{padding:60px 0;text-align:center;color:var(--muted);font-weight:600}:focus-visible{outline:3px solid var(--sun);outline-offset:2px;border-radius:6px}.admin-table{margin-top:24px;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff}.admin-row{display:grid;grid-template-columns:150px 1.1fr 1.6fr 150px;gap:12px;align-items:center;padding:12px 16px;border-top:1px solid var(--line-soft);font-size:14px}.admin-row:first-child{border-top:0}.admin-head{background:var(--navy);color:#fff;font-weight:700;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase}.admin-row .mono{font-family:ui-monospace,Menlo,monospace;font-size:13px}.admin-row .muted{color:var(--muted)}.admin-row input{font-family:ui-monospace,Menlo,monospace;font-size:13px;padding:8px 10px;border:1.6px solid var(--navy);border-radius:8px;width:100%}@media (max-width:760px){.admin-row{grid-template-columns:1fr;gap:6px}}.icon{display:inline-block;vertical-align:-.18em;flex:0 0 auto}.res .ic .icon{color:#fff}.dlitem .di .icon{color:var(--navy)}.center-page .big{color:var(--muted);display:flex;justify-content:center}h4 .icon,.um-item .icon,.btn .icon,.scan-hint .icon,.sec-title .icon{vertical-align:-.16em}.page-loader{min-height:64vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.page-spinner{width:44px;height:44px;border-radius:50%;border:4px solid var(--line);border-top-color:var(--navy);animation:spin .8s linear infinite}.page-loading-text{font-size:14px;font-weight:700;color:var(--muted);letter-spacing:.02em}@keyframes spin{to{transform:rotate(360deg)}}.page-fade{animation:pageFade .4s ease both}@keyframes pageFade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.page-spinner{animation-duration:1.4s}.page-fade{animation:none}}.nav-auth{display:flex;align-items:center;gap:10px;flex:0 0 auto}.nav-loading{color:var(--muted);font-weight:800;font-size:18px;padding:0 8px}.nav-burger{display:none;margin-left:auto;background:none;border:0;color:#fff;cursor:pointer;padding:10px;border-radius:10px;line-height:0}.nav-burger:hover{background:#ffffff1a}.nav-mobile{border-top:1px solid rgba(255,255,255,.12);background:var(--paper)}.nav-mobile-in{display:flex;flex-direction:column;padding:12px 22px 18px;gap:2px}.nm-link{display:flex;align-items:center;gap:9px;padding:12px;border-radius:11px;font-weight:700;font-size:15px;color:var(--navy);transition:.15s}.nm-link:hover{background:#f1ece1}.nm-link.active{background:var(--navy);color:#fff}.nm-sep{height:1px;background:var(--line);margin:8px 0}.nm-user{display:flex;align-items:center;gap:11px;padding:6px 12px 10px}.nm-user .nav-ava{width:40px;height:40px;border-radius:50%;object-fit:cover;border:1.6px solid var(--line)}.nm-idcol{display:flex;flex-direction:column;gap:4px;min-width:0}.nm-name{font-weight:800;color:var(--navy);font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nm-btn{width:100%;justify-content:center;margin-top:6px}@media (max-width:768px){.tabs,.nav-auth{display:none}.nav-burger{display:inline-flex}}.usermenu{position:relative}.usermenu-trigger{display:flex;align-items:center;gap:8px;background:#fff;border:1.6px solid var(--line);border-radius:999px;padding:5px 12px 5px 5px;cursor:pointer;transition:.15s;font:inherit}.usermenu-trigger:hover{border-color:var(--navy)}.nav-ava.fallback{display:grid;place-items:center;background:var(--navy);color:#fff;font-weight:800;font-size:13px}.usermenu-trigger .caret{color:var(--muted);font-size:11px;transition:transform .15s}.usermenu-trigger .caret.up{transform:rotate(180deg)}.usermenu-panel{position:absolute;right:0;top:calc(100% + 10px);width:250px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 18px 40px -14px #15294b59;padding:8px;z-index:60;animation:umpop .14s ease}@keyframes umpop{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.um-head{display:flex;align-items:center;gap:11px;padding:10px 10px 12px}.um-ava{width:42px;height:42px;border-radius:50%;object-fit:cover;flex:0 0 auto}.um-ava.fallback{display:grid;place-items:center;background:var(--navy);color:#fff;font-weight:800;font-size:16px}.um-id{min-width:0}.um-name{font-weight:800;color:var(--navy);font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.um-email{font-size:12px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:5px}.um-sep{height:1px;background:var(--line);margin:2px 0}.um-item{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:0;border-radius:9px;padding:10px 11px;font:inherit;font-size:14px;font-weight:600;color:var(--ink);cursor:pointer;transition:.12s}.um-item:hover{background:#f4efe5}.um-item.danger{color:#b4561f}.um-item.danger:hover{background:#fdf1ea}.um-ic{width:18px;text-align:center;font-size:15px}@media (max-width:900px){.usermenu-trigger .nav-name{display:none}}.nav-user{display:flex;align-items:center;gap:9px}.nav-ava{width:30px;height:30px;border-radius:50%;object-fit:cover;border:1.6px solid var(--line)}.nav-name{font-size:13px;font-weight:700;color:var(--navy);max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.role-badge{font-size:10.5px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:3px 8px;border-radius:999px;background:#eaf0fa;color:var(--navy)}.role-badge.admin{background:#fbefd9;color:var(--sun-deep)}.role-badge.teacher{background:#e7f5ee;color:#1e9e7c}.role-badge.regular{background:#eef1f5;color:var(--muted)}@media (max-width:900px){.nav-name{display:none}}.btn.dark{background:var(--navy);color:#fff}.btn.dark:hover{background:var(--navy-deep)}.btn.ghost.danger{color:#b4561f;border-color:#f0d3c4}.btn.ghost.danger:hover{border-color:#b4561f;background:#fff6f1}.open.muted,.dgo.muted{color:var(--muted);font-weight:600;cursor:default}a.open{cursor:pointer}a.open:hover,a.dgo:hover{text-decoration:underline}.admin-nav{display:flex;flex-wrap:wrap;gap:6px;margin:22px 0 0;border-bottom:1px solid var(--line);padding-bottom:0}.admin-tab{padding:10px 16px;font-size:14px;font-weight:700;color:var(--muted);border-radius:10px 10px 0 0;border:1px solid transparent;border-bottom:0;position:relative;top:1px;transition:.15s}.admin-tab:hover{color:var(--navy);background:#f4efe5}.admin-tab.active{color:var(--navy);background:#fff;border-color:var(--line)}.admin-body{padding:26px 0}.admin-msg{margin:0 0 16px;padding:11px 15px;border-radius:10px;background:#f4efe5;font-weight:600;font-size:14px}.admin-create{display:flex;flex-wrap:wrap;gap:9px;align-items:center;margin-bottom:22px;padding:16px;background:#f8f4ec;border:1px solid var(--line);border-radius:14px}.admin-create input,.admin-create select,.admin-create textarea{padding:9px 12px;border:1.6px solid var(--line);border-radius:9px;font:inherit;font-size:14px;background:#fff}.admin-create input:focus,.admin-create select:focus{outline:2px solid var(--sun);border-color:transparent}.admin-create .grow{flex:1;min-width:220px}.admin-create.wrap-form input:not(.icon-in):not(.grow){min-width:160px}.icon-in{width:52px;text-align:center}.admin-list{display:flex;flex-direction:column;gap:10px}.admin-item{display:flex;gap:14px;align-items:flex-start;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px}.admin-item.inactive{opacity:.55}.ai-main{flex:1;display:flex;flex-direction:column;gap:8px;min-width:0}.ai-badges{display:flex;gap:6px}.chip{display:inline-block;font-size:11px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;padding:3px 9px;border-radius:999px;background:#eaf0fa;color:var(--navy);width:fit-content}.ai-title{font-weight:700;font-size:15px;color:var(--navy);border:1px solid transparent;border-radius:8px;padding:5px 8px;background:#f8f4ec}.ai-meta{font-size:13px;color:var(--muted);border:1px solid transparent;border-radius:8px;padding:5px 8px;background:#f8f4ec}.ai-title:focus,.ai-meta:focus,.q-text:focus{outline:2px solid var(--sun);background:#fff}.ai-title-static{font-weight:700;color:var(--navy)}.ai-meta-static{font-size:13px;color:var(--muted)}.filefield{margin-top:2px}.ff-current{display:flex;align-items:center;gap:10px;flex-wrap:wrap;font-size:13px}.ff-name{color:var(--navy);font-weight:600;word-break:break-all}.ff-attach{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.ff-or{font-size:13px;color:var(--muted);display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ff-url{padding:7px 10px;border:1.6px solid var(--line);border-radius:8px;font:inherit;font-size:13px;min-width:180px}.subtabs{display:flex;gap:8px;margin-bottom:18px}.subtab{padding:8px 14px;font-size:13.5px;font-weight:700;color:var(--muted);background:#f4efe5;border:1px solid var(--line);border-radius:999px;transition:.15s}.subtab.active{background:var(--navy);color:#fff;border-color:var(--navy)}.qr-grid{display:grid;grid-template-columns:1fr;gap:14px}@media (min-width:720px){.qr-grid{grid-template-columns:1fr 1fr}}.qr-grid.solo{grid-template-columns:1fr}.qr-card{display:flex;flex-wrap:wrap;gap:16px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:16px;align-items:flex-start}.qr-card.inactive{opacity:.55}.qr-card-main{flex:1 1 260px;display:flex;flex-direction:column;gap:9px;min-width:0}.qr-code-row{display:flex;align-items:center;justify-content:space-between;gap:8px}.qr-code{font-size:14px;font-weight:700;color:var(--navy)}.qr-label{font-size:13px;color:var(--muted)}.clicks{font-size:12px;color:var(--muted);white-space:nowrap}.qr-card-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:2px}.fld{display:flex;flex-direction:column;gap:4px;font-size:12.5px;font-weight:700;color:var(--muted);min-width:0}.fld input{font:inherit;font-size:13.5px;font-weight:500;color:var(--ink);padding:8px 11px;border:1.6px solid var(--line);border-radius:9px;min-width:0;width:100%}.fld input:focus{outline:2px solid var(--sun);border-color:transparent}.fld-row{display:flex;flex-wrap:wrap;gap:10px}.fld-row .fld{flex:1 1 130px}.qr-preview{display:flex;flex-direction:column;align-items:center;gap:8px;flex:0 0 auto}.qr-img{border:1px solid var(--line);border-radius:10px;background:#fff;padding:6px;width:168px;height:168px}.qr-actions{display:flex;gap:6px}.qr-url{font-size:10.5px;color:var(--muted);max-width:168px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.q-order{display:flex;flex-direction:column;gap:3px}.ord{width:28px;height:24px;border:1px solid var(--line);background:#fff;border-radius:6px;cursor:pointer;color:var(--navy);font-size:11px}.ord:disabled{opacity:.3;cursor:default}.q-text{width:100%;font:inherit;font-size:14px;color:var(--ink);border:1px solid transparent;border-radius:8px;padding:7px 9px;background:#f8f4ec;resize:vertical}.q-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-end}.switch{display:flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:var(--muted);cursor:pointer}.user-row{flex-direction:row;align-items:center;gap:12px}.role-picker{display:flex;gap:4px}.role-opt{padding:6px 12px;font-size:12px;font-weight:800;letter-spacing:.03em;color:var(--muted);background:#f4efe5;border:1px solid var(--line);border-radius:999px;cursor:pointer;transition:.15s}.role-opt.active{background:var(--navy);color:#fff;border-color:var(--navy)}.role-opt:disabled{opacity:.4;cursor:default}.res-grid{grid-template-columns:1.2fr 1.6fr .8fr .9fr .9fr}.lvl{font-weight:800;font-size:13px}.lvl-pemula{color:#c7892c}.lvl-berkembang{color:#d9a300}.lvl-cakap{color:#3fa956}.lvl-mahir{color:#1e9e7c}.sa-hi{background:#e7f5ee;color:#15694f;font-size:13.5px;font-weight:600;padding:10px 14px;border-radius:10px;margin:0 0 8px}.sa-form{display:flex;flex-direction:column;gap:16px;margin-top:20px}.sa-q{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}.sa-qhead{display:flex;gap:12px;align-items:flex-start;margin-bottom:14px}.sa-num{flex:0 0 auto;width:30px;height:30px;border-radius:9px;background:var(--navy);color:#fff;font-weight:800;display:grid;place-items:center;font-size:14px}.sa-qtext{font-size:15.5px;color:var(--ink);margin-top:4px;line-height:1.4}.sa-scale{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.sa-opt{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 6px;border:1.6px solid var(--line);border-radius:11px;background:#fff;cursor:pointer;transition:.14s}.sa-opt b{font-size:17px;color:var(--navy)}.sa-opt span{font-size:11.5px;color:var(--muted)}.sa-opt:hover{border-color:var(--navy)}.sa-opt.active{background:var(--navy);border-color:var(--navy)}.sa-opt.active b,.sa-opt.active span{color:#fff}.sa-err{color:#b4561f;font-weight:700;font-size:14px}.sa-result{border:2px solid;border-radius:18px;padding:28px;text-align:center;background:#fff;margin-top:18px}.sa-level{font-family:"Baloo 2",cursive;font-weight:800;font-size:40px}.sa-score{font-size:15px;color:var(--muted);margin:6px 0 14px}.sa-saran{font-size:15.5px;color:var(--ink);line-height:1.5;max-width:46ch;margin:0 auto}.toast-wrap{position:fixed;z-index:200;bottom:22px;right:22px;display:flex;flex-direction:column;gap:10px;pointer-events:none}.toast{pointer-events:auto;display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:12px;color:#fff;font-weight:700;font-size:14px;line-height:1.3;cursor:pointer;max-width:340px;box-shadow:0 16px 36px -12px #15294b8c;animation:toastIn .22s ease}.toast .icon{flex:0 0 auto}.toast.success{background:#1e8a63}.toast.error{background:#b4561f}@keyframes toastIn{0%{opacity:0;transform:translateY(14px) scale(.98)}to{opacity:1;transform:none}}@media (max-width:520px){.toast-wrap{left:16px;right:16px}}@media (prefers-reduced-motion:reduce){.toast{animation:none}}
