:root{
  --nav:#102f57;--nav-deep:#0b2444;--nav-soft:#173e6e;--accent:#f47b20;--accent-dark:#d96511;
  --bg:#f3f6fb;--surface:#ffffff;--surface-soft:#f8fafc;--text:#142033;--muted:#68758a;
  --line:#dfe5ee;--line-soft:#edf1f6;--good:#087a55;--good-bg:#eaf8f2;--bad:#b42318;--bad-bg:#fff0ee;
  --warn:#a45b08;--warn-bg:#fff7e8;--info:#1d5dab;--info-bg:#eef6ff;--shadow:0 12px 32px rgba(15,42,78,.07);
  --shadow-lg:0 28px 70px rgba(15,42,78,.12);--radius:18px;--radius-sm:12px;--sidebar:264px;--topbar:72px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}html,body{margin:0;min-height:100%;font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased}
body{font-size:15px;line-height:1.55}a{color:#175ec8;text-decoration:none}a:hover{color:#0f4caa}button,input,select,textarea{font:inherit}button{color:inherit}img{max-width:100%}
.app{min-height:100vh}.topbar{height:var(--topbar);background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(223,229,238,.9);display:flex;align-items:center;justify-content:space-between;padding:0 24px;position:sticky;top:0;z-index:50}
.brand{display:flex;align-items:center;gap:11px;font-weight:850;color:var(--nav);letter-spacing:-.02em}.brand img{width:38px;height:38px}.brand-copy{display:flex;flex-direction:column;line-height:1.05}.brand-copy small{font-size:10px;color:#7c8ba0;font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-top:4px}.menu-btn{display:none;width:42px;height:42px;border:1px solid var(--line);border-radius:12px;background:#fff;align-items:center;justify-content:center;padding:0;cursor:pointer}.menu-btn svg{width:22px;height:22px}.topbar .actions{align-items:center}.topbar-user{display:flex;align-items:center;gap:10px;padding-right:5px}.topbar-avatar{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;background:linear-gradient(135deg,#eaf2fb,#fff1e7);border:1px solid var(--line);color:var(--nav);font-weight:850}.topbar-user-copy{display:flex;flex-direction:column;line-height:1.15}.topbar-user-copy strong{font-size:13px}.topbar-user-copy span{font-size:11px;color:var(--muted)}
.sidebar{position:fixed;top:var(--topbar);bottom:0;left:0;width:var(--sidebar);background:linear-gradient(180deg,var(--nav-deep),#0d2a4d 72%,#0a223f);padding:18px 14px 16px;overflow:auto;z-index:40;display:flex;flex-direction:column;box-shadow:12px 0 40px rgba(10,34,63,.06)}.sidebar-nav{display:flex;flex-direction:column;gap:4px}.sidebar-label{padding:11px 12px 5px;color:#7f9abb;font-size:10px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}.sidebar a{display:flex;align-items:center;gap:12px;color:#dfe9f5;padding:11px 13px;border-radius:12px;font-weight:650;transition:.16s ease}.sidebar a svg{width:19px;height:19px;opacity:.82}.sidebar a:hover{background:rgba(255,255,255,.08);color:#fff}.sidebar a.active{background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(255,255,255,.08));color:#fff;box-shadow:inset 3px 0 0 var(--accent)}.sidebar a.active svg{opacity:1}.sidebar .sep{height:1px;background:rgba(255,255,255,.12);margin:13px 8px}.sidebar-spacer{flex:1}.sidebar-footnote{padding:14px 12px 4px;color:#839bb7;font-size:11px;line-height:1.45}.mobile-account{display:none;padding:14px 8px 2px;border-top:1px solid rgba(255,255,255,.12);margin-top:12px}.mobile-account-head{display:flex;align-items:center;gap:10px;padding:8px 5px 12px;color:#fff}.mobile-account-head .topbar-avatar{background:rgba(255,255,255,.1);border-color:rgba(255,255,255,.12);color:#fff}.mobile-account-head small{display:block;color:#92a9c3}.mobile-account .btn{width:100%;margin:4px 0}.mobile-account form{margin:0}.sidebar-overlay{display:none}
.main{margin-left:var(--sidebar);padding:32px 30px 54px}.container{max-width:1240px;margin:0 auto}.page-header{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:24px}.page-header h1{margin:0}.page-header p{margin:7px 0 0}.page-eyebrow{font-size:11px;font-weight:850;color:var(--accent-dark);letter-spacing:.09em;text-transform:uppercase}.page-title-group{min-width:0}.page-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:18px}.col-3{grid-column:span 3}.col-4{grid-column:span 4}.col-5{grid-column:span 5}.col-6{grid-column:span 6}.col-7{grid-column:span 7}.col-8{grid-column:span 8}.col-12{grid-column:span 12}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:0 2px 7px rgba(18,36,64,.025)}.card-premium{box-shadow:var(--shadow);border-color:#dfe7f0}.card-title-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.card-title-row h2{margin:0}.card-subtle{background:linear-gradient(180deg,#fff,#fbfcfe)}
.stat{position:relative;overflow:hidden;min-height:132px}.stat::after{content:"";position:absolute;right:-28px;bottom:-38px;width:110px;height:110px;border-radius:50%;background:radial-gradient(circle,rgba(23,94,200,.08),transparent 70%)}.stat-icon{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:#eef5fd;color:var(--nav);margin-bottom:16px}.stat-icon.accent{background:#fff1e8;color:var(--accent-dark)}.stat-icon.good{background:#eaf8f2;color:var(--good)}.stat span{font-size:12px;color:var(--muted);font-weight:650}.stat strong{font-size:30px;line-height:1.1;display:block;margin-top:7px;letter-spacing:-.035em}.stat .help{display:block;margin-top:8px;font-weight:500}
.muted{color:var(--muted)}h1{font-size:clamp(27px,3vw,34px);line-height:1.12;letter-spacing:-.035em;margin:0 0 9px;font-weight:850}h2{font-size:20px;line-height:1.25;letter-spacing:-.02em;margin:0 0 14px;font-weight:800}h3{font-size:16px;line-height:1.3;letter-spacing:-.015em}p{margin-top:0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:12px;padding:10px 15px;font-weight:750;cursor:pointer;transition:.16s ease;white-space:nowrap}.btn:hover{transform:translateY(-1px)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn svg{width:17px;height:17px}.btn-primary{background:linear-gradient(135deg,var(--nav),#1b5188);color:#fff;box-shadow:0 8px 20px rgba(16,47,87,.12)}.btn-primary:hover{color:#fff}.btn-accent{background:linear-gradient(135deg,var(--accent),#ee6c14);color:#fff;box-shadow:0 8px 20px rgba(244,123,32,.16)}.btn-accent:hover{color:#fff}.btn-light{background:#f1f4f8;color:var(--text);border-color:#e7ebf0}.btn-outline{background:#fff;color:var(--nav);border-color:#cfd8e5}.btn-danger{background:#fff0ee;color:var(--bad);border-color:#ffd6d1}.btn-success{background:#eaf8f2;color:var(--good);border-color:#c9eedf}.btn-sm{padding:7px 10px;border-radius:10px;font-size:12px}.actions{display:flex;flex-wrap:wrap;gap:8px}.right{margin-left:auto}
.form-group{margin-bottom:16px}.form-label{display:block;font-weight:750;margin-bottom:7px;color:#27364a;font-size:13px}.form-control{width:100%;padding:11px 12px;border:1px solid #d5dce6;border-radius:11px;background:#fff;color:var(--text);transition:border-color .15s,box-shadow .15s}.form-control:hover{border-color:#c2ccd8}.form-control:focus{outline:none;border-color:#5f9edc;box-shadow:0 0 0 4px rgba(95,158,220,.13)}textarea.form-control{min-height:120px;resize:vertical}.help{font-size:12px;color:var(--muted);margin-top:6px;line-height:1.5}code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;background:#f2f5f8;border:1px solid #e7ebf0;border-radius:6px;padding:1px 5px;color:#334155}
.table-wrap{overflow:auto;border:1px solid var(--line-soft);border-radius:14px}.table{width:100%;border-collapse:separate;border-spacing:0;min-width:720px;background:#fff}.table th,.table td{padding:13px 14px;border-bottom:1px solid var(--line-soft);text-align:left;vertical-align:middle}.table th{font-size:10px;text-transform:uppercase;letter-spacing:.07em;color:#7b8798;background:#f8fafc;font-weight:850}.table tr:last-child td{border-bottom:0}.table tbody tr{transition:background .12s}.table tbody tr:hover{background:#fbfcfe}.table strong{color:#1b2b40}.table .help{margin-top:2px}
.badge{display:inline-flex;align-items:center;gap:6px;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800;background:#eef2f6;color:#506176}.badge::before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.65}.badge.completed{background:var(--good-bg);color:var(--good)}.badge.payment_due,.badge.failed,.badge.ai_failed{background:var(--bad-bg);color:var(--bad)}.badge.submitted,.badge.ai_processing,.badge.transcribed{background:var(--info-bg);color:var(--info)}.badge.ai_pending,.badge.ai_retry{background:var(--warn-bg);color:var(--warn)}
.alert{border:1px solid transparent;border-radius:13px;padding:12px 14px;margin:0 0 14px;font-size:13px}.alert-success{background:var(--good-bg);border-color:#d2efe3;color:#05603f}.alert-danger{background:var(--bad-bg);border-color:#ffdad5;color:#912018}.alert-warning{background:var(--warn-bg);border-color:#ffe8c2;color:#8b4b07}.alert-info{background:var(--info-bg);border-color:#d8eaff;color:#174f91}
.auth-page{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);background:#fff}.auth-visual{position:relative;overflow:hidden;display:flex;align-items:flex-end;padding:58px;background:radial-gradient(circle at 20% 10%,rgba(244,123,32,.15),transparent 28%),radial-gradient(circle at 90% 78%,rgba(71,132,196,.2),transparent 32%),linear-gradient(145deg,#0b2444,#133d6c 62%,#174d84);color:#fff}.auth-visual::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),transparent)}.auth-visual-content{position:relative;z-index:2;max-width:520px}.auth-visual-mark{width:58px;height:58px;border-radius:18px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);padding:10px;margin-bottom:25px}.auth-visual h2{font-size:42px;line-height:1.06;letter-spacing:-.04em;color:#fff;margin-bottom:18px}.auth-visual p{font-size:17px;color:#c8d8e9;max-width:500px}.auth-benefits{display:flex;gap:18px;flex-wrap:wrap;margin-top:28px}.auth-benefits span{display:inline-flex;align-items:center;gap:7px;color:#e3edf7;font-size:12px;font-weight:700}.auth-benefits span::before{content:"✓";display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:rgba(255,255,255,.12);color:#ffb783}.auth-panel{display:grid;place-items:center;padding:42px 28px;background:#fff}.auth-card{width:min(470px,100%);background:#fff;padding:20px 6px}.auth-logo{margin-bottom:28px}.auth-logo img{width:50px;height:50px}.auth-logo h1{margin-top:18px;margin-bottom:7px}.auth-footer{text-align:center;color:var(--muted);font-size:13px;margin-top:22px}.auth-footer a{font-weight:700}.password-wrap{position:relative}.password-wrap .form-control{padding-right:48px}.password-toggle{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#6c7a8d;cursor:pointer;width:34px;height:34px;border-radius:9px}.password-toggle:hover{background:#f1f4f8}
.upload-zone{border:1.5px dashed #b9c7d7;border-radius:18px;padding:28px;text-align:center;background:linear-gradient(180deg,#fbfdff,#f8fbff);transition:.16s ease}.upload-zone:hover,.upload-zone.dragging{border-color:#76a8dc;background:#f5f9fe}.upload-zone-icon{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;margin:0 auto 14px;background:#eaf3fd;color:var(--nav)}.upload-zone-icon svg{width:24px;height:24px}.upload-zone input[type=file]{max-width:100%}.progress{height:9px;background:#e8edf3;border-radius:999px;overflow:hidden}.progress>div{height:100%;width:0;background:linear-gradient(90deg,var(--accent),#ff9a53);transition:width .2s}.text-box{white-space:pre-wrap;line-height:1.72;background:#fff;border:1px solid var(--line);border-radius:14px;padding:19px;max-height:560px;overflow:auto}.kpi{font-size:12px;color:var(--muted);margin-bottom:15px}.kpi b{display:block;color:var(--text);font-size:21px;letter-spacing:-.02em;margin-top:2px}
.batch-list{display:flex;flex-direction:column;gap:11px;margin-top:16px}.batch-item{display:grid;grid-template-columns:minmax(0,1.5fr) 120px 110px 115px 38px;gap:12px;align-items:center;border:1px solid var(--line);border-radius:15px;padding:13px 14px;background:#fff}.batch-item-main{min-width:0}.batch-file-name{font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;margin-bottom:5px}.batch-item-meta{display:flex;gap:10px;flex-wrap:wrap;color:var(--muted);font-size:11px}.batch-title{margin-top:9px}.batch-cost{font-weight:800;color:var(--nav)}.batch-status{font-size:11px;font-weight:750;color:var(--muted)}.batch-status.success{color:var(--good)}.batch-status.error{color:var(--bad)}.batch-status.running{color:var(--info)}.batch-remove{width:36px;height:36px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer;color:#8b98aa}.batch-remove:hover{background:#fff0ee;color:var(--bad);border-color:#ffd7d2}.batch-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.batch-summary-item{border:1px solid var(--line);border-radius:13px;padding:12px 14px;background:#fbfcfe}.batch-summary-item span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}.batch-summary-item strong{display:block;margin-top:4px;font-size:17px}.batch-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:18px}.batch-progress-panel{margin-top:17px;border:1px solid var(--line);border-radius:14px;padding:14px;background:#fbfcfe}.batch-progress-row{display:flex;justify-content:space-between;gap:12px;margin-bottom:8px;font-size:12px}.batch-empty{padding:12px 0;color:var(--muted);font-size:13px}
.wallet-highlight{background:linear-gradient(135deg,var(--nav),#1d568f);color:#fff;border:0;box-shadow:var(--shadow-lg)}.wallet-highlight .kpi,.wallet-highlight .muted{color:#c7d7e7}.wallet-highlight .kpi b{color:#fff}.wallet-balance{font-size:38px;font-weight:850;letter-spacing:-.04em;margin:8px 0 22px}.wallet-free-pill{display:inline-flex;align-items:center;gap:7px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:7px 10px;font-size:12px;font-weight:750}
.empty-state{text-align:center;padding:40px 18px;color:var(--muted)}.empty-state-icon{width:52px;height:52px;border-radius:16px;background:#f0f4f8;display:grid;place-items:center;margin:0 auto 14px;color:var(--nav)}.section-divider{height:1px;background:var(--line-soft);margin:20px 0}.mobile-only{display:none}.desktop-only{display:flex}
@media(max-width:1000px){.col-3{grid-column:span 6}.main{padding:26px 22px 48px}.batch-item{grid-template-columns:minmax(0,1fr) 100px 95px 38px}.batch-item .batch-free{display:none}.batch-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:900px){:root{--topbar:66px}.menu-btn{display:inline-flex}.sidebar{top:var(--topbar);transform:translateX(-105%);transition:transform .2s ease;box-shadow:20px 0 50px rgba(4,20,37,.22)}.sidebar.open{transform:translateX(0)}.sidebar-overlay{display:block;position:fixed;inset:var(--topbar) 0 0 0;background:rgba(8,25,43,.34);backdrop-filter:blur(2px);opacity:0;visibility:hidden;transition:.2s;z-index:35}.sidebar-overlay.open{opacity:1;visibility:visible}.main{margin-left:0;padding:23px 18px 42px}.topbar{padding:0 14px}.topbar>.actions{display:none}.mobile-account{display:block}.mobile-only{display:inline-flex}.desktop-only{display:none!important}.page-header{align-items:flex-start}.col-4,.col-5,.col-6,.col-7,.col-8{grid-column:span 12}.auth-page{grid-template-columns:1fr}.auth-visual{display:none}.auth-panel{min-height:100vh}.table{min-width:650px}}
@media(max-width:620px){body{font-size:14px}.main{padding:18px 13px 36px}.container{width:100%}.page-header{flex-direction:column;margin-bottom:18px;gap:14px}.page-actions{width:100%}.page-actions .btn{flex:1}.card{padding:17px;border-radius:15px}.col-3{grid-column:span 12}.topbar{padding:0 11px}.brand-copy small{display:none}.brand img{width:34px;height:34px}.auth-panel{padding:28px 20px}.auth-card{padding:0}.batch-item{grid-template-columns:1fr 38px;gap:9px}.batch-item-main{grid-column:1/2}.batch-item .batch-duration,.batch-item .batch-cost,.batch-item .batch-status{grid-column:1/2}.batch-remove{grid-column:2/3;grid-row:1/2}.batch-item .batch-duration,.batch-item .batch-cost,.batch-item .batch-status{display:inline-block}.batch-summary{grid-template-columns:1fr 1fr}.batch-toolbar{align-items:stretch;flex-direction:column}.batch-toolbar .btn{width:100%}.actions .btn{max-width:100%}.table{min-width:600px}.wallet-balance{font-size:32px}}
@media(max-width:400px){.batch-summary{grid-template-columns:1fr}.main{padding-left:10px;padding-right:10px}.card{padding:15px}.btn{padding:10px 12px}.page-actions{flex-direction:column}.page-actions .btn{width:100%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
/* v1.2.2 — stabilisation de la page d’import multiple */
.upload-layout{align-items:start}
.upload-layout>*{min-width:0}
.upload-main-card{min-width:0;overflow:hidden}
.upload-side{min-width:0;display:flex;flex-direction:column;gap:18px}
.upload-main-card form,.upload-main-card .grid,.upload-main-card .form-group{min-width:0;max-width:100%}
.upload-zone{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:100%;min-height:252px;box-sizing:border-box;overflow:hidden;padding:32px 24px;cursor:pointer}
.upload-zone>*{max-width:100%}
.upload-zone strong{display:block;font-size:16px;line-height:1.35;overflow-wrap:anywhere}
.upload-zone .muted,.upload-zone .help{max-width:560px}
.upload-zone .btn{white-space:normal;text-align:center}
.batch-list,.batch-summary,.batch-progress-panel,.batch-toolbar{min-width:0;max-width:100%}
.batch-item{min-width:0}
.batch-title,.batch-title .form-control{min-width:0;width:100%}
@media(max-width:1120px){.upload-layout .upload-main-card{grid-column:span 7}.upload-layout .upload-side{grid-column:span 5}}
@media(max-width:900px){.upload-layout .upload-main-card,.upload-layout .upload-side{grid-column:span 12}.upload-side{display:grid;grid-template-columns:1fr 1fr;gap:14px}.upload-side>.wallet-highlight{grid-column:1/-1}.upload-zone{min-height:220px;padding:28px 18px}}
@media(max-width:620px){.upload-side{display:flex}.upload-zone{min-height:205px;padding:24px 14px}.upload-zone-icon{width:48px;height:48px}.upload-zone strong{font-size:15px}}


/* v1.2.5 — choix des intervenants */
.speaker-mode-choice{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:8px 0 10px}
.speaker-mode-option{display:flex;gap:12px;align-items:flex-start;padding:15px 16px;border:1px solid var(--border,#d9e1ea);border-radius:14px;background:#fff;cursor:pointer;transition:.18s ease;min-width:0}
.speaker-mode-option:hover{border-color:#9fb6cf;box-shadow:0 8px 24px rgba(16,47,87,.07)}
.speaker-mode-option input{margin-top:3px;accent-color:#f58220;flex:0 0 auto}
.speaker-mode-option span{display:grid;gap:4px;min-width:0}
.speaker-mode-option strong{font-size:.95rem;color:#102f57}
.speaker-mode-option small{font-size:.79rem;line-height:1.45;color:#66778a}
.speaker-mode-option:has(input:checked){border-color:#f58220;background:#fffaf5;box-shadow:0 0 0 3px rgba(245,130,32,.08)}
.batch-item-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(180px,220px);gap:10px;margin-top:10px;min-width:0}
.batch-speaker-mode{min-width:0}
.speaker-mode-panel{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}
.speaker-mode-panel .speaker-mode-copy{min-width:240px;flex:1}
.speaker-mode-panel form{display:flex;gap:9px;align-items:center;flex-wrap:wrap}
.speaker-mode-panel select{min-width:240px}
@media(max-width:760px){.speaker-mode-choice{grid-template-columns:1fr}.batch-item-controls{grid-template-columns:1fr}.speaker-mode-panel{align-items:stretch}.speaker-mode-panel form{width:100%;display:grid;grid-template-columns:1fr}.speaker-mode-panel select{min-width:0;width:100%}}

/* SDML Transcribe v1.2.6 — précision STT / glossaire */
.precision-panel{border:1px solid rgba(16,47,87,.12);border-radius:18px;padding:20px;background:linear-gradient(180deg,#f8fbff 0%,#fff 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.precision-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:18px}.precision-heading h2{margin:4px 0 6px;font-size:1.15rem}.precision-heading .help{max-width:650px;margin:0}.precision-badge{display:inline-flex;align-items:center;white-space:nowrap;border-radius:999px;padding:7px 11px;background:#e9f2ff;color:#174f8f;font-weight:700;font-size:.76rem;letter-spacing:.02em}
.precision-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px}.precision-grid .form-group{min-width:0}
.glossary-box{margin-top:12px;padding:15px;border:1px solid rgba(16,47,87,.1);border-radius:14px;background:#fff}.glossary-head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px}.glossary-textarea{margin-top:10px;resize:vertical;min-height:116px;font-family:inherit;line-height:1.45}.glossary-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:10px}.switch-line{display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:.9rem;font-weight:650;color:#233a55}.switch-line input{width:17px;height:17px}
.precision-item-controls{display:grid!important;grid-template-columns:minmax(190px,1.8fr) minmax(150px,1fr) minmax(85px,.55fr) minmax(145px,.8fr)!important;gap:8px!important;align-items:center}.batch-language{text-transform:lowercase}.batch-item-precision .batch-item-main{min-width:0}
.quality-card{overflow:hidden}.quality-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.quality-card-head h2{margin:5px 0 0}.quality-score{display:flex;flex-direction:column;align-items:flex-end;border-radius:14px;padding:10px 14px;min-width:145px}.quality-score strong{font-size:1.35rem;line-height:1}.quality-score span{font-size:.76rem;margin-top:5px}.quality-good{background:#edf9f2;color:#187048}.quality-medium{background:#fff7e8;color:#925d06}.quality-low{background:#fff0f0;color:#a43838}.quality-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px}.quality-meta-grid>div{border:1px solid rgba(16,47,87,.1);background:#fbfdff;border-radius:12px;padding:11px 13px;display:flex;flex-direction:column;gap:4px}.quality-meta-grid span{font-size:.76rem;color:#6a7788}.quality-meta-grid strong{font-size:.95rem;color:#1c3551}.quality-bars{display:flex;gap:16px;flex-wrap:wrap;margin-top:14px;font-size:.82rem;color:#536273}.quality-bars span{display:flex;align-items:center;gap:7px}.quality-bars i{width:9px;height:9px;border-radius:50%;display:inline-block}.q-high{background:#2a9b68}.q-medium{background:#d9981e}.q-low{background:#d75252}.quality-details{margin-top:15px;border-top:1px solid rgba(16,47,87,.08);padding-top:12px}.quality-details summary{cursor:pointer;color:#294a70}.uncertain-list{display:grid;gap:8px;margin-top:12px}.uncertain-item{display:grid;grid-template-columns:52px minmax(0,1fr) 52px;gap:10px;align-items:start;border:1px solid rgba(16,47,87,.08);background:#fbfcfe;border-radius:10px;padding:9px 11px}.uncertain-item span,.uncertain-item strong{font-size:.78rem;color:#6a7788}.uncertain-item strong{text-align:right;color:#a25a19}.uncertain-item p{margin:0;font-size:.88rem;line-height:1.45;color:#283c55}
@media(max-width:1100px){.precision-item-controls{grid-template-columns:minmax(180px,1.5fr) minmax(145px,1fr)!important}.precision-item-controls .batch-language,.precision-item-controls .batch-speakers{min-width:0}.quality-meta-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.precision-panel{padding:15px}.precision-heading,.glossary-head,.quality-card-head{flex-direction:column}.precision-grid{grid-template-columns:1fr}.precision-badge{align-self:flex-start}.switch-line{white-space:normal}.precision-item-controls{grid-template-columns:1fr!important}.quality-score{align-items:flex-start;min-width:0}.quality-meta-grid{grid-template-columns:1fr 1fr}.uncertain-item{grid-template-columns:42px minmax(0,1fr);}.uncertain-item strong{grid-column:2;text-align:left}}
@media(max-width:480px){.quality-meta-grid{grid-template-columns:1fr}.quality-bars{display:grid;gap:8px}}

/* SDML Transcribe v1.2.7 — Turbo Upload */
.upload-transport-badge{display:inline-flex;align-items:center;vertical-align:middle;margin-left:7px;padding:3px 7px;border-radius:999px;font-size:9px;font-weight:850;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap;border:1px solid transparent}.upload-transport-badge.turbo{color:#0a6b50;background:#e9f8f2;border-color:#cceee1}.upload-transport-badge.direct{color:#52657c;background:#f1f4f8;border-color:#e0e6ee}.upload-inline-actions{display:inline-flex;align-items:center;gap:6px;flex-wrap:wrap;margin-left:auto}.btn-xs{padding:4px 8px;border-radius:8px;font-size:10px;line-height:1.2}.file-progress{height:6px;border-radius:999px;background:#eef2f7;overflow:hidden;margin-top:8px}.file-progress>div{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--nav),#2f72b6 64%,var(--accent));transition:width .16s linear}.batch-status{display:flex;align-items:center;gap:10px;justify-content:space-between;min-width:0}.batch-status>span:first-child{min-width:0;overflow-wrap:anywhere}.batch-progress-panel{margin-top:18px;padding:16px;border:1px solid #dbe5f0;border-radius:14px;background:linear-gradient(180deg,#fbfdff,#f7faff)}.batch-progress-row{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:9px}.batch-progress-panel .progress{height:8px;background:#e9eef5;border-radius:999px;overflow:hidden}.batch-progress-panel .progress>div{height:100%;background:linear-gradient(90deg,var(--nav),#2f72b6,var(--accent));border-radius:inherit;transition:width .16s linear}.turbo-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.turbo-status{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.turbo-status .badge{flex:0 0 auto}.batch-item.running{box-shadow:inset 3px 0 0 rgba(29,93,171,.5)}
@media(max-width:820px){.upload-inline-actions{width:100%;margin-left:0;margin-top:7px}.batch-status{align-items:flex-start;flex-direction:column}.turbo-config-grid{grid-template-columns:1fr}.batch-progress-row{align-items:flex-start}.upload-transport-badge{margin-left:4px}}

/* ==========================================================
   SDML Transcribe v1.3.0 — Premium workspace redesign
   Visual refit only: preserves existing markup and behaviour.
   ========================================================== */
:root{
  --nav:#0d3157;--nav-deep:#08243f;--nav-soft:#164b7d;--accent:#f47b20;--accent-dark:#d8600d;
  --bg:#eef3f8;--surface:#ffffff;--surface-soft:#f7f9fc;--text:#112238;--muted:#68778b;
  --line:#dce4ed;--line-soft:#edf2f6;--shadow:0 12px 35px rgba(9,37,66,.065);
  --shadow-lg:0 28px 80px rgba(8,36,64,.16);--radius:22px;--radius-sm:13px;--sidebar:278px;--topbar:78px;
}
html{background:var(--bg);scrollbar-color:#b5c3d3 transparent;scrollbar-width:thin}
body.app-body{background:
  radial-gradient(circle at 88% 2%,rgba(39,103,166,.07),transparent 24rem),
  radial-gradient(circle at 28% 16%,rgba(244,123,32,.045),transparent 21rem),
  var(--bg)}
body.app-body::before{content:"";position:fixed;inset:var(--topbar) 0 0 var(--sidebar);pointer-events:none;z-index:-1;background-image:linear-gradient(rgba(13,49,87,.017) 1px,transparent 1px),linear-gradient(90deg,rgba(13,49,87,.017) 1px,transparent 1px);background-size:38px 38px;mask-image:linear-gradient(to bottom,#000,transparent 72%)}
::selection{background:rgba(244,123,32,.22);color:#0a2746}
:focus-visible{outline:3px solid rgba(244,123,32,.28);outline-offset:2px}
::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#bcc8d5;border-radius:999px;border:2px solid transparent;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:#97a8ba;border:2px solid transparent;background-clip:padding-box}

.topbar{height:var(--topbar);padding:0 28px;background:rgba(255,255,255,.88);border-bottom:1px solid rgba(216,226,236,.92);box-shadow:0 8px 30px rgba(9,37,66,.035);backdrop-filter:blur(18px) saturate(155%)}
.brand{gap:12px}.brand img{width:42px;height:42px;padding:5px;border:1px solid #e1e8f0;border-radius:14px;background:#fff;box-shadow:0 9px 24px rgba(9,37,66,.08)}.brand-copy>span{font-size:16px;font-weight:900}.brand-copy small{font-size:9px;letter-spacing:.11em;color:#8290a2}
.menu-btn{border-color:#dae3ec;border-radius:13px;box-shadow:0 5px 16px rgba(12,42,72,.05)}
.topbar-user{padding:7px 10px 7px 8px;border:1px solid #e3eaf1;border-radius:15px;background:rgba(248,250,252,.78)}.topbar-avatar{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,#edf4fb,#fff3e9);box-shadow:inset 0 0 0 1px rgba(255,255,255,.7)}.topbar-user-copy strong{font-size:12px}.topbar-user-copy span{font-size:10px}
.topbar .btn-light{background:#fff;border-color:#dbe4ed;box-shadow:0 5px 14px rgba(10,39,68,.04)}

.sidebar{padding:22px 16px 18px;background:
  radial-gradient(circle at 15% 0%,rgba(72,133,190,.18),transparent 22rem),
  linear-gradient(180deg,#092642 0%,#0b2d4f 52%,#071f38 100%);box-shadow:15px 0 44px rgba(5,28,50,.08)}
.sidebar::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:34px 34px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.7),transparent 80%)}
.sidebar>*{position:relative;z-index:1}.sidebar-nav{gap:6px}.sidebar-label{padding:13px 13px 6px;color:#7693b1;font-size:9px;letter-spacing:.14em}.sidebar a{min-height:46px;padding:11px 13px;border:1px solid transparent;border-radius:13px;color:#cfdeed;font-weight:700}.sidebar a svg{width:20px;height:20px}.sidebar a:hover{background:rgba(255,255,255,.075);border-color:rgba(255,255,255,.06)}.sidebar a.active{background:linear-gradient(110deg,rgba(255,255,255,.15),rgba(255,255,255,.075));border-color:rgba(255,255,255,.09);box-shadow:inset 3px 0 0 var(--accent),0 9px 24px rgba(0,0,0,.08)}
.sidebar .sep{margin:16px 7px;background:rgba(255,255,255,.1)}.sidebar-footnote{border-top:1px solid rgba(255,255,255,.08);margin-top:10px;padding-top:15px;color:#7690aa}.mobile-account{border-top-color:rgba(255,255,255,.1)}

.main{padding:36px 34px 64px}.container{max-width:1360px}.page-header{position:relative;overflow:hidden;align-items:center;margin-bottom:24px;padding:24px 26px;border:1px solid rgba(218,227,236,.94);border-radius:24px;background:linear-gradient(120deg,rgba(255,255,255,.98),rgba(248,251,254,.94));box-shadow:0 11px 35px rgba(8,37,66,.05)}
.page-header::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--accent),#f5a15f)}.page-header::after{content:"";position:absolute;width:210px;height:210px;border-radius:50%;right:-75px;top:-110px;background:radial-gradient(circle,rgba(25,82,136,.075),transparent 70%);pointer-events:none}.page-header>*{position:relative;z-index:1}.page-eyebrow{font-size:10px;letter-spacing:.13em}.page-header h1{margin-top:4px}.page-header p{max-width:800px;margin-top:8px}.page-actions{justify-content:flex-end}

.grid{gap:20px}.card{position:relative;border:1px solid #dfe7ef;border-radius:var(--radius);padding:24px;background:rgba(255,255,255,.97);box-shadow:0 5px 18px rgba(8,37,66,.035)}.card-premium{box-shadow:var(--shadow);border-color:#dbe5ee}.card-premium::before{content:"";position:absolute;left:20px;right:20px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.9),transparent)}.card-subtle{background:linear-gradient(180deg,#fff,#f8fafc)}.card-title-row{padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid var(--line-soft)}.card-title-row h2{font-size:19px}.card-title-row p{font-size:13px}
.stat{min-height:158px;padding:22px;isolation:isolate}.stat::before{content:"";position:absolute;left:0;top:0;width:100%;height:3px;background:linear-gradient(90deg,var(--nav),#3c78ac);opacity:.82}.stat:nth-child(2)::before{background:linear-gradient(90deg,#275e94,#76a2ca)}.stat:nth-child(3)::before{background:linear-gradient(90deg,#087a55,#50ad89)}.stat:nth-child(4)::before{background:linear-gradient(90deg,var(--accent),#ffaf70)}.stat::after{width:150px;height:150px;right:-50px;bottom:-60px;background:radial-gradient(circle,rgba(32,91,148,.09),transparent 69%);z-index:-1}.stat-icon{width:43px;height:43px;border-radius:14px;margin-bottom:19px;box-shadow:inset 0 0 0 1px rgba(30,76,122,.05)}.stat span{font-size:11px;text-transform:uppercase;letter-spacing:.045em}.stat strong{font-size:31px;margin-top:6px}.stat .help{text-transform:none;letter-spacing:0;font-size:11px}

h1{font-size:clamp(29px,3vw,38px);font-weight:900}h2{font-weight:850}h3{font-weight:800}.muted{color:#6d7b8e}
.btn{min-height:42px;border-radius:12px;padding:10px 16px;letter-spacing:-.005em;box-shadow:none}.btn:hover{transform:translateY(-1px);filter:saturate(1.04)}.btn-primary{background:linear-gradient(135deg,#0d3157,#1a568b);box-shadow:0 9px 20px rgba(13,49,87,.15)}.btn-accent{background:linear-gradient(135deg,#f47b20,#ea6810);box-shadow:0 9px 22px rgba(244,123,32,.18)}.btn-light{background:#f5f7fa;border-color:#e0e6ed}.btn-outline{border-color:#cbd7e3;box-shadow:0 4px 12px rgba(10,39,68,.025)}.btn-danger,.btn-success{box-shadow:none}.btn-sm{min-height:34px;padding:7px 11px;border-radius:9px}

.form-group{margin-bottom:18px}.form-label{margin-bottom:8px;font-size:12px;color:#26394f}.form-control{min-height:44px;padding:11px 13px;border:1px solid #ced9e4;border-radius:12px;background:#fff;box-shadow:inset 0 1px 2px rgba(13,42,70,.025)}.form-control:hover{border-color:#b9c8d8}.form-control:focus{border-color:#3d79ad;box-shadow:0 0 0 4px rgba(48,116,177,.11),0 6px 18px rgba(20,62,102,.055)}input[type=file].form-control{padding:8px 10px;background:#f9fbfd}select.form-control{cursor:pointer}.help{color:#778598;font-size:11px}code{background:#f3f6f9;border-color:#e1e7ed}

.table-wrap{border-color:#e0e7ef;border-radius:17px;background:#fff;box-shadow:inset 0 1px 0 #fff}.table th,.table td{padding:14px 15px}.table th{position:sticky;top:0;z-index:1;background:#f6f8fb;color:#738297;font-size:9px;letter-spacing:.105em}.table tbody tr:nth-child(even){background:#fcfdfe}.table tbody tr:hover{background:#f7faff}.table td:first-child{padding-left:17px}.table strong{color:#17314e}
.badge{padding:6px 9px;border:1px solid rgba(95,112,133,.08);font-size:10px}.badge.completed{border-color:#cfeadd}.badge.payment_due,.badge.failed,.badge.ai_failed{border-color:#f5d6d1}.badge.submitted,.badge.ai_processing,.badge.transcribed{border-color:#d5e7fa}.badge.ai_pending,.badge.ai_retry{border-color:#f2e3c7}
.alert{border-radius:14px;padding:13px 15px;box-shadow:inset 0 1px 0 rgba(255,255,255,.5)}

.card details{border:1px solid #e2e9f0;border-radius:13px;background:#fafcfe;padding:10px 12px}.card details+details{margin-top:10px}.card details summary{cursor:pointer;font-weight:800;color:#29435f;list-style:none}.card details summary::-webkit-details-marker{display:none}.card details summary::after{content:"+";float:right;color:#7b8b9c;font-size:17px;line-height:1}.card details[open] summary::after{content:"−"}.card details[open]{background:#fff;box-shadow:0 8px 22px rgba(8,37,66,.045)}
.empty-state{padding:48px 22px}.empty-state-icon{width:58px;height:58px;border-radius:18px;background:linear-gradient(145deg,#eef4fa,#fff4ec);box-shadow:inset 0 0 0 1px #e4eaf0}.empty-state strong{display:block;color:#233851;font-size:16px}.empty-state p{max-width:500px;margin:7px auto 17px}
.text-box{padding:24px 26px;border-color:#dfe7ef;border-radius:17px;background:linear-gradient(180deg,#fff,#fcfdfe);font-size:15px;line-height:1.82;box-shadow:inset 0 1px 3px rgba(10,38,65,.025)}
textarea.form-control[rows="24"]{min-height:480px;line-height:1.75;padding:18px}

.wallet-highlight{overflow:hidden;background:radial-gradient(circle at 95% 0%,rgba(255,255,255,.16),transparent 28%),linear-gradient(145deg,#092c50,#1b568c);box-shadow:0 26px 62px rgba(8,36,64,.19)}.wallet-highlight::after{content:"";position:absolute;width:190px;height:190px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-70px;bottom:-80px}.wallet-balance{font-size:42px}.wallet-free-pill{background:rgba(255,255,255,.13);backdrop-filter:blur(8px)}
.upload-zone{border:1.5px dashed #aebfd0;border-radius:20px;background:radial-gradient(circle at 50% 20%,rgba(47,111,171,.055),transparent 14rem),linear-gradient(180deg,#fbfdff,#f6f9fc)}.upload-zone:hover,.upload-zone.dragging{border-color:#4e8bc0;background:#f5f9fd;box-shadow:inset 0 0 0 4px rgba(59,124,184,.04)}.upload-zone-icon{width:58px;height:58px;border-radius:18px;background:linear-gradient(145deg,#e8f2fc,#f8fbff);box-shadow:inset 0 0 0 1px #dce8f2}.batch-item{border-color:#dfe7ef;border-radius:16px;background:linear-gradient(180deg,#fff,#fbfcfe);box-shadow:0 4px 14px rgba(8,37,66,.025)}.batch-summary-item{border-color:#dfe7ef;border-radius:14px;background:#f8fafc}.batch-progress-panel{border-radius:16px}
.precision-panel{border-color:#d9e5ef;border-radius:20px;padding:22px;background:radial-gradient(circle at 100% 0%,rgba(40,104,166,.06),transparent 16rem),linear-gradient(180deg,#f8fbfe,#fff)}.precision-badge{border:1px solid #d4e5f7}.glossary-box{border-color:#dfe8f0;border-radius:15px}.speaker-mode-option{border-color:#d9e3ec;border-radius:15px}.speaker-mode-option:has(input:checked){border-color:#f47b20;background:#fff8f1;box-shadow:0 0 0 3px rgba(244,123,32,.075),0 8px 20px rgba(244,123,32,.06)}
.quality-card{background:radial-gradient(circle at 100% 0%,rgba(42,155,104,.055),transparent 16rem),#fff}.quality-score{border:1px solid rgba(0,0,0,.035)}.quality-meta-grid>div{background:#f8fafc;border-color:#e0e7ee;border-radius:13px}

/* Authentication: premium product-like split screen */
.auth-body{background:#edf3f8}.auth-page{grid-template-columns:minmax(0,1.08fr) minmax(440px,.92fr);background:#edf3f8}.auth-visual{align-items:center;padding:clamp(46px,6vw,78px);background:radial-gradient(circle at 10% 8%,rgba(244,123,32,.21),transparent 24rem),radial-gradient(circle at 90% 84%,rgba(68,133,195,.24),transparent 28rem),linear-gradient(145deg,#071f38 0%,#0d345d 57%,#18548a 100%)}.auth-visual::before{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-150px;top:-120px;box-shadow:0 0 0 70px rgba(255,255,255,.018),0 0 0 140px rgba(255,255,255,.012)}.auth-visual-content{max-width:610px}.auth-visual-mark{width:66px;height:66px;border-radius:20px;background:rgba(255,255,255,.12);backdrop-filter:blur(10px)}.auth-visual h2{font-size:clamp(39px,4vw,56px);line-height:1.02;text-wrap:balance}.auth-visual p{font-size:17px;line-height:1.75}.auth-benefits{gap:10px}.auth-benefits span{padding:7px 10px;border:1px solid rgba(255,255,255,.1);border-radius:999px;background:rgba(255,255,255,.055)}.auth-panel{padding:38px;background:radial-gradient(circle at 90% 8%,rgba(50,107,163,.07),transparent 20rem),#f3f6fa}.auth-card{width:min(490px,100%);padding:36px 38px;border:1px solid #dce5ee;border-radius:26px;background:#fff;box-shadow:0 28px 70px rgba(8,36,64,.13)}.auth-logo{margin-bottom:26px}.auth-logo img{width:55px;height:55px;padding:6px;border:1px solid #e0e7ee;border-radius:17px;background:#fff;box-shadow:0 9px 22px rgba(9,37,66,.08)}.auth-logo h1{font-size:34px}.auth-card .form-control{min-height:48px}.auth-card .btn{min-height:47px}.auth-footer{padding-top:18px;border-top:1px solid #edf1f5;margin-top:24px}.password-toggle{right:7px;width:38px}

/* Standalone error cards rendered inside the app layout */
.main>.container>.card:only-child{max-width:760px;margin:7vh auto 0;padding:34px}.main>.container>.card:only-child h1{margin-bottom:12px}

@media(max-width:1100px){:root{--sidebar:258px}.main{padding-left:26px;padding-right:26px}.card{padding:21px}.page-header{padding:22px}.auth-page{grid-template-columns:1fr 470px}}
@media(max-width:900px){:root{--topbar:68px}.topbar{padding:0 14px}.sidebar{top:var(--topbar);width:min(310px,88vw);padding-top:17px}.main{padding:22px 18px 46px}.page-header{border-radius:20px;padding:20px}.page-header::after{width:150px;height:150px}.card{border-radius:19px}.auth-page{grid-template-columns:1fr}.auth-panel{min-height:100vh;padding:28px 20px}.auth-card{padding:32px 30px}.auth-visual{display:none}body.app-body::before{display:none}}
@media(max-width:620px){.main{padding:15px 12px 34px}.page-header{padding:18px 17px;border-radius:18px;margin-bottom:16px}.page-header h1{font-size:29px}.page-actions{justify-content:stretch}.page-actions .btn{min-width:0}.card{padding:17px;border-radius:17px}.grid{gap:14px}.stat{min-height:138px}.stat strong{font-size:28px}.table-wrap{border-radius:14px;margin-left:-2px;margin-right:-2px}.text-box{padding:18px;font-size:14px}.wallet-balance{font-size:35px}.auth-panel{padding:18px 14px}.auth-card{padding:28px 22px;border-radius:21px}.auth-logo h1{font-size:30px}.brand-copy>span{font-size:14px}.topbar .brand img{width:38px;height:38px}}
@media(max-width:400px){.page-header{padding:16px 14px}.card{padding:15px}.auth-card{padding:24px 18px}.btn{padding-left:12px;padding-right:12px}}
