#splash{position:fixed;top:0;right:0;bottom:0;left:0;background:#000;display:flex;align-items:center;justify-content:center;z-index:200;transition:opacity .6s ease}#splash.hiding{opacity:0;pointer-events:none}#splash-content{display:flex;flex-direction:column;align-items:center;gap:16px;font-family:Courier New,Courier,monospace}#splash-title{font-size:clamp(40px,10vw,96px);font-weight:700;letter-spacing:.3em;color:#ffffffe6;text-shadow:0 0 40px rgba(80,160,255,.6),0 2px 12px rgba(0,0,0,.9)}#splash-nav{display:flex;flex-direction:column;align-items:center;gap:12px;margin-top:32px}#go-swimming{background:none;border:1px solid rgba(80,160,255,.45);color:#50a0ffd9;font-family:Courier New,Courier,monospace;font-size:clamp(13px,2vw,17px);letter-spacing:.2em;padding:12px 28px;border-radius:4px;cursor:pointer;transition:color .2s,border-color .2s,box-shadow .2s,background .2s}#go-swimming:hover{color:#50a0ff;border-color:#50a0ffcc;background:#50a0ff14;box-shadow:0 0 20px #50a0ff40}#go-swimming:disabled{opacity:.4;cursor:default;pointer-events:none}#splash-loader{font-family:Courier New,Courier,monospace;font-size:clamp(11px,1.5vw,13px);letter-spacing:.25em;color:#50a0ff80;min-height:1.4em;margin-top:4px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body{width:100%;height:100%;overflow:hidden;background:#000}canvas{display:block;width:100%;height:100%}#title{position:absolute;top:clamp(36px,7vh,80px);left:50%;transform:translate(-50%);font-family:Courier New,Courier,monospace;font-size:clamp(22px,4.5vw,54px);font-weight:700;letter-spacing:.3em;color:#ffffffbf;text-shadow:0 0 30px rgba(80,160,255,.5),0 2px 8px rgba(0,0,0,.85);pointer-events:none;z-index:10;white-space:nowrap;transition:color 4s ease,text-shadow 4s ease}#drop-icon{position:fixed;top:20px;left:20px;font-family:Courier New,Courier,monospace;font-size:24px;color:#ffffffbf;text-shadow:0 0 30px rgba(80,160,255,.5),0 2px 8px rgba(0,0,0,.85);cursor:pointer;z-index:100;transition:color .2s ease,text-shadow .2s ease,transform .15s ease;-webkit-user-select:none;user-select:none;background:none;border:none;padding:0;width:auto;height:auto;line-height:1}#drop-icon:hover{color:#fff;text-shadow:0 0 40px rgba(80,160,255,.7),0 2px 8px rgba(0,0,0,.85);transform:scale(1.1)}#drop-icon:active{transform:scale(.95)}#tuning-icon{position:fixed;top:20px;right:20px;width:26px;height:26px;display:flex;align-items:center;justify-content:center;color:#ffffffbf;filter:drop-shadow(0 0 12px rgba(80,160,255,.5)) drop-shadow(0 2px 6px rgba(0,0,0,.85));cursor:pointer;z-index:100;transition:color .2s ease,filter .2s ease,transform .3s ease;-webkit-user-select:none;user-select:none}#tuning-icon svg{width:100%;height:100%;fill:currentColor}#tuning-icon:hover,#tuning-icon.active{color:#fff;filter:drop-shadow(0 0 16px rgba(80,160,255,.8)) drop-shadow(0 2px 6px rgba(0,0,0,.85))}#tuning-icon.active{transform:rotate(30deg)}#tuning-panel{position:fixed;top:0;right:0;width:min(420px,92vw);height:100%;background:#0a0a12eb;border-left:1px solid rgba(80,160,255,.3);box-shadow:-10px 0 40px #00000080;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transform:translate(100%);opacity:0;pointer-events:none;transition:transform .25s ease,opacity .25s ease;z-index:99;overflow-y:auto;font-family:Courier New,Courier,monospace;color:#ffffffd9}#tuning-panel.open{transform:translate(0);opacity:1;pointer-events:auto}#tuning-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px 96px 12px 16px;border-bottom:1px solid rgba(80,160,255,.2);position:sticky;top:0;background:#0a0a12eb;z-index:2}#tuning-header span{font-size:15px;letter-spacing:.15em;color:#50a0ffe6;text-shadow:0 0 10px rgba(80,160,255,.3)}#tuning-header-actions{display:flex;align-items:center;gap:8px}#tuning-reset-all,#tuning-calm-pool{background:none;border:1px solid rgba(255,180,80,.4);color:#ffb450d9;font-family:inherit;font-size:10px;letter-spacing:.1em;padding:5px 10px;border-radius:4px;cursor:pointer;transition:color .2s,border-color .2s,background .2s}#tuning-reset-all:hover{color:#ffb450;border-color:#ffb450cc;background:#ffb4501a}#tuning-calm-pool{border-color:#50a0ff66;color:#50a0ffd9}#tuning-calm-pool:hover{color:#50a0ff;border-color:#50a0ffcc;background:#50a0ff1a}#tuning-tabs{display:flex;gap:6px;padding:10px 12px;border-bottom:1px solid rgba(80,160,255,.2);position:sticky;top:47px;background:#0a0a12f0;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:1;overflow-x:auto;scrollbar-width:none}#tuning-tabs::-webkit-scrollbar{display:none}.tune-tab{flex:1 1 auto;min-width:62px;background:none;border:1px solid rgba(80,160,255,.22);color:#a0c8ffb3;font-family:inherit;font-size:11px;letter-spacing:.14em;text-transform:uppercase;padding:8px 6px;border-radius:7px;cursor:pointer;white-space:nowrap;transition:color .2s,border-color .2s,background .2s,box-shadow .2s}.tune-tab:hover{color:#c8e1fff2;border-color:#50a0ff73;background:#50a0ff0f}.tune-tab.active{color:#ffcd82;border-color:#ffb45099;background:#ffb4501a;box-shadow:0 0 14px #ffb4502e}.tune-tab-panel{display:none}.tune-tab-panel.active{display:block}.tune-group{border-bottom:1px solid rgba(80,160,255,.12)}.tune-group:last-child{border-bottom:none}.tune-group-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .15s ease}.tune-group-header:hover{background:#50a0ff0d}.tune-group-label{display:flex;align-items:center;gap:8px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#50a0ffbf}.tune-group-label:before{content:"";width:5px;height:5px;border-right:1.5px solid rgba(80,160,255,.6);border-bottom:1.5px solid rgba(80,160,255,.6);transform:rotate(45deg);transition:transform .2s ease}.tune-group.collapsed .tune-group-label:before{transform:rotate(-45deg)}.tune-group-reset{background:none;border:none;color:#50a0ff80;font-size:13px;cursor:pointer;padding:2px 6px;transition:color .2s}.tune-group-reset:hover{color:#50a0fff2}.tune-group-body{display:grid;grid-template-rows:1fr;transition:grid-template-rows .25s ease}.tune-group.collapsed .tune-group-body{grid-template-rows:0fr}.tune-group-body-inner{min-height:0;overflow:hidden;display:flex;flex-direction:column;gap:10px;padding:0 16px 16px}.tune-group.collapsed .tune-group-body-inner{padding-top:0;padding-bottom:0}.tune-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px;font-size:12px}.tune-hint{flex:0 0 auto;width:14px;height:14px;border-radius:50%;border:1px solid rgba(80,160,255,.4);color:#50a0ffb3;font-size:10px;line-height:13px;text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s,border-color .2s,background .2s}.tune-hint:hover,.tune-hint:focus{color:#50a0ff;border-color:#50a0ffe6;background:#50a0ff1f;outline:none}.tune-hint-text{flex:1 1 100%;max-height:0;opacity:0;overflow:hidden;font-size:11px;line-height:1.4;color:#ffffff8c;transition:max-height .2s ease,opacity .2s ease,margin-top .2s ease}.tune-hint-text.show{max-height:120px;opacity:1;margin-top:2px}.tune-row-slider label,.tune-row-meter label{flex:0 0 132px;color:#ffffffb3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.tune-row-select label{flex:1 1 100%;color:#ffffffb3}.tune-row-slider input[type=range]{-webkit-appearance:none;-moz-appearance:none;appearance:none;flex:1;height:3px;background:#50a0ff2e;border-radius:2px;outline:none;cursor:pointer}.tune-row-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:12px;height:12px;border-radius:50%;background:#50a0ffe6;cursor:pointer;box-shadow:0 0 8px #50a0ff80}.tune-row-slider input[type=range]::-moz-range-thumb{width:12px;height:12px;border:none;border-radius:50%;background:#50a0ffe6;cursor:pointer}.tune-value{flex:0 0 56px;text-align:right;color:#fff9;font-size:11px}.tune-toggle,.tune-hold,.tune-button{flex:1;background:none;border:1px solid rgba(80,160,255,.3);color:#50a0ffcc;font-family:inherit;font-size:11px;letter-spacing:.06em;padding:7px 10px;border-radius:6px;cursor:pointer;transition:color .2s,border-color .2s,background .2s,box-shadow .2s}.tune-toggle:hover,.tune-hold:hover,.tune-button:hover{color:#50a0ff;border-color:#50a0ff99;background:#50a0ff14}.tune-toggle.active,.tune-hold.active{color:#78beff;border-color:#50a0ffe6;background:#50a0ff24;box-shadow:0 0 14px #50a0ff4d}.tune-select{display:flex;flex-wrap:wrap;gap:4px;flex:1}.tune-select-option{background:none;border:1px solid rgba(80,160,255,.3);color:#50a0ffcc;font-family:inherit;font-size:10px;letter-spacing:.06em;padding:4px 8px;border-radius:6px;cursor:pointer;transition:color .2s,border-color .2s,background .2s,box-shadow .2s}.tune-select-option:hover{color:#50a0ff;border-color:#50a0ff99;background:#50a0ff14}.tune-select-option.active{color:#78beff;border-color:#50a0ffe6;background:#50a0ff24;box-shadow:0 0 14px #50a0ff4d}.tune-meter{flex:1;height:4px;background:#50a0ff24;border-radius:2px;overflow:hidden}.tune-meter-fill{height:100%;background:#50a0ffbf;border-radius:2px;transition:width .1s linear}#perf-stats{position:fixed;bottom:24px;left:24px;display:none;flex-direction:column;gap:2px;background:#00000073;border:1px solid rgba(80,160,255,.25);border-radius:6px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:8px 12px;font-family:Courier New,Courier,monospace;font-size:11px;color:#50a0ffd9;text-shadow:0 0 8px rgba(80,160,255,.4);z-index:100;pointer-events:none;-webkit-user-select:none;user-select:none}.perf-stats-row{display:flex;gap:10px;justify-content:space-between}.perf-stats-label{color:#50a0ff8c;letter-spacing:.1em}.perf-stats-value{min-width:3.5em;text-align:right}#portal-nav{position:fixed;bottom:24px;right:24px;display:flex;gap:8px;z-index:210}.portal-link{display:inline-block;background:#00000073;border:1px solid rgba(80,160,255,.25);color:#50a0ffb3;font-family:Courier New,Courier,monospace;font-size:11px;letter-spacing:.2em;text-decoration:none;padding:6px 14px;border-radius:20px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);transition:color .2s,border-color .2s,background .2s,box-shadow .2s}.portal-link:hover{color:#50a0ff;border-color:#50a0ff99;background:#50a0ff14;box-shadow:0 0 16px #50a0ff33}
