:root{font-family:Inter,system-ui,-apple-system,sans-serif;line-height:1.5;font-weight:400;color:#ffffffde;background:#0a0a14;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*,*:before,*:after{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(ellipse at 50% 0%,#12122a,#0a0a14 60%)}#root{width:100%}button{font-family:inherit}::selection{background:#4a90d94d}.driver-active .driver-overlay,.driver-active *{pointer-events:none}.driver-active .driver-active-element,.driver-active .driver-active-element *,.driver-popover,.driver-popover *{pointer-events:auto}@keyframes animate-fade-in{0%{opacity:0}to{opacity:1}}.driver-fade .driver-overlay{animation:animate-fade-in .2s ease-in-out}.driver-fade .driver-popover{animation:animate-fade-in .2s}.driver-popover{all:unset;box-sizing:border-box;color:#2d2d2d;margin:0;padding:15px;border-radius:5px;min-width:250px;max-width:300px;box-shadow:0 1px 10px #0006;z-index:1000000000;position:fixed;top:0;right:0;background-color:#fff}.driver-popover *{font-family:Helvetica Neue,Inter,ui-sans-serif,"Apple Color Emoji",Helvetica,Arial,sans-serif}.driver-popover-title{font:19px/normal sans-serif;font-weight:700;display:block;position:relative;line-height:1.5;zoom:1;margin:0}.driver-popover-close-btn{all:unset;position:absolute;top:0;right:0;width:32px;height:28px;cursor:pointer;font-size:18px;font-weight:500;color:#d2d2d2;z-index:1;text-align:center;transition:color;transition-duration:.2s}.driver-popover-close-btn:hover,.driver-popover-close-btn:focus{color:#2d2d2d}.driver-popover-title[style*=block]+.driver-popover-description{margin-top:5px}.driver-popover-description{margin-bottom:0;font:14px/normal sans-serif;line-height:1.5;font-weight:400;zoom:1}.driver-popover-footer{margin-top:15px;text-align:right;zoom:1;display:flex;align-items:center;justify-content:space-between}.driver-popover-progress-text{font-size:13px;font-weight:400;color:#727272;zoom:1}.driver-popover-footer button{all:unset;display:inline-block;box-sizing:border-box;padding:3px 7px;text-decoration:none;text-shadow:1px 1px 0 #fff;background-color:#fff;color:#2d2d2d;font:12px/normal sans-serif;cursor:pointer;outline:0;zoom:1;line-height:1.3;border:1px solid #ccc;border-radius:3px}.driver-popover-footer .driver-popover-btn-disabled{opacity:.5;pointer-events:none}:not(body):has(>.driver-active-element){overflow:hidden!important}.driver-no-interaction,.driver-no-interaction *{pointer-events:none!important}.driver-popover-footer button:hover,.driver-popover-footer button:focus{background-color:#f7f7f7}.driver-popover-navigation-btns{display:flex;flex-grow:1;justify-content:flex-end}.driver-popover-navigation-btns button+button{margin-left:4px}.driver-popover-arrow{content:"";position:absolute;border:5px solid #fff}.driver-popover-arrow-side-over{display:none}.driver-popover-arrow-side-left{left:100%;border-right-color:transparent;border-bottom-color:transparent;border-top-color:transparent}.driver-popover-arrow-side-right{right:100%;border-left-color:transparent;border-bottom-color:transparent;border-top-color:transparent}.driver-popover-arrow-side-top{top:100%;border-right-color:transparent;border-bottom-color:transparent;border-left-color:transparent}.driver-popover-arrow-side-bottom{bottom:100%;border-left-color:transparent;border-top-color:transparent;border-right-color:transparent}.driver-popover-arrow-side-center{display:none}.driver-popover-arrow-side-left.driver-popover-arrow-align-start,.driver-popover-arrow-side-right.driver-popover-arrow-align-start{top:15px}.driver-popover-arrow-side-top.driver-popover-arrow-align-start,.driver-popover-arrow-side-bottom.driver-popover-arrow-align-start{left:15px}.driver-popover-arrow-align-end.driver-popover-arrow-side-left,.driver-popover-arrow-align-end.driver-popover-arrow-side-right{bottom:15px}.driver-popover-arrow-side-top.driver-popover-arrow-align-end,.driver-popover-arrow-side-bottom.driver-popover-arrow-align-end{right:15px}.driver-popover-arrow-side-left.driver-popover-arrow-align-center,.driver-popover-arrow-side-right.driver-popover-arrow-align-center{top:50%;margin-top:-5px}.driver-popover-arrow-side-top.driver-popover-arrow-align-center,.driver-popover-arrow-side-bottom.driver-popover-arrow-align-center{left:50%;margin-left:-5px}.driver-popover-arrow-none{display:none}input[type=range]{touch-action:none}.app{max-width:800px;margin:0 auto;padding:2rem 1.5rem 3rem;min-height:100vh;display:flex;flex-direction:column;align-items:center}.app-body{width:100%;display:flex;flex-direction:column;align-items:center}.app-visual,.app-controls{display:flex;flex-direction:column;align-items:center;width:100%}@media(min-width:900px){.app{max-width:1100px}.app-body{flex-direction:row;align-items:flex-start;gap:2.5rem}.app-visual{flex:0 0 50%;position:sticky;top:1.5rem;max-width:50%}.app-controls{flex:1;min-width:0;padding-top:.5rem}.app-controls .bpm-section,.app-controls .custom-editor,.app-controls .dm-manage-bar,.app-controls .saved-section,.app-controls .patterns-section{max-width:100%}}.header{display:flex;align-items:center;justify-content:center;width:100%;margin-bottom:1.5rem;position:relative}.header-actions{position:absolute;right:0;display:flex;align-items:center;gap:8px}.back-link{position:absolute;left:0;display:flex;align-items:center;color:#ffffff73;text-decoration:none;transition:color .15s}.back-link:hover{color:#fffc}.btn-lang{height:28px;padding:0 10px;border-radius:14px;background:#ffffff0f;border:1px solid rgba(255,255,255,.15);color:#ffffffb3;cursor:pointer;font-size:.8rem;font-weight:500;letter-spacing:.02em;text-decoration:none;display:inline-flex;align-items:center;transition:all .2s}.btn-lang:hover{background:#ffffff1f;color:#fffffff2}.btn-icon{width:32px;height:32px;border-radius:50%;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);color:#ffffff73;cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;transition:all .2s}.btn-icon:hover{background:#ffffff1a;color:#ffffffd9;transform:scale(1.08)}.title{font-size:2rem;font-weight:300;letter-spacing:.1em;margin:0;background:linear-gradient(135deg,#4a90d9,#e8834a,#c8c8c8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.mode-toggle{display:flex;gap:2px;background:#ffffff0a;border-radius:10px;padding:3px;margin-bottom:2rem}.mode-btn{padding:.45em 1.4em;font-size:.8rem;border:none;background:transparent;color:#fff6;border-radius:8px;cursor:pointer;transition:all .25s}.mode-btn-active{background:#ffffff14;color:#ffffffe6}.rec-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:#e05555;margin-right:.35em;animation:rec-pulse 1s ease-in-out infinite}.rec-spinner{display:inline-block;width:10px;height:10px;border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;margin-right:.35em;animation:rec-spin .6s linear infinite;vertical-align:middle}@keyframes rec-spin{to{transform:rotate(360deg)}}@keyframes rec-pulse{0%,to{opacity:1}50%{opacity:.3}}.rec-time{font-variant-numeric:tabular-nums;font-size:.75rem;color:#ffffff80;margin:0 .15em}.rec-time-ready{color:#6cdb6c}.record-error{font-size:.75rem;color:#e05555;margin-top:-1rem;margin-bottom:1rem}.rec-empty-state{width:100%;text-align:center;padding:2rem 0}.rec-empty-hint{font-size:.85rem;color:#ffffff80;margin-bottom:1.2rem}.rec-empty-actions{display:flex;gap:.75rem;justify-content:center}.btn-record,.btn-import-audio{padding:.5rem 1.2rem;border-radius:8px;font-size:.85rem;cursor:pointer;border:1px solid rgba(255,255,255,.15);background:#ffffff0f;color:inherit;transition:background .15s}.btn-record:hover,.btn-import-audio:hover{background:#ffffff1f}.btn-disabled{opacity:.4;pointer-events:none}.btn-recording{color:#e05555!important;background:#e0555514}.wheel-container{position:relative;display:flex;justify-content:center;align-items:center}.wheel-container .btn-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);z-index:2}.rhythm-wheel{display:block;max-width:100%;height:auto;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.pattern-info{text-align:center;max-width:400px}.pattern-name{font-size:1.3rem;font-weight:400;margin:0 0 .3rem;color:#ffffffe6}.pattern-origin{font-size:.75rem;color:#ffffff59;text-transform:uppercase;letter-spacing:.15em}.pattern-desc{font-size:.82rem;color:#ffffff73;line-height:1.6;margin:.6rem 0 .8rem}.legend{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}.legend-item{display:flex;align-items:center;gap:.35rem}.legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.legend-label{font-size:.72rem;color:#fff6}.btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#ffffffb3;border-radius:8px;cursor:pointer;transition:all .2s;padding:.5em .9em;font-size:.85rem}.btn:hover{background:#ffffff14;border-color:#ffffff26}.btn-play{width:48px;height:48px;border-radius:50%;padding:0;background:#4a90d926;border-color:#4a90d94d;color:#4a90d9;flex-shrink:0}.btn-play:hover{background:#4a90d940;border-color:#4a90d980}.btn-tap{padding:.5em 1.6em;font-size:.82rem;border-radius:20px;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);color:#fff9;cursor:pointer;transition:all .15s;-webkit-user-select:none;user-select:none}.btn-tap:hover{background:#ffffff14;color:#ffffffd9}.btn-tap:active{transform:scale(.95);background:#4a90d933}.btn-tap-active{border-color:#4a90d966;color:#4a90d9;background:#4a90d91a}.btn-sm{padding:.3em .6em;font-size:.8rem;min-width:32px}.btn-active{background:#4a90d933;border-color:#4a90d966;color:#4a90d9}.btn-danger:not(:disabled):hover{background:#dc3c3c26;border-color:#dc3c3c4d;color:#dc3c3c}.btn-danger:disabled{opacity:.3;cursor:not-allowed}.bpm-section{display:flex;flex-direction:column;align-items:center;gap:.5rem;margin-bottom:1rem;width:100%;max-width:280px}.bpm-slider-row{display:flex;align-items:baseline;gap:.35rem}.bpm-value{font-size:1.4rem;font-weight:300;color:#ffffffd9;font-variant-numeric:tabular-nums;letter-spacing:.02em}.bpm-label{font-size:.65rem;color:#ffffff4d;text-transform:uppercase;letter-spacing:.12em}.bpm-adj{width:28px;height:28px;border-radius:50%;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#ffffff80;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;padding:0}.bpm-adj:hover{background:#4a90d926;border-color:#4a90d959;color:#ffffffd9}.bpm-adj:active{background:#4a90d940}.bpm-range{-webkit-appearance:none;appearance:none;width:100%;height:4px;border-radius:2px;background:linear-gradient(to right,#4a90d980,#e8834a80);outline:none;cursor:pointer}.bpm-range::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 0 6px #4a90d980,0 0 12px #4a90d933;border:none;cursor:pointer;transition:box-shadow .2s}.bpm-range::-webkit-slider-thumb:hover{box-shadow:0 0 8px #4a90d9b3,0 0 18px #4a90d94d}.bpm-range::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 0 6px #4a90d980,0 0 12px #4a90d933;border:none;cursor:pointer}.bpm-presets{display:flex;gap:4px}.bpm-preset{padding:.2em .55em;font-size:.68rem;border:1px solid rgba(255,255,255,.06);background:transparent;color:#ffffff4d;border-radius:12px;cursor:pointer;transition:all .2s;font-family:inherit;font-variant-numeric:tabular-nums}.bpm-preset:hover{color:#fff9;border-color:#ffffff1f}.bpm-preset-active{color:#4a90d9;border-color:#4a90d959;background:#4a90d914}.tempo-mul-section{display:flex;align-items:center;gap:.6rem;margin-bottom:1.5rem}.tempo-mul-label{font-size:.7rem;color:#ffffff59;white-space:nowrap}.tempo-mul-btns{display:flex;gap:4px}.tempo-mul-sep{width:1px;height:16px;background:#ffffff14;margin:0 2px;align-self:center}.tempo-mul-btn{padding:.2em .6em;font-size:.72rem;border:1px solid rgba(255,255,255,.06);background:transparent;color:#ffffff4d;border-radius:12px;cursor:pointer;transition:all .2s;font-family:inherit;font-variant-numeric:tabular-nums}.tempo-mul-btn:hover{color:#fff9;border-color:#ffffff1f}.tempo-mul-btn-active{color:#4a90d9;border-color:#4a90d959;background:#4a90d914}.tempo-mul-btn:disabled{opacity:.35;cursor:default}.tempo-mul-btn:disabled:hover{color:#ffffff4d;border-color:#ffffff0f}.tempo-mul-btn:disabled.tempo-mul-btn-active{opacity:1;color:#4a90d9;border-color:#4a90d959;background:#4a90d914}.dm-seq-scroll-area{width:100%;padding:10px 0 12px;margin-bottom:.5rem}.dm-seq-bar{display:flex;align-items:center;gap:4px;padding:0 2px;width:100%;justify-content:center;max-width:100%}.dm-seq-bar>*{flex:1 1 0px!important;min-width:0!important;max-width:52px!important}@media(max-width:600px){.dm-seq-bar{gap:2px}}.dm-chip-wrap{position:relative;aspect-ratio:52 / 72}.dm-seq-chip{position:absolute;inset:0;border-radius:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);overflow:hidden;cursor:ns-resize;transition:all .2s cubic-bezier(.25,.46,.45,.94);display:flex;flex-direction:column;align-items:center;justify-content:center;-webkit-user-select:none;user-select:none;touch-action:none;container-type:size}.dm-seq-chip:hover{background:#ffffff0f;border-color:#ffffff26;transform:translateY(-1px)}.dm-seq-chip-active{border-color:#4a90d980;background:#4a90d914;box-shadow:0 4px 12px #0003;transform:translateY(-2px)}.dm-seq-chip-playing{border-color:#6cdb6c;box-shadow:0 0 15px #6cdb6c26}.dm-chip-fill{position:absolute;bottom:0;left:0;width:100%;background:#ffffff0f;transition:height .15s ease-out;z-index:0;pointer-events:none}.dm-seq-chip-active .dm-chip-fill{background:#4a90d926}.dm-seq-chip-playing .dm-chip-fill{background:#6cdb6c26}@property --progress{syntax: "<angle>"; initial-value: 0deg; inherits: false;}.dm-chip-progress{position:absolute;inset:0;border-radius:12px;background:conic-gradient(from -90deg,rgba(108,219,108,.7) var(--progress),transparent var(--progress));-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;padding:2px;z-index:2;pointer-events:none;transition:--progress .15s linear}.dm-chip-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:2px;pointer-events:none;width:100%;overflow:hidden}.dm-chip-num{font-size:1.4rem;font-size:clamp(.6rem,30cqh,1.4rem);font-weight:600;color:#ffffff80;font-variant-numeric:tabular-nums;line-height:1;text-shadow:0 2px 4px rgba(0,0,0,.3)}.dm-seq-chip-active .dm-chip-num{color:#fff}.dm-chip-label{font-size:.55rem;font-size:clamp(.4rem,12cqh,.55rem);font-weight:600;text-transform:uppercase;color:#ffffff40;letter-spacing:.05em}.dm-seq-chip-active .dm-chip-label{color:#4a90d9cc}.dm-chip-delete{position:absolute;top:-8px;right:-8px;width:20px;height:20px;border-radius:50%;background:#2a2a2a;border:1px solid rgba(255,255,255,.1);color:#ffffff80;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:10;opacity:0;transform:scale(.8);transition:all .2s;padding:0}.dm-chip-wrap:hover .dm-chip-delete{opacity:1;transform:scale(1)}.dm-chip-delete:hover{background:#e05555;color:#fff;border-color:#e05555}.dm-seq-add{aspect-ratio:52 / 72;border-radius:12px;border:1.5px dashed rgba(255,255,255,.12);background:transparent;color:#ffffff4d;font-size:1.2rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:0}.dm-seq-add:hover{border-color:#ffffff4d;background:#ffffff05;color:#ffffffb3}.dm-hint{font-size:.65rem;color:#fff3;text-align:center;margin-top:2px;letter-spacing:.03em}.dm-seq-play-bar{display:flex;align-items:center;justify-content:center;gap:6px;margin-bottom:.8rem}.dm-seq-play-btn{display:inline-flex;align-items:center;gap:6px;padding:.4em 1em;font-size:.78rem;border:1px solid rgba(108,219,108,.25);background:#6cdb6c0f;color:#6cdb6ccc;border-radius:20px;cursor:pointer;transition:all .2s;font-family:inherit}.dm-seq-play-btn:hover{background:#6cdb6c1f;border-color:#6cdb6c66;color:#6cdb6c}.dm-seq-play-btn-active{background:#6cdb6c1f;border-color:#6cdb6c80;color:#6cdb6c;box-shadow:0 0 10px #6cdb6c1a}.dm-seq-play-progress{display:flex;gap:3px;align-items:center}.dm-seq-play-dot{width:5px;height:5px;border-radius:50%;background:#ffffff26;transition:all .2s}.dm-seq-play-dot-done{background:#6cdb6c66}.dm-seq-play-dot-current{background:#6cdb6c;box-shadow:0 0 4px #6cdb6c99}.dm-seq-play-text{font-size:.72rem;font-variant-numeric:tabular-nums}.dm-seq-loop-btn{width:30px;height:30px;border-radius:50%;border:1px solid rgba(255,255,255,.1);background:#ffffff08;color:#ffffff59;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:0}.dm-seq-loop-btn:hover{background:#ffffff0f;border-color:#fff3;color:#fff9}.dm-seq-loop-btn-active{border-color:#6cdb6c59;background:#6cdb6c14;color:#6cdb6ccc}.dm-seq-loop-btn-active:hover{border-color:#6cdb6c80;background:#6cdb6c1f;color:#6cdb6c}.dm-manage-bar{width:100%;max-width:520px;display:flex;align-items:center;justify-content:space-between;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:.8rem 1.2rem;margin-bottom:.8rem}.dm-manage-name{font-size:.82rem;color:#fff9;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dm-manage-dirty{color:#4a90d9cc}.dm-manage-actions{display:flex;gap:6px;flex-shrink:0}.dm-import-section{margin-top:.8rem;border-top:1px solid rgba(255,255,255,.06);padding-top:.8rem}.dm-import-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;padding:.5em .7em;font-size:.78rem;border:1px solid rgba(255,255,255,.08);background:#ffffff05;color:#ffffff73;border-radius:8px;cursor:pointer;transition:all .2s}.dm-import-toggle:hover{background:#ffffff0d;color:#ffffffa6}.dm-import-toggle-open{border-color:#4a90d94d;color:#4a90d9cc}.dm-import-list{margin-top:.5rem;max-height:240px;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.dm-import-group-label{font-size:.65rem;color:#ffffff40;padding:.5em .4em .2em;letter-spacing:.05em}.dm-import-item{display:flex;align-items:center;justify-content:space-between;padding:.45em .6em;border:none;background:#ffffff05;border-radius:6px;cursor:pointer;transition:all .15s;text-align:left}.dm-import-item:hover{background:#4a90d91a}.dm-import-item-name{font-size:.78rem;color:#ffffffb3}.dm-import-item-meta{font-size:.65rem;color:#ffffff40;white-space:nowrap;margin-left:.5rem}.editor-header{display:flex;align-items:center;justify-content:space-between;cursor:pointer;padding:0 0 .8rem;margin-bottom:.8rem;border-bottom:1px solid rgba(255,255,255,.06);-webkit-user-select:none;user-select:none}.editor-header-title{font-size:.78rem;color:#ffffff73;letter-spacing:.05em}.editor-name-editable{cursor:text;border-bottom:1px dashed rgba(255,255,255,.2);padding-bottom:1px;transition:border-color .2s}.editor-name-editable:hover{border-color:#4a90d980;color:#ffffffb3}.editor-name-input{background:#ffffff0f;border:1px solid rgba(74,144,217,.4);border-radius:4px;color:#ffffffe6;font-size:inherit;font-family:inherit;letter-spacing:inherit;padding:1px 4px;outline:none;width:12em;max-width:50vw}.editor-name-input:focus{border-color:#4aa0f099;box-shadow:0 0 0 2px #4aa0f026}.editor-chevron{color:#ffffff4d;transition:transform .25s;transform:rotate(-90deg)}.editor-chevron-open{transform:rotate(0)}.editor-save-row{display:flex;gap:6px;margin-top:.8rem}.btn-save-rhythm{flex:1;padding:.5em;font-size:.8rem;border:1px solid rgba(74,144,217,.2);background:#4a90d90f;color:#4a90d9cc;border-radius:8px;cursor:pointer;transition:all .2s}.btn-save-as{padding:.5em .8em;font-size:.8rem;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:#ffffff73;border-radius:8px;cursor:pointer;transition:all .2s;white-space:nowrap}.btn-save-as:hover{background:#ffffff0f;border-color:#ffffff26;color:#ffffffb3}.btn-save-rhythm:hover{background:#4a90d91f;border-color:#4a90d959;color:#4a90d9}.btn-share{padding:.5em;border:1px solid rgba(255,255,255,.08);background:#ffffff08;color:#fff6;border-radius:8px;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.btn-share:hover{background:#ffffff0f;border-color:#ffffff26;color:#ffffffb3}.share-toast{position:fixed;bottom:2rem;left:50%;transform:translate(-50%);background:#4a90d9e6;color:#fff;padding:.6em 1.4em;border-radius:20px;font-size:.8rem;z-index:1100;animation:toast-in .3s ease-out;pointer-events:none}@keyframes toast-in{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.saved-section{width:100%;max-width:600px;margin-bottom:2rem}.saved-title{font-size:.82rem;font-weight:400;color:#fff6;margin:0 0 .8rem;text-align:center}.saved-count-inline{margin-left:.4em;font-size:.75rem;color:#ffffff40}.saved-count-inline.saved-count-warn{color:#ffb43c99}.saved-count-inline.saved-count-full{color:#ff5a5a99}.saved-card{position:relative}.saved-card-meta{display:flex;gap:.6rem;margin-top:.4rem;font-size:.65rem;color:#ffffff4d}.saved-card-actions{display:flex;gap:4px;margin-top:.5rem}.saved-card-share{position:absolute;bottom:8px;right:8px;width:26px;height:26px;border-radius:50%;border:1px solid rgba(255,255,255,.08);background:#ffffff0a;color:#ffffff4d;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;padding:0}.saved-card-share:hover{background:#ffffff14;border-color:#fff3;color:#ffffffb3}.saved-card-new{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;border-style:dashed;border-color:#ffffff1f;color:#ffffff4d;min-height:90px;cursor:pointer}.saved-card-new span{font-size:.72rem}.saved-card-new:hover{border-color:#ffffff4d;color:#fff9;background:#ffffff08}.custom-editor{width:100%;max-width:520px;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1.2rem;margin-bottom:2rem}.editor-row{display:flex;align-items:center;gap:.8rem;margin-bottom:1rem}.editor-row label{font-size:.75rem;color:#fff6;white-space:nowrap}.subdiv-btns{display:flex;gap:4px}.layer-list{display:flex;flex-direction:column;gap:.5rem}.layer-row{display:flex;align-items:center;gap:.5rem;padding:.4rem 0}.layer-row-content{position:relative;flex:1;display:flex;align-items:center;gap:.35rem;min-width:0}.layer-row-content>:not(.layer-volume-overlay){transition:opacity .15s ease-out}.layer-row-vol-open .layer-row-content>:not(.layer-volume-overlay){opacity:0;pointer-events:none}.btn-ms{width:20px;height:20px;border:1px solid rgba(255,255,255,.15);border-radius:4px;background:transparent;color:#ffffff80;font-size:10px;font-weight:700;cursor:pointer;padding:0;flex-shrink:0;line-height:1;transition:background .15s,color .15s,border-color .15s}.btn-ms:hover{border-color:#ffffff59;color:#fffc}.btn-ms-muted{background:#ef444440;border-color:#ef444480;color:#ef4444}.btn-ms-auto-muted{animation:auto-mute-blink 1.2s ease-in-out infinite}.btn-ms-solo{background:#facc1540;border-color:#facc1580;color:#facc15}.layer-color-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.layer-name-input{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:6px;color:#fffc;padding:.3em .45em;font-size:.78rem;flex:1;min-width:36px;font-family:inherit}.layer-name-input:focus{outline:none;border-color:#4a90d966}.layer-sound-select{background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:6px;color:#fffc;padding:.3em .4em;font-size:.78rem;font-family:inherit;cursor:pointer}.layer-sound-select:focus{outline:none;border-color:#4a90d966}.layer-sound-select option{background:#1a1a2e;color:#fffc}.btn-volume-icon{background:none;border:none;color:#ffffff80;cursor:pointer;padding:.2em;flex-shrink:0;display:flex;align-items:center;transition:color .2s}.btn-volume-icon:hover{color:#fffc}.btn-volume-icon-active{color:#4a90d9e6}.btn-volume-icon-active:hover{color:#4a90d9}.layer-volume-overlay{position:absolute;inset:0;display:flex;align-items:center;padding:0 .3rem;opacity:0;pointer-events:none;transition:opacity .15s ease-out}.layer-volume-overlay-active{opacity:1;pointer-events:auto}.layer-volume-expanded{flex:1;min-width:0;height:4px;accent-color:rgba(74,144,217,.7);cursor:pointer}.btn-add-layer{width:100%;padding:.5em;font-size:.8rem;border-style:dashed;color:#ffffff59;margin-top:.3rem}.btn-add-layer:hover{color:#fff9}.layer-item{display:flex;flex-direction:column;gap:.3rem}.sustain-controls{padding:4px 8px 8px;display:flex;flex-direction:column;gap:6px}.sustain-row{display:flex;align-items:center;gap:8px}.sustain-row label{font-size:11px;opacity:.7;min-width:52px;flex-shrink:0}.sustain-slider{flex:1;height:4px;-webkit-appearance:none;appearance:none;background:#ffffff26;border-radius:2px;outline:none;cursor:pointer}.sustain-slider::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:#ffffffd9;cursor:pointer}.sustain-value{font-size:11px;opacity:.7;min-width:32px;text-align:right;flex-shrink:0}.patterns-section{width:100%;max-width:600px}.category-tabs{display:flex;gap:4px;justify-content:center;margin-bottom:1rem;flex-wrap:wrap}.tab{display:inline-flex;align-items:center;gap:.35rem;padding:.4em .9em;font-size:.78rem;border:1px solid transparent;background:transparent;color:#ffffff59;border-radius:20px;cursor:pointer;transition:all .2s}.tab:hover{color:#fff9}.tab-active{background:#ffffff0f;color:#ffffffd9;border-color:#ffffff1a}.tab-icon{font-size:.9em}.pattern-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:.6rem}.pattern-card{text-align:left;padding:.8rem;border:1px solid rgba(255,255,255,.06);background:#ffffff05;border-radius:10px;cursor:pointer;transition:all .2s}.pattern-card:hover{background:#ffffff0d;border-color:#ffffff1f}.pattern-card-active{border-color:#4a90d966;background:#4a90d90f}.card-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:.5rem}.card-name{font-size:.82rem;color:#ffffffd9;font-weight:500}.card-origin{font-size:.65rem;color:#ffffff4d}.card-dots{display:flex;gap:3px;flex-wrap:wrap}.card-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0}.card-mini-chips{display:flex;gap:3px;align-items:flex-end;height:32px}.card-mini-chip{flex:1 1 0;min-width:0;max-width:24px;height:100%;border-radius:5px;background:#ffffff0a;border:1px solid rgba(255,255,255,.1);position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center}.card-mini-chip-fill{position:absolute;bottom:0;left:0;width:100%;background:#4a90d933;transition:height .15s ease-out;pointer-events:none}.card-mini-chip-num{position:relative;z-index:1;font-size:.6rem;font-weight:600;color:#ffffff80;font-variant-numeric:tabular-nums;line-height:1}.footer{margin-top:auto;padding:2rem 1.5rem 1.5rem}.footer-row{display:flex;align-items:center;justify-content:space-between;gap:1rem}.footer-left{display:flex;align-items:center;gap:.6rem;flex-shrink:0}.footer-brand{font-size:.85rem;font-weight:600;color:#ffffff59}.footer-copy{font-size:.75rem;color:#fff3}.footer-right{display:flex;align-items:center;gap:1.2rem}.footer-links{display:flex;gap:.8rem;flex-wrap:wrap;justify-content:flex-end}.footer-links a{color:#ffffff4d;text-decoration:none;font-size:.75rem;transition:color .2s;white-space:nowrap}.footer-links a:hover{color:#ffffff80}.footer-icons{display:flex;gap:.6rem;align-items:center;flex-shrink:0}.footer-icon{width:28px;height:28px;color:#fff3;transition:color .2s;display:flex;align-items:center;justify-content:center}.footer-icon:hover{color:#ffffff80}.footer-icp{text-align:center;margin-top:1rem}.footer-icp a{color:#ffffff40;text-decoration:none;font-size:.7rem;transition:color .2s}.footer-icp a:hover{color:#ffffff73}@media(max-width:680px){.footer-row{flex-direction:column;align-items:center;gap:.8rem}.footer-links{justify-content:center}.footer-right{flex-direction:column;gap:.6rem}}.label-short{display:none}@media(max-width:600px){.label-full{display:none}.label-short{display:inline}.app{padding:1.2rem 1rem 2rem}.title{font-size:1.5rem;letter-spacing:.08em}.pattern-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}.layer-row{gap:.3rem}}@media(max-width:380px){.pattern-grid{grid-template-columns:1fr}}.rec-playback-panel{width:100%;max-width:520px;background:#ffffff05;border:1px solid rgba(255,255,255,.06);border-radius:12px;padding:1rem 1.2rem;margin-bottom:1.2rem}.rec-playback-header{display:flex;align-items:center;gap:.5rem;margin-bottom:.8rem}.rec-playback-header .rec-playback-badge{margin-left:auto}.rec-actions-row{display:flex;flex-wrap:wrap;gap:.4rem;margin-bottom:.8rem}.btn-sm{font-size:.75rem;padding:.3rem .6rem;cursor:pointer;white-space:nowrap}.rec-playback-title{font-size:.85rem;font-weight:600;color:#ffffffd9;letter-spacing:.03em}.rec-playback-badge{font-size:.65rem;padding:2px 8px;border-radius:8px;background:#ffffff0f;color:#fff6}.rec-playback-badge-active{background:#4caf5026;color:#4caf50e6}.rec-playback-master{display:flex;align-items:center;gap:.6rem;margin-top:.5rem;margin-bottom:.8rem;padding-bottom:.8rem;border-bottom:1px solid rgba(255,255,255,.06)}.rec-playback-master .rec-band-label{min-width:3em}.rec-volume-slider{flex:1;height:4px;-webkit-appearance:none;appearance:none;background:#ffffff1a;border-radius:2px;outline:none;cursor:pointer}.rec-volume-slider::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:14px;border-radius:50%;background:#ffffffb3;border:none;cursor:pointer;transition:background .15s}.rec-volume-slider::-webkit-slider-thumb:hover{background:#ffffffe6}.rec-volume-slider:disabled{opacity:.3;cursor:default}.rec-volume-value{font-size:.7rem;color:#fff6;min-width:2.5em;text-align:right}.rec-band-label{font-size:.72rem;color:#ffffff80;min-width:6.5em;white-space:nowrap}.rec-band-toggle{width:24px;height:24px;border-radius:6px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;color:#ffffff80;font-size:.65rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s;flex-shrink:0}.rec-band-toggle:hover{border-color:#ffffff40}.rec-band-toggle-on{background:#4caf5026;border-color:#4caf504d;color:#4caf50e6}.rec-band-toggle:disabled{opacity:.25;cursor:default}.rec-band-toggle-wide{width:calc(48px + .3rem)}.rec-progress-wrap{flex:1;min-width:0;position:relative}.rec-progress-bar{height:24px;background:transparent;border-radius:2px;position:relative;cursor:pointer;display:flex;align-items:center;touch-action:none}.rec-progress-bar:before{content:"";position:absolute;left:0;right:0;height:4px;background:#ffffff14;border-radius:2px}.rec-progress-fill{width:100%;height:4px;background:linear-gradient(90deg,#4a90d9b3,#e8834ab3);border-radius:2px;transform-origin:left;will-change:transform;position:relative;z-index:1}.rec-progress-thumb{width:10px;height:10px;border-radius:50%;background:#fff;position:absolute;left:0;top:50%;z-index:2;box-shadow:0 0 3px #0006;pointer-events:none;will-change:transform,opacity}.rec-progress-time{font-size:.62rem;color:#ffffff59;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right;position:absolute;right:0;bottom:100%;margin-bottom:-2px}.rec-band-waveform-row{display:flex;align-items:center;gap:.3rem}.rec-band-waveform{flex:1;min-width:0;border-radius:4px;overflow:hidden;background:#ffffff05}.rec-band-waveform-placeholder{height:30px}.rec-trim-section{display:flex;flex-wrap:wrap;align-items:center;gap:.3rem .5rem;margin-bottom:.8rem;padding-bottom:.8rem;border-bottom:1px solid rgba(255,255,255,.06)}.rec-trim-label{font-size:.72rem;color:#ffffff80;white-space:nowrap}.trim-bar{flex:1;position:relative;height:36px;border-radius:6px;overflow:hidden;background:#ffffff08;cursor:default;touch-action:none}.trim-waveform{width:100%;height:36px;display:block}.trim-dim{position:absolute;top:0;height:100%;background:#00000080;pointer-events:none}.trim-handle{position:absolute;top:0;width:10px;height:100%;margin-left:-5px;cursor:ew-resize;background:#ffffff40;border:1px solid rgba(255,255,255,.5);border-radius:3px;transition:background .1s;z-index:2}.trim-handle:hover,.trim-handle:active{background:#fff6}.trim-labels{position:absolute;bottom:1px;left:0;right:0;display:flex;justify-content:space-between;padding:0 2px;font-size:.58rem;color:#ffffff59;pointer-events:none;z-index:1}.rec-band-controls-wrap{position:relative}.rec-band-loading-overlay{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;background:#141419bf;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);border-radius:.5rem;color:#ffffffb3;font-size:.8rem}.rec-band-loading-spinner{width:20px;height:20px;border:2px solid rgba(255,255,255,.15);border-top-color:#fff9;border-radius:50%;animation:bandSpinnerSpin .8s linear infinite}@keyframes bandSpinnerSpin{to{transform:rotate(360deg)}}.rec-band-controls{display:flex;flex-direction:column;gap:.5rem;flex:1}.rec-band-row{display:flex;align-items:center;gap:.6rem;transition:opacity .15s}.rec-band-label-group{display:inline-flex;align-items:center;gap:.2rem;min-width:6.5em;flex-shrink:0}.rec-band-label-group .rec-band-label{min-width:unset}.rec-band-export-btn{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:20px;height:20px;padding:0;border:none;border-radius:4px;background:transparent;color:#fff3;cursor:pointer;transition:color .15s,background .15s}.rec-band-export-btn:hover:not(:disabled){background:#4a90d91f;color:#8cc3ffd9}.rec-band-export-btn:disabled{opacity:.25;cursor:not-allowed}.rec-band-item{display:flex;flex-direction:column;gap:.25rem}.rec-band-toggle-muted{background:#ef444440;border-color:#ef444480;color:#ef4444}.rec-band-toggle-auto-muted{animation:auto-mute-blink 1.2s ease-in-out infinite}@keyframes auto-mute-blink{0%,to{background:#ef444414;border-color:#ef444433;color:#ef444466}50%{background:#ef444438;border-color:#ef444480;color:#ef4444}}.rec-band-toggle-solo{background:#facc1540;border-color:#facc1580;color:#facc15}.rec-export-footer{margin-top:1rem;padding-top:.8rem;border-top:1px solid rgba(255,255,255,.08)}.rec-export-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;padding:.55rem 1rem;font-size:.82rem;font-weight:500;background:#4a90d91a;border:1px solid rgba(74,144,217,.25);color:#8cc3ffe6;border-radius:8px;cursor:pointer;transition:background .15s,border-color .15s}.rec-export-btn:hover:not(:disabled){background:#4a90d92e;border-color:#4a90d966}.rec-export-btn:disabled{opacity:.35;cursor:not-allowed}.rec-export-hint{display:block;text-align:center;margin-top:.35rem;font-size:.7rem;color:#ffffff4d}.modal-close{background:none;border:none;color:#fff6;cursor:pointer;font-size:.9rem;padding:2px 6px}@keyframes loginFadeIn{0%{opacity:0}to{opacity:1}}@keyframes loginSlideUp{0%{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.login-overlay{position:fixed;inset:0;background:#0000008c;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:loginFadeIn .2s ease-out}.login-modal{background:linear-gradient(165deg,#1c1e24f2,#121318fa);border:1px solid rgba(255,255,255,.07);border-radius:16px;width:min(360px,90vw);overflow:hidden;box-shadow:0 0 0 1px #ffffff08,0 8px 40px #00000080,0 0 60px -20px #0000004d;animation:loginSlideUp .25s ease-out;position:relative}.login-modal:before{content:"";position:absolute;top:0;left:20%;right:20%;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.15),rgba(255,255,255,.1),transparent)}.login-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.2rem;border-bottom:1px solid rgba(255,255,255,.06)}.login-header-title{font-size:.9rem;font-weight:600;color:#ffffffe6;letter-spacing:.02em}.login-body{padding:1.4rem 1.2rem 1.6rem}.login-avatar{width:52px;height:52px;border-radius:50%;background:linear-gradient(135deg,#4a90d926,#8c64ff1f);border:1px solid rgba(100,140,220,.2);display:flex;align-items:center;justify-content:center;margin:0 auto 1rem;color:#4aa0f0b3;overflow:hidden}.login-avatar-img{width:100%;height:100%;object-fit:cover;border-radius:50%}.login-step{display:flex;flex-direction:column;gap:.9rem}.login-label{font-size:.75rem;color:#ffffff73;letter-spacing:.02em;margin-bottom:-.3rem}.login-input-wrapper{position:relative;display:flex;align-items:center}.login-input{width:100%;padding:.75em 1em;font-size:.9rem;border:1px solid rgba(255,255,255,.1);border-radius:12px;background:#ffffff0d;color:#ffffffeb;font-family:inherit;outline:none;transition:border-color .25s,box-shadow .25s,background .25s;box-sizing:border-box}.login-input:focus{border-color:#4aa0f080;background:#4aa0f00d;box-shadow:0 0 0 3px #4aa0f01a,0 0 24px -6px #4aa0f033}.login-input::placeholder{color:#ffffff40}.login-input:disabled{opacity:.6;cursor:not-allowed}.login-input:-webkit-autofill,.login-input:-webkit-autofill:hover,.login-input:-webkit-autofill:focus,.login-input:-webkit-autofill:active{-webkit-box-shadow:0 0 0 1000px rgba(30,35,45,1) inset!important;box-shadow:0 0 0 1000px #1e232d inset!important;-webkit-text-fill-color:rgba(255,255,255,.92)!important;caret-color:#ffffffeb;border-color:#4aa0f066!important;transition:background-color 5000s ease-in-out 0s}.login-input-with-btn{padding-right:5.5rem}.login-send-inline{position:absolute;right:.5rem;padding:.45em .85em;font-size:.78rem;font-family:inherit;font-weight:500;white-space:nowrap;border:none;border-radius:8px;background:linear-gradient(135deg,#4aa0f033,#648cf026);color:#82befff2;cursor:pointer;transition:all .2s}.login-send-inline:hover:not(:disabled){background:linear-gradient(135deg,#4aa0f059,#648cf04d);color:#a0d2ff}.login-send-inline-disabled{opacity:.35;cursor:not-allowed}.login-countdown-inline{position:absolute;right:1rem;font-size:.82rem;font-weight:500;font-variant-numeric:tabular-nums;color:#ffffff59;min-width:2.5em;text-align:center}.login-code-inputs{display:flex;gap:.6rem;justify-content:center;padding:.3rem 0}.login-code-input{width:2.9rem;height:3.4rem;text-align:center;font-size:1.5rem;font-weight:500;font-variant-numeric:tabular-nums;padding:0;border:1.5px solid rgba(255,255,255,.12);border-radius:12px;background:#ffffff0a;color:#fffffff2;font-family:inherit;outline:none;transition:border-color .2s,box-shadow .2s,background .2s,transform .15s;box-sizing:border-box}.login-code-input:focus{border-color:#4aa0f099;box-shadow:0 0 0 3px #4aa0f01f,0 4px 20px -4px #4aa0f033;background:#4aa0f00f;transform:translateY(-1px)}.login-code-input:not(:placeholder-shown){border-color:#4aa0f04d;background:#4aa0f00a}.login-btn{width:100%;padding:.75em 1em;font-size:.9rem;font-weight:500;font-family:inherit;border:none;border-radius:12px;background:linear-gradient(135deg,#4aa0f02e,#648cf01f);color:#8cc3fff2;cursor:pointer;transition:all .25s;position:relative;overflow:hidden}.login-btn:before{content:"";position:absolute;inset:0;border-radius:12px;border:1px solid rgba(74,160,240,.25);pointer-events:none;transition:border-color .25s}.login-btn:hover:not(:disabled){background:linear-gradient(135deg,#4aa0f04d,#648cf038);box-shadow:0 4px 24px -6px #4aa0f040;transform:translateY(-1px)}.login-btn:hover:not(:disabled):before{border-color:#4aa0f073}.login-btn-disabled{opacity:.35;cursor:not-allowed;transform:none!important;box-shadow:none!important}.login-btn-logout{background:#ffffff0a;color:#ffffff8c}.login-btn-logout:before{border-color:#ffffff1a}.login-btn-logout:hover:not(:disabled){background:#f443361f;color:#ff645af2;box-shadow:0 4px 20px -6px #f4433633}.login-btn-logout:hover:not(:disabled):before{border-color:#f443364d}.login-turnstile{display:flex;justify-content:center;margin:.5rem 0}.login-build-info{text-align:center;font-size:.6rem;color:#ffffff2e;padding:12px 0 8px;letter-spacing:.03em;-webkit-user-select:text;user-select:text}.login-hint{font-size:.8rem;color:#4aa0f0e6;line-height:1.45;padding:.55em .9em;background:#4a90d91a;border:1px solid rgba(74,144,217,.15);border-radius:8px;text-align:center}.login-agreement-checkbox{display:flex;align-items:center;justify-content:center;gap:.45rem;font-size:.68rem;color:#ffffff4d;line-height:1.6;cursor:pointer}.login-agreement-checkbox input[type=checkbox]{appearance:none;-webkit-appearance:none;width:14px;height:14px;border:1.5px solid rgba(255,255,255,.25);border-radius:3px;background:transparent;flex-shrink:0;cursor:pointer;transition:border-color .2s,background .2s;position:relative}.login-agreement-checkbox input[type=checkbox]:hover{border-color:#ffffff73}.login-agreement-checkbox input[type=checkbox]:checked{background:#ffffff26;border-color:#ffffff80}.login-agreement-checkbox input[type=checkbox]:checked:after{content:"";position:absolute;left:3px;top:.5px;width:5px;height:9px;border:solid rgba(255,255,255,.8);border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}.login-agreement-checkbox a{color:#ffffff80;text-decoration:none}.login-agreement-checkbox a:hover{color:#ffffffbf;text-decoration:underline}.login-error{font-size:.78rem;color:#ff645af2;line-height:1.45;padding:.6em .9em;background:#f4433614;border-radius:8px;border-left:3px solid rgba(244,67,54,.5)}.login-countdown{font-size:.72rem;color:#ffffff47;font-variant-numeric:tabular-nums}.login-user-info{display:flex;flex-direction:column;gap:.5rem;align-items:center}.login-user-email{font-size:.9rem;color:#ffffffd9;font-weight:500}.login-user-credits{font-size:.78rem;color:#8cbeff8c;margin-bottom:.4rem}.btn-icon-active{color:#4aa0f0d9;border-color:#4a90d94d;background:#4a90d91a}.btn-icon-avatar{width:20px;height:20px;border-radius:50%;object-fit:cover}.cloud-modal{width:min(420px,92vw)}.cloud-body{display:flex;flex-direction:column;gap:.8rem}.cloud-login-prompt{text-align:center;padding:1.5rem 0}.cloud-login-prompt p{margin:0 0 1rem;color:#fff9;font-size:.85rem}.cloud-info-row{display:flex;justify-content:space-between;align-items:center;padding:.35rem 0}.cloud-info-label{font-size:.8rem;color:#ffffff80}.cloud-info-value{font-size:.85rem;font-weight:500;color:#ffffffd9}.cloud-stem-select{margin:.4rem 0}.cloud-stem-label{font-size:.8rem;color:#ffffff80;display:block;margin-bottom:.5rem}.cloud-stem-options{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}.cloud-stem-btn{display:flex;flex-direction:column;align-items:center;gap:.25rem;padding:.8rem .5rem;border:1px solid rgba(255,255,255,.08);border-radius:12px;background:#ffffff05;color:#ffffffb3;cursor:pointer;transition:all .2s;font-family:inherit}.cloud-stem-btn:hover{background:#4a90d914;border-color:#4a90d933}.cloud-stem-btn-active{background:#4a90d91f;border-color:#4a90d959;color:#8cc3fff2}.cloud-stem-num{font-size:1.3rem;font-weight:600}.cloud-stem-desc{font-size:.7rem;opacity:.65;text-align:center;line-height:1.3}.cloud-stem-cost{font-size:.72rem;color:#8cc3ffb3;font-weight:500}.cloud-stem-cost-insufficient{color:#ff645acc}.cloud-pricing-table{margin-top:.25rem}.cloud-pricing-table table{width:100%;border-collapse:collapse;font-size:.72rem;color:#ffffff73}.cloud-pricing-table th,.cloud-pricing-table td{padding:.25rem .5rem;text-align:center;border-bottom:1px solid rgba(255,255,255,.06)}.cloud-pricing-table th{color:#ffffff8c;font-weight:500}.cloud-pricing-table th:first-child,.cloud-pricing-table td:first-child{text-align:left}.cloud-warning{font-size:.78rem;color:#ff645ae6;text-align:center;padding:.5rem;background:#f4433614;border-radius:8px}.cloud-start-btn{margin-top:.2rem}.cloud-steps{display:flex;flex-direction:column;gap:.1rem;padding:.5rem 0}.cloud-step{display:flex;align-items:center;gap:.6rem;padding:.45rem 0;font-size:.82rem}.cloud-step-dot{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:.65rem;font-weight:600;transition:all .25s}.cloud-step-pending .cloud-step-dot{background:#ffffff0f;color:#ffffff4d;border:1px solid rgba(255,255,255,.08)}.cloud-step-pending .cloud-step-label{color:#ffffff4d}.cloud-step-active .cloud-step-dot{background:#4a90d926;border:1px solid rgba(74,144,217,.4);color:#8cc3fff2}.cloud-step-active .cloud-step-label{color:#8cc3fff2}.cloud-step-done .cloud-step-dot{background:#7ec87e26;border:1px solid rgba(126,200,126,.35);color:#7ec87ef2}.cloud-step-done .cloud-step-label{color:#ffffff8c}.cloud-step-error .cloud-step-dot{background:#f443361f;border:1px solid rgba(244,67,54,.35);color:#ff645af2}.cloud-step-error .cloud-step-label{color:#ff645acc}.cloud-step-label{color:#ffffffbf}.cloud-step-detail{font-size:.72rem;color:#8cc3ffb3;margin-left:auto;font-weight:500;font-variant-numeric:tabular-nums}.cloud-step-spinner{width:10px;height:10px;border:1.5px solid rgba(140,195,255,.3);border-top-color:#8cc3fff2;border-radius:50%;animation:spin .8s linear infinite}.cloud-step-num{font-size:.6rem}@keyframes spin{to{transform:rotate(360deg)}}.cloud-error-section{display:flex;flex-direction:column;align-items:center;gap:.8rem;padding:.5rem 0}.cloud-error-msg{font-size:.8rem;color:#ff645ae6;text-align:center;line-height:1.5}.cloud-results{display:flex;flex-direction:column;gap:.6rem;padding:.3rem 0}.cloud-results-title{font-size:.82rem;font-weight:500;color:#7ec87ee6}.cloud-results-grid{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}.cloud-result-item{display:flex;align-items:center;gap:.5rem;padding:.6rem .8rem;border-radius:10px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);color:#8cc3ffe6;text-decoration:none;font-size:.8rem;font-weight:500;transition:all .2s}.cloud-result-item:hover{background:#4a90d91a;border-color:#4a90d940;transform:translateY(-1px)}.cloud-result-item-downloading{pointer-events:none;border-color:#4a90d94d}.cloud-result-progress{position:absolute;inset:0;background:#4a90d926;transform-origin:left;transition:transform .15s linear}.cloud-expires-hint{font-size:.7rem;color:#ffffff59;text-align:center}.cloud-retention-hint{font-size:.72rem;color:#ffc86499;text-align:center;margin:.25rem 0}.cloud-processing-hint{font-size:.75rem;color:#fff6;text-align:center;line-height:1.5;margin-top:.5rem}.cloud-expired{font-size:.82rem;color:#ffffff73;text-align:center;padding:1rem 0}.cloud-new-btn{margin-top:.3rem}.task-list-modal{width:min(480px,92vw);max-height:80vh;display:flex;flex-direction:column}.task-list-modal .login-body{overflow-y:auto;flex:1;min-height:0}.task-back-btn{background:none;border:none;color:#8cc3ffd9;font-size:.85rem;font-family:inherit;cursor:pointer;padding:0}.task-back-btn:hover{color:#8cc3ff}.task-filter-row{display:flex;gap:.35rem;flex-wrap:wrap;margin-bottom:.4rem}.task-filter-btn{padding:.3rem .65rem;border:1px solid rgba(255,255,255,.08);border-radius:8px;background:transparent;color:#ffffff80;font-size:.72rem;font-family:inherit;cursor:pointer;transition:all .2s}.task-filter-btn:hover{background:#ffffff0d;color:#ffffffbf}.task-filter-btn-active{background:#4a90d91f;border-color:#4a90d94d;color:#8cc3fff2}.task-list{display:flex;flex-direction:column;gap:.35rem}.task-item{display:flex;flex-direction:column;gap:.25rem;padding:.65rem .8rem;border:1px solid rgba(255,255,255,.06);border-radius:10px;background:#ffffff05;cursor:pointer;transition:all .2s;text-align:left;font-family:inherit;width:100%;color:inherit}.task-item:hover{background:#ffffff0a;border-color:#ffffff1a}.task-item-top{display:flex;justify-content:space-between;align-items:center}.task-item-name{font-size:.82rem;font-weight:500;color:#fffc;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:85%}.task-status-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.task-item-bottom{display:flex;gap:.8rem;font-size:.7rem;color:#fff6}.task-status-badge{font-size:.82rem;font-weight:500}.task-filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.task-loading,.task-empty{text-align:center;padding:2rem 0;color:#fff6;font-size:.82rem}.task-detail{display:flex;flex-direction:column;gap:.5rem}.task-pagination{display:flex;align-items:center;justify-content:center;gap:.8rem;margin-top:.6rem}.task-page-btn{background:#ffffff0d;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:#fff9;width:32px;height:32px;display:flex;align-items:center;justify-content:center;cursor:pointer;font-size:1rem;font-family:inherit;transition:all .2s}.task-page-btn:hover:not(:disabled){background:#4a90d91a;color:#8cc3ffe6}.task-page-btn:disabled{opacity:.3;cursor:not-allowed}.task-page-info{font-size:.78rem;color:#ffffff80;font-variant-numeric:tabular-nums}.btn-cloud{display:flex;align-items:center;gap:.35rem;background:#4a90d91a;border-color:#4a90d940;color:#8cc3ffe6}.btn-cloud:hover:not(:disabled){background:#4a90d92e;border-color:#4a90d966}.btn-cloud:disabled{opacity:.35}.login-btn-tasks{background:#4a90d914;color:#8cc3ffd9}.login-btn-tasks:before{border-color:#4a90d92e}.login-btn-tasks:hover:not(:disabled){background:#4a90d929;color:#8cc3ff}.login-btn-buy{background:#7ec87e1f;color:#7ec87ee6}.login-btn-buy:before{border-color:#7ec87e33}.login-btn-buy:hover:not(:disabled){background:#7ec87e33;color:#7ec87e}.login-btn-checkin{background:#7ec87e14;color:#a0d2a0d9}.login-btn-checkin:before{border-color:#7ec87e26}.login-btn-checkin:hover:not(:disabled){background:#7ec87e29;color:#a0d2a0}.login-btn-secondary{background:#ffffff0a;color:#ffffff8c;font-size:.8rem}.login-btn-secondary:before{border-color:#ffffff14}.login-btn-secondary:hover:not(:disabled){background:#ffffff14;color:#fffc}.welcome-bonus-icon{font-size:2.5rem;text-align:center;margin-bottom:.5rem}.welcome-bonus-text{text-align:center;font-size:1rem;color:#ffffffd9;margin-bottom:1rem;line-height:1.5}.buy-credits-packages{display:flex;flex-direction:column;gap:.75rem}.buy-credits-card{position:relative;display:flex;flex-direction:column;align-items:center;gap:.5rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:1.25rem 1rem 1rem;cursor:pointer;transition:background .15s,border-color .15s}.buy-credits-card:hover:not(:disabled){background:#4a90d914;border-color:#4a90d940}.buy-credits-card:disabled{opacity:.5;cursor:not-allowed}.buy-credits-card-loading{border-color:#4a90d94d}.buy-credits-card-best{border-color:#7ec87e59;background:#7ec87e0d}.buy-credits-card-best:hover:not(:disabled){border-color:#7ec87e80;background:#7ec87e14}.buy-credits-promo-banner{text-align:center;font-size:.8rem;font-weight:500;color:#ffc83cf2;background:#ffc83c14;border:1px solid rgba(255,200,60,.15);border-radius:8px;padding:.5rem .75rem;margin-bottom:.75rem}.buy-credits-badge{position:absolute;top:-.55rem;right:.75rem;font-size:.65rem;font-weight:600;color:#1a1a2e;background:linear-gradient(135deg,#7ec87e,#5ab85a);padding:.15rem .5rem;border-radius:4px;letter-spacing:.03em}.buy-credits-badge-promo{right:auto;left:.75rem;background:linear-gradient(135deg,#ffc83c,#e8a000)}.buy-credits-original{font-size:.7rem;color:#ffffff59;text-decoration:line-through;margin-top:-.3rem}.buy-credits-amount{font-size:1.15rem;font-weight:600;color:#fffffff2}.buy-credits-meta{display:flex;align-items:baseline;gap:.5rem}.buy-credits-price{font-size:1rem;color:#ffffffbf;font-weight:500}.buy-credits-unit{font-size:.75rem;color:#fff6}.buy-credits-discount{font-size:.75rem;font-weight:500;color:#7ec87ef2}.buy-credits-action{font-size:.8rem;color:#8cc3ffd9;background:#4a90d91f;padding:.3rem .75rem;border-radius:6px;margin-top:.15rem}.payment-result-body{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:180px}.payment-result-polling,.payment-result-success,.payment-result-failed,.payment-result-timeout{display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}.payment-result-polling .cloud-step-spinner{width:32px;height:32px}.payment-result-title{font-size:1.1rem;font-weight:500;color:#ffffffe6;margin:0}.payment-result-detail{font-size:.85rem;color:#fff9;margin:0}.credit-positive{color:#7ec87ee6;font-weight:500;font-size:.9rem}.credit-negative{color:#e84a4ae6;font-weight:500;font-size:.9rem}.load-more-btn{display:block;width:100%;padding:.6rem;margin-top:.5rem;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);border-radius:8px;color:#fff9;font-size:.8rem;cursor:pointer;transition:background .15s}.load-more-btn:hover:not(:disabled){background:#4a90d91a;color:#8cc3ffe6}.load-more-btn:disabled{opacity:.5;cursor:not-allowed}.cloud-buy-btn{margin-top:.5rem;font-size:.8rem;padding:.35rem .75rem}.error-boundary{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;background:#0a0a14;z-index:9999;padding:2rem}.error-boundary-content{text-align:center;max-width:420px;display:flex;flex-direction:column;align-items:center;gap:1rem}.error-boundary-title{color:#ffffffe6;font-size:1.25rem;font-weight:500;margin:0}.error-boundary-message{color:#ffffff80;font-size:.85rem;line-height:1.5;margin:0;word-break:break-word}.error-boundary-actions{display:flex;gap:.75rem;margin-top:.5rem}.error-boundary-btn{background:#4a90d926;color:#8cc3ffe6;border:1px solid rgba(74,144,217,.25);padding:.5rem 1.25rem;border-radius:6px;cursor:pointer;font-size:.85rem}.error-boundary-btn:hover{background:#4a90d940}.error-boundary-btn-secondary{background:#ffffff0d;color:#fff9;border:1px solid rgba(255,255,255,.1);padding:.5rem 1.25rem;border-radius:6px;cursor:pointer;font-size:.85rem}.error-boundary-btn-secondary:hover{background:#ffffff1a}.dialog-overlay{z-index:1100}.dialog-modal{max-width:360px;min-width:280px}.dialog-body{padding:1.25rem 1.5rem 1.5rem;display:flex;flex-direction:column;gap:1rem}.dialog-message{color:#ffffffd9;font-size:.9rem;line-height:1.5;margin:0;text-align:center}.dialog-input{width:100%;box-sizing:border-box}.dialog-actions{display:flex;gap:.75rem;justify-content:flex-end}.dialog-btn{padding:.45rem 1.1rem;border-radius:6px;font-size:.85rem;cursor:pointer;border:none}.dialog-btn-cancel{background:#ffffff0f;color:#fff9}.dialog-btn-cancel:hover{background:#ffffff1f;color:#fffc}.dialog-btn-confirm{background:#4a90d933;color:#8cc3fff2}.dialog-btn-confirm:hover{background:#4a90d959}.rec-trim-hint{flex-basis:100%;text-align:center;color:#ffc86499;font-size:.72rem}.cloud-credit-hint{color:#ffc86499;font-size:.78rem;text-align:center;margin-top:.5rem}@keyframes ctx-edit-fade-in{0%{opacity:0}to{opacity:1}}@keyframes ctx-edit-fade-out{0%{opacity:1}to{opacity:0}}.ctx-edit-fade-in{animation:ctx-edit-fade-in .3s ease-out forwards;pointer-events:none}.ctx-edit-fade-out{animation:ctx-edit-fade-out .3s ease-in forwards;pointer-events:none}.beat-context-menu{position:absolute;z-index:9999;display:flex;flex-direction:column;min-width:90px;padding:4px 0;background:#1e1e2dbf;border:1px solid rgba(255,255,255,.12);border-radius:8px;box-shadow:0 4px 16px #00000080;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none}.beat-context-menu-item{display:block;width:100%;padding:6px 14px;border:none;background:none;color:#fffc;font-size:.78rem;text-align:left;cursor:pointer;transition:background .1s}.beat-context-menu-item:hover{background:#ffffff1a}.beat-context-menu-item.active{color:#6ecfff}.beat-context-menu-item.active:before{content:"✓ "}.ctx-volume-row{display:flex;align-items:center;gap:6px;padding:6px 10px 4px;border-top:1px solid rgba(255,255,255,.1);margin-top:2px}.ctx-volume-row label{font-size:10px;color:#ffffff80;min-width:36px;white-space:nowrap}.ctx-sustain-controls{padding:6px 10px 4px;border-top:1px solid rgba(255,255,255,.1);margin-top:2px;display:flex;flex-direction:column;gap:6px}.ctx-sustain-row{display:flex;align-items:center;gap:6px}.ctx-sustain-row label{font-size:10px;color:#ffffff80;min-width:36px;white-space:nowrap}.ctx-sustain-slider{flex:1;height:6px;-webkit-appearance:none;appearance:none;background:#ffffff26;border-radius:3px;outline:none;min-width:60px}.ctx-sustain-slider::-webkit-slider-thumb{-webkit-appearance:none;width:18px;height:18px;border-radius:50%;background:#ffffffd9;cursor:pointer}.ctx-sustain-slider::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#ffffffd9;border:none;cursor:pointer}.ctx-sustain-value{font-size:10px;color:#ffffff80;min-width:28px;text-align:right}.ctx-reset-btn{font-size:9px!important;padding:1px 5px!important;min-width:unset!important;opacity:.7}.ctx-reset-btn:hover{opacity:1}.ctx-decay-btns{display:flex;gap:2px}.ctx-decay-btn{padding:2px 6px;border:1px solid rgba(255,255,255,.15);border-radius:4px;background:none;color:#fff9;font-size:10px;cursor:pointer;transition:background .1s,color .1s}.ctx-decay-btn:hover{background:#ffffff1a}.ctx-decay-btn.active{background:#6ecfff33;color:#6ecfff;border-color:#6ecfff66}@keyframes sub-beat-flash{0%{opacity:0}10%{opacity:1}to{opacity:0}}.sub-beat-flash{opacity:0;animation:sub-beat-flash .3s ease-out forwards}.share-modal{width:min(340px,88vw)}.share-modal-body{display:flex;flex-direction:column;align-items:center;gap:.8rem}.share-icon-area{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#4a90d926,#8c64ff1f);border:1px solid rgba(100,140,220,.2);display:flex;align-items:center;justify-content:center;color:#4aa0f0b3;margin-bottom:.2rem}.share-info{text-align:center}.share-modal-name{font-size:.95rem;font-weight:600;color:#ffffffeb;letter-spacing:.01em}.share-modal-time{font-size:.72rem;color:#ffffff61;margin-top:.2rem}.share-url-row{width:100%}.share-modal-url{font-size:.78rem;color:#fff9;word-break:break-all;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);padding:.55rem .75rem;border-radius:8px;-webkit-user-select:all;user-select:all;line-height:1.5}.share-modal-hint{font-size:.75rem;color:#ffffff6b}.share-modal-actions{display:flex;gap:.5rem;width:100%;margin-top:.3rem}.share-modal-actions .btn{flex:1;font-size:.82rem;padding:.55rem .7rem}.groove-tour-popover{background:#1e1e2e!important;color:#e0e0e0!important;border-radius:12px!important;box-shadow:0 8px 32px #00000080!important}.groove-tour-popover .driver-popover-title{color:#fff!important;font-size:1rem!important;font-weight:600!important}.groove-tour-popover .driver-popover-description{color:#b0b0c0!important;font-size:.85rem!important;line-height:1.5!important}.groove-tour-popover .driver-popover-progress-text{color:#888!important;font-size:.75rem!important}.groove-tour-popover .driver-popover-footer button{text-shadow:none!important}.groove-tour-popover .driver-popover-prev-btn{background:transparent!important;color:#aaa!important;border:1px solid #444!important;border-radius:6px!important;font-size:.8rem!important;padding:.35rem .8rem!important}.groove-tour-popover .driver-popover-prev-btn:hover{background:#2a2a3a!important;color:#fff!important}.groove-tour-popover .driver-popover-next-btn{background:#4a6cf7!important;color:#fff!important;border:none!important;border-radius:6px!important;font-size:.8rem!important;padding:.35rem .8rem!important}.groove-tour-popover .driver-popover-next-btn:hover{background:#3b5de7!important}.groove-tour-popover .driver-popover-arrow-side-top{border-top-color:#1e1e2e!important}.groove-tour-popover .driver-popover-arrow-side-bottom{border-bottom-color:#1e1e2e!important}.groove-tour-popover .driver-popover-arrow-side-left{border-left-color:#1e1e2e!important}.groove-tour-popover .driver-popover-arrow-side-right{border-right-color:#1e1e2e!important}.groove-tour-popover button.driver-popover-close-btn{color:#888!important}.groove-tour-popover button.driver-popover-close-btn:hover{color:#fff!important}
