:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;--bg: #07111f;--bg2: #0a1325;--surface: rgba(9, 18, 33, .85);--border: rgba(148, 163, 184, .16);--text: #e8eef8;--text-muted: #8a9bb0;--teal: #5eead4;--sky: #7dd3fc;--red: #f87171;--orange: #fb923c;--green: #34d399;--radius-lg: 24px;--radius-md: 16px;--radius-sm: 10px;--radius-pill: 999px}*{box-sizing:border-box}html,body{margin:0;min-width:320px;background:radial-gradient(ellipse at top,rgba(94,234,212,.12) 0%,transparent 55%),linear-gradient(180deg,#07111f,#0a1325 60%,#050913);background-attachment:fixed;color:var(--text)}button,select,textarea,input{font:inherit;color:inherit}.shell{width:min(760px,calc(100vw - 24px));margin:0 auto;padding:32px 0 72px;display:grid;gap:16px}@media(max-width:480px){.shell{padding:20px 0 60px;gap:12px}}.panel{border:1px solid var(--border);background:var(--surface);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-lg);padding:24px;box-shadow:0 24px 60px #00000038}@media(max-width:480px){.panel{padding:18px 16px;border-radius:20px}}.hero h1{margin:6px 0 0;font-size:clamp(1.6rem,5vw,2.4rem);font-weight:800;background:linear-gradient(135deg,var(--sky),var(--teal));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.eyebrow{margin:0;color:var(--teal);text-transform:uppercase;letter-spacing:.08em;font-size:.75rem;font-weight:600}.subtitle{margin:10px 0 0;color:var(--text-muted);line-height:1.65;font-size:.92rem}.recorder-panel{display:flex;flex-direction:column;align-items:center;gap:16px;padding-top:28px;padding-bottom:28px}.recorder-panel--floating{min-height:100vh;border-radius:0;border:none;box-shadow:none;background:radial-gradient(circle at top,rgba(125,211,252,.18),transparent 42%),linear-gradient(180deg,#07111ffa,#0a1325fa);justify-content:center;padding:22px 20px 24px}.recorder-panel--placeholder{align-items:stretch}.recorder-panel__header{width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.recorder-panel__eyebrow{margin:0 0 4px;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--teal);font-weight:700}.recorder-panel__title{margin:0;font-size:1.05rem;font-weight:800}.floating-note,.floating-tip{margin:0;font-size:.78rem;color:var(--text-muted);text-align:center;line-height:1.5}.floating-note{align-self:center}.floating-status{display:grid;gap:10px}.floating-status__text{margin:0}.lang-row{align-self:stretch}.field{display:flex;align-items:center;gap:12px}.field-label{color:var(--text-muted);font-size:.85rem;white-space:nowrap}.field select{border-radius:var(--radius-sm);border:1px solid var(--border);background:#0f172ae6;color:var(--text);padding:.55rem .8rem;font-size:.88rem;outline:none;flex:1}.field select:focus{border-color:#5eead466}.waveform-area{position:relative;width:200px;height:200px;display:flex;align-items:center;justify-content:center;flex-shrink:0}@media(max-width:360px){.waveform-area{width:160px;height:160px}}.waveform-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border-radius:50%;opacity:0;transition:opacity .3s}.waveform-canvas--active{opacity:1}.waveform-btn-wrap{position:relative;z-index:1}.record-timer{position:absolute;bottom:-2px;left:50%;transform:translate(-50%);font-size:.85rem;font-weight:700;color:var(--teal);letter-spacing:.06em;z-index:2;background:#07111fb3;padding:2px 10px;border-radius:var(--radius-pill)}.btn-record{width:72px;height:72px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .15s,box-shadow .15s;outline:none}.btn-record:focus-visible{box-shadow:0 0 0 3px #5eead480}.btn-record--idle{background:linear-gradient(135deg,var(--sky),var(--teal));color:#07111f;box-shadow:0 0 #5eead466;animation:pulse-idle 2.4s ease-in-out infinite}.btn-record--idle:hover{transform:scale(1.07)}.btn-record--stop{background:linear-gradient(135deg,var(--red),var(--orange));color:#fff;animation:pulse-rec 1.2s ease-in-out infinite}.btn-record--stop:hover{transform:scale(1.07)}.btn-record--uploading{background:#1e293be6;border:2px solid rgba(94,234,212,.3);color:var(--teal);cursor:default}@keyframes pulse-idle{0%,to{box-shadow:0 0 #5eead459}50%{box-shadow:0 0 0 14px #5eead400}}@keyframes pulse-rec{0%,to{box-shadow:0 0 #f8717173}50%{box-shadow:0 0 0 18px #f8717100}}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.phase-label{margin:0;font-size:.88rem;color:var(--text-muted);text-align:center}.secondary-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.btn-ghost{border:1px solid var(--border);border-radius:var(--radius-pill);padding:.55rem 1.1rem;background:#1e293b99;color:var(--text-muted);cursor:pointer;font-size:.85rem;font-weight:500;transition:border-color .15s,color .15s,background .15s}.btn-ghost:hover{border-color:#5eead466;color:var(--teal);background:#5eead40f}.btn-ghost input[type=file]{display:none}.btn-ghost--sm{font-size:.78rem;padding:.35rem .8rem}.pip-body{margin:0;min-width:320px;min-height:100vh;background:radial-gradient(circle at top,rgba(94,234,212,.12),transparent 50%),linear-gradient(180deg,#07111f,#0a1325);color:var(--text)}.pip-root{min-height:100vh}.error-box{margin:0;padding:11px 14px;border-radius:var(--radius-md);background:#7f1d1d59;color:#fecaca;border:1px solid rgba(248,113,113,.28);font-size:.88rem;align-self:stretch;text-align:center}.output{display:grid;gap:14px}.output-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.output-header h2{margin:0;font-size:1rem;font-weight:700}.btn-copy{border:none;border-radius:var(--radius-pill);padding:.45rem 1.1rem;background:linear-gradient(135deg,var(--sky),var(--teal));color:#07111f;font-weight:700;font-size:.85rem;cursor:pointer;transition:opacity .15s,transform .15s}.btn-copy:hover:not(:disabled){transform:scale(1.04)}.btn-copy:disabled{opacity:.38;cursor:not-allowed}textarea{width:100%;min-height:200px;resize:vertical;border-radius:var(--radius-md);border:1px solid var(--border);background:#0f172ad9;color:var(--text);padding:14px 16px;line-height:1.65;font-size:.95rem;outline:none;transition:border-color .15s}textarea:focus{border-color:#5eead459}textarea::placeholder{color:#8a9bb080}.usage-panel{display:grid;gap:14px}.usage-header{display:flex;align-items:center;justify-content:space-between}.usage-header h2{margin:0;font-size:1rem;font-weight:700}.usage-placeholder{margin:0;font-size:.85rem;color:var(--text-muted)}.usage-note{margin:0;font-size:.75rem;color:#8a9bb08c;line-height:1.5}.usage-body{display:grid;gap:12px}.usage-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}@media(max-width:380px){.usage-stats{grid-template-columns:repeat(2,1fr)}}.usage-stat{display:flex;flex-direction:column;gap:4px;background:#0f172a99;border:1px solid var(--border);border-radius:var(--radius-md);padding:12px 14px}.usage-stat__val{font-size:1.25rem;font-weight:800;line-height:1.1;color:var(--text)}.usage-stat__val--warn{color:var(--orange)}.usage-stat__label{font-size:.72rem;color:var(--text-muted);letter-spacing:.02em}.usage-bar-wrap{height:6px;background:#1e293bcc;border-radius:var(--radius-pill);overflow:hidden}.usage-bar{height:100%;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--teal),var(--sky));transition:width .5s ease;min-width:4px}.usage-bar--over{background:linear-gradient(90deg,var(--orange),var(--red))}.usage-bar-label{margin:0;font-size:.75rem;color:var(--text-muted)}.history h2{margin:0 0 14px;font-size:1rem;font-weight:700;display:flex;align-items:center;gap:8px}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:var(--radius-pill);background:#fb923c38;color:var(--orange);font-size:.72rem;font-weight:700}.history-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.history-item{border-radius:var(--radius-md);border:1px solid var(--border);background:#0f172a80;padding:12px 14px;display:grid;gap:8px}.history-item--failed{border-color:#f8717147;background:#7f1d1d1f}.history-item--transcribing{border-color:#7dd3fc47}.history-item__meta{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.history-status{border-radius:var(--radius-pill);padding:2px 9px;font-size:.75rem;font-weight:700}.history-status--pending{background:#94a3b826;color:#94a3b8}.history-status--transcribing{background:#7dd3fc2e;color:var(--sky)}.history-status--done{background:#34d39929;color:var(--green)}.history-status--failed{background:#f871712e;color:var(--red)}.history-time,.history-lang{font-size:.75rem;color:#556070;background:#1e293ba6;padding:2px 8px;border-radius:var(--radius-pill)}.history-error{margin:0;font-size:.82rem;color:#fca5a5}.history-transcript{margin:0;font-size:.86rem;color:#c6d3e5;line-height:1.55;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.history-item__actions{display:flex;flex-wrap:wrap;gap:7px}.btn-sm{border:none;border-radius:var(--radius-pill);padding:.38rem .88rem;font-size:.78rem;font-weight:700;cursor:pointer;color:#07111f;background:linear-gradient(135deg,var(--sky),var(--teal));transition:opacity .15s}.btn-sm:disabled{opacity:.4;cursor:not-allowed}.btn-sm--danger{background:linear-gradient(135deg,var(--red),var(--orange));color:#fff}.pip-output{align-self:stretch;display:grid;gap:8px;background:#0f172ab3;border:1px solid var(--border);border-radius:var(--radius-md);padding:12px 14px}.pip-output__header{display:flex;align-items:center;justify-content:space-between;gap:8px}.pip-output__label{font-size:.82rem;font-weight:700;color:var(--text-muted);letter-spacing:.03em}.pip-output__text{font-size:.88rem;line-height:1.6;color:var(--text);white-space:pre-wrap;word-break:break-word;max-height:140px;overflow-y:auto}.pip-output__placeholder{color:#8a9bb080;font-style:italic}.v2-shell{width:min(760px,calc(100vw - 24px));margin:0 auto;padding:32px 0 72px;display:flex;flex-direction:column;gap:16px;min-height:100vh}@media(max-width:480px){.v2-shell{padding:20px 0 56px;gap:12px}}.v2-header{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;flex-wrap:wrap;border:1px solid var(--border);background:var(--surface);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-lg);padding:20px 24px;box-shadow:0 24px 60px #00000038}.v2-header__left{display:flex;flex-direction:column;gap:4px}.v2-title{margin:0;font-size:clamp(1.4rem,4vw,2rem);font-weight:800;background:linear-gradient(135deg,var(--sky),var(--teal));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.v2-header__right{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.v2-lang-select select{border-radius:var(--radius-sm);border:1px solid var(--border);background:#0f172ae6;color:var(--text-muted);padding:.45rem .75rem;font-size:.82rem;outline:none}.v2-lang-select select:focus{border-color:#5eead466}.v2-btn-undo{border:1px solid var(--border);border-radius:var(--radius-pill);padding:.45rem 1rem;background:#1e293b99;color:var(--text-muted);cursor:pointer;font-size:.82rem;font-weight:600;transition:border-color .15s,color .15s,background .15s}.v2-btn-undo:hover:not(:disabled){border-color:#5eead466;color:var(--teal);background:#5eead40f}.v2-btn-undo:disabled{opacity:.35;cursor:not-allowed}.v2-btn-clear{border:1px solid var(--border);border-radius:var(--radius-pill);padding:.45rem 1rem;background:#1e293b99;color:var(--text-muted);cursor:pointer;font-size:.82rem;font-weight:600;transition:border-color .15s,color .15s,background .15s}.v2-btn-clear:hover:not(:disabled){border-color:#f8717166;color:#f87171;background:#f871710f}.v2-btn-clear:disabled{opacity:.35;cursor:not-allowed}.v2-btn-copy{border:none;border-radius:var(--radius-pill);padding:.45rem 1.1rem;background:linear-gradient(135deg,var(--sky),var(--teal));color:#07111f;font-weight:700;font-size:.82rem;cursor:pointer;transition:opacity .15s,transform .15s}.v2-btn-copy:hover:not(:disabled){transform:scale(1.04)}.v2-btn-copy:disabled{opacity:.35;cursor:not-allowed}.v2-editor-section{display:flex;flex-direction:column;gap:8px;border:1px solid var(--border);background:var(--surface);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-lg);padding:20px 24px;box-shadow:0 24px 60px #00000038}.v2-editor{width:100%;min-height:260px;resize:vertical;border-radius:var(--radius-md);border:1px solid var(--border);background:#0f172ad9;color:var(--text);padding:16px 18px;line-height:1.7;font-size:.97rem;outline:none;transition:border-color .15s;font-family:inherit}.v2-editor:focus{border-color:#5eead459}.v2-editor::placeholder{color:#8a9bb066}.v2-editor:disabled{opacity:.6;cursor:not-allowed}.v2-last-instruction{margin:0;font-size:.8rem;color:var(--text-muted);line-height:1.5;padding:0 4px}.v2-last-instruction__label{color:var(--teal);font-weight:600;margin-right:4px}.v2-recorder{display:flex;flex-direction:column;align-items:center;gap:14px;border:1px solid var(--border);background:var(--surface);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-radius:var(--radius-lg);padding:28px 24px;box-shadow:0 24px 60px #00000038}.v2-btn-pair{display:flex;align-items:center;gap:36px}.rb-wrap{position:relative;display:flex;flex-direction:column;align-items:center;gap:8px}.rb-btn{position:relative;z-index:2;width:52px;height:52px;border-radius:50%;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;outline:none;transition:transform .12s,opacity .15s;flex-shrink:0}.rb-btn:hover:not(:disabled){transform:scale(1.08)}.rb-btn:active:not(:disabled){transform:scale(.94)}.rb-btn:disabled{opacity:.35;cursor:not-allowed}.rb-btn:focus-visible{box-shadow:0 0 0 3px #5eead473}.rb--input .rb-btn{background:linear-gradient(135deg,var(--sky),var(--teal));color:#07111f}.rb--command .rb-btn{background:linear-gradient(135deg,#f97316,#a855f7);color:#fff}.rb-btn--active{transform:scale(1.06)}.rb-btn--active:hover{transform:scale(1.12)}.rb-inner{display:flex;flex-direction:column;align-items:center;gap:1px;line-height:1}.rb-timer{font-size:.62rem;font-weight:800;letter-spacing:.04em;color:inherit;opacity:.9}.rb-label{font-size:.72rem;font-weight:600;letter-spacing:.05em;position:relative;z-index:2}.rb--input .rb-label{color:var(--teal)}.rb--command .rb-label{color:var(--orange)}.rb-ripple{position:absolute;top:50%;left:50%;width:52px;height:52px;margin-top:-26px;margin-left:-26px;border-radius:50%;z-index:1;pointer-events:none;animation:rb-ripple-out .6s ease-out forwards}.rb--input .rb-ripple{background:#5eead459}.rb--command .rb-ripple{background:#f9731659}@keyframes rb-ripple-out{0%{transform:scale(1);opacity:.7}to{transform:scale(2.8);opacity:0}}.rb-pulse{position:absolute;top:50%;left:50%;width:52px;height:52px;margin-top:-26px;margin-left:-26px;border-radius:50%;z-index:0;pointer-events:none;animation:rb-pulse-ring 2s ease-out infinite}.rb-pulse--2{animation-delay:.9s}.rb--input .rb-pulse{border:2px solid rgba(94,234,212,.5)}.rb--command .rb-pulse{border:2px solid rgba(249,115,22,.5)}@keyframes rb-pulse-ring{0%{transform:scale(1);opacity:.8}to{transform:scale(2.4);opacity:0}}.v2-processing-row{display:flex;align-items:center;gap:10px}.v2-spinner{color:var(--teal);display:flex;align-items:center}.v2-phase-label{margin:0;font-size:.9rem;color:var(--text-muted);text-align:center}.v2-mode-hint{font-weight:700}.v2-mode-hint--input{color:var(--teal)}.v2-mode-hint--command,.v2-last-instruction__label--command{color:var(--orange)}.v2-footer-link{text-align:center;margin:0}.v2-footer-link a{font-size:.8rem;color:var(--text-muted);text-decoration:none;transition:color .15s}.v2-footer-link a:hover{color:var(--teal)}
