:root{color-scheme:dark;--bloom-bg: #0a0515;--bloom-surface: rgba(10, 5, 21, .85);--bloom-accent: #6b4c9a;--bloom-accent-light: #8899cc;--bloom-text: rgba(255, 255, 255, .85);--bloom-text-muted: rgba(255, 255, 255, .6);--bloom-border: rgba(107, 76, 154, .3);--bloom-error: rgba(180, 70, 70, .92);--bloom-radius-outer: 8px;--bloom-radius-inner: 4px;--bloom-radius-inline: 3px;--bloom-input-bg: hsla(0, 0%, 12%, .8);--bloom-scrollbar: hsla(0, 0%, 30%, .7);--bloom-overlay: rgba(0, 0, 0, .3);--bloom-focus: rgba(107, 76, 154, .8);--bloom-focus-ring: rgba(107, 76, 154, .25);--bloom-surface-elevated: hsla(0, 0%, 15%, .4);--bloom-border-subtle: hsla(0, 0%, 25%, .3);--z-panel: 100;--z-toolbar: 200;--z-toast: 1000;--z-modal: 2000;--z-tooltip: 3000;--z-skip: 4000;--tp-container-unit-size: 42px;--tp-container-horizontal-padding: 12px;--tp-container-vertical-padding: 12px;--tp-container-unit-spacing: 9px;--tp-blade-border-radius: var(--bloom-radius-inner);--tp-blade-horizontal-padding: 12px;--tp-blade-value-width: 200px;--tp-base-border-radius: var(--bloom-radius-outer);--tp-base-background-color: hsla(0, 0%, 8%, .96);--tp-base-shadow-color: hsla(0, 0%, 0%, .3);--tp-button-background-color: hsla(0, 0%, 25%, 1);--tp-button-background-color-active: hsla(0, 0%, 42%, 1);--tp-button-background-color-focus: hsla(0, 0%, 30%, 1);--tp-button-background-color-hover: hsla(0, 0%, 35%, 1);--tp-button-foreground-color: var(--bloom-text);--tp-container-background-color: hsla(0, 0%, 12%, .5);--tp-container-background-color-active: hsla(0, 0%, 22%, .6);--tp-container-background-color-focus: hsla(0, 0%, 18%, .6);--tp-container-background-color-hover: hsla(0, 0%, 22%, .7);--tp-container-foreground-color: hsla(0, 0%, 100%, .7);--tp-groove-foreground-color: hsla(0, 0%, 40%, .7);--tp-input-background-color: var(--bloom-input-bg);--tp-input-background-color-active: hsla(0, 0%, 22%, .9);--tp-input-background-color-focus: hsla(0, 0%, 18%, .9);--tp-input-background-color-hover: hsla(0, 0%, 22%, .95);--tp-input-foreground-color: hsla(0, 0%, 100%, .8);--tp-label-foreground-color: hsla(0, 0%, 85%, .9);--tp-monitor-background-color: hsla(0, 0%, 8%, .5);--tp-monitor-foreground-color: hsla(0, 0%, 100%, .7)}.tp-dfwv,.tp-dfwv *,.tp-dfwv .tp-btnv_b,.tp-dfwv .tp-txtv_i,.tp-dfwv .tp-mntv_v,.tp-dfwv .tp-sldtxtv_t,.tp-dfwv .tp-coltxtv_m,.tp-dfwv .tp-lstv_s,.tp-dfwv input,.tp-dfwv select,.tp-dfwv button{font-family:Inter,system-ui,-apple-system,sans-serif!important}.tp-dfwv{position:fixed;top:78px;right:16px;width:420px;font-size:14px!important;scrollbar-width:thin;scrollbar-color:var(--bloom-scrollbar) hsla(0,0%,8%,.5);transform-origin:top right;transition:opacity .25s ease,transform .25s ease,visibility 0s 0s}.tp-dfwv .tp-rotv{font-size:14px!important}.tp-dfwv.panel-hidden{opacity:0;transform:scale(.9) translateY(-10px);pointer-events:none;visibility:hidden;transition:opacity .2s ease,transform .2s ease,visibility 0s .2s}.tp-lblv{max-width:100%!important;overflow:hidden!important}.tp-lblv_l{flex:0 0 var(--label-pct, 40%)!important;min-width:0!important;padding-right:6px;font-size:1.05em!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.tp-lblv_v{flex:1 1 0%!important;width:0!important;min-width:0!important;max-width:100%!important}.tp-txtv_i,.tp-mntv_v,.tp-ckbv_l{font-size:1.05em!important}.tp-fldv_b>.tp-fldv_t,.tp-rotv>.tp-rotv_b>.tp-rotv_t{font-size:1.1em!important;font-weight:700!important}.tp-panel-close{all:unset;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin-right:6px;border-radius:4px;cursor:pointer;opacity:.6;transition:opacity .15s,background .15s;flex-shrink:0}.tp-panel-close:hover{opacity:1;background:#ffffff1a}.tp-panel-close .mdi{font-size:16px}.tp-fldv_b,.tp-rotv_b{height:auto!important;padding:9px 15px!important;transition:background .15s ease;cursor:pointer}.tp-dfwv::-webkit-scrollbar{width:10px}.tp-dfwv::-webkit-scrollbar-track{background:#14141480;border-radius:5px}.tp-dfwv::-webkit-scrollbar-thumb{background:var(--bloom-scrollbar);border-radius:5px}.tp-dfwv::-webkit-scrollbar-thumb:hover{background:#666c}*{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;background:var(--bloom-bg)}canvas{display:block;cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cpath d='M17,8C8,10 5.9,16.17 3.82,21.34L5.71,22L6.66,19.7C7.14,19.87 7.64,20 8,20C19,20 22,3 22,3C21,5 14,5.25 9,6.25C4,7.25 2,11.5 2,13.5C2,15.5 3.75,17.25 3.75,17.25C7,8 17,8 17,8Z' fill='white' opacity='0.9'/%3E%3C/svg%3E") 12 12,pointer}#canvas-container{position:fixed;inset:0;z-index:0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100%;left:16px;background:var(--bloom-surface);color:var(--bloom-text);padding:8px 16px;border-radius:var(--bloom-radius-outer);font-family:Inter,sans-serif;font-size:15px;z-index:var(--z-skip);text-decoration:none}.skip-link:focus{top:16px}#toolbar{position:fixed;top:16px;left:16px;display:flex;gap:10px;z-index:var(--z-toolbar)}.icon-btn{width:52px;height:52px;background:#0a0515b3;border:1px solid var(--bloom-border);border-radius:var(--bloom-radius-outer);color:var(--bloom-text);font-size:22px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .2s,color .2s}.icon-btn:hover{background:#0a0515d9;color:#fff}.icon-btn:focus-visible{outline:2px solid var(--bloom-focus);outline-offset:2px;box-shadow:0 0 0 4px var(--bloom-focus-ring)}#panel-btn{position:fixed;top:16px;right:16px;z-index:var(--z-toolbar)}#panel-btn.active{background:#6b4c9a59;color:#fff;border-color:#6b4c9a80}#help-btn{position:fixed;bottom:16px;right:16px;z-index:var(--z-toolbar)}.tp-btn-row{display:flex!important;gap:6px;margin-top:4px;margin-bottom:8px}.tp-btn-row>.tp-lblv{flex:1 1 0%!important;min-width:0!important}.tp-btn-row .tp-lblv_l{display:none!important}.tp-btn-row .tp-lblv_v{flex:1 1 100%!important;width:100%!important}.tp-btnv_b{display:flex!important;align-items:center!important;justify-content:center!important;gap:6px;padding:10px 8px!important;font-size:1em!important;overflow:hidden!important;white-space:nowrap!important;text-overflow:ellipsis!important;min-width:0!important;transition:background .15s,transform .1s}.tp-btnv_b:active{transform:scale(.97)}.tp-btnv_b>i.mdi{flex-shrink:0;font-size:1em}.tp-fldv_c>.tp-lblv:has(.tp-btnv_b) .tp-lblv_l{display:none!important}.tp-fldv_c>.tp-lblv:has(.tp-btnv_b) .tp-lblv_v{flex:1 1 100%!important;width:100%!important}.tp-btn-danger .tp-btnv_b{background:#5d3232b3!important}.tp-btn-danger .tp-btnv_b:hover{background:#743e3ed9!important}.tp-btn-danger .tp-btnv_b:active{background:#854747e6!important}.tp-fldv_c{padding:12px 9px!important;overflow:hidden!important}.tp-lblv{margin-bottom:6px!important}.tp-rotv_c{padding:15px 12px 27px!important;overflow:hidden!important}.tp-rotv_c>.tp-fldv>.tp-fldv_b>.tp-fldv_t{font-size:1.12em!important;font-weight:700!important;text-transform:uppercase;letter-spacing:.04em}.tp-fldv .tp-fldv .tp-fldv_b>.tp-fldv_t{font-weight:500!important}.tp-fldv .tp-fldv .tp-fldv .tp-fldv_b>.tp-fldv_t{font-weight:400!important;font-size:1em!important}.tp-rotv_c>.tp-fldv>.tp-fldv_b{background:var(--bloom-surface-elevated)!important;border-bottom:1px solid var(--bloom-border-subtle)}.tp-fldv .tp-fldv_c{border-left:2px solid hsla(0,0%,40%,.5)!important;margin-left:4px!important}.tp-fldv .tp-fldv .tp-fldv_c{border-left-color:#59595999!important}.tp-sprv{margin:8px 0!important;border-color:var(--bloom-border)!important}.tp-dfwv *:focus-visible{outline:2px solid var(--bloom-focus)!important;outline-offset:1px}.tp-sldv_t:before{height:6px;border-radius:3px}.tp-sldv_k:before{height:6px;border-radius:3px}.tp-sldv_k:after{width:18px;height:18px;border-radius:9px;top:-5px!important;box-shadow:0 1px 3px #0000004d}.tp-sldtxtv_t{flex:0 0 56px!important;font-size:1em!important}.tp-colpv{border-radius:var(--bloom-radius-inner)!important}.tp-coltxtv_m{font-size:.92em!important}.tp-rotv>.tp-rotv_b{position:sticky!important;top:0;z-index:10;background:#141414fa!important}.tp-dfwv.simple-mode [data-mode=advanced]{display:none!important}[data-section-disabled=true] .tp-lblv{opacity:.45;pointer-events:none}[data-section-disabled=true]>.tp-lblv:first-child{opacity:1;pointer-events:auto}.tp-search-input{width:100%;padding:8px 10px;background:var(--bloom-input-bg);border:1px solid var(--bloom-border);border-radius:var(--bloom-radius-inner);color:var(--bloom-text);font-family:Inter,system-ui,-apple-system,sans-serif;font-size:1em;outline:none;margin-top:2px;margin-bottom:10px}.tp-search-input:focus{border-color:var(--bloom-focus)}.tp-search-input::placeholder{color:#ffffff80}[data-search-hidden=true]{display:none!important}.tp-tooltip{position:fixed;max-width:260px;padding:8px 12px;background:#1f1f1ff5;border:1px solid var(--bloom-border);border-radius:var(--bloom-radius-inner);color:var(--bloom-text);font-family:Inter,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.5;pointer-events:none;z-index:var(--z-tooltip);box-shadow:0 4px 12px #0006;opacity:0;transition:opacity .15s}.tp-tooltip.visible{opacity:1}#hint{position:fixed;bottom:24px;left:50%;transform:translate(-50%);color:var(--bloom-text-muted);font-family:Inter,system-ui,sans-serif;font-size:15px;letter-spacing:.03em;pointer-events:none;transition:opacity 1s}#hint.hidden{opacity:0}#attribution{position:fixed;bottom:16px;left:16px;color:var(--bloom-text-muted);font-family:Inter,system-ui,sans-serif;font-size:12px;text-decoration:none;z-index:var(--z-panel);transition:color .2s}#attribution:hover{color:var(--bloom-text)}#attribution .mdi{margin-right:4px}#onboard{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;gap:16px;background:var(--bloom-surface);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--bloom-border);border-radius:var(--bloom-radius-outer);padding:10px 20px;font-family:Inter,system-ui,sans-serif;font-size:13px;color:var(--bloom-text-muted);z-index:var(--z-panel);transition:opacity 4s ease;pointer-events:none}#onboard.hidden{display:none}#onboard.fade-out{opacity:0}.onboard-row{display:flex;align-items:center;gap:6px;white-space:nowrap}.onboard-row .mdi{font-size:16px;color:var(--bloom-text);flex-shrink:0}.onboard-row span{color:var(--bloom-text);font-weight:500}#shortcuts-panel{position:fixed;bottom:78px;right:16px;background:var(--bloom-surface);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid var(--bloom-border);border-radius:var(--bloom-radius-outer);padding:16px 20px;color:var(--bloom-text);font-family:Inter,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.6;z-index:var(--z-panel)}#shortcuts-panel.hidden{display:none}#shortcuts-panel h3{font-size:14px;text-transform:uppercase;letter-spacing:.1em;color:var(--bloom-text-muted);margin-bottom:6px}#shortcuts-panel kbd{display:inline-block;background:#c8c8c81f;border-radius:var(--bloom-radius-inline);padding:2px 6px;font-family:inherit;font-size:13px;min-width:22px;text-align:center;margin-right:6px}#error-toast{position:fixed;top:24px;left:50%;transform:translate(-50%);background:var(--bloom-error);color:#fff;padding:14px 28px;border-radius:var(--bloom-radius-outer);font-family:Inter,sans-serif;font-size:15px;font-weight:500;box-shadow:0 4px 12px #0000004d;z-index:var(--z-toast);display:none;animation:slideDown .3s ease-out;gap:12px;align-items:center}#error-toast .toast-close{background:none;border:none;color:#fff;font-size:18px;cursor:pointer;padding:0 0 0 8px;opacity:.7;line-height:1}#error-toast .toast-close:hover{opacity:1}#error-toast .toast-close:focus-visible{outline:2px solid var(--bloom-focus);outline-offset:2px}@keyframes slideDown{0%{transform:translate(-50%,-20px);opacity:0}to{transform:translate(-50%);opacity:1}}#confirm-modal{position:fixed;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:#00000080;z-index:var(--z-modal);transition:opacity .2s ease,visibility 0s 0s}#confirm-modal.hidden{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s ease,visibility 0s .2s}#confirm-modal .confirm-box{background:var(--bloom-surface);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--bloom-border);border-radius:var(--bloom-radius-outer);padding:28px 36px;text-align:center;font-family:Inter,sans-serif;color:var(--bloom-text);max-width:360px;transition:transform .2s ease}#confirm-modal.hidden .confirm-box{transform:scale(.95)}#confirm-title{font-size:18px;font-weight:500;margin-bottom:20px}.confirm-actions{display:flex;gap:12px;justify-content:center}.confirm-actions button{padding:10px 24px;border-radius:var(--bloom-radius-inner);font-family:Inter,sans-serif;font-size:15px;cursor:pointer;border:1px solid var(--bloom-border);transition:background .2s,transform .1s}.confirm-actions button:active{transform:scale(.97)}.confirm-actions button:focus-visible{outline:2px solid var(--bloom-focus);outline-offset:2px}#confirm-yes{background:#b45050d9;color:#fff;border-color:#b4505080}#confirm-yes:hover{background:#b45050f2}#confirm-no{background:#6b4c9a66;color:var(--bloom-text)}#confirm-no:hover{background:#6b4c9a99}.tp-fldv_t,.tp-rotv_t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.panel-resize-handle{position:absolute;top:0;left:-4px;width:8px;height:100%;cursor:col-resize;z-index:10;touch-action:none;display:flex;align-items:center;justify-content:center}.panel-resize-handle:before{content:"";position:absolute;left:3px;top:10%;bottom:10%;width:1px;background:#ffffff1f;transition:width .15s ease,background .15s ease}.panel-resize-handle:after{content:"";width:3px;height:16px;opacity:.3;transition:opacity .15s ease;background:radial-gradient(circle,hsla(0,0%,100%,.35) 1px,transparent 1px);background-size:3px 5px}.panel-resize-handle:hover:before,.panel-resize-handle.dragging:before{width:2px;background:#ffffff26}.panel-resize-handle:hover:after{opacity:1}.panel-resize-handle.dragging:before{background:#ffffff40}.panel-resize-handle.dragging:after{opacity:1;background:radial-gradient(circle,hsla(0,0%,100%,.5) 1px,transparent 1px);background-size:3px 5px}@media(prefers-reduced-motion:reduce){.tp-dfwv,.tp-tooltip,.tp-btnv_b,.icon-btn,#error-toast,.tp-fldv_b,.tp-rotv_b,#confirm-modal,#confirm-modal .confirm-box,#attribution,#simple-panel{transition:none!important;animation:none!important}#onboard{transition:opacity 1s ease!important;animation:none!important}.panel-resize-handle:before,.panel-resize-handle:after{transition:none!important}}@media(max-width:600px){.tp-dfwv{width:100vw!important;max-width:100vw!important;right:0!important;border-radius:0!important}#toolbar{flex-wrap:wrap;max-width:calc(100vw - 32px)}}#simple-panel{position:fixed;top:78px;right:16px;width:260px;background:var(--bloom-surface);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--bloom-border);border-radius:var(--bloom-radius-outer);padding:14px 16px;font-family:Inter,system-ui,sans-serif;font-size:14px;color:var(--bloom-text);z-index:var(--z-panel);transform-origin:top right;transition:opacity .25s ease,transform .25s ease,visibility 0s 0s}#simple-panel.sp-hidden{opacity:0;transform:scale(.9) translateY(-10px);pointer-events:none;visibility:hidden;transition:opacity .2s ease,transform .2s ease,visibility 0s .2s}.sp-row{display:flex;align-items:center;gap:10px;padding:7px 0}.sp-row .mdi{font-size:18px;color:var(--bloom-text-muted);flex-shrink:0;width:20px;text-align:center}.sp-row label{flex:1;font-size:14px;color:var(--bloom-text)}.sp-row input[type=color]{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:32px;height:32px;border:2px solid var(--bloom-border);border-radius:50%;background:var(--bloom-input-bg);cursor:pointer;padding:0;transition:border-color .2s,box-shadow .2s}.sp-row input[type=color]:hover{border-color:var(--bloom-accent-light)}.sp-row input[type=color]:focus{outline:none;border-color:var(--bloom-focus);box-shadow:0 0 0 3px var(--bloom-focus-ring)}.sp-row input[type=color]::-webkit-color-swatch-wrapper{padding:0}.sp-row input[type=color]::-webkit-color-swatch{border:none;border-radius:50%}.sp-row input[type=color]::-moz-color-swatch{border:none;border-radius:50%}.sp-divider{height:1px;background:var(--bloom-border);margin:6px 0}#simple-panel select{background:#ffffff14;border:1px solid var(--bloom-border);color:inherit;padding:4px 8px;border-radius:6px;font-size:.85rem;cursor:pointer}#simple-panel select:hover{background:#ffffff24}#simple-panel input[type=range]{width:90px;accent-color:#6b4c9a;cursor:pointer}.sp-toggle{background:#ffffff14;border:1px solid var(--bloom-border);border-radius:var(--bloom-radius-inner);color:var(--bloom-text-muted);font-family:inherit;font-size:13px;padding:5px 14px;cursor:pointer;transition:background .2s,color .2s}.sp-toggle.sp-on{background:#6b4c9a59;color:var(--bloom-text);border-color:#6b4c9a80}.sp-group{padding:7px 0}.sp-group .sp-row{padding:0 0 8px}.sp-quality-selector,.sp-shape-selector{display:flex;gap:4px;width:100%}.sp-quality-selector button,.sp-shape-selector button{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:4px;background:#ffffff14;border:1px solid var(--bloom-border);border-radius:var(--bloom-radius-inner);color:var(--bloom-text-muted);font-family:inherit;font-size:12px;padding:5px 10px;cursor:pointer;transition:background .2s,color .2s}.sp-quality-selector button i,.sp-shape-selector button i{font-size:14px}.sp-quality-selector button.sp-active,.sp-shape-selector button.sp-active{background:#6b4c9a59;color:var(--bloom-text);border-color:#6b4c9a80}.sp-quality-selector button:hover,.sp-shape-selector button:hover{background:#ffffff26}.sp-report-link{display:flex;align-items:center;gap:10px;padding:8px 12px;color:var(--bloom-text-muted);text-decoration:none;font-size:13px;border-radius:var(--bloom-radius-inner);transition:color .2s,background .2s}.sp-report-link:hover{color:var(--bloom-text);background:#ffffff14}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}#simple-panel select option{background:var(--bloom-bg, #1a1a2e);color:var(--bloom-text, rgba(255, 255, 255, .85))}#profiler-overlay{position:fixed;top:80px;left:10px;z-index:9999;background:#000000d1;color:#ffffffe6;font-family:JetBrains Mono,Fira Code,SF Mono,monospace;font-size:11px;line-height:1.5;padding:10px 14px;border-radius:8px;border:1px solid rgba(255,255,255,.1);min-width:260px;pointer-events:none;backdrop-filter:blur(6px)}.prof-header{font-weight:700;font-size:12px;margin-bottom:4px;color:#89c}.prof-hint{font-weight:400;font-size:10px;opacity:.5}.prof-fps{margin-bottom:6px;color:#e0e0e0}.prof-section{margin-top:6px;margin-bottom:2px;font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#6b4c9a}.prof-row{display:flex;align-items:center;gap:6px;height:16px}.prof-label{min-width:100px;color:#ffffffa6}.prof-val{min-width:50px;text-align:right;color:#e0e0e0}.prof-stat{margin-left:auto;color:#e0e0e0}.prof-bar{display:inline-block;height:6px;background:#6b4c9a;border-radius:3px;max-width:80px}
