.aero-shards{position:relative;width:100%;height:100%;overflow:hidden}.aero-shards-canvas{position:absolute;inset:0;display:block;width:100%;height:100%}.pill-nav{--pn-roll: calc(var(--pn-inner) / 2 + .7em);position:relative;display:inline-flex;align-items:center;gap:var(--pn-gap);max-width:100%;font-size:var(--pn-font);line-height:1;-webkit-tap-highlight-color:transparent}.pill-nav[data-collapsed]{display:flex;width:100%;justify-content:space-between}.pill-nav[data-layout=joined]{gap:2px;padding:var(--pn-pad);border-radius:999px}.pill-nav__surface{background:var(--pn-surface);box-shadow:var(--pn-shadow);-webkit-backdrop-filter:var(--pn-blur);backdrop-filter:var(--pn-blur)}.pill-nav[data-layout=joined][data-panel]{background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}.pill-nav[data-panel] .pill-nav__rim--root{opacity:0}.pill-nav__rim{position:absolute;inset:0;z-index:4;border-radius:inherit;box-shadow:inset 0 0 0 1px var(--pn-edge),inset 0 1px 0 var(--pn-rim);pointer-events:none}.pill-nav__logo{position:relative;z-index:2;display:inline-grid;flex:none;place-items:center;width:var(--pn-h);height:var(--pn-h);border-radius:999px}.pill-nav__logo-link{position:absolute;inset:0;display:grid;place-items:center;border-radius:inherit;color:var(--pn-strong);text-decoration:none;outline:none}.pill-nav[data-layout=joined] .pill-nav__logo{width:var(--pn-inner);height:var(--pn-inner)}.pill-nav__logo-link:focus-visible,.pill-nav__toggle:focus-visible{outline:2px solid var(--pn-ring);outline-offset:2px}.pill-nav__mark{display:grid;place-items:center;width:var(--pn-mark);height:var(--pn-mark)}.pill-nav__mark img,.pill-nav__mark svg{display:block;width:100%;height:100%;object-fit:contain}.pill-nav__bar{position:relative;z-index:1;display:flex;align-items:center;min-width:0;height:var(--pn-h);padding:var(--pn-pad);border-radius:999px;box-sizing:border-box}.pill-nav[data-layout=joined] .pill-nav__bar{height:var(--pn-inner);padding:0}.pill-nav__track{position:relative;height:100%}.pill-nav__list{display:flex;align-items:stretch;gap:var(--pn-item-gap, 2px);height:100%;margin:0;padding:0;list-style:none}.pill-nav__slot{display:flex}.pill-nav__item{position:relative;display:inline-flex;align-items:center;justify-content:center;height:100%;padding:0 var(--pn-x);border:0;border-radius:999px;background:none;color:var(--pn-text);font-family:inherit;font-size:inherit;line-height:inherit;font-weight:500;letter-spacing:-.005em;white-space:nowrap;text-decoration:none;cursor:pointer;outline:none;overflow:hidden;isolation:isolate;transition:color .25s ease}.pill-nav__slot[data-lit] .pill-nav__item,.pill-nav__item[aria-current]{color:var(--pn-strong)}.pill-nav[data-items=pill]{--pn-item-gap: 3px}.pill-nav[data-items=pill] .pill-nav__item{background:var(--pn-tile);box-shadow:var(--pn-tile-rim);color:var(--pn-strong)}.pill-nav__item:focus-visible,.pill-nav__row:focus-visible{outline:2px solid var(--pn-ring);outline-offset:-2px}.pill-nav__face{display:inline-flex;align-items:center;gap:.45em;transition:transform .36s cubic-bezier(.22,1,.36,1)}.pill-nav__face svg{width:1.15em;height:1.15em;flex:none}.pill-nav__face-alt{position:absolute;inset:0;display:inline-flex;align-items:center;justify-content:center;gap:.45em;color:var(--pn-pill-ink);transform:translateY(var(--pn-roll));transition:transform .36s cubic-bezier(.22,1,.36,1)}.pill-nav__face-alt svg{width:1.15em;height:1.15em;flex:none}.pill-nav__slot[data-on] .pill-nav__face,.pill-nav__slot[data-hover] .pill-nav__face{transform:translateY(calc(var(--pn-roll) * -1));transition-duration:.5s}.pill-nav__slot[data-on] .pill-nav__face-alt,.pill-nav__slot[data-hover] .pill-nav__face-alt{transform:translateY(0);transition-duration:.5s}.pill-nav__fill{position:absolute;top:100%;left:50%;z-index:-1;width:var(--pn-fill, 200%);height:var(--pn-fill, 200%);margin:calc(var(--pn-fill, 200%) / -2) 0 0 calc(var(--pn-fill, 200%) / -2);border-radius:50%;background:var(--pn-pill);transform:scale(0);transition:transform .36s cubic-bezier(.4,0,.2,1);pointer-events:none}.pill-nav__slot[data-on] .pill-nav__fill,.pill-nav__slot[data-hover] .pill-nav__fill{transform:scale(1);transition:transform .55s cubic-bezier(.22,1,.36,1)}.pill-nav__glide{position:absolute;top:0;bottom:0;left:0;width:0;border-radius:999px;background:var(--pn-pill);box-shadow:var(--pn-pill-shadow);opacity:0;pointer-events:none;transform-origin:50% 50%;will-change:transform,width,opacity}.pill-nav[data-focus] .pill-nav__glide{box-shadow:var(--pn-pill-shadow),0 0 0 2px var(--pn-ring)}.pill-nav__ink{position:absolute;inset:0;display:flex;align-items:stretch;gap:var(--pn-item-gap, 2px);color:var(--pn-pill-ink);pointer-events:none;clip-path:inset(0 100% 0 0)}.pill-nav__ink-item{display:inline-flex;align-items:center;justify-content:center;gap:.45em;height:100%;padding:0 var(--pn-x);font-weight:500;letter-spacing:-.005em;white-space:nowrap}.pill-nav__ink-item svg{width:1.15em;height:1.15em;flex:none}.pill-nav__dot{position:absolute;bottom:calc((var(--pn-inner) - var(--pn-font)) / 4 - 2px);left:0;width:4px;height:4px;margin-left:-2px;border-radius:999px;background:var(--pn-dot);opacity:0;pointer-events:none;transition:background-color .3s ease;will-change:transform,opacity}.pill-nav[data-dot-lit] .pill-nav__dot{background:var(--pn-pill-ink)}.pill-nav__toggle{position:relative;z-index:3;display:inline-grid;flex:none;place-items:center;width:var(--pn-h);height:var(--pn-h);padding:0;border:0;border-radius:999px;color:var(--pn-strong);cursor:pointer;outline:none}.pill-nav__toggle--bare{background:transparent}.pill-nav[data-layout=joined] .pill-nav__toggle{width:var(--pn-inner);height:var(--pn-inner)}.pill-nav__burger{position:relative;width:16px;height:10px}.pill-nav__line{position:absolute;left:0;width:100%;height:1.5px;border-radius:2px;background:currentColor;transition:transform .45s cubic-bezier(.22,1,.36,1),top .45s cubic-bezier(.22,1,.36,1)}.pill-nav__line--top{top:1.5px}.pill-nav__line--bottom{top:7px}.pill-nav[data-open] .pill-nav__line--top{top:4.25px;transform:rotate(45deg)}.pill-nav[data-open] .pill-nav__line--bottom{top:4.25px;transform:rotate(-45deg)}.pill-nav__panel{position:absolute;top:0;right:0;left:0;z-index:1;padding:calc(var(--pn-h) + 10px) 6px 6px;border-radius:24px;box-sizing:border-box}.pill-nav[data-layout=joined] .pill-nav__panel{padding-top:calc(var(--pn-h) + 4px)}.pill-nav__menu{display:flex;flex-direction:column;gap:2px;margin:0;padding:0;list-style:none}.pill-nav__row{display:flex;align-items:center;gap:10px;width:100%;height:calc(var(--pn-h) + 2px);padding:0 16px;border:0;border-radius:18px;box-sizing:border-box;background:none;color:var(--pn-strong);font-family:inherit;font-size:calc(var(--pn-font) + 1px);line-height:1;font-weight:500;text-align:left;text-decoration:none;cursor:pointer;outline:none;transition:background-color .2s ease}.pill-nav__row svg{width:1.15em;height:1.15em;flex:none}.pill-nav__row:hover{background:var(--pn-row-hover)}.pill-nav__row[aria-current]{background:var(--pn-pill);box-shadow:var(--pn-pill-shadow);color:var(--pn-pill-ink)}.pill-nav__measure{position:absolute;top:0;left:0;display:flex;gap:2px;visibility:hidden;pointer-events:none}@media(prefers-reduced-motion:reduce){.pill-nav__face,.pill-nav__face-alt,.pill-nav__fill,.pill-nav__line,.pill-nav__item,.pill-nav__row{transition:none}}:root{color-scheme:dark;--bg: #080c15;--bg-2: #0b1120;--panel: #111a2b;--panel-2: #0d1524;--line: rgba(148, 163, 184, .16);--line-strong: rgba(148, 163, 184, .28);--text: #e6edf9;--muted: #8b9cb5;--accent: #7290ff;--accent-2: #38d6c4;--gradient: linear-gradient(135deg, #7f9dff 0%, #38d6c4 100%);--danger: #ff7186;--warning: #f2b95c;--success: #3ddc97;--radius: 18px;--shadow: 0 24px 70px rgba(0, 0, 0, .38);font-family:Inter,PingFang SC,Hiragino Sans GB,Microsoft YaHei,system-ui,-apple-system,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;min-width:320px;min-height:100vh;color:var(--text);background:radial-gradient(900px 500px at 12% -10%,rgba(77,105,255,.2),transparent 62%),radial-gradient(760px 460px at 92% 4%,rgba(56,214,196,.12),transparent 60%),radial-gradient(700px 500px at 50% 110%,rgba(109,140,255,.09),transparent 65%),var(--bg);line-height:1.5}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed}a{color:var(--accent)}code{padding:1px 5px;border:1px solid var(--line);border-radius:5px;background:#94a3b814;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.9em}h1,h2,h3,p{margin:0}[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}.app{width:min(1320px,100%);margin:0 auto;padding:0 28px 44px}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:22px;margin:0 -28px;padding:13px 28px;border-bottom:1px solid var(--line);background:#080c15d1;backdrop-filter:blur(20px) saturate(140%)}.brand{display:flex;align-items:center;gap:11px;flex:none}.brand-mark{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;color:#06131a;background:var(--gradient);box-shadow:0 8px 26px #5885ff61,inset 0 1px #ffffff80}.brand-text{display:flex;flex-direction:column;line-height:1.2}.brand-name{font-size:14.5px;font-weight:700;letter-spacing:.01em}.brand-tag{margin-top:2px;color:var(--muted);font-size:10px;letter-spacing:.16em;text-transform:uppercase}.tabs{display:flex;gap:3px;padding:4px;border:1px solid var(--line);border-radius:14px;background:#111a2bb8}.tab{display:flex;align-items:center;gap:8px;padding:8px 13px;border:1px solid transparent;border-radius:10px;color:var(--muted);background:transparent;font-size:13.5px;font-weight:600;transition:color .18s ease,background .18s ease,border-color .18s ease}.tab small{color:#8b9cb5b8;font-size:10.5px;font-weight:500}.tab:hover{color:var(--text);background:#94a3b812}.tab.active{color:#fff;border-color:#7290ff5c;background:linear-gradient(180deg,#7290ff38,#7290ff14);box-shadow:inset 0 1px #ffffff14}.tab.active small{color:#dbe6ffb3}.topbar-right{display:flex;align-items:center;gap:10px;margin-left:auto}.privacy-chip{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid rgba(61,220,151,.24);border-radius:999px;color:#9bf0cde6;background:#3ddc9712;font-size:11px;white-space:nowrap}.pwa-status{display:flex;align-items:center;gap:8px}.conn{display:inline-flex;align-items:center;gap:6px;color:var(--muted);font-size:11.5px;white-space:nowrap}.conn i{width:6px;height:6px;border-radius:50%;background:var(--muted);box-shadow:0 0 0 3px #8b9cb51a}.conn.online i{background:var(--success);box-shadow:0 0 0 3px #3ddc971f}.conn.offline i{background:var(--warning);box-shadow:0 0 0 3px #f2b95c1f}.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 8px;border-radius:999px;font-size:10.5px;font-weight:600;white-space:nowrap}.badge.success{color:#b6f5d8;border:1px solid rgba(61,220,151,.28);background:#3ddc971a}.badge.warming{color:#ffe0ad;border:1px solid rgba(242,185,92,.28);background:#f2b95c1a}.notice{display:flex;align-items:center;gap:10px;margin-top:14px;padding:10px 13px;border:1px solid var(--line);border-radius:12px;font-size:12.5px;animation:slide-in .25s ease both}.notice.warning{color:#ffe3b4;border-color:#f2b95c47;background:#f2b95c14}.notice.danger{color:#ffd2da;border-color:#ff71864d;background:#ff718614}.notice.success{color:#c4f7df;border-color:#3ddc9747;background:#3ddc9714}.notice.neutral{display:grid;gap:7px;color:var(--text);background:#111a2bcc}.notice-dot{width:7px;height:7px;border-radius:50%;background:currentColor;flex:none}.notice .icon-btn{margin-left:auto}.warm-copy{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-size:12px}.warm-copy .muted{font-size:11px}.warm-track{height:4px;overflow:hidden;border-radius:999px;background:#94a3b824}.warm-track span{display:block;height:100%;border-radius:inherit;background:var(--gradient);transition:width .35s ease}.content{min-height:62vh}.page{animation:fade-up .34s ease both}.page-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin:30px 0 22px}.page-heading h1{margin-top:8px;font-size:clamp(24px,3vw,34px);font-weight:750;letter-spacing:-.025em;line-height:1.18;background:linear-gradient(120deg,#fff 20%,#b8c8ff 70%,#8df3e2);-webkit-background-clip:text;background-clip:text;color:transparent}.page-heading p{max-width:690px;margin-top:9px;color:var(--muted);font-size:13.5px}.eyebrow{display:inline-flex;align-items:center;gap:6px;color:#a9bcff;font-size:10.5px;font-weight:700;letter-spacing:.15em;text-transform:uppercase}.heading-stats{display:flex;gap:22px;flex:none;padding-bottom:3px}.heading-stats span{display:flex;flex-direction:column;gap:1px;color:var(--muted);font-size:10px;letter-spacing:.06em;text-transform:uppercase}.heading-stats b{color:var(--text);font-size:14px;font-weight:650;letter-spacing:0;text-transform:none}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:20px;align-items:start}.panel{padding:22px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,#172236b8,#0c121fc7),var(--panel-2);box-shadow:var(--shadow);backdrop-filter:blur(8px)}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px}.panel-head h2{font-size:15px;font-weight:650;letter-spacing:-.01em}.panel-head p{margin-top:3px;font-size:12px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:10px 15px;border:1px solid transparent;border-radius:11px;font-size:13px;font-weight:600;white-space:nowrap;transition:transform .15s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}.btn.primary{color:#06131a;background:var(--gradient);box-shadow:0 9px 26px #5885ff47,inset 0 1px #ffffff73}.btn.primary:hover:not(:disabled){box-shadow:0 11px 32px #58beff5c,inset 0 1px #ffffff8c}.btn.ghost{color:var(--text);border-color:var(--line);background:#94a3b812}.btn.ghost:hover:not(:disabled){border-color:var(--line-strong);background:#94a3b821}.btn.small{padding:7px 11px;border-radius:9px;font-size:12px}.icon-btn{display:grid;place-items:center;width:30px;height:30px;padding:0;border:1px solid transparent;border-radius:9px;color:var(--muted);background:transparent;transition:color .18s ease,background .18s ease,border-color .18s ease}.icon-btn:hover{color:var(--text);background:#94a3b81a}.icon-btn.bordered{width:34px;height:34px;border-color:var(--line);background:#94a3b80f}.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:16px}.actions.tight{margin-top:10px}.result-meta{margin-left:auto;color:var(--muted);font-size:11px}.file-drop{position:relative;border:1.5px dashed rgba(114,144,255,.34);border-radius:15px;background:linear-gradient(135deg,#7290ff0f,#38d6c409),#080d1773;transition:border-color .18s ease,background .18s ease,transform .18s ease}.file-drop:not(.compact){display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:138px;padding:22px;text-align:center}.file-drop.compact{padding:11px 14px}.file-drop:hover:not(.disabled),.file-drop.dragging{border-color:#7290ffcc;background:linear-gradient(135deg,#7290ff21,#38d6c412),#080d1780}.file-drop.disabled{opacity:.55}.file-drop-icon{display:grid;place-items:center;width:36px;height:36px;flex:none;border:1px solid rgba(114,144,255,.28);border-radius:10px;color:#bac8ff;background:#7290ff1f}.file-drop-title{font-size:13px;font-weight:600}.file-drop-hint{color:var(--muted);font-size:11.5px}.drop-inline{display:flex;align-items:center;gap:11px;min-width:0}.drop-inline .file-drop-icon{width:32px;height:32px;border-radius:9px}.drop-inline>span:last-child{display:flex;min-width:0;flex-direction:column;gap:1px;text-align:left}.drop-inline b{overflow:hidden;font-size:12.5px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.drop-inline small{color:var(--muted);font-size:11px}.progress{display:grid;gap:5px;margin-top:14px}.progress-text{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:11.5px}.progress-percent{color:#b9c8ff;font-variant-numeric:tabular-nums}.progress-track{position:relative;height:5px;overflow:hidden;border-radius:999px;background:#94a3b824}.progress-track span{display:block;height:100%;border-radius:inherit;background:var(--gradient);transition:width .3s ease}.progress-track.indeterminate:after{content:"";position:absolute;inset:0;width:40%;border-radius:inherit;background:var(--gradient);animation:indeterminate 1.2s ease-in-out infinite}.progress-detail{color:#8b9cb5cc;font-size:10.5px}.inline-error{margin-top:12px;padding:9px 12px;border:1px solid rgba(255,113,134,.28);border-radius:10px;color:#ffd0d8;background:#ff718614;font-size:12px}.matting-stage{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:14px}.image-card{min-width:0;margin:0;padding:9px;border:1px solid var(--line);border-radius:14px;background:#080d1773}.image-frame{display:grid;place-items:center;min-height:220px;max-height:390px;overflow:hidden;border-radius:9px;background:#04080f99}.image-frame img{display:block;width:auto;max-width:100%;height:auto;max-height:372px;object-fit:contain}.checker{background-color:#0b1322;background-image:linear-gradient(45deg,rgba(148,163,184,.11) 25%,transparent 25%),linear-gradient(-45deg,rgba(148,163,184,.11) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(148,163,184,.11) 75%),linear-gradient(-45deg,transparent 75%,rgba(148,163,184,.11) 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0}.checker img{filter:drop-shadow(0 10px 22px rgba(0,0,0,.32))}.image-card figcaption{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 4px 1px;font-size:11.5px;font-weight:600}.image-card figcaption .muted{overflow:hidden;max-width:55%;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.frame-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px;color:var(--muted);font-size:11.5px;text-align:center}.frame-placeholder svg{color:#7290ffb3}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:260px;margin-top:14px;padding:26px;border:1px dashed var(--line);border-radius:15px;color:var(--muted);text-align:center}.empty-state svg{margin-bottom:4px;color:#7290ffa6}.empty-state p{color:var(--text);font-size:13px}.empty-state small{font-size:11.5px}.side{display:grid;gap:14px}.info-card{padding:17px;border:1px solid var(--line);border-radius:15px;background:linear-gradient(180deg,#17223699,#0c121fa6),var(--panel-2)}.info-card.subtle{border-color:#94a3b81a;background:#0c121f73}.info-card h3{margin:8px 0 6px;font-size:13.5px;font-weight:650}.info-card p{color:var(--muted);font-size:11.8px;line-height:1.65}.check-list{display:grid;gap:7px;margin:11px 0 0;padding:0;list-style:none}.check-list li{position:relative;padding-left:16px;color:#cdd9ece0;font-size:11.5px;line-height:1.5}.check-list li:before{content:"";position:absolute;top:6px;left:1px;width:5px;height:5px;border-radius:50%;background:var(--accent-2);box-shadow:0 0 0 3px #38d6c41a}.ocr-workbench{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);gap:15px;margin-top:14px}.ocr-visual{display:flex;min-width:0;flex-direction:column;gap:8px}.ocr-canvas{position:relative;width:100%;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#05090f;line-height:0}.ocr-canvas img{display:block;width:100%;height:100%;max-height:540px;object-fit:contain}.ocr-box{position:absolute;appearance:none;min-width:0;min-height:0;padding:0;border:1px solid rgba(56,214,196,.8);border-radius:3px;background:#38d6c41f;box-shadow:0 0 0 1px #04080f73;transition:background .15s ease,border-color .15s ease}.ocr-box:hover,.ocr-box.active,.ocr-box:focus-visible{border-color:#9ff8ec;background:#38d6c442;box-shadow:0 0 0 2px #04080f99,0 0 18px #38d6c447;outline:none}.image-caption{display:flex;flex-wrap:wrap;gap:5px 12px;color:var(--muted);font-size:10.5px;font-variant-numeric:tabular-nums}.ocr-text{display:flex;min-width:0;flex-direction:column;min-height:300px;padding:12px;border:1px solid var(--line);border-radius:13px;background:#060b1473}.ocr-text-head,.box-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px;color:var(--text);font-size:11.5px;font-weight:650;letter-spacing:.03em}.ocr-text-head .muted,.box-head .muted{font-size:10.5px;font-weight:500}.text-area{width:100%;min-height:170px;padding:12px;border:1px solid var(--line);border-radius:11px;color:var(--text);background:#04080f8c;font-size:12.5px;line-height:1.7;resize:vertical;transition:border-color .18s ease,box-shadow .18s ease}.text-area::placeholder{color:#8b9cb59e}.text-area:focus{border-color:#7290ff8c;box-shadow:0 0 0 3px #7290ff1f;outline:none}.text-area.grow{flex:1;min-height:230px;resize:none}.text-area.mini{min-height:92px;font-size:12px}.switch{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:11.5px;white-space:nowrap;cursor:pointer}.switch input{width:15px;height:15px;accent-color:var(--accent)}.blocks-panel{margin-top:16px;border:1px solid var(--line);border-radius:12px;background:#060b1459}.blocks-panel summary{padding:10px 13px;color:var(--muted);font-size:11.5px;cursor:pointer;user-select:none}.blocks-panel summary:hover{color:var(--text)}.blocks-list{max-height:300px;overflow:auto;padding:0 13px 8px;border-top:1px solid var(--line)}.block-row{display:grid;grid-template-columns:38px minmax(0,1fr);gap:8px;padding:9px 4px;border-bottom:1px solid rgba(148,163,184,.08);transition:background .15s ease}.block-row:last-child{border-bottom:0}.block-row.active{background:#38d6c40f}.block-index{color:#7290ffd9;font-size:10.5px;font-variant-numeric:tabular-nums}.block-row p{margin-bottom:2px;font-size:12px;line-height:1.5;overflow-wrap:anywhere}.block-row .muted{font-size:10px;font-variant-numeric:tabular-nums}.translate-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:16px}.segmented{display:inline-flex;gap:3px;padding:4px;border:1px solid var(--line);border-radius:11px;background:#060b1466}.segmented button{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:1px solid transparent;border-radius:8px;color:var(--muted);background:transparent;font-size:12px;font-weight:600;transition:color .18s ease,background .18s ease,border-color .18s ease}.segmented button:hover:not(:disabled){color:var(--text);background:#94a3b812}.segmented button.active{color:#fff;border-color:#7290ff52;background:#7290ff29}.segmented button:disabled{opacity:.5}.direction-control select{height:34px;padding:0 28px 0 11px;border:1px solid var(--line);border-radius:9px;color:var(--text);background-color:#94a3b80f;font-size:12px;cursor:pointer}.direction-control select:focus{border-color:#7290ff8c;outline:none}.translate-columns{display:grid;grid-template-columns:1fr 1fr;gap:14px}.translate-box{display:flex;min-width:0;min-height:360px;flex-direction:column;padding:13px;border:1px solid var(--line);border-radius:14px;background:#060b146b}.translate-box.output{border-color:#38d6c433;background:linear-gradient(180deg,rgba(56,214,196,.045),transparent 45%),#060b146b}.translate-box .text-area{border-color:transparent;background:transparent;padding:4px 2px}.translate-box .text-area:focus{border-color:transparent;box-shadow:none}.box-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:8px}.image-translate{display:grid;gap:14px}.image-translate-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.image-mini{display:grid;place-items:center;min-height:240px;max-height:380px;overflow:hidden;padding:10px;border:1px solid var(--line);border-radius:13px;background-color:#0b1322;background-image:linear-gradient(45deg,rgba(148,163,184,.09) 25%,transparent 25%),linear-gradient(-45deg,rgba(148,163,184,.09) 25%,transparent 25%),linear-gradient(45deg,transparent 75%,rgba(148,163,184,.09) 75%),linear-gradient(-45deg,transparent 75%,rgba(148,163,184,.09) 75%);background-size:18px 18px;background-position:0 0,0 9px,9px -9px,-9px 0}.image-mini img{max-width:100%;max-height:356px;object-fit:contain}.image-translate-side{display:flex;flex-direction:column;gap:9px;min-width:0}.voice-panel{display:grid;gap:14px}.recorder{display:flex;align-items:center;gap:16px;padding:17px;border:1px dashed rgba(114,144,255,.3);border-radius:15px;background:radial-gradient(400px 130px at 12% 50%,rgba(114,144,255,.1),transparent 70%),#060b146b;transition:border-color .2s ease,background .2s ease}.recorder.recording{border-color:#ff718680;background:radial-gradient(400px 130px at 12% 50%,rgba(255,113,134,.13),transparent 70%),#12081080}.record-btn{display:grid;place-items:center;width:62px;height:62px;flex:none;border:0;border-radius:50%;color:#06131a;background:var(--gradient);box-shadow:0 10px 28px #5885ff57,inset 0 1px #fff6;transition:transform .18s ease,box-shadow .18s ease}.record-btn:hover:not(:disabled){transform:scale(1.04)}.recorder.recording .record-btn{color:#fff;background:linear-gradient(135deg,#ff7186,#ff9f6e);box-shadow:0 10px 30px #ff718659}.record-copy{display:flex;min-width:0;flex-direction:column;gap:2px}.record-copy b{font-size:13px;font-weight:650}.record-copy span{font-size:11px}.wave{display:flex;align-items:center;gap:3px;height:40px;margin-left:auto;padding:0 4px}.wave i{width:3px;height:8px;border-radius:999px;background:#7290ff73;transition:background .18s ease}.wave.active i{background:#ff8fa0;animation:wave .9s ease-in-out infinite}.audio-player{width:100%;height:36px;border-radius:9px}.transcript{padding:12px;border:1px solid var(--line);border-radius:13px;background:#060b146b}.translate-output-wrap{margin-top:14px}.footer{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-top:34px;padding-top:16px;border-top:1px solid var(--line);color:#8b9cb5cc;font-size:10.5px}.footer>div:first-child{display:flex;flex-direction:column;gap:2px}.footer-note{max-width:520px;text-align:right}.footer-device-note{color:#6ee7f9b8}@keyframes fade-up{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes slide-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}@keyframes indeterminate{0%{transform:translate(-110%)}to{transform:translate(280%)}}@keyframes wave{0%,to{height:7px}50%{height:30px}}@media(max-width:1120px){.workspace-grid{grid-template-columns:minmax(0,1fr)}.side{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:940px){.topbar{flex-wrap:wrap;gap:10px 16px}.tabs{order:3;width:100%}.tab{flex:1;justify-content:center}.privacy-chip{display:none}.ocr-workbench,.translate-columns{grid-template-columns:minmax(0,1fr)}.ocr-text{min-height:260px}.page-heading{align-items:flex-start;flex-direction:column;gap:14px}.heading-stats{gap:18px}}@media(max-width:700px){.app{padding:0 14px 36px}.topbar{margin:0 -14px;padding:11px 14px}.brand-tag{display:none}.tab{gap:6px;padding:8px 9px;font-size:12.5px}.tab small{display:none}.page-heading{margin-top:22px}.panel{padding:15px;border-radius:15px}.matting-stage,.image-translate-body{grid-template-columns:minmax(0,1fr)}.image-frame{min-height:180px;max-height:320px}.image-frame img{max-height:300px}.actions{align-items:stretch;flex-direction:column}.actions .btn{width:100%}.result-meta{margin-left:0;text-align:center}.side{grid-template-columns:minmax(0,1fr)}.recorder{flex-wrap:wrap;gap:12px}.wave{width:100%;margin-left:0;justify-content:center}.footer{flex-direction:column;gap:8px}.footer-note{text-align:left}.warm-copy{flex-direction:column;gap:2px}}.app-shell{position:relative;min-height:100vh;isolation:isolate}.aero-backdrop{position:fixed;inset:0;z-index:0;overflow:hidden;pointer-events:none;background:radial-gradient(900px 520px at 14% -8%,rgba(58,112,158,.24),transparent 64%),radial-gradient(820px 520px at 92% 8%,rgba(85,247,225,.12),transparent 62%),var(--bg)}.aero-backdrop .aero-shards{position:absolute;inset:0;width:100%;height:100%;opacity:1}.aero-backdrop:after{content:"";position:absolute;inset:0;background:radial-gradient(1100px 680px at 50% 20%,#080c1500,#080c151f 52%,#080c1585),linear-gradient(180deg,#080c1505,#080c156b)}.app{position:relative;z-index:1}.aero-backdrop--fallback{background:radial-gradient(1000px 620px at 16% -12%,rgba(58,112,158,.34),transparent 62%),radial-gradient(800px 520px at 90% 10%,rgba(85,247,225,.16),transparent 60%),radial-gradient(900px 600px at 50% 112%,rgba(46,88,132,.22),transparent 66%),var(--bg)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{color-scheme:light;--paper: #f8fbf9;--paper-deep: #edf5f1;--sheet: #ffffff;--ink: #12201f;--ink-soft: #344743;--muted: #5e706b;--faint: #6e807a;--line: #d3e0db;--line-dark: #b4c9c2;--accent: #1f6b6d;--accent-dark: #123f43;--accent-soft: #d9ece8;--blue: #3d6f8e;--olive: #55604b;--ink-gradient: linear-gradient(112deg, #15575b 0%, #2e7f82 48%, #3f6f91 100%);--display: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, "Songti SC", "STSong", "SimSun", serif;--sans: "Helvetica Neue", "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--mono: "SFMono-Regular", "Cascadia Mono", Consolas, "Liberation Mono", monospace;--bg: var(--paper);--bg-2: var(--paper-deep);--panel: var(--sheet);--panel-2: #fbfdfc;--line-strong: var(--line-dark);--text: var(--ink);--gradient: var(--ink-gradient);--danger: #a33b32;--warning: #9a6a1f;--success: #1f6b4f;--radius: 2px;--shadow: none;font-family:var(--sans);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}html{background:var(--paper)}body{color:var(--ink);background:transparent;font-family:var(--sans);font-size:14px;line-height:1.55}code{border:1px solid var(--line);border-radius:2px;background:var(--paper-deep);color:var(--accent-dark);font-family:var(--mono)}.mobile-break{display:none}.aero-backdrop{position:fixed;inset:0;z-index:0;height:100vh;overflow:hidden;pointer-events:none;isolation:isolate;background:radial-gradient(900px 520px at 78% -10%,rgba(61,111,142,.12),transparent 62%),radial-gradient(760px 500px at 96% 8%,rgba(31,107,109,.08),transparent 58%),linear-gradient(180deg,#ffffff 0%,var(--paper) 52%,var(--paper-deep) 100%)}.aero-backdrop:before{content:"";position:absolute;inset:0;z-index:0;background:radial-gradient(640px 420px at 72% 4%,rgba(36,79,91,.2),transparent 64%),radial-gradient(440px 320px at 92% 18%,rgba(60,179,167,.14),transparent 68%),radial-gradient(520px 420px at 12% 88%,rgba(36,79,91,.08),transparent 68%)}.aero-backdrop .aero-shards{position:absolute;inset:0;z-index:1;width:100%;height:100%;opacity:.9;filter:contrast(1.04) saturate(1.06);mix-blend-mode:multiply;mask-image:linear-gradient(to bottom,#000 0%,#000 82%,rgba(0,0,0,.65) 94%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 82%,rgba(0,0,0,.65) 94%,transparent 100%)}.aero-backdrop:after{content:"";position:absolute;inset:0;z-index:2;background:linear-gradient(90deg,rgba(248,251,249,.97) 0%,rgba(248,251,249,.94) 38%,rgba(248,251,249,.55) 58%,transparent 72%),linear-gradient(180deg,transparent 0%,transparent 72%,rgba(248,251,249,.36) 88%,rgba(248,251,249,.9) 100%)}.aero-backdrop--fallback{background:radial-gradient(900px 520px at 78% -10%,rgba(61,111,142,.22),transparent 62%),radial-gradient(740px 460px at 94% 8%,rgba(31,107,109,.16),transparent 58%),radial-gradient(800px 520px at 50% 112%,rgba(61,111,142,.08),transparent 62%),linear-gradient(180deg,#ffffff 0%,var(--paper) 56%,var(--paper-deep) 100%)}.aero-backdrop--fallback:before{content:"";position:absolute;inset:0;background:radial-gradient(closest-side at 68% 18%,rgba(49,95,109,.36),transparent 72%),radial-gradient(closest-side at 92% 42%,rgba(78,201,184,.3),transparent 68%),conic-gradient(from 210deg at 74% 24%,rgba(49,95,109,.2),transparent 18%,rgba(78,201,184,.16) 34%,transparent 52%);filter:blur(1px);opacity:.7;mask-image:linear-gradient(to bottom,#000 0%,#000 42%,transparent 78%)}.app-shell{position:relative;z-index:1;min-height:100vh;isolation:isolate}.app{position:relative;z-index:1;width:min(1440px,100%);margin:0 auto;padding:0 34px 40px;color:var(--ink)}.app-body{display:grid;grid-template-columns:218px minmax(0,1fr);gap:54px}.masthead{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:28px;min-height:86px;margin:0 -34px;padding:0 34px;border-bottom:1px solid var(--line);background:#f8fbf9d6;backdrop-filter:blur(18px) saturate(120%)}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{display:grid;place-items:center;width:38px;height:38px;flex:0 0 auto;border:1px solid var(--accent-dark);border-radius:2px;background:var(--ink-gradient);color:#fff;box-shadow:none}.brand-mark--plain{width:34px;height:34px;border:0;border-radius:0;background:transparent}.brand-mark-img{width:34px;height:34px;object-fit:contain}.brand-wordmark{display:block;width:auto;height:21px}.brand-text{display:flex;flex-direction:column;gap:2px}.brand-name{font-family:var(--display);font-size:21px;font-weight:400;letter-spacing:.01em;color:var(--ink);white-space:nowrap}.brand-tag{font-family:var(--mono);font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:var(--faint);white-space:nowrap}.tabs{display:flex;align-items:stretch;justify-content:flex-start;gap:0;height:86px;min-width:0;padding:0 0 0 48px;border:0;border-radius:0;background:transparent}.tab{position:relative;display:grid;grid-template-columns:auto auto;grid-template-areas:"icon label" "icon hint";grid-template-rows:1fr 1fr;align-items:center;column-gap:8px;height:100%;padding:0 22px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--muted);box-shadow:none}.tab svg{grid-area:icon;opacity:.72}.tab span{grid-area:label;align-self:end;font-family:var(--sans);font-size:13px;font-weight:500;letter-spacing:.02em;color:var(--ink-soft)}.tab small{grid-area:hint;align-self:start;font-family:var(--mono);font-size:8px;font-weight:400;letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}.tab:hover{background:#d9ece852}.tab.active{border-bottom-color:var(--accent);background:transparent}.tab.active svg{color:var(--accent);opacity:1}.tab.active span{color:var(--accent-dark)}.topbar-right{display:flex;align-items:center;justify-content:flex-end;gap:10px}.pwa-status{display:flex;align-items:center;gap:10px}.conn{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;border-radius:0;background:transparent;color:var(--faint);font-family:var(--mono);font-size:9px;letter-spacing:.1em}.conn i{width:6px;height:6px;border-radius:50%;background:var(--olive);box-shadow:none}.conn.online i{background:var(--accent)}.conn.offline i{background:#9a6a1f}.badge{display:inline-flex;align-items:center;gap:5px;padding:4px 7px;border:0;border-radius:1px;background:var(--paper-deep);color:var(--ink-soft);font-family:var(--mono);font-size:8px;letter-spacing:.04em}.badge.success{background:var(--accent-soft);color:var(--accent-dark)}.badge.warming{background:#fbf3e2;color:#7c5418}.pwa-status .btn{height:auto;padding:3px 0;border:0;border-bottom:1px solid var(--ink);border-radius:0;background:transparent;color:var(--ink);font-size:11px;letter-spacing:.04em}.pwa-status .btn:hover{background:transparent;color:var(--accent);border-bottom-color:var(--accent)}.rail{display:flex;flex-direction:column;min-height:calc(100vh - 86px);padding:44px 26px 38px 0;border-right:1px solid var(--line);background:linear-gradient(90deg,rgba(248,251,249,.97) 0%,rgba(248,251,249,.76) 72%,transparent 100%)}.rail-kicker{margin:0;font-family:var(--mono);font-size:9px;letter-spacing:.16em;text-transform:uppercase;color:var(--faint)}.rail-title{margin:26px 0 0;font-family:var(--display);font-size:31px;font-weight:400;line-height:1.2;letter-spacing:-.015em;color:var(--ink)}.rail-title em{font-style:normal;background:var(--ink-gradient);-webkit-background-clip:text;background-clip:text;color:transparent}.rail-copy{max-width:172px;margin:18px 0 0;font-size:12px;line-height:1.7;color:var(--muted)}.rail-specs{margin:36px 0 0;padding:0;border-top:1px solid var(--line)}.rail-specs div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px solid var(--line)}.rail-specs dt{font-family:var(--mono);font-size:8px;letter-spacing:.1em;text-transform:uppercase;color:var(--faint)}.rail-specs dd{margin:0;font-family:var(--mono);font-size:8px;letter-spacing:.04em;color:var(--ink-soft)}.rail-foot{display:flex;align-items:flex-start;gap:14px;margin-top:auto;padding-top:40px}.seal{display:flex;align-items:center;justify-content:center;width:38px;height:38px;flex:0 0 auto;border:1px solid var(--accent);color:var(--accent);font-family:var(--display);font-size:12px;line-height:1.02;text-align:center;box-shadow:inset 0 0 0 2px var(--paper),inset 0 0 0 3px #1f6b6d8c}.rail-models,.rail-formats,.rail-est{margin:0;font-family:var(--mono);font-size:8px;line-height:1.7;letter-spacing:.04em;color:var(--faint)}.rail-est{margin-top:4px;color:var(--muted)}.stage{min-width:0}.stage>.notice{margin-top:20px}.page{padding:0}.page-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:28px;margin-bottom:26px;padding:40px 0 28px;border-bottom:1px solid var(--line)}.page-heading-copy{min-width:0}.eyebrow{display:flex;align-items:center;gap:7px;margin-bottom:18px;font-family:var(--mono);font-size:9px;font-weight:400;letter-spacing:.16em;text-transform:uppercase;color:var(--faint)}.eyebrow svg{color:var(--accent);opacity:.8}.page-heading h1{margin:0;font-family:var(--display);font-size:clamp(48px,5.1vw,76px);font-weight:400;line-height:.99;letter-spacing:-.025em;color:var(--ink)}.page-heading h1 em{font-style:normal;background:var(--ink-gradient);-webkit-background-clip:text;background-clip:text;color:transparent}.page-heading p{max-width:555px;margin:20px 0 0;font-size:13px;line-height:1.7;color:var(--muted)}.heading-stats{display:flex;align-items:flex-end;gap:24px;padding-bottom:4px}.heading-stats span{display:flex;flex-direction:column;align-items:flex-end;gap:3px;font-family:var(--mono);font-size:8px;letter-spacing:.06em;color:var(--faint);white-space:nowrap}.heading-stats b{font-family:var(--display);font-size:21px;font-weight:400;letter-spacing:0;color:var(--ink)}.workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 292px;gap:22px;align-items:start}.panel{padding:24px;border:1px solid var(--line-dark);border-radius:2px;background:#ffffffe6;box-shadow:none;backdrop-filter:blur(5px)}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px;padding-bottom:14px;border-bottom:1px solid var(--line)}.panel-head h2{font-family:var(--display);font-size:25px;font-weight:400;line-height:1.1;color:var(--ink)}.panel-head p{margin-top:5px;font-size:11px;color:var(--muted)}.muted{color:var(--muted)}.side{display:flex;flex-direction:column;gap:14px}.info-card{padding:18px;border:1px solid var(--line);border-radius:2px;background:#ffffffb8;box-shadow:none}.info-card.subtle{background:#edf5f199}.info-card .eyebrow{margin-bottom:8px;font-size:8px}.info-card h3{margin:0 0 9px;font-family:var(--display);font-size:20px;font-weight:400;line-height:1.2;color:var(--ink)}.info-card p{font-size:11.5px;line-height:1.7;color:var(--muted)}.info-card p+p{margin-top:8px}.check-list{display:flex;flex-direction:column;gap:7px;margin:11px 0 0;padding:0;list-style:none}.check-list li{position:relative;padding-left:13px;font-size:11px;line-height:1.55;color:var(--ink-soft)}.check-list li:before{content:"";position:absolute;top:.62em;left:0;width:4px;height:4px;border-radius:50%;background:var(--accent);box-shadow:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:38px;padding:0 13px;border:1px solid var(--line-dark);border-radius:2px;background:transparent;color:var(--ink);font-family:var(--sans);font-size:12px;font-weight:500;letter-spacing:.01em;box-shadow:none}.btn:hover:not(:disabled){background:var(--paper-deep)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.42}.btn.primary{border-color:transparent;background:var(--ink-gradient);color:#fff}.btn.primary:hover:not(:disabled){background:var(--ink-gradient);filter:brightness(1.12)}.btn.ghost{background:transparent;color:var(--ink-soft)}.btn.ghost:hover:not(:disabled){background:var(--paper-deep);border-color:var(--line-dark)}.btn.small{height:32px;padding:0 10px;font-size:11px}.icon-btn{display:inline-grid;place-items:center;width:30px;height:30px;padding:0;border:0;border-radius:2px;background:transparent;color:var(--muted)}.icon-btn:hover{background:var(--paper-deep);color:var(--ink)}.icon-btn.bordered{width:34px;height:34px;border:1px solid var(--line-dark);background:#fff}.notice{display:flex;align-items:center;gap:10px;padding:11px 14px;border:1px solid var(--line);border-left:2px solid var(--accent);border-radius:0;background:#ffffffd6;color:var(--ink-soft);font-size:12px;box-shadow:none}.notice.success{border-left-color:var(--accent);background:#d9ece89e;color:var(--accent-dark)}.notice.warning{border-left-color:#9a6a1f;background:#fbf3e2;color:#6d4a14}.notice.danger{border-left-color:var(--danger);background:#fbebe8;color:#7d2b25}.notice.neutral{border-left-color:var(--blue);background:#edf5f1d1}.notice-dot{width:6px;height:6px;flex:0 0 auto;border-radius:50%;background:currentColor;box-shadow:none}.notice .icon-btn{margin-left:auto;color:currentColor;opacity:.72}.warm-copy{display:flex;flex-direction:column;gap:2px}.warm-track{width:120px;height:3px;flex:0 0 auto;margin-left:auto;background:var(--line);overflow:hidden}.warm-track span{display:block;height:100%;background:var(--accent);transition:width .3s ease}.file-drop{border:1px dashed var(--line-dark);border-radius:0;background:#f8fbf98c;padding:24px;transition:border-color .18s ease,background .18s ease}.file-drop.compact{padding:12px 14px}.file-drop:hover:not(.disabled),.file-drop.dragging{border-color:var(--accent);background:#d9ece880}.file-drop.disabled{opacity:.5}.file-drop-icon{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--line);border-radius:2px;background:#fff;color:var(--accent)}.drop-inline{display:flex;align-items:center;gap:12px}.drop-inline b{display:block;font-size:12px;font-weight:500;color:var(--ink-soft)}.drop-inline small{display:block;margin-top:2px;font-size:10px;color:var(--muted)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:260px;padding:36px;border:1px dashed var(--line);background:#ffffff73;color:var(--muted);text-align:center}.empty-state svg{color:var(--accent);opacity:.75}.empty-state p{margin-top:4px;font-family:var(--display);font-size:22px;line-height:1.3;color:var(--ink-soft)}.empty-state small{font-size:10px;color:var(--faint)}.progress{margin-top:14px;padding-top:10px;border-top:1px solid var(--line)}.progress-text{display:flex;justify-content:space-between;gap:14px;font-family:var(--mono);font-size:9px;letter-spacing:.04em;color:var(--muted)}.progress-track{height:3px;margin-top:7px;background:var(--paper-deep);overflow:hidden}.progress-track span{display:block;height:100%;background:var(--ink-gradient);transition:width .25s ease}.progress-percent{font-family:var(--mono);color:var(--ink-soft)}.progress-detail{margin-top:5px;font-family:var(--mono);font-size:8px;color:var(--faint)}.matting-stage{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:14px}.image-card{min-width:0;margin:0;padding:8px;border:1px solid var(--line-dark);border-radius:2px;background:#fff}.image-frame{position:relative;display:grid;place-items:center;overflow:hidden;aspect-ratio:1 / 1;background:var(--paper-deep)}.image-frame img{width:100%;height:100%;object-fit:contain}.image-frame.checker{background-color:#f4f8f6;background-image:linear-gradient(45deg,#e1ebe6 25%,transparent 25%),linear-gradient(-45deg,#e1ebe6 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e1ebe6 75%),linear-gradient(-45deg,transparent 75%,#e1ebe6 75%);background-size:16px 16px;background-position:0 0,0 8px,8px -8px,-8px 0}.image-card figcaption{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 2px 0;font-family:var(--mono);font-size:8px;letter-spacing:.04em;color:var(--faint);text-transform:uppercase}.frame-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;padding:20px;color:var(--muted);font-size:11px;text-align:center}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin-top:16px;padding-top:14px;border-top:1px solid var(--line)}.actions.tight{margin-top:10px;padding-top:10px}.result-meta{margin-left:auto;font-family:var(--mono);font-size:8px;letter-spacing:.04em;color:var(--faint)}.inline-error{margin-top:12px;padding:9px 11px;border-left:2px solid var(--danger);background:#fbebe8;color:#7d2b25;font-size:11px}.ocr-workbench{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:16px;margin-top:14px}.ocr-visual{min-width:0}.ocr-canvas{position:relative;overflow:hidden;border:1px solid var(--line-dark);background:#fff}.ocr-canvas img{display:block;width:100%;height:100%;object-fit:contain}.ocr-box{position:absolute;border:1.5px solid var(--accent);border-radius:0;background:#1f6b6d0e;cursor:crosshair;transition:background .15s ease,border-color .15s ease}.ocr-box:hover,.ocr-box.active,.ocr-box:focus-visible{border-color:var(--accent-dark);background:#1f6b6d24;outline:none;box-shadow:none}.ocr-box.needs-review{border-color:#b6791f;border-style:dashed;background:#b6791f12}.ocr-box.needs-review:hover,.ocr-box.needs-review.active{border-color:#8f5d13;background:#b6791f29}.ocr-review-count{color:#8f5d13;font-weight:600}.block-row.needs-review{border-left:2px solid #b6791f;background:#b6791f0f}.image-caption{display:flex;flex-wrap:wrap;gap:10px;padding-top:7px;font-family:var(--mono);font-size:8px;color:var(--faint)}.ocr-text{display:flex;flex-direction:column;min-height:300px;padding:15px;border:1px solid var(--line-dark);background:#fff}.ocr-text-head,.box-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:9px;border-bottom:1px solid var(--line);font-family:var(--mono);font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:var(--faint)}.ocr-text-head .muted,.box-head .muted{color:var(--faint);font-size:8px}.text-area{width:100%;min-height:120px;padding:10px 0;border:0;border-radius:0;background:transparent;color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.7;resize:vertical;outline:none;box-shadow:none}.text-area::placeholder{color:var(--faint)}.text-area:focus{border-color:transparent;box-shadow:inset 0 -1px 0 var(--accent)}.text-area.grow{flex:1;min-height:260px}.text-area.mini{min-height:90px;font-size:12px}.switch{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:8px;letter-spacing:.04em;color:var(--muted);white-space:nowrap}.switch input{accent-color:var(--accent)}.blocks-panel{margin-top:14px;border:0;border-top:1px solid var(--line);border-radius:0;background:transparent}.blocks-panel summary{padding:11px 0;font-family:var(--mono);font-size:10px;letter-spacing:.04em;color:var(--muted);cursor:pointer;user-select:none}.blocks-panel summary:hover{color:var(--accent)}.blocks-list{display:flex;flex-direction:column}.block-row{display:flex;gap:10px;padding:9px 0;border-top:1px solid var(--line)}.block-row.active{background:#d9ece866}.block-index{flex:0 0 26px;font-family:var(--mono);font-size:8px;color:var(--accent)}.block-row p{font-size:11px;color:var(--ink-soft)}.block-row .muted{display:block;margin-top:2px;font-family:var(--mono);font-size:8px;color:var(--faint)}.translate-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:12px;border-bottom:1px solid var(--line)}.segmented{display:flex;align-items:center;gap:18px;padding:0;border:0;border-radius:0;background:transparent}.segmented button{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 0 8px;border:0;border-bottom:2px solid transparent;border-radius:0;background:transparent;color:var(--muted);font-size:12px}.segmented button:hover:not(:disabled){color:var(--ink);background:transparent}.segmented button.active{border-bottom-color:var(--accent);background:transparent;color:var(--accent-dark)}.segmented button:disabled{opacity:.45}.direction-control{display:flex;align-items:center;gap:7px}.direction-control select{height:34px;padding:0 26px 0 9px;border:1px solid var(--line-dark);border-radius:2px;background-color:#fff;color:var(--ink-soft);font-family:var(--mono);font-size:10px;letter-spacing:.03em}.direction-control select:focus{border-color:var(--accent);outline:none;box-shadow:none}.translate-columns{display:grid;grid-template-columns:1fr 1fr;margin-top:16px;border:1px solid var(--line-dark);background:#fff}.translate-box{display:flex;flex-direction:column;min-width:0;min-height:280px;padding:16px;border:0;border-radius:0;background:#fff}.translate-box+.translate-box{border-left:1px solid var(--line-dark)}.translate-box.output{background:#d9ece84d}.box-actions{display:flex;align-items:center;gap:8px;padding-top:10px;border-top:1px solid var(--line)}.translate-output-wrap,.image-translate{margin-top:14px}.image-translate-body{display:grid;grid-template-columns:180px minmax(0,1fr);gap:16px;align-items:start;margin-top:14px}.image-mini{overflow:hidden;border:1px solid var(--line-dark);background:#fff}.image-mini img{display:block;width:100%;height:auto}.image-translate-side{display:flex;flex-direction:column;gap:10px;min-width:0}.voice-panel{margin-top:14px}.recorder{display:flex;align-items:center;gap:16px;padding:18px;border:1px solid var(--line-dark);background:#fff}.recorder.recording{border-color:var(--accent);background:#d9ece861}.record-btn{display:grid;place-items:center;width:62px;height:62px;flex:0 0 auto;border:0;border-radius:50%;background:var(--accent-dark);color:#fff;box-shadow:none}.record-btn:hover:not(:disabled){background:var(--accent)}.recorder.recording .record-btn{background:var(--accent)}.record-copy{min-width:0}.record-copy b{display:block;font-family:var(--display);font-size:19px;font-weight:400;color:var(--ink)}.record-copy span{display:block;margin-top:3px;font-size:10px;color:var(--muted)}.wave{display:flex;align-items:center;gap:3px;height:28px;margin-left:auto}.wave i{display:block;width:2px;height:7px;background:var(--line-dark)}.wave.active i{background:var(--accent);animation:ink-wave 1s ease-in-out infinite alternate}@keyframes ink-wave{0%{transform:scaleY(.45)}to{transform:scaleY(1)}}.audio-player{width:100%;height:34px;margin-top:10px;filter:sepia(.08) saturate(.85)}.transcript{margin-top:12px;padding:14px;border:1px solid var(--line-dark);background:#fff}.footer{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-top:30px;padding-top:14px;border-top:1px solid var(--line);color:var(--faint);font-family:var(--mono);font-size:8px;letter-spacing:.04em;line-height:1.7}.footer-meta{display:flex;flex-direction:column;gap:3px}.footer-note{max-width:430px;text-align:right}.footer-device-note{color:var(--muted)}@media(max-width:1180px){.app-body{grid-template-columns:190px minmax(0,1fr);gap:38px}.rail-title{font-size:28px}.workspace-grid{grid-template-columns:minmax(0,1fr) 260px}.page-heading h1{font-size:clamp(44px,5vw,64px)}}@media(max-width:980px){.app{padding:0 22px 32px}.masthead{grid-template-columns:auto minmax(0,1fr) auto;gap:16px;margin:0 -22px;padding:0 22px}.brand-tag{display:none}.app-body{display:block}.rail{min-height:0;padding:26px 0 18px;border-right:0;border-bottom:1px solid var(--line)}.rail-kicker,.rail-copy,.rail-specs,.rail-foot{display:none}.rail-title{margin:0;font-size:23px}.rail-title br{display:none}.stage{padding-top:2px}.page-heading{grid-template-columns:1fr;gap:18px;padding:32px 0 24px}.heading-stats{justify-content:flex-start;gap:28px;padding-bottom:0}.heading-stats span{align-items:flex-start}.workspace-grid{grid-template-columns:1fr}.side{display:grid;grid-template-columns:1fr 1fr}}@media(max-width:720px){.app{padding:0 16px 26px}.mobile-break{display:inline}.aero-backdrop{inset:0;height:100vh}.aero-backdrop .aero-shards{height:58vh;opacity:.95;mask-image:linear-gradient(to bottom,#000 0%,#000 44%,rgba(0,0,0,.62) 68%,transparent 82%);-webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 44%,rgba(0,0,0,.62) 68%,transparent 82%)}.aero-backdrop:after{background:linear-gradient(90deg,rgba(248,251,249,.96) 0%,rgba(248,251,249,.86) 46%,rgba(248,251,249,.25) 68%,transparent 80%),linear-gradient(180deg,rgba(248,251,249,.01) 0%,rgba(248,251,249,.06) 38%,rgba(248,251,249,.64) 70%,var(--paper) 90%)}.masthead{grid-template-columns:1fr auto;min-height:64px;margin:0 -16px;padding:0 16px;gap:10px}.brand-name{font-size:18px}.brand{gap:8px}.brand-mark{width:32px;height:32px}.brand-mark--plain,.brand-mark-img{width:30px;height:30px}.brand-wordmark{height:16px}.brand-tag{display:block;font-size:7px;letter-spacing:.12em}.tabs{grid-column:1 / -1;grid-row:2;order:3;height:54px;justify-content:flex-start;margin:0 -16px;padding:0 16px;border-top:1px solid var(--line);overflow-x:auto}.masthead{padding-bottom:0}.tab{padding:0 16px;flex:0 0 auto}.tab small{display:none}.topbar-right{gap:8px}.conn{font-size:8px}.badge{display:none}.pwa-status .btn{font-size:10px}.rail{padding:20px 0 14px}.rail-title{font-size:21px}.page-heading{padding:26px 0 20px;margin-bottom:18px}.eyebrow{margin-bottom:14px;font-size:8px}.page-heading h1{font-size:clamp(40px,12vw,58px);line-height:1.02}.page-heading p{margin-top:14px;font-size:12px}.heading-stats{gap:20px}.heading-stats b{font-size:18px}.panel{padding:16px}.panel-head{gap:10px}.panel-head h2{font-size:22px}.side,.matting-stage,.ocr-workbench{grid-template-columns:1fr}.ocr-text{min-height:240px}.translate-toolbar{align-items:flex-start;flex-direction:column;gap:10px}.translate-columns{grid-template-columns:1fr}.translate-box{min-height:220px}.translate-box+.translate-box{border-top:1px solid var(--line-dark);border-left:0}.image-translate-body{grid-template-columns:1fr}.image-mini{max-width:180px}.recorder{flex-wrap:wrap;gap:12px}.wave{display:none}.record-btn{width:52px;height:52px}.record-copy{flex:1}.record-copy b{font-size:17px}.footer{flex-direction:column;gap:10px;margin-top:22px}.footer-note{max-width:none;text-align:left}.notice{align-items:flex-start;font-size:11px}.warm-track{width:80px}}@media(prefers-reduced-motion:reduce){.aero-backdrop .aero-shards{opacity:.5}}.page-heading,.workspace-grid{width:min(100%,1060px);margin-left:auto;margin-right:auto}.panel{padding:26px;border:1px solid rgba(255,255,255,.62);border-radius:22px;background:linear-gradient(150deg,#ffffffe0,#ffffffad);box-shadow:0 34px 80px -42px #0f3f437a,inset 0 1px #ffffffeb;backdrop-filter:blur(24px) saturate(1.08);-webkit-backdrop-filter:blur(24px) saturate(1.08)}.panel-head{border-bottom-color:#123f431f}.info-card{border:1px solid rgba(255,255,255,.58);border-radius:18px;background:linear-gradient(155deg,#ffffffd1,#fff9);box-shadow:0 24px 54px -36px #0f3f4366,inset 0 1px #ffffffdb;backdrop-filter:blur(18px) saturate(1.06);-webkit-backdrop-filter:blur(18px) saturate(1.06)}.info-card.subtle{background:linear-gradient(155deg,#eaf8f266,#ffffff29)}.notice{border-color:#ffffffa6;background:#ffffff7a;box-shadow:inset 0 1px #ffffffb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.notice.success{background:#ccf2e275}.file-drop{padding:26px;border:1px solid rgba(255,255,255,.7);border-radius:16px;background:linear-gradient(150deg,#ffffffad,#ffffff6b);box-shadow:0 20px 44px -34px #0f3f436b,inset 0 1px #ffffffe0;backdrop-filter:blur(18px) saturate(1.04);-webkit-backdrop-filter:blur(18px) saturate(1.04);transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.file-drop.compact{padding:12px 16px}.file-drop:hover:not(.disabled),.file-drop.dragging{border-color:#8adcc1bd;background:linear-gradient(150deg,#defaef7a,#fff3);box-shadow:0 24px 50px -34px #18705f70,inset 0 1px #ffffffd1}.file-drop-icon{border:1px solid rgba(255,255,255,.7);border-radius:12px;background:#ffffff75;color:var(--accent)}.empty-state{min-height:252px;padding:34px;border:1px solid rgba(255,255,255,.68);border-radius:18px;background:linear-gradient(150deg,#ffffffb8,#ffffff7a);box-shadow:0 26px 58px -40px #0f3f4366,inset 0 1px #ffffffe0;backdrop-filter:blur(18px) saturate(1.06);-webkit-backdrop-filter:blur(18px) saturate(1.06)}.empty-state svg{width:34px;height:34px;margin-bottom:2px;opacity:.58}.empty-state-en{margin:2px 0 0;font-family:var(--sans);font-size:27px;font-weight:500;line-height:1.12;letter-spacing:.13em;text-transform:uppercase;color:var(--ink)}.empty-state-cn{margin:8px 0 0;font-family:var(--sans);font-size:13px;font-weight:400;line-height:1.7;letter-spacing:.02em;color:var(--muted)}.empty-state small{margin-top:6px;color:var(--faint)}.btn{height:40px;padding:0 18px;border-radius:12px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.btn.primary{border:1px solid rgba(255,255,255,.8);background:linear-gradient(135deg,#dcfaee,#b3eed7 48%,#8fdfc2);color:#0f3f36;box-shadow:0 14px 30px -16px #1f6b6d8c,inset 0 1px #fffffff0}.btn.primary:hover:not(:disabled){background:linear-gradient(135deg,#e9fcf5,#c0f3e1 48%,#9ce6cc);filter:saturate(1.04)}.btn.ghost{border:1px solid rgba(255,255,255,.66);background:#ffffff47;color:var(--ink-soft);box-shadow:inset 0 1px #ffffffb3}.btn.ghost:hover:not(:disabled){border-color:#ffffffd1;background:#ffffff75}.matting-stage{gap:18px;margin-top:18px}.image-card{padding:10px;border:1px solid rgba(255,255,255,.74);border-radius:18px;background:linear-gradient(155deg,#ffffffc2,#ffffff85);box-shadow:0 36px 72px -34px #0f3f4385,inset 0 1px #ffffffeb;backdrop-filter:blur(18px) saturate(1.06);-webkit-backdrop-filter:blur(18px) saturate(1.06)}.image-frame{border-radius:12px;background:#edf5f19e}.image-card figcaption{padding:9px 4px 1px}.ocr-canvas{border:1px solid rgba(255,255,255,.68);border-radius:16px;background:#ffffff8a;box-shadow:0 24px 52px -36px #0f3f436b,inset 0 1px #ffffffdb;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.ocr-text{border:1px solid rgba(255,255,255,.64);border-radius:18px;background:linear-gradient(155deg,#ffffffb8,#ffffff80);box-shadow:0 28px 58px -38px #0f3f4370,inset 0 1px #ffffffe6;backdrop-filter:blur(18px) saturate(1.04);-webkit-backdrop-filter:blur(18px) saturate(1.04)}.ocr-text-head{border-bottom-color:#123f431f}.translate-columns{border:1px solid rgba(255,255,255,.66);border-radius:18px;background:#ffffff94;box-shadow:0 30px 64px -40px #0f3f4375,inset 0 1px #ffffffe6;backdrop-filter:blur(18px) saturate(1.06);-webkit-backdrop-filter:blur(18px) saturate(1.06);overflow:hidden}.translate-box{background:#ffffff52}.translate-box.output{background:#d7f6ea6b}.translate-box+.translate-box{border-left-color:#ffffff94}.direction-control select{border-color:#ffffffad;border-radius:10px;background-color:#ffffff57;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.image-mini{border-color:#ffffffad;border-radius:14px;background:#ffffff4d;box-shadow:0 18px 40px -30px #0f3f4366}.recorder{border:1px solid rgba(255,255,255,.66);border-radius:18px;background:linear-gradient(150deg,#ffffffb8,#ffffff80);box-shadow:0 26px 58px -40px #0f3f4370,inset 0 1px #ffffffe0;backdrop-filter:blur(18px) saturate(1.04);-webkit-backdrop-filter:blur(18px) saturate(1.04)}.recorder.recording{border-color:#7ed3b8b3;background:#cdf4e56b}.record-btn{background:linear-gradient(135deg,#d7f8eb,#acead3 52%,#86d9bc);color:#0f3f36;box-shadow:0 14px 30px -18px #1f6b6d8c,inset 0 1px #ffffffeb}.record-btn:hover:not(:disabled),.recorder.recording .record-btn{background:linear-gradient(135deg,#e5fbf4,#bcf0dd 52%,#96dfc6)}.transcript{border:1px solid rgba(255,255,255,.62);border-radius:16px;background:#ffffff8a;box-shadow:inset 0 1px #ffffffdb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}@media(min-width:981px){.workspace-grid{grid-template-columns:minmax(0,1fr) 252px;gap:20px}}@media(max-width:720px){.panel{padding:18px;border-radius:18px}.file-drop{padding:20px 16px;border-radius:14px}.empty-state{min-height:228px;padding:26px 18px;border-radius:16px}.empty-state-en{font-size:22px;letter-spacing:.1em}.empty-state-cn{font-size:12px}.btn{height:42px;padding:0 15px}.image-card{padding:8px;border-radius:15px}.translate-columns,.ocr-text,.recorder{border-radius:16px}}.panel{background:linear-gradient(150deg,#fffffff0,#ffffffd6)}.info-card{background:linear-gradient(155deg,#ffffffeb,#ffffffd1)}.info-card.subtle{background:linear-gradient(155deg,#e6f6efdb,#ffffffb8)}.file-drop{background:linear-gradient(150deg,#ffffffd1,#ffffffad)}.empty-state{background:linear-gradient(150deg,#ffffffdb,#ffffffbd)}.image-card{background:linear-gradient(155deg,#ffffffe6,#ffffffc7)}.ocr-canvas{background:#ffffffb8}.ocr-text{background:linear-gradient(155deg,#ffffffdb,#ffffffbd)}.translate-columns{background:#fffc}.translate-box{background:#ffffff80}.translate-box.output{background:#d3f6e89e}.recorder{background:linear-gradient(150deg,#ffffffd6,#ffffffb8)}.transcript{background:#ffffffc7}.panel{background:linear-gradient(150deg,#fffffff7,#ffffffeb)}.info-card{background:linear-gradient(155deg,#fffffff2,#ffffffe6)}.info-card.subtle{background:linear-gradient(155deg,#e8f7f1eb,#ffffffdb)}.file-drop{background:linear-gradient(150deg,#ffffffe6,#fffc)}.empty-state{background:linear-gradient(150deg,#ffffffeb,#ffffffdb)}.image-card{background:linear-gradient(155deg,#fffffff0,#ffffffde)}.ocr-canvas{background:#ffffffd9}.ocr-text{background:linear-gradient(155deg,#ffffffeb,#ffffffdb)}.translate-columns{background:#ffffffe6}.translate-box{background:#fff9}.translate-box.output{background:#d3f6e8b3}.recorder{background:linear-gradient(150deg,#ffffffeb,#ffffffdb)}.transcript{background:#ffffffe0}@media(max-width:720px){.panel-head h2{font-size:18px;line-height:1.15}.panel-head p{margin-top:3px;font-size:10px;line-height:1.55}.empty-state{min-height:210px;padding:22px 16px}.empty-state p.empty-state-en{margin-top:1px;font-family:var(--sans);font-size:17px;font-weight:500;line-height:1.15;letter-spacing:.08em}.empty-state p.empty-state-cn{margin-top:7px;font-family:var(--sans);font-size:11.5px;font-weight:400;line-height:1.6;letter-spacing:0}.empty-state small{font-size:9.5px}.file-drop-title{font-size:12.5px}.file-drop-hint{font-size:10.5px}}@media(max-width:720px){.empty-state{min-height:196px;padding:20px 16px}.empty-state svg{width:30px;height:30px}.empty-state p.empty-state-en{font-size:16px;letter-spacing:.07em}.empty-state p.empty-state-cn{font-size:11px}}:root{--glass-edge: rgba(255, 255, 255, .48);--glass-edge-soft: rgba(255, 255, 255, .34);--glass-shadow: 0 32px 78px -48px rgba(16, 72, 72, .36), 0 10px 28px -22px rgba(16, 72, 72, .22), inset 0 1px 0 rgba(255, 255, 255, .64);--glass-shadow-soft: 0 24px 58px -44px rgba(16, 72, 72, .3), 0 7px 18px -16px rgba(16, 72, 72, .18), inset 0 1px 0 rgba(255, 255, 255, .58)}.panel{border:1px solid var(--glass-edge);background:linear-gradient(145deg,#ffffffad,#ffffff75);box-shadow:var(--glass-shadow);backdrop-filter:blur(26px) saturate(1.12);-webkit-backdrop-filter:blur(26px) saturate(1.12)}.info-card{border:1px solid var(--glass-edge-soft);background:linear-gradient(155deg,#ffffffb8,#ffffff8f);box-shadow:var(--glass-shadow-soft);backdrop-filter:blur(20px) saturate(1.12);-webkit-backdrop-filter:blur(20px) saturate(1.12)}.info-card.subtle{background:linear-gradient(155deg,#e4f6ef9e,#ffffff75)}.file-drop{border:1px solid var(--glass-edge-soft);background:linear-gradient(150deg,#ffffff6b,#ffffff3d);box-shadow:var(--glass-shadow-soft);backdrop-filter:blur(18px) saturate(1.08);-webkit-backdrop-filter:blur(18px) saturate(1.08)}.file-drop:hover:not(.disabled),.file-drop.dragging{border-color:#8adcc18f;background:linear-gradient(150deg,#defaef5c,#ffffff24);box-shadow:0 26px 56px -40px #145c526b,inset 0 1px #fff9}.file-drop-icon{border-color:#ffffff85;background:#ffffff4d}.empty-state{border:1px solid var(--glass-edge-soft);background:linear-gradient(150deg,#ffffff75,#ffffff47);box-shadow:var(--glass-shadow-soft);backdrop-filter:blur(20px) saturate(1.1);-webkit-backdrop-filter:blur(20px) saturate(1.1)}.image-card{border:1px solid rgba(255,255,255,.46);background:linear-gradient(155deg,#ffffff8f,#ffffff61);box-shadow:0 34px 76px -42px #10484861,0 10px 24px -20px #1048483d,inset 0 1px #ffffff94;backdrop-filter:blur(18px) saturate(1.08);-webkit-backdrop-filter:blur(18px) saturate(1.08)}.image-frame{background:#edf5f166}.ocr-canvas{border-color:var(--glass-edge-soft);background:#ffffff70;box-shadow:var(--glass-shadow-soft);backdrop-filter:blur(16px) saturate(1.08);-webkit-backdrop-filter:blur(16px) saturate(1.08)}.ocr-text{border:1px solid rgba(255,255,255,.4);background:linear-gradient(155deg,#ffffff85,#ffffff57);box-shadow:var(--glass-shadow-soft);backdrop-filter:blur(18px) saturate(1.08);-webkit-backdrop-filter:blur(18px) saturate(1.08)}.translate-columns{border:1px solid rgba(255,255,255,.4);background:#fff6;box-shadow:var(--glass-shadow-soft);backdrop-filter:blur(20px) saturate(1.1);-webkit-backdrop-filter:blur(20px) saturate(1.1)}.translate-box{background:#ffffff38}.translate-box.output{background:#d3f6e84d}.recorder{border:1px solid rgba(255,255,255,.4);background:linear-gradient(150deg,#ffffff80,#ffffff52);box-shadow:var(--glass-shadow-soft);backdrop-filter:blur(18px) saturate(1.08);-webkit-backdrop-filter:blur(18px) saturate(1.08)}.transcript{border:1px solid rgba(255,255,255,.38);background:#ffffff5c;box-shadow:0 18px 42px -38px #10484842,inset 0 1px #ffffff80;backdrop-filter:blur(16px) saturate(1.08);-webkit-backdrop-filter:blur(16px) saturate(1.08)}.notice{border-color:#ffffff61;background:#ffffff4d;box-shadow:0 16px 38px -34px #1048483d,inset 0 1px #ffffff85;backdrop-filter:blur(14px) saturate(1.08);-webkit-backdrop-filter:blur(14px) saturate(1.08)}.notice.success{background:#ccf2e257}.image-mini{border-color:#ffffff6b;background:#ffffff42}.info-card--offline{padding:0;overflow:hidden;border:1px solid rgba(255,255,255,.28);background:#ffffff4d;box-shadow:0 26px 62px -46px #10484842,0 6px 16px -14px #10484824,inset 0 1px #ffffff7a}.info-card--offline .info-card-lead{padding:16px 16px 13px;border-bottom:1px solid rgba(255,255,255,.2);background:linear-gradient(160deg,#ffffff8a,#ffffff57)}.info-card--offline .check-list{gap:4px;margin:0;padding:10px;background:#e2f6ef3d}.info-card--offline .check-list li{padding:7px 9px 7px 22px;border-radius:9px;background:#ffffff4d}.info-card--offline .check-list li:nth-child(2n){background:#ffffff2e}.info-card--offline .check-list li:before{top:1.02em;left:10px}.info-card--offline h3{margin-bottom:7px}.info-card--offline p{margin-bottom:0}@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.panel,.info-card,.file-drop,.empty-state,.image-card,.ocr-canvas,.ocr-text,.translate-columns,.recorder,.transcript,.notice{background:#ffffffe6}}.asr-quality{margin-top:8px;color:var(--muted);font:10px/1.5 var(--mono)}.asr-quality.warning{color:#8f5d13}@media(max-width:720px){.panel,.info-card,.file-drop,.empty-state,.image-card,.matting-panel,.quick-info{backdrop-filter:blur(8px)!important;-webkit-backdrop-filter:blur(8px)!important}}html,body{overflow-x:clip;background:var(--paper)}.brand{padding:0;border:0;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer}.brand:focus-visible,.home-action:focus-visible{outline:1px solid var(--accent);outline-offset:3px}.home{display:flex;flex-direction:column;justify-content:center;min-height:calc(100vh - 86px);max-width:100%;padding:44px 0 54px;overflow-x:clip}.home-hero{display:grid;grid-template-columns:minmax(0,1.42fr) minmax(270px,.58fr);align-items:end;gap:clamp(34px,5vw,84px);width:100%;padding-bottom:38px;border-bottom:1px solid var(--line-dark);animation:home-rise .7s cubic-bezier(.2,.7,.2,1) both}.home-kicker{margin:0 0 18px;font-family:var(--mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--faint)}.home-lead{position:relative;isolation:isolate}.home-title{margin:0;font-family:var(--display);font-size:clamp(64px,7.4vw,106px);font-weight:400;line-height:.98;letter-spacing:-.045em;color:var(--ink)}.home-title em{font-style:normal;background:var(--ink-gradient);-webkit-background-clip:text;background-clip:text;color:transparent}.home-copy{max-width:380px;margin:24px 0 0;font-size:14px;line-height:1.75;color:var(--muted)}.home-side{position:relative;isolation:isolate;padding:0 0 4px 28px;border-left:1px solid var(--line-dark)}.home-side:before{content:"";position:absolute;inset:-22px -30px -18px -26px;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 58% 42%,rgba(248,251,249,.97) 0%,rgba(248,251,249,.9) 48%,rgba(248,251,249,.42) 76%,transparent 92%);filter:blur(2px)}.home-side-kicker{margin:0 0 12px;font-family:var(--display);font-size:20px;color:var(--ink-soft)}.home-side-copy{max-width:290px;margin:0 0 24px;font-size:12px;line-height:1.75;color:var(--muted)}.home-specs{display:grid;gap:0;margin:0;border-top:1px solid var(--line)}.home-specs div{display:flex;align-items:baseline;justify-content:space-between;gap:14px;padding:8px 0;border-bottom:1px solid var(--line)}.home-specs dt,.home-specs dd{margin:0;font-family:var(--mono);font-size:8px;letter-spacing:.1em;text-transform:uppercase}.home-specs dt{color:var(--faint)}.home-specs dd{color:var(--ink-soft)}.home-seal-row{display:flex;align-items:center;gap:14px;margin-top:24px}.home-seal{width:36px;height:36px}.home-model-list,.home-model-meta{margin:0;font-family:var(--mono);font-size:8px;line-height:1.65;letter-spacing:.04em;color:var(--faint)}.home-model-meta{margin-top:2px;color:var(--muted)}.home-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:min(760px,100%);margin-top:32px;animation:home-rise .7s .12s cubic-bezier(.2,.7,.2,1) both}.home-action{position:relative;display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:12px;min-height:82px;padding:14px 16px;border:1px solid var(--line-dark);border-radius:2px;background:#ffffffb3;color:var(--ink);text-align:left;cursor:pointer;transition:border-color .2s ease,background .2s ease,transform .2s ease}.home-action:hover{border-color:var(--accent);background:#fffffff0;transform:translateY(-2px)}.home-action-number{align-self:start;font-family:var(--mono);font-size:8px;color:var(--faint)}.home-action-icon{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--line-dark);border-radius:50%;color:var(--accent)}.home-action-copy{display:flex;min-width:0;flex-direction:column;gap:3px}.home-action-copy strong{font-family:var(--display);font-size:22px;font-weight:400;line-height:1;color:var(--ink)}.home-action-copy small{overflow:hidden;font-family:var(--mono);font-size:8px;letter-spacing:.04em;color:var(--faint);text-overflow:ellipsis;white-space:nowrap}.home-action-arrow{color:var(--accent);font-family:var(--mono);font-size:14px;transition:transform .2s ease}.home-action:hover .home-action-arrow{transform:translate(4px)}.home-pill{display:flex;justify-content:flex-start;width:min(760px,100%);margin-top:32px;animation:home-rise .7s .12s cubic-bezier(.2,.7,.2,1) both}.drawer{position:fixed;inset:86px 0 0;z-index:12;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;animation:drawer-in .34s cubic-bezier(.2,.7,.2,1) both}.drawer[hidden]{display:none}.drawer-scroll{width:min(1440px,100%);min-height:100%;margin:0 auto;padding:10px 34px 70px 112px}.drawer .page-heading{position:relative;isolation:isolate;padding-top:18px}.drawer .page-heading h1{font-size:clamp(46px,4.8vw,72px)}.arc-dial{position:fixed;top:calc(50% + 43px);left:0;z-index:28;width:100px;height:200px;transform:translateY(-50%);background:radial-gradient(circle at 22px 50%,rgba(248,251,249,.94) 0%,rgba(248,251,249,.62) 58%,transparent 76%);touch-action:none;user-select:none}.arc-dial svg{display:block;width:100%;height:100%;overflow:visible}.arc-stem{stroke:var(--line-dark);stroke-width:1}.arc-segment{cursor:pointer;outline:none}.arc-hit{fill:none;stroke:transparent;stroke-width:22;pointer-events:stroke}.arc-line{fill:none;stroke:var(--line-dark);stroke-width:2.2;stroke-linecap:round;pointer-events:none;transition:stroke .2s ease,stroke-width .2s ease}.arc-segment:hover .arc-line,.arc-segment:focus-visible .arc-line{stroke:var(--accent);stroke-width:2.8}.arc-segment.is-active .arc-line{stroke:var(--accent);stroke-width:3.2}.arc-home-hit{fill:#0000;stroke:none;pointer-events:all}.arc-chevron{cursor:pointer;outline:none}.arc-chevron path{fill:none;stroke:var(--faint);stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.arc-chevron:hover path,.arc-chevron:focus-visible path{stroke:var(--accent)}.arc-home{cursor:pointer;outline:none}.arc-home circle{fill:var(--paper);stroke:var(--accent);stroke-width:1.2}.arc-home circle.arc-home-hit{fill:transparent;stroke:transparent;stroke-width:0;pointer-events:all}.arc-home path{fill:none;stroke:var(--accent);stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}.arc-home:hover circle,.arc-home:focus-visible circle{fill:var(--accent-soft)}.arc-hint{display:none}@keyframes home-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes drawer-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(max-width:1180px){.home-title{font-size:clamp(60px,6.8vw,88px)}.home-hero{grid-template-columns:minmax(0,1.3fr) minmax(250px,.7fr);gap:34px}}@media(max-width:980px){.home{min-height:calc(100vh - 86px);padding-top:30px}.home-hero{grid-template-columns:1fr;gap:30px}.home-side{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:20px 28px;padding:24px 0 0;border-top:1px solid var(--line-dark);border-left:0}.home-side-kicker,.home-side-copy{grid-column:1}.home-specs{grid-column:2;grid-row:1 / span 2}.home-seal-row{grid-column:1 / -1;margin-top:2px}.home-actions{width:100%}.drawer-scroll{padding-left:96px}}@media(max-width:720px){:root{--header-h: 64px}.app{padding:0 16px 30px}.home{min-height:calc(100vh - 64px);padding:30px 0 38px}.home-title{font-size:clamp(48px,15vw,64px);line-height:1}.home-copy{margin-top:18px;font-size:12px}.home-side{display:block;padding-top:20px}.home-specs{margin-top:18px}.home-actions{gap:8px;margin-top:24px}.home-pill{margin-top:24px}.home-action{display:flex;min-height:94px;flex-direction:column;align-items:flex-start;justify-content:space-between;gap:8px;padding:10px 10px 11px}.home-action-number{position:absolute;top:10px;right:10px}.home-action-icon{width:26px;height:26px}.home-action-copy strong{font-size:18px}.home-action-copy small,.home-action-arrow{display:none}.drawer{inset:var(--header-h) 0 0}.home-lead:before{inset:-18px -18px -12px}.drawer-scroll{padding:4px 16px 54px 60px}.drawer .page-heading{padding-top:14px}.drawer .page-heading h1{font-size:clamp(34px,9.8vw,46px)}.drawer .page-heading:before{inset:-14px -16px -6px}.arc-dial{top:calc(50% + 50px);width:56px;height:110px;background:radial-gradient(circle at 12px 50%,rgba(248,251,249,.92) 0%,rgba(248,251,249,.5) 60%,transparent 78%)}.arc-dial .arc-hit{stroke-width:36}.arc-hint{display:none}}@media(prefers-reduced-motion:reduce){.home-hero,.home-actions,.drawer{animation:none}.home-action,.home-action-arrow{transition:none}}.page-matting{--ink: #26332c;--ink-soft: #3f5147;--muted: #839188;--faint: #9aa89f;--accent: #73b995;--accent-dark: #2f6f52;--line: rgba(100, 190, 150, .18);--line-dark: rgba(100, 190, 150, .26);position:relative;max-width:1080px;margin:0 auto;padding:10px 0 56px;background:radial-gradient(ellipse 72% 56% at 52% 44%,rgba(255,255,255,.46) 0%,rgba(255,255,255,.16) 56%,transparent 78%)}.aero-backdrop--matting:after{background:radial-gradient(ellipse 74% 62% at 52% 42%,rgba(255,255,255,.36) 0%,rgba(255,255,255,.1) 58%,transparent 78%),linear-gradient(90deg,rgba(255,255,255,.22) 0%,rgba(255,255,255,.06) 14%,transparent 28%,transparent 74%,rgba(255,255,255,.05) 86%,rgba(255,255,255,.2) 100%),linear-gradient(180deg,transparent 0%,transparent 76%,rgba(255,255,255,.28) 92%,rgba(255,255,255,.52) 100%)}.matting-head{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:36px;align-items:end;padding:12px 0 22px;border-bottom:1px solid var(--line);isolation:isolate}.matting-head:before{content:"";position:absolute;inset:-28px -46px -18px -52px;z-index:-1;background:radial-gradient(ellipse 70% 105% at 32% 55%,rgba(255,255,255,.78) 0%,rgba(255,255,255,.34) 54%,transparent 78%);filter:blur(7px);pointer-events:none}.matting-head .eyebrow{color:var(--muted)}.matting-head h1{margin:13px 0 9px;font-family:var(--display);font-size:clamp(52px,6vw,86px);font-weight:400;line-height:.98;letter-spacing:-.045em}.matting-head h1 em{font-style:normal;background:var(--ink-gradient);-webkit-background-clip:text;background-clip:text;color:transparent}.matting-head p{max-width:520px;margin:0;color:var(--muted);font-size:13.5px;line-height:1.7}.matting-stats{display:flex;align-items:flex-end;padding-bottom:2px}.matting-stat{display:flex;min-width:104px;flex-direction:column;gap:5px;padding:0 18px;border-left:1px solid var(--line)}.matting-stat:first-child{padding-left:0;border-left:0}.matting-stat:last-child{padding-right:0}.matting-stat span{color:var(--muted);font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase}.matting-stat b{color:var(--ink);font-family:var(--display);font-size:18px;font-weight:400;line-height:1.2;white-space:nowrap}.matting-workspace{display:grid;grid-template-columns:minmax(0,1fr) 264px;gap:18px;align-items:start;margin-top:22px}.matting-panel{min-width:0;padding:22px 22px 20px;border:1px solid rgba(100,190,150,.22);border-radius:16px;background:#ffffffb8;box-shadow:0 20px 52px -40px #235b4542;backdrop-filter:blur(12px) saturate(1.04);-webkit-backdrop-filter:blur(12px) saturate(1.04)}.matting-panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:14px}.matting-kicker{color:var(--muted);font-family:var(--mono);font-size:8.5px;letter-spacing:.14em;text-transform:uppercase}.matting-panel-head h2{margin:4px 0 0;color:var(--ink);font-family:var(--display);font-size:26px;font-weight:400;line-height:1.1}.matting-success-pill{display:inline-flex;align-items:center;gap:5px;padding:5px 9px;border:1px solid rgba(115,185,149,.28);border-radius:999px;background:#b7ebd03d;color:#2f6f52;font-family:var(--mono);font-size:9px;letter-spacing:.06em}.page-matting .file-drop{display:flex;min-height:332px;align-items:center;justify-content:center;padding:34px 24px;border:1.5px dashed rgba(115,185,149,.68);border-radius:16px;background:#f7faf857;box-shadow:none;backdrop-filter:blur(10px) saturate(1.03);-webkit-backdrop-filter:blur(10px) saturate(1.03);transition:border-color .2s ease,background .2s ease,box-shadow .2s ease}.page-matting .file-drop:hover:not(.disabled),.page-matting .file-drop.dragging{border-color:#73b995d1;background:#b7ebd029;box-shadow:0 0 0 3px #b7ebd029}.page-matting .file-drop.disabled{cursor:wait;opacity:.72}.page-matting .file-drop.compact{min-height:0;padding:12px 15px;border-style:solid;border-color:#64be963d;background:#ffffff6b;box-shadow:none}.upload-empty{display:flex;width:100%;flex-direction:column;align-items:center;justify-content:center;text-align:center}.upload-mark{display:grid;width:48px;height:48px;margin-bottom:12px;place-items:center;border:1px solid rgba(100,190,150,.28);border-radius:50%;background:#b7ebd02e;color:var(--accent-dark)}.upload-en{margin:0;color:var(--ink);font-family:var(--sans);font-size:26px;font-weight:500;line-height:1.16;letter-spacing:.12em;text-transform:uppercase}.upload-cn{margin:8px 0 0;color:var(--muted);font-size:13px;line-height:1.7}.upload-cta{display:inline-flex;height:40px;align-items:center;justify-content:center;margin-top:17px;padding:0 22px;border:1px solid rgba(115,185,149,.45);border-radius:8px;background:linear-gradient(135deg,#e9fcf3,#b7ebd0);color:#1d4b39;font-size:12px;font-weight:500;letter-spacing:.04em;box-shadow:0 10px 22px -16px #368d6980;transition:filter .18s ease,transform .18s ease}.page-matting .file-drop:hover:not(.disabled) .upload-cta{filter:saturate(1.08) brightness(1.01);transform:translateY(-1px)}.upload-hint{margin-top:9px;color:var(--faint);font-family:var(--mono);font-size:9.5px;letter-spacing:.03em}.upload-file{display:flex;width:100%;min-width:0;align-items:center;gap:12px;text-align:left}.upload-file-icon{display:grid;width:36px;height:36px;flex:none;place-items:center;border:1px solid rgba(115,185,149,.3);border-radius:10px;background:#b7ebd033;color:var(--accent-dark)}.upload-file-copy{display:flex;min-width:0;flex-direction:column;gap:3px}.upload-file-copy b{overflow:hidden;color:var(--ink);font-size:12.5px;font-weight:500;text-overflow:ellipsis;white-space:nowrap}.upload-file-copy small{color:var(--muted);font-family:var(--mono);font-size:9.5px}.upload-replace{margin-left:auto;padding:5px 9px;border:1px solid rgba(115,185,149,.24);border-radius:6px;color:var(--accent-dark);font-family:var(--mono);font-size:9px;white-space:nowrap}.matting-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}.compare-card{min-width:0;margin:0;padding:8px;border:1px solid rgba(100,190,150,.18);border-radius:14px;background:#ffffff80;backdrop-filter:blur(10px) saturate(1.03);-webkit-backdrop-filter:blur(10px) saturate(1.03);animation:mat-card-in .32s ease both}.compare-frame{display:grid;min-height:220px;aspect-ratio:1 / 1;place-items:center;overflow:hidden;border-radius:10px;background:#f7faf8}.compare-frame img{display:block;width:100%;height:100%;object-fit:contain;animation:mat-image-in .45s ease both}.compare-frame--result{background-color:#f7faf8;background-image:linear-gradient(45deg,rgba(38,51,44,.045) 25%,transparent 25%,transparent 75%,rgba(38,51,44,.045) 75%),linear-gradient(45deg,rgba(38,51,44,.045) 25%,transparent 25%,transparent 75%,rgba(38,51,44,.045) 75%);background-position:0 0,8px 8px;background-size:16px 16px}.compare-placeholder{display:flex;max-width:210px;flex-direction:column;align-items:center;gap:6px;color:var(--muted);text-align:center}.compare-placeholder svg{margin-bottom:2px;color:var(--accent);opacity:.7}.compare-placeholder b{color:var(--ink-soft);font-size:11px;font-weight:500}.compare-placeholder span{font-size:10px;line-height:1.5}.compare-card figcaption{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 3px 1px;color:var(--muted);font-family:var(--mono);font-size:8.5px;letter-spacing:.03em}.matting-progress{margin-top:14px}.matting-error{margin-top:12px}.matting-success{display:flex;align-items:center;gap:10px;margin-top:14px;padding:10px 13px;border:1px solid rgba(115,185,149,.24);border-radius:12px;background:#b7ebd029}.matting-success-icon{display:grid;width:26px;height:26px;flex:none;place-items:center;border-radius:50%;background:#b7ebd080;color:#2f6f52}.matting-success b{display:block;color:var(--ink);font-size:11px;font-weight:500}.matting-success small{display:block;margin-top:2px;color:var(--muted);font-family:var(--mono);font-size:9px}.matting-actions{display:flex;align-items:center;gap:10px;margin-top:16px;flex-wrap:wrap}.page-matting .btn{height:40px;padding:0 18px;border-radius:8px;font-size:11.5px}.page-matting .btn.primary{border:1px solid rgba(115,185,149,.45);background:linear-gradient(135deg,#e9fcf3,#b7ebd0);color:#1d4b39;box-shadow:0 12px 24px -18px #368d698c}.page-matting .btn.primary:hover:not(:disabled){filter:saturate(1.08) brightness(1.01)}.page-matting .btn.ghost{border:1px solid rgba(100,190,150,.22);background:#ffffff70;color:var(--ink-soft);box-shadow:none}.matting-footnote{margin:14px 0 0;color:var(--faint);font-family:var(--mono);font-size:9px;letter-spacing:.03em}.matting-side{display:flex;flex-direction:column;gap:14px}.page-matting .info-card.quick-info{padding:17px;border:1px solid rgba(100,190,150,.2);border-radius:16px;background:#ffffffc2;box-shadow:0 16px 38px -32px #235b4538;backdrop-filter:blur(12px) saturate(1.04);-webkit-backdrop-filter:blur(12px) saturate(1.04)}.quick-icon{display:grid;width:32px;height:32px;margin-bottom:13px;place-items:center;border:1px solid rgba(100,190,150,.24);border-radius:9px;background:#b7ebd029;color:var(--accent-dark)}.quick-info h3{margin:0 0 9px;color:var(--accent-dark);font-family:var(--mono);font-size:9.5px;font-weight:600;letter-spacing:.12em}.quick-info p{margin:0;color:var(--muted);font-size:11.5px;line-height:1.7}.quick-list{display:flex;flex-direction:column;gap:8px;margin:14px 0 0;padding:13px 0 0;border-top:1px solid rgba(100,190,150,.14);list-style:none}.quick-list li{display:flex;align-items:center;gap:7px;color:var(--ink-soft);font-size:10.5px;line-height:1.45}.quick-list svg{flex:none;color:var(--accent)}.quick-note{display:inline-block;margin-top:14px;color:var(--faint);font-family:var(--mono);font-size:8.5px;letter-spacing:.05em}@keyframes mat-card-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes mat-image-in{0%{opacity:0}to{opacity:1}}@media(max-width:1100px){.matting-head{gap:24px}.matting-stat{min-width:88px;padding:0 12px}.matting-head h1{font-size:clamp(48px,6vw,72px)}}@media(max-width:980px){.matting-head{grid-template-columns:1fr;gap:16px}.matting-stats{justify-content:flex-start;padding-top:13px;border-top:1px solid var(--line)}.matting-workspace{grid-template-columns:1fr}.matting-side{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:720px){.page-matting{padding:4px 0 40px}.matting-head{gap:12px;padding:8px 0 16px}.matting-head h1{margin:9px 0 7px;font-size:clamp(36px,10vw,48px)}.matting-head p{font-size:12px}.matting-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;width:100%}.matting-stat{min-width:0;padding:0 9px}.matting-stat span{font-size:8px;letter-spacing:.08em}.matting-stat b{font-size:15px}.matting-workspace{gap:14px;margin-top:16px}.matting-panel{padding:15px}.matting-panel-head{padding-bottom:10px}.matting-panel-head h2{font-size:20px}.page-matting .file-drop{min-height:258px;padding:24px 14px}.upload-en{font-size:22px;letter-spacing:.08em}.upload-cn{font-size:12px}.upload-cta{height:38px;margin-top:13px;font-size:11.5px}.upload-hint{font-size:8.5px}.matting-compare{grid-template-columns:1fr}.compare-frame{aspect-ratio:4 / 3;min-height:190px}.matting-side{grid-template-columns:1fr}.matting-actions{gap:8px}.page-matting .btn{min-width:0;flex:1;padding:0 12px}}.quality-picker{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 14px;padding:10px 12px;border:1px solid rgba(100,190,150,.2);border-radius:12px;background:#ffffff75}.quality-picker-copy{display:grid;gap:3px;min-width:150px}.quality-picker-copy span{color:var(--matting-ink, #26332c);font-size:11px;font-weight:600;letter-spacing:.12em}.quality-picker-copy small{color:var(--matting-muted, #839188);font-size:10px;line-height:1.5}.quality-options{display:grid;grid-template-columns:repeat(3,minmax(88px,1fr));gap:6px;flex:0 1 360px}.quality-option{display:grid;gap:2px;padding:8px 10px;border:1px solid rgba(100,190,150,.18);border-radius:9px;background:#ffffff57;color:var(--matting-ink, #26332c);text-align:left;cursor:pointer;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.quality-option b{font-size:11px;font-weight:600}.quality-option small{color:var(--matting-muted, #839188);font-size:9px;white-space:nowrap}.quality-option:hover:not(:disabled){border-color:#64be966b;background:#ffffff9e}.quality-option.is-active{border-color:#49a67bb8;background:#b7ebd075;box-shadow:0 4px 14px #1f624614}.quality-option:disabled{opacity:.55;cursor:wait}@media(max-width:720px){.quality-picker{display:grid;gap:9px;padding:9px 10px}.quality-picker-copy{min-width:0}.quality-options{flex:1 1 auto;width:100%}.quality-option{padding:7px 8px}.quality-option small{white-space:normal;line-height:1.35}}@media(prefers-reduced-motion:reduce){.compare-card,.compare-frame img{animation:none}}.page-kicker-row{display:flex;align-items:center;gap:10px;margin-bottom:18px}.page-kicker-row .eyebrow{margin-bottom:0}.camera-launcher{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border:1px solid var(--line);border-radius:50%;background:#ffffff6b;color:var(--accent);cursor:pointer;transition:background .2s ease,border-color .2s ease,transform .2s ease}.camera-launcher:hover{border-color:var(--line-dark);background:#b7ebd066;transform:translateY(-1px)}.camera-launcher:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.camera-launcher-label{display:none}.camera-drawer{position:fixed;inset:0;z-index:120;display:flex;justify-content:flex-end}.camera-drawer-backdrop{position:absolute;inset:0;border:0;background:#0a201c57;backdrop-filter:blur(4px);cursor:pointer;animation:camera-backdrop-in .2s ease both}.camera-drawer-panel{position:relative;width:min(480px,100%);height:100dvh;overflow-y:auto;padding:22px 22px 30px;border-left:1px solid rgba(100,190,150,.24);background:radial-gradient(ellipse 80% 34% at 100% 0%,rgba(183,235,208,.2),transparent 72%),var(--paper);box-shadow:-24px 0 70px #10483e29;animation:camera-drawer-in .28s cubic-bezier(.2,.8,.2,1) both}.camera-drawer-head{position:sticky;top:0;z-index:2;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:0 0 15px;margin-bottom:8px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,var(--paper) 74%,transparent)}.camera-drawer-head .eyebrow{margin-bottom:8px}.camera-drawer-head h2{margin:0;color:var(--ink);font-family:var(--display);font-size:30px;font-weight:400;line-height:1.05}.camera-drawer-body{padding-top:6px}.camera-drawer-body .camera-translate{display:flex;flex-direction:column}.camera-drawer-body .camera-translate.is-idle .camera-stage{flex:0 0 auto}.camera-drawer-body .camera-translate.is-idle .camera-meta{margin-top:4px}.camera-drawer-body .camera-stage{min-height:0}@keyframes camera-backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes camera-drawer-in{0%{opacity:0;transform:translate(28px)}to{opacity:1;transform:translate(0)}}@media(max-width:720px){.page-kicker-row{gap:8px;margin-bottom:13px}.camera-launcher{display:grid;grid-auto-flow:column;width:auto;height:38px;flex-basis:auto;gap:5px;padding:0 12px;border-color:#1f6b6d3d;border-radius:999px;background:var(--accent-soft);color:var(--accent-dark)}.camera-launcher-label{display:inline;font-family:var(--sans);font-size:10.5px;font-weight:600;letter-spacing:.06em}.camera-drawer-panel{width:100%;padding:16px 14px 24px;border-left:0}.camera-drawer-head h2{font-size:26px}}@media(prefers-reduced-motion:reduce){.camera-drawer-panel,.camera-drawer-backdrop{animation:none}}.camera-translate{margin-top:2px}.camera-stage{position:relative;display:flex;min-height:300px;aspect-ratio:16 / 9;align-items:center;justify-content:center;overflow:hidden;border:1px solid rgba(100,190,150,.2);border-radius:14px;background:radial-gradient(ellipse 70% 80% at 72% 18%,rgba(183,235,208,.2),transparent 66%),#f7faf88a;isolation:isolate}.camera-video{position:absolute;z-index:0;width:100%;height:100%;background:#10201d;object-fit:contain;opacity:0;transition:opacity .35s ease}.camera-stage.is-live .camera-video{opacity:1}.camera-stage.is-live{background:#10201d}.camera-empty{position:relative;z-index:1;display:flex;max-width:340px;flex-direction:column;align-items:center;padding:28px 20px;text-align:center}.camera-empty-icon{display:grid;width:54px;height:54px;margin-bottom:12px;place-items:center;border:1px solid rgba(100,190,150,.3);border-radius:50%;background:#b7ebd033;color:#2f6f52}.camera-empty h3{margin:0;color:var(--ink);font-family:var(--display);font-size:24px;font-weight:400;line-height:1.2}.camera-empty p{margin:8px 0 15px;color:var(--muted);font-size:11.5px;line-height:1.7}.camera-start{height:38px;padding:0 17px;border-radius:8px;font-size:11.5px}.camera-permission-note{margin-top:9px;color:var(--faint);font-family:var(--mono);font-size:8.5px;letter-spacing:.04em}.camera-live-badge,.camera-status{position:absolute;z-index:3;top:12px;display:inline-flex;align-items:center;gap:6px;padding:5px 8px;border:1px solid rgba(255,255,255,.18);border-radius:6px;background:#0918158f;color:#ffffffd1;font-family:var(--mono);font-size:8px;letter-spacing:.08em;backdrop-filter:blur(8px)}.camera-live-badge{left:12px}.camera-status{right:12px;max-width:52%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-dot{width:5px;height:5px;border-radius:50%;background:#78e5b5;box-shadow:0 0 0 3px #78e5b529}.camera-scanline{position:absolute;z-index:2;top:36%;right:9%;left:9%;height:1px;background:linear-gradient(90deg,transparent,rgba(183,235,208,.76),transparent);opacity:0;pointer-events:none}.camera-scanline.active{opacity:1;animation:camera-scan 2.4s ease-in-out infinite}.camera-scanline:before,.camera-scanline:after{position:absolute;top:-18px;width:16px;height:16px;border-color:#b7ebd0b8;content:""}.camera-scanline:before{left:0;border-top:1px solid;border-left:1px solid}.camera-scanline:after{right:0;border-top:1px solid;border-right:1px solid}.camera-subtitle{position:absolute;z-index:3;right:0;bottom:0;left:0;padding:44px 18px 16px;background:linear-gradient(180deg,transparent 0%,rgba(8,24,20,.72) 48%,rgba(8,24,20,.9) 100%);color:#f4fffa;pointer-events:none}.camera-subtitle-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px;color:#f4fffa8f;font-family:var(--mono);font-size:8px;letter-spacing:.08em;text-transform:uppercase}.camera-source{overflow:hidden;margin:0;color:#f4fffabd;font-size:11px;line-height:1.55;text-overflow:ellipsis;white-space:nowrap}.camera-translated{display:block;margin-top:5px;color:#f7fffb;font-family:var(--display);font-size:24px;font-weight:400;line-height:1.3;text-wrap:balance}.camera-controls{display:flex;align-items:center;gap:8px;margin-top:12px;flex-wrap:wrap}.camera-controls .btn{height:34px;padding:0 11px;border-radius:7px;font-size:10.5px}.camera-controls-note{display:inline-flex;align-items:center;gap:5px;margin-left:auto;color:var(--faint);font-family:var(--mono);font-size:8.5px}.camera-meta{display:flex;align-items:center;gap:18px;margin-top:9px;color:var(--faint);font-family:var(--mono);font-size:8px;letter-spacing:.02em}.camera-meta span+span{position:relative}.camera-meta span+span:before{position:absolute;top:50%;left:-10px;width:2px;height:2px;border-radius:50%;background:var(--line-dark);content:""}.camera-error{margin-top:10px}.camera-freeze-layer{position:absolute;z-index:2;inset:0;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#08181447;cursor:crosshair;touch-action:none}.camera-freeze-frame{position:relative;display:flex;max-width:100%;max-height:100%;align-items:center;justify-content:center}.camera-freeze-img{display:block;width:auto;height:auto;max-width:100%;max-height:100%;user-select:none;-webkit-user-drag:none}.camera-roi{position:absolute;border:2px solid #7fe4b8;border-radius:5px;background:#78e5b524;box-shadow:0 0 0 9999px #06141170,0 0 0 1px #ffffff8c inset;pointer-events:none}.camera-roi:before,.camera-roi:after{position:absolute;width:9px;height:9px;border-color:#b7ebd0;content:""}.camera-roi:before{top:-2px;left:-2px;border-top:2px solid;border-left:2px solid}.camera-roi:after{right:-2px;bottom:-2px;border-right:2px solid;border-bottom:2px solid}.camera-roi.busy{border-color:#f0d79a;box-shadow:0 0 0 9999px #06141170,0 0 0 3px #f0d79a33}.camera-freeze-caption{display:inline-flex;align-items:center;min-height:26px;margin-top:8px;padding:4px 9px;border:1px solid rgba(100,190,150,.24);border-radius:999px;background:#ffffff94;color:var(--muted);font-size:9.5px;letter-spacing:.02em}.camera-frozen-result{margin-top:12px;padding:14px 16px;border:1px solid rgba(100,190,150,.24);border-radius:12px;background:#ffffffa8;box-shadow:0 12px 30px -22px #10484866;backdrop-filter:blur(12px)}.camera-frozen-result .camera-subtitle-head{margin-bottom:7px;color:var(--muted)}.camera-frozen-result .camera-source{color:var(--muted);font-size:11px;white-space:normal}.camera-frozen-result .camera-translated{margin-top:7px;color:var(--ink);font-size:22px;line-height:1.35}.camera-tip{display:flex;align-items:flex-start;gap:6px;margin:10px 0 0;color:var(--muted);font-size:10px;line-height:1.6}.camera-tip svg{flex:none;margin-top:2px;color:var(--accent)}@keyframes camera-scan{0%,to{transform:translateY(-34px);opacity:.2}25%,75%{opacity:.9}50%{transform:translateY(34px);opacity:.75}}@media(max-width:720px){.camera-stage{min-height:0;aspect-ratio:4 / 3}.camera-empty h3{font-size:22px}.camera-empty p{font-size:11px}.camera-live-badge,.camera-status{top:9px;padding:4px 6px;font-size:7.5px}.camera-live-badge{left:9px}.camera-status{right:9px}.camera-subtitle{padding:40px 13px 13px}.camera-source{font-size:10px}.camera-translated{font-size:20px}.camera-frozen-result{padding:12px 13px}.camera-frozen-result .camera-translated{font-size:18px}.camera-freeze-caption{font-size:9px}.camera-controls{display:flex;flex-wrap:wrap;gap:6px}.camera-controls .btn{flex:1 1 calc(50% - 6px);width:auto;min-width:0;max-width:calc(50% - 6px);padding:0 8px;white-space:nowrap}.camera-controls-note{flex:1 1 100%;width:100%;margin-left:0}.camera-meta{gap:13px;font-size:7.5px}.camera-meta span:last-child{display:none}}@media(prefers-reduced-motion:reduce){.camera-scanline.active{animation:none}}.tool-card{padding:0;overflow:hidden}.tool-card summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:15px 17px;list-style:none;cursor:pointer;font-family:var(--sans);font-size:12px;font-weight:600;letter-spacing:.08em;color:var(--ink)}.tool-card summary::-webkit-details-marker{display:none}.tool-card summary:before{content:"+";order:-1;width:13px;color:var(--accent);font-family:var(--mono);font-size:15px;font-weight:400}.tool-card[open] summary:before{content:"−"}.tool-count{margin-left:auto;color:var(--faint);font-family:var(--mono);font-size:10px;font-weight:400;letter-spacing:0}.tool-body{padding:0 17px 16px;border-top:1px solid var(--line)}.tool-note,.tool-empty{margin:12px 0;color:var(--muted);font-size:10.5px;line-height:1.75}.glossary-list,.history-list{margin:0;padding:0;list-style:none}.glossary-list li{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 0;border-bottom:1px solid var(--line);font-size:11px}.glossary-list b{font-weight:500}.glossary-arrow{padding:0 6px;color:var(--faint)}.tool-remove{display:grid;width:20px;height:20px;flex:0 0 auto;place-items:center;border:0;border-radius:50%;background:transparent;color:var(--faint);cursor:pointer}.tool-remove:hover{background:#1f6b6d14;color:var(--accent)}.glossary-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:5px;margin-top:12px}.glossary-form input{width:100%;min-width:0;height:30px;padding:0 8px;border:1px solid var(--line);border-radius:6px;background:#ffffff75;color:var(--ink);font-family:var(--sans);font-size:10.5px;outline:none}.glossary-form input:focus{border-color:var(--accent)}.history-list li{border-bottom:1px solid var(--line)}.history-item{display:grid;width:100%;gap:3px;padding:9px 0;border:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer}.history-item:hover .history-text{color:var(--accent)}.history-meta{display:flex;justify-content:space-between;color:var(--faint);font-family:var(--mono);font-size:8px;letter-spacing:.06em}.history-text,.history-target{display:block;overflow:hidden;font-size:10.5px;line-height:1.5;text-overflow:ellipsis;white-space:nowrap}.history-target{color:var(--muted)}.history-clear{margin-top:10px}.glossary-hit{margin:8px 0 0;color:var(--accent);font-family:var(--mono);font-size:9px;letter-spacing:.06em}@media(max-width:720px){.glossary-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.glossary-form .btn{grid-column:1 / -1;justify-content:center}}
