.ph-root{--background: 40 30% 99%;--foreground: 230 22% 10%;--primary: 252 85% 60%;--muted-foreground: 230 10% 40%;--signal: 35 95% 55%;--destructive: 0 75% 55%;--ph-ink: #0f172a;--ph-muted: #475569;--ph-purple: #6d28d9;width:100%;height:100vh;max-height:100vh;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:clamp(.75rem,3vmin,2.5rem) clamp(.75rem,2.5vmin,1.5rem);background:linear-gradient(160deg,#f5f3ff,#faf5ff);color:var(--ph-ink);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans JP,Noto Sans KR,sans-serif;-webkit-font-smoothing:antialiased}.ph-inner{width:100%;max-width:min(60rem,94vw);max-height:100%;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center}.ph-demo{position:relative;aspect-ratio:16 / 10;width:100%;max-width:min(56rem,92vw);max-height:46vh;margin:0 auto;flex:0 1 auto}.ph-wordmark{margin-top:clamp(.5rem,2vmin,1.6rem);font-weight:600;font-size:clamp(.9rem,1.6vmin,1.05rem);letter-spacing:-.01em;color:var(--ph-ink)}.ph-dot{color:var(--ph-purple)}.ph-tagline{margin-top:clamp(.3rem,1vmin,.6rem);font-family:Fraunces,Georgia,Times New Roman,serif;font-weight:500;font-size:clamp(1.5rem,3vw,2rem);line-height:1.18;letter-spacing:-.015em;max-width:20ch;color:var(--ph-ink)}.ph-platforms{margin-top:clamp(.5rem,2vmin,1.6rem);font-size:clamp(.72rem,1.3vmin,.85rem);font-weight:500;letter-spacing:.02em;color:var(--ph-muted)}.ph-cta{margin-top:clamp(.5rem,2vmin,1.7rem);display:inline-flex;align-items:center;gap:.4rem;font-size:.92rem;font-weight:500;color:var(--ph-purple);text-decoration:none;border-bottom:1px solid transparent;transition:border-color .2s}.ph-cta:hover{border-color:var(--ph-purple)}.ph-domain{margin-top:clamp(.3rem,1vmin,.6rem);font-size:clamp(.7rem,1.25vmin,.82rem);font-weight:500;letter-spacing:.02em;color:var(--ph-purple);text-decoration:none;opacity:.85;transition:opacity .2s}.ph-domain:hover{opacity:1;text-decoration:underline}@keyframes glow-pulse{0%,to{opacity:.5}50%{opacity:1}}:root{--u: clamp(11px, 2.55vmin, 20px)}.registration-screen{display:flex;align-items:center;justify-content:center;height:100vh;max-height:100vh;background:linear-gradient(135deg,#0f0f23,#1a1a3e);position:relative;overflow:hidden}.registration-screen:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at 20% 50%,rgba(120,119,198,.1) 0%,transparent 50%),radial-gradient(circle at 80% 50%,rgba(255,119,198,.1) 0%,transparent 50%),radial-gradient(circle at 40% 80%,rgba(120,219,255,.1) 0%,transparent 50%);animation:drift 20s ease-in-out infinite;z-index:0}@keyframes drift{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(-30px,-20px) rotate(120deg)}66%{transform:translate(20px,-10px) rotate(240deg)}}.registration-container{position:relative;z-index:1;width:100%;max-width:min(96vw,calc(var(--u) * 120));max-height:100vh;padding:calc(var(--u) * 2.5);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:calc(var(--u) * 2)}.registration-header{text-align:center;margin-bottom:0}.registration-header h1{font-size:calc(var(--u) * 3.2);font-weight:700;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:1rem;letter-spacing:-.02em}.device-id{color:#fff9;font-size:calc(var(--u) * 1.05);font-family:SF Mono,Monaco,monospace;background:#ffffff0d;padding:.5rem 1rem;border-radius:20px;border:1px solid rgba(255,255,255,.1);display:inline-block}.registration-content{display:grid;grid-template-columns:1fr auto 1fr;gap:calc(var(--u) * 2.5);align-items:stretch;width:100%;min-height:0;margin-bottom:0}.qr-section,.code-section{background:#ffffff08;border:1px solid rgba(255,255,255,.08);border-radius:calc(var(--u) * 2);padding:calc(var(--u) * 2.2);min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 10px 40px #0003,inset 0 1px #ffffff1a;transition:all .3s ease}.qr-section:hover,.code-section:hover{transform:translateY(-4px);box-shadow:0 15px 50px #0000004d,inset 0 1px #ffffff26;border-color:#ffffff1f}.qr-section h2,.code-section h2{font-size:calc(var(--u) * 1.6);font-weight:600;margin-bottom:1.5rem;color:#fff;display:flex;align-items:center;gap:.5rem}.qr-section h2:before{content:"📱";font-size:calc(var(--u) * 1.9)}.code-section h2:before{content:"🔑";font-size:calc(var(--u) * 1.9)}.qr-code{width:auto!important;height:auto!important;max-width:100%!important;max-height:100%!important;min-width:min(160px,60%)!important;min-height:min(160px,40vh)!important;flex:0 1 auto;align-self:center;object-fit:contain;display:block;margin:0 auto calc(var(--u) * 1.4);border-radius:calc(var(--u) * 1.3);padding:calc(var(--u) * .9);background:#fff;box-shadow:0 4px 20px #0000001a}.divider{display:flex;align-items:center;justify-content:center;position:relative}.divider span{font-size:calc(var(--u) * 1.05);background:#ffffff1a;color:#ffffff80;padding:calc(var(--u) * .7) calc(var(--u) * 1.4);border-radius:100px;font-weight:500;text-transform:uppercase;letter-spacing:.1em;border:1px solid rgba(255,255,255,.15)}.code-form{display:flex;flex-direction:column;gap:1.5rem}.code-input{box-sizing:border-box;max-width:100%;font-size:min(calc(var(--u) * 2.4),6vw);font-weight:600;text-align:center;letter-spacing:.3em;padding:calc(var(--u) * 1.1) calc(var(--u) * 1.8);background:#ffffff0d;border:2px solid rgba(255,255,255,.1);border-radius:16px;color:#fff;transition:all .3s ease;font-family:SF Mono,Monaco,monospace}.code-input:focus{outline:none;border-color:#667eea;background:#ffffff14;box-shadow:0 0 0 4px #667eea1a}.code-input::placeholder{color:#ffffff4d;letter-spacing:.2em}.register-button{font-size:calc(var(--u) * 1.25);font-weight:600;padding:calc(var(--u) * 1) calc(var(--u) * 2.8);background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;color:#fff;cursor:pointer;transition:all .3s ease;box-shadow:0 4px 15px #667eea66;text-transform:uppercase;letter-spacing:.05em}.register-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 25px #667eea80}.register-button:disabled{opacity:.5;cursor:not-allowed;background:linear-gradient(135deg,#4a5568,#2d3748);box-shadow:none}.qr-instructions,.code-instructions{margin-top:1.5rem}.qr-instructions p,.code-instructions p{margin:calc(var(--u) * .45) 0;color:#ffffffb3;font-size:calc(var(--u) * 1.1);display:flex;align-items:center;gap:.5rem}.qr-instructions p:before,.code-instructions p:before{content:"✓";color:#667eea;font-weight:700;font-size:calc(var(--u) * 1.1)}.error-section{position:fixed;top:2rem;right:2rem;max-width:400px;z-index:1000}.error-message{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:1rem 1.5rem;border-radius:12px;font-size:calc(var(--u) * 1.05);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 20px #ef444433;animation:slideIn .3s ease}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.registration-footer{text-align:center;color:#ffffff80;font-size:calc(var(--u) * 1)}.info-text{margin-bottom:.5rem;color:#ffffffb3}.support-text{color:#fff6;font-size:calc(var(--u) * .95)}@media(max-aspect-ratio:1/1){.registration-content{grid-template-columns:1fr;gap:calc(var(--u) * 1.6)}.qr-code{min-height:min(100px,14vh)!important;max-height:30vh!important}.qr-section,.code-section{padding:calc(var(--u) * 1.35)}.qr-section h2,.code-section h2{margin-bottom:calc(var(--u) * .7)}.qr-instructions,.code-instructions{margin-top:calc(var(--u) * .7)}.qr-instructions p,.code-instructions p{margin:calc(var(--u) * .22) 0}.code-input{padding:calc(var(--u) * .7) calc(var(--u) * 1.2)}.register-button{padding:calc(var(--u) * .7) calc(var(--u) * 2)}.code-form{gap:calc(var(--u) * .8)}.qr-code{margin-bottom:calc(var(--u) * .7)!important}.divider{margin:calc(var(--u) * .8) 0}.registration-header h1{font-size:calc(var(--u) * 2.4)}}@media(max-height:900px)and (min-aspect-ratio:1/1){.registration-container{gap:calc(var(--u) * .8);padding:calc(var(--u) * 1.2)}.qr-section,.code-section{padding:calc(var(--u) * 1.35)}.qr-section h2,.code-section h2{margin-bottom:calc(var(--u) * .7)}.qr-instructions,.code-instructions{margin-top:calc(var(--u) * .7)}.qr-instructions p,.code-instructions p{margin:calc(var(--u) * .22) 0}.code-input{padding:calc(var(--u) * .7) calc(var(--u) * 1.2)}.register-button{padding:calc(var(--u) * .7) calc(var(--u) * 2)}.code-form{gap:calc(var(--u) * .8)}.qr-code{margin-bottom:calc(var(--u) * .7)}}.registration-success-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000;display:flex;align-items:center;justify-content:center;z-index:9999;animation:fadeIn .3s ease-out}.success-content{text-align:center;animation:scaleIn .5s ease-out .2s both}.success-checkmark{width:120px;height:120px;margin:0 auto 30px;position:relative}.checkmark{width:100%;height:100%;border-radius:50%;display:block;stroke-width:2;stroke:#4caf50;stroke-miterlimit:10;animation:rotate .6s ease-out .3s}.checkmark-circle{stroke-dasharray:166;stroke-dashoffset:166;stroke-width:2;stroke-miterlimit:10;stroke:#4caf50;fill:none;animation:stroke .6s cubic-bezier(.65,0,.45,1) .3s forwards}.checkmark-check{transform-origin:50% 50%;stroke-dasharray:48;stroke-dashoffset:48;stroke:#4caf50;animation:stroke .3s cubic-bezier(.65,0,.45,1) .9s forwards}.success-title{color:#4caf50;font-size:36px;font-weight:600;margin:0 0 10px;opacity:0;animation:fadeInUp .5s ease-out 1s forwards}.success-subtitle{color:#888;font-size:18px;margin:0;opacity:0;animation:fadeInUp .5s ease-out 1.2s forwards}.success-checkmark:after{content:"";position:absolute;top:50%;left:50%;width:150%;height:150%;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(76,175,80,.3) 0%,transparent 70%);opacity:0;animation:pulse 1.5s ease-out 1.5s}@keyframes scaleIn{0%{transform:scale(.5);opacity:0}to{transform:scale(1);opacity:1}}@keyframes stroke{to{stroke-dashoffset:0}}@keyframes rotate{0%{transform:rotate(-45deg)}to{transform:rotate(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%{opacity:0;transform:translate(-50%,-50%) scale(.8)}50%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) scale(1.5)}}.registration-success-overlay.fade-out{animation:fadeOut .5s ease-out forwards}@keyframes fadeOut{to{opacity:0}}.spinner{width:48px;height:48px;border:4px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.fade-in{animation:fadeIn .5s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.scale-in{animation:scaleIn .3s ease-out}@keyframes scaleIn{0%{transform:scale(.95);opacity:0}to{transform:scale(1);opacity:1}}body.hide-cursor{cursor:none}.debug-heartbeat-scroll{scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.3) rgba(255,255,255,.1)}.debug-heartbeat-scroll::-webkit-scrollbar{width:8px}.debug-heartbeat-scroll::-webkit-scrollbar-track{background:#ffffff1a;border-radius:4px}.debug-heartbeat-scroll::-webkit-scrollbar-thumb{background:#ffffff4d;border-radius:4px}.debug-heartbeat-scroll::-webkit-scrollbar-thumb:hover{background:#ffffff80}.debug-console{position:fixed;bottom:0;left:0;right:0;height:300px;background:#000000f2;color:#0f0;font-family:Consolas,Monaco,monospace;font-size:12px;padding:10px;overflow-y:auto;z-index:9999;border-top:2px solid #0f0}.debug-console-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:10px;border-bottom:1px solid #0f0}.debug-log-entry{margin:2px 0;opacity:.8}.debug-log-entry.error{color:red}.debug-log-entry.info{color:#0ff}:root{--viewport-width: 100vw;--viewport-height: 100vh}*{box-sizing:border-box;margin:0;padding:0;-webkit-user-select:none;user-select:none}input,textarea,[contenteditable=true],[contenteditable=plaintext-only]{-webkit-user-select:text;user-select:text}html,body{width:100%;height:100%;overflow:hidden;background:#000;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;contain:layout style paint}#root{position:fixed;top:0;left:0;width:100vw;height:100vh;max-width:100vw;max-height:100vh;overflow:hidden}.player-container{width:100%;height:100%;position:relative;background:#000}.loading-screen{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:#000;color:#fff;font-size:1.5rem}.content-zone{position:absolute;overflow:hidden}.content-asset{width:100%;height:100%;object-fit:contain;max-width:100%;max-height:100%;display:block;margin:0 auto}.content-asset.cover{object-fit:cover}.content-asset.fill{object-fit:fill}iframe.content-asset{border:none}.bezel-compensated-container{position:relative;width:100%;height:100%;overflow:hidden;background:#000}.bezel-compensated{position:absolute;top:0;left:0;height:100%;object-fit:cover;will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden;transform:translateZ(0)}.bezel-debug .bezel-compensated-container{outline:2px solid #ff0000;outline-offset:-2px}.bezel-debug .bezel-compensated:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;border:1px solid #00ff00;pointer-events:none;z-index:1000}.bezel-test-pattern{position:absolute;top:0;left:0;width:100%;height:100%;background-image:repeating-linear-gradient(0deg,transparent,transparent 99px,#00ff00 99px,#00ff00 100px),repeating-linear-gradient(90deg,transparent,transparent 99px,#00ff00 99px,#00ff00 100px);opacity:.3;pointer-events:none;z-index:1001}.bezel-info-overlay{position:absolute;top:10px;left:10px;background:#000c;color:#0f0;padding:10px;font-family:monospace;font-size:12px;border-radius:4px;z-index:1002;pointer-events:none}.bezel-info-overlay .info-row{margin:2px 0}.bezel-info-overlay .info-label{display:inline-block;width:120px;color:#888}.bezel-info-overlay .info-value{color:#0f0;font-weight:700}.bezel-compensated-container.bezel-transition .bezel-compensated{transition:transform .3s ease-out,width .3s ease-out}.bezel-compensated-container.loading:after{content:"";position:absolute;top:50%;left:50%;width:40px;height:40px;margin:-20px 0 0 -20px;border:4px solid #333;border-top-color:#0f0;border-radius:50%;animation:bezel-spinner .8s linear infinite}@keyframes bezel-spinner{to{transform:rotate(360deg)}}.bezel-compensated-container.error{background:#1a0000;display:flex;align-items:center;justify-content:center;color:#f44;font-family:monospace;text-align:center;padding:20px}.bezel-gap-visualization{position:absolute;top:0;bottom:0;background:repeating-linear-gradient(45deg,red,red 10px,#ff0 10px,#ff0 20px);opacity:.5;pointer-events:none;z-index:999}.bezel-gap-left{left:0}.bezel-gap-right{right:0}@media(min-width:3840px){.bezel-compensated{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}@media(max-width:1920px){.bezel-compensated{image-rendering:auto}}*/{}
