@charset "UTF-8";
:root{color-scheme:dark;--bg:#07191f;--surface:#0d252d;--raised:#13323b;--border:#25424b;--text:#e8f4f7;--muted:#93b1bb;--accent:#22d3ee;--accent-bg:#0d3c48;--primary-text:#05252c;--danger:#ffa99e;--warning:#e9c681;--shadow:0 24px 70px #0003;font-family:Inter,"Segoe UI",Arial,sans-serif;font-synthesis:none}
:root[data-theme="light"]{color-scheme:light;--bg:#f2f7f8;--surface:#fff;--raised:#edf5f6;--border:#cedee2;--text:#12313c;--muted:#516c76;--accent:#087d96;--accent-bg:#e3f6fa;--primary-text:#fff;--danger:#ad372c;--warning:#866020;--shadow:0 24px 70px #1849590c}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--bg);color:var(--text);line-height:1.6;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button,a,input,select,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{opacity:.45;cursor:wait}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,pre:focus-visible{outline:3px solid var(--accent);outline-offset:4px}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.2}h2{font-size:1.45rem}h3{font-size:1.08rem}p{margin-bottom:1em}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100px;left:15px;background:var(--accent);color:var(--primary-text);padding:12px;z-index:10001}.skip-link:focus{top:15px}.accent{color:var(--accent)}
.appbar{max-width:1240px;margin:auto;min-height:88px;padding:19px 28px;display:flex;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid var(--border)}.brand-group,.brand,.toolbar,.action-row{display:flex;align-items:center;gap:14px}.brand-group{gap:24px;flex-wrap:wrap}.brand{font-size:23px;font-weight:800;letter-spacing:-.6px;white-space:nowrap;gap:10px}.brand>span{display:inline}.projects-link{font-size:.82rem;color:var(--muted);white-space:nowrap}.toolbar{justify-content:flex-end;gap:9px;flex-wrap:wrap}.soft-button,.icon-button,.language-picker,.primary-button,.danger-button{border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);padding:9px 14px;font-size:.84rem;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;transition:border-color .15s,background .15s}.soft-button:hover,.icon-button:hover{border-color:var(--accent);background:var(--accent-bg);color:var(--text)}.icon-button{width:40px;padding:6px;font-size:1.2rem}.language-picker{padding:0 8px;color:var(--muted);gap:2px}.language-picker select{color:var(--text);background:transparent;border:0;max-width:100px;font-size:.82rem;padding:9px 2px;cursor:pointer}.language-picker option{background:var(--surface);color:var(--text)}.primary-button{background:var(--accent);border-color:var(--accent);color:var(--primary-text);padding:13px 22px;font-size:.96rem;font-weight:750;min-height:48px;box-shadow:0 4px 28px #22d3ee14}.primary-button:hover{color:var(--primary-text);filter:brightness(1.1);transform:translateY(-1px)}.primary-button span{font-size:1.3rem;margin-inline-start:12px}.danger-button{color:var(--danger);border-color:var(--danger)}
main{max-width:1032px;margin:0 auto;padding:0 28px}.hero{text-align:center;padding:66px 0 30px;max-width:810px;margin:auto}.eyebrow{font-size:.69rem;font-weight:700;letter-spacing:.18em;color:var(--accent);display:flex;justify-content:center;align-items:center;gap:8px;margin-bottom:18px}.status-dot{width:6px;height:6px;background:var(--accent);border-radius:50%;box-shadow:0 0 14px #22d3ee55}.hero h1{font-size:clamp(2.15rem,4.8vw,3.8rem);font-weight:800;letter-spacing:-.045em;line-height:1.09;margin:0 0 22px;text-wrap:balance}.lead{font-size:1.08rem;line-height:1.7;color:var(--muted);max-width:680px;margin:0 auto 28px;text-wrap:pretty}.feature-links{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.feature-links a{font-size:.75rem;font-weight:650;border:1px solid var(--border);border-radius:30px;padding:6px 13px;display:flex;gap:14px;background:var(--surface)}.feature-links a span{color:var(--accent)}
.analyzer{margin:6px 0 56px;border:1px solid var(--border);border-radius:22px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden}.upload-zone{text-align:center;padding:42px 24px 25px;position:relative;outline-offset:-4px;background:radial-gradient(ellipse at top,#22d3ee09,transparent 70%);transition:background .15s}.upload-zone.dragover{background:var(--accent-bg);outline:3px dashed var(--accent)}.waveform{height:94px;display:flex;align-items:center;justify-content:center;gap:5px;margin:0 auto 23px;direction:ltr}.waveform i{width:4px;height:var(--h);border-radius:4px;background:var(--accent);opacity:.45}.waveform i:nth-child(3n){opacity:.85}.waveform i:nth-child(4n){opacity:.28}.upload-zone h2{font-size:1.15rem;letter-spacing:-.02em;margin-bottom:20px}.formats{margin:19px 0 25px;color:var(--muted);font-size:.73rem}.privacy{margin:0 auto;border-top:1px solid var(--border);padding-top:19px;color:var(--muted);font-size:.73rem;max-width:680px}.progress-section{padding:36px}.progress-heading{display:flex;gap:20px;align-items:center;margin-bottom:18px}.progress-heading h2{font-size:1rem;word-break:break-word;margin-bottom:8px}.progress-heading p{color:var(--accent);font-size:.88rem;margin:0}.spinner{width:34px;height:34px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin 1.3s linear infinite;flex-shrink:0}@keyframes spin{to{transform:rotate(360deg)}}progress{width:100%;height:8px;border:none;border-radius:4px;overflow:hidden;background:var(--raised);color:var(--accent);appearance:none}progress::-webkit-progress-bar{background:var(--raised)}progress::-webkit-progress-value{background:var(--accent);transition:width .4s}progress::-moz-progress-bar{background:var(--accent)}.hint{font-size:.79rem;color:var(--muted);line-height:1.65;margin:12px 0 0}.error-panel{padding:30px}.error-panel h2{color:var(--danger)}.error-panel p{word-break:break-word}.action-row{flex-wrap:wrap;gap:9px}
.results{margin-top:-28px;margin-bottom:58px}.result-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:0 0 24px}.result-header .eyebrow{justify-content:flex-start;margin-bottom:9px}.result-header h2{font-size:1.35rem;margin:0;overflow-wrap:anywhere}.result-header>div:first-child{min-width:0}.metric-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px}.metric{background:var(--surface);border:1px solid var(--border);border-radius:15px;padding:24px}.metric-label{font-size:.77rem;color:var(--muted);margin-bottom:9px}.metric-value{font-size:2rem;line-height:1.2;font-weight:750;letter-spacing:-.03em;color:var(--accent);overflow-wrap:anywhere}.metric-info{margin-top:13px;font-size:.73rem;color:var(--muted)}.quality-panel{border:1px solid var(--border);border-inline-start:3px solid var(--accent);border-radius:12px;padding:19px 22px;margin-bottom:18px}.quality-panel h3{margin-bottom:7px}.quality-panel p{font-size:.82rem;margin-bottom:0;color:var(--muted)}.quality-panel ul{padding-inline-start:19px;margin:10px 0 0;color:var(--warning);font-size:.8rem}.quality-panel ul:empty{display:none}.result-columns{display:grid;grid-template-columns:1fr 1fr;gap:18px}.result-card{border:1px solid var(--border);background:var(--surface);border-radius:15px;padding:23px;margin-bottom:18px;min-width:0}.card-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:20px}.card-header h3{margin:0}.card-header>span{font-size:.66rem;color:var(--muted);text-align:end}.score-row{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:3px 12px;align-items:center;margin-bottom:16px;font-size:.86rem}.score-row:last-child{margin-bottom:0}.score-name{overflow-wrap:anywhere}.score-number{text-align:end;color:var(--muted);font-size:.73rem}.score-track{height:5px;background:var(--raised);border-radius:3px;grid-column:1/-1;overflow:hidden}.score-track span{display:block;height:100%;background:var(--accent);opacity:.65;border-radius:3px}.score-row:first-child .score-track span{opacity:1}.tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:18px}.tags:empty{display:none}.tag{font-size:.71rem;padding:5px 9px;border:1px solid var(--border);border-radius:6px;color:var(--muted)}.char-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin:24px 0 0}.char-grid dt{font-size:.73rem;color:var(--muted);margin-bottom:6px}.char-grid dd{font-size:.95rem;margin:0;overflow-wrap:anywhere}.prompt-card{background:linear-gradient(140deg,var(--surface),var(--accent-bg))}pre{font:.93rem/1.8 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;overflow-wrap:anywhere;margin:0;user-select:text}.empty-state{color:var(--muted);padding:18px 0;font-size:.88rem}
.guide{border-top:1px solid var(--border);margin-bottom:48px}.guide-card{display:flex;gap:25px;padding:30px 0;border-bottom:1px solid var(--border)}.section-number{font-size:.77rem;color:var(--accent);font-family:ui-monospace,monospace;padding-top:5px;min-width:23px}.guide-card h2{font-size:1.08rem;line-height:1.4;margin-bottom:10px}.guide-card p{font-size:.87rem;color:var(--muted);margin:0;max-width:840px;line-height:1.85}.faq{margin-bottom:65px}.faq>h2{font-size:1.35rem;margin-bottom:25px}.faq details{border-bottom:1px solid var(--border);padding:17px 0}.faq summary{cursor:pointer;font-size:.91rem;font-weight:650;line-height:1.55}.faq details p{color:var(--muted);font-size:.86rem;line-height:1.8;margin:14px 0 2px;padding-inline-end:20px}.no-js{color:var(--warning)}footer{text-align:center;border-top:1px solid var(--border);max-width:1184px;margin:auto;padding:30px 28px 95px}footer .brand{justify-content:center;font-size:18px;gap:0}footer p{font-size:.79rem;color:var(--muted);margin:12px 0 18px}.footer-languages{font-size:.7rem;max-width:800px;margin:auto;line-height:2.2;color:var(--muted)}
dialog{background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:18px;padding:25px;width:min(860px,calc(100vw - 28px));max-height:85dvh;box-shadow:0 30px 150px #0008}dialog::backdrop{background:#011118bb;backdrop-filter:blur(5px)}.dialog-header{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:8px}.dialog-header h2{font-size:1.3rem;margin:0}.history-controls{display:flex;gap:10px;margin:20px 0;align-items:center;flex-wrap:wrap}.history-controls input{min-width:100px;flex:1;background:var(--bg);color:var(--text);border:1px solid var(--border);padding:10px 12px;border-radius:10px;font-size:.86rem}.history-item{padding:18px 0;border-bottom:1px solid var(--border);display:flex;gap:20px;align-items:center;justify-content:space-between}.history-item-info{min-width:0}.history-item h3{font-size:.91rem;overflow-wrap:anywhere;margin-bottom:7px}.history-item p{font-size:.72rem;color:var(--muted);margin:0;overflow-wrap:anywhere}.history-item .action-row{flex-shrink:0}.history-item .status-error{color:var(--danger)}.pagination{display:flex;justify-content:center;gap:12px;align-items:center;font-size:.8rem;margin-top:20px}.admin-summary{display:flex;gap:12px;flex-wrap:wrap;margin:20px 0;font-size:.83rem;color:var(--muted)}.admin-summary span{padding:9px 12px;border:1px solid var(--border);border-radius:8px}.admin-summary strong{color:var(--text);margin-inline-start:9px}#confirmDialog{max-width:440px;padding:28px}#confirmDialog h2{font-size:1.1rem;line-height:1.6;margin-bottom:25px}.toast{position:fixed;inset-inline:20px;bottom:78px;width:fit-content;max-width:calc(100% - 40px);margin:auto;padding:12px 18px;border:1px solid var(--accent);background:var(--raised);border-radius:12px;font-size:.84rem;box-shadow:var(--shadow);z-index:10002}.eco-bar{max-width:calc(100vw - 28px)}
@media(max-width:1000px){.appbar{align-items:flex-start}.projects-link{display:none}.brand-group{padding-top:3px}.toolbar{gap:7px}.toolbar .soft-button{padding:8px 10px;font-size:.76rem}}
@media(max-width:700px){.appbar{padding:16px 18px;flex-direction:column;gap:15px}.brand{font-size:22px}.brand-group{width:100%;justify-content:space-between}.projects-link{display:inline}.toolbar{justify-content:flex-start;width:100%}.hero{padding:43px 0 24px}.hero h1{font-size:2.5rem;letter-spacing:-.035em}.lead{font-size:.96rem;line-height:1.75}.feature-links{gap:7px}.feature-links a{font-size:.7rem;padding:6px 10px;gap:9px}main{padding:0 18px}.analyzer{border-radius:17px;margin-bottom:40px}.upload-zone{padding:25px 17px 20px}.waveform{transform:scale(.85);margin-bottom:12px}.upload-zone h2{font-size:1.05rem}.formats{font-size:.68rem;line-height:1.8;max-width:300px;margin:16px auto 20px}.privacy{font-size:.68rem}.metric-grid{gap:8px}.metric{padding:15px 12px;border-radius:12px}.metric-value{font-size:1.48rem}.metric-label{font-size:.68rem}.metric-info{font-size:.65rem}.result-header{align-items:flex-start;flex-direction:column;gap:16px}.result-columns{grid-template-columns:1fr;gap:0}.result-card{padding:20px}.char-grid{grid-template-columns:1fr 1fr;gap:20px}.quality-panel{padding:16px}.guide-card{gap:15px;padding:25px 0}.guide-card h2{font-size:1rem}.guide-card p{font-size:.83rem}.faq{margin-bottom:42px}.faq>h2{font-size:1.2rem}.faq summary{font-size:.86rem}.progress-section{padding:25px 19px}.history-item{align-items:flex-start;gap:12px;flex-direction:column}.history-item .action-row{width:100%}dialog{padding:20px}.toolbar #gsso-slot{margin-inline-start:auto}}
.genre-reliability{margin:-7px 0 20px;color:var(--warning)}.sources-details{border:1px solid var(--border);border-radius:12px;padding:15px 18px;margin:18px 0}.sources-details summary{cursor:pointer;font-size:.9rem;font-weight:650}.sources-details .history-item:last-child{border-bottom:0}.sources-details .history-item h3{font-size:.83rem}.sources-details .soft-button{font-size:.74rem;padding:7px 9px}.sources-details .empty-state{padding:10px 0 0;margin:0}
@media(max-width:520px){.metric-grid{grid-template-columns:1fr}.metric{padding:20px}.metric-value{font-size:1.8rem}.metric-info{font-size:.78rem}.metric-label{font-size:.8rem}.result-header .action-row{width:100%}.result-header .soft-button{flex:1}}
main{max-width:1190px}.hero{padding-top:54px}.editor-workspace{margin:18px 0 62px}.source-header{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:22px}.source-header>div{min-width:0}.source-header h2{overflow-wrap:anywhere;font-size:1.3rem;margin:0}.source-header .eyebrow{justify-content:flex-start;margin-bottom:8px}.comparison{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.comparison:has(#resultPlayerCard[hidden]){grid-template-columns:1fr}.player-card{background:var(--surface);border:1px solid var(--border);border-radius:15px;padding:20px;min-width:0}.player-card h3{font-size:.92rem;margin-bottom:16px}.player-card audio{width:100%;height:42px}.player-card .card-header{margin-bottom:14px}.player-card .card-header h3{margin:0}.player-card .card-header>span{font-size:.71rem}.result-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:16px}.result-actions .primary-button{font-size:.82rem;min-height:40px;padding:9px 14px}.compare-hint{margin:12px 0 28px}.effects-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:28px;align-items:start}.effects-catalog{position:sticky;top:20px}.editor-section-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:16px}.editor-section-heading h2{font-size:1.1rem;margin:0}.editor-section-heading>span{color:var(--muted);font: .76rem ui-monospace,monospace;padding:3px 8px;border:1px solid var(--border);border-radius:5px}.effect-tiles{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.effect-tile{display:flex;flex-direction:column;align-items:flex-start;text-align:start;position:relative;gap:12px;padding:17px 13px;min-height:108px;border-radius:12px;border:1px solid var(--border);color:var(--text);background:var(--surface);font-size:.76rem;line-height:1.45}.effect-tile:hover:not(:disabled){border-color:var(--accent);background:var(--accent-bg)}.effect-symbol{font-size:1.45rem;color:var(--accent);font-weight:700;line-height:1}.add-icon{position:absolute;inset-inline-end:12px;top:10px;color:var(--muted);font-size:1.05rem}.effect-tile:disabled{cursor:not-allowed}.effect-tile.unavailable .effect-symbol{color:var(--muted)}.chain-section>.hint{margin:-6px 0 20px}.effect-chain{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:12px}.chain-step{border:1px solid var(--border);border-radius:14px;background:var(--surface);padding:18px}.chain-step-header{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px}.chain-step-header h3{margin:0;font-size:.93rem;display:flex;align-items:center;gap:10px}.step-number{display:inline-flex;width:26px;height:26px;border-radius:7px;background:var(--accent-bg);color:var(--accent);align-items:center;justify-content:center;font: .75rem ui-monospace,monospace}.step-actions{display:flex;gap:5px}.step-actions .icon-button{width:30px;min-height:30px;font-size:1rem;padding:3px;background:transparent}.step-params{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.param-field{display:flex;flex-direction:column;gap:10px;min-width:0}.param-field:only-child{grid-column:1/-1}.param-label{display:flex;gap:10px;align-items:center;justify-content:space-between;font-size:.77rem;color:var(--muted)}.param-label input[type=number]{width:85px;color:var(--text);background:var(--bg);border:1px solid var(--border);border-radius:7px;padding:5px 7px;font-size:.8rem;direction:ltr}.param-field input[type=range]{width:100%;accent-color:var(--accent);cursor:pointer;min-height:22px}.param-boolean{grid-column:1/-1;display:flex;align-items:center;gap:9px;font-size:.77rem;color:var(--muted)}.param-boolean input{width:16px;height:16px;accent-color:var(--accent)}.chain-step .hint{margin:0}.chain-empty{border:1px dashed var(--border);border-radius:14px;padding:35px;text-align:center;font-size:.85rem;color:var(--muted)}.export-panel{margin-top:20px;padding:22px;background:var(--raised);border:1px solid var(--border);border-radius:14px;display:grid;grid-template-columns:130px minmax(0,1fr) auto;gap:18px;align-items:center}.export-panel label,.export-quality-label{font-size:.71rem;color:var(--muted);display:block;margin-bottom:7px}.export-panel select{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:9px 12px;color:var(--text);width:100%}.export-panel p:not(.hint){font-size:.8rem;margin:0;direction:ltr;text-align:start}.export-panel .hint{grid-column:1/-1;font-size:.72rem;margin:0}.export-panel .primary-button{font-size:.85rem;padding:13px 16px}.progress-actions{display:flex;gap:18px;justify-content:space-between;align-items:center;margin-top:14px}.progress-actions .hint{margin:0}.source-header .soft-button{flex-shrink:0}.effect-chain[aria-disabled=true]{opacity:.65}.editor-workspace[aria-busy=true] .effects-layout{opacity:.65}.history-item .chain-description{margin:5px 0;color:var(--accent);font-size:.7rem}.history-item .expiry-note{font-size:.7rem;color:var(--muted)}
@media(max-width:900px){.effects-layout{grid-template-columns:245px minmax(0,1fr);gap:20px}.export-panel{grid-template-columns:1fr 1fr}.export-panel .primary-button{grid-column:1/-1}.effect-tile{padding:14px 11px;min-height:110px}.step-params{grid-template-columns:1fr}.comparison{grid-template-columns:1fr}}
@media(max-width:650px){.hero h1{font-size:2.2rem}.effects-layout{grid-template-columns:1fr;gap:28px}.effects-catalog{position:static}.effect-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}.effect-tile{min-height:78px;padding:15px 12px;gap:9px;flex-direction:row;align-items:center;font-size:.77rem;padding-inline-end:22px}.effect-symbol{font-size:1.25rem}.add-icon{font-size:.86rem;top:6px;inset-inline-end:8px}.source-header{align-items:flex-start}.source-header h2{font-size:1.08rem}.source-header .soft-button{font-size:.7rem;padding:7px 10px}.chain-step{padding:16px}.chain-step-header h3{font-size:.84rem}.step-actions .icon-button{width:29px;min-height:32px}.step-params{grid-template-columns:1fr}.export-panel{padding:18px}.export-panel .primary-button{width:100%}.chain-empty{padding:25px}.player-card{padding:17px}.result-actions>*{flex:1;justify-content:center}.progress-actions{align-items:flex-start}.progress-actions .hint{font-size:.73rem}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation:none!important;transition:none!important}.primary-button:hover{transform:none}}
