.modal-overlay{position:fixed;inset:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1200;animation:fadeIn .2s ease}.modal-panel{width:min(92vw,420px);background:#111;border:1px solid #333;border-radius:10px;padding:16px;color:#fff;box-shadow:0 10px 30px #00000059;transform:scale(.98);opacity:0;animation:popIn .22s ease forwards}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.flash-toast{position:fixed;top:16px;left:50%;transform:translate(-50%);background:#28a745f2;color:#fff;border-radius:8px;font-size:14px;box-shadow:0 6px 20px #00000040;z-index:1300;animation:slideDownFade .28s ease;display:inline-block;max-width:90vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:10px 18px}.flash-toast.error{background:#c0392bf2}@keyframes slideDownFade{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}button:disabled{opacity:.5;cursor:not-allowed!important}button:disabled:hover{filter:none}.login-hint{position:fixed;top:12px;left:50%;transform:translate(-50%);z-index:1100}.login-hint .hint-box{background:#0009;color:#fff;padding:8px 12px;border-radius:8px;font-size:13px;border:1px solid rgba(255,255,255,.12);-webkit-backdrop-filter:saturate(120%) blur(2px);backdrop-filter:saturate(120%) blur(2px)}.app{display:flex;height:100vh;overflow:hidden}.sidebar{width:280px;background:#111;color:#fff;padding:16px;font-family:sans-serif;font-size:14px;box-shadow:0 4px 16px #00000040}.sidebar input,.sidebar button{display:block;margin-top:8px}.panel{margin-top:20px;padding:10px;background:#222;border-radius:6px}.viewer{flex:1;background:#000}.empty{color:#fff;display:flex;justify-content:center;align-items:center;height:100%;font-family:sans-serif}.sp-overlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;z-index:9999}.sp-panel{width:520px;max-width:94%;background:#fff;border-radius:8px;box-shadow:0 6px 30px #0003;padding:12px}.sp-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.sp-header strong{color:#000}.sp-close{background:transparent;border:none;font-size:20px;cursor:pointer}.sp-loading,.sp-error,.sp-empty{padding:12px;color:#555}.sp-error-demo-limit{color:#c53030}.sp-list{max-height:60vh;overflow:auto}.sp-item{display:flex;justify-content:space-between;align-items:center;padding:8px;border-bottom:1px solid #eee}.sp-item-left{max-width:74%}.sp-token{font-size:13px;color:#1a202c;word-break:break-all}.sp-meta{font-size:12px;color:#666;margin-top:4px}.sp-project{font-weight:700;font-size:13px;color:#111;margin-bottom:6px}.sp-actions button{margin-left:8px;padding:6px 8px;border-radius:6px;border:1px solid #ccc;background:#f7fafc;cursor:pointer}.sp-actions .sp-copy{background:#2563eb;border-color:#2563eb;color:#fff;padding:6px 12px}.sp-actions .sp-copy:hover{background:#1e40af}.sp-actions .sp-copy:active{background:#1e3aa8}.sp-actions .sp-copy.copied{background:#16a34a!important;border-color:#16a34a!important;color:#fff!important;cursor:default}.sp-actions .sp-copy.copied:hover{background:#15803d!important}.sp-delete{background:#c53030!important;border-color:#c53030!important;color:#fff!important;padding:6px 12px}.sp-delete:hover,.sp-delete:active,.sp-delete:focus{background:#c53030!important;border-color:#c53030!important;color:#fff!important}.sp-new{background:linear-gradient(90deg,#fffaebe6,#fff9)}.sp-footer{display:flex;justify-content:flex-end;margin-top:10px}.sp-footer button{background:#c53030!important;border:1px solid #c53030!important;color:#fff!important;padding:8px 14px;border-radius:6px;cursor:pointer}.sp-footer button:hover,.sp-footer button:active,.sp-footer button:focus{background:#c53030!important;border-color:#c53030!important;color:#fff!important}.sp-footer .sp-create{background:#16a34a!important;border:1px solid #16a34a!important;color:#fff!important;margin-right:8px}.sp-footer .sp-create:hover,.sp-footer .sp-create:active,.sp-footer .sp-create:focus{background:#15803d!important;border-color:#15803d!important;color:#fff!important}.sp-footer .sp-create:disabled{opacity:.6;pointer-events:none}.purchase-plans__cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.purchase-plan-card{min-height:280px}.purchase-plan-card h3{margin:0;color:#fff;font-size:18px}.purchase-plan-card ul{margin:12px 0 0;padding-left:20px;color:#cbd5e1;font-size:13px;line-height:1.7}.purchase-plan-card .price{margin-top:18px;display:flex;align-items:baseline;gap:8px}.purchase-plans__dialog{position:relative;width:min(1100px,92vw);max-height:85vh;overflow:auto;border-radius:20px;background:#141416eb;box-shadow:0 20px 60px #00000073;border:1px solid rgba(255,255,255,.08);padding:28px}@media(max-width:900px){.purchase-plans__cards{grid-template-columns:repeat(2,minmax(0,1fr))}.purchase-plan-card{min-height:240px}.purchase-plans__dialog{padding:18px}.purchase-plan-card ul{font-size:14px}}@media(max-width:600px){.purchase-plans__cards{grid-template-columns:1fr}.purchase-plan-card{min-height:220px}.purchase-plans__dialog{padding:12px}.purchase-plan-card h3{font-size:16px}.purchase-plan-card ul{font-size:14px}.purchase-plan-card button{font-size:15px;padding:10px 12px}}.purchase-plan-card,.purchase-plan-card *{word-wrap:break-word;overflow-wrap:break-word}.purchase-plan-card ul li{margin-bottom:6px}*{box-sizing:border-box}html,body,#root{margin:0;padding:0;width:100%;height:100%;background:#000;overflow:hidden;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,system-ui,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input[type=file]{touch-action:manipulation;-webkit-tap-highlight-color:transparent}input[type=file]{width:100%;padding:8px;font-size:14px}img{max-width:100%;height:auto}@media(max-width:768px){*{-webkit-overflow-scrolling:touch}input[type=file]{font-size:13px;padding:10px}}.sidebar-icon{width:20px;height:20px;display:inline-block;vertical-align:middle;object-fit:contain;flex-shrink:0}#leftSidebar{scrollbar-width:thin;scrollbar-color:#4b5563 rgba(17,17,17,.6)}#leftSidebar::-webkit-scrollbar{width:8px}#leftSidebar::-webkit-scrollbar-track{background:transparent}#leftSidebar::-webkit-scrollbar-thumb{background:#4b5563;border-radius:10px;border:2px solid rgba(17,17,17,.6);background-clip:padding-box}#leftSidebar::-webkit-scrollbar-thumb:hover{background:#374151}.modal-body,.sp-list{scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.25) transparent}.modal-body::-webkit-scrollbar,.sp-list::-webkit-scrollbar{width:8px}.modal-body::-webkit-scrollbar-track,.sp-list::-webkit-scrollbar-track{background:transparent}.modal-body::-webkit-scrollbar-thumb,.sp-list::-webkit-scrollbar-thumb{background:#0000002e;border-radius:8px;border:2px solid transparent;background-clip:padding-box}.modal-body::-webkit-scrollbar-thumb:hover,.sp-list::-webkit-scrollbar-thumb:hover{background:#00000040}#appRoot[data-logged-in=false] button:not(.preview-allowed),#appRoot[data-logged-in=false] input[type=button]:not(.preview-allowed),#appRoot[data-logged-in=false] .btn:not(.preview-allowed){pointer-events:none;opacity:.45;filter:grayscale(100%);cursor:not-allowed}
