:root{color-scheme:dark;--bg:#0d0e13;--surface:#191a21;--surface2:#20212a;--line:#38332b;--gold:#dcc188;--gold2:#a78852;--white:#f6f0e2;--muted:#a5a0a0;--red:#e6a8a2;--green:#99d3ad;font-family:Inter,Apple SD Gothic Neo,Pretendard,Malgun Gothic,system-ui,sans-serif}
*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse 90% 36% at 50% -7%,#453419 0%,transparent 80%),var(--bg);color:var(--white)}
.shell{max-width:550px;margin:0 auto;min-height:100dvh;padding:0 18px env(safe-area-inset-bottom)}
.brand{height:73px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #4d422e}.brand-crown{width:39px;height:39px;border:1px solid #9f8452;border-radius:10px;display:grid;place-items:center;color:#efcd87;font-size:26px;background:#2a261f}.brand-text{display:flex;flex:1;flex-direction:column;gap:2px}.brand-text strong{font-size:16px;letter-spacing:1.8px;color:#efd59c}.brand-text span{font-size:9px;letter-spacing:2.3px;color:#8f8271}.live-status{font-size:10px;color:#b4a88e;border:1px solid #65583a;border-radius:25px;padding:5px 9px;white-space:nowrap}
.hero{text-align:center;padding:31px 8px 25px}.overline{font-size:10px;letter-spacing:3px;color:var(--gold2);margin:0 0 7px}.hero h1{margin:0;font-size:26px;letter-spacing:-.8px}.hero p{font-size:12px;line-height:1.7;color:var(--muted);margin:10px auto 0;max-width:330px}
.step-heading{display:flex;align-items:center;gap:12px;margin:9px 0 15px}.stepnum{display:grid;place-items:center;width:34px;height:34px;flex-shrink:0;background:#30281e;color:#efd49e;border:1px solid #5e4d31;border-radius:50%;font-size:12px;font-weight:800}.step-heading h2{font-size:17px;margin:0 0 4px}.step-heading p{font-size:11px;color:var(--muted);margin:0}
.type-switch{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.type-switch button{padding:13px 4px;border-radius:10px;color:#c4beb2;background:#1c1c23;border:1px solid #403d38;font-weight:700;font-size:13px;cursor:pointer;transition:background .1s}.type-switch button[aria-pressed="true"]{background:linear-gradient(145deg,#6a532a,#ab8950);border-color:#e1c186;color:#14100a;box-shadow:0 0 0 1px #e0bd8240}
.destination{margin:13px 0 28px;display:flex;align-items:center;gap:9px;background:#1b201b;border:1px solid #39543b;border-radius:10px;padding:11px 12px}.dest-dot{width:8px;height:8px;background:#82bd91;border-radius:50%;box-shadow:0 0 0 4px #31523d70}.destination strong{font-size:12px;color:#afe0b8}.destination>span:last-child{margin-left:auto;color:#93a398;font-size:10px}
.form-heading{margin-bottom:17px}.form-card{border:1px solid #36332f;border-radius:14px;background:linear-gradient(135deg,#1b1b22,#14151b);padding:16px 14px;margin-bottom:12px}.form-card h3{font-size:13px;color:#e1c38b;margin:0 0 14px;display:flex;align-items:center;gap:7px}.form-card h3:before{content:"";height:12px;width:3px;background:#d9ba78;border-radius:4px}.form-grid{display:grid;grid-template-columns:1fr;gap:13px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.field label{display:block;font-size:11px;color:#c5bcae;margin-bottom:6px}.field .star{color:#d8ac6d}.field input{display:block;min-width:0;width:100%;background:#25252d;color:#fff4e2;border:1px solid #48433a;border-radius:9px;padding:12px 11px;outline:none;font-size:14px;font-family:inherit}.field input:focus{border-color:#d8b36c;box-shadow:0 0 0 2px #bd975332}.field input:read-only{color:#d0c6ac;background:#24231f;cursor:default}.field input::placeholder{color:#706e6d}.field small{display:block;color:#9b9588;font-size:10px;line-height:1.55;margin-top:4px}.field.invalid input{border-color:#ce7465}.field.invalid small{color:#ec9c91}
.privacy{color:#a8a09a;font-size:11px;line-height:1.8;padding:4px 2px 12px}.actions{position:sticky;bottom:env(safe-area-inset-bottom);padding:12px 0 15px;background:linear-gradient(to bottom,transparent,#0d0e13 18px)}.actions button{width:100%;border:none;border-radius:12px;background:linear-gradient(120deg,#e9c98c,#b99b61);color:#191309;font-size:16px;font-weight:800;min-height:54px;display:flex;align-items:center;justify-content:center;gap:13px;cursor:pointer}.actions button:disabled{opacity:.55;cursor:wait}.status{min-height:36px;text-align:center;font-size:12px;color:var(--red);line-height:1.55;margin:6px 0 21px}.status.success{color:var(--green)}footer{text-align:center;color:#716a5c;font-size:9px;letter-spacing:1.2px;padding:7px 0 28px}
@media(min-width:400px){.form-grid.two{gap:11px}}
@media(max-width:355px){.shell{padding-left:12px;padding-right:12px}.form-card{padding:13px 11px}.field input{font-size:13px;padding:11px 9px}}
