:root{--bg-color: #121212;--bg-color-elevated: #1e1e1e;--bg-color-hover: #2c2c2c;--text-primary: #e0e0e0;--text-secondary: #aaaaaa;--accent-color: #5ab4ac;--accent-hover: #4e9c95;--accent-active: #3e817a;--border-color: #333333;--border-radius: 12px;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}input[type=range]{-webkit-appearance:none;width:100%;background:transparent}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;height:24px;width:24px;border-radius:50%;background:var(--accent-color);cursor:pointer;margin-top:-10px;box-shadow:0 0 10px #00000080}input[type=range]::-webkit-slider-runnable-track{width:100%;height:4px;cursor:pointer;background:var(--bg-color-elevated);border-radius:2px}input[type=range]:focus::-webkit-slider-thumb{outline:2px solid var(--text-primary);outline-offset:2px}:focus-visible{outline:2px solid var(--accent-color);outline-offset:2px}:root{--bg-color: #121212;--bg-color-elevated: #1e1e1e;--bg-color-hover: #2c2c2c;--text-primary: #ffffff;--text-secondary: #999999;--accent-color: #5ab4ac;--accent-hover: #4e9c95;--border-color: #333333;--panel-border: #2a2a2a;--border-radius: 12px;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-primary);line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;padding:0;margin:0;min-height:100vh;overscroll-behavior:none}#root{display:flex;flex-direction:column;min-height:100vh}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;transition:all .2s ease}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.app-container{width:100%;max-width:600px;margin:0 auto;padding:0 12px 40px;display:flex;flex-direction:column;gap:32px}header{text-align:center}.top-play-area{display:flex;justify-content:center;align-items:center;width:100%;margin:0 auto;padding:32px 1rem;border-bottom:2px solid #222222;position:relative}.tracks-nav-btn{position:absolute;left:1rem;padding:8px;display:flex;align-items:center;justify-content:center;border:none;background:transparent;cursor:pointer;transition:opacity .2s ease}.tracks-nav-btn:hover{opacity:.8}.grid-icon-img{width:38px;height:38px;object-fit:contain}.main-content{display:flex;flex-direction:column;gap:24px}.noise-panel{border:1px solid var(--border-color);border-radius:var(--border-radius);background-color:#171717;overflow:hidden;transition:all .3s;width:100%;background-color:var(--bg-primary)}.track-btn{background-color:#555;color:#eee;border:none;font-family:inherit;font-size:.95rem;font-weight:500;padding:10px 20px;border-radius:24px;cursor:pointer;transition:all .2s ease;margin:0 1rem}.track-btn:hover{background-color:#666;transform:scale(1.02)}.track-btn:active{transform:scale(.98)}.noise-header{display:flex;align-items:center;justify-content:space-between;padding:16px}.icon-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;color:var(--text-secondary)}.icon-btn:hover{color:var(--text-primary)}.mute-toggle-btn{width:24px;height:24px;border-radius:4px;background-color:#333;border:none;cursor:pointer;transition:background-color .2s ease;padding:0;margin-left:8px;flex-shrink:0}.mute-toggle-btn:hover{background-color:#444}.mute-toggle-btn.active{background-color:var(--accent-color)}.mute-toggle-btn.active:hover{background-color:var(--accent-hover)}.track-header{display:flex;justify-content:center;align-items:center;width:100%;margin:0 auto 32px;padding:0}.track-name-input{background:transparent;border:none;color:#888;font-size:2rem;font-weight:500;width:100%;outline:none;caret-color:var(--text-primary);cursor:text;text-align:center;margin:0;letter-spacing:-.5px}.track-name-input:focus{color:var(--text-primary)}.noise-name-input{background:transparent;border:none;color:var(--text-primary);font-size:1.5rem;font-weight:400;text-align:center;width:200px;margin-left:35px;outline:none}.noise-name-input:focus{border-bottom:1px solid var(--text-secondary)}.noise-controls{padding:0 16px 16px;display:flex;flex-direction:column;gap:16px}.control-row{display:flex;align-items:center;min-height:48px}.control-label{width:90px;flex-shrink:0;font-size:.95rem;color:#eee;font-weight:400;text-align:left}.segmented-control{display:flex;width:100%;background-color:#333;border-radius:20px;padding:4px;margin-top:8px}.segment-btn{flex:1;border-radius:16px;padding:6px 16px;font-size:.85rem;font-weight:500;color:var(--text-primary);text-align:center;transition:all .2s ease}.segment-btn.active{background-color:var(--accent-color);color:#000}.sequencer-ratios-row{width:100%}.ratios-container{display:flex;width:100%;gap:4px;background-color:transparent;padding:0 4px;box-sizing:border-box}.ratio-input{flex:1 1 0%;width:0;min-width:0;height:32px;background-color:#111;border:1px solid transparent;border-radius:16px;color:var(--text-primary);text-align:center;font-size:.95rem;font-weight:500;transition:all .2s ease;margin:0;padding:0;box-sizing:border-box}.ratio-input:focus{outline:none;border-color:var(--accent-color);background-color:#1e1e1e}.colour-picker-grid{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:8px}.color-btn{background:#333;border:4px solid #333333;background-clip:padding-box;color:var(--text-primary);border-radius:20px;padding:6px 12px;font-size:.85rem;font-weight:500;min-width:0;flex-basis:calc(33.333% - 8px);text-align:center;flex-grow:1;transition:all .2s ease}.color-btn:hover{background:#444}.color-btn.active{background-color:var(--accent-color);color:#000}.keyboard-container{display:flex;flex-direction:column;gap:12px;margin-top:16px;align-items:center;width:100%}.keyboard-row{display:flex;gap:8px;justify-content:center;width:100%}.key-btn{height:36px;min-width:36px;border-radius:18px;background-color:#333;border:4px solid #333333;background-clip:padding-box;cursor:pointer;transition:background-color .2s ease}.key-btn:hover{background-color:#444}.key-btn.active{background-color:var(--accent-color)}.white-key,.black-key{width:calc((100% - 48px) / 7)}.black-keys .key-btn:nth-child(2){margin-right:calc(((100% - 48px) / 7) + 8px)}.keyboard-divider{height:2px;background-color:#333;margin:16px 0 8px;width:100%;border-radius:1px}.panel-group{border:1px solid var(--border-color);background-color:#1e1e1e;border-radius:var(--border-radius);padding:12px 16px 16px;display:flex;flex-direction:column}.panel-title{font-size:.8rem;font-weight:600;letter-spacing:1px;color:var(--text-secondary);text-transform:uppercase;margin-top:2px;margin-bottom:4px;cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .2s ease}.panel-title:hover{color:var(--text-primary)}.panel-group.collapsed .panel-title{margin-bottom:0}.chord-input{width:100%;height:36px;background-color:#333;border:2px solid transparent;border-radius:18px;color:var(--text-primary);text-align:center;font-size:.95rem;font-weight:500;transition:border-color .2s ease,outline .2s ease}.chord-input:focus{outline:none;border-color:var(--accent-color)}.slider-wrapper{flex-grow:1;display:flex;align-items:center}input[type=range]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:100%;background:transparent;height:48px;cursor:pointer}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;box-sizing:border-box;height:36px;width:56px;border-radius:18px;background:var(--accent-color);border:4px solid #333333;background-clip:padding-box;cursor:pointer;margin-top:0;box-shadow:none}input[type=range]::-webkit-slider-runnable-track{width:100%;height:36px;cursor:pointer;background:#333;border-radius:18px}input[type=range]:focus{outline:none}input[type=range]:focus-visible::-webkit-slider-thumb{outline:2px solid #ffffff;outline-offset:2px}.add-noise-container{display:flex;justify-content:center;margin-top:8px}.add-noise-btn{background-color:var(--accent-color);color:#000;padding:12px 24px;border-radius:24px;font-size:.95rem;font-weight:500}.add-noise-btn:hover{background-color:var(--accent-hover)}.play-button{pointer-events:auto;background:var(--accent-color);color:#000;width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:1.5rem;box-shadow:0 4px 12px #0006}.play-button:hover,.play-button:focus-visible{background:var(--accent-hover);transform:scale(1.05)}.doom-logo-img{display:block;margin:60px auto 40px;max-width:100%;width:280px;height:auto}.load-screen{display:flex;flex-direction:column}.load-header{display:flex;align-items:center;max-width:600px;margin:0 auto;width:100%;padding:1rem;margin-bottom:2rem}.close-btn{margin-right:1rem}.screen-title{font-size:1.5rem;margin:0;font-weight:600}.track-list{display:flex;flex-direction:column;gap:1.2rem}.track-list-item{display:flex;align-items:center;justify-content:space-between;background-color:#111;border:1px solid var(--border-color);padding:.5rem;border-radius:var(--border-radius);cursor:pointer;transition:border-color .2s,background-color .2s}.track-list-item:hover{border-color:#444;background-color:#131313}.track-list-item-actions{display:flex;align-items:center;gap:4px;opacity:1;transition:opacity .2s ease}@media (hover: hover) and (pointer: fine){.track-list-item-actions{opacity:0}.track-list-item:hover .track-list-item-actions{opacity:1}}[data-tooltip]{position:relative}[data-tooltip]:before,[data-tooltip]:after{position:absolute;opacity:0;visibility:hidden;transition:opacity .2s ease,transform .2s ease,visibility 0s linear .2s;pointer-events:none;z-index:10}[data-tooltip]:before{content:attr(data-tooltip);bottom:calc(100% + 8px);left:50%;transform:translate(-50%) translateY(4px);background-color:#57b4a6;color:#000;padding:4px 8px;border-radius:4px;font-size:12px;font-weight:500;white-space:nowrap}[data-tooltip]:after{content:"";bottom:calc(100% + 2px);left:50%;transform:translate(-50%) translateY(4px);border-width:6px;border-style:solid;border-color:#57B4A6 transparent transparent transparent}@media (hover: hover) and (pointer: fine){[data-tooltip]:hover:before,[data-tooltip]:hover:after{opacity:1;visibility:visible;transform:translate(-50%) translateY(0);transition-delay:0s}}.track-play-btn{width:64px;height:64px;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;flex-shrink:0;padding:0;border:none;cursor:pointer}.track-play-btn:hover{background:#111}.track-play-icon-circle{width:44px;height:44px;border-radius:50%;background:#555;color:#111;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.track-play-btn.active .track-play-icon-circle{background:var(--accent-color);color:#000}.track-item-name{font-size:1.3rem;color:var(--text-primary)}.create-track-container{display:flex;flex-direction:column;align-items:center;justify-content:center;margin-top:3rem;padding-bottom:2rem;gap:1.5rem}.create-track-btn{background-color:var(--accent-color);color:#000;padding:14px 28px;border-radius:30px;font-size:1.05rem;font-weight:500;transition:all .2s ease}.create-track-btn:hover{background-color:var(--accent-hover);transform:scale(1.02)}.import-track-link{background:transparent;color:var(--accent-color);text-decoration:none;font-size:1.05rem;transition:color .2s ease}.import-track-link:hover{color:var(--accent-hover)}.empty-state{text-align:center;color:var(--text-secondary);font-size:1.1rem;margin-top:2rem}.toast-notification{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);background-color:#4a4a4a;color:#fff;padding:.75rem 1.5rem;border-radius:24px;font-size:1rem;font-weight:500;box-shadow:0 4px 12px #00000080;animation:slideUpFade .3s ease-out,fadeOut .3s ease-in 2.7s forwards;z-index:100;pointer-events:none}@keyframes slideUpFade{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}
