@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_astro/space-grotesk-vietnamese-wght-normal.D0rl6rjA.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_astro/space-grotesk-latin-ext-wght-normal.D9tNdqV9.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/_astro/space-grotesk-latin-wght-normal.BhU9QXUp.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--ink:#10210a;--paper:#fbf7ec;--paper-dim:#f1ecdd;--brand:#163300;--brand-hover:#0d2600;--lime:#c6f24c;--lime-dim:#eef8cf;--stamp:#b3401e;--stamp-dim:#fbe8e0;--line:#10210a29;--muted:#6b7566;--placeholder:#b8bdb1}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--ink);-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 15% 8%,#c6f24c0f,#0000 45%),radial-gradient(circle at 85% 92%,#c6f24c0d,#0000 45%);min-height:100vh;font-family:Plus Jakarta Sans Variable,Plus Jakarta Sans,system-ui,-apple-system,sans-serif}h1,.mono-data{font-family:Space Grotesk Variable,Space Grotesk,Plus Jakarta Sans Variable,system-ui,sans-serif}.mono-data{font-variant-numeric:tabular-nums;letter-spacing:.02em}input,select,textarea,button{font-family:inherit}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.page-wrap{max-width:32rem;margin:0 auto;padding:2rem 1rem 8rem}.header-row{justify-content:space-between;align-items:center;margin-bottom:.75rem;padding:0 .5rem;display:flex}.brand-cluster{align-items:center;gap:.625rem;display:flex}.brand-mark{background:var(--lime);width:32px;height:32px;color:var(--ink);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;font-size:14px;font-weight:900;display:flex}.brand-name{color:var(--paper);letter-spacing:-.01em;font-size:13px;font-weight:700}.header-tag{color:#fbf7ec80;font-size:11px;font-weight:600}#offline-banner{background:var(--stamp);color:var(--paper);border-radius:10px;align-items:center;gap:8px;margin-bottom:10px;padding:10px 14px;font-size:12.5px;font-weight:700;display:none}#offline-banner.show{display:flex}#draft-banner{background:var(--lime-dim);border:1px solid var(--line);color:var(--ink);border-radius:12px;justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;padding:12px 14px;font-size:12.5px;font-weight:600;display:none}#draft-banner.show{display:flex}#draft-banner .btns{flex-shrink:0;gap:6px;display:flex}#draft-banner button{cursor:pointer;border:none;border-radius:8px;padding:7px 10px;font-size:11.5px;font-weight:700}#draft-restore-btn{background:var(--brand);color:var(--paper)}#draft-discard-btn{color:var(--muted);background:0 0}.ticket{background:var(--paper);border-radius:0 0 22px 22px;position:relative;overflow:hidden;box-shadow:0 25px 50px #00000073}.ticket:before{content:"";background-image:radial-gradient(circle at 11px 0, var(--ink) 7px, transparent 7.3px);z-index:5;background-repeat:repeat-x;background-size:22px 13px;height:13px;position:absolute;top:-1px;left:0;right:0}.stub-band{background:var(--brand);color:var(--paper);padding:1.5rem 1.5rem 1.25rem}.stub-band-top{justify-content:space-between;align-items:baseline;margin-bottom:.25rem;display:flex}.step-label{color:var(--lime);font-size:11px;font-weight:600}.step-time{color:#fbf7ec80;align-items:center;gap:6px;font-size:11px;font-weight:600;display:flex}.save-dot{background:var(--lime);opacity:0;border-radius:999px;width:5px;height:5px;transition:opacity .25s}.save-dot.show{opacity:1}.progress-track{background-image:repeating-linear-gradient(90deg, var(--line) 0 5px, transparent 5px 9px);border-radius:999px;height:5px;overflow:hidden}#progress-bar{background-image:repeating-linear-gradient(90deg, var(--lime) 0 5px, transparent 5px 9px);border-radius:999px;height:5px;transition:width .35s cubic-bezier(.4,0,.2,1)}.stub-line{border-top:1.5px dashed var(--line);margin:0 1.5rem;position:relative}.stub-line:before,.stub-line:after{content:"";background:var(--ink);border-radius:999px;width:14px;height:14px;position:absolute;top:-7px}.stub-line:before{left:-22px}.stub-line:after{right:-22px}form#cdd-form{padding:1.75rem 1.5rem 1.5rem;overflow:hidden}.step{display:none}.step.active{display:block}.step.active.dir-fwd{animation:.32s cubic-bezier(.16,1,.3,1) slide-in-right}.step.active.dir-back{animation:.32s cubic-bezier(.16,1,.3,1) slide-in-left}@keyframes slide-in-right{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes slide-in-left{0%{opacity:0;transform:translate(-24px)}to{opacity:1;transform:translate(0)}}@keyframes shake{10%,90%{transform:translate(-1px)}20%,80%{transform:translate(2px)}30%,50%,70%{transform:translate(-4px)}40%,60%{transform:translate(4px)}}.step-title{color:var(--ink);margin:0 0 .25rem;font-size:26px;font-weight:700;line-height:1.2}.step-sub{color:var(--muted);margin:0 0 1.5rem;font-size:13px;line-height:1.5}.field-stack{flex-direction:column;gap:1rem;display:flex}.field-row-2{grid-template-columns:1fr 1fr;gap:.75rem;display:grid}.field-label{color:var(--muted);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.field-label .optional{color:var(--placeholder);font-weight:500}.field-hint{color:var(--placeholder);margin-top:4px;font-size:11.5px;font-weight:500}.field-input{border:1.5px solid var(--line);width:100%;color:var(--ink);background:#fff;border-radius:10px;outline:none;padding:13px 14px;font-size:15.5px;font-weight:600;transition:border-color .15s,box-shadow .15s;display:block}.field-input:focus{border-color:var(--brand);box-shadow:0 0 0 3px #c6f24c59}.field-input::placeholder{color:var(--placeholder);font-weight:500}.field-input.invalid{border-color:var(--stamp);animation:.32s shake}.field-error{color:var(--stamp);align-items:center;gap:5px;margin-top:6px;font-size:12px;font-weight:600;display:none}.field-error.show{display:flex}.opt-grid{gap:.625rem;display:grid}.opt-grid.cols-2{grid-template-columns:1fr 1fr}.opt-grid.cols-3{grid-template-columns:1fr 1fr 1fr}.opt-grid.cols-4{grid-template-columns:1fr 1fr 1fr 1fr}.opt{display:block;position:relative}.opt input{opacity:0;pointer-events:none;position:absolute}.opt-card{border:1.5px solid var(--line);color:var(--ink);cursor:pointer;background:#fff;border-radius:10px;align-items:center;gap:10px;height:100%;padding:12px 13px;font-size:13.5px;font-weight:600;transition:border-color .15s,background .15s,transform .1s;display:flex}.opt-card:active{transform:scale(.97)}.opt-card.center{text-align:center;justify-content:center}.opt-card .hole{border:1.5px solid var(--line);border-radius:999px;flex-shrink:0;width:16px;height:16px}.opt input:checked+.opt-card{border-color:var(--brand);background:var(--lime-dim)}.opt input:checked+.opt-card .hole{border-color:var(--brand);background:var(--brand);box-shadow:0 0 0 2.5px var(--lime)}.opt input:focus-visible+.opt-card{outline:2px solid var(--brand);outline-offset:2px}.opt-grid.invalid .opt-card{animation:.32s shake}.other-wrap{margin-top:.75rem}.other-wrap.hidden{display:none}.field-block{margin-bottom:1.25rem}.upload-field{margin-top:1.5rem}.upload-field.hidden{display:none}.upload-box{border:1.5px dashed var(--line);width:100%;color:var(--muted);cursor:pointer;background:#fff;border-radius:12px;align-items:center;gap:12px;padding:12px 14px;font-size:13px;font-weight:600;transition:border-color .15s,background .15s;display:flex;position:relative}.upload-box.drag-over{border-color:var(--brand);background:var(--lime-dim)}.upload-box.has-file{border-style:solid;border-color:var(--brand);background:var(--lime-dim);color:var(--ink)}.upload-box.invalid{border-color:var(--stamp);background:var(--stamp-dim);animation:.32s shake}.upload-box input[type=file]{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.upload-icon-wrap{background:var(--paper-dim);border-radius:8px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex;overflow:hidden}.upload-icon-wrap img{object-fit:cover;width:100%;height:100%}.upload-icon{width:20px;height:20px;color:var(--muted)}.upload-box.has-file .upload-icon{color:var(--brand)}.upload-text-col{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.upload-text-col span{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.upload-sub{color:var(--placeholder);font-size:11px;font-weight:500}.upload-box.has-file .upload-sub{color:var(--brand)}.upload-remove{color:var(--stamp);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;padding:6px 8px;font-size:11px;font-weight:700}.upload-remove:hover{background:#b3401e14}.upload-hint{color:var(--placeholder);margin-top:6px;font-size:11.5px;font-weight:500}.review-summary{border:1px solid var(--line);background:#fff;border-radius:14px;flex-direction:column;gap:6px;margin-bottom:1.25rem;padding:1rem;font-size:13px;display:flex}.review-row{border-bottom:1px solid #10210a0d;justify-content:space-between;gap:1rem;padding:6px 0;display:flex}.review-row:last-child{border-bottom:none}.review-label{color:var(--placeholder);font-weight:700}.review-value{color:var(--brand);text-align:right;font-weight:700}.review-note{color:var(--muted);margin:0 0 1rem;font-size:12px;line-height:1.5}.done-wrap{text-align:center;padding:1.5rem 0}.stamp-wrap{justify-content:center;margin-bottom:22px;display:flex}.stamp{opacity:0;width:108px;height:108px;transform:scale(1.5)rotate(-14deg)}.step[data-step=done].active .stamp{animation:.55s cubic-bezier(.2,1.2,.4,1) .15s forwards stamp-down}@keyframes stamp-down{0%{opacity:0;transform:scale(1.6)rotate(-16deg)}65%{opacity:1;transform:scale(.94)rotate(-7deg)}to{opacity:1;transform:scale(1)rotate(-9deg)}}.step[data-step=done].active .ref-reveal{animation:.4s .55s backwards fade-up}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.done-title{color:var(--ink);margin:0 0 .5rem;font-size:24px;font-weight:700}.done-sub{color:var(--muted);max-width:20rem;margin:0 auto 1.5rem;font-size:14px;line-height:1.5}.ref-row{flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;display:flex}.ref-display{background:var(--ink);color:var(--lime);letter-spacing:.04em;border-radius:14px;padding:14px 24px;font-size:19px;font-weight:700;display:inline-block}.copy-btn{background:var(--brand);color:var(--paper);cursor:pointer;border:none;border-radius:12px;padding:12px 16px;font-size:12px;font-weight:700;transition:background .15s,transform .1s}.copy-btn:active{transform:scale(.96)}.copy-btn.copied{background:#3a6b1f}.footer-note{text-align:center;color:#fbf7ec59;margin-top:1.25rem;font-size:11px}@media (prefers-reduced-motion:reduce){.step.active,.stamp,.ref-reveal,*{opacity:1!important;animation:none!important;transform:none!important}}.nav-fixed{z-index:30;position:fixed;bottom:0;left:0;right:0}.nav-inner{max-width:32rem;margin:0 auto;padding:0 1rem}.nav-card{background:var(--paper);border-radius:18px 18px 0 0;padding-top:.5rem;position:relative;box-shadow:0 -12px 30px #00000059}#nav-bar{align-items:center;gap:12px;padding:1rem 1.5rem;display:flex}#nav-bar.hidden{display:none}#back-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:12px;padding:14px 16px;font-size:13px;font-weight:600;transition:background .15s}#back-btn:hover{background:var(--paper-dim)}#back-btn.invisible{visibility:hidden}#next-btn{background:var(--brand);color:var(--paper);cursor:pointer;border:none;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:8px;padding:14px;font-size:14px;font-weight:600;transition:transform .1s,background .15s;display:flex}#next-btn:hover{background:var(--brand-hover)}#next-btn:active{transform:scale(.98)}#next-btn:disabled{opacity:.65;cursor:not-allowed}.spinner{border:2px solid #fbf7ec59;border-top-color:var(--paper);border-radius:999px;width:15px;height:15px;animation:.7s linear infinite spin;display:none}.spinner.show{display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=420px){.step-title{font-size:22px}.opt-grid.cols-4{grid-template-columns:1fr 1fr}}
