@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-vietnamese-opsz-normal-D9N6E8K1.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-latin-ext-opsz-normal-IcJDqblK.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Bricolage Grotesque Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(./bricolage-grotesque-latin-opsz-normal-Cre6nC2_.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-cyrillic-ext-wght-normal-DjL33-gN.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-cyrillic-wght-normal-BEAKL7Jp.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-vietnamese-wght-normal-6IgcOCM7.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-latin-ext-wght-normal-DC-KSUi6.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-latin-wght-normal-BgDaEnEv.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--paper:#e9ebf1;--surface:#fff;--surface-2:#f3f4f8;--ink:#14162b;--ink-2:#555971;--ink-3:#8a8ea5;--line:#dadde6;--cobalt:#2f45e8;--cobalt-hover:#2436c9;--on-cobalt:#fff;--rec:#e8383b;--t0:#f2a21c;--t1:#23b287;--t2:#8c68ff;--t3:#f95b7e;--t4:#2a96ec;--t5:#8dbb2e;--shadow:0 1px 0 #14162b0a, 0 12px 32px -18px #14162b47;--display:"Bricolage Grotesque Variable", ui-sans-serif, system-ui, sans-serif;--ui:"Geist Variable", ui-sans-serif, system-ui, sans-serif;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--paper:#12142a;--surface:#1b1e38;--surface-2:#252949;--ink:#edeef8;--ink-2:#aaadc8;--ink-3:#767aa0;--line:#2f3359;--cobalt:#7d8cff;--cobalt-hover:#98a4ff;--on-cobalt:#0f1133;--rec:#ff5a5c;--t0:#ffb53f;--t1:#3fd0a4;--t2:#a68bff;--t3:#ff7c98;--t4:#55b2ff;--t5:#a9d64c;--shadow:0 1px 0 #0003, 0 18px 40px -20px #0009;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body{height:100%;margin:0}body{background:var(--paper);color:var(--ink);font-family:var(--ui);-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1;font-size:15px;line-height:1.45}button,input{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}:focus-visible{outline:2.5px solid var(--cobalt);outline-offset:2px;border-radius:10px}.sr{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}svg.i{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:20px;height:20px}.app{grid-template-columns:272px minmax(0,1fr) 360px;gap:0;height:100dvh;display:grid}.pane{scrollbar-width:thin;scrollbar-color:var(--line) transparent;min-height:0;overflow:auto}.side{flex-direction:column;gap:22px;padding:22px 16px 16px 20px;display:flex}.stage{background:var(--surface);box-shadow:var(--shadow);border-radius:28px;flex-direction:column;margin:12px 0;display:flex;container-type:inline-size}.library{flex-direction:column;gap:14px;padding:22px 20px 16px;display:flex}.brand{font-family:var(--display);letter-spacing:-.02em;font-variation-settings:"opsz" 96;align-items:center;gap:10px;font-size:22px;font-weight:750;display:flex}.brand svg{width:28px;height:28px}.rec-btn{background:var(--ink);width:100%;color:var(--paper);border-radius:18px;align-items:center;gap:12px;padding:14px 16px;font-size:15px;font-weight:600;transition:transform .15s,background .15s;display:flex}.rec-btn>span:not(.rec-dot){white-space:nowrap}.rec-btn:hover{transform:translateY(-1px)}.rec-btn:active{transform:translateY(0)scale(.99)}.rec-dot{background:var(--rec);width:14px;height:14px;box-shadow:0 0 0 4px color-mix(in srgb,var(--rec) 28%,transparent);border-radius:50%}.rec-btn kbd{font:500 12px var(--ui);opacity:.55;border:1px solid;border-radius:6px;margin-left:auto;padding:1px 6px}.sec-head{justify-content:space-between;align-items:center;gap:8px;padding:0 4px;display:flex}.sec-head h2{font:650 15px var(--ui);color:var(--ink);margin:0}.icon-btn{width:34px;height:34px;color:var(--ink-2);border-radius:11px;place-items:center;transition:background .15s,color .15s;display:grid}.icon-btn:hover{background:color-mix(in srgb,var(--ink) 7%,transparent);color:var(--ink)}.loops{flex-direction:column;gap:2px;margin:0;padding:0;list-style:none;display:flex}.loop-item{text-align:left;border-radius:14px;align-items:center;gap:12px;width:100%;padding:9px 10px;transition:background .15s;display:flex}.loop-item:hover{background:color-mix(in srgb,var(--ink) 5%,transparent)}.loop-item[aria-current=true]{background:var(--surface);box-shadow:var(--shadow)}.loop-item svg.mini{flex:none;width:38px;height:38px}.loop-item .nm{font-size:14.5px;font-weight:600;line-height:1.25;display:block}.loop-item .mt{color:var(--ink-3);font-size:13px}.loop-item .playing-dot{background:var(--cobalt);border-radius:50%;width:8px;height:8px;margin-left:auto;animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.3}}.side-foot{flex-direction:column;gap:10px;margin-top:auto;display:flex}.lang{color:var(--ink-3);align-items:center;gap:8px;padding:0 4px;display:flex}.lang svg.i{width:18px;height:18px}.lang .select{flex:1;min-width:0;display:flex;position:relative}.lang select{border:1px solid var(--line);background:var(--surface);min-width:0;height:36px;color:var(--ink);font:500 14px var(--ui);appearance:none;cursor:pointer;border-radius:11px;flex:1;padding:0 32px 0 10px}.lang select:hover{border-color:var(--ink-3)}.lang .select:after{content:"";border-right:2px solid var(--ink-3);border-bottom:2px solid var(--ink-3);pointer-events:none;width:7px;height:7px;position:absolute;top:50%;right:13px;transform:translateY(-70%)rotate(45deg)}.storage{color:var(--ink-2);border:1px dashed var(--line);border-radius:14px;align-items:flex-start;gap:10px;padding:12px;font-size:13px;display:flex}.storage strong{color:var(--ink);font-weight:600;display:block}.storage .meter{background:var(--line);border-radius:4px;height:4px;margin-top:8px;overflow:hidden}.storage .meter i{background:var(--t1);border-radius:4px;width:8%;height:100%;display:block}.stage-head{align-items:flex-start;gap:12px;padding:26px 32px 4px;display:flex}.title-wrap{flex:1;min-width:0}.loop-title{width:100%;font-family:var(--display);letter-spacing:-.03em;font-variation-settings:"opsz" 96;text-overflow:ellipsis;background:0 0;border:0;border-radius:8px;margin:0;padding:2px 0;font-size:clamp(28px,4.2cqi,44px);font-weight:700;line-height:1.05}.loop-title:hover{background:color-mix(in srgb,var(--ink) 4%,transparent)}.loop-title:focus-visible{outline-offset:4px}.loop-sub{color:var(--ink-2);flex-wrap:wrap;gap:14px;margin-top:6px;font-size:14px;display:flex}.loop-sub span{align-items:center;gap:6px;display:inline-flex}.loop-sub svg.i{width:16px;height:16px}.stage-body{align-items:start;gap:28px;padding:18px 32px 32px;display:grid}@container (width>=760px){.stage-body{grid-template-columns:minmax(280px,340px) minmax(0,1fr);gap:36px}.order{margin-top:8px}}.deck{flex-direction:column;align-items:center;gap:20px;display:flex}.ring{aspect-ratio:1;width:min(100%,400px);position:relative}.ring svg{width:100%;height:100%;display:block;overflow:visible}.ring .track{stroke:var(--surface-2);fill:none}.ring .seg{fill:none;stroke-linecap:round;cursor:pointer;transition:stroke-width .25s,opacity .25s}.ring .seg:hover{stroke-width:32px;opacity:1!important}.ring.is-playing .seg{opacity:.38}.ring.is-playing .seg.on{opacity:1;stroke-width:34px}.ring .ph line{stroke:var(--ink);stroke-width:3px;stroke-linecap:round}.ring .ph circle{fill:var(--ink)}.ring .start{fill:var(--ink-3)}.ring-center{text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:absolute;inset:22%}.rc-pos{color:var(--ink-3);font-size:13px;font-weight:500}.rc-title{font-family:var(--display);letter-spacing:-.015em;font-variation-settings:"opsz" 48;-webkit-line-clamp:3;-webkit-box-orient:vertical;max-width:100%;font-size:clamp(19px,5.2cqi,26px);font-weight:650;line-height:1.12;display:-webkit-box;overflow:hidden}.rc-time{color:var(--ink-2);font-variant-numeric:tabular-nums;font-size:14px}.rc-pass{color:var(--ink-3);font-size:12.5px}.ring.empty .track{stroke:var(--line);stroke-width:4px;stroke-dasharray:1 14;stroke-linecap:round}.transport{align-items:center;gap:18px;display:flex}.t-btn{width:48px;height:48px;color:var(--ink);border-radius:50%;place-items:center;transition:background .15s;display:grid}.t-btn:hover{background:var(--surface-2)}.t-btn:disabled{opacity:.3;cursor:not-allowed;background:0 0}.t-btn svg.i{width:22px;height:22px}.play{background:var(--cobalt);width:72px;height:72px;color:var(--on-cobalt);box-shadow:0 10px 24px -10px var(--cobalt);border-radius:50%;place-items:center;transition:transform .15s,background .15s;display:grid}.play:hover{background:var(--cobalt-hover);transform:scale(1.04)}.play:active{transform:scale(.97)}.play svg{fill:currentColor;stroke:none;width:28px;height:28px}.play:disabled{opacity:.4;cursor:not-allowed;transform:none}.chips{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.chip{border:1px solid var(--line);border-radius:999px;align-items:baseline;gap:6px;padding:7px 13px;font-size:13.5px;transition:border-color .15s,background .15s;display:inline-flex}.chip:hover{border-color:var(--ink-3)}.chip .k{color:var(--ink-3)}.chip[aria-pressed=true]{background:color-mix(in srgb,var(--cobalt) 12%,transparent);border-color:color-mix(in srgb,var(--cobalt) 45%,var(--line))}.chip[aria-pressed=true] .v{color:var(--cobalt)}.chip .v{font-weight:600}.order-head{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:10px;display:flex}.order-head h2{font:650 17px var(--ui);margin:0}.order-head p{color:var(--ink-3);margin:0;font-size:13px}.seq{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex;position:relative}.row{background:var(--surface);border:1px solid var(--line);border-radius:14px;grid-template-columns:auto 18px minmax(0,1fr) auto;align-items:center;gap:10px;padding:8px 8px 8px 4px;transition:transform .18s,box-shadow .18s,border-color .18s;display:grid;position:relative;overflow:hidden}.row .fill{background:color-mix(in srgb,var(--c) 16%,transparent);pointer-events:none;width:0;position:absolute;inset:0}.row>:not(.fill){position:relative}.row.on{border-color:color-mix(in srgb,var(--c) 70%,var(--line))}.row.dragging{z-index:5;border-color:var(--ink-3);cursor:grabbing;transition:none;box-shadow:0 18px 40px -16px #14162b73}.handle{width:30px;height:40px;color:var(--ink-3);cursor:grab;touch-action:none;border-radius:9px;place-items:center;display:grid}.handle:hover{color:var(--ink);background:var(--surface-2)}.num{color:var(--ink-3);text-align:right;font-size:13px;font-weight:500}.row .body{flex-direction:column;gap:3px;min-width:0;display:flex}.row .line{align-items:center;gap:8px;min-width:0;display:flex}.row .ttl{white-space:nowrap;text-overflow:ellipsis;flex:1;min-width:0;font-size:14.5px;font-weight:600;overflow:hidden}.row .line:before{content:"";background:var(--c);border-radius:3px;flex:none;width:9px;height:9px}.row .wave{width:100%;height:16px;color:var(--c)}.row .dur{color:var(--ink-2);flex:none;font-size:13px}.row .rm{opacity:0;transition:opacity .15s}.row:hover .rm,.row:focus-within .rm{opacity:1}@media (hover:none){.row .rm{opacity:1}}.seq-empty{border:1.5px dashed var(--line);text-align:center;color:var(--ink-2);border-radius:18px;padding:28px 22px}.seq-empty strong{color:var(--ink);margin-bottom:4px;font-size:16px;display:block}.seq-empty button{margin-top:14px}.search{background:var(--surface);height:42px;box-shadow:var(--shadow);color:var(--ink-3);border:1px solid #0000;border-radius:14px;align-items:center;gap:8px;padding:0 12px;display:flex}.search:focus-within{border-color:var(--cobalt)}.search input{min-width:0;height:100%;color:var(--ink);background:0 0;border:0;outline:none;flex:1}.search input::placeholder{color:var(--ink-3)}.clips{flex-direction:column;gap:8px;margin:0;padding:0;list-style:none;display:flex}.clip{background:var(--surface);box-shadow:var(--shadow);border-radius:18px;grid-template-columns:44px minmax(0,1fr) auto auto;align-items:center;gap:10px;padding:10px 6px 10px 10px;display:grid;position:relative}.clip.new{animation:.6s cubic-bezier(.2,.9,.3,1.2) arrive}@keyframes arrive{0%{opacity:0;transform:translateY(-8px)scale(.97)}}.prev{background:color-mix(in srgb,var(--c) 18%,transparent);width:44px;height:44px;color:var(--c);border-radius:50%;place-items:center;transition:transform .15s;display:grid}.prev:hover{transform:scale(1.06)}.prev svg{fill:currentColor;stroke:none;width:18px;height:18px}.clip .body{min-width:0}.clip .ttl{-webkit-line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;font-size:14.5px;font-weight:600;line-height:1.3;display:-webkit-box;overflow:hidden}.clip .mt{white-space:nowrap;color:var(--ink-3);gap:10px;margin-top:1px;font-size:12.5px;display:flex;overflow:hidden}.clip .wave{width:100%;height:22px;color:var(--c);margin-top:6px}.add{border:1px solid var(--line);border-radius:12px;justify-content:center;align-items:center;width:36px;height:36px;padding:0;font-size:13.5px;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.add:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}.add svg.i{width:18px;height:18px}.add{position:relative}.add.in-loop{border-color:color-mix(in srgb,var(--cobalt) 55%,var(--line));color:var(--cobalt)}.add .badge{background:var(--cobalt);min-width:18px;height:18px;color:var(--on-cobalt);font:700 11px/18px var(--ui);text-align:center;box-shadow:0 0 0 2px var(--surface);border-radius:9px;padding:0 5px;position:absolute;top:-7px;right:-7px}.add:hover .badge{box-shadow:0 0 0 2px var(--ink)}.add .lbl{display:none}.wave .b{fill:currentColor;opacity:.35}.wave .b.p{opacity:1}.btn{border:1px solid var(--line);border-radius:14px;justify-content:center;align-items:center;gap:8px;height:44px;padding:0 18px;font-weight:600;transition:background .15s,transform .1s;display:inline-flex}.btn:hover{background:var(--surface-2)}.btn.primary{background:var(--cobalt);border-color:var(--cobalt);color:var(--on-cobalt)}.btn.primary:hover{background:var(--cobalt-hover)}.btn.danger{color:var(--rec)}.scrim{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);z-index:50;opacity:0;pointer-events:none;background:#0a0b1a8c;place-items:center;padding:16px;transition:opacity .2s;display:grid;position:fixed;inset:0}.scrim.open{opacity:1;pointer-events:auto}.sheet{background:var(--surface);border-radius:28px;width:min(520px,100%);padding:26px 26px 22px;transition:transform .28s cubic-bezier(.2,.9,.3,1);transform:translateY(16px)scale(.98);box-shadow:0 40px 80px -30px #00000080}.scrim.open .sheet{transform:none}.sheet h2{font:650 15px var(--ui);color:var(--ink-2);align-items:center;gap:8px;margin:0;display:flex}.sheet h2 .live{background:var(--rec);border-radius:50%;width:10px;height:10px;animation:1s infinite pulse}.clock{font-family:var(--display);letter-spacing:-.03em;font-variation-settings:"opsz" 96;font-variant-numeric:tabular-nums;margin:14px 0 6px;font-size:64px;font-weight:600;line-height:1}.clock small{color:var(--ink-3);font-size:.45em;font-weight:500}.scope{width:100%;height:96px;margin:10px 0 20px;display:block}.rec-actions{grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;display:grid}.rec-actions>.btn{justify-self:start}.stop{border:3px solid var(--rec);border-radius:50%;place-items:center;width:72px;height:72px;transition:transform .15s;display:grid}.stop:hover{transform:scale(1.05)}.stop i{background:var(--rec);border-radius:7px;width:26px;height:26px}.field{flex-direction:column;gap:6px;margin:6px 0 14px;display:flex}.field label{color:var(--ink-2);font-size:13px;font-weight:500}.field input{border:1px solid var(--line);background:var(--surface-2);border-radius:14px;outline:none;height:48px;padding:0 14px;font-size:16px;font-weight:600}.field input:focus{border-color:var(--cobalt)}.check{color:var(--ink-2);cursor:pointer;align-items:center;gap:10px;margin-bottom:20px;font-size:14px;display:flex}.check input{width:18px;height:18px;accent-color:var(--cobalt)}.review-actions{flex-wrap:wrap;justify-content:flex-end;gap:10px;display:flex}.review-actions .btn:first-child{margin-right:auto}[hidden]{display:none!important}.toast{background:var(--ink);color:var(--paper);opacity:0;z-index:60;pointer-events:none;border-radius:14px;align-items:center;gap:14px;max-width:calc(100vw - 32px);padding:12px 18px;font-size:14px;font-weight:500;transition:opacity .2s,transform .25s;display:flex;position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px)}.toast.show{opacity:1;pointer-events:auto;transform:translate(-50%)}.tabbar{display:none}@media (width<=1280px){.app{grid-template-columns:244px minmax(0,1fr) 320px}.rec-btn kbd{display:none}}@media (width<=1060px){.app{height:auto;min-height:100dvh;padding-bottom:calc(88px + env(safe-area-inset-bottom));display:block}.pane{overflow:visible}.app>.pane{display:none}.app[data-view=loops] .side,.app[data-view=player] .stage,.app[data-view=library] .library{display:flex}.side,.library{max-width:640px;margin:0 auto;padding:20px 16px}.stage{box-shadow:none;background:var(--paper);border-radius:0;min-height:calc(100dvh - 88px);margin:0}.stage-head{padding:20px 16px 0}.stage-body{width:100%;max-width:960px;margin:0 auto;padding:12px 16px 24px}.row{background:var(--surface)}.side .rec-btn,.side .rec-hint{display:none}.tabbar{z-index:40;padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);align-items:center;display:grid;position:fixed;bottom:0;left:0;right:0}.tab{color:var(--ink-3);border-radius:12px;flex-direction:column;align-items:center;gap:3px;padding:6px 0;font-size:12px;font-weight:500;display:flex}.tab[aria-selected=true]{color:var(--ink)}.tab[aria-selected=true] svg.i{stroke-width:2.3px}.fab{right:max(16px,env(safe-area-inset-right));bottom:calc(84px + env(safe-area-inset-bottom));z-index:41;background:var(--ink);border-radius:50%;place-items:center;width:60px;height:60px;transition:transform .15s;display:grid;position:fixed;box-shadow:0 14px 28px -12px #0000008c,0 2px 6px #00000026}.fab:active{transform:scale(.94)}.fab span{background:var(--rec);border-radius:50%;width:22px;height:22px}.app[data-view=loops]~.fab{display:none}.app[data-view=player],.app[data-view=library]{padding-bottom:calc(160px + env(safe-area-inset-bottom))}.toast{bottom:calc(156px + env(safe-area-inset-bottom));max-width:calc(100vw - 32px)}.library .add,.lib-target{display:none}.add-more{width:100%;height:48px;color:var(--ink-2);border-style:dashed;margin-top:10px;display:flex}.add-more svg.i{width:18px;height:18px}.add-more[hidden]{display:none}.scrim{align-items:end;padding:0}.sheet{padding-bottom:calc(22px + env(safe-area-inset-bottom));border-radius:28px 28px 0 0;transform:translateY(100%)}}@media (width<=420px){.clock{font-size:52px}}.btn.sm{border-radius:11px;height:34px;padding:0 12px;font-size:13px}.backup-status{color:var(--ink-3);margin:10px 0 8px;font-size:12.5px}.backup-status.stale{color:var(--rec)}.backup-actions{flex-wrap:wrap;gap:6px;display:flex}.backup-actions .btn{flex:auto}.link-btn{color:var(--ink-2);border-radius:10px;align-self:flex-start;align-items:center;gap:8px;margin:0 -4px;padding:6px 8px;font-size:13.5px;font-weight:500;display:inline-flex}.link-btn:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 6%,transparent)}.link-btn svg.i{width:17px;height:17px}.sheet.about{flex-direction:column;gap:12px;width:min(560px,100%);max-height:min(760px,90dvh);padding:22px 22px 18px;display:flex}.about-body{overscroll-behavior:contain;color:var(--ink-2);margin:0 -6px;padding:0 6px 4px;font-size:15px;line-height:1.55;overflow:auto}.about-body .lead{color:var(--ink);font-size:16px}.about-body h3{font:650 15px var(--ui);color:var(--ink);margin:22px 0 6px}.about-body h4{font:600 14px var(--ui);color:var(--ink);margin:12px 0 4px}.about-body p{margin:0 0 8px}.about-body ol{margin:0 0 6px;padding-left:22px}.about-body li{margin:2px 0}.about-body .note{color:var(--ink-3);font-size:13.5px}.install-steps{gap:4px 24px;display:grid}@media (width>=560px){.install-steps{grid-template-columns:1fr 1fr}}.installed-note{font-weight:600;color:var(--t1)!important}#install-now{margin:4px 0 10px}.about-body .version{color:var(--ink-3);margin-top:22px;font-size:12.5px}@media (width>=1061px){.fab,.add-more{display:none}}.lib-target{color:var(--ink-3);white-space:nowrap;text-overflow:ellipsis;flex:none;margin:-8px 4px 0;font-size:13px;overflow:hidden}.lib-target:empty{display:none}.sheet.picker{flex-direction:column;gap:14px;max-height:min(680px,86dvh);padding:22px 20px 18px;display:flex}.picker-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.picker-head h2{font:650 18px/1.25 var(--ui);color:var(--ink);overflow-wrap:anywhere;min-width:0;margin:0}.picker-head .btn{flex:none;height:40px}.picker .search{box-shadow:none;background:var(--surface-2)}.picker-list{overscroll-behavior:contain;flex-direction:column;gap:8px;margin:0 -4px;padding:2px 4px;list-style:none;display:flex;overflow:auto}.picker .clip{background:var(--surface-2);box-shadow:none;grid-template-columns:44px minmax(0,1fr) auto;padding:10px}.picker .add .badge{box-shadow:0 0 0 2px var(--surface-2)}.picker .loop-item{background:var(--surface-2);padding:10px 12px}.picker .loop-item:hover{background:color-mix(in srgb,var(--ink) 8%,var(--surface-2))}.picker .loop-item .pick-plus{color:var(--ink-3);margin-left:auto}.picker .lib-empty{border-style:dashed}.sprite{width:0;height:0;position:absolute;overflow:hidden}.loops-head{margin-bottom:8px}.storage-icon{width:18px;height:18px;margin-top:1px}.grow{flex:1}.stop-hint{text-align:right;color:var(--ink-3);white-space:nowrap;justify-self:end;font-size:13px}#review-wave{color:var(--cobalt)}svg.i.i-sm{width:17px;height:17px}.rec-dot.sm{width:10px;height:10px;box-shadow:none;background:currentColor}.h0{--c:var(--t0)}.h1{--c:var(--t1)}.h2{--c:var(--t2)}.h3{--c:var(--t3)}.h4{--c:var(--t4)}.h5{--c:var(--t5)}.framed{max-width:520px;margin:18vh auto;padding:24px;font-size:16px}.head-actions{gap:2px;display:flex}.toast-action{color:var(--cobalt);white-space:nowrap;border-radius:8px;margin:-4px -8px -4px 0;padding:4px 8px;font-weight:650}@media (prefers-color-scheme:light){.toast-action{color:#a9b4ff}}@media (prefers-color-scheme:dark){.toast-action{color:#2f45e8}}.more{width:32px;height:36px}.menu{z-index:30;background:var(--surface);border:1px solid var(--line);border-radius:14px;flex-direction:column;min-width:180px;padding:6px;display:flex;position:absolute;top:calc(100% - 6px);right:8px;box-shadow:0 24px 48px -20px #0a0b1a73}.menu button{text-align:left;border-radius:9px;align-items:center;gap:10px;padding:9px 10px;font-size:14px;font-weight:500;display:flex}.menu button:hover,.menu button:focus-visible{background:var(--surface-2);outline:none}.menu button.danger{color:var(--rec)}.menu svg.i{width:17px;height:17px;color:var(--ink-3)}.menu button.danger svg.i{color:currentColor}.rename{border:1px solid var(--cobalt);background:var(--surface-2);border-radius:9px;outline:none;width:100%;height:30px;padding:0 8px;font-size:14.5px;font-weight:600}.lib-empty{border:1.5px dashed var(--line);text-align:center;color:var(--ink-2);border-radius:18px;padding:28px 22px}.lib-empty strong{color:var(--ink);margin-bottom:4px;font-size:16px;display:block}.lib-empty .btn{margin-top:14px}.review-top{justify-content:space-between;align-items:center;gap:12px;display:flex}.review-top .btn{min-width:84px}.rec-error{flex-direction:column;gap:14px;display:flex}.rec-error p{margin:0;font-size:16px;line-height:1.5}.rec-error .review-actions .btn:first-child{margin-right:0}.busy{color:var(--ink-2);align-items:center;gap:10px;min-height:96px;display:flex}.spinner{border:2.5px solid var(--line);border-top-color:var(--cobalt);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.boot-error{max-width:520px;margin:18vh auto;padding:24px;font-size:16px}.boot-error h1{font-family:var(--display);margin:0 0 8px;font-size:28px}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation:none!important}}
