:root{--forest:#173e33;--deep:#15352b;--green:#2c6b50;--sage:#6e9d79;--pale:#eaf1e6;--cream:#f7f5ed;--paper:#fffdfa;--muted:#728376;--line:#dfe7dc;--shadow:0 18px 50px rgba(18,64,43,.055);color-scheme:light;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--deep);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #7fab87;outline-offset:3px}.skip-link{position:absolute;left:10px;top:-100px;background:#fff;padding:12px;z-index:200}.skip-link:focus{top:10px}.wrapper{width:min(1160px,calc(100% - 60px));margin-inline:auto}.demo-banner{min-height:39px;padding:9px 24px;display:flex;gap:11px;justify-content:center;align-items:center;background:#193f32;color:#e5f0e3;text-align:center;font-size:11px;line-height:1.45}.demo-banner strong{font-size:10px;letter-spacing:1px;white-space:nowrap}.demo-banner .pulse{width:7px;height:7px;border-radius:50%;background:#a1cc9a;flex:none}.site-header{background:var(--paper);border-bottom:1px solid #ebeee7}.header-inner{width:min(1160px,calc(100% - 60px));margin:auto;min-height:93px;display:flex;align-items:center;justify-content:space-between;gap:15px}.brand{display:flex;align-items:center;gap:11px}.brand-icon{width:47px;height:47px;background:#deeadb;border-radius:13px;display:grid;place-items:center}.brand-icon svg{width:39px}.brand-word{display:flex;flex-direction:column;gap:3px}.brand-word strong{font-size:22px;letter-spacing:-.65px}.brand-word small{font-weight:750;color:#708d77;font-size:8px;letter-spacing:1.45px}.top-links{display:flex;align-items:center;gap:29px;font-size:12px;font-weight:650;color:#5c7466}.top-links a:hover{text-decoration:underline}.top-chip{border:1px solid #c6d6c8;border-radius:100px;padding:10px 16px;color:#2f684c;background:#f2f8ef}.hero{min-height:326px;display:grid;grid-template-columns:1.38fr .88fr;gap:80px;align-items:center;padding-top:45px;padding-bottom:34px}.eyebrow,.tiny-label{display:inline-flex;align-items:center;gap:12px;font-weight:850;letter-spacing:1.7px;font-size:10px;color:#689372}.eyebrow-line{display:inline-block;height:1px;width:29px;background:#7a9d81}.hero h1{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(37px,4vw,58px);line-height:1.17;letter-spacing:-1.9px;margin:19px 0}.hero h1 em{font-weight:400;color:#679573}.hero-content>p{color:#6e8074;font-size:14px;line-height:1.85;max-width:655px;margin:0}.hero-badges{margin-top:24px;display:flex;gap:9px;flex-wrap:wrap}.hero-badges span{background:#eef3e9;color:#477455;border:1px solid #e4eae0;border-radius:100px;font-size:11px;font-weight:700;padding:9px 11px}.hero-visual{position:relative;height:256px;border-radius:120px 120px 19px 19px;overflow:hidden;background:linear-gradient(144deg,#e8efd9,#d5e4c9);border:1px solid #e2e8d8}.hero-sun{position:absolute;width:132px;height:132px;border-radius:50%;background:#f8eeca;top:26px;right:55px;box-shadow:0 0 0 17px #fff7dc65}.hillscape{position:absolute;bottom:0;width:100%;left:0}.hero-sticker{position:absolute;bottom:18px;left:20px;background:#fffffff0;border:1px solid #fff;padding:11px 14px;border-radius:12px;display:flex;align-items:center;gap:11px;box-shadow:0 8px 22px #14452e28;font-size:11px;line-height:1.5}.hero-sticker .star{display:grid;place-items:center;color:#557f63;border-radius:9px;background:#e4f0df;width:34px;height:34px;font-size:20px}.portal{display:grid;grid-template-columns:minmax(0,1fr) 296px;align-items:start;gap:23px;padding-bottom:74px}.portal-card{background:#fffcf8;border:1px solid var(--line);border-radius:21px;overflow:hidden;box-shadow:var(--shadow);min-width:0}.portal-header{padding:30px 35px 24px;display:flex;justify-content:space-between;gap:12px;align-items:center}.portal-header h2{margin:10px 0 0;font-size:24px;letter-spacing:-.6px}.demo-chip{border:1px solid #eadcc1;border-radius:100px;color:#99784b;background:#fff8e8;padding:9px 11px;font-size:10px;white-space:nowrap;font-weight:700}.portal-tabs{display:flex;gap:5px;background:#f3f6ed;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:9px 18px}.tab{border:0;border-radius:11px;padding:13px 22px;background:transparent;color:#728475;font-size:13px;font-weight:700}.tab span{margin-right:7px}.tab.active{background:#fffdfa;color:#28583f;box-shadow:0 2px 8px #28583f12}.tab:hover{color:#24583c}#panel-form,#panel-track{padding:28px 35px 30px}.form-intro{display:flex;justify-content:space-between;align-items:start;gap:12px}.form-intro h3,.tracking-intro h3{margin:0 0 8px;font-size:20px;letter-spacing:-.4px}.form-intro p,.tracking-intro p{color:#748376;line-height:1.7;font-size:12px;margin:0}.time-note{font-size:11px;color:#729076;border:1px solid #dce9d9;border-radius:30px;padding:9px;white-space:nowrap}.progress{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:26px 0 28px;padding:0;position:relative;gap:10px}.progress:before{content:'';position:absolute;top:17px;left:10%;right:10%;height:1px;background:#d6e1d6;z-index:0}.progress li{position:relative;z-index:1;display:flex;align-items:center;flex-direction:column;gap:9px;color:#87978a;font-size:11px;text-align:center}.progress li span{width:35px;height:35px;border-radius:50%;display:grid;place-items:center;background:#ecf1e9;color:#708371;border:2px solid #e3eae0;font-size:12px;font-weight:850}.progress li.current span,.progress li.done span{background:#285a42;color:white;border-color:#285a42}.progress li.current b{color:#235a3d}.progress li.done b{color:#507d5a}.step-panel{border:0;margin:0;padding:0;min-width:0}.step-panel legend{width:100%;display:flex;align-items:center;gap:10px;font-size:18px;font-weight:750;letter-spacing:-.45px}.section-no{display:inline-grid;place-items:center;width:35px;height:35px;border-radius:10px;background:#e4efe2;color:#2e684b;font-size:11px;letter-spacing:0}.field-help{color:#728476;font-size:12px;line-height:1.75;margin:13px 0 21px}.field{display:flex;flex-direction:column;gap:7px;margin-bottom:19px;min-width:0}.field label{font-size:12px;color:#3b5544;font-weight:750}.req{color:#c66c42}.field input,.field textarea,.field select{border-radius:11px;border:1px solid #d7e0d6;background:white;color:#2d4436;width:100%;min-height:44px;padding:12px 13px;outline:none;transition:border .16s,box-shadow .16s;font-size:13px}.field textarea{resize:vertical;line-height:1.7}.field input:focus,.field textarea:focus,.field select:focus{border-color:#79a88a;box-shadow:0 0 0 3px #87ba962b}.field input::placeholder,.field textarea::placeholder{color:#99a79b}.field small{color:#879689;font-size:10px;line-height:1.5}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}.upload-placeholder{display:flex;align-items:start;gap:14px;border:1.5px dashed #cddbcf;padding:18px;background:#f6faf3;border-radius:13px;margin:6px 0 20px}.upload-placeholder .upload-icon{width:40px;height:40px;border-radius:11px;background:#e5efe1;color:#567d60;display:grid;place-items:center;flex:none;font-size:23px}.upload-placeholder b{font-size:12px}.upload-placeholder p{color:#7b8f7d;font-size:11px;line-height:1.6;margin:7px 0 10px}.upload-off{font-size:10px;color:#ae704e;background:#fff2e2;border-radius:100px;padding:6px 9px;font-weight:750}.declaration{display:flex;align-items:start;gap:10px;background:#f8f3e8;padding:14px;border-radius:11px;font-size:11px;line-height:1.7;color:#6d6d56;cursor:pointer}.declaration input{width:17px;height:17px;accent-color:#2a6549;flex:none;margin:1px 0 0}.wizard-actions{border-top:1px solid #e9ede6;padding-top:23px;margin-top:18px;display:flex;justify-content:space-between;gap:12px;align-items:center}.action-left,.action-right{display:flex;gap:7px;align-items:center;flex-wrap:wrap}.button{border:0;border-radius:11px;display:inline-flex;gap:10px;align-items:center;justify-content:center;font-weight:750;font-size:12px;min-height:45px;padding:12px 19px}.button-primary{background:#23553f;color:white;box-shadow:0 9px 17px #22553e18}.button-primary:hover{background:#31704e}.button-ghost{background:#edf2ea;color:#3a6747}.button-link{background:none;color:#60926a;padding-left:5px;padding-right:5px}.button-disabled{color:#8f9a90;background:#e4ebe3}.form-message{padding:13px 15px;border-radius:11px;background:#fff1e3;color:#895c3b;font-size:12px;line-height:1.6;margin-bottom:20px}.review-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.review-item{background:#f5f7f1;padding:15px;border:1px solid #e7ede3;border-radius:11px;min-width:0}.review-item.wide{grid-column:span 2}.review-item small{display:block;color:#849486;font-size:10px;font-weight:800;letter-spacing:.4px;margin-bottom:8px}.review-item p{font-size:12px;line-height:1.7;color:#304d39;margin:0;overflow-wrap:anywhere;white-space:pre-wrap}.notice-box{margin-top:18px;background:#f0f5e9;border:1px solid #dee8d7;border-radius:13px;padding:18px;color:#40634b}.notice-box b{font-size:12px}.notice-box p{font-size:11px;line-height:1.75;margin:7px 0 0}.tracking-intro{padding:10px 0 22px;text-align:center}.tracking-icon{width:58px;height:58px;border-radius:17px;background:#e5efe2;display:grid;place-items:center;margin:0 auto 19px;color:#336b4d;font-size:27px}.tracking-intro p{max-width:440px;margin:auto}.tracking-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}.tracking-steps>div{border:1px solid #e1eadf;background:#f7faf5;border-radius:12px;padding:16px}.tracking-steps span{display:grid;place-items:center;background:#e3efdf;color:#386c4a;width:33px;height:33px;border-radius:50%;font-size:11px;font-weight:800;margin-bottom:11px}.tracking-steps b{font-size:12px}.tracking-steps p{font-size:11px;color:#7a8b7c;line-height:1.6}.tracking-notice{margin:22px 0}.guidance{padding:29px 27px;background:#e8efe1;border-radius:19px;border:1px solid #d8e6d6}.guidance-heading{display:flex;align-items:center;gap:12px;color:#547960;font-size:10px;font-weight:800;letter-spacing:1.1px}.guide-ornament{font-size:25px}.guidance h3{font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:28px;letter-spacing:-.75px;line-height:1.25;margin:20px 0 25px}.guide-item{display:flex;align-items:start;gap:12px;border-top:1px solid #d3e0d0;padding:17px 0}.guide-number{color:#80a184;font-size:12px;font-weight:800}.guide-item b{font-size:12px;color:#355b44}.guide-item p{font-size:11px;color:#728874;line-height:1.75;margin:6px 0 0}.guide-bottom{background:#d9e8d3;border-radius:12px;padding:16px;display:flex;gap:10px;margin-top:4px;align-items:start}.guide-bottom span{color:#3f7b51;font-size:19px}.guide-bottom p{margin:0;color:#56735e;font-size:11px;line-height:1.7}.closing{background:var(--forest);color:white;border-radius:19px;padding:36px 43px;display:flex;align-items:center;justify-content:space-between;gap:30px}.closing .tiny-label{color:#a4d1ad}.closing h2{font-family:Georgia,"Times New Roman",serif;font-size:33px;font-weight:400;margin:10px 0}.closing p{font-size:12px;color:#c3dbcb;line-height:1.7;max-width:550px;margin:0}.button-light{background:#ecf4e8;color:#28563c;white-space:nowrap}.footer{padding:38px 0;display:flex;justify-content:space-between;align-items:center;gap:17px;color:#7d9081;font-size:11px}.footer div{display:flex;flex-direction:column;gap:4px}.footer div b{color:#23523c;font-size:17px}fieldset[hidden],section[hidden],button[hidden],div[hidden]{display:none!important}@media(max-width:1040px){.hero{gap:25px}.portal{grid-template-columns:minmax(0,1fr) 240px}.guidance{padding:23px}.portal-header,#panel-form,#panel-track{padding-left:25px;padding-right:25px}}@media(max-width:800px){.wrapper,.header-inner{width:min(680px,calc(100% - 34px))}.hero{grid-template-columns:1fr;gap:20px;padding:37px 0}.hero-visual{display:none}.portal{grid-template-columns:1fr}.guidance{order:2}.guidance h3{font-size:27px}.closing{flex-direction:column;align-items:start;padding:29px 25px}.footer{flex-wrap:wrap}.footer>span:nth-child(2){order:3;flex-basis:100%}.top-links{gap:13px}}@media(max-width:520px){.demo-banner{font-size:10px;align-items:start;padding:10px 13px}.demo-banner strong{font-size:9px}.header-inner{min-height:74px}.brand-icon{width:41px;height:41px}.brand-icon svg{width:35px}.brand-word strong{font-size:20px}.brand-word small{font-size:7px;letter-spacing:.8px}.top-links a{display:none}.top-chip{padding:9px 11px;font-size:10px}.hero h1{font-size:38px;letter-spacing:-1.55px}.hero-content>p{font-size:12px}.hero-badges span{font-size:10px;padding:7px}.portal-header{padding:21px 16px 16px;flex-wrap:wrap;gap:11px}.portal-header h2{font-size:20px}.portal-tabs{padding:7px}.tab{padding:12px 10px;flex:1;font-size:11px}.tab span{margin-right:3px}#panel-form,#panel-track{padding:22px 17px 24px}.form-intro h3{font-size:18px}.form-intro p{font-size:11px}.time-note{display:none}.progress{margin-top:22px}.progress li{font-size:10px}.step-panel legend{font-size:16px}.field-row{grid-template-columns:1fr;gap:0}.wizard-actions{align-items:stretch}.action-left,.action-right{flex-direction:column-reverse;justify-content:space-between;align-items:stretch}.action-left .button,.action-right .button{min-height:42px;padding:10px 11px}.action-left{align-items:start}.action-left .button-link{font-size:10px}.review-grid{grid-template-columns:1fr}.review-item.wide{grid-column:auto}.tracking-steps{grid-template-columns:1fr}.footer{font-size:10px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Legend receives script-managed focus after changing steps; avoid a stray rectangular focus border. */
.step-panel legend:focus{outline:none}

/* v02: Legal notice and dependent kecamatan/desa selectors */
.legal-warning{display:flex;gap:18px;align-items:flex-start;background:#fff6e5;border:1px solid #ead5ae;border-left:5px solid #c99445;border-radius:17px;padding:23px 27px;margin:3px auto 24px;box-shadow:0 8px 28px #6f56260a}
.legal-warning-icon{flex:none;display:grid;place-items:center;width:44px;height:44px;border-radius:13px;color:#875b22;background:#f8e7c7;font-size:23px}
.legal-warning-body{min-width:0}.legal-warning-kicker{font-size:10px;font-weight:850;letter-spacing:1.25px;color:#9c692a}.legal-warning h2{font-size:18px;margin:7px 0 8px;color:#533919;letter-spacing:-.3px}.legal-warning p{font-size:12px;line-height:1.8;color:#745b37;margin:0 0 8px}.legal-warning strong{color:#65431a}
.legal-law{margin:13px 0;border-radius:11px;background:#fffcf4;border:1px solid #ead8b9}.legal-law summary{padding:12px 15px;cursor:pointer;color:#775322;font-size:12px;font-weight:800;list-style:none;display:flex;justify-content:space-between;align-items:center}.legal-law summary::-webkit-details-marker{display:none}.legal-law[open] summary span{transform:rotate(180deg)}.legal-law blockquote{border-left:3px solid #c99d5f;margin:4px 15px 10px;padding:10px 13px;font-size:12px;line-height:1.85;color:#604a2b;background:#fff9eb}.legal-law .law-fine-print{margin:0 15px 14px;color:#846d4d;font-size:11px}.legal-warning .legal-warning-reassurance{font-size:11px;color:#7a684d;margin:0}
.location-picker{padding:18px;background:#f5f8f1;border:1px solid #dbe8d7;border-radius:14px;margin:0 0 19px}.location-heading{display:flex;align-items:center;gap:11px;margin-bottom:17px}.location-heading-icon{font-size:20px;color:#33684a;width:36px;height:36px;border-radius:10px;background:#e1eddc;display:grid;place-items:center}.location-heading strong{display:block;font-size:13px;color:#2c583e}.location-heading small{display:block;font-size:10px;color:#7b917c;line-height:1.5;margin-top:4px}.location-picker .field:last-child{margin-bottom:0}.location-picker .field select:disabled{background:#edf0eb;color:#829085;cursor:not-allowed}.wilayah-notice{background:#fff4dc;border:1px solid #ecd9b2;color:#85652f;font-size:11px;line-height:1.6;padding:10px 12px;border-radius:9px;margin:-4px 0 16px}.declaration.honesty{margin-top:10px;background:#edf5e9;color:#3c6346}
@media(max-width:800px){.legal-warning{padding:18px 19px;gap:12px}.legal-warning h2{font-size:16px}}@media(max-width:520px){.legal-warning{padding:17px 14px;gap:11px}.legal-warning-icon{width:35px;height:35px;font-size:18px}.legal-warning h2{font-size:15px}.legal-warning p{font-size:11px}.location-picker{padding:13px}.legal-law blockquote{font-size:11px}}

/* SAMBAT public service: root homepage immediately displays the form. */
html{scroll-padding-top:16px}
.hero{min-height:0;grid-template-columns:minmax(0,1fr) 235px;gap:28px;padding-top:23px;padding-bottom:18px}
.hero h1{font-size:clamp(28px,3vw,41px);line-height:1.13;letter-spacing:-1px;margin:11px 0 9px}
.hero-content>p{font-size:12px;line-height:1.65;max-width:775px}
.hero-badges{margin-top:13px}
.hero-badges span{font-size:10px;padding:7px 10px}
.hero-visual{height:160px;border-radius:65px 65px 15px 15px}
.hero-sun{height:86px;width:86px;right:30px;top:12px}
.hero-sticker{bottom:8px;left:9px;padding:7px 9px;font-size:9px}
.hero-sticker .star{height:25px;width:25px}
.legal-warning{padding:13px 18px;margin:0 auto 17px;gap:12px}
.legal-warning-icon{height:36px;width:36px;font-size:18px}
.legal-warning h2{font-size:14px;margin:4px 0}
.legal-warning p{font-size:11px;line-height:1.6}
.legal-law{margin:6px 0}
.legal-law summary{padding:7px 10px;font-size:11px}
.legal-warning-reassurance{display:none}
.portal-header{padding-top:23px;padding-bottom:18px}
.portal-header h2{font-size:22px;margin-top:6px}
@media(max-width:800px){.hero{grid-template-columns:1fr;gap:0;padding:22px 0 14px}.hero-visual{display:none}.hero h1{font-size:34px}.legal-warning{padding:12px 14px;gap:9px}.legal-warning h2{font-size:14px}}
@media(max-width:520px){.hero{padding-top:17px;padding-bottom:12px}.hero h1{font-size:30px;line-height:1.16}.hero-content>p{font-size:11px}.hero-badges{margin-top:9px}.hero-badges span{font-size:9px;padding:6px 8px}.legal-warning{margin-bottom:13px}.legal-warning-icon{display:none}.demo-chip{white-space:normal;max-width:160px;text-align:center}.portal-header h2{font-size:19px}}

/* OAuth info / brand: exact user-provided sambat el. icon. */
img.brand-icon{display:block;background:transparent;object-fit:contain;padding:0;flex:none}
.footer nav[aria-label="Informasi dan ketentuan SAMBAT"] a:hover{text-decoration:underline}
.declaration a{text-decoration:underline;text-underline-offset:2px;font-weight:700}
