*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}
html,body{margin:0;min-height:100%}
body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;color:#fff}
.stage{position:relative;width:100%;max-width:480px;margin:0 auto;container-type:inline-size;line-height:0}
.stage[hidden]{display:none}
.stage>img{width:100%;height:auto;display:block;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}
.hs{position:absolute;display:block;background:transparent;border:0;padding:0;margin:0;cursor:pointer;border-radius:1.5cqw}
.hs:active{background:rgba(255,255,255,.14)}
.fld{position:absolute;margin:0;border:0;border-radius:0;outline:0;background:#fff;color:#222;padding:0 3.6cqw;
 font:400 4.7cqw "Helvetica Neue",Helvetica,Arial,sans-serif;line-height:normal}
.fld::placeholder{color:#b4b4b9;opacity:1}
.sw{position:absolute;display:block}
.sw input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;z-index:2;cursor:pointer}
.sw i{display:none;position:absolute;inset:0;border-radius:999px;background:#4cd964;box-shadow:inset 0 0 0 .4cqw #3cc456}
.sw input:checked+i{display:block}
.sw i b{position:absolute;left:12%;top:50%;transform:translateY(-50%);font:700 3.9cqw Arial,sans-serif;color:#fff;line-height:1}
.sw i u{position:absolute;right:3%;top:3%;height:94%;aspect-ratio:1;border-radius:50%;background:#fff;box-shadow:0 .3cqw .8cqw #0006}
.err{position:absolute;display:flex;align-items:center;justify-content:center;text-align:center;padding:0 2cqw;
 font:700 3.6cqw/1.25 "Helvetica Neue",Arial,sans-serif;color:#fff;text-shadow:0 .2cqw .6cqw #000a,0 0 .8cqw #000a;pointer-events:none}
.tx{position:absolute;display:flex;align-items:center;color:#fff;white-space:nowrap;overflow:hidden;line-height:1;pointer-events:none}
.tx.name{font:700 7.5cqw "Helvetica Neue",Helvetica,Arial,sans-serif;display:block;line-height:8.9cqw;text-overflow:ellipsis}
.tx.num{font:400 4.7cqw "Helvetica Neue",Helvetica,Arial,sans-serif}
.endwrap{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;justify-content:flex-start;
 }
.part{position:relative;container-type:inline-size;width:100%;max-width:480px;margin:0 auto;line-height:0}
.part img{width:100%;height:auto;display:block}
.ext{width:100%;max-width:480px;margin:0 auto}
.in{position:absolute;margin:0;border:0;border-radius:0;outline:0;background:transparent;color:#111;padding:0 2cqw;
 font:400 4.6cqw Roboto,"Helvetica Neue",Arial,sans-serif;line-height:normal}
.in::placeholder{color:#3a3a3a;opacity:1}
.in.sm{font-size:4.1cqw}.in.sm::placeholder{color:#777}
.in:-webkit-autofill{-webkit-box-shadow:0 0 0 100cqw #f6f7fb inset;-webkit-text-fill-color:#111}
.cb{position:absolute;display:block;cursor:pointer}
.cb input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;z-index:2;cursor:pointer}
.cb i{position:absolute;display:none;pointer-events:none}
.cb input:checked+i{display:block}
.cb i::after{content:"";position:absolute;left:32%;top:8%;width:30%;height:58%;border:solid #fff;border-width:0 1cqw 1cqw 0;transform:rotate(45deg)}
.pick{position:absolute;display:block}
.pick select,.pick input{position:absolute;inset:0;width:100%;height:100%;margin:0;opacity:0;font-size:16px;z-index:2}
.pick .t{position:absolute;inset:0;display:flex;align-items:center;padding:0 2cqw;font:400 4.3cqw Roboto,"Helvetica Neue",Arial,sans-serif;color:#111;
 line-height:1;pointer-events:none}
.pick .t.mid{justify-content:center}
.pick .arr{position:absolute;right:3.8cqw;top:50%;margin-top:-.5cqw;border:1.3cqw solid transparent;border-top:1.6cqw solid #111;border-bottom:0;pointer-events:none;z-index:1}
.err.dark{color:#b00020;text-shadow:none}
.rwrap{min-height:100vh;min-height:100dvh;display:flex;flex-direction:column}
.rext{flex:1;background:#cfcfcf}
.tx.name.left{padding-left:0}
.ext-h{flex:1 1 0;background:url(img/home-mid.png) center/100% 100% no-repeat}
.toast{position:fixed;left:50%;bottom:calc(env(safe-area-inset-bottom,0px) + 18px);transform:translateX(-50%);z-index:10;max-width:90%;
 background:#fff;color:#14346e;padding:11px 16px;border-radius:6px;font:700 14px Arial,sans-serif;text-decoration:none;box-shadow:0 2px 10px #0008;text-align:center}
.toast[hidden]{display:none}
/* halaman WIP */
.app{max-width:480px;min-height:100vh;min-height:100dvh;margin:0 auto;position:relative;display:flex;flex-direction:column;background:linear-gradient(#1f56b0,#163c82);overflow:hidden}
.topbar{background:transparent;color:#cfe0ff;font-size:11px;text-align:center;padding:calc(env(safe-area-inset-top,0px) + 4px) 0 4px;font-weight:600}
.sky{position:absolute;left:0;right:0;bottom:0;height:130px;background:url(img/skyline.jpg) center bottom/cover no-repeat;opacity:.9;pointer-events:none}
.wip{margin:40px 20px;text-align:center;font-size:20px;font-weight:700;position:relative;z-index:1}
.wip p{font-size:15px;font-weight:400;opacity:.85}
.btns{display:flex;gap:14px;margin:0 14px;position:relative;z-index:1}
.btn{flex:1;height:46px;border:1px solid #0a2255;border-radius:5px;color:#fff;font-weight:700;font-size:19px;text-align:center;line-height:44px;text-decoration:none;background:linear-gradient(#2e68cf,#1b4797)}

/* ===== 2016 ===== */
.ext-l{flex:1 1 0;background:url(img/landing-mid.png) center/100% 100% no-repeat}
.ext-g{flex:1 1 0;background:#fff;display:flex;align-items:center;justify-content:center}
.soon{font:400 16px Roboto,Arial,sans-serif;color:#9a9a9a}
.pv{display:block;width:100vw;height:100vh;height:100dvh;object-fit:contain}
.skip{position:fixed;right:14px;bottom:calc(env(safe-area-inset-bottom,0px) + 14px);background:rgba(0,0,0,.25);color:#fff;border:1px solid rgba(255,255,255,.5);
 border-radius:14px;padding:6px 14px;font:700 13px Arial,sans-serif;z-index:5}
.skip[hidden]{display:none}
.sheet{position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:20;display:flex;align-items:flex-end;justify-content:center}
.sheet[hidden]{display:none}
.sheet .card{width:100%;max-width:480px;background:#fff;color:#222;padding:8px 0 calc(env(safe-area-inset-bottom,0px) + 8px);font:400 17px Roboto,Arial,sans-serif;display:flex;flex-direction:column}
.sheet .card b{padding:14px 20px;font-weight:700;color:#0060ad;border-bottom:1px solid #e4e4e4}
.sheet .card button,.sheet .card a{background:none;border:0;text-align:left;padding:14px 20px;font:inherit;color:#222;text-decoration:none}
.gw ~ .toast{bottom:calc(env(safe-area-inset-bottom,0px) + 96px)}
