:root{--u:min(calc(100vw / 1080), calc(100dvh / 1920));--navy-800:#162a39;--navy-600:#475a69;--gray-50:#f2f2f2;--white:#fff;--green-300:#83d1c9;--green-400:#62c0b6;--yellow-600:#dfc143;--text-primary:#162a39;--text-secondary:#475a69;--grad-green:linear-gradient(90deg, #148176, #77c6be);--grad-navy:linear-gradient(90deg, #162a39, #5b7080);--shadow-gray:0 calc(var(--u) * 24) calc(var(--u) * 32) #403d3c26;--shadow-green:0 calc(var(--u) * 8) calc(var(--u) * 12) #14817666;--header-h:calc(var(--u) * 105);--media-h:calc(var(--u) * 548)}*{box-sizing:border-box}html,body{height:100%;color:var(--text-primary);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;overscroll-behavior:none;touch-action:manipulation;-webkit-touch-callout:none;background:#000;margin:0;padding:0;overflow:hidden}img,video{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}::-webkit-scrollbar{display:none}body{letter-spacing:.02em;font-weight:700}button{font:inherit;letter-spacing:inherit;cursor:pointer;border:0}.kiosk{width:calc(var(--u) * 1080);height:calc(var(--u) * 1920);background:var(--gray-50);cursor:none;flex-direction:column;margin:0 auto;display:flex;position:relative;overflow:hidden}.kiosk.show-cursor,.kiosk.show-cursor *{cursor:auto}.kiosk *{cursor:inherit}.header{flex:0 0 var(--header-h);background:var(--navy-800);justify-content:center;align-items:center;display:flex;position:relative}.header img{width:calc(var(--u) * 88);height:calc(var(--u) * 57)}.main{flex-direction:column;flex:auto;display:flex;position:relative;overflow:hidden}.content{padding:calc(var(--u) * 40);align-items:center;gap:calc(var(--u) * 64);flex-direction:column;flex:auto;display:flex;overflow:hidden}.content.top{padding:calc(var(--u) * 80);gap:0}.hero{width:calc(var(--u) * 920);height:calc(var(--u) * 564);background:var(--white);border-radius:calc(var(--u) * 24);justify-content:center;align-items:center;display:flex}.hero img{width:calc(var(--u) * 400);height:calc(var(--u) * 400)}.title{margin-top:calc(var(--u) * 64);font-size:calc(var(--u) * 48);text-align:center;white-space:pre-line;line-height:1.6}.sub{margin-top:calc(var(--u) * 16);font-size:calc(var(--u) * 32);color:var(--text-secondary);text-align:center;line-height:1.6}.buttons{margin-top:calc(var(--u) * 64);gap:calc(var(--u) * 40);justify-content:center;display:flex}.scanning{margin-top:calc(var(--u) * 64);width:100%;padding:calc(var(--u) * 24) 0;font-size:calc(var(--u) * 40);color:var(--white);background:var(--grad-navy);line-height:1.6}.scanning:disabled{cursor:default;opacity:1}.btn{height:calc(var(--u) * 124.8);width:calc(var(--u) * 360);border-radius:calc(var(--u) * 120);font-size:calc(var(--u) * 32);color:var(--white);background:var(--grad-green);box-shadow:var(--shadow-green);line-height:1.4}.btn.wide{width:calc(var(--u) * 480)}.btn.outline{background:var(--white);color:#148176;border:calc(var(--u) * 4) solid #2b988d}.btn:disabled{opacity:.6}.lead{align-items:center;gap:calc(var(--u) * 40);width:100%;display:flex}.lead img{width:calc(var(--u) * 136);height:calc(var(--u) * 136);flex:none}.lead p{font-size:calc(var(--u) * 28);white-space:pre-line;margin:0;line-height:1.6}.section{align-items:flex-start;gap:calc(var(--u) * 24);flex-direction:column;width:100%;display:flex}.pill{background:var(--grad-navy);color:var(--white);border-radius:calc(var(--u) * 48);padding:calc(var(--u) * 12) calc(var(--u) * 40);font-size:calc(var(--u) * 40);line-height:1.6}.cards{width:100%;height:calc(var(--u) * 294);gap:calc(var(--u) * 40);flex:none;align-items:flex-end;display:flex}.card{background:var(--white);border-radius:calc(var(--u) * 24);box-shadow:var(--shadow-gray);padding:calc(var(--u) * 96) calc(var(--u) * 24) calc(var(--u) * 40);flex-direction:column;flex:1 1 0;align-items:center;display:flex;position:relative}.card.tappable{cursor:pointer}.card .icon{top:calc(var(--u) * -40);width:calc(var(--u) * 120);height:calc(var(--u) * 120);position:absolute;left:50%;transform:translate(-50%)}.card .label{font-size:calc(var(--u) * 32);text-align:center;line-height:1.6}.count{align-items:flex-end;gap:calc(var(--u) * 4);display:flex}.count .n{font-size:calc(var(--u) * 56);letter-spacing:.04em;line-height:1.2}.count .unit{font-size:calc(var(--u) * 28);line-height:1.6}.insert{font-size:calc(var(--u) * 28);color:#ff0808;line-height:1.6}.points{background:var(--white);border-radius:calc(var(--u) * 24);width:100%;box-shadow:var(--shadow-gray);padding:calc(var(--u) * 40) calc(var(--u) * 24);justify-content:center;align-items:flex-end;gap:calc(var(--u) * 22);display:flex}.points .n{font-size:calc(var(--u) * 80);letter-spacing:.04em;line-height:1.2}.points .unit{font-size:calc(var(--u) * 40);line-height:1.6}.qr{width:calc(var(--u) * 240);height:calc(var(--u) * 240);padding:calc(var(--u) * 25.263);background:var(--white);border-radius:calc(var(--u) * 12.632);flex:none}.qr img{object-fit:contain;width:100%;height:100%;display:block}.media{flex:0 0 var(--media-h);background:#000;position:relative;overflow:hidden}.media.wait{z-index:5;cursor:pointer;flex:none;position:absolute;inset:0}.media.none{display:none}.media iframe,.media img,.media video{object-fit:cover;pointer-events:none;border:0;width:100%;height:100%;display:block;position:absolute;inset:0}.closed{z-index:6;text-align:center;white-space:pre-line;font-size:calc(var(--u) * 48);color:var(--white);padding:calc(var(--u) * 48) calc(var(--u) * 24);background:#0009;line-height:1.6;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.overlay{z-index:20;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.dialog{width:calc(var(--u) * 920);background:var(--white);border-radius:calc(var(--u) * 24);padding:calc(var(--u) * 80) calc(var(--u) * 40);align-items:center;gap:calc(var(--u) * 80);flex-direction:column;display:flex}.dialog p{font-size:calc(var(--u) * 48);text-align:center;white-space:pre-line;margin:0;line-height:1.6}.issues{width:calc(var(--u) * 920);background:var(--white);border-radius:calc(var(--u) * 24);max-height:80vh;padding:calc(var(--u) * 96) calc(var(--u) * 40) calc(var(--u) * 40);position:relative;overflow:auto}.issues .close{top:calc(var(--u) * 24);right:calc(var(--u) * 24);width:calc(var(--u) * 64);height:calc(var(--u) * 64);font-size:calc(var(--u) * 48);color:var(--text-primary);background:0 0;position:absolute}.issues button.item{text-align:left;background:var(--gray-50);border-radius:calc(var(--u) * 16);width:100%;padding:calc(var(--u) * 32);margin-bottom:calc(var(--u) * 24);font-size:calc(var(--u) * 36);color:var(--text-primary);display:block}.report-btn{right:calc(var(--u) * 24);top:calc((var(--header-h) - var(--u) * 60) / 2);z-index:10;height:calc(var(--u) * 60);background:var(--white);color:var(--navy-600);border-radius:calc(var(--u) * 40);font-size:calc(var(--u) * 24);padding:calc(var(--u) * 12) calc(var(--u) * 24);box-shadow:var(--shadow-gray);position:absolute}.admin-btn{margin:calc(var(--u) * 16) auto 0;color:var(--text-secondary);opacity:.6;font-size:calc(var(--u) * 24);padding:calc(var(--u) * 12) calc(var(--u) * 24);background:0 0;display:block}.dialog.maint{gap:calc(var(--u) * 32)}.pin-dots{font-size:calc(var(--u) * 48);letter-spacing:.3em;min-height:calc(var(--u) * 72)}.maint-msg{font-size:calc(var(--u) * 30);color:#c0392b;text-align:center;line-height:1.5}.pin-pad{grid-template-columns:repeat(3, calc(var(--u) * 200));gap:calc(var(--u) * 20);display:grid}.pin-pad .btn{width:100%}.maint-menu{gap:calc(var(--u) * 24);flex-direction:column;align-items:center;width:100%;display:flex}.maint-menu .btn{width:calc(var(--u) * 760)}.toast{left:50%;bottom:calc(var(--u) * 120);z-index:30;background:var(--navy-800);color:var(--white);border-radius:calc(var(--u) * 24);font-size:calc(var(--u) * 40);padding:calc(var(--u) * 32) calc(var(--u) * 64);white-space:nowrap;animation:5.5s both fade;position:fixed;transform:translate(-50%)}.dialog.door{gap:calc(var(--u) * 48)}.spinner{width:calc(var(--u) * 120);height:calc(var(--u) * 120);border:calc(var(--u) * 12) solid var(--gray-50);border-top-color:var(--navy-600);border-radius:50%;animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.door-warn{left:50%;top:calc(var(--header-h) + var(--u) * 24);z-index:15;pointer-events:none;background:var(--navy-800);color:var(--white);border-radius:calc(var(--u) * 24);font-size:calc(var(--u) * 40);padding:calc(var(--u) * 28) calc(var(--u) * 56);white-space:pre;text-align:center;line-height:1.5;position:fixed;transform:translate(-50%)}.door-warn b{font-size:calc(var(--u) * 56);margin:0 calc(var(--u) * 8)}.get{z-index:16;pointer-events:none;width:calc(var(--u) * 640);padding:calc(var(--u) * 48) calc(var(--u) * 40);background:var(--white);border-radius:calc(var(--u) * 40);box-shadow:0 calc(var(--u) * 16) calc(var(--u) * 48) #00000040;align-items:center;gap:calc(var(--u) * 16);flex-direction:column;animation:4s cubic-bezier(.2,.9,.3,1.2) both get-pop;display:flex;position:fixed;top:42%;left:50%}.get-icons{gap:calc(var(--u) * 24);display:flex}.get-icons img{width:calc(var(--u) * 200);height:calc(var(--u) * 200);object-fit:contain;animation:.7s ease-out .2s 2 both get-jump}.get-label{font-size:calc(var(--u) * 44);color:var(--text-primary);white-space:nowrap;margin:0}.get-points{font-size:calc(var(--u) * 72);color:#e8a33d;white-space:nowrap;margin:0;font-weight:700;animation:.6s ease-out .35s both get-up}@keyframes get-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.4)}9%{opacity:1;transform:translate(-50%,-50%)scale(1.08)}14%{transform:translate(-50%,-50%)scale(1)}90%{opacity:1;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-60%)scale(.95)}}@keyframes get-jump{0%,to{transform:translateY(0)rotate(0)}40%{transform:translateY(calc(var(--u) * -40)) rotate(-8deg)}70%{transform:translateY(0)rotate(6deg)}}@keyframes get-up{0%{opacity:0;transform:translateY(calc(var(--u) * 30))}to{opacity:1;transform:none}}.tap-hint{left:50%;bottom:calc(var(--u) * 140);z-index:2;pointer-events:none;align-items:center;gap:calc(var(--u) * 24);white-space:nowrap;color:var(--white);border-radius:calc(var(--u) * 60);font-size:calc(var(--u) * 40);padding:calc(var(--u) * 24) calc(var(--u) * 56) calc(var(--u) * 24) calc(var(--u) * 40);background:#162a398c;animation:2.4s ease-in-out infinite tap-breathe;display:flex;position:absolute;transform:translate(-50%)}.tap-ring{width:calc(var(--u) * 40);height:calc(var(--u) * 40);background:var(--white);border-radius:50%;flex:none;position:relative}.tap-ring:after{content:"";border:calc(var(--u) * 4) solid var(--white);border-radius:50%;animation:2.4s ease-out infinite tap-ring;position:absolute;inset:0}@keyframes tap-breathe{0%,to{opacity:.55}50%{opacity:.95}}@keyframes tap-ring{0%{opacity:1;transform:scale(1)}70%,to{opacity:0;transform:scale(2.4)}}@keyframes fade{0%{opacity:0}9%{opacity:1}91%{opacity:1}to{opacity:0}}.alert{z-index:40;background:#000;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.alert img{object-fit:contain;max-width:100%;max-height:100%}.notice{padding:calc(var(--u) * 80);font-size:calc(var(--u) * 40);text-align:center;line-height:1.6}.check{height:100dvh;padding:calc(var(--u) * 48);font-size:calc(var(--u) * 30);-webkit-user-select:text;user-select:text;line-height:1.5;overflow-y:auto}.check h1{font-size:calc(var(--u) * 48);margin:0 0 calc(var(--u) * 32)}.check h1 span{font-size:calc(var(--u) * 32);color:var(--text-secondary);margin-left:calc(var(--u) * 16)}.check ul{gap:calc(var(--u) * 16);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.check li{gap:calc(var(--u) * 24);background:var(--white);border-radius:calc(var(--u) * 16);padding:calc(var(--u) * 24);border-left:calc(var(--u) * 12) solid #b7c3cd;display:flex}.check li.ok{border-left-color:#148176}.check li.warn{border-left-color:var(--yellow-600)}.check li.ng{border-left-color:#ff0808}.check li b{flex:0 0 calc(var(--u) * 96);font-size:calc(var(--u) * 32)}.check li.ok b{color:#148176}.check li.ng b{color:#ff0808}.check li div{overflow-wrap:anywhere;flex-direction:column;min-width:0;display:flex}.check li span{font-weight:400}.check li small{font-size:calc(var(--u) * 24);color:var(--text-secondary);font-weight:400}.check .touch{gap:calc(var(--u) * 24);margin-top:calc(var(--u) * 40);flex-direction:column;display:flex}.check .touch button{min-height:calc(var(--u) * 280);border-radius:calc(var(--u) * 24);background:var(--grad-green);color:var(--white);font-size:calc(var(--u) * 48)}.check .touch .skip{min-height:calc(var(--u) * 100);background:var(--white);color:var(--text-secondary);font-size:calc(var(--u) * 30);border:calc(var(--u) * 2) solid #b7c3cd}.check .done{margin-top:calc(var(--u) * 40);padding:calc(var(--u) * 32);border-radius:calc(var(--u) * 16);background:var(--white)}.check .done.ok{color:#148176}.check .done.ng{color:#ff0808}.check .done a,.check .done button{margin-top:calc(var(--u) * 16);color:var(--navy-800);font-size:calc(var(--u) * 30);background:0 0;padding:0;text-decoration:underline;display:block}.media .fit-bg{filter:blur(calc(var(--u) * 40)) brightness(.9);transform:scale(1.15)}.media .fit-fg{object-fit:contain!important}
