@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&family=Space+Grotesk:wght@600;700&family=IBM+Plex+Mono:wght@400;500;600&display=swap";:root{--background: 40 60% 98%;--foreground: 32 29% 10%;--card: 0 0% 100%;--card-foreground: 32 29% 10%;--popover: 0 0% 100%;--popover-foreground: 32 29% 10%;--primary: 26 90% 37%;--primary-foreground: 40 60% 98%;--secondary: 42 45% 94%;--secondary-foreground: 34 14% 32%;--muted: 42 45% 94%;--muted-foreground: 35 10% 49%;--accent: 42 45% 94%;--accent-foreground: 34 14% 32%;--destructive: 0 72% 45%;--destructive-foreground: 40 60% 98%;--border: 40 30% 86%;--input: 40 30% 86%;--ring: 26 90% 37%;--accent-bang: 38 92% 50%;--stage: 240 6% 4%;--amber: #b45309;--amber-bright: #f59e0b;--amber-wash: #fef3e2;--green: #15803d;--paper: #fdfbf7;--paper-2: #f7f3ea;--ink: #211a12;--ink-soft: #5c5245;--ink-faint: #8a7f70;--line: #e7e0d2;--radius: .5rem;--font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, SFMono-Regular, monospace}*{box-sizing:border-box;margin:0;padding:0}body{background-color:hsl(var(--background));background-image:radial-gradient(ellipse at 50% 0%,hsl(var(--primary) / .05) 0%,transparent 65%);color:hsl(var(--foreground));font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5;min-height:100vh;width:100vw;overflow-x:hidden;touch-action:manipulation;-webkit-user-select:none;user-select:none}[x-cloak],.hidden{display:none!important}.text-center{text-align:center}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-2{gap:.5rem}.gap-4{gap:1rem}.w-full{width:100%}.min-h-screen{min-height:100vh}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.absolute{position:absolute}.relative{position:relative}.z-40{z-index:40}.z-50{z-index:50}.h-full{height:100%}.flex-1{flex:1 1 0%}.justify-between{justify-content:space-between}.text-primary{color:hsl(var(--primary))}.mt-2{margin-top:.5rem}.pt-2{padding-top:.5rem!important}.pt-4{padding-top:1rem!important}.pt-6{padding-top:1.5rem!important}.pt-8{padding-top:2rem!important}.pt-10{padding-top:2.5rem!important}.pb-4{padding-bottom:1rem!important}.pb-8{padding-bottom:2rem!important}.text-gradient{background:linear-gradient(135deg,#e17509,#c04e0c);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;color:transparent}#receiver-canvas{position:fixed;top:0;left:0;width:100vw;height:100vh;object-fit:contain;background-color:hsl(var(--stage));z-index:10;transition:opacity .3s ease}h1{font-size:2.25rem;font-weight:800;letter-spacing:-.025em;margin-bottom:.5rem}h2{font-size:1.5rem;font-weight:600;letter-spacing:-.025em}h3{font-size:1.25rem;font-weight:600;letter-spacing:-.025em}p{line-height:1.75}.text-muted-foreground{color:hsl(var(--muted-foreground))}.card{border-radius:calc(var(--radius) + .25rem);border:1px solid hsl(var(--border));background-color:hsl(var(--card));color:hsl(var(--card-foreground));box-shadow:0 1px 2px #211a120a,0 10px 30px #211a1214,0 0 0 .5px hsl(var(--primary) / .05) inset;display:flex;flex-direction:column}.card-header{display:flex;flex-direction:column;gap:.375rem;padding:1.5rem}.card-title{font-size:1.5rem;font-weight:600;line-height:1;letter-spacing:-.025em;margin:0}.card-description{font-size:.875rem;color:hsl(var(--muted-foreground));margin:0}.card-content{padding:1.5rem;padding-top:0}.card-footer{display:flex;align-items:center;padding:1.5rem;padding-top:0}.input{display:flex;height:2.5rem;width:100%;border-radius:calc(var(--radius) - 2px);border:1px solid hsl(var(--input));background-color:transparent;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;transition:color .15s ease,background-color .15s ease,border-color .15s ease;color:hsl(var(--foreground))}.input:focus-visible{outline:none;box-shadow:0 0 0 2px hsl(var(--background)),0 0 0 4px hsl(var(--ring))}.input:disabled{cursor:not-allowed;opacity:.5}.input-pin{height:4rem;font-size:2rem;text-align:center;letter-spacing:.5em;font-weight:700;text-transform:uppercase;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.pin-digit{width:3.5rem;height:4rem;text-align:center;font-size:1.75rem;font-weight:700;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;text-transform:uppercase;border:2px solid hsl(var(--border));border-radius:var(--radius);background:hsl(var(--secondary));color:hsl(var(--foreground));caret-color:hsl(var(--primary));padding:0;transition:border-color .15s ease,box-shadow .15s ease}.pin-digit:focus-visible{outline:none;border-color:hsl(var(--primary));background:hsl(var(--primary) / .05);box-shadow:0 0 0 3px hsl(var(--primary) / .18),0 0 20px hsl(var(--primary) / .1)}.pin-digit.filled{border-color:hsl(var(--primary) / .75);color:hsl(var(--primary));box-shadow:0 0 0 3px hsl(var(--primary) / .12),inset 0 1px 3px hsl(var(--primary) / .08);animation:pin-snap .18s cubic-bezier(.16,1,.3,1)}.btn{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:calc(var(--radius) - 2px);font-size:.875rem;font-weight:500;height:2.5rem;padding:.5rem 1rem;transition:all .15s ease;cursor:pointer;border:none}.btn:focus-visible{outline:none;box-shadow:0 0 0 2px hsl(var(--background)),0 0 0 4px hsl(var(--ring))}.btn:disabled{pointer-events:none;opacity:.5}.btn-primary{background-color:hsl(var(--primary));color:hsl(var(--primary-foreground))}.btn-primary:hover{background-color:hsl(var(--primary) / .92);box-shadow:0 4px 18px hsl(var(--primary) / .35)}.btn-primary:active{transform:scale(.97);transition:transform .08s ease}.btn-secondary{background-color:hsl(var(--secondary));color:hsl(var(--secondary-foreground))}.btn-secondary:hover{background-color:hsl(var(--secondary) / .8)}.btn-destructive{background-color:hsl(var(--destructive));color:hsl(var(--destructive-foreground))}.btn-destructive:hover{background-color:hsl(var(--destructive) / .9)}.btn-outline{border:1px solid hsl(var(--input));background-color:transparent;color:hsl(var(--foreground))}.btn-outline:hover{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground))}.btn-ghost{background-color:transparent;color:hsl(var(--foreground))}.btn-ghost:hover{background-color:hsl(var(--accent));color:hsl(var(--accent-foreground))}.btn-lg{height:auto;min-height:3rem;padding:0 2rem;font-size:1rem;display:flex;align-items:center;justify-content:center}.label{font-size:.875rem;font-weight:500;line-height:1;color:hsl(var(--foreground));display:block;margin-bottom:.5rem}.mobile-wrapper{max-width:28rem;margin:0 auto}.file-upload-box{border:2px dashed hsl(var(--border));border-radius:calc(var(--radius) + .25rem);padding:3rem 1.5rem;text-align:center;position:relative;cursor:pointer;background-color:hsl(var(--background));transition:all .2s ease;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}.file-upload-box:hover{border-color:hsl(var(--primary) / .5);background-color:hsl(var(--primary) / .05)}.file-upload-icon{width:48px;height:48px;color:hsl(var(--muted-foreground));transition:color .2s ease}.file-upload-box:hover .file-upload-icon{color:hsl(var(--primary))}.file-upload-title{font-size:1rem;font-weight:600;color:hsl(var(--foreground))}.file-upload-subtitle{font-size:.875rem;color:hsl(var(--muted-foreground))}.file-upload-box input[type=file]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer;width:100%}.slide-preview-frame{margin-bottom:1.5rem;border-radius:var(--radius);border:1px solid hsl(var(--border));background-color:hsl(var(--background));overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center}.slide-preview-frame img{width:100%;height:100%;object-fit:contain}.slide-badge{position:absolute;bottom:.75rem;right:.75rem;background-color:hsl(var(--foreground));color:hsl(var(--background));padding:.25rem .6rem;border-radius:9999px;font-size:.75rem;font-weight:600;z-index:5}.screen-wrapper{width:100vw;height:100vh;background-color:hsl(var(--background));background-image:radial-gradient(circle at center,hsl(var(--primary) / .07) 0%,transparent 65%)}.qr-container{background-color:#fff;padding:1rem;border-radius:calc(var(--radius) + .25rem);display:inline-block;margin:0 auto}.tv-pin{font-size:4.5rem;line-height:1;font-weight:700;letter-spacing:.35em;text-indent:.35em;text-align:center;width:100%;margin:1.5rem 0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.tv-loader{width:2rem;height:2rem;border:3px solid hsl(var(--muted));border-top-color:hsl(var(--foreground));border-radius:50%;animation:spinner .8s linear infinite;display:inline-block}@keyframes spinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.alert{border-radius:var(--radius);border:1px solid hsl(var(--destructive) / .5);background-color:hsl(var(--destructive) / .1);padding:1rem;color:hsl(var(--destructive));display:flex;flex-direction:column;gap:.25rem;margin-bottom:1.5rem}.alert-title{font-size:.875rem;font-weight:500;line-height:1.25rem}.alert-desc{font-size:.875rem;opacity:.9}.fade-enter{opacity:0;transform:translateY(8px) scale(.987)}.fade-enter-to{opacity:1;transform:translateY(0) scale(1)}.fade-enter-active{transition:opacity .2s cubic-bezier(.16,1,.3,1),transform .2s cubic-bezier(.16,1,.3,1)}.fade-leave{opacity:1;transform:translateY(0)}.fade-leave-to{opacity:0;transform:translateY(-5px)}.fade-leave-active{transition:opacity .12s ease-in,transform .12s ease-in}.zoom-in-enter{opacity:0;transform:scale(.95) translateY(4px)}.zoom-in-enter-active{transition:all .17s cubic-bezier(.16,1,.3,1)}.zoom-in-leave{opacity:1;transform:scale(1)}.zoom-in-leave-active{transition:all .11s ease-in}.zoom-in-leave-to{opacity:0;transform:scale(.97)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;background-color:hsl(var(--stage) / .45);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:1rem}.modal-content{background-color:hsl(var(--card));color:hsl(var(--card-foreground));border:1px solid hsl(var(--border));border-radius:var(--radius);box-shadow:0 10px 15px -3px #00000080;width:100%;max-width:24rem;padding:1.5rem;display:flex;flex-direction:column;gap:1rem;transform:scale(1)}.modal-header{display:flex;flex-direction:column;gap:.5rem;text-align:center}.modal-title{font-size:1.25rem;font-weight:600;line-height:1;letter-spacing:-.025em;color:hsl(var(--foreground))}.modal-description{font-size:.95rem;color:hsl(var(--muted-foreground));line-height:1.5}.modal-footer{display:flex;justify-content:stretch;margin-top:.5rem}.waiting-indicator{position:relative;width:3rem;height:3rem;display:flex;align-items:center;justify-content:center}.pulse-ring-outer,.pulse-ring-inner{position:absolute;width:100%;height:100%;border-radius:50%;border:1.5px solid hsl(var(--primary) / .45);animation:pulse-ring 2.2s ease-out infinite}.pulse-ring-inner{animation-delay:.75s}@keyframes pulse-ring{0%{transform:scale(1);opacity:.7}to{transform:scale(2.6);opacity:0}}.transport-btn{padding:0 .625rem!important;font-size:.7rem!important;letter-spacing:0;border-radius:99px!important;height:32px!important}.transport-status{display:flex;align-items:center;gap:.4rem;font-weight:600;font-size:.7rem;letter-spacing:.01em}.status-dot{width:7px;height:7px;border-radius:50%;flex-shrink:0}.dot-green{background:#10b981;animation:dot-pulse 2.4s ease-in-out infinite}.dot-amber{background:#f59e0b}@keyframes dot-pulse{0%,to{opacity:1}50%{opacity:.3}}.presenter-end-btn{color:hsl(var(--destructive))!important;padding:0 .5rem!important;margin-left:-.5rem;display:flex!important;align-items:center;gap:.35rem;font-size:.8rem}.blank-btn{padding:0 .875rem!important;height:32px!important;display:flex!important;align-items:center;gap:.35rem;font-size:.8rem}.nav-btn{display:flex!important;align-items:center;justify-content:center;gap:.5rem;border-radius:1rem!important;font-size:1.25rem!important;font-weight:700!important;transition:transform .08s ease,opacity .08s ease!important}.nav-btn:active:not(:disabled){transform:scale(.95)}.nav-btn:disabled{opacity:.3}.slide-img{width:100%;height:100%;object-fit:contain;transition:opacity .15s ease}.btn{transition:all .1s cubic-bezier(.16,1,.3,1)}.logo-text{font-family:"Space Grotesk",var(--font-sans);font-weight:700;letter-spacing:-.04em;line-height:1;color:hsl(var(--foreground))}.logo-bang{color:hsl(var(--accent-bang));display:inline-block;animation:bang-breathe 4s ease-in-out infinite}@keyframes bang-breathe{0%,to{opacity:1;filter:brightness(1)}50%{opacity:.6;filter:brightness(1.4)}}@keyframes pin-snap{0%{transform:scale(1)}35%{transform:scale(.88)}70%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes shimmer-sweep{0%{background-position:200% center}to{background-position:-200% center}}.btn-cta{background:linear-gradient(90deg,#f59f0a,#f8be59 45%,#f59f0a);background-size:250% auto;color:hsl(var(--foreground));font-weight:600;letter-spacing:.01em;animation:shimmer-sweep 1.8s linear infinite;white-space:normal;text-align:center}.btn-cta:disabled{background:hsl(var(--primary));animation:none;opacity:.4}.nav-btn{will-change:transform;position:relative}.btn-primary.nav-btn:not(:disabled){box-shadow:0 4px 24px hsl(var(--primary) / .28);transition:transform .08s cubic-bezier(.16,1,.3,1),box-shadow .14s ease!important}.btn-primary.nav-btn:not(:disabled):hover{box-shadow:0 6px 32px hsl(var(--primary) / .45)}.btn-primary.nav-btn:not(:disabled):active{transform:scale(.93);box-shadow:0 2px 12px hsl(var(--primary) / .2)}.btn-secondary.nav-btn:not(:disabled):active{transform:scale(.93)}.pulse-ring-third{position:absolute;width:100%;height:100%;border-radius:50%;border:1px solid hsl(var(--primary) / .2);animation:pulse-ring 2.2s ease-out infinite 1.45s}.waiting-indicator .tv-loader{border-top-color:hsl(var(--primary));width:2.25rem;height:2.25rem;border-width:2.5px}@keyframes badge-in{0%{opacity:0;transform:translateY(-4px) scale(.92)}to{opacity:1;transform:translateY(0) scale(1)}}.slide-badge{animation:badge-in .18s cubic-bezier(.16,1,.3,1) both}@keyframes upload-idle{0%,to{border-color:hsl(var(--border))}50%{border-color:hsl(var(--primary) / .35)}}.file-upload-box{animation:upload-idle 2.4s ease-in-out infinite}.file-upload-box:hover{animation:none;border-color:hsl(var(--primary) / .6);background-color:hsl(var(--primary) / .05);box-shadow:0 0 24px hsl(var(--primary) / .1)}.transport-btn:hover{box-shadow:0 0 12px hsl(var(--primary) / .15)}.modal-content{box-shadow:0 20px 60px -10px #000000b3,0 0 0 .5px hsl(var(--primary) / .12) inset}.slide-img{transition:opacity .2s cubic-bezier(.16,1,.3,1)}.presenter-end-btn:hover{background:hsl(var(--destructive) / .1)!important;border-radius:calc(var(--radius) - 2px)}.btn-primary.blank-btn{box-shadow:0 0 18px hsl(var(--primary) / .4)}.receiver-logo{position:fixed;top:1.25rem;left:1.25rem;z-index:70;display:flex;align-items:center;gap:.4rem;background:#000;border:1px solid rgba(255,255,255,.09);border-radius:999px;padding:.3rem .7rem .3rem .55rem;opacity:.8;pointer-events:none;-webkit-user-select:none;user-select:none;box-shadow:0 2px 12px #0009,0 0 0 .5px #ffffff0a inset}.receiver-logo .logo-text{color:#fff;font-size:.7rem}.receiver-logo-dot{width:5px;height:5px;border-radius:50%;background:hsl(var(--primary));flex-shrink:0;box-shadow:0 0 6px hsl(var(--primary) / .7);animation:dot-pulse 2.4s ease-in-out infinite}.receiver-end-btn{position:fixed;top:1.25rem;right:1.25rem;z-index:70;width:2.5rem;height:2.5rem;border-radius:50%;background:#000000d1;border:1px solid rgba(255,255,255,.13);color:#fffc;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.8);transition:opacity .22s ease,transform .22s cubic-bezier(.16,1,.3,1),background .15s ease,border-color .15s ease,color .15s ease;pointer-events:none;box-shadow:0 4px 16px #00000080}.screen-wrapper:hover .receiver-end-btn{opacity:1;transform:scale(1);pointer-events:auto}.receiver-end-btn:hover{background:#c41e1eeb!important;border-color:#dc323259!important;color:#fff!important;transform:scale(1.1)!important;box-shadow:0 4px 20px #c41e1e73!important}.receiver-end-btn:active{transform:scale(.94)!important;transition-duration:.06s!important}.receiver-fs-btn{position:fixed;bottom:1.25rem;right:1.25rem;z-index:70;width:2.5rem;height:2.5rem;border-radius:50%;background:#000000d1;border:1px solid rgba(255,255,255,.13);color:#fffc;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transform:scale(.8);transition:opacity .22s ease,transform .22s cubic-bezier(.16,1,.3,1),background .15s ease,border-color .15s ease,color .15s ease;pointer-events:none;box-shadow:0 4px 16px #00000080}.screen-wrapper:hover .receiver-fs-btn{opacity:1;transform:scale(1);pointer-events:auto}.receiver-fs-btn:hover{background:#ffffff26!important;color:#fff!important;transform:scale(1.1)!important}.receiver-fs-btn:active{transform:scale(.94)!important;transition-duration:.06s!important}
