:root{color-scheme:light;font-family:Segoe UI Variable,PingFang SC,Noto Sans SC,Microsoft YaHei UI,sans-serif;line-height:1.5;font-weight:400;--app-bg: #f6f5f2;--panel: rgba(255, 255, 255, .96);--panel-soft: #fbfaf8;--panel-muted: #f2f0ec;--border: rgba(15, 23, 42, .08);--border-strong: rgba(15, 23, 42, .12);--text: #101828;--text-soft: #5f6b7a;--text-faint: #8993a4;--sidebar-bg: #171717;--sidebar-surface: #232323;--sidebar-border: rgba(255, 255, 255, .08);--sidebar-text: #f5f5f5;--sidebar-muted: #a3a3a3;--accent: #e57626;--accent-dark: #c85d17;--accent-soft: rgba(229, 118, 38, .12);--shadow: 0 18px 42px rgba(15, 23, 42, .05)}*{box-sizing:border-box}html,body,#app{min-height:100vh}body{margin:0;min-width:320px;background:var(--app-bg);color:var(--text);font-size:14px}button,input,textarea{font:inherit}button{border:0;border-radius:12px;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-dark) 100%);color:#fff;cursor:pointer;padding:.76rem .96rem;font-weight:700;transition:transform .12s ease,filter .12s ease,opacity .12s ease}button:hover{transform:translateY(-1px);filter:brightness(1.02)}button:disabled{opacity:.52;cursor:not-allowed;transform:none}input,textarea{width:100%;border:1px solid var(--border);border-radius:12px;background:#fff;color:var(--text);padding:.76rem .9rem}input:focus,textarea:focus,button:focus-visible{outline:2px solid rgba(229,118,38,.28);outline-offset:2px}textarea{resize:vertical}a{color:inherit}pre{margin:0;white-space:pre-wrap;word-break:break-word}.client-shell{display:grid;grid-template-columns:248px minmax(0,1fr);min-height:100vh}.sidebar{display:grid;grid-template-rows:auto auto minmax(0,1fr);gap:.9rem;padding:.9rem;background:linear-gradient(180deg,#171717,#121212);border-right:1px solid var(--sidebar-border);color:var(--sidebar-text)}.sidebar-brand{display:flex;align-items:center;gap:.72rem}.brand-mark{display:grid;place-items:center;width:2.45rem;height:2.45rem;border-radius:14px;background:linear-gradient(135deg,var(--accent) 0%,#f7a948 100%);color:#fff;font-size:.88rem;font-weight:900;letter-spacing:.08em}.brand-copy strong,.brand-copy small{display:block}.brand-copy strong{font-size:1rem;font-weight:700}.brand-copy small{margin-top:.08rem;color:var(--sidebar-muted);font-size:.78rem}.sidebar-section{display:grid;gap:.5rem}.sidebar-history{min-height:0}.sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.sidebar-label{margin:0;color:var(--sidebar-muted);font-size:.72rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.sidebar-primary{width:100%;min-height:40px;padding:.72rem .9rem}.sidebar-pdf-dropzone{width:100%;min-height:180px;display:grid;place-items:center;gap:.48rem;padding:1rem;border-radius:20px;border:1.5px dashed rgba(247,169,72,.36);background:linear-gradient(180deg,#e57626f5,#cd5f13fa);color:#fff;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease}.sidebar-pdf-dropzone:hover,.sidebar-pdf-dropzone:focus-visible,.sidebar-pdf-dropzone-active{transform:translateY(-1px);border-color:#ffe7cec2;box-shadow:0 18px 34px #e576263d;outline:none}.sidebar-pdf-dropzone strong{font-size:1.02rem;font-weight:800}.sidebar-pdf-dropzone small{color:#ffffffe0;font-size:.82rem;text-align:center;line-height:1.5}.module-list,.history-list{display:grid;gap:.36rem}.history-list{min-height:0;overflow:auto;align-content:start}.module-item,.history-item{width:100%;text-align:left;background:transparent;border:1px solid transparent;color:var(--sidebar-text);padding:.68rem .74rem;display:grid;gap:.16rem;box-shadow:none;justify-items:start;border-radius:14px}.module-item:hover,.history-item:hover,.module-item-active,.history-item-active{background:var(--sidebar-surface);border-color:var(--sidebar-border);filter:none}.module-item-main,.history-title,.history-meta{min-width:0}.module-item strong,.history-title{display:block;font-weight:700;font-size:.9rem;line-height:1.35}.module-item small,.history-meta{display:block;color:var(--sidebar-muted);font-size:.78rem}.history-title{display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.history-meta{display:flex;gap:.48rem}.history-empty{padding:.72rem .1rem;color:var(--sidebar-muted);font-size:.82rem}.workspace{padding:1rem 1.2rem 1.3rem;overflow:auto}.workspace-inner{width:min(1140px,100%);margin:0 auto}.workspace-header{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:.7rem}.workspace-header-centered{justify-content:center;text-align:center}.workspace-copy{display:grid;gap:.16rem}.workspace-header-centered .workspace-copy{justify-items:center}.workspace-copy h1{margin:0;font-size:1.62rem;letter-spacing:-.02em}.message-banner,.hero-card,.processing-card,.job-strip,.panel-card,.placeholder-card{border:1px solid var(--border);background:var(--panel);box-shadow:var(--shadow)}.message-banner{border-radius:14px;padding:.74rem .84rem;margin-bottom:.8rem;color:var(--text-soft)}.content-panel{width:100%}.content-panel-centered{min-height:calc(100vh - 8rem);display:grid;place-items:center}.hero-card,.processing-card,.placeholder-card{width:min(920px,100%);border-radius:20px;padding:1.05rem}.hero-card{display:grid;gap:.85rem}.article-card{display:grid;gap:.8rem;padding:.95rem;border-radius:18px;border:1px solid var(--border);background:#f8fafcb8}.article-card-head{display:grid;gap:.18rem}.article-card-head strong{font-size:.98rem}.article-card-head small{color:var(--text-soft);line-height:1.45}.article-meta-grid{display:grid;gap:.8rem;grid-template-columns:repeat(2,minmax(0,1fr))}.article-cover-actions{display:flex;gap:.6rem;flex-wrap:wrap}.article-cover-preview{border:1px solid var(--border);border-radius:16px;overflow:hidden;background:#fff;max-width:320px}.article-cover-preview img{width:100%;display:block;object-fit:cover}.article-card-actions{display:flex;justify-content:flex-end}.hero-copy h2,.processing-copy h2,.placeholder-card h2,.job-title,.panel-head h3{margin:0}.hero-kicker,.panel-eyebrow{display:inline-flex;align-items:center;padding:.22rem .5rem;border-radius:999px;background:var(--accent-soft);color:var(--accent-dark);font-size:.72rem;font-weight:700}.hero-copy-compact{justify-items:center;text-align:center;gap:.28rem}.hero-copy-compact h2{font-size:1.28rem}.hero-copy p,.processing-copy p,.placeholder-card p{margin:0;color:var(--text-soft)}.hero-copy-compact p{font-size:.9rem}.dropzone{display:grid;justify-items:center;gap:.72rem;border:1.5px dashed rgba(229,118,38,.32);border-radius:18px;padding:2rem 1.2rem;background:linear-gradient(180deg,#fff,#fcf8f3);text-align:center;cursor:pointer;outline:none}.dropzone:hover,.dropzone:focus-visible,.dropzone-active{border-color:var(--accent);background:linear-gradient(180deg,#fff,#fff7ef)}.dropzone-compact{gap:.58rem;padding:1.1rem .9rem;border-radius:16px}.dropzone-icon{display:grid;place-items:center;width:2.7rem;height:2.7rem;border-radius:14px;background:var(--panel-muted);color:var(--accent-dark)}.dropzone-compact .dropzone-icon{width:2.35rem;height:2.35rem}.dropzone-icon svg{width:1.3rem;height:1.3rem}.dropzone strong{font-size:.98rem}.dropzone-compact strong{font-size:.9rem}.dropzone-caption{color:var(--text-soft);font-size:.84rem;word-break:break-word}.ghost-button,.secondary-button,.player-control-secondary{background:transparent;color:var(--text);border:1px solid var(--border-strong);box-shadow:none}.ghost-button:hover,.secondary-button:hover,.player-control-secondary:hover{filter:none;background:#0f172a08}.ingest-grid{display:grid;grid-template-columns:minmax(0,1fr) 148px 148px;gap:.64rem}.input-card,.slider-card{display:grid;gap:.45rem;border-radius:14px;border:1px solid var(--border);background:var(--panel-soft);padding:.8rem}.quick-import-url{background:#ffffffeb}.input-card span,.slider-card span{color:var(--text-faint);font-size:.78rem;font-weight:700}.input-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.6rem}.processing-card{display:grid;justify-items:center;gap:.9rem;text-align:center}.processing-ring{--progress: 0%;width:min(34vw,220px);aspect-ratio:1;border-radius:50%;background:conic-gradient(var(--accent) 0 var(--progress),rgba(229,118,38,.14) var(--progress) 100%);display:grid;place-items:center}.processing-ring-core{width:76%;aspect-ratio:1;border-radius:50%;background:#fff;display:grid;place-items:center;box-shadow:inset 0 0 0 1px #0f172a0f}.processing-ring-core strong{font-size:1.82rem}.processing-copy{display:grid;gap:.32rem}.status-chip{display:inline-flex;align-items:center;justify-content:center;width:fit-content;padding:.26rem .58rem;border-radius:999px;background:#1118270f;color:var(--text-soft);font-size:.74rem;font-weight:700}.status-chip-warm{background:var(--accent-soft);color:var(--accent-dark)}.processing-bar{width:min(500px,100%);height:8px;border-radius:999px;background:#ececf0;overflow:hidden}.processing-bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-dark) 100%)}.job-strip{display:flex;align-items:center;justify-content:space-between;gap:1rem;border-radius:16px;padding:.78rem .92rem;margin-bottom:.8rem}.job-strip-main{min-width:0}.job-title{font-size:1.02rem;line-height:1.35;display:-webkit-box;overflow:hidden;-webkit-line-clamp:2;-webkit-box-orient:vertical}.job-strip-meta{display:flex;gap:.42rem;align-items:center}.meta-chip,.counter-chip{display:inline-flex;align-items:center;gap:.42rem;padding:.32rem .58rem;border-radius:999px;background:var(--panel-muted);color:var(--text-soft);font-size:.74rem;font-weight:700}.counter-chip strong,.meta-chip strong{color:var(--text)}.editor-grid{display:grid;grid-template-columns:minmax(0,1.04fr) minmax(340px,.96fr);gap:.82rem;align-items:start}.panel-card{border-radius:18px;padding:.88rem}.preview-card{display:grid;gap:.75rem;position:sticky;top:1rem}.preview-toolbar{display:flex;align-items:center;justify-content:space-between;gap:.9rem;min-height:3.35rem;padding:.2rem .08rem .05rem}.preview-toolbar-spacer{display:block;min-width:9rem;min-height:2.75rem}.panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.panel-head-compact{min-height:1.8rem}.panel-head-end{justify-content:flex-end}.panel-head h3{font-size:.96rem}.player-shell{display:grid;gap:.6rem}.video-frame{border-radius:16px;padding:.56rem;background:linear-gradient(180deg,#fff,#f4f4f6);border:1px solid var(--border)}.video-preview{width:100%;aspect-ratio:16 / 9;border-radius:12px;background:#000;display:block}.download-header-button{display:inline-flex;align-items:center;justify-content:center;gap:.42rem;align-self:center;flex:0 0 auto;min-width:8.8rem;max-width:100%;min-height:2.7rem;padding:.64rem 1rem;border-radius:16px;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-dark) 100%);color:#fff;text-decoration:none;font-size:.9rem;font-weight:800;line-height:1;white-space:nowrap;box-shadow:0 10px 24px #c85d1738;transition:transform .12s ease,filter .12s ease,box-shadow .12s ease}.download-header-button:hover{transform:translateY(-1px);filter:brightness(1.02);box-shadow:0 14px 28px #c85d173d}.download-header-icon{display:inline-grid;place-items:center;width:1rem;height:1rem}.download-header-icon svg{width:1rem;height:1rem}.player-controls{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto auto auto;align-items:center;gap:.56rem;padding:0 .12rem}.player-control{width:2.4rem;height:2.4rem;border-radius:999px;padding:0;display:inline-grid;place-items:center;flex:0 0 auto}.player-control svg{width:1rem;height:1rem}.player-control-primary{box-shadow:0 10px 20px #c85d1724}.player-time{min-width:2.8rem;text-align:center;color:var(--text-soft);font-size:.8rem;font-variant-numeric:tabular-nums}.player-progress{--player-progress: 0%;padding:0;border:0;background:transparent;appearance:none;height:24px}.player-progress:focus{outline:none}.player-progress::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:linear-gradient(90deg,var(--accent) 0,var(--accent) var(--player-progress),#d8dde6 var(--player-progress),#d8dde6 100%)}.player-progress::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:16px;height:16px;margin-top:-5px;border:0;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px #e5762629}.player-progress::-moz-range-track{height:6px;border-radius:999px;background:linear-gradient(90deg,var(--accent) 0,var(--accent) var(--player-progress),#d8dde6 var(--player-progress),#d8dde6 100%)}.player-progress::-moz-range-thumb{width:16px;height:16px;border:0;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px #e5762629}.preview-empty{border:1px dashed var(--border-strong);border-radius:14px;background:#fafafb;padding:.9rem;color:var(--text-soft)}.next-video-card{display:grid;gap:.62rem}.editor-card{display:grid;gap:.78rem}.pdf-workbench{display:grid;gap:.82rem}.pdf-toolbar{display:flex;align-items:center;gap:.72rem;flex-wrap:wrap}.pdf-toolbar-primary{justify-content:space-between}.pdf-toolbar-context{padding:.78rem .9rem;border-radius:16px;border:1px solid var(--border);background:#f8fafcf5}.pdf-toolbar-group{display:flex;align-items:center;gap:.68rem;flex-wrap:wrap}.pdf-toolbar-group-grow{flex:1 1 480px}.pdf-toolbar-hint{color:var(--text-soft);font-size:.84rem}.pdf-inline-field{display:grid;gap:.36rem;min-width:0}.pdf-inline-field span{font-size:.75rem;color:var(--text-faint);font-weight:700}.pdf-inline-field strong{color:var(--accent-dark);font-size:.82rem}.pdf-inline-field input,.pdf-inline-field textarea,.pdf-inline-field select{width:100%;min-width:0;border:1px solid var(--border);border-radius:14px;background:#fff;color:var(--text);font:inherit;padding:.7rem .8rem}.pdf-inline-field textarea{resize:vertical;min-height:4.2rem}.pdf-inline-field select{appearance:none}.pdf-inline-field-grow{flex:1 1 320px}.pdf-inline-field-select{flex:0 0 134px}.pdf-inline-field-color{flex:0 0 96px}.pdf-inline-field-color input{padding:.28rem;min-height:44px}.pdf-inline-field-url{flex:1 1 300px}.pdf-inline-field-checkbox{width:100%}.pdf-inline-field-checkbox-inline{flex:0 0 auto}.pdf-checkbox-row{display:flex;align-items:center;gap:.65rem;min-height:44px;padding:.2rem 0}.pdf-checkbox-row input[type=checkbox]{width:18px;height:18px;accent-color:var(--accent);margin:0}.pdf-checkbox-row small{color:var(--text-soft);font-size:.8rem;line-height:1.45}.pdf-checkbox-row-inline{padding:0;min-height:auto}.pdf-inline-field-range{min-width:168px;flex:0 0 168px}.pdf-inline-field-range input[type=range]{padding:0;accent-color:var(--accent)}.pdf-zoom-range{width:132px;padding:0;accent-color:var(--accent)}.pdf-page-tabs{display:flex;gap:.5rem;overflow-x:auto;padding-bottom:.08rem}.pdf-page-tab{flex:0 0 auto;padding:.5rem .8rem;border-radius:999px;border:1px solid var(--border);background:#fff;color:var(--text-soft);box-shadow:none}.pdf-page-tab-active{border-color:#e576263d;background:#e576261f;color:var(--accent-dark)}.pdf-canvas-surface{display:grid;gap:.72rem}.pdf-stage-scroll{overflow:auto;padding:.2rem 0 .3rem}.pdf-stage-scroll-all{display:grid;gap:1rem;justify-items:center;align-content:start}.pdf-page-shell{display:grid;gap:.56rem;width:100%}.pdf-page-shell-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.pdf-page-label-static{color:var(--text-soft);font-size:.78rem;font-weight:700}.pdf-page-stage{position:relative;border:1px solid var(--border);border-radius:18px;background:#fff;overflow:hidden;box-shadow:var(--shadow)}.pdf-page-stage-editor{margin:0 auto}.pdf-page-stage-active{border-color:#e5762652}.pdf-page-canvas{display:block;width:100%;height:100%}.pdf-annotation-layer{position:absolute;inset:0;pointer-events:none}.pdf-annotation{position:absolute;border:1px dashed transparent;border-radius:10px;background:transparent;box-shadow:none;cursor:move;overflow:visible;pointer-events:auto}.pdf-annotation-text{border-color:#0f172a38}.pdf-annotation-selected{border-color:#e57626d1;background:#e5762608}.pdf-annotation-selected.pdf-annotation-text{border-style:dashed;border-width:1px}.pdf-annotation-editing{background:#ffffff1f}.pdf-annotation-auto-field{border-color:#2563eb8c;background:#eff6ff14}.pdf-annotation-text-body{width:100%;height:100%;padding:.06rem .18rem .1rem;color:#111827;line-height:1.25;white-space:pre-wrap;word-break:break-word;-webkit-user-select:none;user-select:none}.pdf-annotation-text-placeholder{color:#94a3b8}.pdf-annotation-inline-editor{width:100%;height:100%;resize:none;border:0;outline:none;background:transparent;color:#111827;padding:.06rem .18rem .1rem;line-height:1.25;font-family:inherit;overflow:hidden}.pdf-annotation-inline-editor::placeholder{color:#94a3b8}.pdf-annotation-signature{border-color:#0f172a2e;background:#ffffff7a}.pdf-annotation-signature-body{width:100%;height:100%;object-fit:contain;display:block}.pdf-shape-body{width:100%;height:100%;display:block;overflow:visible;pointer-events:none}.pdf-annotation-resize{position:absolute;right:-.28rem;top:-.28rem;width:.72rem;height:.72rem;border-radius:999px;padding:0;background:linear-gradient(135deg,var(--accent) 0%,var(--accent-dark) 100%);border:2px solid rgba(255,255,255,.98);box-shadow:0 0 0 1px #c85d173d}.pdf-signature-modal{position:fixed;inset:0;display:grid;place-items:center;background:#0f172a42;padding:1.2rem;z-index:20}.pdf-signature-dialog{width:min(620px,calc(100vw - 2rem));display:grid;gap:.78rem;border-radius:20px;border:1px solid var(--border);background:#fffffffa;box-shadow:0 24px 56px #0f172a29;padding:1rem}.pdf-signature-canvas{width:100%;height:220px;border-radius:16px;border:1px dashed rgba(15,23,42,.14);background:linear-gradient(180deg,#fffffffa,#f8fafcfa),repeating-linear-gradient(0deg,transparent 0,transparent 31px,rgba(15,23,42,.05) 31px,rgba(15,23,42,.05) 32px);touch-action:none}.slider-card{padding:.78rem .84rem}.slider-head{display:flex;align-items:center;justify-content:space-between;gap:1rem}.slider-head strong{color:var(--accent-dark);font-size:.86rem}.slider-card input[type=range]{width:100%;padding:0;accent-color:var(--accent)}.slider-card small{color:var(--text-faint);font-size:.76rem}.translation-editor{min-height:clamp(380px,56vh,620px);font-size:.96rem;line-height:1.72;color:#111827;background:#fffffffa;padding:.92rem}.editor-actions{display:flex;align-items:center;gap:.6rem}.transcript-block{border-top:1px solid var(--border);padding-top:.78rem}.transcript-block summary{cursor:pointer;font-weight:700;font-size:.88rem}.transcript-block pre{margin-top:.62rem;color:var(--text-soft);font-size:.86rem}.placeholder-card{text-align:center}@media(max-width:1260px){.editor-grid{grid-template-columns:1fr}.preview-card{position:static}}@media(max-width:1080px){.client-shell{grid-template-columns:1fr}.sidebar{border-right:0;border-bottom:1px solid var(--sidebar-border)}}@media(max-width:860px){.workspace{padding:.9rem}.workspace-header,.job-strip,.panel-head,.editor-actions{flex-direction:column;align-items:flex-start}.ingest-grid,.input-row,.player-controls{grid-template-columns:1fr}.preview-toolbar{align-items:flex-start;flex-direction:column}.pdf-toolbar,.pdf-toolbar-primary,.pdf-toolbar-group{align-items:stretch}.pdf-inline-field-range{flex:1 1 100%;min-width:0}.article-meta-grid{grid-template-columns:1fr}.preview-toolbar-spacer{display:none}.download-header-button{min-width:7.5rem}.player-controls{justify-items:stretch}.player-time{text-align:left}.job-strip-meta{flex-wrap:wrap}}.login-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--app-bg)}.login-card{display:flex;flex-direction:column;align-items:center;gap:1.5rem;padding:3rem 2.5rem;background:var(--panel);border:1px solid var(--border);border-radius:20px;box-shadow:var(--shadow);max-width:400px;width:100%}.login-brand{display:flex;flex-direction:column;align-items:center;gap:.5rem;text-align:center}.login-brand h1{margin:0;font-size:1.5rem;font-weight:700;color:var(--text)}.login-brand p{margin:0;color:var(--text-soft);font-size:.9rem}.brand-mark-large{width:56px;height:56px;font-size:1.3rem}.google-signin-container{min-height:44px;display:flex;align-items:center;justify-content:center}.login-card .message-banner{width:100%}.user-info{display:flex;align-items:center;gap:.5rem;padding:0 .5rem .5rem;justify-content:flex-end}.user-avatar{width:28px;height:28px;border-radius:50%;object-fit:cover}.user-avatar-fallback{display:inline-flex;align-items:center;justify-content:center;background:var(--accent-soft);color:var(--accent);font-weight:700;font-size:.8rem}.user-name{font-size:.82rem;color:var(--text-soft)}.user-logout,.user-admin{padding:.3rem .6rem;font-size:.76rem}.admin-panel{margin:0 .5rem .75rem;padding:1rem 1.2rem;background:var(--panel);border:1px solid var(--border);border-radius:14px}.admin-panel-head{display:flex;flex-direction:column;gap:.15rem;margin-bottom:.75rem}.admin-panel-head strong{font-size:.9rem}.admin-panel-head small{color:var(--text-soft);font-size:.78rem}.admin-add-row{display:flex;gap:.5rem;margin-bottom:.75rem}.admin-add-row input{flex:1;padding:.5rem .7rem;border-radius:10px;font-size:.85rem}.admin-add-row button{padding:.5rem .9rem;font-size:.82rem;border-radius:10px;white-space:nowrap}.admin-email-list{display:flex;flex-direction:column;gap:.35rem}.admin-email-item{display:flex;align-items:center;justify-content:space-between;padding:.4rem .6rem;background:var(--panel-soft);border-radius:8px;font-size:.82rem}.admin-email-addr{color:var(--text);word-break:break-all}.admin-remove-btn{padding:.2rem .5rem;font-size:.72rem;flex-shrink:0;margin-left:.5rem}
