@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";:root{--bg:#0a0e17;--surface:#111827;--surface-2:#172033;--surface-3:#1f2a40;--border:#94a3b824;--border-strong:#94a3b84d;--text:#f1f5f9;--text-muted:#94a3b8;--text-subtle:#64748b;--accent:#3b82f6;--accent-hover:#2563eb;--accent-soft:#3b82f624;--accent-text:#93c5fd;--success:#10b981;--success-soft:#10b98124;--warning:#f59e0b;--warning-soft:#f59e0b24;--danger:#ef4444;--danger-soft:#ef44441f;--telegram:#229ed9;--twitch:#a970ff;--kick:#53fc18;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-pill:999px;--shadow-main:0 12px 32px -12px #0009;--shadow-pop:0 24px 60px -16px #000000bf;--bg-primary:var(--bg);--bg-secondary:var(--surface);--bg-card:var(--surface-2);--bg-card-hover:var(--surface-3);--border-color:var(--border);--border-highlight:var(--accent);--text-main:var(--text);--accent-cyan:#38bdf8;--accent-blue:var(--accent);--accent-purple:var(--accent);--accent-yellow:#eab308;--accent-green:var(--success);--accent-red:var(--danger);--primary-color:var(--accent);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg);color:var(--text);min-height:100vh;line-height:1.5;overflow-x:hidden}button{cursor:pointer;border:none;font-family:inherit;transition:background-color .15s,border-color .15s,color .15s,opacity .15s}input,select,textarea{color:inherit;font-family:inherit}a{color:var(--accent-text)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--surface-3);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#33415c}.setup-container{flex-direction:column;gap:24px;display:flex}.card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-main);padding:24px}.input-group{gap:12px;margin-bottom:16px;display:flex}.text-input{background:var(--bg-primary);border:1px solid var(--border-color);border-radius:var(--radius-sm);flex:1;padding:10px 14px;font-size:.95rem}.meta-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px;margin-top:16px;display:grid}.meta-item{background:var(--bg-card);border-radius:var(--radius-sm);border:1px solid #ffffff0d;padding:12px 16px}.meta-label{text-transform:uppercase;color:var(--text-muted);margin-bottom:4px;font-size:.75rem}.meta-val{color:var(--text-main);font-size:1.05rem;font-weight:600}.mode-selector{grid-template-columns:1fr 1fr;gap:16px;margin-top:16px;display:grid}.mode-card{background:var(--bg-card);border:2px solid var(--border-color);border-radius:var(--radius-md);cursor:pointer;padding:18px;transition:all .2s}.mode-card.active{border-color:var(--accent-blue);background:#3b82f614}.mode-header{align-items:center;gap:10px;margin-bottom:6px;font-size:1.05rem;font-weight:600;display:flex}.mode-desc{color:var(--text-muted);font-size:.85rem}.range-inputs{border-top:1px solid var(--border-color);gap:16px;margin-top:14px;padding-top:14px;display:flex}.progress-container{flex-direction:column;gap:20px;max-width:900px;margin:0 auto;display:flex}.progress-header{text-align:center;margin-bottom:12px}.progress-bar-bg{background:var(--bg-card);border:1px solid var(--border-color);border-radius:7px;width:100%;height:14px;margin:16px 0;overflow:hidden}.progress-bar-fill{background:linear-gradient(90deg, var(--accent-cyan), var(--accent-blue), var(--accent-purple));height:100%;transition:width .4s}.stages-list{flex-direction:column;gap:10px;margin-top:16px;display:flex}.stage-row{background:var(--bg-card);border-radius:var(--radius-sm);border:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:12px 18px;display:flex}.stage-row.active{border-color:var(--accent-cyan);background:#06b6d40d}.stage-row.completed{border-color:var(--accent-green);opacity:.85}.candidate-header-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:24px;display:flex}.candidate-header-bar>div:first-child{flex:auto;min-width:0;max-width:100%}.candidate-header-bar>div:first-child>div{overflow-wrap:anywhere;min-width:0}.candidate-header-bar>div:first-child>button{flex-shrink:0}.candidates-grid{grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:22px;display:grid}.candidate-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-md);box-shadow:var(--shadow-main);flex-direction:column;transition:transform .2s,border-color .2s;display:flex;overflow:hidden}.candidate-card:hover{border-color:#3b82f6;transform:translateY(-2px)}.candidate-card.rejected{opacity:.5;filter:grayscale(80%)}.candidate-thumb-box{aspect-ratio:16/9;background:#000;width:100%;position:relative;overflow:hidden}.candidate-thumb-img{object-fit:cover;width:100%;height:100%}.thumb-badge{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000bf;border-radius:4px;padding:3px 8px;font-size:.75rem;font-weight:700;position:absolute}.thumb-badge.time{color:#fff;bottom:8px;right:8px}.thumb-badge.score{color:#000;background:linear-gradient(135deg,#10b981,#06b6d4);top:8px;left:8px}.thumb-badge.rendered{background:var(--accent-green);color:#fff;top:8px;right:8px}.candidate-body{flex-direction:column;flex:1;padding:16px;display:flex}.candidate-time{color:#e2e8f0;margin-bottom:8px;font-size:.95rem;font-weight:700}.candidate-transcript{color:var(--text-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;flex:1;margin-bottom:14px;font-size:.85rem;display:-webkit-box;overflow:hidden}.candidate-actions{flex-wrap:wrap;gap:8px;display:flex}.modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#000000d9;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);width:100%;max-height:90vh;padding:24px;overflow-y:auto;box-shadow:0 20px 60px #000c}.modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;background:#000000d9;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.editor-modal{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:var(--radius-lg);flex-direction:column;width:100%;max-width:1200px;height:90vh;display:flex;overflow:hidden;box-shadow:0 20px 60px #000c}.editor-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:16px 24px;display:flex}.editor-body{flex:1;display:flex;overflow:hidden}.canvas-container{background:var(--bg-primary);border-right:1px solid var(--border-color);-webkit-overflow-scrolling:touch;flex-direction:column;flex:1.1;justify-content:flex-start;align-items:center;padding:14px 18px 24px;display:flex;position:relative;overflow:hidden auto}.phone-frame{aspect-ratio:9/16;background:#000;border:3px solid #2d3748;border-radius:20px;flex-shrink:0;width:min(270px,29.25vh);height:auto;margin-top:10px;position:relative;overflow:hidden;box-shadow:0 10px 40px #000000e6}.phone-screen{width:100%;height:100%;position:relative;overflow:hidden}.safe-area-overlay{pointer-events:none;z-index:50;border:1px dashed #facc1580;position:absolute;inset:0}.safe-area-tag{color:var(--accent-yellow);background:#0009;border-radius:4px;padding:2px 6px;font-size:.65rem;position:absolute;top:10px;left:10px}.tiktok-sidebar-mock{color:#fff;opacity:.5;flex-direction:column;align-items:center;gap:12px;font-size:.65rem;display:flex;position:absolute;bottom:80px;right:8px}.layer-box{border:1px solid #fff3;justify-content:center;align-items:center;font-size:.8rem;font-weight:700;display:flex;position:absolute;overflow:hidden}.layer-box.gameplay{border-color:var(--accent-blue);background:#1e293bcc}.layer-box.webcam{border-color:var(--accent-green);z-index:10;background:#10b9814d}.layer-box.subtitles{z-index:20;pointer-events:none;text-align:center;padding:0 12px;font-weight:800;line-height:1.2}.layer-box.banner{border-color:var(--accent-yellow);z-index:15;background:#f59e0b4d}.controls-container{background:var(--bg-secondary);flex-direction:column;flex:1.2;display:flex;overflow-y:auto}.controls-tabs{border-bottom:1px solid var(--border-color);background:var(--bg-card);display:flex}.control-tab-btn{color:var(--text-muted);background:0 0;border-bottom:2px solid #0000;flex:1;padding:12px 10px;font-size:.85rem;font-weight:600}.control-tab-btn.active{color:var(--accent-cyan);border-color:var(--accent-cyan);background:var(--bg-secondary)}.tab-content{flex-direction:column;gap:18px;padding:20px;display:flex}.control-row{flex-direction:column;gap:6px;display:flex}.control-label{color:var(--text-muted);justify-content:space-between;font-size:.82rem;display:flex}.slider-input{width:100%;accent-color:var(--accent-cyan)}.color-input-box{align-items:center;gap:10px;display:flex}.color-picker{border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;width:36px;height:36px}.editor-footer{border-top:1px solid var(--border-color);background:var(--bg-card);justify-content:space-between;align-items:center;padding:14px 24px;display:flex}.source-frame-wrapper{flex-direction:column;align-items:center;width:100%;max-width:620px;display:flex}.source-frame-box{aspect-ratio:16/9;border:2px solid var(--border-color);border-radius:var(--radius-md);-webkit-user-select:none;user-select:none;background:#000;width:100%;position:relative;overflow:hidden;box-shadow:0 12px 36px #000000bf}.source-frame-img{object-fit:fill;pointer-events:none;width:100%;height:100%}.crop-rect-webcam{cursor:grab;z-index:30;background:#10b98140;border:3px solid #10b981;border-radius:4px;justify-content:flex-start;align-items:flex-start;padding:4px 6px;transition:border-color .15s;display:flex;position:absolute;box-shadow:0 0 15px #10b98180}.crop-rect-webcam:active{cursor:grabbing;border-color:#34d399}.crop-rect-gameplay{pointer-events:none;z-index:20;background:#06b6d41f;border:2px dashed #06b6d4;padding:4px 6px;position:absolute}.crop-rect-badge{text-transform:uppercase;pointer-events:none;border-radius:4px;padding:2px 6px;font-size:.68rem;font-weight:700}.crop-rect-badge.webcam{color:#064e3b;background:#10b981}.crop-rect-badge.gameplay{color:#083344;background:#06b6d4}.btn-pill-group{flex-wrap:wrap;gap:6px;display:flex}.btn-pill{background:var(--bg-card);border:1px solid var(--border-color);color:var(--text-muted);cursor:pointer;border-radius:16px;padding:5px 10px;font-size:.78rem;font-weight:600;transition:all .2s}.btn-pill:hover{color:var(--text-main);background:#ffffff14}.btn-pill.active{background:var(--accent-cyan);color:#042f2e;border-color:var(--accent-cyan)}@media (width<=1024px){.candidates-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))!important;gap:16px!important}}@media (width<=640px){.candidates-grid{grid-template-columns:1fr!important}.candidate-header-bar{flex-direction:column;gap:12px;align-items:flex-start!important}.editor-modal-container{border-radius:0!important;width:100%!important;height:100%!important;max-height:100vh!important;padding:12px!important}.modal-overlay{padding:0!important}}@keyframes webcam-border-pulse{0%,to{opacity:1}50%{opacity:.55}}.capcut-timeline-container{background:#0f172ad9;border:1px solid #38bdf840;border-radius:12px;flex-direction:column;gap:8px;width:100%;margin-top:14px;padding:12px;display:flex;box-shadow:0 4px 20px #0006}.timeline-header-bar{justify-content:space-between;align-items:center;margin-bottom:4px;font-size:.82rem;display:flex}.timeline-track-row{cursor:pointer;-webkit-user-select:none;user-select:none;background:#0006;border:1px solid #ffffff12;border-radius:8px;align-items:center;gap:8px;padding:6px 10px;transition:all .15s;display:flex}.timeline-track-row:hover{background:#ffffff0d;border-color:#38bdf859}.timeline-track-row.active{border-color:var(--accent-cyan);background:#06b6d41f;box-shadow:inset 0 0 10px #06b6d426}.timeline-track-label{min-width:115px;color:var(--text-muted);align-items:center;gap:6px;font-size:.76rem;font-weight:700;display:flex}.timeline-track-row.active .timeline-track-label{color:var(--accent-cyan)}.timeline-track-bar{border-radius:6px;flex:1;justify-content:space-between;align-items:center;height:28px;padding:2px 8px;font-size:.74rem;font-weight:600;display:flex}.timeline-ruler{justify-content:space-between;margin:4px 54px 4px 124px;font-size:.7rem;display:flex}.editor-time-track{touch-action:none;cursor:pointer;background:#182232;flex:1;min-width:40px;height:32px;position:relative}.editor-time-span{border-radius:3px;min-width:1px;position:absolute;top:4px;bottom:4px}.editor-playhead{pointer-events:none;background:#fff;width:2px;position:absolute;top:0;bottom:0}.editor-time-tracks button,.capcut-timeline-container button{min-height:36px}.mobile-editor-overlay{z-index:4500;top:var(--editor-viewport-top,0px);height:var(--editor-viewport-height,100dvh);padding:0;bottom:auto}.mobile-editor{border:0;border-radius:0;min-width:0;max-width:100%;height:100%;max-height:100%}.mobile-editor .editor-header{flex-shrink:0;gap:8px;padding:8px 12px}.mobile-editor .editor-heading{flex-wrap:wrap;min-width:0;gap:4px 8px!important}.mobile-editor .editor-heading h2{overflow-wrap:anywhere;width:100%;font-size:1rem!important}.mobile-editor .editor-heading>span{font-size:.72rem!important}.mobile-editor .editor-header>button{flex-shrink:0;min-width:44px;min-height:44px}.mobile-draft-status{color:var(--text-muted);margin:0;padding:0 12px 6px;font-size:.75rem}.mobile-editor .editor-body{overscroll-behavior:contain;min-height:0;display:block;overflow-y:auto}.mobile-editor .canvas-container{border-right:0;width:100%;padding:12px;overflow:visible}.mobile-editor .editor-view-toolbar{flex-wrap:wrap;width:100%;gap:6px!important;position:static!important}.mobile-editor .editor-view-toolbar button{flex:auto}.mobile-editor .phone-frame{border-radius:16px;width:min(100%,320px)}.mobile-editor .controls-container{width:100%;min-width:0;overflow:visible}.mobile-editor .controls-tabs[hidden]{display:none}.mobile-editor .tab-content{gap:12px;padding:12px}.mobile-editor-section{border-top:1px solid var(--border-color);flex-direction:column;gap:12px;min-width:0;padding:16px 12px;display:flex}.mobile-editor-section h3,.mobile-editor-section p{margin:0}.mobile-section-heading{border-top:1px solid var(--border-color);margin:0;padding:16px 12px 0}.mobile-editor-details{border-top:1px solid var(--border-color);min-width:0;padding:12px}.mobile-editor-details summary{cursor:pointer;overflow-wrap:anywhere;min-height:44px;padding:12px 0;font-weight:600}.mobile-editor-details[open]>:not(summary){margin-top:12px}.mobile-action-row{flex-wrap:wrap;gap:8px;min-width:0;display:flex}.mobile-action-row>button{flex:120px}.mobile-editor button,.mobile-webcam-editor button{white-space:normal;overflow-wrap:anywhere;max-width:100%;min-height:44px}.mobile-editor input:not([type=checkbox]):not([type=color]),.mobile-editor select,.mobile-editor textarea{width:100%;max-width:100%;min-width:0!important}.mobile-editor input[type=checkbox]{flex-shrink:0}.mobile-editor .controls-container div[style*="display: flex"]{flex-wrap:wrap;min-width:0}.mobile-editor .controls-container div[style*="display: grid"]{grid-template-columns:minmax(0,1fr)!important}.mobile-editor .controls-container label,.mobile-editor .controls-container span,.mobile-editor p{overflow-wrap:anywhere;min-width:0}.mobile-editor .control-label{flex-wrap:wrap;gap:4px}.mobile-editor .capcut-timeline-container{min-width:0;max-width:100%}.mobile-editor .timeline-header-bar{flex-wrap:wrap;gap:8px}.mobile-test-result video{background:#000;width:min(100%,320px);max-height:65dvh;margin:12px auto;display:block}.mobile-webcam-editor{inset:var(--editor-viewport-top,0px) 0 auto;height:var(--editor-viewport-height,100dvh);z-index:5000;background:var(--bg-primary);flex-direction:column;min-width:0;display:flex;position:fixed}.mobile-webcam-editor header,.mobile-webcam-editor footer{border-bottom:1px solid var(--border-color);flex-wrap:wrap;flex-shrink:0;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.mobile-webcam-editor h2{margin:0;font-size:1rem}.mobile-webcam-editor footer{border-top:1px solid var(--border-color);padding-bottom:max(8px, env(safe-area-inset-bottom))}.mobile-webcam-editor footer button{width:100%}.mobile-webcam-content{flex-direction:column;flex:1;gap:12px;min-height:0;padding:12px;display:flex;overflow-y:auto}.mobile-webcam-content p{overflow-wrap:anywhere;margin:0;font-size:.85rem}.mobile-webcam-frame{aspect-ratio:16/9;-webkit-user-select:none;user-select:none;background:#000;flex-shrink:0;width:100%;position:relative}.mobile-webcam-frame>img{pointer-events:none;width:100%;height:100%;display:block}.mobile-webcam-crop{border:2px solid var(--accent-green);touch-action:none;cursor:move;background:#10b98133;position:absolute}.mobile-webcam-crop span{pointer-events:none;color:#fff;overflow-wrap:anywhere;font-size:.65rem;display:block}.mobile-crop-handle{touch-action:none;color:#fff;background:#0e6253;border:2px solid #10b981;border-radius:8px;width:44px;height:44px;padding:0;position:absolute}@media (width>=768px) and (width<=1200px){.editor-heading,.editor-footer,.editor-footer>div,.editor-footer>div>div{flex-wrap:wrap;gap:8px;min-width:0}.editor-header{gap:8px}.editor-view-toolbar{flex-wrap:wrap;right:16px}.controls-tabs{flex-wrap:wrap}.editor-footer>div{max-width:100%}.editor-footer button,.editor-view-toolbar button{white-space:normal;max-width:100%}.editor-webcam-shapes,.controls-container .btn-pill-group{flex-wrap:wrap}.controls-container{min-width:0}}.app-container{flex-direction:column;min-height:100vh;display:flex}.main-content{flex:1;width:100%;min-width:0;max-width:1200px;margin:0 auto;padding:28px 24px 48px}.page{flex-direction:column;gap:24px;display:flex}.page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;display:flex}.page-title{letter-spacing:-.02em;font-size:1.6rem;font-weight:700}.page-subtitle{color:var(--text-muted);margin-top:4px;font-size:.92rem}.section-title{align-items:center;gap:10px;font-size:1.05rem;font-weight:650;display:flex}.muted{color:var(--text-muted)}.subtle{color:var(--text-subtle)}.small{font-size:.85rem}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.spacer{flex:1}.navbar{z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);background:#0a0e17d9;justify-content:space-between;align-items:center;gap:12px;padding:10px 24px;display:flex;position:sticky;top:0}.brand{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text);background:0 0;align-items:center;gap:10px;padding:0;display:flex}.brand-icon{color:#fff;background:linear-gradient(135deg, #38bdf8, var(--accent));border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;display:flex}.brand-title{letter-spacing:-.01em;font-size:1.05rem;font-weight:700}.nav-actions{align-items:center;gap:8px;min-width:0;display:flex}.nav-links{align-items:center;gap:4px;display:flex}.nav-link{border-radius:var(--radius-sm);height:34px;color:var(--text-muted);background:0 0;align-items:center;gap:6px;padding:0 12px;font-size:.875rem;font-weight:500;text-decoration:none;display:inline-flex}.nav-link:hover,.nav-link.active{color:var(--text);background:var(--surface-2)}.nav-link.admin{color:#facc15}.user-chip{border-radius:var(--radius-pill);border:1px solid var(--border);background:var(--surface);height:36px;color:var(--text);align-items:center;gap:8px;padding:0 6px 0 4px;display:inline-flex}.user-chip:hover{border-color:var(--border-strong)}.avatar{object-fit:cover;background:var(--surface-3);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:28px;height:28px;display:inline-flex}.user-chip-name{text-overflow:ellipsis;white-space:nowrap;max-width:140px;font-size:.85rem;font-weight:500;overflow:hidden}.btn,.btn-primary,.btn-secondary,.btn-ghost,.btn-danger,.btn-telegram{white-space:nowrap;cursor:pointer;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:0 16px;font-size:.9rem;font-weight:600;line-height:1.2;text-decoration:none;display:inline-flex}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-secondary{background:var(--surface-2);color:var(--text);border-color:var(--border)}.btn-secondary:hover:not(:disabled){background:var(--surface-3);border-color:var(--border-strong)}.btn-ghost{color:var(--text-muted);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--surface-2);color:var(--text)}.btn-danger{background:var(--danger-soft);color:#fca5a5;border-color:#ef44444d}.btn-danger:hover:not(:disabled){border-color:var(--danger);background:#ef444438}.btn-telegram{background:var(--telegram);color:#fff}.btn-telegram:hover:not(:disabled){background:#1c8bc0}.btn-sm{border-radius:var(--radius-sm);min-height:32px;padding:0 12px;font-size:.82rem}.btn-lg{border-radius:12px;min-height:46px;padding:0 22px;font-size:1rem}.btn-block{width:100%}.btn-icon{width:38px;padding:0}.btn-icon.btn-sm{width:32px}.btn:disabled,.btn-primary:disabled,.btn-secondary:disabled,.btn-ghost:disabled,.btn-danger:disabled,.btn-telegram:disabled{opacity:.5;cursor:not-allowed}:is(.btn,.btn-primary,.btn-secondary,.btn-ghost,.btn-danger,.btn-telegram,.nav-link,.user-chip):focus-visible,.text-input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:24px}.card-title{color:var(--text);align-items:center;gap:10px;margin-bottom:16px;font-size:1.05rem;font-weight:650;display:flex}.card-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px;display:flex}.card-header .card-title{margin-bottom:2px}.card-sub{color:var(--text-muted);font-size:.875rem}.empty-state{text-align:center;border:1px dashed var(--border-strong);border-radius:var(--radius-lg);background:var(--surface);flex-direction:column;align-items:center;gap:12px;padding:48px 24px;display:flex}.empty-icon{background:var(--accent-soft);width:56px;height:56px;color:var(--accent-text);border-radius:50%;justify-content:center;align-items:center;display:flex}.field{flex-direction:column;gap:6px;min-width:0;display:flex}.field-label{color:var(--text-muted);font-size:.82rem;font-weight:600}.field-hint{color:var(--text-subtle);font-size:.8rem}.input-group{flex-wrap:wrap;gap:10px;display:flex}.input-group>.text-input,.input-group>.input-wrap{flex:260px}.input-wrap{align-items:center;min-width:0;display:flex;position:relative}.input-wrap>.text-input{width:100%}.input-wrap>.input-adornment{position:absolute;right:8px}.text-input{border:1px solid var(--border);background:var(--bg);min-height:40px;color:var(--text);border-radius:10px;padding:0 14px;font-size:.92rem}.text-input::placeholder{color:var(--text-subtle)}.text-input:hover{border-color:var(--border-strong)}.text-input:focus{border-color:var(--accent);outline:none}.badge{border-radius:var(--radius-pill);white-space:nowrap;background:var(--surface-3);height:22px;color:var(--text-muted);align-items:center;gap:4px;padding:0 8px;font-size:.74rem;font-weight:600;display:inline-flex}.badge-accent{background:var(--accent-soft);color:var(--accent-text)}.badge-success{background:var(--success-soft);color:#6ee7b7}.badge-warning{background:var(--warning-soft);color:#fcd34d}.badge-danger{background:var(--danger-soft);color:#fca5a5}.badge-gold{color:#facc15;background:#eab30829}.notice{border-radius:var(--radius-md);border:1px solid var(--border);background:var(--surface-2);color:var(--text-muted);align-items:flex-start;gap:10px;padding:12px 14px;font-size:.875rem;display:flex}.notice>svg{flex-shrink:0;margin-top:2px}.notice-info{background:var(--accent-soft);color:#bfdbfe;border-color:#3b82f64d}.notice-warning{background:var(--warning-soft);color:#fde68a;border-color:#f59e0b4d}.notice-danger{background:var(--danger-soft);color:#fecaca;border-color:#ef444459}.meter{border-radius:var(--radius-pill);background:var(--surface-3);height:6px;overflow:hidden}.meter>span{border-radius:inherit;background:var(--accent);height:100%;transition:width .3s;display:block}.meter.low>span{background:var(--warning)}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;display:grid}.stat{border-radius:var(--radius-md);background:var(--surface-2);border:1px solid var(--border);flex-direction:column;gap:8px;padding:14px 16px;display:flex}.stat-label{color:var(--text-muted);font-size:.78rem}.stat-value{font-size:1.15rem;font-weight:700}.tabs{background:var(--surface);border:1px solid var(--border);border-radius:12px;gap:4px;padding:4px;display:inline-flex}.tab{border-radius:var(--radius-sm);height:34px;color:var(--text-muted);background:0 0;align-items:center;gap:8px;padding:0 14px;font-size:.875rem;font-weight:600;display:inline-flex}.tab:hover{color:var(--text)}.tab.active{background:var(--surface-3);color:var(--text)}.tab .badge{height:20px}.list{border:1px solid var(--border);border-radius:var(--radius-md);flex-direction:column;display:flex;overflow:hidden}.list-item{background:var(--surface);align-items:center;gap:12px;padding:12px 14px;display:flex}.list-item+.list-item{border-top:1px solid var(--border)}.list-item-main{flex:1;min-width:0}.list-item-title{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.list-item-meta{color:var(--text-muted);font-size:.8rem}.platform-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;font-size:.85rem;font-weight:800;display:inline-flex}.platform-twitch{color:var(--twitch);background:#a970ff29}.platform-kick{color:var(--kick);background:#53fc181f}.project-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:20px;display:grid}.project-card{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);cursor:pointer;text-align:left;color:var(--text);flex-direction:column;transition:border-color .15s,transform .15s;display:flex;overflow:hidden}.project-card:hover{border-color:#3b82f680;transform:translateY(-2px)}.project-thumb{aspect-ratio:16/9;background:#0d131f;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.project-thumb img{object-fit:cover;width:100%;height:100%}.project-thumb .badge{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0a0e17cc;position:absolute}.project-thumb .badge.top{top:10px;right:10px}.project-thumb .badge.bottom{color:var(--text);bottom:10px;left:10px}.project-body{flex-direction:column;flex:1;gap:6px;padding:14px 16px 16px;display:flex}.project-name{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.project-footer{justify-content:space-between;align-items:center;margin-top:auto;padding-top:10px;display:flex}.choice-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;display:grid}.choice{border-radius:var(--radius-md);border:1.5px solid var(--border);background:var(--surface-2);text-align:left;color:var(--text);flex-direction:column;gap:6px;padding:16px;display:flex}.choice:hover:not(:disabled){border-color:var(--border-strong)}.choice.active{border-color:var(--accent);background:var(--accent-soft)}.choice:disabled{opacity:.5;cursor:not-allowed}.choice-title{align-items:center;gap:8px;font-weight:650;display:flex}.choice-desc{color:var(--text-muted);font-size:.85rem}.modal-backdrop,.dialog-backdrop{z-index:1000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#03060cc7;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card,.dialog{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-height:90vh;box-shadow:var(--shadow-pop);padding:24px;position:relative;overflow-y:auto}.dialog{max-width:420px}.dialog-title{margin-bottom:8px;font-size:1.1rem;font-weight:700}.dialog-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:20px;display:flex}.dialog-close{position:absolute;top:14px;right:14px}.toast-stack{z-index:2000;flex-direction:column;gap:10px;max-width:min(420px,100vw - 32px);display:flex;position:fixed;bottom:20px;right:20px}.toast{border-radius:var(--radius-md);background:var(--surface-2);border:1px solid var(--border-strong);box-shadow:var(--shadow-pop);align-items:flex-start;gap:10px;padding:12px 14px;font-size:.9rem;animation:.18s ease-out toast-in;display:flex}.toast>svg{flex-shrink:0;margin-top:2px}.toast-body{flex:1;min-width:0}.toast-actions{gap:6px;margin-top:8px;display:flex}.toast-error{border-color:#ef444473}.toast-error>svg{color:#f87171}.toast-success>svg{color:#34d399}.toast-info>svg{color:var(--accent-text)}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.pricing-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.plan{border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--surface-2);flex-direction:column;gap:16px;padding:22px;display:flex;position:relative}.plan.popular{border:1.5px solid var(--accent)}.plan-ribbon{position:absolute;top:-11px;left:22px}.plan-name{justify-content:space-between;align-items:center;font-size:1.1rem;font-weight:700;display:flex}.plan-price{letter-spacing:-.02em;font-size:1.9rem;font-weight:800}.plan-price small{color:var(--text-muted);margin-left:6px;font-size:.85rem;font-weight:500}.plan-features{flex-direction:column;flex:1;gap:9px;list-style:none;display:flex}.plan-features li{color:#cbd5e1;align-items:flex-start;gap:8px;font-size:.875rem;display:flex}.plan-features svg{color:var(--success);flex-shrink:0;margin-top:2px}.hero{text-align:center;flex-direction:column;align-items:center;gap:22px;padding:64px 0 40px;display:flex}.hero h1{letter-spacing:-.03em;font-size:clamp(2.2rem,5vw,3.6rem);font-weight:800;line-height:1.1}.hero h1 span{background:linear-gradient(135deg, #38bdf8, var(--accent));color:#0000;-webkit-background-clip:text;background-clip:text}.hero p{max-width:640px;color:var(--text-muted);font-size:clamp(1rem,2vw,1.15rem)}.hero-points{color:var(--text-subtle);flex-wrap:wrap;justify-content:center;gap:8px 20px;font-size:.875rem;display:flex}.hero-points span{align-items:center;gap:6px;display:inline-flex}.feature-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;display:grid}.feature{border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border);flex-direction:column;gap:10px;padding:22px;display:flex}.feature-num{background:var(--accent-soft);width:36px;height:36px;color:var(--accent-text);border-radius:10px;justify-content:center;align-items:center;font-weight:700;display:flex}.feature h3{font-size:1.05rem;font-weight:650}.feature p{color:var(--text-muted);font-size:.9rem}.landing-section{flex-direction:column;gap:20px;padding:32px 0;display:flex}.landing-section>h2{text-align:center;font-size:1.5rem;font-weight:700}.faq{flex-direction:column;gap:8px;width:100%;max-width:760px;margin:0 auto;display:flex}.faq details{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);padding:14px 16px}.faq summary{cursor:pointer;justify-content:space-between;gap:12px;font-weight:600;list-style:none;display:flex}.faq summary:after{content:"+";color:var(--text-muted)}.faq details[open] summary:after{content:"−"}.faq details p{color:var(--text-muted);margin-top:10px;font-size:.9rem}.site-footer{border-top:1px solid var(--border);width:100%;max-width:1200px;color:var(--text-subtle);flex-wrap:wrap;justify-content:space-between;gap:12px;margin:0 auto;padding:20px 24px 28px;font-size:.82rem;display:flex}.site-footer nav{flex-wrap:wrap;gap:16px;display:flex}.site-footer a{color:var(--text-muted);text-decoration:none}.site-footer a:hover{color:var(--text)}.legal-doc{max-width:760px;margin:0 auto;line-height:1.7}.legal-doc h1{margin-bottom:16px;font-size:1.6rem}.legal-doc h2{margin:22px 0 8px;font-size:1.15rem}.legal-doc p,.legal-doc li{color:#cbd5e1;margin-bottom:8px}.legal-doc ul{padding-left:20px}@media (width<=760px){.navbar{padding:8px 14px}.nav-link span,.user-chip-name,.brand-title{display:none}.nav-actions{gap:2px}.main-content{padding:18px 16px 40px}.card{padding:18px}.page-title{font-size:1.35rem}.hero{padding-top:36px}.toast-stack{bottom:16px;left:16px;right:16px}}.spin-animation{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}
