@font-face{font-family:Futura PT;src:url(/fonts/FuturaPT-Light.woff2) format("woff2"),url(/fonts/FuturaPT-Light.woff) format("woff");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Futura PT;src:url(/fonts/FuturaPT-LightObl.woff2) format("woff2"),url(/fonts/FuturaPT-LightObl.woff) format("woff");font-weight:300;font-style:italic;font-display:swap}@font-face{font-family:Futura PT;src:url(/fonts/FuturaPT-Medium.woff2) format("woff2"),url(/fonts/FuturaPT-Medium.woff) format("woff");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:Futura PT;src:url(/fonts/FuturaPT-MediumObl.woff2) format("woff2"),url(/fonts/FuturaPT-MediumObl.woff) format("woff");font-weight:500;font-style:italic;font-display:swap}@font-face{font-family:Futura PT;src:url(/fonts/FuturaPT-Demi.woff2) format("woff2"),url(/fonts/FuturaPT-Demi.woff) format("woff");font-weight:600;font-style:normal;font-display:swap}@font-face{font-family:Futura PT;src:url(/fonts/FuturaPT-DemiObl.woff2) format("woff2"),url(/fonts/FuturaPT-DemiObl.woff) format("woff");font-weight:600;font-style:italic;font-display:swap}@font-face{font-family:Futura PT;src:url(/fonts/FuturaPT-Bold.woff2) format("woff2"),url(/fonts/FuturaPT-Bold.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:Futura PT;src:url(/fonts/FuturaPT-BoldObl.woff2) format("woff2"),url(/fonts/FuturaPT-BoldObl.woff) format("woff");font-weight:700;font-style:italic;font-display:swap}@font-face{font-family:Futura PT;src:url(/fonts/FuturaPT-ExtraBold.woff2) format("woff2"),url(/fonts/FuturaPT-ExtraBold.woff) format("woff");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:Futura PT;src:url(/fonts/FuturaPT-ExtraBoldObl.woff2) format("woff2"),url(/fonts/FuturaPT-ExtraBoldObl.woff) format("woff");font-weight:800;font-style:italic;font-display:swap}@font-face{font-family:Futura PT;src:url(/fonts/FuturaPT-Heavy.woff2) format("woff2"),url(/fonts/FuturaPT-Heavy.woff) format("woff");font-weight:900;font-style:normal;font-display:swap}@font-face{font-family:Futura PT;src:url(/fonts/FuturaPT-HeavyObl.woff2) format("woff2"),url(/fonts/FuturaPT-HeavyObl.woff) format("woff");font-weight:900;font-style:italic;font-display:swap}:root{--bg: #0a0a0a;--bg-elevated: #121212;--text: #f4f4f4;--muted: rgba(244, 244, 244, .62);--line: rgba(244, 244, 244, .14);--accent: #ffffff;--danger: #ff6b6b;--radius: 2px;--font: "Futura PT", "Avenir Next", "Segoe UI", sans-serif;--ease: cubic-bezier(.22, 1, .36, 1)}@media(prefers-color-scheme:light){:root{--bg: #f7f7f5;--bg-elevated: #ffffff;--text: #0a0a0a;--muted: rgba(10, 10, 10, .58);--line: rgba(10, 10, 10, .12);--accent: #0a0a0a;--danger: #c0392b}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;min-height:100%}body{font-family:var(--font);background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}#app{min-height:100vh}.page{position:relative;min-height:100vh;display:flex;flex-direction:column;overflow-x:hidden}.atmosphere{pointer-events:none;position:fixed;inset:0;z-index:0;background:radial-gradient(ellipse 80% 55% at 50% -10%,rgba(255,255,255,.08),transparent 55%),radial-gradient(ellipse 50% 40% at 85% 80%,rgba(255,255,255,.03),transparent 50%),var(--bg);animation:atmosphere-drift 18s var(--ease) infinite alternate}@media(prefers-color-scheme:light){.atmosphere{background:radial-gradient(ellipse 80% 55% at 50% -10%,rgba(0,0,0,.06),transparent 55%),radial-gradient(ellipse 50% 40% at 85% 80%,rgba(0,0,0,.03),transparent 50%),var(--bg)}}@keyframes atmosphere-drift{0%{transform:scale(1) translateY(0)}to{transform:scale(1.04) translateY(-1.5%)}}.top,.main,.foot{position:relative;z-index:1}.top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 24px}.logo-link{display:flex;align-items:center;gap:14px;color:var(--text);text-decoration:none}.eyes-logo{width:54px;height:24px}.logo-text{font-size:1.35rem;font-weight:900;font-style:italic;letter-spacing:-.02em}.nav-link{color:var(--muted);text-decoration:none;font-weight:600;font-size:.95rem;transition:color .2s ease}.nav-link:hover{color:var(--text)}.main{flex:1;width:min(720px,calc(100% - 40px));margin:0 auto;padding:24px 0 64px}.main.wide{width:min(960px,calc(100% - 40px))}.hero{display:flex;flex-direction:column;align-items:stretch;gap:22px;padding-top:clamp(24px,8vh,72px);animation:rise .7s var(--ease) both}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.brand{margin:0;font-size:clamp(2.6rem,8vw,4.4rem);font-weight:900;font-style:italic;letter-spacing:-.04em;line-height:.95}.tagline{margin:0;max-width:34em;color:var(--muted);font-size:1.05rem;line-height:1.45;font-weight:500}.dropzone{margin-top:8px;border:1px dashed var(--line);background:color-mix(in srgb,var(--bg-elevated) 70%,transparent);padding:48px 24px;display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;transition:border-color .25s ease,background-color .25s ease,transform .35s var(--ease)}.dropzone:hover,.dropzone:focus-visible{border-color:var(--text);outline:none}.dropzone.dragover{border-color:var(--text);border-style:solid;transform:scale(1.01);background:color-mix(in srgb,var(--text) 6%,var(--bg))}.drop-label{font-weight:700;font-size:1.05rem}.drop-hint{color:var(--muted);font-size:.9rem}.url-form{display:flex;flex-direction:column;gap:8px}.url-label{color:var(--muted);font-size:.9rem;font-weight:600}.url-row{display:flex;gap:8px}.url-row input{flex:1;min-width:0;appearance:none;border:1px solid var(--line);background:transparent;color:var(--text);font:inherit;font-weight:500;padding:12px 14px;border-radius:var(--radius)}.url-row input:focus-visible{outline:2px solid var(--text);outline-offset:2px}.btn{appearance:none;border:none;background:var(--accent);color:var(--bg);font:inherit;font-weight:700;padding:12px 18px;border-radius:var(--radius);cursor:pointer;transition:opacity .2s ease,transform .2s var(--ease)}.btn:hover:not(:disabled){opacity:.88}.btn:disabled{opacity:.4;cursor:not-allowed}.btn.ghost{background:transparent;color:var(--text);border:1px solid var(--line)}.btn.icon{padding:8px 12px;font-size:.85rem;min-width:52px}.legal{margin:0;color:var(--muted);font-size:.82rem}.workspace{display:flex;flex-direction:column;gap:20px;animation:rise .55s var(--ease) both}.track-bar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;flex-wrap:wrap}.track-head{display:flex;align-items:center;gap:14px;min-width:0}.play-round{appearance:none;width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--accent);color:var(--bg);font-size:.85rem;line-height:1;cursor:pointer;flex-shrink:0;display:grid;place-items:center;transition:opacity .2s ease,transform .2s var(--ease)}.play-round.sm{width:36px;height:36px;font-size:.75rem}.play-round:hover:not(:disabled){transform:scale(1.04)}.play-round:disabled{opacity:.35;cursor:not-allowed}.play-round[aria-pressed=true]{background:transparent;color:var(--text)}.track-name{margin:0;font-size:1.35rem;font-weight:800;font-style:italic;letter-spacing:-.02em;word-break:break-word}.track-info{margin:6px 0 0;color:var(--muted);font-size:.92rem;font-weight:600}.full-wave{border:1px solid var(--line);padding:10px 12px;background:color-mix(in srgb,var(--text) 3%,transparent)}.status{display:flex;align-items:center;gap:12px;color:var(--muted);font-weight:600}.status p{margin:0}.pulse{width:10px;height:10px;border-radius:50%;background:var(--text);animation:pulse 1.1s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.25;transform:scale(.85)}50%{opacity:1;transform:scale(1)}}.error{margin:0;color:var(--danger);font-weight:600}.empty{color:var(--muted);font-weight:500}.results-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;flex-wrap:wrap}.results-head h2{margin:0;font-size:1.15rem;font-weight:800;font-style:italic}.results-head p{margin:6px 0 0;color:var(--muted);font-size:.9rem}.sort-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.sort-label{color:var(--muted);font-size:.85rem;font-weight:600;margin-right:4px}.sort-btn{appearance:none;border:1px solid var(--line);background:transparent;color:var(--muted);font:inherit;font-size:.82rem;font-weight:700;padding:6px 10px;border-radius:999px;cursor:pointer}.sort-btn.active{background:var(--accent);color:var(--bg);border-color:var(--accent)}.loop-list{list-style:none;margin:16px 0 0;padding:0;border-top:1px solid var(--line)}.loop-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:12px 4px;border-bottom:1px solid var(--line);transition:background-color .2s ease}.loop-card.active,.loop-card.playing{background:color-mix(in srgb,var(--text) 5%,transparent)}.loop-wave-btn{appearance:none;border:none;background:transparent;padding:0;margin:0;min-width:0;cursor:pointer;text-align:left}.loop-meta{min-width:7.5rem}.loop-dur{margin:0;font-weight:800;font-variant-numeric:tabular-nums}.loop-dur .conf{font-weight:600;color:var(--muted)}.loop-range{margin:4px 0 0;color:var(--muted);font-size:.85rem;font-weight:500;font-variant-numeric:tabular-nums}.btn.export{min-width:72px}.foot{padding:20px 24px 28px;text-align:center;color:var(--muted);font-size:.85rem}.foot a{color:var(--text);text-decoration:underline;text-underline-offset:3px}@media(max-width:720px){.loop-card{grid-template-columns:auto minmax(0,1fr) auto;grid-template-areas:"play wave export" "play meta export"}.loop-card .play-round{grid-area:play}.loop-wave-btn{grid-area:wave}.loop-meta{grid-area:meta}.btn.export{grid-area:export}}@media(max-width:560px){.top{padding:14px 16px}.main,.main.wide{width:calc(100% - 28px)}.url-row{flex-direction:column}.loop-meta{min-width:0}}.waveform-canvas[data-v-cb5d9462]{display:block;width:100%;height:96px}.waveform-canvas.compact[data-v-cb5d9462]{height:44px}
