@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600&family=Poppins:wght@400;600&family=Press+Start+2P&display=swap";@import "https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css";:root{--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-glass:#1e293bb3;--border-glass:#ffffff14;--accent-mc:#06b6d4;--accent-mc-glow:#06b6d44d;--accent-tt:#f43f5e;--accent-tt-glow:#f43f5e4d;--accent-gold:#fbbf24;--text-primary:#f8fafc;--text-secondary:#94a3b8;--text-muted:#64748b;--success:#10b981;--error:#ef4444;--warning:#f59e0b;--font-sans:"Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", monospace;--radius-sm:6px;--radius-md:12px;--radius-lg:16px;--shadow-glow:0 0 20px}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{min-height:100%}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--text-primary);min-height:100vh;line-height:1.6;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#06b6d408 1px,#0000 1px),linear-gradient(90deg,#06b6d408 1px,#0000 1px);background-size:50px 50px;position:fixed;inset:0}button,input,textarea,select{font:inherit}.screen{min-height:100vh}.center{justify-content:center;align-items:center;padding:2rem;display:flex}.login-bg{background:radial-gradient(circle at top,#22c55e1f,#0000 30%),radial-gradient(circle at 100% 100%,#3b82f61a,#0000 30%),#020617}.login-card{background:#0f172aeb;border:1px solid #94a3b82e;border-radius:18px;flex-direction:column;gap:1rem;width:100%;max-width:420px;padding:2rem;display:flex;box-shadow:0 20px 60px #00000059}.login-card h1{color:#f8fafc;margin:0;font-size:1.8rem}.login-card p{color:#94a3b8;margin:0}.app-container{z-index:1;grid-template-columns:280px 1fr;min-height:100vh;display:grid;position:relative}.sidebar{border-right:1px solid var(--border-glass);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#0f172af2;flex-direction:column;height:100vh;padding:2rem;display:flex;position:sticky;top:0;overflow-y:auto}.brand{border-bottom:1px solid var(--border-glass);align-items:center;gap:1rem;margin-bottom:3rem;padding-bottom:2rem;display:flex}.brand-icon{background:linear-gradient(135deg, var(--accent-mc), var(--accent-tt));border-radius:var(--radius-md);justify-content:center;align-items:center;width:48px;height:48px;font-size:1.5rem;display:flex;box-shadow:0 0 30px #06b6d466}.brand-text h1{font-size:1.25rem;font-weight:700;line-height:1.2}.brand-text span{color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;font-size:.75rem}.nav-section{margin-bottom:2rem}.nav-label{text-transform:uppercase;letter-spacing:1.5px;color:var(--text-muted);margin-bottom:.75rem;font-size:.7rem;font-weight:600}.nav-item{border-radius:var(--radius-md);cursor:pointer;width:100%;color:var(--text-secondary);text-align:left;background:0 0;border:1px solid #0000;align-items:center;gap:.75rem;margin-bottom:.5rem;padding:.875rem 1rem;font-size:.9rem;font-weight:500;transition:all .2s;display:flex}.nav-item:hover{color:var(--text-primary);border-color:var(--border-glass);background:#ffffff08}.nav-item.active{color:var(--accent-mc);background:#06b6d41a;border-color:#06b6d44d}.nav-item i{text-align:center;width:20px}.app-swal-popup{border:1px solid var(--border-glass);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 20px 60px #00000073,inset 0 0 0 1px #06b6d41f}.app-swal-title{color:var(--text-primary);font-weight:700}.app-swal-html{color:var(--text-secondary)}.app-swal-input{background:var(--bg-secondary);border:1px solid var(--border-glass);color:var(--text-primary);border-radius:var(--radius-sm)}.app-swal-input:focus{border-color:#06b6d480;box-shadow:0 0 0 3px #06b6d426}.app-swal-popup .swal2-select{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-glass);border-radius:var(--radius-sm)}.app-swal-popup .swal2-select:focus{border-color:#06b6d480;box-shadow:0 0 0 3px #06b6d426}.app-swal-popup .swal2-select option{color:var(--text-primary);background:#0f172a}.app-swal-confirm,.app-swal-cancel,.app-swal-deny{border-radius:var(--radius-sm);border:1px solid #0000;padding:.55rem .9rem;font-weight:600;transition:transform .15s,box-shadow .2s,opacity .2s}.app-swal-confirm{background:linear-gradient(135deg, var(--accent-mc), #0891b2);color:#e0f2fe;box-shadow:0 8px 24px #06b6d44d}.app-swal-confirm:hover{transform:translateY(-1px)}.app-swal-cancel{color:var(--text-primary);background:#94a3b829;border-color:#94a3b859}.app-swal-deny{color:#fcd34d;background:#f59e0b24;border-color:#f59e0b4d}.app-swal-danger{color:#fee2e2;background:linear-gradient(135deg,#ef4444,#b91c1c);box-shadow:0 8px 24px #ef44444d}.app-swal-info{color:#dbeafe;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border-color:#3b82f68c;box-shadow:0 8px 24px #2563eb47}.folder-delete-swal .swal2-actions{grid-template-columns:1fr 1fr;gap:.6rem;width:100%;margin-top:1rem;display:grid}.folder-delete-swal .swal2-confirm{grid-column:1}.folder-delete-swal .swal2-deny{grid-column:2}.folder-delete-swal .swal2-cancel{grid-column:1/span 2;justify-self:center;min-width:170px}.connection-status{background:var(--bg-secondary);border:1px solid var(--border-glass);border-radius:var(--radius-md);margin-top:auto;padding:1rem}.status-header{justify-content:space-between;align-items:center;margin-bottom:1rem;display:flex}.status-title{font-size:.875rem;font-weight:600}.status-indicator{background:#0000004d;border-radius:20px;align-items:center;gap:.5rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:flex}.status-indicator.online{color:var(--success);background:#10b98126}.status-indicator.offline{color:var(--error);background:#ef444426}.status-dot{background:currentColor;border-radius:50%;width:6px;height:6px;animation:2s infinite pulse}@keyframes pulse{0%,to{opacity:1}50%{opacity:.4}}.main-content{height:100vh;padding:2rem;overflow-y:auto}.global-toolbar{z-index:100;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border-glass);background:#0f172af2;justify-content:space-between;align-items:center;gap:1rem;margin:-2rem -2rem 2rem;padding:1rem 2rem;display:flex;top:0}.global-toolbar-left,.global-toolbar-right{flex-wrap:wrap;align-items:center;gap:.75rem;display:flex}.toolbar-label{color:var(--text-secondary);margin-right:.5rem;font-size:.875rem}.toolbar-btn{min-width:140px}.toolbar-btn-online{color:#86efac;background:#10b98129;border:1px solid #10b98159}.toolbar-btn-online:hover{background:#10b9813d;border-color:#10b98180}.toolbar-btn-offline{background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-glass)}.toolbar-btn-offline:hover{color:var(--text-primary);background:#ffffff0d;border-color:#fff3}.card-queue{flex-direction:column;grid-column:9/13;height:560px;display:flex;overflow:hidden}.card-console{flex-direction:column;grid-column:1/9;height:560px;display:flex;overflow:hidden}.view{display:block}.header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:2rem;display:flex}.header h2{background:linear-gradient(90deg,#fff,#94a3b8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.25rem;font-size:1.875rem;font-weight:700}.header-subtitle{color:var(--text-secondary);font-size:.9rem}.header-actions{flex-wrap:wrap;gap:1rem;display:flex}.btn{border-radius:var(--radius-md);cursor:pointer;font-size:.875rem;font-weight:600;font-family:var(--font-sans);border:none;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1.25rem;transition:all .2s;display:inline-flex}.btn-primary{background:linear-gradient(135deg, var(--accent-mc), #0891b2);color:#fff;box-shadow:0 4px 15px #06b6d44d}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 6px 20px #06b6d466}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-glass)}.btn-secondary:hover{background:#ffffff0d;border-color:#fff3}.btn-danger{background:linear-gradient(135deg, var(--error), #dc2626);color:#fff}.btn-success{background:linear-gradient(135deg, var(--success), #059669);color:#fff}.btn:disabled{opacity:.7;cursor:wait!important}.dashboard-grid{grid-template-columns:repeat(12,1fr);gap:1.5rem;display:grid}.card{background:var(--bg-glass);border:1px solid var(--border-glass);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);padding:1.5rem;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-2px);box-shadow:0 20px 40px #0000004d}.card-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.card-title{color:var(--text-primary);align-items:center;gap:.75rem;font-size:1rem;font-weight:600;display:flex}.card-title i{color:var(--accent-mc)}.card-full{grid-column:span 12}.card-large{grid-column:span 8}.card-medium{grid-column:span 6}.card-small{grid-column:span 4}.card-queue-header{flex-direction:column;align-items:center;gap:1rem;display:flex}.queue-actions{grid-template-columns:1fr 1fr;gap:.5rem;width:100%;min-width:0;display:grid}.queue-actions .btn{white-space:nowrap;width:100%;min-width:0;max-width:100%;padding-left:.75rem;padding-right:.75rem}.queue-body{flex-direction:column;flex:1;gap:.75rem;min-height:0;padding:1rem;display:flex;overflow:hidden}.queue-summary{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.queue-current,.queue-empty-box,.queue-item{border:1px solid var(--border-glass);border-radius:.75rem;padding:.75rem}.queue-current-active{background:#22c55e14}.queue-empty-box{color:var(--text-secondary);font-size:.875rem}.queue-current-label,.queue-section-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary);font-size:.75rem}.queue-current-label{margin-bottom:.25rem}.queue-current-title,.queue-item-title{font-weight:600}.queue-current-meta,.queue-item-meta{color:var(--text-secondary);margin-top:.25rem;font-size:.875rem}.queue-list{flex-direction:column;flex:1;gap:.5rem;min-height:0;max-height:100%;display:flex;overflow-y:auto}.card-queue .status-indicator{flex-shrink:0}.stats-row{flex-wrap:wrap;justify-content:center;gap:1rem;display:flex}.stats-row .stat-item{flex:0 210px;max-width:240px}.stat-item{border-radius:var(--radius-md);border:1px solid var(--border-glass);background:#0003;padding:1.25rem;position:relative;overflow:hidden}.stat-item:before{content:"";background:var(--accent-tt);width:4px;height:100%;position:absolute;top:0;left:0}.stat-item.mc:before{background:var(--accent-mc)}.stat-value{font-size:2rem;font-weight:700;font-family:var(--font-mono);color:var(--text-primary);margin-bottom:.25rem;line-height:1}.stat-label{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;font-size:.75rem}.connection-card{flex-direction:column;gap:1rem;display:flex}.connection-input-group{flex-direction:column;gap:.5rem;display:flex}.connection-input-group label,.form-group label{color:var(--text-secondary);font-size:.875rem;font-weight:500}.input-field,.code-editor,.textarea-field,select.input-field{border:1px solid var(--border-glass);border-radius:var(--radius-md);color:var(--text-primary);font-family:var(--font-sans);background:#0000004d;width:100%;padding:.75rem 1rem;font-size:.9rem;transition:all .2s}.input-field:focus,.code-editor:focus,.textarea-field:focus,select.input-field:focus{border-color:var(--accent-mc);outline:none;box-shadow:0 0 0 3px #06b6d41a}.input-field::placeholder,.textarea-field::placeholder,.code-editor::placeholder{color:var(--text-muted)}.input-row{grid-template-columns:2fr 1fr 1fr;gap:1rem;display:grid}.connection-status-badge{border-radius:20px;align-items:center;gap:.5rem;margin-top:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;display:inline-flex}.status-connected{color:var(--success);background:#10b9811a;border:1px solid #10b9814d}.status-disconnected{color:var(--error);background:#ef44441a;border:1px solid #ef44444d}.console{border-radius:var(--radius-md);font-family:var(--font-mono);background:#0b1120;border:1px solid #ffffff1a;flex:1;min-height:0;padding:1rem;font-size:.875rem;position:relative;overflow-y:auto}.log-entry{gap:.75rem;padding:.25rem 0;animation:.3s slideIn;display:flex}@keyframes slideIn{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.log-time{color:var(--text-muted);min-width:60px;font-size:.8rem}.log-type{text-transform:uppercase;min-width:80px;font-size:.75rem;font-weight:600}.log-type.system{color:var(--accent-gold)}.log-type.gift{color:var(--accent-tt)}.log-type.comment{color:#60a5fa}.log-type.like{color:#ec4899}.log-type.follow{color:var(--success)}.log-type.command{color:var(--accent-mc)}.log-type.error{color:var(--error)}.log-message{color:var(--text-secondary)}.form-group{margin-bottom:1.25rem}.hint-text{color:var(--text-muted);margin-top:.25rem;font-size:.8rem}.gift-trigger-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem;display:grid}.gift-trigger-preview{object-fit:contain;border:1px solid var(--border-glass);background:#ffffff0a;border-radius:10px;width:42px;height:42px;padding:4px}.gift-trigger-preview-empty{color:var(--text-muted);justify-content:center;align-items:center;display:flex}.gift-suggestions-popover{border:1px solid var(--border-glass);border-radius:var(--radius-md);background:#0b1120;max-height:220px;margin-top:.5rem;padding:.35rem;overflow-y:auto}.gift-suggestion-item{width:100%;color:var(--text-primary);border-radius:var(--radius-sm);text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;align-items:center;gap:.6rem;padding:.45rem .5rem;display:flex}.gift-suggestion-item:hover{background:#06b6d41a;border-color:#06b6d440}.gift-suggestion-item img,.gift-suggestion-dot{border-radius:8px;flex-shrink:0;width:28px;height:28px}.gift-suggestion-item img{object-fit:contain;background:#ffffff0a}.gift-suggestion-dot{color:var(--text-muted);border:1px solid var(--border-glass);justify-content:center;align-items:center;font-size:.62rem;display:inline-flex}.gift-suggestion-empty{color:var(--text-muted);padding:.55rem .65rem;font-size:.8rem}.code-editor{min-height:120px;font-family:var(--font-mono);resize:vertical;background:#0b1120;line-height:1.6}.actions-grid{scrollbar-width:thin;scrollbar-color:#fff3 #0003;align-items:start}.action-card{background:var(--bg-secondary);border:1px solid var(--border-glass);border-radius:var(--radius-md);flex-direction:column;height:100%;padding:1.25rem;transition:all .2s;display:flex;position:relative;overflow:hidden}.action-card:hover{border-color:#06b6d44d;transform:translateY(-2px);box-shadow:0 4px 20px #0000004d}.action-card-header{justify-content:space-between;align-items:flex-start;gap:1rem;min-width:0;display:flex}.action-card-tags{flex-wrap:wrap;flex:1;gap:.5rem;min-width:0;display:flex}.action-tag{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;align-items:center;gap:.25rem;padding:.25rem .75rem;font-size:.75rem;font-weight:600;display:inline-flex}.action-tag-trigger{text-overflow:ellipsis;white-space:nowrap;text-transform:none;letter-spacing:normal;max-width:100%;overflow:hidden}.action-tag-trigger-icon{object-fit:cover;border-radius:4px;flex-shrink:0;width:16px;height:16px}.tag-gift{color:#f43f5e;background:#f43f5e26}.tag-comment{color:#3b82f6;background:#3b82f626}.tag-like{color:#ec4899;background:#ec489926}.tag-follow{color:#10b981;background:#10b98126}.action-trigger{font-family:var(--font-mono);color:var(--text-primary);font-size:.95rem;font-weight:600}.action-command-preview{font-family:var(--font-mono);color:var(--text-muted);font-size:.75rem}.gallery-card-body{flex-direction:column;flex:1;margin-top:.75rem;display:flex}.gallery-card-header-right{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:.45rem;display:flex}.gallery-version-chip{letter-spacing:.2px;color:#22c55e;white-space:nowrap;text-overflow:ellipsis;background:#22c55e24;border:1px solid #22c55e4d;border-radius:999px;justify-content:center;align-items:center;max-width:130px;padding:.2rem .5rem;font-size:.7rem;font-weight:700;display:inline-flex;overflow:hidden}.gallery-card-description{color:var(--text-secondary);white-space:normal;-webkit-line-clamp:3;background:#0f172a73;border:1px solid #94a3b838;border-left:3px solid #06b6d48c;border-radius:10px;-webkit-box-orient:vertical;margin-bottom:.65rem;padding:.6rem .7rem;font-size:.83rem;line-height:1.45;display:-webkit-box;overflow:hidden}.gallery-card-meta-grid{gap:.5rem;margin-top:auto;margin-bottom:.5rem;display:flex}.gallery-card-footer{justify-content:space-between;align-items:flex-end;gap:.75rem;display:flex}.gallery-card-author{color:var(--accent-mc);text-overflow:ellipsis;white-space:nowrap;text-align:right;max-width:45%;margin-left:auto;font-size:.78rem;font-weight:700;overflow:hidden}.action-controls{flex-shrink:0;gap:.5rem;display:flex}.btn-icon{border-radius:var(--radius-sm);border:1px solid var(--border-glass);width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;justify-content:center;align-items:center;transition:all .2s;display:flex}.btn-icon:hover{color:var(--text-primary);background:#ffffff1a}.btn-icon.delete:hover{color:var(--error);background:#ef444433;border-color:#ef44444d}.variables-grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.5rem;margin-top:1rem;display:grid}.variable-chip{border-radius:var(--radius-sm);font-family:var(--font-mono);color:var(--accent-gold);background:#0000004d;border:1px solid #0000;align-items:center;gap:.5rem;padding:.5rem;font-size:.8rem;display:flex}.variable-chip:hover{border-color:var(--accent-gold);background:#fbbf241a}.error-box,.success-box{border-radius:12px;margin-bottom:1rem;padding:.8rem .9rem}.error-box{color:#fecaca;background:#7f1d1d40;border:1px solid #f8717140}.success-box{color:#bbf7d0;background:#14532d59;border:1px solid #22c55e40}.modal-backdrop{z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#000c;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.toggle-container{border-radius:var(--radius-md);border:1px solid var(--border-glass);cursor:pointer;background:#0f172a99;align-items:center;gap:.75rem;padding:.75rem;transition:all .2s;display:flex}.toggle-container:hover{background:#0f172acc}.toggle-label{color:var(--text-primary);font-size:.9rem;font-weight:600}.toggle-container input[type=checkbox]{display:none}.toggle-switch{background:#94a3b899;border-radius:999px;flex-shrink:0;width:46px;height:24px;transition:background .25s;position:relative}.toggle-slider{background:#fff;border-radius:50%;width:18px;height:18px;transition:transform .25s;position:absolute;top:3px;left:3px;box-shadow:0 2px 4px #0006}.toggle-hint{color:var(--text-muted);font-size:.8rem}.toggle-container input[type=checkbox]:checked+.toggle-switch{background:var(--accent-mc)}.toggle-container input[type=checkbox]:checked+.toggle-switch .toggle-slider{transform:translate(22px)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#0003}::-webkit-scrollbar-thumb{background:#fff3;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#ffffff4d}@media (width<=1200px){.card-console,.card-queue{grid-column:span 12;height:auto}.console{flex:unset;height:400px}.queue-list{max-height:320px}}@media (width<=1024px){.stats-row .stat-item{flex:calc(50% - 1rem);max-width:none}}@media (width<=768px){.card-console,.card-queue{grid-column:span 12}.app-container{grid-template-rows:auto 1fr;grid-template-columns:1fr}.sidebar{border-right:none;border-bottom:1px solid var(--border-glass);height:auto;padding:1rem;position:static}.main-content{height:auto;padding:1rem}.global-toolbar{flex-direction:column;align-items:stretch;margin:0 0 1.5rem;padding:1rem;position:static}.global-toolbar-left,.global-toolbar-right,.header,.header-actions,.card-header{flex-direction:column;align-items:stretch}.dashboard-grid{gap:1rem}.card-medium,.card-small,.card-large,.card-full{grid-column:span 12}.stats-row,.input-row{grid-template-columns:1fr}.actions-grid{grid-template-columns:1fr!important}.stats-row .stat-item{flex:100%;max-width:none}.queue-actions{max-width:none}.queue-summary{flex-direction:column;align-items:flex-start}}body.overlay-public-route{overflow:hidden;background:0 0!important}body.overlay-public-route:before{content:none!important;display:none!important}body.overlay-public-route #root{background:0 0!important}.status-indicator.processing{color:var(--warning)}.status-indicator.pending{color:var(--accent-gold)}.status-indicator.idle{color:var(--text-muted)}.overlay-editor-page{flex-direction:column;gap:.75rem;height:calc(100vh - 140px);min-height:0;display:flex;overflow:hidden}.overlay-editor-toolbar{border:1px solid var(--border-glass);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#0f172af5;flex:none;justify-content:flex-start;align-items:center;gap:.55rem;padding:.6rem .9rem;display:flex;overflow-x:auto}.overlay-toolbar-group{flex-shrink:0;align-items:center;gap:.35rem;min-width:0;display:flex}.overlay-toolbar-group:nth-child(5){margin-left:auto}.overlay-toolbar-center{flex:1;justify-content:center;min-width:280px}.overlay-toolbar-meta{color:var(--text-secondary);align-items:center;gap:.45rem;font-size:.8rem;display:flex}.toolbar-separator{background:var(--border-glass);width:1px;height:24px}.overlay-name-input{width:160px}.overlay-name-input-small{width:130px}.overlay-preset-select{width:155px}.overlay-preset-select-small{width:85px}.overlay-editor-layout{flex:auto;grid-template-columns:420px minmax(0,1fr) 260px;gap:.75rem;min-height:0;display:grid;overflow:hidden}.overlay-left-sidebar,.overlay-right-sidebar,.overlay-canvas-stage{height:100%;min-height:0}.overlay-left-sidebar,.overlay-right-sidebar{border:1px solid var(--border-glass);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#0f172acc;overflow:hidden}.overlay-left-sidebar{grid-template-columns:1fr 1fr;display:grid}.overlay-left-column{flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden}.overlay-left-column+.overlay-left-column{border-left:1px solid var(--border-glass)}.overlay-panel-header{border-bottom:1px solid var(--border-glass);flex-direction:column;flex:none;gap:.55rem;padding:.75rem;display:flex}.overlay-panel-title{color:var(--text-primary);align-items:center;gap:.5rem;font-size:.92rem;font-weight:700;display:flex}.overlay-mini-search{padding:.5rem .7rem;font-size:.78rem}.overlay-library-scroll{flex:auto;min-height:0;padding:.5rem;overflow:hidden auto}.overlay-library-list{flex-direction:column;gap:.4rem;display:flex}.overlay-library-item{border:1px solid var(--border-glass);border-radius:var(--radius-sm);width:100%;color:var(--text-primary);cursor:pointer;text-align:left;background:#ffffff08;align-items:center;gap:.65rem;min-height:68px;padding:.5rem;transition:all .2s;display:flex}.overlay-library-item:hover{background:#06b6d414;border-color:#06b6d459;transform:translateY(-1px)}.overlay-library-item img{object-fit:contain;background:#00000038;border-radius:8px;flex-shrink:0;width:46px;height:46px}.overlay-library-item-body{flex-direction:column;flex:1;gap:.15rem;min-width:0;display:flex}.overlay-library-item-title{color:var(--text-primary);word-break:break-word;font-size:.78rem;line-height:1.15}.overlay-library-item-sub{color:var(--text-muted);font-size:.68rem}.overlay-canvas-stage{border:1px solid var(--border-glass);border-radius:var(--radius-lg);background:#0f172a73;flex-direction:column;min-width:0;display:flex;overflow:hidden}.overlay-canvas-topmeta{border-bottom:1px solid var(--border-glass);color:var(--text-secondary);flex-wrap:wrap;flex:none;align-items:center;gap:.55rem;padding:.7rem .9rem;font-size:.78rem;display:flex}.overlay-canvas-viewport{overscroll-behavior:none;cursor:default;background:radial-gradient(circle at top,#ffffff0a,#0000 35%),#050a14e0;flex:auto;min-height:0;padding:.85rem;position:relative;overflow:auto}.overlay-canvas-viewport::-webkit-scrollbar{width:0;height:0}.overlay-canvas-viewport::-webkit-scrollbar-track{background:0 0}.overlay-canvas-viewport::-webkit-scrollbar-thumb{background:0 0}.overlay-canvas-viewport{-ms-overflow-style:none;scrollbar-width:none}.overlay-canvas-viewport.hand-mode{cursor:grab}.overlay-canvas-viewport.hand-mode.dragging{cursor:grabbing}.overlay-canvas-viewport.grid-on{background-image:linear-gradient(#ffffff09 1px,#0000 1px),linear-gradient(90deg,#ffffff09 1px,#0000 1px),radial-gradient(circle at top,#ffffff0a,#0000 35%);background-position:0 0,0 0,50%;background-size:24px 24px,24px 24px,auto}.overlay-canvas-workspace{position:relative}.overlay-canvas-world{transform-origin:0 0;background-color:#0000;background-image:linear-gradient(45deg,#ffffff08 25%,#0000 25%),linear-gradient(-45deg,#ffffff08 25%,#0000 25%),linear-gradient(45deg,#0000 75%,#ffffff08 75%),linear-gradient(-45deg,#0000 75%,#ffffff08 75%);background-position:0 0,0 11px,11px -11px,-11px 0;background-repeat:repeat,repeat,repeat,repeat;background-size:22px 22px;background-attachment:scroll,scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box,border-box;border:2px solid #ffffff1f;position:relative;overflow:visible;box-shadow:0 20px 60px #00000073}.overlay-dom-node{-webkit-user-select:none;user-select:none;cursor:move;box-sizing:border-box;position:absolute}.overlay-dom-node.selected{outline-offset:2px;outline:2px solid #06b6d4e6}.overlay-node-text,.overlay-node-rect,.overlay-node-media{pointer-events:none;box-sizing:border-box;width:100%;height:100%}.overlay-node-text{white-space:pre-wrap;word-break:break-word;align-items:center;padding:6px 8px;line-height:1.2;display:flex;overflow:hidden}.overlay-node-rect,.overlay-node-media{display:block}.resize-handle{z-index:4;background:#06b6d4;border:2px solid #fff;border-radius:999px;width:12px;height:12px;position:absolute}.resize-nw{cursor:nwse-resize;top:-6px;left:-6px}.resize-n{cursor:ns-resize;top:-6px;left:calc(50% - 6px)}.resize-ne{cursor:nesw-resize;top:-6px;right:-6px}.resize-e{cursor:ew-resize;top:calc(50% - 6px);right:-6px}.resize-se{cursor:nwse-resize;bottom:-6px;right:-6px}.resize-s{cursor:ns-resize;bottom:-6px;left:calc(50% - 6px)}.resize-sw{cursor:nesw-resize;bottom:-6px;left:-6px}.resize-w{cursor:ew-resize;top:calc(50% - 6px);left:-6px}.rotate-handle-line{z-index:3;background:#06b6d4f2;width:2px;height:20px;position:absolute;top:-28px;left:calc(50% - 1px)}.rotate-handle{cursor:grab;z-index:4;background:#f59e0b;border:2px solid #fff;border-radius:999px;width:14px;height:14px;position:absolute;top:-38px;left:calc(50% - 7px)}.overlay-right-sidebar{flex-direction:column;display:flex}.overlay-layer-toolbar{border-bottom:1px solid var(--border-glass);flex:none;align-items:center;gap:.4rem;padding:.65rem;display:flex}.overlay-layers-tree{flex:auto;min-height:0;padding:.45rem;overflow-y:auto}.overlay-layer-row{width:100%;color:var(--text-primary);border-radius:var(--radius-sm);cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;justify-content:space-between;align-items:center;gap:.65rem;margin-bottom:.25rem;padding:.5rem .6rem;font-size:.82rem;transition:all .15s;display:flex}.overlay-layer-row:hover{background:#ffffff0a}.overlay-layer-row.selected{background:#06b6d41a;border-color:#06b6d459}.overlay-layer-row-left{align-items:center;gap:.55rem;min-width:0;display:flex}.overlay-layer-name{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.overlay-layer-visibility{opacity:.75;flex-shrink:0}.overlay-floating-properties{border:1px solid var(--border-glass);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);z-index:50;background:#0f172afa;flex-direction:column;width:300px;max-height:80vh;display:flex;position:fixed;overflow:hidden;box-shadow:0 20px 60px #00000073}.overlay-floating-header{border-bottom:1px solid var(--border-glass);cursor:grab;-webkit-user-select:none;user-select:none;background:#ffffff08;justify-content:space-between;align-items:center;padding:.7rem .85rem;display:flex}.overlay-floating-body{flex:auto;min-height:0;padding:.8rem;overflow:hidden auto}.overlay-prop-grid{grid-template-columns:1fr 1fr;gap:.7rem;display:grid}.overlay-prop-full{grid-column:1/-1}.overlay-prop-actions{flex-wrap:wrap;gap:.55rem;display:flex}.anim-breathe{animation-name:overlayBreathe;animation-timing-function:ease-in-out;animation-iteration-count:infinite}.anim-float{animation-name:overlayFloat;animation-timing-function:ease-in-out;animation-iteration-count:infinite}.anim-shake{animation-name:overlayShake;animation-timing-function:ease-in-out;animation-iteration-count:infinite}.anim-flash{animation-name:overlayFlash;animation-timing-function:ease-in-out;animation-iteration-count:infinite}@keyframes overlayBreathe{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}@keyframes overlayFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes overlayShake{0%,to{transform:translate(0)}25%{transform:translate(-4px)rotate(-1deg)}75%{transform:translate(4px)rotate(1deg)}}@keyframes overlayFlash{0%,to{opacity:1}50%{opacity:.45}}@media (width<=1500px){.overlay-editor-layout{grid-template-columns:360px minmax(0,1fr) 240px}}@media (width<=1200px){.overlay-editor-page{height:auto;min-height:calc(100vh - 140px);overflow:visible}.overlay-editor-layout{grid-template-columns:1fr;overflow:visible}.overlay-left-sidebar,.overlay-right-sidebar,.overlay-canvas-stage{height:auto;min-height:320px}.overlay-left-sidebar{max-height:420px}.overlay-right-sidebar{max-height:320px}.overlay-floating-properties{width:100%;max-height:none;margin-top:1rem;position:static}}@media (width<=768px){.overlay-left-sidebar{grid-template-columns:1fr}.overlay-left-column+.overlay-left-column{border-left:none;border-top:1px solid var(--border-glass)}.overlay-toolbar-center{justify-content:flex-start}.overlay-name-input{width:140px}.overlay-prop-grid{grid-template-columns:1fr}}
