:root{--bg-deep:#020617;--bg-card:#0f172acc;--bg-panel:#080e20e0;--bg-input:#070c1ee6;--accent:#38bdf8;--accent-glow:#38bdf84d;--border:#94a3b814;--text-main:#f8fafc;--text-dim:#94a3b8;--radius:16px;font-family:Inter,system-ui,sans-serif}*,:before,:after{box-sizing:border-box}body{color:var(--text-main);background:radial-gradient(circle at 50% 0,#0ea5e91f,#0000 50%),radial-gradient(circle at 100% 100%,#38bdf814,#0000 30%),#020617;min-height:100vh;margin:0;overflow:hidden auto}.app-container{align-items:stretch;width:100%;max-width:100%;height:auto;min-height:100vh;display:flex;overflow:visible}.mobile-header{border-bottom:1px solid var(--border);z-index:100;background:#0f172a;align-items:center;gap:16px;height:60px;padding:0 16px;display:none;position:fixed;top:0;left:0;right:0}.menu-toggle{color:var(--text-main);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;display:flex}.mobile-logo{margin:0;font-size:16px;font-weight:900}.mobile-logo span{color:var(--accent);font-weight:300}.sidebar-wrapper{flex-shrink:0;width:260px;height:auto}.sidebar-area{background:var(--bg-panel);border-right:1px solid var(--border);flex-direction:column;height:auto;display:flex;box-shadow:8px 0 24px #02061747}.sidebar-header{border-bottom:1px solid var(--border);justify-content:space-between;align-items:center;padding:16px;display:flex}.sidebar-title{color:var(--text-dim);letter-spacing:.1em;font-size:11px;font-weight:800}.sidebar-scroll{flex:1;padding:10px 0;overflow-y:visible}.sidebar-item{cursor:pointer;border-left:3px solid #0000;align-items:center;gap:8px;padding:10px 16px;font-size:13px;transition:all .2s;display:flex}.sidebar-item:hover{color:#fff;background:#ffffff0d}.sidebar-item.file.active{color:var(--accent);border-left-color:var(--accent);background:#38bdf814}.folder-content{flex-direction:column;display:flex}.folder-actions{opacity:0;gap:4px;transition:opacity .2s;display:flex}.sidebar-item:hover .folder-actions{opacity:1}.action-btn-mini{color:var(--text-dim);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;padding:4px;transition:all .2s;display:flex}.action-btn-mini:hover{color:#fff;background:#ffffff1a}.action-btn-mini.delete:hover{color:#ef4444;background:#ef44441a}.main-content-scroll{background:#0206176b;flex-direction:column;flex:1;gap:18px;min-width:0;padding:28px 28px 28px 12px;display:flex;overflow-y:visible}.main-logo-text{color:#fff;letter-spacing:.02em;text-align:center;width:100%;margin:0 0 4px;font-size:22px;font-weight:900}.main-logo-text span{color:var(--accent);font-weight:300}.presentation-inline{background:#0f172a9e;border:1px solid #4755693d;border-radius:16px;justify-content:center;width:100%;padding:14px;display:flex}.presentation-inline .config-column{width:min(100%,520px);margin:0}.presentation-inline .slide-preview-surface{width:100%}.main-editor-area{background:linear-gradient(#0f172ab8,#0f172a85);border:1px solid #47556942;border-radius:18px;flex-direction:column;gap:18px;padding:18px;display:flex;box-shadow:inset 0 1px #ffffff08,0 16px 30px #0206173d}.editor-header-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.input-field{flex-direction:column;gap:8px;display:flex}.input-field label{color:var(--text-dim);align-items:center;gap:4px;font-size:11px;font-weight:700;display:flex}.modern-input{background:var(--bg-input);color:#fff;border:1px solid #47556959;border-radius:12px;outline:none;padding:12px;transition:border-color .2s,box-shadow .2s}.modern-input:focus{border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-glow)}.editor-toolbar{background:radial-gradient(circle at 100% 0,#0ea5e91f,#0000 45%),linear-gradient(#020617d1,#0f172ad1);border:1px solid #1e293be6;border-radius:14px;justify-content:space-between;align-items:center;padding:12px 14px;display:flex;box-shadow:inset 0 1px #ffffff0a,0 12px 28px #02061761}.section-subtitle{letter-spacing:.01em;color:#f8fafc;text-shadow:0 2px 14px #0ea5e933;font-size:18px;font-weight:800}.toolbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.tool-button{color:#cbd5e1;cursor:pointer;letter-spacing:.01em;background:linear-gradient(#1e293bc7,#0f172ae6);border:1px solid #47556973;border-radius:12px;justify-content:center;align-items:center;gap:7px;min-height:42px;padding:8px 16px;font-size:13px;font-weight:700;line-height:1.1;transition:all .2s;display:flex;box-shadow:inset 0 1px #ffffff0f,0 8px 18px #02061752}.tool-button:hover:not(:disabled){color:#e2e8f0;border-color:#64748bbf;transform:translateY(-1px);box-shadow:inset 0 1px #ffffff14,0 12px 24px #02061766}.tool-button:active:not(:disabled){transform:translateY(0)}.tool-button.premium-button{color:#d9f4ff;background:linear-gradient(#0891b25c,#0e749047);border-color:#38bdf87a;position:relative;overflow:hidden}.tool-button.premium-button:after{content:"";pointer-events:none;background:linear-gradient(120deg,#0000 0%,#ffffff24 45%,#0000 90%);transition:transform .35s;position:absolute;inset:0;transform:translate(-120%)}.tool-button.premium-button:hover:not(:disabled){color:#ecfeff;background:linear-gradient(#06b6d473,#0891b257);border-color:#7dd3fccc;box-shadow:inset 0 1px #ffffff14,0 0 0 1px #67e8f92e,0 10px 24px #082f4973}.tool-button.premium-button:hover:not(:disabled):after{transform:translate(120%)}.tool-button.premium-button:disabled{opacity:.75;cursor:not-allowed}.tool-button.primary{color:#d9f4ff;background:linear-gradient(#0ea5e94d,#0891b242);border-color:#38bdf86b}.tool-button.primary:hover{color:#f0f9ff;background:linear-gradient(#38bdf894,#0891b26b);box-shadow:inset 0 1px #ffffff1a,0 0 0 1px #67e8f92e,0 10px 24px #0c4a6e73}.tool-button.delete-mode{color:#fecdd3;background:linear-gradient(#be185d3d,#88133738);border-color:#f43f5e59}.tool-button.delete-mode:hover{color:#fff1f2;background:linear-gradient(#f43f5e85,#be185d57);box-shadow:inset 0 1px #ffffff1a,0 0 0 1px #fb718538,0 10px 24px #88133773}.modern-textarea{color:#fff;resize:vertical;background:#0206178c;border:1px solid #47556959;border-radius:20px;outline:none;width:100%;min-height:400px;padding:24px;font-size:16px;line-height:1.6}.lyric-results-card{background:#0f172aa6;border:1px solid #38bdf838;border-radius:14px;padding:12px 14px;box-shadow:inset 0 1px #ffffff0a}.lyric-results-header{color:var(--accent);letter-spacing:.04em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:12px;font-size:12px;font-weight:800;display:flex}.lyric-results-dismiss{color:var(--text-dim);cursor:pointer;background:0 0;border:1px solid #47556973;border-radius:8px;padding:4px 10px;font-size:11px;font-weight:700;transition:all .2s}.lyric-results-dismiss:hover{color:#e2e8f0;border-color:#38bdf873}.lyric-results-hint{color:var(--text-dim);margin:8px 0 10px;font-size:11px;line-height:1.4}.lyric-results-list{flex-direction:column;gap:8px;max-height:220px;padding-right:4px;display:flex;overflow-y:auto}.lyric-result-btn{text-align:left;color:#e2e8f0;cursor:pointer;background:#02061773;border:1px solid #47556959;border-radius:10px;width:100%;padding:10px 12px;transition:all .2s}.lyric-result-btn:hover{background:#082f4973;border-color:#38bdf873}.lyric-result-title{margin-bottom:4px;font-size:13px;font-weight:800;display:block}.lyric-result-meta{color:var(--text-dim);font-size:11px;display:block}.stats-container{gap:16px;display:flex}.stat-pill{color:var(--text-dim);background:#ffffff05;border-radius:100px;align-items:center;gap:8px;padding:10px 16px;display:flex}.sponsorship-grid{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:12px;display:grid}.sponsor-card{border:1px solid var(--border);text-align:center;background:#ffffff05;border-radius:16px;flex-direction:column;align-items:center;padding:16px;transition:all .3s;display:flex}.sponsor-card:hover{background:#ffffff0a;border-color:#ffffff1a;transform:translateY(-2px)}.sponsor-card.highlight{background:#38bdf808;border-color:#38bdf833}.qrcode-upload-trigger{cursor:pointer;flex-direction:column;align-items:center;width:100%;display:flex}.qrcode-upload-trigger:hover .qrcode-wrapper{border:2px solid var(--accent);transform:scale(1.05)}.qrcode-upload-trigger:hover .card-label{color:#fff}.card-icon{background:#ffffff08;border-radius:12px;justify-content:center;align-items:center;width:40px;height:40px;margin-bottom:12px;display:flex}.sponsor-card h3{color:var(--text-main);margin:0 0 8px;font-size:14px;font-weight:700}.sponsor-card p{color:var(--text-dim);margin:0;font-size:11px;line-height:1.5}.qrcode-wrapper{background:#fff;border-radius:12px;justify-content:center;align-items:center;width:100px;height:100px;margin-bottom:12px;padding:8px;transition:all .3s;display:flex;overflow:hidden}.qrcode-wrapper.mini{width:60px;height:60px;margin-bottom:8px;padding:4px}.qrcode-img{object-fit:contain;width:100%;height:100%}.card-label{color:var(--accent);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:4px;font-size:10px;font-weight:800;display:flex}.right-panel{background:var(--bg-panel);border-left:1px solid var(--border);scrollbar-gutter:stable;flex-direction:column;flex-shrink:0;align-items:flex-start;gap:16px;width:clamp(300px,24vw,340px);min-width:0;max-width:100%;padding:16px 10px 20px 8px;display:flex;overflow-y:visible;box-shadow:-8px 0 24px #02061747}.right-panel>*{width:100%;max-width:none;margin-left:0;margin-right:0}.presentation-header{align-items:center;gap:8px;font-size:13px;font-weight:800;display:flex}.slide-preview-surface{aspect-ratio:16/9;background:#000;border:1px solid #ffffff0d;border-radius:16px;justify-content:center;align-items:center;min-height:145px;padding:16px;display:flex;position:relative;overflow:hidden}.slide-bg{background-position:50%;background-size:cover;position:absolute;inset:0}.slide-text{color:#fff;text-align:center;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;text-shadow:0 4px 12px #000c;max-width:100%;padding:0 6px;font-size:clamp(18px,2.3vw,42px);font-weight:800;line-height:1.2;position:relative}.slide-index{color:#fff6;font-size:11px;position:absolute;bottom:12px;right:12px}.presentation-playback{justify-content:center;gap:12px;display:flex}.control-btn{border:1px solid var(--border);color:#fff;cursor:pointer;background:#ffffff0d;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;display:flex}.control-btn.primary{background:var(--accent);color:#000}.config-card{background:#0f172a99;border:1px solid #4755693d;border-radius:12px;padding:16px}.config-row{gap:16px;display:flex}.config-item{flex-direction:column;flex:1;gap:8px;display:flex}.config-item label{color:var(--text-dim);font-size:10px;font-weight:700}.upload-label{color:var(--accent);cursor:pointer;background:#38bdf81a;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px;display:flex}.export-hub{text-align:center;background:linear-gradient(#082f4957,#0f172a75);border:1px solid #38bdf838;border-radius:16px;flex-direction:column;gap:12px;padding:20px;display:flex}.hub-header{color:var(--accent);justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:800;display:flex}.hub-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.hub-btn{color:#fff;cursor:pointer;white-space:normal;text-align:center;background:#0f172abf;border:1px solid #47556959;border-radius:10px;padding:12px;font-size:13px;font-weight:700;line-height:1.2;transition:all .2s}.hub-btn:hover{background:#082f498c;border-color:#38bdf873}.hub-btn.full{background:#1e1b4b;border-color:#312e81;grid-column:span 2;padding-inline:10px}.floating-msg{background:var(--accent);color:#000;box-shadow:0 8px 32px var(--accent-glow);z-index:400;border-radius:100px;padding:12px 24px;font-size:13px;font-weight:700;position:fixed;bottom:28px;left:50%;transform:translate(-50%)}.config-card.api-settings{border:1px solid var(--border);background:#ffffff05;border-radius:16px;margin-top:16px;padding:20px}.api-input-wrapper{flex-direction:column;gap:12px;display:flex}.input-with-icon{align-items:center;display:flex;position:relative}.input-with-icon .input-icon{color:var(--text-dim);position:absolute;left:12px}.api-field{padding-left:36px!important;padding-right:36px!important}.status-icon{position:absolute;right:12px}.status-icon.success{color:#22c55e}.status-icon.warning{color:#f59e0b}.test-api-btn{border:1px solid var(--border);color:var(--text-dim);cursor:not-allowed;background:#ffffff0d;border-radius:10px;padding:10px;font-size:12px;font-weight:600;transition:all .2s}.test-api-btn.active{border-color:var(--accent);color:var(--accent);cursor:pointer;background:#38bdf81a}.test-api-btn.active:hover{background:var(--accent);color:#fff}.api-help-text{color:var(--text-dim);margin-top:12px;font-size:10px;line-height:1.4}.spinner-mini{border:2px solid #ffffff1a;border-top-color:var(--accent);border-radius:50%;width:14px;height:14px;animation:.8s linear infinite spin;position:absolute;right:12px}@keyframes spin{to{transform:rotate(360deg)}}@media (width<=1100px){.app-container{flex-direction:column;width:100%;height:auto;overflow-y:auto}.sidebar-wrapper{z-index:200;transition:left .3s;position:fixed;top:0;bottom:0;left:-260px}.sidebar-wrapper.open{left:0}.sidebar-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:-1;background:#00000080;display:none;position:fixed;inset:0}.sidebar-wrapper.open .sidebar-overlay{display:block}.mobile-header{display:flex}.main-content-scroll{background:0 0;height:auto;padding:80px 16px 24px;overflow-y:visible}.right-panel{border-left:none;border-top:1px solid var(--border);width:100%;height:auto;padding:20px 16px 28px;overflow-y:visible}.main-logo-text{display:none}.presentation-inline{padding:10px}}@media (width<=768px){.editor-header-grid{grid-template-columns:1fr}.toolbar-actions{flex-wrap:wrap;justify-content:center}.tool-button{flex:1;justify-content:center;min-width:140px}.sponsorship-grid{grid-template-columns:1fr}.stats-container{flex-wrap:wrap}.stat-pill{flex:1;justify-content:center;min-width:100px}.config-row{flex-direction:column}.hub-grid{grid-template-columns:1fr 1fr}}@media (width<=480px){.hub-grid{grid-template-columns:1fr}.hub-btn.full{grid-column:1}.modern-textarea{min-height:300px;padding:16px;font-size:14px}.slide-preview-surface{padding:10px}.slide-text{font-size:18px!important}}
