@import"https://fonts.googleapis.com/css2?family=Lexend:wght@400;500;600;700&display=swap";.controller-page .queue-actions{display:inline-flex;gap:6px;align-items:center;flex-wrap:nowrap;flex-shrink:0}.controller-page .queue-move,.controller-page .queue-remove{border:none;background:transparent;color:#e2e8f0d9;font-size:1.1rem;line-height:1;width:28px;height:28px;padding:0;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:color .2s ease,background .2s ease}.controller-page .queue-move{color:#bae6fd}.controller-page .queue-move:disabled{opacity:.4;cursor:not-allowed}.controller-page .queue-move:hover:not(:disabled),.controller-page .queue-remove:hover{color:#f8fafc;background:#94a3b81f}@media(max-width:768px){.controller-page .queue-actions{gap:4px}.controller-page .queue-move,.controller-page .queue-remove{width:30px;height:30px;font-size:1.1rem}}:root{font-family:Lexend,Inter,system-ui,-apple-system,sans-serif;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#0b0d12;background-color:#0b1220}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:#0b1220}.controller-shell{min-height:100vh;background:#0b1220;color:#f8fafc;padding:24px;display:flex;flex-direction:column;gap:16px;overflow:hidden}@media(max-width:768px){.controller-shell{min-height:auto;overflow:visible}}.controller-top-grid{display:grid;grid-template-columns:1.5fr 8.5fr 1.5fr;gap:16px}.controller-info-card{display:flex;flex-direction:column;gap:14px;padding:18px;border-radius:16px;background:linear-gradient(145deg,#111c32e6,#0e172af2);border:1px solid rgba(99,102,241,.3);box-shadow:0 4px 16px #0003}.controller-info-header{display:flex;align-items:center;gap:12px;padding-bottom:10px;border-bottom:1px solid rgba(99,102,241,.2)}.controller-info-icon{font-size:1.5rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#6366f126;border-radius:10px;flex-shrink:0;color:#a5b4fc;transition:background .2s ease,color .2s ease,transform .15s ease}.controller-info-icon:hover{background:#6366f140;color:#f8fafc;transform:translate(-2px)}.controller-info-details{flex:1;min-width:0}.controller-info-label{font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;color:#94a3b8;margin:0 0 4px}.controller-room-name{font-size:1rem;font-weight:600;color:#f8fafc;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.controller-info-meta{display:flex;flex-direction:column;gap:8px}.controller-meta-item{display:flex;align-items:center;gap:8px;padding:6px 10px;background:#0f172a99;border-radius:8px;font-size:.85rem}.controller-meta-icon{color:#a5b4fc;font-size:.9rem;width:18px;text-align:center;flex-shrink:0}.controller-meta-text{color:#e2e8f0;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.controller-now-playing-card{display:flex;flex-direction:column;justify-content:center;gap:8px;padding:20px 24px;border-radius:16px;background:linear-gradient(145deg,#111c32e6,#0e172af2);border:1px solid rgba(69,87,125,.6);box-shadow:0 4px 16px #0003}.controller-now-playing-card{display:flex;flex-direction:column;gap:6px}.controller-now-playing-card .song-title{margin:0;font-size:clamp(1.3rem,1.8vw,1.8rem);font-weight:700;line-height:1.3;color:#f8fafc}.controller-now-playing-card .song-artist{font-size:clamp(1rem,1.2vw,1.2rem);font-weight:500;color:#c7d2fe;margin:0}.controller-now-playing-card .song-requester{font-size:clamp(.8rem,1vw,1rem);color:#94a3b8;margin-top:4px}.controller-now-playing-card .song-requester span{font-weight:600;color:#a5b4fc}.controller-interactive-card{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:10px;padding:18px;border-radius:16px;background:linear-gradient(145deg,#111c32e6,#0e172af2);border:1px solid rgba(99,102,241,.3);box-shadow:0 4px 16px #0003}.interactive-settings-btn{width:100%;height:100%;min-height:48px;display:flex;align-items:center;justify-content:center;background:#6366f11f;border:1px solid rgba(99,102,241,.25);border-radius:12px;color:#a5b4fc;cursor:pointer;transition:background .2s,color .2s,transform .15s}.interactive-settings-btn:hover{background:#6366f140;color:#f8fafc;transform:scale(1.05)}.interactive-settings-btn:active{transform:scale(.95)}.controller-settings-modal-body{padding:24px 28px 28px}.controller-settings-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border-radius:14px;border:1px solid rgba(148,163,184,.2);background:#0f172a80}.controller-settings-item-main{display:flex;align-items:center;gap:12px;min-width:0}.controller-settings-item-icon{width:44px;height:44px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1rem;color:#e2e8f0;background:#94a3b82e;border:1px solid rgba(148,163,184,.26)}.controller-settings-item-text{min-width:0}.controller-settings-item-title{margin:0;font-size:.95rem;color:#f8fafc;font-weight:600}.controller-settings-item-description{font-size:.84rem;line-height:1.45;color:#94a3b8f2}.controller-settings-toggle{position:relative;display:inline-flex;align-items:center;cursor:pointer;flex-shrink:0}.controller-settings-toggle input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.controller-settings-toggle-track{display:block;width:48px;height:28px;background:#64748b66;border-radius:99px;border:1px solid rgba(100,116,139,.4);position:relative;transition:background .25s ease,border-color .25s ease}.controller-settings-toggle-thumb{position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:999px;background:#f8fafc;box-shadow:0 2px 6px #02061759;transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.controller-settings-toggle input:checked~.controller-settings-toggle-track{background:#6366f1c7;border-color:#6366f1a6}.controller-settings-toggle input:checked~.controller-settings-toggle-track .controller-settings-toggle-thumb{transform:translate(20px)}.controller-settings-toggle:hover .controller-settings-toggle-track{border-color:#94a3b899}.interactive-emoji-group{display:contents}.interactive-emoji-btn{width:100%;height:100%;min-height:48px;display:flex;align-items:center;justify-content:center;font-size:1.5rem;background:#0f172a99;border:1px solid rgba(148,163,184,.12);border-radius:12px;cursor:pointer;transition:background .2s,transform .15s,border-color .2s;user-select:none;-webkit-user-select:none}.interactive-emoji-btn:hover{background:#6366f126;border-color:#6366f14d;transform:scale(1.12)}.interactive-emoji-btn:active{transform:scale(.9)}@media(max-width:768px){.controller-top-grid{grid-template-columns:1fr;gap:12px}.controller-info-card{flex-direction:row;align-items:center;justify-content:space-between;padding:14px 16px;gap:16px}.controller-info-header{flex-direction:row;align-items:center;gap:10px;padding-bottom:0;border-bottom:none;flex:1;min-width:0}.controller-info-icon{width:48px;height:48px;font-size:1.4rem;flex-shrink:0}.controller-info-details{min-width:0;flex:1}.controller-info-label{font-size:.6rem;margin:0 0 2px}.controller-room-name{font-size:1rem;max-width:100%}.controller-info-meta{flex-direction:column;gap:6px;flex-shrink:0}.controller-meta-item{padding:4px 0;background:transparent;font-size:.85rem;justify-content:flex-end}.controller-meta-icon{font-size:.85rem;width:16px}.controller-meta-text{font-size:.85rem;white-space:nowrap}.controller-now-playing-card{padding:16px 18px}.controller-now-playing-card h1{font-size:1.2rem}.controller-interactive-card{display:flex;flex-direction:row;justify-content:center;align-items:center;padding:12px 16px;gap:12px}.interactive-settings-btn{width:40px;height:40px;min-height:40px}.interactive-emoji-group{display:flex;flex-direction:row;gap:8px}.interactive-emoji-btn{width:44px;height:44px;min-height:44px;font-size:1.4rem}}.controller-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 20px;border-radius:16px;background:#0e172a;border:1px solid rgba(69,87,125,.6)}.controller-header h1{margin:6px 0 0;font-size:clamp(1.2rem,1.6vw,1.6rem);font-weight:600}.controller-label{text-transform:uppercase;font-size:.6rem;letter-spacing:.18em;color:#94a3b8}.controller-shell .stack{gap:10px}.controller-shell .stack input.input{min-height:48px}@media(max-width:768px){.controller-settings-modal-body{padding:20px}.controller-settings-item{padding:14px}.controller-settings-item-icon{width:40px;height:40px}}.filter-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:#0f172ab3;border:1px solid rgba(69,87,125,.5);border-radius:10px;color:#cbd5e1;font-size:.85rem;font-weight:500;cursor:pointer;transition:all .2s ease;font-family:inherit;margin-top:12px}.filter-btn:hover{background:#0f172ae6;border-color:#6366f180;color:#e2e8f0}.filter-btn svg{flex-shrink:0}.filter-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px}.filter-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.filter-content{position:relative;background:#0f172af2;border:1px solid rgba(99,102,241,.3);border-radius:20px;padding:28px;max-width:400px;width:100%;box-shadow:0 24px 60px #00000080}.filter-content h3{margin:0 0 20px;font-size:1.2rem;font-weight:600;color:#f8fafc}.filter-checkbox-label{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#0f172a80;border:1px solid rgba(69,87,125,.4);border-radius:12px;margin-bottom:12px;cursor:pointer;transition:all .2s ease}.filter-checkbox-label:hover{background:#0f172acc;border-color:#6366f166}.filter-checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer;accent-color:#6366f1;flex-shrink:0}.filter-checkbox-label span{font-size:.95rem;color:#e2e8f0;font-weight:500}.filter-close-btn{width:100%;padding:12px;margin-top:8px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:12px;color:#fff;font-size:.95rem;font-weight:600;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease;font-family:inherit}.filter-close-btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px #6366f14d}.controller-code{padding:8px 12px;border-radius:999px;border:1px solid rgba(69,87,125,.6);background:#111c32;font-size:.75rem;color:#e2e8f0}.controller-code span{font-weight:600;color:#fff}.controller-grid{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:16px;flex:1;min-height:0}@media(max-width:768px){.controller-grid{flex:none;min-height:auto;grid-template-columns:1fr}.controller-search-card{order:2}.controller-upnext-card{order:1}}.controller-card{display:flex;flex-direction:column;gap:16px;padding:20px;border-radius:16px;background:#0e172a;border:1px solid rgba(69,87,125,.6);box-shadow:0 24px 60px #0f172a73;overflow:hidden;min-height:0}.controller-card h2{font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;margin:0;color:#e2e8f0}.controller-list{display:flex;flex-direction:column;gap:12px;overflow-y:auto;min-height:0;flex:1}.controller-results-grid{display:grid;grid-template-columns:1fr;gap:12px;overflow-y:auto;min-height:0;flex:1}.scroll-fade{position:relative;overflow:auto;scrollbar-width:thin}.scroll-fade:after{content:"";position:sticky;bottom:-1px;left:0;right:0;height:72px;pointer-events:none;background:linear-gradient(180deg,#0e172a00,#0e172ae6 70%,#0e172a)}.controller-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-radius:12px;background:linear-gradient(145deg,#111c32e6,#111c3299);border:1px solid rgba(69,87,125,.5);box-shadow:inset 0 1px #ffffff0a}.controller-upnext{display:flex;align-items:center;gap:10px}.controller-upnext-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:9px;background:#38bdf826;color:#7dd3fc;font-size:.85rem}.controller-upnext-title{margin:0;font-size:.85rem;color:#e2e8f0;line-height:1.3}.controller-queue{flex:1;overflow-y:auto;background:#0b1426;border:1px solid #1f2b3d;border-radius:12px;padding:12px;min-height:0}.controller-queue ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:10px}.controller-queue li{min-width:0}.queue-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:12px;background:#111c32!important;border:1px solid #1f2b3d;cursor:grab;touch-action:pan-y}.queue-item *{background:transparent}.queue-item-dragging{opacity:.6;cursor:grabbing}.queue-meta{display:flex;align-items:center;gap:8px;font-size:.82rem;min-width:0;flex:1}.queue-index{display:inline-flex;align-items:center;justify-content:center;touch-action:pan-y;min-width:36px;height:28px;padding:0 8px;border-radius:8px;background:#38bdf82e;color:#bae6fd;font-weight:600;font-size:.78rem}.queue-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;color:#e2e8f0}.queue-title-marquee{position:relative;display:block;overflow:hidden}.queue-title-track{display:inline-flex;align-items:center;width:max-content;animation:queue-title-scroll 13s linear infinite}.queue-title-track span{display:inline-block;white-space:nowrap;padding-right:28px}@keyframes queue-title-scroll{0%{transform:translate(0)}to{transform:translate(calc(-50% - 14px))}}.queue-remove{border:none;background:transparent;color:#e2e8f0bf;font-size:1.1rem;line-height:1;padding:4px 6px;border-radius:8px;cursor:pointer;transition:color .2s ease,background .2s ease}.queue-remove:hover{color:#f8fafc;background:#94a3b81f}.search-form{display:flex;gap:12px;align-items:center}.search-input{flex:1;background:#111c32!important;border:1px solid rgba(69,87,125,.6);box-shadow:none}.video-card{display:flex;flex-direction:column;border-radius:20px;overflow:hidden;background:linear-gradient(145deg,#111c32e6,#111c3299);border:1px solid rgba(69,87,125,.5);box-shadow:inset 0 1px #ffffff0a;transition:transform .2s ease;height:100%}.video-card:hover{transform:translateY(-2px)}.video-card-thumbnail{position:relative;width:100%;padding-top:56.25%;background:#0b1426;overflow:hidden;flex-shrink:0}.video-card-thumbnail img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.video-card-gradient{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0b14261a,#0b142680 45%,#0b1426f2);pointer-events:none;z-index:1}.video-duration{position:absolute;top:8px;left:8px;background:#0f172acc;border:1px solid rgba(148,163,184,.25);color:#fff;padding:4px 8px;border-radius:8px;font-size:.75rem;font-weight:600;z-index:2}.video-card-actions{position:absolute;top:8px;right:8px;display:flex;gap:6px;opacity:0;transition:opacity .2s ease;z-index:2}.video-card:hover .video-card-actions{opacity:1}.btn-card-action{padding:6px 12px;border-radius:8px;background:#0f172acc;border:1px solid rgba(148,163,184,.25);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-size:.75rem;font-weight:600;cursor:pointer;transition:background .2s ease}.btn-card-action:hover{background:#0f172af2}.btn-card-add{width:32px;height:32px;border-radius:8px;background:#4f46e6;color:#fff;border:none;font-size:1.2rem;font-weight:600;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s ease;box-shadow:0 8px 18px #4f46e659}.btn-card-add:hover{background:#6159ed}.video-card-info{position:absolute;bottom:0;left:0;width:100%;padding:16px;display:flex;flex-direction:column;gap:6px;z-index:2;background:linear-gradient(180deg,#0b142600,#0b14268c 40%,#0b1426f2)}.video-card-title{margin:0;font-size:1.05rem;font-weight:700;color:#f8fafc;line-height:1.3;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical}.video-card-artist{margin:0;font-size:.85rem;color:#e2e8f0d9;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:960px){.controller-grid{grid-template-columns:1fr}}@media(min-width:768px){.controller-results-grid{grid-template-columns:repeat(3,1fr);grid-auto-rows:min-content}.controller-queue ul{grid-template-columns:repeat(3,minmax(0,1fr))}}a{text-decoration:none;color:inherit}#root{min-height:100vh}.controller-page{height:100vh;overflow:hidden}.controller-page.app-shell{max-width:none;padding:24px;height:100%}.controller-page .app-content{flex:1;overflow:hidden}.controller-page .controller-section,.controller-page .section.controller-section{flex:1;min-height:0}.controller-page .card{height:100%;display:flex;flex-direction:column;overflow:hidden}@media(max-width:768px){.controller-page{height:auto;min-height:100vh;overflow:auto}.controller-page .app-content{overflow:visible}.controller-page .card{height:auto;overflow:visible}}.controller-page .list,.controller-page .queue-list{overflow-y:auto;min-height:0;flex:1}.controller-page .app-title{font-size:clamp(1.4rem,2vw,2rem);font-weight:600}.controller-page .app-subtitle{font-size:.75rem;letter-spacing:.18em}.app-shell{max-width:1100px;margin:0 auto;padding:48px 24px 96px;display:flex;flex-direction:column;gap:32px}.app-header{display:flex;align-items:center;justify-content:space-between;gap:24px}.app-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.app-title{font-size:clamp(2rem,3vw,3rem);margin:0}.app-subtitle{margin:0 0 8px;font-size:.9rem;letter-spacing:.1em;text-transform:uppercase;color:#6b7280}.app-content{display:flex;flex-direction:column;gap:32px}.section{display:flex;flex-direction:column;gap:16px}.section-title{display:flex;align-items:center;justify-content:space-between}.card{background:#fff;border-radius:20px;padding:24px;box-shadow:0 20px 60px #0f172a14;border:1px solid rgba(148,163,184,.2)}.card.inset{background:#f9fafb}.card-header{display:flex;flex-direction:column;gap:8px;margin-bottom:16px}.hero-card{background:linear-gradient(130deg,#0f172a,#1f2a4a 55%,#1f2937);color:#fff;border-radius:28px;padding:40px;display:flex;flex-direction:column;gap:24px;box-shadow:0 30px 80px #0f172a66}.hero-card h2{font-size:clamp(1.8rem,3vw,2.5rem);margin:0}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.7rem;color:#ffffffb3}.text-muted{color:#8b95a7}.text-danger{color:#dc2626}.break-all{word-break:break-all}.stack{display:flex;flex-direction:column;gap:12px}.inline{display:flex;align-items:center;justify-content:space-between;gap:16px}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px}.divider{height:1px;width:100%;background:#94a3b840;margin:16px 0}.input{border-radius:14px;border:1px solid rgba(148,163,184,.4);padding:14px 16px;font-size:1rem;background:linear-gradient(180deg,#1a2233f2,#101726f2);color:#e2e8f0}.input:focus{outline:none;border-color:#4f46e6;box-shadow:0 0 0 3px #4f46e64d}.btn{border:none;border-radius:14px;padding:12px 18px;font-weight:600;font-size:.95rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .2s ease,box-shadow .2s ease}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:#4f46e5;color:#fff;box-shadow:0 18px 30px #4f46e54d}.btn-secondary{background:#45577d;color:#fff}.btn-ghost{background:#94a3b826;color:#111827}.btn:hover:not(:disabled){transform:translateY(-1px)}.badge{background:#4f46e51f;color:#4f46e5;padding:6px 12px;border-radius:999px;font-weight:600;font-size:.8rem}.chip{background:#0f172a14;color:#0f172a;padding:8px 14px;border-radius:999px;font-weight:600;font-size:.85rem}.chip.large{font-size:1.1rem}.list{display:flex;flex-direction:column;gap:12px}.list-item{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px;border-radius:16px;background:#f8fafc;border:1px solid rgba(148,163,184,.2)}.list-title{font-weight:600;margin:0 0 4px;font-size:.9rem;line-height:1.3}.media{display:flex;align-items:center;gap:12px}.media img{width:56px;height:56px;border-radius:12px;object-fit:cover}.qr-block{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.queue-list{display:flex;flex-direction:column;gap:12px}.queue-item{display:flex;justify-content:space-between;gap:16px;padding:16px;border-radius:16px;border:1px solid rgba(148,163,184,.2);background:#f8fafc}.queue-item-active{border-color:#4f46e599;background:#4f46e514}.queue-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.button-group{display:flex;gap:8px;flex-wrap:wrap}@media(max-width:720px){.app-header{flex-direction:column;align-items:flex-start}.hero-card{padding:28px}}@media(max-width:720px){.controller-page{height:auto;min-height:100vh;overflow:auto}.controller-shell{overflow:visible}.controller-results-grid,.controller-queue ul{grid-template-columns:1fr}}.global-logo-img{height:100%;width:100%;object-fit:contain;transform:scale(1.2)}.landing-logo-icon,.auth-logo-icon,.dashboard-logo,.admin-logo-icon,.tv-card-logo-icon,.packages-logo,.legal-logo,.site-footer-logo,.join-room-icon,.guest-welcome-icon,.controller-upnext-icon{background:transparent!important;box-shadow:none!important;color:transparent!important}.site-footer-logo .global-logo-img,.packages-logo .global-logo-img,.legal-logo .global-logo-img,.controller-upnext-icon .global-logo-img{height:1.5em;width:1.5em;transform:none}.dashboard-logo{width:40px!important;height:40px!important;margin-right:2px;margin-left:-2px}button,input,select,textarea{font-family:inherit}.player-shell{min-height:100vh;background:#0b0d12;color:#fff;display:flex;flex-direction:column}.player-header{display:flex;align-items:center;justify-content:space-between;padding:24px 32px;gap:24px;background:#0f172ab3;border-bottom:1px solid rgba(148,163,184,.2)}.player-header h2{margin:0 0 8px;font-size:clamp(1.5rem,2.5vw,2.5rem)}.player-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.player-frame{flex:1;width:100%;height:100%}.player-frame iframe,.player-iframe{width:100%;height:100%;position:absolute;top:0;left:0}.player-shell{position:relative;height:100vh}.player-empty{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;padding:32px;background:radial-gradient(circle at top,#1e293ba6,#0b0d12f2)}.player-empty-card{max-width:720px;width:100%;background:#0f172aeb;border:1px solid rgba(148,163,184,.25);border-radius:22px;padding:28px;display:flex;flex-direction:column;gap:16px;text-align:left;color:#f8fafc;box-shadow:0 24px 60px #0f172a8c}.player-empty-card h2{margin:0;font-size:clamp(1.6rem,2.6vw,2.4rem);font-weight:700;letter-spacing:-.01em}.player-empty-card .text-muted{margin:0;font-size:1rem;color:#e2e8f0b3}.player-empty-card .qr-block{display:grid;grid-template-columns:auto 1fr;gap:20px;align-items:center;background:#02061780;border:1px solid rgba(148,163,184,.15);border-radius:16px;padding:16px}.player-empty-card .qr-block canvas{display:block;padding:12px;background:#fff;border-radius:12px;box-shadow:0 12px 30px #02061773}.player-empty-card .stack p{word-break:break-all;font-size:.95rem;margin:0}@media(max-width:720px){.player-empty-card{padding:20px;text-align:center}.player-empty-card .qr-block{grid-template-columns:1fr;justify-items:center;text-align:center}}.player-join-card{position:absolute;bottom:20px;right:20px;z-index:10;display:flex;align-items:center;gap:12px;background:#0f172ae0;border:1px solid rgba(148,163,184,.2);border-radius:14px;padding:10px 14px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 8px 24px #0006;opacity:.85;transition:opacity .2s ease}.player-join-card:hover{opacity:1}.player-join-card canvas{display:block;border-radius:6px}.player-join-card-info{display:flex;flex-direction:column;gap:2px}.player-join-card-label{font-size:.7rem;color:#e2e8f099;text-transform:uppercase;letter-spacing:.06em;font-weight:600}.player-join-card-code{font-size:1.25rem;font-weight:700;color:#f8fafc;letter-spacing:.08em;font-family:SF Mono,Fira Code,monospace}.player-timer-medium{font-size:.82rem;font-weight:600;color:#fde68a}.player-timer-small{display:inline-flex;width:fit-content;padding:6px 10px;border-radius:10px;border:1px solid rgba(250,204,21,.35);background:#facc151a;color:#fef08a;font-size:.85rem;font-weight:600}.player-empty-timer-box{display:inline-flex;align-items:center;gap:8px;align-self:flex-end;margin-left:auto;width:fit-content;padding:7px 12px;border-radius:10px;border:1px solid rgba(250,204,21,.35);background:#facc151a;color:#fef08a;font-size:.86rem;font-weight:600}@media(max-width:720px){.player-join-card{bottom:12px;right:12px;padding:8px 10px;gap:8px}.player-join-card canvas{width:52px!important;height:52px!important}.player-join-card-code{font-size:1rem}.player-empty-timer-box{font-size:.82rem;padding:6px 10px}}.auth-page{min-height:100vh;background:#0a0c10;display:flex;align-items:center;justify-content:center;padding:24px;position:relative;overflow:hidden}.auth-container{position:relative;z-index:1;width:100%;max-width:420px}.auth-card{background:#0f141ed9;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:24px;padding:40px 32px;box-shadow:0 40px 80px #00000080}.auth-header{text-align:center;margin-bottom:32px}.auth-logo{width:56px;height:56px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:16px;display:flex;align-items:center;justify-content:center;margin:0 auto 20px;box-shadow:0 8px 32px #6366f14d}.auth-logo-icon{font-size:24px;color:#fff}.auth-header h1{font-size:1.75rem;font-weight:600;color:#f8fafc;margin:0 0 8px;letter-spacing:-.02em}.auth-subtitle{font-size:.95rem;color:#94a3b8e6;margin:0}.auth-form{display:flex;flex-direction:column;gap:20px}.auth-error{background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:12px 16px;border-radius:12px;font-size:.9rem;text-align:center}.auth-field{display:flex;flex-direction:column;gap:8px}.auth-field label{font-size:.85rem;font-weight:500;color:#e2e8f0d9;letter-spacing:.01em}.auth-input{width:100%;padding:14px 16px;background:#0f172a99;border:1px solid rgba(148,163,184,.15);border-radius:12px;color:#f8fafc;font-size:1rem;font-family:inherit;transition:border-color .2s ease,box-shadow .2s ease;outline:none}.auth-input::placeholder{color:#94a3b880}.auth-input:focus{border-color:#6366f199;box-shadow:0 0 0 3px #6366f126}.auth-button{width:100%;padding:14px 24px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:12px;color:#fff;font-size:1rem;font-weight:600;font-family:inherit;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease;display:flex;align-items:center;justify-content:center;min-height:48px}.auth-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 24px #6366f159}.auth-button:disabled{opacity:.7;cursor:not-allowed}.auth-google-btn{background:#fff!important;color:#374151!important;border:1px solid #e5e7eb!important;box-shadow:0 1px 3px #00000014;gap:10px;margin-bottom:24px}.auth-google-btn:hover:not(:disabled){background:#f9fafb!important;transform:translateY(-1px);box-shadow:0 4px 12px #0000001f!important}.auth-google-btn svg{flex-shrink:0}.auth-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}.auth-divider{display:flex;align-items:center;gap:16px;margin:24px 0;font-size:.85rem;color:#94a3b899}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:#94a3b826}.auth-footer{margin-top:24px;text-align:center}.auth-footer p{font-size:.9rem;color:#94a3b8cc;margin:0}.auth-link{color:#818cf8;text-decoration:none;font-weight:500;transition:color .2s ease}.auth-link:hover{color:#a5b4fc}.auth-ambient{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(99,102,241,.15),transparent),radial-gradient(ellipse 60% 40% at 80% 80%,rgba(139,92,246,.1),transparent)}.dashboard-page{min-height:100vh;background:#0a0c10;color:#f8fafc}.dashboard-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid rgba(255,255,255,.06);background:#0f141e80;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0;z-index:100}.dashboard-brand{display:flex;align-items:center;gap:10px}.dashboard-logo{width:36px;height:36px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:18px;color:#fff}.dashboard-title{font-size:1.1rem;font-weight:600;letter-spacing:-.01em}.brand-logo-text{display:inline-block;background:linear-gradient(135deg,#6366f1,#a855f7,#6366f1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700}.dashboard-title.brand-logo-text{font-size:1.15rem}.dashboard-user{display:flex;align-items:center;gap:16px;position:relative}.dashboard-menu-btn{display:none;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;border:1px solid rgba(148,163,184,.2);background:#0f172ab3;color:#e2e8f0;font-size:1.2rem;cursor:pointer}.dashboard-user-items{display:flex;align-items:center;gap:16px}.dashboard-username{font-size:.9rem;color:#e2e8f0cc}.dashboard-logout,.dashboard-login{font-size:.9rem;color:#818cf8;background:none;border:none;cursor:pointer;font-family:inherit;text-decoration:none;transition:color .2s ease}.dashboard-logout:hover,.dashboard-login:hover{color:#a5b4fc}.dashboard-main{max-width:960px;margin:0 auto;padding:40px 24px 80px}.dashboard-hero{margin-bottom:48px}.dashboard-hero-content h1{font-size:clamp(1.75rem,4vw,2.5rem);font-weight:700;margin:0 0 12px;letter-spacing:-.025em;background:linear-gradient(135deg,#f8fafc,#cbd5e1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dashboard-hero-subtitle{font-size:1.1rem;color:#94a3b8e6;margin:0;max-width:480px}.dashboard-section{margin-bottom:40px}.dashboard-section-header{display:flex;align-items:center;gap:12px;margin-bottom:16px}.dashboard-section-header h2{font-size:1rem;font-weight:600;color:#e2e8f0e6;margin:0;text-transform:uppercase;letter-spacing:.05em}.dashboard-card{background:#0f141e99;border:1px solid rgba(255,255,255,.06);border-radius:20px;padding:24px}.dashboard-create-card{display:flex;flex-direction:column;gap:16px}.dashboard-card-icon{width:48px;height:48px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:24px;color:#fff;flex-shrink:0}.dashboard-create-card>.dashboard-card-icon{align-self:flex-start}.dashboard-info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.dashboard-info-card{background:#0f172a66;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(148,163,184,.15);border-radius:20px;padding:24px;text-align:left;display:flex;flex-direction:column;position:relative;overflow:hidden;transition:all .3s ease;box-shadow:0 4px 6px #0000001a}.dashboard-info-card:hover{transform:translateY(-4px);border-color:#6366f14d;box-shadow:0 12px 24px #0003,0 0 20px #6366f10d;background:#0f172a99}.dashboard-info-card:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at top right,rgba(99,102,241,.1),transparent 60%);pointer-events:none}.dashboard-info-label{font-size:.8rem;font-weight:700;color:#94a3b8cc;margin-bottom:12px;text-transform:uppercase;letter-spacing:.1em;display:flex;align-items:center;gap:8px}.dashboard-info-value{font-size:2.2rem;font-weight:800;background:linear-gradient(135deg,#a855f7,#6366f1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:8px;line-height:1.2}.dashboard-info-text{font-size:.95rem;color:#e2e8f0cc;margin-bottom:6px;display:flex;align-items:center;gap:8px}.dashboard-info-subtext{font-size:.85rem;color:#94a3b8b3;margin-bottom:auto;padding-bottom:24px}.dashboard-badge{background:#6366f133;color:#a5b4fc;padding:4px 10px;border-radius:999px;font-size:.8rem;font-weight:600}.dashboard-buy-credits-btn,.dashboard-history-btn{display:block;width:100%;text-align:center;padding:12px 16px;background:linear-gradient(135deg,#6366f126,#8b5cf626);color:#a5b4fc;border:1px solid rgba(129,140,248,.3);border-radius:12px;font-size:.95rem;font-weight:600;transition:all .3s ease;margin-top:auto;text-decoration:none}.dashboard-buy-credits-btn:hover{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border-color:transparent;transform:translateY(-2px);box-shadow:0 8px 16px #6366f14d}.dashboard-history-btn{background:transparent;color:#e2e8f0e6;border-color:#94a3b84d}.dashboard-history-btn:hover{background:#94a3b826;transform:translateY(-2px);color:#fff;border-color:#94a3b880}.dashboard-card-content{width:100%}.dashboard-card-content h3{font-size:1.1rem;font-weight:600;margin:0 0 4px;color:#f8fafc}.dashboard-card-content p{font-size:.9rem;color:#94a3b8cc;margin:0}.dashboard-create-form{display:flex;gap:12px;width:100%;align-items:center;flex-wrap:wrap}.dashboard-input{flex:1;min-width:220px;padding:12px 16px;background:#0f172a99;border:1px solid rgba(148,163,184,.15);border-radius:12px;color:#f8fafc;font-size:.95rem;font-family:inherit;outline:none;transition:border-color .2s ease}.dashboard-input:focus{border-color:#6366f180}.dashboard-input::placeholder{color:#94a3b880}.dashboard-create-btn{padding:12px 24px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:12px;color:#fff;font-size:.95rem;font-weight:600;font-family:inherit;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease;white-space:nowrap}.dashboard-create-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 20px #6366f14d}.dashboard-create-btn:disabled{opacity:.7;cursor:not-allowed}.dashboard-create-error{margin-top:12px;padding:12px 16px;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:10px;color:#f87171;font-size:.9rem}.dashboard-empty{text-align:center;padding:40px 24px;color:#94a3b8b3}.dashboard-rooms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.dashboard-rooms-actions{display:flex;align-items:center;gap:10px}.dashboard-toggle{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:999px;border:1px solid rgba(148,163,184,.25);background:#0f141e99;color:#e2e8f0d9;font-size:.8rem;cursor:pointer;transition:border-color .2s ease,color .2s ease}.dashboard-toggle:hover{border-color:#6366f166;color:#f8fafc}.dashboard-toggle-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#6366f133;color:#a5b4fc;font-weight:600}.dashboard-room-card{display:flex;justify-content:space-between;gap:16px;padding:20px;background:#0f141e99;border:1px solid rgba(255,255,255,.06);border-radius:16px;text-decoration:none;transition:border-color .2s ease,transform .15s ease}.dashboard-room-card:hover{border-color:#6366f14d;transform:translateY(-2px)}.dashboard-room-card.expired{opacity:.6;cursor:not-allowed}.dashboard-room-card.expired:hover{border-color:#ffffff0f;transform:none}.dashboard-room-info{flex-grow:1}.dashboard-room-name{font-size:1rem;font-weight:600;color:#f8fafc;margin:0 0 4px}.dashboard-room-date{font-size:.85rem;color:#94a3b8b3}.dashboard-room-time{display:block;margin-top:6px;font-size:.75rem;background:#22c55e1f;padding:3px 8px;border-radius:999px;width:fit-content}.dashboard-room-time.green{color:#4ade80;background:#22c55e1f;border-color:#22c55e33}.dashboard-room-time.yellow{color:#fbbf24;background:#fbbf241f;border-color:#fbbf2433}.dashboard-room-time.red{color:#f87171;background:#f871711f;border-color:#f8717133}.dashboard-room-time.expired{color:#f87171}.dashboard-room-meta{display:flex;flex-direction:column;align-items:flex-end;gap:8px}.dashboard-room-code{background:#6366f126;color:#a5b4fc;padding:6px 12px;border-radius:8px;font-size:.85rem;font-weight:600;font-family:monospace}.dashboard-room-status{padding:4px 10px;border-radius:6px;font-size:.7rem;font-weight:600;text-transform:uppercase;background:#22c55e26;color:#4ade80}.dashboard-room-status.active{background:#22c55e26;color:#4ade80}.dashboard-room-status.expired{background:#ef444426;color:#f87171}.dashboard-expired-block{margin-top:16px;display:grid;gap:12px}.dashboard-expired-header{font-size:.85rem;font-weight:600;color:#e2e8f0b3;text-transform:uppercase;letter-spacing:.08em}.dashboard-admin-link{padding:8px 16px;background:#6366f126;border:1px solid rgba(99,102,241,.3);border-radius:8px;color:#a5b4fc;font-size:.85rem;font-weight:500;text-decoration:none;transition:all .2s ease}.dashboard-admin-link:hover{background:#6366f140}.dashboard-auth-prompt{display:flex;justify-content:center}.dashboard-auth-card{text-align:center;max-width:400px;padding:48px 32px;background:#0f141e99;border:1px solid rgba(255,255,255,.06);border-radius:24px}.dashboard-auth-card h3{font-size:1.5rem;font-weight:600;margin:0 0 12px;color:#f8fafc}.dashboard-auth-card p{font-size:1rem;color:#94a3b8cc;margin:0 0 28px}.dashboard-auth-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.dashboard-btn-primary,.dashboard-btn-secondary{padding:12px 28px;border-radius:12px;font-size:.95rem;font-weight:600;font-family:inherit;text-decoration:none;transition:transform .15s ease,box-shadow .2s ease}.dashboard-btn-primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none}.dashboard-btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 20px #6366f14d}.dashboard-btn-secondary{background:transparent;color:#a5b4fc;border:1px solid rgba(99,102,241,.3)}.dashboard-btn-secondary:hover{border-color:#6366f180;background:#6366f11a}.dashboard-loading{min-height:100vh;display:flex;align-items:center;justify-content:center}.guest-welcome-page{min-height:100vh;background:#0a0c10;display:flex;align-items:center;justify-content:center;padding:24px;position:relative;overflow:hidden}.guest-welcome-container{position:relative;z-index:1;width:100%;max-width:440px}.guest-welcome-card{background:#0f141ed9;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:28px;padding:48px 36px;box-shadow:0 40px 80px #00000080}.guest-welcome-header{text-align:center;margin-bottom:36px}.guest-welcome-icon{width:64px;height:64px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:28px;color:#fff;margin:0 auto 24px;box-shadow:0 12px 40px #6366f159}.guest-welcome-header h1{font-size:1.75rem;font-weight:700;color:#f8fafc;margin:0 0 8px;letter-spacing:-.02em}.guest-welcome-subtitle{font-size:1rem;color:#94a3b8d9;margin:0}.guest-welcome-form{display:flex;flex-direction:column;gap:24px}.guest-welcome-field{display:flex;flex-direction:column;gap:10px}.guest-welcome-field label{font-size:.9rem;font-weight:500;color:#e2e8f0d9}.guest-welcome-input{width:100%;padding:16px 18px;background:#0f172a99;border:1px solid rgba(148,163,184,.15);border-radius:14px;color:#f8fafc;font-size:1.05rem;font-family:inherit;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.guest-welcome-input:focus{border-color:#6366f199;box-shadow:0 0 0 3px #6366f126}.guest-welcome-input:disabled{opacity:.7;cursor:not-allowed}.guest-welcome-input::placeholder{color:#94a3b880}.guest-welcome-hint{font-size:.85rem;color:#818cf8cc}.guest-welcome-button{width:100%;padding:16px 24px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:14px;color:#fff;font-size:1.05rem;font-weight:600;font-family:inherit;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease;display:flex;align-items:center;justify-content:center;min-height:54px}.guest-welcome-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 32px #6366f166}.guest-welcome-button:disabled{opacity:.6;cursor:not-allowed}.guest-welcome-footer{margin-top:28px;text-align:center}.guest-welcome-code{font-size:.9rem;color:#94a3b8b3;margin:0}.guest-welcome-code strong{color:#a5b4fc;font-family:monospace;font-size:1rem}.guest-welcome-ambient{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(99,102,241,.12),transparent),radial-gradient(ellipse 60% 40% at 80% 80%,rgba(139,92,246,.08),transparent)}.join-room-page{min-height:100vh;background:#0a0c10;display:flex;align-items:center;justify-content:center;padding:24px;position:relative;overflow:hidden}.join-room-container{position:relative;z-index:1;width:100%;max-width:440px}.join-room-card{background:#0f141ed9;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.08);border-radius:28px;padding:48px 36px;box-shadow:0 40px 80px #00000080}.join-room-back{display:inline-block;font-size:.9rem;color:#94a3b8cc;text-decoration:none;margin-bottom:24px;transition:color .2s ease}.join-room-back:hover{color:#a5b4fc}.join-room-header{text-align:center;margin-bottom:36px}.join-room-icon{width:64px;height:64px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:20px;display:flex;align-items:center;justify-content:center;font-size:28px;color:#fff;margin:0 auto 24px;box-shadow:0 12px 40px #6366f159}.join-room-header h1{font-size:1.75rem;font-weight:700;color:#f8fafc;margin:0 0 8px;letter-spacing:-.02em}.join-room-subtitle{font-size:1rem;color:#94a3b8d9;margin:0}.join-room-form{display:flex;flex-direction:column;gap:24px}.join-room-field{display:flex;flex-direction:column;gap:10px}.join-room-field label{font-size:.9rem;font-weight:500;color:#e2e8f0d9}.join-room-input{width:100%;padding:16px 18px;background:#0f172a99;border:1px solid rgba(148,163,184,.15);border-radius:14px;color:#f8fafc;font-size:1.25rem;font-family:monospace;text-align:center;letter-spacing:.15em;outline:none;transition:border-color .2s ease,box-shadow .2s ease}.join-room-input:focus{border-color:#6366f199;box-shadow:0 0 0 3px #6366f126}.join-room-input::placeholder{color:#94a3b880;letter-spacing:.05em}.join-room-error{font-size:.85rem;color:#fca5a5}.join-room-button{width:100%;padding:16px 24px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none;border-radius:14px;color:#fff;font-size:1.05rem;font-weight:600;font-family:inherit;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease;display:flex;align-items:center;justify-content:center;min-height:54px}.join-room-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 32px #6366f166}.join-room-button:disabled{opacity:.6;cursor:not-allowed}.join-room-footer{margin-top:28px;text-align:center}.join-room-footer p{font-size:.9rem;color:#94a3b899;margin:0}.join-room-ambient{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none;background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(99,102,241,.12),transparent),radial-gradient(ellipse 60% 40% at 80% 80%,rgba(139,92,246,.08),transparent)}.dashboard-join-btn{display:inline-block;margin-top:20px;padding:14px 32px;background:transparent;border:1px solid rgba(99,102,241,.4);border-radius:12px;color:#a5b4fc;font-size:1rem;font-weight:600;font-family:inherit;text-decoration:none;transition:transform .15s ease,background .2s ease,border-color .2s ease}.dashboard-join-btn:hover{transform:translateY(-1px);background:#6366f126;border-color:#6366f199}.controller-header-right{display:flex;align-items:center;gap:12px}.controller-guest-badge{display:flex;align-items:center;gap:8px;padding:8px 14px;background:#6366f126;border:1px solid rgba(99,102,241,.25);border-radius:999px;font-size:.85rem;color:#a5b4fc}.controller-guest-icon{font-size:1rem}.queue-singer{font-size:.75rem;color:#a5b4fccc}.room-master-page{min-height:100vh;background:#0a0c10;color:#f8fafc}.room-master-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid rgba(255,255,255,.06);background:#0f141e80;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.room-master-brand{display:flex;align-items:center;gap:16px}.room-master-back{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#ffffff0d;border-radius:12px;color:#f8fafc;text-decoration:none;font-size:1.2rem;transition:background .2s ease}.room-master-back:hover{background:#ffffff1a}.room-master-brand h1{font-size:1.2rem;font-weight:600;margin:0}.room-master-code{font-size:.85rem;color:#a5b4fc;font-family:monospace}.room-master-main{max-width:1000px;margin:0 auto;padding:40px 24px 80px}.room-master-hero{margin-bottom:40px}.room-master-hero-content{margin-bottom:24px}.room-master-eyebrow{font-size:.75rem;text-transform:uppercase;letter-spacing:.15em;color:#818cf8;margin:0 0 12px;font-weight:600}.room-master-hero h2{font-size:clamp(1.5rem,3vw,2rem);font-weight:700;margin:0 0 12px;letter-spacing:-.02em;color:#f8fafc}.room-master-subtitle{font-size:1rem;color:#94a3b8d9;margin:0}.room-master-actions{display:flex;gap:12px;flex-wrap:wrap}.room-master-timer{display:flex;align-items:center;gap:8px;margin-left:auto;margin-bottom:14px;width:fit-content;padding:7px 12px;border-radius:10px;border:1px solid rgba(250,204,21,.35);background:#facc151a;color:#fef08a;font-size:.86rem;font-weight:600}.room-master-header{display:flex;align-items:center;justify-content:space-between}.room-master-time-progress{height:6px;border-radius:2px;background:#64748b4d;overflow:hidden}.room-master-time-progress-fill{height:100%;border-radius:2px;background:#facc15;transition:width 1s linear}.room-master-time-value{font-size:.86rem;font-weight:700;color:#fef08a;text-align:center}.room-master-btn-primary,.room-master-btn-secondary{padding:14px 28px;border-radius:14px;font-size:.95rem;font-weight:600;text-decoration:none;transition:transform .15s ease,box-shadow .2s ease;text-align:center}.room-master-btn-warning{padding:14px 28px;border-radius:14px;font-size:.95rem;font-weight:600;font-family:inherit;border:1px solid rgba(245,158,11,.5);background:#f59e0b;color:#fff;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,opacity .2s ease}.room-master-btn-warning:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 8px 24px #f59e0b59}.room-master-btn-warning:disabled{cursor:not-allowed;opacity:.6}.room-master-extend-meta{margin:10px 0 0;color:#fbbf24e6;font-size:.86rem}.room-master-btn-primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff}.room-master-btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 24px #6366f159}.room-master-btn-secondary{background:#ffffff0d;color:#f8fafc;border:1px solid rgba(255,255,255,.1)}.room-master-btn-secondary:hover{background:#ffffff1a;border-color:#ffffff26}.room-master-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:20px}.room-master-card{background:#0f141e99;border:1px solid rgba(255,255,255,.06);border-radius:20px;padding:28px}.room-master-card-header{margin-bottom:24px}.room-master-card-header h3{font-size:1.15rem;font-weight:600;margin:0 0 8px;color:#f8fafc}.room-master-card-header p{font-size:.9rem;color:#94a3b8bf;margin:0}.room-master-qr{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.room-master-qr canvas{border-radius:16px;box-shadow:0 12px 32px #0000004d}.room-master-qr-info{flex:1;min-width:200px}.room-master-qr-url{font-size:.85rem;color:#94a3b8cc;word-break:break-all;margin:0 0 16px}.room-master-links{display:flex;flex-direction:column;gap:12px}.room-master-hint{font-size:.85rem;color:#94a3b899;margin:8px 0 0}.room-master-loading{min-height:100vh;display:flex;align-items:center;justify-content:center}.room-expired-page{min-height:100vh;background:#0a0c10;color:#f8fafc;display:flex;align-items:center;justify-content:center}.room-expired-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;text-align:center}.room-expired-state-title{margin:0;color:#f87171;font-size:1.5rem;font-weight:700}.room-expired-state-message{margin:0;color:#94a3b8cc}.room-expired-state-note{margin:0;color:#94a3b899;font-size:.9rem}.controller-loading{min-height:100vh;display:flex;align-items:center;justify-content:center;background:#0a0c10}.queue-info{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.queue-info .queue-title{font-size:.95rem;color:#f8fafc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.queue-info .queue-singer{font-size:.75rem;color:#a5b4fcb3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.controller-desync-toast{position:fixed;left:24px;right:24px;bottom:24px;z-index:1100;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border-radius:10px;border:1px solid rgba(148,163,184,.35);background:#0f172af2;color:#e2e8f0;font-size:.875rem;box-shadow:0 10px 30px #02061773}@media(min-width:640px){.controller-desync-toast{left:50%;right:auto;transform:translate(-50%);width:fit-content;max-width:90%}}.controller-desync-toast--warning{border-color:#ef4444f2;border-width:1px 1px 3px 1px}.controller-desync-toast--success{border-color:#22c55ef2;border-width:1px 1px 3px 1px}.controller-desync-toast-text{text-align:center;flex:1 1 auto}.controller-desync-toast-subtext{margin-top:3px;font-size:.78rem;color:#e2e8f0cc;line-height:1.35;text-align:center}.admin-page{min-height:100vh;background:#0a0c10;display:flex;overflow-x:hidden}.admin-loading{width:100%;display:grid;place-items:center;min-height:100vh}.admin-loading-content{display:grid;place-items:center;min-height:400px}.admin-sidebar{width:260px;background:#0f141ef2;border-right:1px solid rgba(255,255,255,.08);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;transition:transform .3s ease}.admin-sidebar-header{padding:20px;border-bottom:1px solid rgba(255,255,255,.06);display:flex;align-items:center;justify-content:space-between}.admin-sidebar-close{display:none;background:none;border:none;color:#94a3b8;font-size:1.5rem;cursor:pointer}.admin-logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:#f8fafc}.admin-logo-icon{width:40px;height:40px;background:linear-gradient(135deg,#6366f1,#8b5cf6);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.25rem}.admin-logo-text{font-size:1.25rem;font-weight:600;letter-spacing:-.02em}.admin-logo-text.brand-logo-text{font-size:1.25rem}.admin-nav{flex:1;padding:16px 12px;display:flex;flex-direction:column;gap:4px}.admin-nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:10px;text-decoration:none;color:#94a3b8;font-size:.95rem;transition:all .2s ease}.admin-nav-item:hover{background:#ffffff0d;color:#f8fafc}.admin-nav-item.active{background:#6366f126;color:#a5b4fc}.admin-nav-icon{font-size:1.1rem}.admin-sidebar-footer{padding:16px 12px;border-top:1px solid rgba(255,255,255,.06)}.admin-main{flex:1;margin-left:260px;display:flex;flex-direction:column;min-height:100vh;overflow-x:hidden}.admin-header{display:flex;align-items:center;justify-content:space-between;padding:20px 32px;background:#0f141ecc;border-bottom:1px solid rgba(255,255,255,.06);position:sticky;top:0;z-index:50;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.admin-menu-btn{display:none;background:none;border:none;color:#f8fafc;font-size:1.5rem;cursor:pointer}.admin-header-title{font-size:1.5rem;font-weight:600;color:#f8fafc;margin:0}.admin-header-user{display:flex;align-items:center;gap:16px;position:relative}.admin-header-user-items{display:flex;align-items:center;gap:16px}.admin-user-menu-btn{display:none;align-items:center;justify-content:center;width:40px;height:40px;border-radius:10px;border:1px solid rgba(148,163,184,.2);background:#0f172ab3;color:#e2e8f0;font-size:1.2rem;cursor:pointer;transition:all .2s ease}.admin-user-menu-btn:hover{background:#0f172ae6;border-color:#94a3b84d}@media(max-width:768px){.admin-user-menu-btn{display:flex}.admin-header-user-items{position:absolute;top:calc(100% + 8px);right:16px;flex-direction:column;align-items:stretch;gap:2px;background:#0f172afa;border:1px solid rgba(148,163,184,.2);border-radius:12px;padding:8px;min-width:180px;box-shadow:0 8px 24px #0006,0 2px 8px #0003;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);display:none;z-index:1000}.admin-header-user-items.open{display:flex}.admin-user-name{padding:10px 14px;font-weight:500;color:#a5b4fc;border-bottom:1px solid rgba(148,163,184,.15);margin-bottom:4px}.admin-logout-btn{width:100%;padding:10px 14px;border-radius:8px;text-align:left;background:transparent;border:none;color:#fca5a5;font-size:.9rem;font-weight:500;cursor:pointer;transition:background .2s ease,color .2s}.admin-logout-btn:hover{background:#ef444426;color:#f87171}}.admin-logout-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 16px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#fca5a5;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap}.admin-logout-btn:hover{background:#ef444433;border-color:#ef444480;color:#f87171;transform:translateY(-1px)}.admin-content{flex:1;padding:32px;overflow-x:hidden;max-width:100%}.admin-dashboard{display:flex;flex-direction:column;gap:32px}.admin-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px}.admin-stat-card{background:#0f141ecc;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:24px;display:flex;align-items:flex-start;gap:16px}.admin-stat-card.active{border-color:#22c55e4d;background:#22c55e14}.admin-stat-card.expired{border-color:#ef44444d;background:#ef444414}.admin-stat-card.pending{border-color:#fbbf244d;background:#fbbf2414}.admin-stat-icon{font-size:1.75rem}.admin-stat-content{display:flex;flex-direction:column;gap:4px}.admin-stat-value{font-size:1.75rem;font-weight:700;color:#f8fafc;line-height:1}.admin-stat-label{font-size:.875rem;color:#94a3b8}.admin-dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px}.admin-highlight-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:20px}.admin-highlight{background:#02061780;border:1px solid rgba(148,163,184,.15);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:6px}.admin-highlight-label{font-size:.85rem;color:#94a3b8cc}.admin-highlight-value{font-size:1.3rem;font-weight:700;color:#f8fafc}.admin-progress{display:grid;gap:10px}.admin-progress-label{font-size:.85rem;color:#94a3b8cc}.admin-progress-value{font-size:1.1rem;font-weight:600;color:#f8fafc;margin-left:8px}.admin-progress-track{height:8px;background:#94a3b833;border-radius:999px;overflow:hidden}.admin-progress-fill{display:block;height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:999px}.admin-recap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.admin-recap-card{background:#02061780;border:1px solid rgba(148,163,184,.15);border-radius:14px;padding:16px;display:grid;gap:10px}.admin-recap-label{font-weight:600;color:#f8fafc}.admin-recap-metric{display:flex;align-items:center;justify-content:space-between;font-size:.9rem;color:#e2e8f0cc}.admin-recap-metric strong{color:#f8fafc}.admin-chart{margin-top:20px;display:grid;gap:12px}.admin-chart-header{display:flex;align-items:center;justify-content:space-between;font-size:.9rem;color:#e2e8f0cc}.admin-chart-labels{display:flex;gap:10px;font-size:.75rem;color:#94a3b8cc}.admin-chart-bars{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;gap:10px;min-height:140px;padding:12px;background:#02061766;border:1px solid rgba(148,163,184,.15);border-radius:12px}.admin-chart-bar{display:flex;flex-direction:column;align-items:center;gap:6px}.admin-chart-bar-fill{width:100%;min-height:6px;border-radius:8px 8px 4px 4px;background:linear-gradient(180deg,#6366f1e6,#6366f166)}.admin-chart-bars.is-rooms .admin-chart-bar-fill{background:linear-gradient(180deg,#38bdf8e6,#38bdf866)}.admin-chart-bars.is-transactions .admin-chart-bar-fill{background:linear-gradient(180deg,#22c55ee6,#22c55e66)}.admin-chart-bars.is-revenue .admin-chart-bar-fill{background:linear-gradient(180deg,#eab308f2,#eab30866)}.admin-chart-bar-value{font-size:.75rem;color:#e2e8f0b3}.admin-config-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.admin-config-item{background:#02061780;border:1px solid rgba(148,163,184,.15);border-radius:12px;padding:16px;display:flex;flex-direction:column;gap:6px;font-size:.9rem;color:#e2e8f0cc}.admin-config-item strong{color:#f8fafc;font-weight:600}.admin-card{background:#0f141ecc;border:1px solid rgba(255,255,255,.08);border-radius:16px;padding:28px}.admin-card-title{font-size:1.25rem;font-weight:600;color:#f8fafc;margin:0 0 8px}.admin-card-subtitle{font-size:.9rem;color:#94a3b8;margin:0 0 24px}.admin-settings{display:flex;flex-direction:column;gap:24px}.admin-settings-list{display:flex;flex-direction:column;gap:20px}.admin-setting-item{display:flex;flex-direction:column;gap:8px}.admin-setting-label{font-size:.9rem;color:#e2e8f0;font-weight:500}.admin-setting-control{display:flex;gap:12px}.admin-input{flex:1;padding:12px 16px;background:#02061780;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#f8fafc;font-size:.95rem;outline:none;transition:all .2s ease}.admin-input:focus{border-color:#6366f180;box-shadow:0 0 0 3px #6366f11a}.admin-textarea{min-height:100px;resize:vertical}.admin-info-list{display:flex;flex-direction:column;gap:16px}.admin-info-item{font-size:.9rem;color:#94a3b8;line-height:1.6}.admin-info-item strong{color:#e2e8f0}.admin-btn{padding:10px 20px;background:#ffffff14;border:1px solid rgba(255,255,255,.1);border-radius:10px;color:#f8fafc;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease;white-space:nowrap;display:flex;align-items:center;justify-content:center}.admin-btn:hover{background:#ffffff1f}.admin-btn:disabled{opacity:.5;cursor:not-allowed}.admin-btn-primary{background:linear-gradient(135deg,#6366f1,#8b5cf6);border:none}.admin-btn-primary:hover{background:linear-gradient(135deg,#818cf8,#a78bfa)}.admin-btn-success{background:#22c55e33;border-color:#22c55e4d;color:#4ade80}.admin-btn-success:hover{background:#22c55e4d}.admin-btn-danger{background:#ef444426;border-color:#ef44444d;color:#f87171}.admin-btn-danger:hover{background:#ef444440}.admin-btn-sm{padding:6px 12px;font-size:.8rem}.admin-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;gap:16px;flex-wrap:wrap}.admin-filter-tabs{display:flex;gap:8px}.admin-filter-tab{padding:8px 16px;background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:#94a3b8;font-size:.85rem;cursor:pointer;transition:all .2s ease}.admin-filter-tab:hover{background:#ffffff14;color:#f8fafc}.admin-filter-tab.active{background:#6366f126;border-color:#6366f14d;color:#a5b4fc}.admin-table-container{background:#0f141ecc;border:1px solid rgba(255,255,255,.08);border-radius:16px;overflow-x:auto;overflow-y:hidden}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:16px 20px;text-align:left}.admin-table th{background:#02061766;font-size:.8rem;font-weight:600;color:#94a3b8;text-transform:uppercase;letter-spacing:.05em;border-bottom:1px solid rgba(255,255,255,.06)}.admin-table td{border-bottom:1px solid rgba(255,255,255,.04);font-size:.9rem;color:#e2e8f0}.admin-table tr:last-child td{border-bottom:none}.admin-table tr:hover td{background:#ffffff05}.admin-table tr.expired-row td{opacity:.6}.admin-table-empty{text-align:center;color:#64748b;padding:48px 20px!important}.admin-cell-primary{font-weight:500;color:#f8fafc}.admin-cell-secondary{font-size:.8rem;color:#64748b;margin-top:2px}.admin-cell-mono{font-family:SF Mono,Monaco,monospace;font-size:.85rem}.admin-actions{display:flex;gap:8px}.admin-badge{display:inline-block;padding:4px 10px;border-radius:6px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.03em}.admin-badge.success{background:#22c55e26;color:#4ade80}.admin-badge.danger{background:#ef444426;color:#f87171}.admin-badge.warning{background:#fbbf2426;color:#fbbf24}.admin-badge.info{background:#3b82f626;color:#60a5fa}.admin-badge.muted{background:#64748b26;color:#94a3b8}.admin-credits-badge{display:inline-block;padding:4px 10px;background:#6366f126;border-radius:6px;font-size:.85rem;font-weight:600;color:#a5b4fc}.admin-room-code{font-family:SF Mono,Monaco,monospace;padding:4px 8px;background:#02061766;border-radius:6px;font-size:.85rem;color:#e2e8f0}.admin-time-remaining{font-size:.85rem;color:#4ade80}.admin-time-remaining.expired{color:#f87171}.admin-data-table-wrapper{display:grid;gap:14px}.admin-data-table-topbar{display:flex;align-items:center;justify-content:flex-start;gap:12px}.admin-table-search-wrap{display:grid;gap:6px;width:min(440px,100%)}.admin-table-search-label{color:#94a3b8;font-size:.78rem;letter-spacing:.03em;text-transform:uppercase;font-weight:600}.admin-table-search{width:100%;background:linear-gradient(120deg,#0f172ae0,#1e293bb3);border:1px solid rgba(129,140,248,.28);color:#e2e8f0;border-radius:12px;padding:10px 14px;font-size:.92rem;transition:border-color .2s ease,box-shadow .2s ease}.admin-table-search::placeholder{color:#64748b}.admin-table-search:focus{outline:none;border-color:#818cf8b3;box-shadow:0 0 0 3px #6366f138}.admin-table-container-premium{overflow-x:auto;overflow-y:hidden}.admin-table-premium{min-width:940px}.admin-table-premium thead th{background:linear-gradient(180deg,#1e293bc7,#0f172a94);border-bottom:1px solid rgba(129,140,248,.22);color:#cbd5e1}.admin-table-premium tbody tr:nth-child(2n) td{background:#ffffff03}.admin-table-premium tbody tr:hover td{background:#818cf81a}.admin-sort-trigger{display:inline-flex;align-items:center;gap:8px;border:none;background:none;color:inherit;padding:0;font:inherit;letter-spacing:inherit;text-transform:inherit;cursor:pointer}.admin-sort-icon{display:inline-flex;flex-direction:column;line-height:.7;font-size:.56rem;gap:2px}.admin-sort-icon span{color:#94a3b88c;transition:color .2s ease,transform .2s ease}.admin-sort-icon.active-asc span:first-child,.admin-sort-icon.active-desc span:last-child{color:#a5b4fc;transform:scale(1.06)}.admin-table-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.admin-table-length{display:inline-flex;align-items:center;gap:8px;color:#94a3b8;font-size:.86rem}.admin-table-length-select{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(129,140,248,.34);background:#0f172acc;color:#e2e8f0;border-radius:10px;padding:7px 30px 7px 10px;font-size:.86rem;cursor:pointer}.admin-table-length-select:focus{outline:none;border-color:#818cf8bf;box-shadow:0 0 0 3px #6366f133}.admin-table-pagination-block{margin-left:auto;display:grid;gap:8px;justify-items:end}.admin-table-pagination-meta{color:#64748b;font-size:.8rem}.admin-table-pagination{display:inline-flex;align-items:center;gap:6px}.admin-page-btn{border:1px solid rgba(100,116,139,.36);border-radius:10px;background:#0f172acc;color:#cbd5e1;padding:7px 11px;font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s ease}.admin-page-btn:hover:not(:disabled){border-color:#818cf89e;color:#e2e8f0;background:#6366f13d}.admin-page-btn.active{border-color:#818cf8e6;background:linear-gradient(145deg,#6366f159,#818cf833);color:#eef2ff}.admin-page-btn:disabled{opacity:.4;cursor:not-allowed}.admin-page-dots{color:#64748b;padding:0 2px}.admin-action-chip{border:1px solid transparent;background:#94a3b81a;color:#e2e8f0;font-size:.72rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;border-radius:999px;padding:5px 9px;cursor:pointer;transition:transform .15s ease,background .2s ease,border-color .2s ease}.admin-action-chip:hover{transform:translateY(-1px)}.admin-action-chip.view{background:#3b82f624;border-color:#3b82f64d;color:#93c5fd}.admin-action-chip.edit{background:#fbbf2424;border-color:#fbbf2452;color:#fcd34d}.admin-action-chip.delete{background:#ef444424;border-color:#ef44444d;color:#fda4af}.admin-action-chip.award{background:#10b98124;border-color:#10b9814d;color:#6ee7b7}@media(max-width:900px){.admin-data-table-topbar{justify-content:stretch}.admin-table-search-wrap{width:100%}.admin-table-footer{align-items:stretch}.admin-table-pagination-block{justify-items:start;margin-left:0}}.admin-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:200;padding:24px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.admin-modal{width:100%;max-width:500px;background:#0f141efa;border:1px solid rgba(255,255,255,.1);border-radius:20px;box-shadow:0 40px 100px #00000080;max-height:90vh;display:flex;flex-direction:column;overflow:hidden}.admin-modal-header{display:flex;align-items:center;justify-content:space-between;padding:24px 28px;border-bottom:1px solid rgba(255,255,255,.06)}.admin-modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#f8fafc}.admin-modal-close{background:none;border:none;font-size:1.5rem;color:#64748b;cursor:pointer;transition:color .2s ease}.admin-modal-close:hover{color:#f8fafc}.admin-modal-body{display:flex;flex-direction:column;gap:20px}.admin-modal-form{display:flex;flex-direction:column;flex:1;min-height:0}.admin-modal-scroll-container{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:0 28px;box-sizing:border-box}.admin-modal-body{padding:24px 0}.admin-modal-scroll-container::-webkit-scrollbar{width:8px}.admin-modal-scroll-container::-webkit-scrollbar-track{background:transparent}.admin-modal-scroll-container::-webkit-scrollbar-thumb{background-color:#475569;border-radius:9999px}.admin-modal-scroll-container::-webkit-scrollbar-thumb:hover{background-color:#64748b}.admin-form-group{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}.admin-form-group label{font-size:.85rem;color:#94a3b8;font-weight:500}.admin-form-row{display:flex;gap:16px;align-items:center}.admin-form-group-end{display:flex;justify-content:flex-end}.admin-form-section{border:1px solid rgba(148,163,184,.16);border-radius:14px;padding:16px;background:#0f172a52;display:flex;flex-direction:column;gap:12px}.admin-form-section-header{display:flex;flex-direction:column;gap:4px}.admin-form-section-header h4{margin:0;font-size:.98rem;font-weight:600;color:#e2e8f0}.admin-form-section-header p{margin:0;font-size:.82rem;color:#94a3b8}.admin-feature-list{display:flex;flex-direction:column;gap:10px}.admin-feature-empty{font-size:.85rem;color:#94a3b8;border:1px dashed rgba(148,163,184,.3);border-radius:10px;padding:12px}.admin-feature-row{display:flex;gap:10px;align-items:center}.admin-feature-row .admin-input{flex:1}.admin-feature-help{margin:4px 0 0;font-size:.82rem;color:#94a3b8}.admin-checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:.9rem;color:#e2e8f0}.admin-checkbox-label input{width:18px;height:18px;accent-color:#6366f1}.admin-modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 28px 20px;border-top:1px solid rgba(255,255,255,.06);background:#0f141efa}.admin-award-user{display:flex;align-items:center;justify-content:space-between;padding:16px;background:#02061780;border-radius:12px}.admin-award-user-info{display:flex;flex-direction:column;gap:4px}.admin-award-user-info strong{color:#f8fafc}.admin-award-user-info span{font-size:.85rem;color:#64748b}.admin-award-current{font-size:.9rem;color:#94a3b8}.admin-award-current strong{color:#a5b4fc}.admin-error{padding:16px 20px;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:12px;color:#f87171;font-size:.9rem;margin-bottom:20px}@media(max-width:1024px){.admin-sidebar{transform:translate(-100%)}.admin-sidebar.open{transform:translate(0)}.admin-sidebar-close{display:block}.admin-main{margin-left:0}.admin-menu-btn{display:block}}@media(max-width:768px){.admin-content{padding:20px}.admin-header{padding:16px 20px}.admin-header-title{font-size:1.25rem}.admin-stats-grid{grid-template-columns:1fr}.admin-form-row{flex-direction:column}.admin-form-group-end{justify-content:flex-start}.admin-feature-row{flex-direction:column;align-items:stretch}.admin-table{min-width:600px}}.packages-page{min-height:100vh;background:linear-gradient(135deg,#0b0d12,#1e293b,#0b0d12);color:#f8fafc;padding-bottom:60px}.packages-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;background:#0f172ab3;border-bottom:1px solid rgba(148,163,184,.2);flex-wrap:wrap;gap:16px}.packages-brand{display:flex;align-items:center;gap:12px}.packages-back{color:#e2e8f0cc;text-decoration:none;font-size:1.2rem;transition:color .2s}.packages-back:hover{color:#f8fafc}.packages-logo{font-size:1.5rem;background:linear-gradient(135deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.packages-title{font-size:1.25rem;font-weight:700;color:#f8fafc;letter-spacing:-.01em}.packages-currency{display:flex;align-items:center;gap:8px;font-size:.9rem;color:#e2e8f0cc}.packages-currency-label{color:#e2e8f099}.packages-currency-value{background:#6366f126;border:1px solid rgba(99,102,241,.3);border-radius:6px;padding:4px 10px;font-weight:600;color:#a5b4fc}.packages-hero{text-align:center;padding:60px 20px 40px;background:radial-gradient(ellipse at top,rgba(99,102,241,.15),transparent 70%)}.packages-hero h1{font-size:clamp(2rem,5vw,3rem);margin:0 0 12px;font-weight:800;letter-spacing:-.02em}.packages-hero p{font-size:1.1rem;color:#e2e8f0b3;max-width:500px;margin:0 auto 20px}.packages-currency-info{display:inline-flex;align-items:center;gap:8px;background:#6366f126;border:1px solid rgba(99,102,241,.3);border-radius:20px;padding:8px 16px;font-size:.9rem;color:#e2e8f0d9}.packages-section{max-width:1200px;margin:0 auto 48px;padding:0 24px}.packages-section h2{font-size:1.6rem;font-weight:700;margin:0 0 8px;letter-spacing:-.01em}.packages-section-desc{font-size:.95rem;color:#e2e8f099;margin:0 0 24px}.package-card.free-plan{border-color:#10b98166;background:linear-gradient(145deg,#10b98114,#0f172ad9)}.package-card.free-plan .package-badge.free{background:linear-gradient(135deg,#10b981,#059669)}.package-card.free-plan .package-credits{color:#10b981}.packages-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px}.package-card{background:#0f172ad9;border:1px solid rgba(148,163,184,.2);border-radius:16px;padding:28px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s,border-color .2s;position:relative;overflow:hidden}.package-card:hover{transform:translateY(-4px);box-shadow:0 16px 48px #0006;border-color:#6366f166}.package-card.featured{border-color:#6366f180;background:linear-gradient(145deg,#0f172af2,#1e293bd9)}.package-badge{position:absolute;top:12px;right:12px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;font-size:.75rem;font-weight:600;padding:4px 10px;border-radius:12px;text-transform:uppercase}.package-badge.best-value{background:linear-gradient(135deg,#10b981,#059669)}.package-header{margin-bottom:20px}.package-header h3{font-size:1.4rem;margin:0 0 8px;font-weight:700}.package-credits{font-size:2.2rem;font-weight:800;color:#6366f1}.package-credits span{font-size:1rem;font-weight:400;color:#e2e8f0b3;margin-left:4px}.package-price{margin:20px 0;padding:16px 0;border-top:1px solid rgba(148,163,184,.15);border-bottom:1px solid rgba(148,163,184,.15)}.price-main{font-size:1.8rem;font-weight:700;color:#f8fafc}.price-secondary{display:block;font-size:.85rem;color:#e2e8f099;margin-top:4px}.price-per-credit{display:block;font-size:.85rem;color:#10b981;margin-top:8px}.package-features{list-style:none;margin:0 0 20px;padding:0;flex:1}.package-features li{display:flex;align-items:center;gap:8px;font-size:.9rem;color:#e2e8f0cc;margin-bottom:10px}.package-features li:before{content:"✓";color:#10b981;font-weight:600}.package-buy-btn{width:100%;padding:14px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.package-buy-btn:hover{filter:brightness(1.1);transform:scale(1.02)}.package-card.active-plan{border:2px solid rgba(16,185,129,.6);background:linear-gradient(145deg,#10b9811a,#0f172ae6);box-shadow:0 0 24px #10b98126}.package-card.active-plan:hover{border-color:#10b981cc;box-shadow:0 0 32px #10b98140;transform:translateY(-2px)}.package-badge.active{background:linear-gradient(135deg,#10b981,#059669)}.package-buy-btn.current{background:#10b98126;color:#10b981;border:1px solid rgba(16,185,129,.3);cursor:default;opacity:.85}.package-buy-btn.current:hover{filter:none;transform:none}.package-buy-btn.downgrade{background:transparent;color:#f87171d9;border:1px solid rgba(248,113,113,.3)}.package-buy-btn.downgrade:hover{background:#f871711a;border-color:#f8717180;color:#f87171;transform:none;filter:none}.package-buy-btn.downgrade:disabled{opacity:.5;cursor:not-allowed}.packages-faq{max-width:800px;margin:60px auto 0;padding:0 20px}.packages-faq h2{text-align:center;font-size:1.8rem;margin-bottom:30px}.faq-item{background:#0f172a99;border:1px solid rgba(148,163,184,.15);border-radius:12px;padding:20px;margin-bottom:16px}.faq-item h3{font-size:1rem;margin:0 0 10px;color:#f8fafc}.faq-item p{font-size:.9rem;color:#e2e8f0b3;margin:0;line-height:1.6}.packages-loading,.packages-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:16px;text-align:center}.checkout-page{min-height:100vh;background:linear-gradient(135deg,#0b0d12,#1e293b,#0b0d12);color:#f8fafc}.checkout-header{display:flex;align-items:center;justify-content:space-between;padding:20px;background:#0f172ab3;border-bottom:1px solid rgba(148,163,184,.2);flex-wrap:wrap;gap:16px}.checkout-back{color:#e2e8f0cc;text-decoration:none;font-size:.95rem;display:flex;align-items:center;gap:8px;transition:color .2s}.checkout-back:hover{color:#f8fafc}.checkout-steps{display:flex;gap:24px;font-size:.9rem}.checkout-step{color:#e2e8f080;position:relative}.checkout-step.active{color:#6366f1;font-weight:600}.checkout-step.completed{color:#10b981}.checkout-main{max-width:900px;margin:0 auto;padding:40px 20px}.checkout-content{display:grid;gap:30px}.checkout-summary{background:#0f172ad9;border:1px solid rgba(148,163,184,.2);border-radius:16px;padding:24px}.checkout-summary h2{font-size:1.2rem;margin:0 0 20px;font-weight:600}.checkout-package-card{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#02061780;border-radius:12px;margin-bottom:20px}.checkout-package-info h3{margin:0 0 4px;font-size:1.1rem}.checkout-package-info p{margin:0;font-size:.9rem;color:#e2e8f0b3}.checkout-package-price .price-main{font-size:1.4rem}.checkout-package-price .price-usd{display:block;font-size:.8rem;color:#e2e8f099}.checkout-total{display:flex;justify-content:space-between;align-items:center;padding-top:16px;border-top:1px solid rgba(148,163,184,.15);font-weight:600}.checkout-total-amount{font-size:1.3rem;color:#6366f1}.checkout-section{background:#0f172ad9;border:1px solid rgba(148,163,184,.2);border-radius:16px;padding:24px}.checkout-section h2{font-size:1.2rem;margin:0 0 20px;font-weight:600}.checkout-user-info{background:#02061780;border-radius:12px;padding:16px;margin-bottom:20px}.checkout-user-info p{margin:0 0 8px;font-size:.95rem}.checkout-user-info p:last-child{margin-bottom:0}.checkout-continue-btn{width:100%;padding:14px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.checkout-continue-btn:hover{filter:brightness(1.1)}.checkout-error{background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:.9rem}.checkout-payment-methods{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;margin-bottom:24px}.payment-method-option{display:flex;align-items:center;gap:10px;padding:16px;background:#02061780;border:2px solid rgba(148,163,184,.2);border-radius:12px;cursor:pointer;transition:all .2s}.payment-method-option input{display:none}.payment-method-option.selected{border-color:#6366f1;background:#6366f11a}.payment-method-icon{font-size:1.5rem}.checkout-card-form,.checkout-bank-form{display:flex;flex-direction:column;gap:16px}.checkout-payment-form .form-group{display:flex;flex-direction:column;gap:6px}.checkout-payment-form .form-group label{font-size:.85rem;color:#e2e8f0cc}.checkout-payment-form .form-group input,.checkout-payment-form .form-group select{padding:12px 14px;background:#020617b3;border:1px solid rgba(148,163,184,.2);border-radius:8px;color:#f8fafc;font-size:1rem}.checkout-payment-form .form-group input:focus,.checkout-payment-form .form-group select:focus{outline:none;border-color:#6366f1}.checkout-payment-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.checkout-bank-info{background:#6366f11a;border:1px solid rgba(99,102,241,.2);border-radius:8px;padding:12px}.checkout-bank-info p{margin:0;font-size:.9rem;color:#e2e8f0cc}.checkout-terms{margin:20px 0}.checkout-terms label{display:flex;align-items:flex-start;gap:10px;font-size:.9rem;color:#e2e8f0cc;cursor:pointer}.checkout-terms a{color:#6366f1}.checkout-pay-btn{width:100%;padding:16px;background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none;border-radius:10px;font-size:1.1rem;font-weight:700;cursor:pointer;transition:all .2s}.checkout-pay-btn:hover:not(:disabled){filter:brightness(1.1);transform:scale(1.01)}.checkout-pay-btn:disabled{opacity:.6;cursor:not-allowed}.checkout-processing{text-align:center;padding:60px 20px}.processing-spinner{margin-bottom:20px}.checkout-loading,.checkout-error-page{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:16px;text-align:center}.checkout-back-btn{display:inline-block;padding:12px 24px;background:#6366f1;color:#fff;text-decoration:none;border-radius:8px;font-weight:500}.payment-status-page{min-height:100vh;background:linear-gradient(135deg,#0b0d12,#1e293b,#0b0d12);color:#f8fafc;display:flex;align-items:center;justify-content:center;padding:20px}.payment-status-content{background:#0f172ad9;border:1px solid rgba(148,163,184,.2);border-radius:20px;padding:40px;max-width:500px;width:100%;text-align:center}.payment-status-icon{font-size:4rem;margin-bottom:24px}.payment-status-icon.status-success{animation:bounce .5s ease-in-out}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.payment-status-content h1{font-size:1.8rem;margin:0 0 12px;font-weight:700}.payment-status-message{font-size:1rem;color:#e2e8f0b3;margin:0 0 30px}.payment-status-details{background:#02061780;border-radius:12px;padding:20px;margin-bottom:24px;text-align:left}.payment-status-details h2{font-size:1rem;margin:0 0 16px;color:#e2e8f0cc}.payment-detail-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid rgba(148,163,184,.1);font-size:.9rem}.payment-detail-row:last-child{border-bottom:none}.payment-detail-row span:first-child{color:#e2e8f099}.payment-detail-value{color:#f8fafc;font-weight:500;word-break:break-all}.payment-status-pending-info{display:flex;align-items:center;justify-content:center;gap:8px;color:#fbbf24;margin-bottom:24px}.payment-status-success-info{background:#10b98126;border:1px solid rgba(16,185,129,.3);border-radius:8px;padding:12px;margin-bottom:24px;color:#6ee7b7}.payment-status-failed-info{color:#e2e8f0b3;margin-bottom:24px;font-size:.9rem}.payment-status-failed-info a{color:#6366f1}.payment-status-actions{display:flex;flex-direction:column;gap:12px}.payment-status-actions .btn-primary{padding:14px 24px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;text-decoration:none;border-radius:10px;font-weight:600;transition:all .2s}.payment-status-actions .btn-primary:hover{filter:brightness(1.1)}.payment-status-actions .btn-secondary{padding:14px 24px;background:transparent;color:#e2e8f0cc;text-decoration:none;border-radius:10px;border:1px solid rgba(148,163,184,.3);transition:all .2s}.payment-status-actions .btn-secondary:hover{background:#94a3b81a}.payment-status-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:60vh;gap:16px}.payment-instruction-box{background:#0f172a99;border:1px solid rgba(148,163,184,.25);border-radius:14px;padding:24px;margin:20px 0;text-align:center}.payment-instruction-box h3{font-size:1.1rem;margin:0 0 16px;color:#e2e8f0}.va-number-display{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#1e293bcc;padding:14px 16px;border-radius:10px;margin-bottom:12px;overflow:hidden;flex-wrap:wrap}.va-number{font-family:JetBrains Mono,Fira Code,monospace;font-size:1.2rem;font-weight:700;letter-spacing:1.5px;color:#38bdf8;min-width:0;word-break:break-all;overflow-wrap:break-word;flex:1}.btn-copy{padding:8px 14px;background:#38bdf826;color:#38bdf8;border:1px solid rgba(56,189,248,.3);border-radius:8px;cursor:pointer;font-size:.85rem;transition:all .2s;white-space:nowrap}.btn-copy:hover{background:#38bdf840}.va-amount{font-size:.95rem;color:#e2e8f0b3;margin-top:8px}.qris-display{display:flex;justify-content:center;margin:16px 0}.qris-image{width:260px;height:260px;border-radius:12px;background:#fff;padding:12px}.btn-pay{display:inline-block;margin-top:8px;font-size:1rem}.payment-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.payment-modal{background:linear-gradient(145deg,#1e293b,#0f172a);border:1px solid rgba(148,163,184,.2);border-radius:16px;width:100%;max-width:480px;max-height:85vh;overflow-y:auto;padding:24px;color:#f8fafc}.payment-modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.payment-modal-header h2{margin:0;font-size:1.2rem}.payment-modal-close{background:none;border:none;color:#e2e8f099;font-size:1.4rem;cursor:pointer;padding:4px 8px;line-height:1}.payment-modal-close:hover{color:#f8fafc}.payment-modal-summary{display:flex;justify-content:space-between;padding:10px 14px;background:#0f172a80;border-radius:10px;margin-bottom:16px;font-size:.95rem}.payment-modal-item{opacity:.8}.payment-modal-price{font-weight:600;color:#38bdf8}.payment-modal-loading{display:flex;justify-content:center;padding:40px 0}.payment-methods-list{display:flex;flex-direction:column;gap:16px}.payment-method-group{display:flex;flex-direction:column;gap:6px}.payment-group-label{font-size:.8rem;text-transform:uppercase;letter-spacing:1px;color:#94a3b8b3;padding-left:4px}.payment-method-option{display:flex;align-items:center;gap:12px;padding:12px 14px;background:#1e293b80;border:2px solid transparent;border-radius:10px;cursor:pointer;transition:all .2s}.payment-method-option:hover{background:#1e293bcc;border-color:#94a3b84d}.payment-method-option.selected{border-color:#38bdf8;background:#38bdf814}.pm-icon{font-size:1.3rem}.pm-label{flex:1;font-size:.95rem}.pm-fee{font-size:.8rem;color:#94a3b8b3}.payment-modal-total{margin-top:16px;padding:14px;background:#0f172a80;border-radius:10px;display:flex;flex-direction:column;gap:6px;font-size:.9rem}.payment-total-row{display:flex;justify-content:space-between}.payment-total-row.total{font-weight:700;font-size:1rem;color:#38bdf8;padding-top:6px;border-top:1px solid rgba(148,163,184,.15);margin-top:4px}.payment-modal-actions{margin-top:16px}.payment-modal-actions .btn-primary{width:100%;padding:14px;font-size:1rem;border:none;border-radius:10px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;cursor:pointer;font-weight:600;transition:all .2s}.payment-modal-actions .btn-primary:hover{opacity:.9;transform:translateY(-1px)}.payment-modal-actions .btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.cc-form{margin-top:16px;padding:16px;background:#0f172a99;border:1px solid rgba(148,163,184,.15);border-radius:10px}.cc-form-title{margin:0 0 12px;font-size:.95rem;color:#f8fafc}.cc-form-error{background:#ef444426;color:#f87171;padding:8px 12px;border-radius:6px;font-size:.85rem;margin-bottom:12px;border:1px solid rgba(239,68,68,.25)}.cc-form-warning{margin:8px 0 0;font-size:.8rem;color:#fbbf24;opacity:.85}.cc-field{margin-bottom:10px}.cc-field label{display:block;font-size:.8rem;color:#94a3b8b3;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.cc-field input{width:100%;padding:10px 12px;background:#1e293bcc;border:1px solid rgba(148,163,184,.2);border-radius:8px;color:#f8fafc;font-size:.95rem;font-family:Courier New,monospace;letter-spacing:1px;box-sizing:border-box;transition:border-color .2s}.cc-field input:focus{outline:none;border-color:#38bdf8}.cc-field input::placeholder{color:#94a3b859;font-family:inherit}.cc-field-row{display:flex;gap:10px}.cc-field-row .cc-field{flex:1}.payment-history-page{min-height:100vh;background:linear-gradient(135deg,#0b0d12,#1e293b,#0b0d12);color:#f8fafc}.payment-history-header{display:flex;align-items:center;justify-content:space-between;padding:20px;background:#0f172ab3;border-bottom:1px solid rgba(148,163,184,.2);flex-wrap:wrap;gap:16px}.payment-history-title{display:flex;align-items:center;gap:16px}.payment-history-title h1{font-size:1.4rem;margin:0}.back-link{color:#e2e8f0cc;text-decoration:none;font-size:.9rem}.back-link:hover{color:#f8fafc}.btn-buy-credits{padding:10px 20px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;text-decoration:none;border-radius:8px;font-weight:600;font-size:.9rem;transition:all .2s}.btn-buy-credits:hover{filter:brightness(1.1)}.payment-history-main{max-width:900px;margin:0 auto;padding:30px 20px}.payment-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin-bottom:30px}.summary-card{display:flex;align-items:center;gap:14px;background:#0f172ad9;border:1px solid rgba(148,163,184,.2);border-radius:12px;padding:18px}.summary-icon{font-size:1.8rem}.summary-info{display:flex;flex-direction:column}.summary-value{font-size:1.5rem;font-weight:700}.summary-label{font-size:.8rem;color:#e2e8f099}.payment-history-filters{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.filter-btn{padding:8px 16px;background:transparent;color:#e2e8f0b3;border:1px solid rgba(148,163,184,.2);border-radius:20px;font-size:.85rem;cursor:pointer;transition:all .2s}.filter-btn:hover{background:#94a3b81a}.filter-btn.active{background:#6366f1;color:#fff;border-color:#6366f1}.transactions-list{display:flex;flex-direction:column;gap:12px}.transaction-item{display:flex;justify-content:space-between;align-items:center;background:#0f172ad9;border:1px solid rgba(148,163,184,.2);border-radius:12px;padding:16px 20px;transition:border-color .2s}.transaction-item:hover{border-color:#6366f14d}.transaction-left{display:flex;align-items:center;gap:14px}.transaction-icon{font-size:1.5rem}.transaction-info h3{margin:0 0 4px;font-size:1rem;font-weight:600}.transaction-id{margin:0;font-size:.75rem;color:#e2e8f080;font-family:monospace}.transaction-date{margin:2px 0 0;font-size:.8rem;color:#e2e8f099}.transaction-right{display:flex;flex-direction:column;align-items:flex-end;gap:6px}.transaction-amount .amount-main{font-size:1.1rem;font-weight:600}.credits-earned{display:block;font-size:.8rem;color:#10b981}.status-badge{padding:4px 10px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.badge-success{background:#10b98133;color:#6ee7b7}.badge-pending{background:#fbbf2433;color:#fbbf24}.badge-failed{background:#ef444433;color:#fca5a5}.badge-refunded{background:#6366f133;color:#a5b4fc}.payment-history-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.empty-icon{font-size:4rem;margin-bottom:20px}.payment-history-empty h2{font-size:1.4rem;margin:0 0 10px}.payment-history-empty p{color:#e2e8f0b3;margin:0 0 24px}.btn-primary{display:inline-block;padding:12px 24px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;text-decoration:none;border-radius:8px;font-weight:600;border:none;cursor:pointer}.btn-secondary{display:inline-block;padding:12px 24px;background:transparent;color:#e2e8f0cc;text-decoration:none;border-radius:8px;font-weight:500;border:1px solid rgba(148,163,184,.35);cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#94a3b81a;border-color:#94a3b880;color:#f1f5f9}.btn-ghost-cancel{display:block;width:100%;padding:11px 16px;background:transparent;color:#e2e8f099;border:1px solid rgba(148,163,184,.2);border-radius:10px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s;letter-spacing:.01em}.btn-ghost-cancel:hover{background:#ef444414;border-color:#ef444459;color:#fca5a5}.packages-toast-error{position:fixed;bottom:28px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:12px;background:#0f172af7;border:1px solid rgba(239,68,68,.5);border-left:4px solid #ef4444;border-radius:12px;padding:14px 18px;min-width:300px;max-width:90vw;box-shadow:0 8px 32px #00000080,0 2px 8px #ef444426;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:9999;animation:toastSlideUp .3s ease}.packages-toast-icon{font-size:1.1rem;flex-shrink:0}.packages-toast-msg{flex:1;font-size:.9rem;color:#f1f5f9;line-height:1.4}.packages-toast-close{background:transparent;border:none;color:#94a3b899;font-size:.85rem;cursor:pointer;padding:2px 4px;border-radius:4px;transition:color .2s;flex-shrink:0}.packages-toast-close:hover{color:#f1f5f9}@keyframes toastSlideUp{0%{opacity:0;transform:translate(-50%) translateY(16px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.btn-retry{padding:10px 20px;background:transparent;color:#6366f1;border:1px solid #6366f1;border-radius:8px;cursor:pointer}.load-more-container{text-align:center;margin-top:24px}.btn-load-more{padding:12px 32px;background:transparent;color:#e2e8f0cc;border:1px solid rgba(148,163,184,.3);border-radius:8px;cursor:pointer;transition:all .2s}.btn-load-more:hover{background:#94a3b81a}.btn-load-more:disabled{opacity:.6;cursor:not-allowed}.payment-history-loading,.payment-history-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px}@media(max-width:600px){.checkout-payment-form .form-row{grid-template-columns:1fr}.transaction-item{flex-direction:column;align-items:flex-start;gap:16px}.transaction-right{align-items:flex-start;width:100%;flex-direction:row;justify-content:space-between}}.tv-page{min-height:150vh;background:linear-gradient(135deg,#0f172a,#1e1b4b,#0f172a);display:flex;align-items:flex-start;justify-content:center;padding:clamp(0px,0vh,0px) clamp(4px,0vw,14px) clamp(0px,0vh,0px);overflow-y:auto}.tv-content{max-width:1000px;width:100%;text-align:center;padding-top:clamp(0px,0vh,2px);padding-bottom:clamp(0px,0vh,0px)}.tv-logo h1{font-size:clamp(2.5rem,5vw,4rem);margin:0;background:linear-gradient(135deg,#6366f1,#a855f7,#6366f1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.tv-subtitle{font-size:1.2rem;color:#e2e8f0b3;margin-top:8px}.tv-connect-section{margin-top:48px;background:#0f172acc;border:1px solid rgba(148,163,184,.2);border-radius:24px;padding:clamp(24px,4vw,44px) clamp(24px,5vw,52px)}.tv-card-header{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:clamp(18px,3vh,32px)}.tv-card-logo{display:flex;align-items:center;gap:14px}.tv-card-logo-icon{font-size:2rem;line-height:1;color:#a855f7}.tv-card-logo-text{display:flex;flex-direction:column;align-items:flex-start}.tv-card-logo-title{font-size:clamp(1.1rem,2.4vw,1.45rem);font-weight:700;color:#a5b4fc;letter-spacing:-.01em}.tv-card-logo-title.brand-logo-text{font-size:1.45rem}.tv-card-logo-subtitle{font-size:.95rem;color:#e2e8f0b3}.tv-connect-section h2{font-size:clamp(1.2rem,2.4vw,1.8rem);margin:0;color:#f8fafc;font-weight:600;letter-spacing:-.02em;text-align:right;max-width:min(520px,60vw)}.tv-connect-methods{display:grid;grid-template-columns:auto 1fr;gap:clamp(20px,4vw,44px);align-items:start;text-align:left}.tv-qr-section{display:flex;flex-direction:column;align-items:center;gap:16px}.tv-qr-wrapper{background:#fff;padding:clamp(10px,2vw,16px);border-radius:16px;box-shadow:0 8px 32px #0000004d}.tv-steps{display:flex;flex-direction:column;gap:clamp(14px,2.5vh,24px)}.tv-step{display:grid;grid-template-columns:auto 1fr;gap:clamp(10px,2vw,18px);align-items:start}.tv-step-number{font-size:clamp(.85rem,1.6vw,1rem);font-weight:700;color:#e2e8f080;letter-spacing:.1em;padding-top:4px;min-width:80px}.tv-step-content h3{margin:0 0 clamp(4px,1vh,8px);font-size:clamp(1.05rem,2.2vw,1.4rem);color:#f8fafc;font-weight:600;letter-spacing:-.01em}.tv-step-url{margin:0;font-size:clamp(.95rem,1.8vw,1.1rem);color:#a5b4fc;font-family:SF Mono,Monaco,monospace}.tv-short-code{display:flex;gap:8px}.tv-code-char{width:clamp(42px,6vw,56px);height:clamp(52px,7vw,68px);background:#6366f126;border:2px solid rgba(99,102,241,.4);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:clamp(1.2rem,2.4vw,1.8rem);font-weight:700;color:#a5b4fc;font-family:SF Mono,Monaco,monospace}.tv-divider{display:flex;align-items:center;color:#94a3b880;font-size:.9rem;text-transform:uppercase}.tv-code-section{display:flex;flex-direction:column;align-items:center;gap:16px}.tv-code-label{color:#e2e8f0b3;font-size:.9rem;margin:0}.tv-qr-label{color:#e2e8f099;font-size:.9rem;margin:0}.tv-code-hint{color:#94a3b899;font-size:.85rem;margin:0}.tv-status-row{display:grid;grid-template-columns:1fr;gap:clamp(20px,4vw,44px);align-items:start}.tv-status-spacer{width:100%}.tv-status-box{background:#0f172a8c;border:1px solid rgba(148,163,184,.18);border-radius:16px;padding:clamp(0px,1.8vh,14px) clamp(0px,2.2vw,18px);display:flex;align-items:center;justify-content:space-between;gap:16px}.tv-countdown{display:flex;align-items:center;justify-content:flex-start;gap:8px;color:#e2e8f0cc;font-size:clamp(.8rem,1.4vw,.95rem)}.tv-countdown-icon{animation:spin 2s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tv-status-wait{display:inline-flex;align-items:center;gap:10px;color:#e2e8f0b3;font-size:clamp(.8rem,1.4vw,.95rem)}.tv-pulse{width:12px;height:12px;background:#22c55e;border-radius:50%;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.tv-loading,.tv-error{display:flex;flex-direction:column;align-items:center;gap:16px;color:#e2e8f0cc}.tv-retry-btn{padding:12px 24px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:8px;cursor:pointer;font-weight:600}.tv-connect-page{min-height:100vh;background:linear-gradient(135deg,#0f172a,#1e1b4b,#0f172a);display:flex;align-items:center;justify-content:center;padding:20px}.tv-connect-content{max-width:480px;width:100%}.tv-connect-header{text-align:center;margin-bottom:32px}.tv-connect-header h1{font-size:1.8rem;margin:0 0 8px}.tv-connect-header p{color:#e2e8f0b3;margin:0}.tv-connect-error{background:#ef444426;border:1px solid rgba(239,68,68,.3);padding:12px 16px;border-radius:8px;color:#fca5a5;margin-bottom:16px;text-align:center}.tv-connect-rooms{display:flex;flex-direction:column;gap:12px}.tv-connect-room-btn{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:#0f172acc;border:1px solid rgba(148,163,184,.2);border-radius:12px;cursor:pointer;transition:all .2s;text-align:left;color:#f8fafc}.tv-connect-room-btn:hover{background:#6366f126;border-color:#6366f166}.tv-connect-room-btn:disabled{opacity:.6;cursor:not-allowed}.tv-connect-room-info h3{margin:0 0 4px;font-size:1.1rem}.tv-connect-room-code{font-size:.85rem;color:#94a3b8b3;font-family:SF Mono,Monaco,monospace}.tv-connect-room-arrow{font-size:1.2rem;color:#94a3b880}.tv-connect-empty{text-align:center;padding:40px 20px;background:#0f172a99;border-radius:12px}.tv-connect-empty p{color:#e2e8f0b3;margin:0 0 20px}.tv-connect-btn-primary{display:inline-block;padding:12px 24px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;text-decoration:none;border-radius:8px;font-weight:600}.tv-connect-footer{margin-top:32px;text-align:center}.tv-connect-back{color:#94a3b8b3;text-decoration:none;font-size:.9rem}.tv-connect-back:hover{color:#a5b4fc}.tv-connect-loading,.tv-connect-success{display:flex;flex-direction:column;align-items:center;gap:16px;text-align:center}.tv-connect-success-icon{font-size:3rem}.tv-connect-success h2{margin:0;color:#86efac}.room-master-tv-card{grid-column:1 / -1}.room-master-tv-connect{display:flex;flex-direction:column;gap:16px}.room-master-tv-form{display:flex;gap:8px;flex-wrap:wrap}.room-master-tv-form button{flex-shrink:0;min-width:fit-content}.room-master-tv-input{flex:1;padding:12px 16px;background:#020617b3;border:1px solid rgba(148,163,184,.2);border-radius:8px;color:#f8fafc;font-size:1.2rem;font-family:SF Mono,Monaco,monospace;text-align:center;letter-spacing:.2em;text-transform:uppercase}.room-master-tv-input::placeholder{font-size:.9rem;letter-spacing:normal;text-transform:none}.room-master-tv-input:focus{outline:none;border-color:#6366f1}.room-master-tv-divider{display:flex;align-items:center;gap:16px;color:#94a3b880;font-size:.85rem}.room-master-tv-divider:before,.room-master-tv-divider:after{content:"";flex:1;height:1px;background:#94a3b833}.room-master-scan-btn{display:flex;align-items:center;justify-content:center;gap:8px}.room-master-scan-icon{font-size:1.1rem}.room-master-tv-success{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#22c55e26;border:1px solid rgba(34,197,94,.3);border-radius:8px;color:#86efac}.room-master-tv-error{display:flex;align-items:center;gap:8px;padding:12px 16px;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:8px;color:#fca5a5}.room-master-scanner{display:flex;flex-direction:column;align-items:center;gap:16px}.room-master-scanner-video{width:100%;max-width:300px;aspect-ratio:1;object-fit:cover;border-radius:12px}.room-master-scanner-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.room-master-scanner-frame{width:200px;height:200px;border:2px solid rgba(99,102,241,.8);border-radius:16px}.tv-page{height:auto;overflow:visible}.tv-content{max-height:none;overflow:visible;display:block}.tv-connect-section{max-height:none;overflow:visible}.tv-qr-wrapper canvas{width:min(280px,45vw);height:auto}.search-form{display:flex;align-items:center;gap:12px}.search-input{flex:1;min-width:0}.search-btn{min-width:48px;padding:12px 16px;flex:0 0 auto}.stripe-payment-form{display:flex;flex-direction:column;gap:16px}.checkout-pay-btn{margin-top:12px}@media(max-width:768px){.dashboard-menu-btn{display:inline-flex}.dashboard-user-items{position:absolute;top:calc(100% + 8px);right:0;display:none;flex-direction:column;align-items:stretch;gap:2px;padding:8px;background:#0f172afa;border:1px solid rgba(148,163,184,.25);border-radius:12px;min-width:200px;box-shadow:0 8px 24px #0006,0 2px 8px #0003;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:1000}.dashboard-user-items.open{display:flex}.dashboard-admin-link{text-decoration:none;color:#e2e8f0;padding:10px 14px;border-radius:8px;transition:background .2s ease;display:block}.dashboard-admin-link:hover{background:#6366f126}.dashboard-username{width:100%;padding:10px 14px;font-weight:500;color:#a5b4fc;border-bottom:1px solid rgba(148,163,184,.15);margin-bottom:4px}.dashboard-logout,.dashboard-login{width:100%;text-align:left;padding:10px 14px;border-radius:8px;background:transparent;transition:background .2s ease}.dashboard-logout:hover,.dashboard-login:hover{background:#6366f126}.admin-user-menu-btn{display:inline-flex}.admin-header-user-items{position:absolute;top:calc(100% + 8px);right:0;display:none;flex-direction:column;align-items:stretch;gap:2px;padding:8px;background:#0f172afa;border:1px solid rgba(148,163,184,.25);border-radius:12px;min-width:200px;box-shadow:0 8px 24px #0006,0 2px 8px #0003;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);z-index:1000}.admin-header-user-items.open{display:flex}.admin-user-name{width:100%;text-align:left;padding:10px 14px;font-weight:500;color:#a5b4fc;border-bottom:1px solid rgba(148,163,184,.15);margin-bottom:4px}.admin-logout-btn{width:100%;text-align:left;padding:10px 14px;border-radius:8px;background:transparent;transition:background .2s ease}.admin-logout-btn:hover{background:#ef444433}}@media(max-width:600px){.tv-page{padding:16px}.tv-connect-section{padding:30px 20px}.tv-connect-section h2{font-size:1.25rem;margin:0;text-align:center;max-width:none}.tv-card-header{flex-direction:column;gap:12px;margin-bottom:28px}.tv-card-logo-text{align-items:center}.tv-connect-methods{grid-template-columns:1fr;gap:40px;text-align:center}.tv-qr-wrapper{padding:12px}.tv-qr-wrapper canvas{width:220px!important;height:220px!important}.tv-steps{gap:28px}.tv-step{grid-template-columns:1fr;gap:8px;text-align:center}.tv-step-number{font-size:.85rem;min-width:auto}.tv-step-content h3{font-size:1.15rem}.tv-step-url{font-size:.95rem;word-break:break-all}.tv-code-char{width:48px;height:58px;font-size:1.5rem}.tv-short-code{justify-content:center}.tv-status-row{grid-template-columns:1fr;gap:16px;margin-top:22px}.tv-status-spacer{display:none}.tv-status-box{flex-direction:column;align-items:center;gap:8px;text-align:center}.tv-divider{width:100%}.tv-divider:before,.tv-divider:after{content:"";flex:1;height:1px;background:#94a3b833}.tv-code-char{width:48px;height:56px;font-size:1.5rem}.search-form{gap:8px}.search-btn{min-width:44px;padding:10px 12px}}.legal-page{min-height:100vh;background:#0b0d12;color:#f8fafc;display:flex;flex-direction:column}.legal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;background:#0f172ad9;border-bottom:1px solid rgba(148,163,184,.15);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:sticky;top:0;z-index:10}.legal-brand{display:flex;align-items:center;gap:12px}.legal-back{color:#94a3b8;text-decoration:none;font-size:1.4rem;line-height:1;padding:4px 8px;border-radius:8px;transition:background .2s,color .2s}.legal-back:hover{background:#94a3b826;color:#f8fafc}.legal-logo{font-size:1.5rem}.legal-title{font-size:1.2rem;font-weight:700;background:linear-gradient(135deg,#6366f1,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.legal-main{max-width:800px;width:100%;margin:0 auto;padding:40px 24px 80px}.legal-main h1{font-size:clamp(1.8rem,4vw,2.4rem);font-weight:800;margin:0 0 8px;background:linear-gradient(135deg,#f8fafc,#cbd5e1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.legal-updated{color:#64748b;font-size:.9rem;margin:0 0 32px}.legal-section{margin-bottom:32px}.legal-section h2{font-size:1.2rem;font-weight:700;color:#e2e8f0;margin:0 0 12px}.legal-section p{color:#94a3b8;line-height:1.7;margin:0 0 12px}.legal-section ul{color:#94a3b8;line-height:1.7;padding-left:24px;margin:0 0 12px}.legal-section ul li{margin-bottom:8px}.legal-section a{color:#818cf8;text-decoration:none}.legal-section a:hover{text-decoration:underline}.legal-contact{margin-top:48px;padding-top:32px;border-top:1px solid rgba(148,163,184,.15)}.legal-contact h2{font-size:1.2rem;font-weight:700;color:#e2e8f0;margin:0 0 12px}.legal-contact p{color:#94a3b8;line-height:1.7;margin:0 0 8px}.legal-contact a{color:#818cf8;text-decoration:none}.legal-contact a:hover{text-decoration:underline}.legal-address{font-size:.9rem;color:#64748b!important;margin-top:8px!important}.faq-list{display:flex;flex-direction:column;gap:12px;margin-top:24px}.faq-item{background:#0f172a99;border:1px solid rgba(148,163,184,.12);border-radius:12px;overflow:hidden;transition:border-color .2s}.faq-item[open]{border-color:#6366f159}.faq-question{padding:16px 20px;font-weight:600;color:#e2e8f0;cursor:pointer;list-style:none;display:flex;align-items:center;gap:12px;transition:background .2s}.faq-question::-webkit-details-marker{display:none}.faq-question:before{content:"▸";font-size:.9rem;color:#6366f1;transition:transform .2s;flex-shrink:0}.faq-item[open] .faq-question:before{transform:rotate(90deg)}.faq-question:hover{background:#94a3b80f}.faq-answer{padding:0 20px 16px;color:#94a3b8;line-height:1.7;margin:0}.site-footer{background:#0f172ad9;border-top:1px solid rgba(148,163,184,.12);padding:40px 24px;margin-top:auto}.site-footer-content{max-width:960px;margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center}.site-footer-brand{display:flex;align-items:center;gap:8px}.site-footer-logo{font-size:1.4rem}.site-footer-name{font-size:1.1rem;font-weight:700;background:linear-gradient(135deg,#6366f1,#a78bfa);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.site-footer-links{display:flex;gap:24px;flex-wrap:wrap;justify-content:center}.site-footer-links a{color:#94a3b8;text-decoration:none;font-size:.9rem;transition:color .2s}.site-footer-links a:hover{color:#818cf8}.site-footer-contact p{color:#64748b;font-size:.85rem;margin:0 0 4px;line-height:1.5}.site-footer-contact a{color:#818cf8;text-decoration:none}.site-footer-contact a:hover{text-decoration:underline}.site-footer-copy p{color:#475569;font-size:.8rem;margin:0}@media(max-width:600px){.legal-main{padding:24px 16px 60px}.legal-main h1{font-size:1.5rem}.faq-question{padding:14px 16px;font-size:.95rem}.faq-answer{padding:0 16px 14px;font-size:.9rem}.site-footer-links{gap:16px}}.credits-hero{text-align:center;padding:32px 0 40px;display:flex;flex-direction:column;align-items:center;gap:8px}.credits-icon{font-size:3rem;line-height:1;display:block;margin-bottom:4px}.credits-hero h1{text-align:center;margin:0}.credits-tagline{color:#94a3b8;font-size:1.05rem;margin:0}.credits-version{display:inline-block;margin-top:4px;padding:4px 14px;font-size:.8rem;font-weight:600;color:#a78bfa;background:#a78bfa1a;border:1px solid rgba(167,139,250,.2);border-radius:20px;letter-spacing:.03em}.credits-section{margin-bottom:36px}.credits-section h2{font-size:.85rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:#64748b;margin:0 0 16px}.credits-card{display:flex;align-items:center;gap:16px;background:#0f172a99;border:1px solid rgba(148,163,184,.12);border-radius:14px;padding:20px}.credits-avatar{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#a78bfa);display:grid;place-items:center;font-size:1.3rem;font-weight:700;color:#fff;flex-shrink:0}.credits-info{display:flex;flex-direction:column;gap:2px}.credits-name{font-size:1.1rem;font-weight:700;color:#f8fafc;margin:0}.credits-email{color:#818cf8;text-decoration:none;font-size:.9rem}.credits-email:hover{text-decoration:underline}.credits-tech-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.credits-tech{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#0f172a99;border:1px solid rgba(148,163,184,.1);border-radius:10px;color:#cbd5e1;font-size:.9rem}.credits-tech-icon{font-size:1.1rem;flex-shrink:0}.credits-contact-list p{color:#94a3b8;margin:0 0 8px;line-height:1.6}.credits-contact-list a{color:#818cf8;text-decoration:none}.credits-contact-list a:hover{text-decoration:underline}.credits-footer{margin-top:48px;padding-top:24px;border-top:1px solid rgba(148,163,184,.12);text-align:center}.credits-footer p{color:#475569;font-size:.85rem;margin:0 0 12px}.credits-links{display:flex;justify-content:center;gap:20px}.credits-links a{color:#64748b;text-decoration:none;font-size:.85rem;transition:color .2s}.credits-links a:hover{color:#818cf8}@media(max-width:600px){.credits-tech-grid{grid-template-columns:repeat(2,1fr)}}.apm-page{max-width:800px}.apm-header{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:20px}.apm-title{font-size:1.4rem;font-weight:700;color:#f1f5f9;margin:0 0 6px}.apm-subtitle{font-size:.875rem;color:#94a3b8cc;margin:0;line-height:1.5}.apm-badge-count{display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:72px;padding:12px 16px;background:#6366f11f;border:1px solid rgba(99,102,241,.3);border-radius:12px;flex-shrink:0}.apm-badge-num{font-size:1.8rem;font-weight:800;color:#818cf8;line-height:1}.apm-badge-label{font-size:.7rem;color:#94a3b8b3;margin-top:4px;white-space:nowrap}.apm-notice{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;background:#f59e0b14;border:1px solid rgba(245,158,11,.25);border-radius:10px;font-size:.82rem;color:#fde68ad9;line-height:1.5;margin-bottom:24px}.apm-notice a{color:#fbbf24;text-decoration:underline}.apm-notice-icon{flex-shrink:0;margin-top:1px}.apm-error{padding:12px 16px;background:#ef44441a;border:1px solid rgba(239,68,68,.3);border-radius:10px;color:#fca5a5;font-size:.875rem;margin-bottom:20px}.apm-loading{display:flex;justify-content:center;padding:60px 0}.apm-groups{display:flex;flex-direction:column;gap:16px}.apm-group{background:#0f172a99;border:1px solid rgba(148,163,184,.12);border-radius:14px;overflow:hidden}.apm-group-header{display:flex;align-items:center;gap:14px;padding:16px 20px;background:#1e293b99;border-bottom:1px solid rgba(148,163,184,.1)}.apm-group-icon{font-size:1.4rem;flex-shrink:0}.apm-group-info{flex:1;min-width:0}.apm-group-title{font-size:.95rem;font-weight:700;color:#e2e8f0;margin:0 0 3px}.apm-group-desc{font-size:.75rem;color:#94a3b8b3;margin:0;line-height:1.4}.apm-group-count{font-size:.78rem;font-weight:600;color:#94a3b8;background:#94a3b81a;padding:3px 10px;border-radius:20px;flex-shrink:0}.apm-method-list{display:flex;flex-direction:column}.apm-method-row{display:flex;align-items:center;gap:14px;padding:14px 20px;border-bottom:1px solid rgba(148,163,184,.07);transition:background .15s}.apm-method-row:last-child{border-bottom:none}.apm-method-row:hover{background:#94a3b80a}.apm-method-row.apm-disabled{opacity:.55}.apm-method-icon{font-size:1.3rem;flex-shrink:0;width:28px;text-align:center}.apm-method-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.apm-method-label{font-size:.9rem;font-weight:600;color:#e2e8f0}.apm-method-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.apm-method-id{font-family:monospace;font-size:.72rem;color:#94a3b8;background:#94a3b81a;padding:1px 6px;border-radius:4px}.apm-method-fee{font-size:.75rem;color:#a5b4fc}.apm-method-min{font-size:.72rem;color:#94a3b899}.apm-method-status{flex-shrink:0}.apm-status-pill{font-size:.72rem;font-weight:600;padding:3px 10px;border-radius:20px;letter-spacing:.03em;text-transform:uppercase}.apm-status-pill.on{background:#22c55e1f;color:#86efac;border:1px solid rgba(34,197,94,.25)}.apm-status-pill.off{background:#64748b1f;color:#94a3b8;border:1px solid rgba(100,116,139,.2)}.apm-toggle{position:relative;display:inline-flex;align-items:center;cursor:pointer;flex-shrink:0}.apm-toggle input[type=checkbox]{position:absolute;opacity:0;width:0;height:0}.apm-toggle-track{display:block;width:46px;height:26px;background:#64748b59;border-radius:99px;border:1.5px solid rgba(100,116,139,.3);position:relative;transition:background .25s,border-color .25s}.apm-toggle input:checked~.apm-toggle-track{background:#6366f1b3;border-color:#6366f199}.apm-toggle-thumb{position:absolute;top:3px;left:3px;width:18px;height:18px;background:#f1f5f9;border-radius:50%;box-shadow:0 1px 4px #00000059;transition:transform .25s cubic-bezier(.34,1.56,.64,1)}.apm-toggle input:checked~.apm-toggle-track .apm-toggle-thumb{transform:translate(20px)}.apm-toggle-busy{opacity:.5;pointer-events:none}.apm-toggle:hover .apm-toggle-track{border-color:#94a3b880}.apm-toggle input:checked:hover~.apm-toggle-track{background:#6366f1d9}.apm-toast{position:fixed;bottom:28px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:13px 20px;border-radius:12px;font-size:.875rem;font-weight:500;color:#f1f5f9;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);box-shadow:0 8px 32px #0006;z-index:9999;animation:toastSlideUp .3s ease;white-space:nowrap}.apm-toast-success{background:#0f172af7;border:1px solid rgba(34,197,94,.4);border-left:4px solid #22c55e}.apm-toast-warning{background:#0f172af7;border:1px solid rgba(245,158,11,.4);border-left:4px solid #f59e0b}.apm-toast-error{background:#0f172af7;border:1px solid rgba(239,68,68,.4);border-left:4px solid #ef4444}@media(max-width:600px){.apm-header{flex-direction:column;gap:16px}.apm-badge-count{flex-direction:row;gap:8px;align-self:flex-start}.apm-method-row{flex-wrap:wrap;gap:10px}.apm-method-status{order:3}.apm-toggle{order:4;margin-left:auto}.apm-method-meta{gap:6px}}.dashboard-avatar-btn{width:38px;height:38px;border-radius:50%;border:1px solid rgba(129,140,248,.45);background:linear-gradient(135deg,#6366f159,#a855f759);color:#eef2ff;font-size:.9rem;font-weight:700;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.dashboard-avatar-btn:hover{transform:translateY(-1px);border-color:#a5b4fccc;box-shadow:0 8px 18px #4f46e559}.profile-sidebar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#020617b8;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);opacity:0;pointer-events:none;transition:opacity .24s ease;z-index:1200}.profile-sidebar-overlay.open{opacity:1;pointer-events:auto}.profile-sidebar-panel{position:absolute;top:0;right:0;width:min(92vw,370px);height:100%;background:linear-gradient(180deg,#0f172afa,#0a0f1afa);border-left:1px solid rgba(148,163,184,.2);box-shadow:-24px 0 60px #02061799;transform:translate(100%);transition:transform .28s cubic-bezier(.22,1,.36,1);display:flex;flex-direction:column;padding:20px;gap:20px}.profile-sidebar-panel.open{transform:translate(0)}.profile-sidebar-close{width:34px;height:34px;border-radius:9px;border:1px solid rgba(148,163,184,.28);background:#0f172abf;color:#cbd5e1;font-size:1.2rem;cursor:pointer;margin-left:auto}.profile-sidebar-user{display:flex;align-items:center;gap:12px;padding:14px;border-radius:14px;background:#1e293b73;border:1px solid rgba(148,163,184,.16)}.profile-sidebar-avatar{width:52px;height:52px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#6366f1f2,#a855f7f2);color:#eef2ff;font-weight:700;border:2px solid rgba(165,180,252,.35)}.profile-sidebar-meta{min-width:0}.profile-sidebar-meta h3{font-size:1rem;color:#f8fafc;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-sidebar-meta p{margin:0;font-size:.82rem;color:#94a3b8f2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.profile-sidebar-subscription{border-radius:14px;background:#0f172abf;border:1px solid rgba(148,163,184,.16);padding:14px}.profile-subscription-badge{display:inline-flex;align-items:center;font-size:.78rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:#ddd6fe;border:1px solid rgba(167,139,250,.45);background:#6d28d947;border-radius:999px;padding:6px 10px}.profile-sidebar-subscription p{margin:10px 0 0;color:#94a3b8f2;font-size:.84rem}.profile-sidebar-actions{display:flex;flex-direction:column;gap:10px}.profile-sidebar-link,.profile-sidebar-cta{text-decoration:none;border-radius:12px;padding:12px 14px;transition:background .2s ease,border-color .2s ease;font-size:.92rem}.profile-sidebar-link{color:#cbd5e1;border:1px solid rgba(148,163,184,.22);background:#0f172ab3}.profile-sidebar-link:hover{background:#1e293be6}.profile-sidebar-cta{color:#eef2ff;text-align:center;font-weight:600;border:1px solid rgba(129,140,248,.45);background:linear-gradient(135deg,#6366f1db,#a855f7db)}.profile-sidebar-cta:hover{border-color:#a5b4fcf2}.profile-page{min-height:100vh;background:#0a0c10;color:#f8fafc;display:flex;flex-direction:column}.profile-back-link{width:34px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none;color:#cbd5e1;border:1px solid rgba(148,163,184,.25);background:#0f172aa6}.profile-main{flex:1;width:100%;max-width:1060px;margin:0 auto;padding:32px 24px 72px}.profile-hero h1{margin:0 0 10px;font-size:clamp(1.7rem,3.8vw,2.3rem);letter-spacing:-.02em}.profile-hero p{margin:0;color:#94a3b8f2;max-width:680px}.profile-grid{margin-top:24px;display:grid;grid-template-columns:1fr;gap:16px}.profile-card{background:#0f172aa6;border:1px solid rgba(148,163,184,.16);border-radius:18px;padding:22px}.profile-card h2{margin:0 0 16px;font-size:1.04rem;color:#eef2ff;letter-spacing:.02em}.profile-avatar-row{display:flex;align-items:center;gap:14px;margin-bottom:18px}.profile-avatar{width:58px;height:58px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;border:2px solid rgba(165,180,252,.45);background:linear-gradient(135deg,#6366f1f2,#a855f7f2);font-size:1.02rem;font-weight:700}.profile-avatar-meta{min-width:0}.profile-nickname{font-size:1rem;font-weight:600;color:#f8fafc}.profile-email{font-size:.84rem;color:#94a3b8f2;margin-top:2px}.profile-field-row{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.profile-label{font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;color:#94a3b8d9}.profile-input-readonly{opacity:.85;cursor:not-allowed}.profile-inline-display{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#e2e8f0;background:#0f172a73;border:1px solid rgba(148,163,184,.15);border-radius:12px;padding:11px 14px}.profile-inline-edit{display:flex;flex-direction:column;gap:10px}.profile-inline-actions{display:flex;flex-wrap:wrap;gap:8px}.profile-inline-message{color:#cbd5e1;font-size:.85rem;margin-top:2px}.profile-btn{border:1px solid transparent;border-radius:10px;padding:10px 14px;font-size:.88rem;font-weight:600;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;text-decoration:none;display:inline-flex;align-items:center;justify-content:center}.profile-btn:disabled{opacity:.65;cursor:not-allowed}.profile-btn-primary{color:#eef2ff;border-color:#818cf873;background:linear-gradient(135deg,#6366f1f2,#a855f7f2)}.profile-btn-primary:hover:not(:disabled){transform:translateY(-1px)}.profile-btn-secondary{color:#cbd5e1;border-color:#94a3b847;background:#0f172abf}.profile-btn-secondary:hover:not(:disabled){background:#1e293be6}.profile-btn-danger{color:#fecaca;border-color:#f8717166;background:#7f1d1d3d}.profile-btn-danger:hover:not(:disabled){background:#7f1d1d5c}.profile-security-form{display:flex;flex-direction:column;gap:2px}.profile-subscription-card{border-radius:14px;border:1px solid rgba(129,140,248,.35);background:linear-gradient(145deg,#312e8142,#581c873d);padding:16px}.profile-subscription-header{margin-bottom:10px}.profile-subscription-chip{display:inline-flex;border-radius:999px;background:#8b5cf633;border:1px solid rgba(167,139,250,.4);color:#e9d5ff;font-size:.73rem;text-transform:uppercase;letter-spacing:.06em;font-weight:700;padding:6px 10px}.profile-subscription-header h3{margin:10px 0 0;font-size:1.2rem}.profile-subscription-card p{margin:0;color:#e2e8f0e6;font-size:.92rem}.profile-upgrade-btn{margin-top:14px}.profile-danger-zone{border-color:#f8717147}.profile-danger-zone p{margin:0 0 12px;color:#94a3b8f2;font-size:.9rem}.profile-alert{margin-top:14px;border-radius:10px;padding:11px 13px;font-size:.9rem}.profile-alert-error{border:1px solid rgba(248,113,113,.35);color:#fecaca;background:#7f1d1d42}.profile-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1300;display:flex;align-items:center;justify-content:center;padding:18px;background:#020617b8}.profile-modal-card{width:min(100%,460px);border-radius:16px;background:#0f172afa;border:1px solid rgba(148,163,184,.2);box-shadow:0 20px 50px #02061799;padding:22px}.profile-modal-card h3{margin:0 0 10px;font-size:1.15rem;color:#f8fafc}.profile-modal-card p{margin:0;color:#94a3b8f2;font-size:.92rem;line-height:1.55}.profile-modal-actions{margin-top:18px;display:flex;justify-content:flex-end;gap:10px}@media(min-width:900px){.profile-grid{grid-template-columns:1fr 1fr}.profile-card:first-child{grid-column:span 2}}@media(max-width:768px){.dashboard-user{gap:10px}.dashboard-avatar-btn{width:34px;height:34px;font-size:.82rem}.profile-main{padding:24px 16px 56px}.profile-card{padding:18px}.profile-modal-actions{flex-direction:column-reverse}.profile-modal-actions .profile-btn{width:100%}}.admin-access-form{margin-top:16px;display:flex;flex-wrap:wrap;gap:8px;align-items:stretch}.admin-access-dropdown{position:relative;flex:1;min-width:0}.admin-access-form .admin-access-dropdown,.admin-access-form .admin-btn{display:flex}.admin-card.admin-card-spaced{margin-bottom:20px}.admin-access-empty{color:#e2e8f0;margin:0}@media(max-width:500px){.admin-access-form{display:block}.admin-access-form .admin-access-dropdown,.admin-access-form .admin-btn{width:100%;height:40px}.admin-access-form .admin-btn{margin-top:8px}}:root{--primary-gradient: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);--primary-from: #6366f1;--primary-to: #8b5cf6;--secondary-gradient: linear-gradient(135deg, #ec4899 0%, #f43f5e 100%);--bg-dark: #0a0c10;--bg-darker: #0b0d12;--text-primary: #f8fafc;--text-secondary: rgba(226, 232, 240, .7);--text-tertiary: rgba(148, 163, 184, .8);--border-light: rgba(148, 163, 184, .2);--border-lighter: rgba(148, 163, 184, .15);--glass-bg: rgba(15, 23, 42, .7);--glass-bg-lighter: rgba(15, 23, 42, .4);--shadow-sm: 0 4px 16px rgba(0, 0, 0, .2);--shadow-md: 0 12px 32px rgba(0, 0, 0, .3);--shadow-lg: 0 24px 48px rgba(0, 0, 0, .4);--shadow-xl: 0 32px 64px rgba(0, 0, 0, .5)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Lexend,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg-dark);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media(prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.landing-glass{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--border-light);box-shadow:var(--shadow-md);border-radius:20px}@keyframes float{0%,to{transform:translate(0) scale(1)}50%{transform:translate(30px,-30px) scale(1.1)}}@keyframes float-reverse{0%,to{transform:translate(0) scale(1)}50%{transform:translate(-40px,40px) scale(.9)}}@keyframes pulse-glow{0%,to{opacity:.5}50%{opacity:.8}}.landing-page{min-height:100vh;width:100%;background:var(--bg-dark);color:var(--text-primary);position:relative;overflow-x:hidden}.landing-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:0;pointer-events:none;overflow:hidden}.landing-orb{position:absolute;border-radius:50%;filter:blur(80px);opacity:.3;animation:float 20s ease-in-out infinite}.landing-orb-1{width:400px;height:400px;background:linear-gradient(135deg,#6366f1,#8b5cf6);top:-100px;left:-100px;animation:float 25s ease-in-out infinite}.landing-orb-2{width:300px;height:300px;background:linear-gradient(135deg,#ec4899,#f43f5e);top:40%;right:-50px;animation:float-reverse 30s ease-in-out infinite}.landing-orb-3{width:350px;height:350px;background:linear-gradient(135deg,#06b6d4,#0891b2);bottom:10%;left:5%;animation:float 28s ease-in-out infinite}.landing-orb-4{width:280px;height:280px;background:linear-gradient(135deg,#f59e0b,#ee7752);bottom:20%;right:10%;animation:float-reverse 26s ease-in-out infinite}.landing-header{position:fixed;width:100%;top:0;left:0;z-index:100;background:#0a0c10b3;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border-lighter);box-shadow:var(--shadow-sm);transition:all .3s ease}.landing-header-container{max-width:1400px;margin:0 auto;padding:18px 32px;display:flex;align-items:center;justify-content:space-between;gap:40px}.landing-logo{display:flex;align-items:center;gap:12px;font-size:1.25rem;font-weight:700;color:var(--text-primary);text-decoration:none;transition:all .3s ease}.landing-logo:hover{opacity:.8}.landing-logo-icon{width:40px;height:40px;background:var(--primary-gradient);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 4px 12px #6366f14d}.landing-logo-text{background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.01em}.landing-nav{margin-left:auto}.landing-nav-items{display:flex;align-items:center;gap:24px}.landing-nav-link{font-size:.95rem;font-weight:500;color:var(--text-secondary);text-decoration:none;transition:all .3s ease;padding:8px 14px;border-radius:8px}.landing-nav-link:hover{color:var(--text-primary);background:#6366f11a}.landing-nav-register{background:var(--primary-gradient);color:#fff;padding:10px 20px;border-radius:10px;-webkit-text-fill-color:unset}.landing-nav-register:hover{opacity:.9;background:var(--primary-gradient)}.landing-nav-user{font-size:.9rem;color:var(--text-tertiary);padding:10px 16px;background:#6366f11a;border-radius:10px}@media(max-width:768px){.landing-header-container{padding:16px 20px;gap:20px}.landing-nav-items{gap:12px}.landing-nav-link{padding:6px 10px;font-size:.85rem}}.landing-hero{position:relative;z-index:1;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:80px 32px 60px;background:radial-gradient(circle at 50% 50%,rgba(99,102,241,.08) 0%,transparent 70%)}.landing-hero-container{max-width:1200px;width:100%;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center}.landing-hero-content{display:flex;flex-direction:column;gap:24px}.landing-hero-title{font-size:clamp(2.2rem,4.5vw,3.6rem);font-weight:800;line-height:1.2;letter-spacing:-.02em;color:var(--text-primary)}.landing-highlight{background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-hero-subtitle{font-size:1rem;color:var(--text-secondary);line-height:1.7;max-width:480px}.landing-hero-actions{display:flex;gap:16px;flex-wrap:wrap}.landing-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:12px 28px;font-size:.95rem;font-weight:600;border:none;border-radius:12px;cursor:pointer;transition:all .3s ease;text-decoration:none;white-space:nowrap;font-family:inherit;letter-spacing:.01em}.landing-btn:disabled{opacity:.6;cursor:not-allowed}.landing-btn-primary{background:var(--primary-gradient);color:#fff;box-shadow:0 12px 24px #6366f14d}.landing-btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 16px 32px #6366f166}.landing-btn-secondary{background:#6366f133;color:var(--text-primary);border:1px solid var(--border-light);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.landing-btn-secondary:hover:not(:disabled){background:#6366f14d;border-color:var(--primary-from);transform:translateY(-2px)}.landing-btn-outline{background:transparent;color:var(--text-primary);border:2px solid var(--border-light);transition:all .3s ease}.landing-btn-outline:hover:not(:disabled){border-color:var(--primary-from);background:#6366f11a;transform:translateY(-2px)}.landing-btn-full{width:100%}.landing-btn-arrow{transition:transform .3s ease;display:inline-block}.landing-btn:hover:not(:disabled) .landing-btn-arrow{transform:translate(4px)}.landing-hero-visual{display:flex;align-items:center;justify-content:center;width:100%}.landing-join-card-hero{width:100%;max-width:480px;padding:38px 30px;text-align:left}@media(max-width:1024px){.landing-hero-container{grid-template-columns:1fr;gap:40px}.landing-join-card-hero{max-width:620px}}@media(max-width:768px){.landing-hero{padding:80px 20px 60px;min-height:auto}.landing-hero-title{font-size:2rem}.landing-hero-subtitle{font-size:1rem}.landing-btn{padding:12px 24px;font-size:.95rem}.landing-join-card-hero{padding:30px 24px}}.landing-features{position:relative;z-index:1;padding:120px 32px;background:linear-gradient(180deg,transparent 0%,rgba(99,102,241,.05) 100%)}.landing-features-container{max-width:1400px;margin:0 auto}.landing-section-title{font-size:clamp(2rem,4vw,3rem);font-weight:800;letter-spacing:-.02em;text-align:center;margin-bottom:12px;color:var(--text-primary)}.landing-section-subtitle{font-size:1.1rem;color:var(--text-secondary);text-align:center;margin-bottom:60px;max-width:600px;margin-left:auto;margin-right:auto}.landing-features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:24px;margin-bottom:80px}.landing-feature-card{padding:32px;border-radius:20px;display:flex;flex-direction:column;gap:16px;transition:all .3s ease;cursor:pointer}.landing-feature-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg);background:#0f172acc}.landing-feature-icon{font-size:2.5rem;line-height:1;display:inline-block}.landing-feature-card h3{font-size:1.2rem;font-weight:700;color:var(--text-primary)}.landing-feature-card p{font-size:.95rem;color:var(--text-secondary);line-height:1.6}@media(max-width:768px){.landing-features{padding:80px 20px}.landing-features-grid{grid-template-columns:1fr;gap:16px}.landing-feature-card{padding:24px}}.landing-pricing{position:relative;z-index:1;padding:120px 32px;background:linear-gradient(180deg,rgba(99,102,241,.05) 0%,transparent 100%)}.landing-pricing-container{max-width:1400px;margin:0 auto}.landing-pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:32px;margin-top:60px}.landing-pricing-state{margin-top:60px;padding:28px;border:1px solid var(--border-light);border-radius:16px;text-align:center;color:var(--text-secondary);background:#0f172a80}.landing-pricing-error{color:#fca5a5;border-color:#ef44444d;background:#7f1d1d33}.landing-pricing-card{padding:40px 32px;border-radius:20px;display:flex;flex-direction:column;gap:24px;position:relative;transition:all .3s ease}.landing-pricing-card:hover{transform:translateY(-8px);box-shadow:var(--shadow-lg)}.landing-pricing-featured{transform:scale(1.05);border:2px solid var(--primary-from);background:linear-gradient(135deg,#6366f133,#8b5cf633);box-shadow:0 24px 48px #6366f140}.landing-pricing-featured:hover{transform:scale(1.05) translateY(-8px)}.landing-pricing-badge{display:inline-block;padding:6px 14px;background:#6366f133;border:1px solid var(--border-light);border-radius:8px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-primary);width:fit-content}.landing-badge-featured{background:var(--primary-gradient);border-color:var(--primary-from);color:#fff}.landing-pricing-card h3{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.landing-pricing-amount{display:flex;align-items:baseline;gap:8px}.landing-price{font-size:3rem;font-weight:800;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-period{font-size:.95rem;color:var(--text-secondary)}.landing-pricing-features{list-style:none;display:flex;flex-direction:column;gap:16px;flex:1}.landing-pricing-features li{display:flex;align-items:center;gap:12px;font-size:.95rem;color:var(--text-secondary)}.landing-check-icon{flex-shrink:0;width:20px;height:20px;background:linear-gradient(135deg,#10b981,#059669);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.75rem;color:#fff}@media(max-width:1024px){.landing-pricing-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.landing-pricing-featured{transform:scale(1)}.landing-pricing-featured:hover{transform:translateY(-8px)}}@media(max-width:768px){.landing-pricing{padding:80px 20px}.landing-pricing-grid{grid-template-columns:1fr;gap:24px}.landing-pricing-card{padding:32px 24px}.landing-price{font-size:2.5rem}}.landing-join-card{padding:48px 40px;border-radius:24px;display:flex;flex-direction:column;gap:24px}.landing-join-title{font-size:2rem;font-weight:800;color:var(--text-primary);letter-spacing:-.01em}.landing-join-subtitle{font-size:1.1rem;color:var(--text-secondary)}.landing-join-form{display:flex;flex-direction:column;gap:16px}.landing-form-group{display:flex;gap:12px;width:100%}.landing-input{flex:1;padding:14px 18px;background:#0f172a99;border:1px solid var(--border-light);border-radius:12px;color:var(--text-primary);font-size:1rem;font-family:inherit;transition:all .3s ease;outline:none}.landing-input::placeholder{color:#94a3b880}.landing-input:focus{border-color:var(--primary-from);background:#0f172acc;box-shadow:0 0 0 3px #6366f11a}.landing-textarea{resize:vertical;min-height:120px}.landing-join-hint{font-size:.9rem;color:var(--text-secondary);margin-top:8px}.landing-error{background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#fca5a5;padding:12px 16px;border-radius:12px;font-size:.9rem;text-align:center}.landing-success{background:#10b98126;border:1px solid rgba(16,185,129,.3);color:#86efac;padding:12px 16px;border-radius:12px;font-size:.9rem;text-align:center}.landing-spinner{display:inline-block;width:18px;height:18px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:768px){.landing-join-card{padding:32px 24px}.landing-join-title{font-size:1.5rem}.landing-form-group{flex-direction:column}.landing-btn{width:100%}}.landing-contact{position:relative;z-index:1;padding:120px 32px;background:linear-gradient(180deg,transparent 0%,rgba(99,102,241,.05) 100%)}.landing-contact-container{max-width:1400px;margin:0 auto}.landing-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}.landing-contact-form-wrapper{padding:48px;border-radius:20px;display:flex;flex-direction:column;gap:24px}.landing-contact-title{font-size:1.75rem;font-weight:700;color:var(--text-primary)}.landing-contact-subtitle{font-size:.95rem;color:var(--text-secondary)}.landing-contact-form{display:flex;flex-direction:column;gap:20px}.landing-contact-form .landing-form-group{flex-direction:column;gap:8px}.landing-contact-form label{font-size:.9rem;font-weight:500;color:var(--text-secondary);letter-spacing:.01em}.landing-contact-info{padding:48px;border-radius:20px;display:flex;flex-direction:column;gap:32px}.landing-contact-info h3{font-size:1.5rem;font-weight:700;color:var(--text-primary)}.landing-contact-block{display:flex;gap:16px}.landing-contact-icon{font-size:1.5rem;min-width:32px;text-align:center}.landing-contact-label{font-size:.85rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-tertiary);margin-bottom:4px}.landing-contact-link{color:var(--primary-from);text-decoration:none;transition:all .3s ease;font-weight:500;font-size:.95rem}.landing-contact-link:hover{color:var(--primary-to);text-decoration:underline}.landing-contact-text{font-size:.95rem;color:var(--text-secondary)}.landing-text-muted{color:#94a3b899;font-size:.85rem;margin-top:4px}.landing-social-links{display:flex;gap:12px;flex-wrap:wrap}.landing-social-link{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;background:#6366f133;border:1px solid var(--border-light);border-radius:10px;color:var(--text-primary);text-decoration:none;transition:all .3s ease;font-weight:600;font-size:.85rem}.landing-social-link:hover{background:#6366f166;border-color:var(--primary-from);transform:translateY(-2px)}.landing-divider{height:1px;background:var(--border-lighter);margin:16px 0}.landing-contact-links{display:flex;flex-direction:column;gap:12px}.landing-footer-link{font-size:.9rem;color:var(--text-secondary);text-decoration:none;transition:all .3s ease}.landing-footer-link:hover{color:var(--primary-from);padding-left:4px}@media(max-width:1024px){.landing-contact-grid{grid-template-columns:1fr}}@media(max-width:768px){.landing-contact{padding:80px 20px}.landing-contact-form-wrapper,.landing-contact-info{padding:32px 24px}.landing-contact-title{font-size:1.35rem}}@media(max-width:480px){:root{--shadow-md: 0 8px 24px rgba(0, 0, 0, .25);--shadow-lg: 0 16px 40px rgba(0, 0, 0, .3)}.landing-logo{gap:8px;font-size:1rem}.landing-logo-icon{width:32px;height:32px;font-size:16px}.landing-section-title{font-size:1.5rem}.landing-join-card{padding:32px 20px}.landing-contact-form-wrapper,.landing-contact-info{padding:24px 16px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.landing-orb{animation:none;opacity:.3}}@media(prefers-color-scheme:dark){body{background:var(--bg-dark);color:var(--text-primary)}}@media(prefers-contrast:more){.landing-btn,.landing-glass{border-width:2px}}@media print{.landing-header,.landing-hero-actions,.landing-orb,.landing-footer{display:none}.landing-page{background:#fff;color:#000}}@keyframes react-loading-skeleton{to{transform:translate(100%)}}.react-loading-skeleton{--base-color: #ebebeb;--highlight-color: #f5f5f5;--animation-duration: 1.5s;--animation-direction: normal;--pseudo-element-display: block;background-color:var(--base-color);width:100%;border-radius:.25rem;display:inline-flex;line-height:1;position:relative;-webkit-user-select:none;user-select:none;overflow:hidden}.react-loading-skeleton:after{content:" ";display:var(--pseudo-element-display);position:absolute;top:0;left:0;right:0;height:100%;background-repeat:no-repeat;background-image:var( --custom-highlight-background, linear-gradient( 90deg, var(--base-color) 0%, var(--highlight-color) 50%, var(--base-color) 100% ) );transform:translate(-100%);animation-name:react-loading-skeleton;animation-direction:var(--animation-direction);animation-duration:var(--animation-duration);animation-timing-function:ease-in-out;animation-iteration-count:infinite}@media(prefers-reduced-motion){.react-loading-skeleton{--pseudo-element-display: none}}
