/* Biometric Studio v11.10.17 — consolidated current Studio UI.
   Legacy incremental Studio styles were merged here in their previous load order. */

/* ===== merged from app-ui-v10.css ===== */
:root{
  color-scheme:dark;
  --app-bg:#070b12;
  --app-panel:#101827;
  --app-panel-2:#0d1522;
  --app-panel-3:#172236;
  --app-line:#28364d;
  --app-line-soft:rgba(255,255,255,.075);
  --app-text:#f5f7fb;
  --app-muted:#97a5ba;
  --app-accent:#8b5cf6;
  --app-accent-2:#6d5efc;
  --app-ok:#33d6a6;
  --app-warn:#f5b64f;
  --app-danger:#ff7c8c;
  --app-radius:24px;
  --app-radius-sm:16px;
  --app-shadow:0 18px 60px rgba(0,0,0,.30);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%}
body.studio-app{background:radial-gradient(circle at 15% -10%,rgba(139,92,246,.18),transparent 26%),linear-gradient(180deg,#05070d,#0a111d);color:var(--app-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;overflow-x:hidden}
button,input,select,textarea{font:inherit}.hidden{display:none!important}
.app-header-v10{position:sticky!important;top:0!important;z-index:90!important;height:70px!important;padding:0 max(16px,calc((100vw - 1480px)/2))!important;background:rgba(7,11,18,.86)!important;border-bottom:1px solid var(--app-line-soft)!important;backdrop-filter:blur(18px)}
.app-header-v10 .logo{gap:11px}.app-header-v10 .logo b{width:42px;height:42px;border-radius:15px;background:linear-gradient(135deg,var(--app-accent),var(--app-accent-2));box-shadow:0 10px 24px rgba(109,94,252,.32)}
.app-header-v10 nav{display:flex;gap:6px}.app-header-v10 nav a{padding:9px 13px;border-radius:999px;color:var(--app-muted)}.app-header-v10 nav a.active,.app-header-v10 nav a:hover{background:rgba(139,92,246,.14);color:#fff}.app-header-v10 select{background:#0d1522!important;border:1px solid var(--app-line)!important;color:#fff!important;border-radius:14px!important;padding:10px 34px 10px 12px!important}
.app-top-ad{max-width:1180px;margin:12px auto 0;border-radius:18px;min-height:82px;background:#0d1522;border:1px dashed #33435d;color:var(--app-muted)}
.studio-shell-v10{max-width:1480px;margin:0 auto;padding:18px 16px 34px;display:grid;grid-template-columns:260px minmax(0,1fr) 190px;gap:18px;align-items:start}
.steps-v10,.main-card-v10,.desktop-ad-panel{border:1px solid var(--app-line-soft);background:linear-gradient(180deg,rgba(16,24,39,.96),rgba(10,16,29,.98));border-radius:28px;box-shadow:var(--app-shadow)}
.steps-v10{position:sticky;top:88px;padding:16px}.steps-heading{display:flex;align-items:center;justify-content:space-between;padding:4px 6px 12px}.steps-heading strong{display:none}.steps-scroll{display:grid;gap:8px}.steps-v10 .step{width:100%;display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:12px;text-align:left;padding:11px;border-radius:18px;border:1px solid transparent;background:transparent;color:#dce3ef;min-height:64px}.steps-v10 .step b{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:#172236;color:#cbd4e4}.steps-v10 .step span{display:grid;gap:2px}.steps-v10 .step strong{font-size:13px}.steps-v10 .step small{font-size:11px;color:var(--app-muted)}.steps-v10 .step.active{background:linear-gradient(135deg,rgba(139,92,246,.22),rgba(109,94,252,.10));border-color:rgba(139,92,246,.32)}.steps-v10 .step.active b{background:linear-gradient(135deg,var(--app-accent),var(--app-accent-2));color:#fff}.steps-v10 .step.done b{background:rgba(51,214,166,.14);color:var(--app-ok)}.steps-v10 .step.locked{opacity:.42}.privacy-note{margin-top:16px;padding:14px;border-radius:18px;background:rgba(255,255,255,.025);border:1px solid var(--app-line-soft)}
.main-card-v10{min-width:0;overflow:hidden}.card-head-v10{padding:24px 26px 18px!important;margin:0!important;border-bottom:1px solid var(--app-line-soft)!important}.card-head-v10 h1{font-family:inherit!important;font-size:clamp(24px,3vw,36px)!important;letter-spacing:-.045em!important;line-height:1.08!important;margin:5px 0 0!important}.eyebrow{font-size:10px!important;letter-spacing:.15em!important;text-transform:uppercase!important;color:#aab6c8!important;font-weight:800!important}.status-pill{border-radius:999px!important;background:rgba(255,255,255,.04)!important;border:1px solid var(--app-line)!important;color:#d9e1ee!important}
.screen{display:none;position:relative}.screen.active{display:block}.screen-scroll{padding:22px 26px 12px;max-height:calc(100vh - 220px);overflow:auto}.actions-sticky{position:sticky;bottom:0;z-index:25;padding:14px 26px 18px!important;margin:0!important;border-top:1px solid var(--app-line-soft);background:linear-gradient(180deg,rgba(10,16,29,.84),rgba(10,16,29,.98) 36%);backdrop-filter:blur(14px)}
.primary,.secondary,.text-button,.editor-toolbar-v10 button,.auto-align{border-radius:15px!important;min-height:44px!important;font-weight:750!important}.primary{background:linear-gradient(135deg,var(--app-accent),var(--app-accent-2))!important;box-shadow:0 10px 24px rgba(109,94,252,.24)!important}.secondary{background:#141f30!important;border:1px solid var(--app-line)!important;color:#e3e9f3!important}.text-button{color:#bfaeff!important}
.search-label{display:grid;gap:8px;color:#dbe3f0;font-size:12px;font-weight:700}.search-label input,.custom-size input,.custom-size select,.tools-dialog input,.tools-dialog select,.tools-dialog textarea{width:100%;background:#09111d!important;color:#fff!important;border:1px solid var(--app-line)!important;border-radius:15px!important;padding:13px 14px!important;outline:none}.search-label input:focus,.custom-size input:focus,.tools-dialog textarea:focus,.tools-dialog select:focus{border-color:rgba(139,92,246,.6)!important;box-shadow:0 0 0 4px rgba(139,92,246,.12)}
.standard-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important;margin-top:14px!important}.standard-card{position:relative;min-height:110px!important;text-align:left!important;border-radius:20px!important;padding:16px 16px 16px 58px!important;background:rgba(255,255,255,.025)!important;border:1px solid var(--app-line-soft)!important;color:#fff!important}.standard-card:hover{border-color:rgba(139,92,246,.34)!important;background:rgba(139,92,246,.07)!important}.standard-card i{position:absolute;left:15px;top:16px;width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:#182336;color:#c8d3e3;font-style:normal;font-size:11px;font-weight:800}.standard-card b{font-size:14px!important}.standard-card span{display:block!important;color:var(--app-muted)!important;margin-top:5px!important;font-size:11px!important}.standard-card.active{border-color:rgba(139,92,246,.55)!important;background:rgba(139,92,246,.12)!important}.selected-standard,.custom-size{margin-top:14px!important;padding:14px 16px!important;border-radius:18px!important;background:#0c1522!important;border:1px solid var(--app-line)!important;color:#dce3ef!important}.custom-size summary{cursor:pointer;font-weight:750}.custom-size>div{display:grid!important;grid-template-columns:1fr 1fr auto!important;gap:10px!important;margin-top:12px!important}.custom-size label{display:grid;gap:5px;font-size:12px}
.upload-zone{margin:0!important;min-height:420px!important;border-radius:26px!important;border:1px dashed #3a4862!important;background:radial-gradient(circle at center,rgba(139,92,246,.08),transparent 48%),#0b1420!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;padding:30px!important}.upload-orb{width:68px;height:68px;border-radius:22px;display:grid;place-items:center;font-size:30px;background:rgba(139,92,246,.14);border:1px solid rgba(139,92,246,.28);margin-bottom:14px}.upload-zone>strong{font-size:20px!important}.upload-zone>small{color:var(--app-muted)!important;margin-top:6px!important}.source-actions{display:flex!important;gap:10px!important;margin-top:22px!important}.source-preview{display:grid!important;grid-template-columns:minmax(0,520px) 1fr!important;gap:20px!important;align-items:center!important}.source-preview.hidden{display:none!important}.source-preview img{width:100%!important;max-height:64vh!important;object-fit:contain!important;border-radius:24px!important;background:#fff!important}.source-preview>div{padding:18px!important;border:1px solid var(--app-line-soft)!important;border-radius:20px!important;background:rgba(255,255,255,.025)!important}.source-preview strong,.source-preview small{display:block!important}.source-preview small{color:var(--app-muted)!important;margin:6px 0 12px!important}
.editor-screen.active{display:grid;grid-template-rows:auto minmax(0,1fr) auto;min-height:calc(100vh - 170px)}.editor-toolbar-v10{display:flex!important;align-items:center!important;gap:7px!important;padding:10px 14px!important;overflow-x:auto!important;border-bottom:1px solid var(--app-line-soft)!important;background:#0c1421!important;scrollbar-width:none}.editor-toolbar-v10::-webkit-scrollbar{display:none}.editor-toolbar-v10 button{flex:0 0 auto!important;padding:0 12px!important;background:#151f2f!important;border:1px solid var(--app-line)!important;color:#e2e8f2!important}.editor-toolbar-v10 button span{display:inline}.editor-toolbar-v10 .toolbar-accent{background:rgba(139,92,246,.14)!important;border-color:rgba(139,92,246,.28)!important}.toolbar-spacer{flex:1 1 auto}.photo-stage-v10{padding:14px 20px 12px!important;display:grid!important;grid-template-rows:auto minmax(260px,1fr) auto!important;gap:10px!important;min-height:0!important}.detection-status{min-height:42px!important;padding:10px 12px!important;border-radius:14px!important;background:#0b1421!important;border:1px solid var(--app-line-soft)!important;color:#bac6d7!important}.photo-frame{height:min(63vh,700px)!important;width:auto!important;max-width:100%!important;margin:auto!important;border-radius:22px!important;overflow:hidden!important;background:#fff!important;box-shadow:0 18px 50px rgba(0,0,0,.32)!important}.auto-align{justify-self:center!important;padding:0 16px!important;background:#151f2f!important;border:1px solid var(--app-line)!important;color:#e1e7f1!important}
.review-grid-v10{display:grid!important;grid-template-columns:minmax(260px,.9fr) minmax(280px,1.1fr)!important;gap:22px!important}.review-photo,.export-photo{position:relative;overflow:hidden;border-radius:24px;background:#fff}.review-photo img{width:100%;display:block;aspect-ratio:4/5;object-fit:contain}.review-results{padding:4px}.review-results h3{margin-top:0;font-size:22px}.check-list{display:grid;gap:9px}.check-item{border-radius:16px!important;border:1px solid var(--app-line-soft)!important;background:rgba(255,255,255,.025)!important}.check-item.pass b{background:rgba(51,214,166,.14)!important;color:var(--app-ok)!important}.check-item.fail b{background:rgba(255,124,140,.13)!important;color:var(--app-danger)!important}.review-disclaimer,.manual-review-note{padding:13px 14px;border-radius:16px;background:rgba(245,182,79,.08);border:1px solid rgba(245,182,79,.16);color:#e8cca0;font-size:12px;line-height:1.6}
.protected-preview{position:relative}.watermark-layer{position:absolute;inset:-14%;z-index:5;display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:62px;align-content:center;justify-content:center;gap:14px;transform:rotate(var(--wm-angle,-45deg));pointer-events:none;overflow:hidden}.watermark-layer span{white-space:nowrap;text-align:center;font-size:12px;font-weight:780;letter-spacing:.06em;color:rgba(40,46,62,var(--wm-opacity,.09));text-transform:uppercase}.protected-preview.is-unlocked .watermark-layer{display:none}.output-lock-badge{position:absolute;left:12px;right:12px;bottom:12px;z-index:7;padding:10px 12px;border-radius:14px;background:rgba(7,11,18,.82);backdrop-filter:blur(12px);font-size:12px;font-weight:750;color:#fff}.protected-preview.is-unlocked .output-lock-badge{display:none}
.export-card-v10{display:grid!important;grid-template-columns:minmax(260px,.85fr) minmax(300px,1.15fr)!important;gap:24px!important;align-items:start!important}.export-photo img{display:block;width:100%;aspect-ratio:4/5;object-fit:contain}.export-info h2{font-size:30px!important;line-height:1.08!important;letter-spacing:-.04em!important}.output-gate-card{margin:16px 0;padding:16px;border-radius:20px;background:linear-gradient(135deg,rgba(139,92,246,.13),rgba(255,255,255,.02));border:1px solid rgba(139,92,246,.24)}.output-gate-card p{color:var(--app-muted);line-height:1.6;font-size:13px}.output-gate-actions{display:flex;gap:10px;flex-wrap:wrap}.export-buttons{display:grid;gap:9px}.archive-panel{padding:20px!important;border:1px solid var(--app-line-soft)!important;border-radius:22px!important;background:rgba(255,255,255,.02)!important}.archive-grid{grid-template-columns:repeat(auto-fill,minmax(130px,1fr))!important}.archive-card{border-radius:16px!important;background:#0b1421!important;border-color:var(--app-line)!important}
.print-screen.active{height:calc(100vh - 150px);padding:0!important}.print-screen iframe{width:100%;height:100%;border:0;background:#07101a}.desktop-ad-panel{position:sticky;top:88px;min-height:300px;padding:14px;display:grid;place-items:center;text-align:center;color:var(--app-muted)}
.mobile-fixed-ad{position:fixed;left:8px;right:8px;bottom:8px;z-index:85;min-height:64px;border-radius:18px;background:#0d1522;border:1px solid var(--app-line);box-shadow:0 18px 50px rgba(0,0,0,.38);display:grid;place-items:center;color:var(--app-muted);overflow:hidden}.mobile-fixed-ad ins{width:100%!important;min-height:60px}.mobile-fixed-ad.hidden{display:none!important}
.app-dialog{border:0!important;padding:0!important;background:transparent!important;color:var(--app-text)!important;max-width:none!important}.app-dialog::backdrop{background:rgba(0,0,0,.68);backdrop-filter:blur(7px)}.dialog-card{width:min(92vw,540px);max-height:min(88vh,840px);overflow:auto;padding:22px;border-radius:26px;border:1px solid var(--app-line);background:linear-gradient(180deg,#121b2a,#0b1320);box-shadow:0 30px 90px rgba(0,0,0,.48)}.dialog-card--wide{width:min(94vw,900px)}.dialog-card--sheet{width:min(94vw,720px)}.modal-head{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:16px!important;margin-bottom:16px!important}.modal-head h2{margin:5px 0 0!important;font-size:26px!important;letter-spacing:-.035em!important}.dialog-close{width:40px;height:40px;border-radius:13px;border:1px solid var(--app-line);background:#151f2f;color:#fff;font-size:22px}.tools-scroll{display:grid;gap:18px}.tools-scroll h3{font-size:16px;margin:10px 0}.tool-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.tool-fields label,.tools-dialog label{display:grid;gap:7px;font-size:12px;color:#dce3ef}.tools-dialog input[type=range]{padding:0!important}.section-divider{height:1px;background:var(--app-line-soft);margin:4px 0 16px}.ai-button{width:100%;min-height:48px;border:0;border-radius:16px;background:linear-gradient(135deg,var(--app-accent),var(--app-accent-2));color:#fff;font-weight:800}.reward-card-v10 p{color:var(--app-muted);line-height:1.6}.reward-ad{min-height:210px;border:1px dashed #3d4d67;border-radius:20px;background:#09111d;display:grid;place-items:center;text-align:center;margin:16px 0;color:var(--app-muted);overflow:hidden}.manual-confirm{display:flex!important;gap:10px!important;align-items:flex-start!important;padding:14px;border-radius:16px;border:1px solid var(--app-line);background:rgba(255,255,255,.025);margin:16px 0}.manual-confirm input{width:20px;height:20px;accent-color:var(--app-accent)}.dialog-actions{display:grid;gap:9px}.ai-review-grid{gap:14px}.camera-dialog{width:100%;height:100%;max-width:none!important;max-height:none!important}.camera-shell{width:min(94vw,620px)!important;margin:auto!important;border-radius:26px!important;overflow:hidden!important}
.toast{z-index:150!important}
@media(max-width:1180px){.studio-shell-v10{grid-template-columns:230px minmax(0,1fr)}.desktop-ad-panel{display:none!important}.standard-grid{grid-template-columns:1fr!important}.review-grid-v10,.export-card-v10{grid-template-columns:1fr!important}.export-photo{max-width:420px}.source-preview{grid-template-columns:1fr!important}}
@media(max-width:820px){
  body.studio-app{padding-bottom:0!important;overflow:auto!important;height:auto!important}.app-header-v10{height:60px!important;padding:0 12px!important}.app-header-v10 .logo span{font-size:13px}.desktop-nav{display:none!important}.app-header-v10 select{max-width:112px!important;height:40px!important}.app-top-ad{display:none!important}.studio-shell-v10{display:block!important;padding:0!important;margin:0!important}.steps-v10{position:sticky!important;top:60px!important;z-index:70!important;border-radius:0!important;border-left:0!important;border-right:0!important;padding:7px 10px!important;background:rgba(9,15,25,.95)!important;backdrop-filter:blur(14px)!important}.steps-heading{display:none}.steps-scroll{display:flex!important;gap:7px!important;overflow-x:auto!important;scrollbar-width:none}.steps-scroll::-webkit-scrollbar{display:none}.steps-v10 .step{flex:0 0 48px!important;display:block!important;min-height:46px!important;height:46px!important;padding:4px!important;border-radius:14px!important}.steps-v10 .step b{width:36px!important;height:36px!important;margin:auto!important}.steps-v10 .step span{display:none!important}.privacy-note{display:none!important}.main-card-v10{border:0!important;border-radius:0!important;box-shadow:none!important;background:transparent!important;overflow:visible!important}.card-head-v10{position:sticky;top:113px;z-index:50;padding:12px 14px 10px!important;background:rgba(7,11,18,.94)!important;backdrop-filter:blur(14px)!important}.card-head-v10 .eyebrow{font-size:8px!important}.card-head-v10 h1{font-size:20px!important}.status-pill{font-size:10px!important;padding:7px 9px!important}.screen.active{min-height:calc(100dvh - 168px);padding-bottom:74px}.screen-scroll{padding:14px 12px 18px!important;max-height:none!important;overflow:visible!important}.actions-sticky{position:fixed!important;left:0;right:0;bottom:0;z-index:80!important;padding:10px 12px calc(10px + env(safe-area-inset-bottom))!important;background:rgba(8,13,22,.95)!important;box-shadow:0 -12px 30px rgba(0,0,0,.24)!important}.has-mobile-ad .actions-sticky{bottom:76px!important}.actions-sticky button{min-width:0!important;min-height:46px!important;font-size:12px!important;padding:0 12px!important}.standard-grid{grid-template-columns:1fr!important;gap:8px!important}.standard-card{min-height:82px!important;padding:12px 12px 12px 52px!important;border-radius:17px!important}.standard-card i{left:11px;top:12px}.selected-standard{font-size:12px}.custom-size>div{grid-template-columns:1fr 1fr!important}.custom-size button{grid-column:1/-1}.upload-zone{min-height:calc(100dvh - 300px)!important;padding:22px 14px!important;border-radius:22px!important}.source-actions{display:grid!important;width:100%!important}.source-actions button{width:100%!important}.source-preview{grid-template-columns:1fr!important}.source-preview img{max-height:55dvh!important}.editor-screen.active{display:grid!important;grid-template-rows:auto minmax(0,1fr);min-height:calc(100dvh - 168px);padding-bottom:76px}.editor-toolbar-v10{position:sticky!important;top:177px!important;z-index:45!important;padding:7px 9px!important;background:#0a111d!important}.editor-toolbar-v10 button{height:40px!important;min-height:40px!important;padding:0 10px!important}.editor-toolbar-v10 button span{display:none}.editor-toolbar-v10 .toolbar-accent span{display:inline}.photo-stage-v10{padding:9px 10px 12px!important;grid-template-rows:auto minmax(300px,1fr) auto!important}.detection-status{font-size:11px!important;min-height:38px!important}.photo-frame{height:min(58dvh,620px)!important;max-height:none!important}.auto-align{min-height:42px!important;font-size:11px!important}.review-grid-v10,.export-card-v10{grid-template-columns:1fr!important;gap:14px!important}.review-photo,.export-photo{max-width:min(100%,430px);margin:0 auto;width:100%}.export-info h2{font-size:25px!important}.output-gate-actions{display:grid}.output-gate-actions button{width:100%}.archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.print-screen.active{height:calc(100dvh - 165px)!important;padding-bottom:0!important}.tool-fields{grid-template-columns:1fr!important}.dialog-card,.dialog-card--wide,.dialog-card--sheet{width:100vw!important;max-height:88dvh!important;border-radius:24px 24px 0 0!important;padding:18px 14px calc(18px + env(safe-area-inset-bottom))!important}.app-dialog{margin:auto 0 0!important;width:100%!important;max-height:100dvh!important}.app-dialog[open]{display:flex!important;align-items:flex-end!important}.reward-ad{min-height:180px}.mobile-fixed-ad{display:grid}.mobile-fixed-ad.hidden{display:none!important}.has-mobile-ad{padding-bottom:76px!important}.has-mobile-ad .screen.active{padding-bottom:150px!important}.watermark-layer{grid-template-columns:repeat(2,1fr);grid-auto-rows:52px}.watermark-layer span{font-size:11px}
}
@media(max-width:390px){.card-head-v10 h1{font-size:18px!important}.status-pill{display:none!important}.app-header-v10 .logo span{display:none}.editor-toolbar-v10 .toolbar-accent span{display:none}.actions-sticky{gap:7px!important}.actions-sticky button{padding:0 9px!important}.archive-grid{grid-template-columns:1fr 1fr!important}}

.manual-review-action{background:linear-gradient(135deg,#f6b64f,#ee9a2b)!important;color:#151515!important;box-shadow:0 10px 24px rgba(238,154,43,.18)!important}

/* v11.8.4 inline tool panel */
.editor-inline-panel{display:grid;gap:12px;padding:14px;border:1px solid var(--app-line-soft);border-radius:18px;background:linear-gradient(180deg,#101a29,#0b1320);box-shadow:0 16px 40px rgba(0,0,0,.22)}
.editor-inline-panel.hidden{display:none!important}
.editor-inline-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.editor-inline-head strong{display:block;font-size:16px;color:#eef2ff;margin-top:4px}
.editor-inline-mount{display:grid;gap:14px}
.editor-inline-panel .tool-tabs{display:flex;flex-wrap:wrap;gap:8px}
.editor-inline-panel .tool-tab{padding:9px 12px;border-radius:12px;border:1px solid var(--app-line);background:#121c2c;color:#dbe3f0;font-weight:700}
.editor-inline-panel .tool-tab.is-active{background:rgba(139,92,246,.18);border-color:rgba(139,92,246,.4);color:#fff}
.editor-inline-panel .tool-section{display:none}
.editor-inline-panel .tool-section.is-active{display:grid;gap:12px}
.editor-inline-panel .tool-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
.stage-tool-item.is-active{border-color:rgba(139,92,246,.45)!important;background:rgba(139,92,246,.12)!important}
@media (max-width:900px){
  .editor-inline-panel .tool-fields{grid-template-columns:1fr}
}

/* v11.9 stable editor dock: fixed footprint, no layout jumping */
.photo-stage-v10{position:relative!important;grid-template-rows:auto auto 150px minmax(260px,1fr) auto!important}
.editor-inline-panel{display:grid!important;grid-template-rows:auto minmax(0,1fr);height:150px;min-height:150px;max-height:150px;overflow:hidden;padding:10px 12px!important;border-radius:16px!important;box-shadow:none!important}
.editor-inline-panel.hidden{display:grid!important}
.editor-inline-head{min-height:34px;align-items:center}
.editor-inline-head .eyebrow{display:none}
.editor-inline-head strong{font-size:13px;margin:0}
.editor-inline-head .dialog-close{width:32px;height:32px;font-size:18px}
.editor-inline-mount{min-height:0;overflow:hidden}
.editor-inline-panel .tool-tabs{display:none!important}
.editor-inline-panel .tools-scroll{display:block!important;height:100%;max-height:100%;overflow:auto!important;padding:2px 4px 4px 0;scrollbar-width:thin}
.editor-inline-panel .tool-section{display:none!important;margin:0!important}
.editor-inline-panel .tool-section.is-active{display:grid!important;gap:10px!important}
.editor-inline-panel .tool-section h3{font-size:13px!important;margin:0!important}
.editor-inline-panel .acceptance-rules{max-height:68px;overflow:auto;margin:0;padding-left:18px;font-size:10px;line-height:1.4}
.editor-inline-panel .tool-fields{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:9px!important}
.editor-inline-panel .tool-fields label{font-size:10px!important}
.editor-inline-panel input,.editor-inline-panel select,.editor-inline-panel textarea{min-height:34px!important;padding:7px 9px!important;border-radius:10px!important}
.inline-size-controls{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:end}
.inline-size-controls label{display:grid;gap:5px;font-size:10px;color:#cbd5e1}
.inline-size-controls .secondary{height:36px!important}
.background-swatches{display:flex;gap:8px;align-items:center}
.background-swatches button{width:34px;height:34px;border-radius:50%;border:2px solid rgba(255,255,255,.18);box-shadow:0 0 0 1px rgba(0,0,0,.35);cursor:pointer}
.background-swatches button[data-bg="#ffffff"]{background:#fff}
.background-swatches button[data-bg="#f7f7f5"]{background:#f7f7f5}
.background-swatches button[data-bg="#eef1f4"]{background:#eef1f4}
.background-swatches button[data-bg="#e8eef4"]{background:#e8eef4}
.background-swatches button.is-active{outline:3px solid rgba(139,92,246,.45)}
.ai-inline-review{display:grid;gap:8px;margin-top:8px}
.ai-inline-compare{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ai-inline-compare figure{margin:0;display:grid;gap:4px}
.ai-inline-compare figcaption{font-size:9px;color:#94a3b8;text-transform:uppercase;letter-spacing:.08em}
.ai-inline-compare img{width:100%;height:86px;object-fit:contain;background:#fff;border-radius:10px}
.ai-inline-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.ai-inline-actions button{height:36px!important}
.stage-tool-item.is-active{border-color:rgba(139,92,246,.55)!important;background:rgba(139,92,246,.14)!important;box-shadow:inset 0 0 0 1px rgba(139,92,246,.08)}
@media(max-width:1100px){
  .editor-inline-panel .tool-fields{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .photo-stage-v10{grid-template-rows:auto auto minmax(300px,1fr) auto!important}
  .editor-inline-panel{display:none!important;position:fixed;left:8px;right:8px;bottom:calc(var(--mobile-actions-height,70px) + var(--mobile-ad-height,0px) + 8px);z-index:120;height:auto;min-height:0;max-height:48dvh;padding:12px!important;border-radius:20px!important;box-shadow:0 20px 70px rgba(0,0,0,.55)!important}
  .editor-inline-panel.is-open{display:grid!important}
  .editor-inline-panel .tools-scroll{max-height:calc(48dvh - 48px)}
  .editor-inline-panel .tool-fields{grid-template-columns:1fr 1fr!important}
  .inline-size-controls{grid-template-columns:1fr 1fr}
  .inline-size-controls .secondary{grid-column:1/-1}
}
.editor-inline-panel.is-collapsed{visibility:hidden;opacity:0;pointer-events:none}
@media(max-width:760px){.editor-inline-panel.is-collapsed{display:none!important}}

/* v11.8.5 final prepare dock + preview stability overrides */
.photo-stage-v10{position:relative!important;grid-template-rows:auto auto minmax(260px,1fr) auto!important;align-items:start!important}
.editor-inline-panel{display:none!important;position:absolute!important;top:106px!important;right:12px!important;width:min(380px,42%)!important;max-width:380px!important;max-height:calc(100% - 172px)!important;height:auto!important;min-height:220px!important;padding:12px!important;border-radius:18px!important;box-shadow:0 24px 60px rgba(0,0,0,.35)!important;background:linear-gradient(180deg,#101a29,#0b1320)!important;overflow:hidden!important;z-index:30!important}
.editor-inline-panel.hidden,.editor-inline-panel.is-collapsed{display:none!important}
.editor-inline-panel.is-open{display:grid!important;grid-template-rows:auto minmax(0,1fr)!important}
.editor-inline-head{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:40px!important}
.editor-inline-head .eyebrow{display:block!important}
.editor-inline-head strong{font-size:15px!important;margin:2px 0 0!important}
.editor-inline-mount{min-height:0!important;overflow:hidden!important}
.editor-inline-panel .tool-tabs{display:none!important}
.editor-inline-panel .tools-scroll{display:block!important;max-height:100%!important;overflow:auto!important;padding-right:4px!important}
.editor-inline-panel .tool-section{display:none!important}
.editor-inline-panel .tool-section.is-active{display:grid!important;gap:12px!important}
.editor-inline-panel .tool-fields{grid-template-columns:1fr!important;gap:10px!important}
.editor-inline-panel .acceptance-rules{max-height:none!important;overflow:visible!important;font-size:12px!important;line-height:1.5!important}
.editor-inline-panel input,.editor-inline-panel select,.editor-inline-panel textarea{min-height:40px!important}
.stage-tools-panel{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:10px!important}
.stage-tool-item{min-width:0!important}
.stage-tool-item svg{flex:0 0 18px}
.stage-tool-item.is-active{border-color:rgba(139,92,246,.52)!important;background:rgba(139,92,246,.14)!important;box-shadow:inset 0 0 0 1px rgba(139,92,246,.1)!important}
.photo-frame{position:relative!important;z-index:1!important}
.review-photo img,.export-photo img,.ai-review-photo img,.source-photo-preview img{object-fit:contain!important;background:#fff!important}
@media(max-width:1180px){
  .editor-inline-panel{width:min(340px,45%)!important}
  .stage-tools-panel{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:900px){
  .stage-tools-panel{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .photo-stage-v10{grid-template-rows:auto auto minmax(300px,1fr) auto!important}
  .editor-inline-panel{display:none!important;position:fixed!important;left:10px!important;right:10px!important;top:auto!important;bottom:calc(var(--mobile-actions-height,70px) + var(--mobile-ad-height,0px) + 10px)!important;width:auto!important;max-width:none!important;max-height:50dvh!important;min-height:0!important;border-radius:20px!important;z-index:120!important}
  .editor-inline-panel.is-open{display:grid!important}
  .editor-inline-panel .tool-fields{grid-template-columns:1fr 1fr!important}
}

/* v11.9.1 final prepare layout + preview corrections */
.photo-stage-v10{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr)!important;
  grid-template-rows:auto auto minmax(420px,1fr) auto!important;
  gap:12px!important;
  align-items:start!important;
  overflow:visible!important;
}
.stage-tools-panel{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:10px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:2px 2px 8px!important;
  scrollbar-width:thin!important;
}
.stage-tool-item{
  flex:0 0 148px!important;
  min-height:72px!important;
  padding:10px 12px!important;
  border-radius:14px!important;
}
.stage-tool-item small{display:block!important;line-height:1.35!important}
.photo-frame{
  width:min(100%, 420px)!important;
  height:auto!important;
  aspect-ratio:var(--photo-aspect, 5 / 6)!important;
  min-height:420px!important;
  justify-self:center!important;
  align-self:center!important;
  background:#fff!important;
}
.photo-frame img{
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  transform-origin:center center!important;
}
.editor-inline-panel{
  display:none!important;
  position:absolute!important;
  top:94px!important;
  right:0!important;
  width:min(360px,38vw)!important;
  max-width:360px!important;
  max-height:min(560px, calc(100% - 150px))!important;
  min-height:240px!important;
  padding:12px!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#101a29,#0b1320)!important;
  box-shadow:0 24px 60px rgba(0,0,0,.35)!important;
  overflow:hidden!important;
  z-index:24!important;
}
.editor-inline-panel.hidden,.editor-inline-panel.is-collapsed{display:none!important}
.editor-inline-panel.is-open{display:grid!important;grid-template-rows:auto minmax(0,1fr)!important}
.editor-inline-panel .tools-scroll{overflow:auto!important;max-height:100%!important;padding-right:2px!important}
.editor-inline-panel .tool-section.is-active{display:grid!important;gap:12px!important}
.editor-inline-panel .tool-fields{grid-template-columns:1fr!important;gap:10px!important}
.editor-inline-panel input,.editor-inline-panel select,.editor-inline-panel textarea{min-height:40px!important}
.editor-inline-panel .tool-tabs{display:none!important}
.editor-inline-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}
.editor-inline-head .dialog-close{flex:0 0 auto!important}
@media (min-width: 1181px){
  .photo-stage-v10.has-inline-panel .photo-frame{justify-self:start!important;margin-left:12px!important;margin-right:380px!important}
}
@media (max-width: 1180px){
  .editor-inline-panel{width:min(340px,42vw)!important}
  .stage-tool-item{flex-basis:136px!important}
  .photo-frame{width:min(100%, 390px)!important}
}
@media (max-width: 900px){
  .stage-tool-item{flex-basis:128px!important;min-height:68px!important}
  .editor-inline-panel{width:min(320px,48vw)!important}
}
@media (max-width: 760px){
  .photo-stage-v10{grid-template-rows:auto auto minmax(320px,1fr) auto!important}
  .photo-frame{width:min(100%, 360px)!important;min-height:360px!important}
  .stage-tools-panel{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow:visible!important}
  .stage-tool-item{flex:initial!important;min-width:0!important}
  .editor-inline-panel{position:fixed!important;left:10px!important;right:10px!important;top:auto!important;bottom:calc(var(--mobile-actions-height,70px) + var(--mobile-ad-height,0px) + 8px)!important;width:auto!important;max-width:none!important;max-height:52dvh!important;min-height:0!important;z-index:120!important}
  .editor-inline-panel.is-open{display:grid!important}
  .editor-inline-panel .tool-fields{grid-template-columns:1fr 1fr!important}
}

/* ===== merged from mobile-hotfixes-v11.css ===== */

.ad-fallback{width:100%;min-height:inherit;height:100%;display:grid;place-items:center;gap:4px;padding:12px 14px;text-align:center;background:linear-gradient(135deg,rgba(109,94,252,.12),rgba(58,213,206,.08));border:1px dashed rgba(140,149,173,.38);border-radius:inherit;color:#cfd7e6}
.ad-fallback small{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:#95a2b8;font-weight:800}
.ad-fallback strong{font-size:14px;line-height:1.35;color:#f5f7fb}
.ad-fallback span{font-size:12px;line-height:1.55;color:#aeb8c8;max-width:38ch}
.reward-ad .ad-fallback{border-radius:16px;border-style:solid}
@media (max-width:760px){
  .actions-sticky{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px!important;align-items:stretch!important}
  .actions-sticky button{width:100%!important}
  .actions-sticky button:only-child,.actions-sticky button:last-child:nth-child(3){grid-column:1/-1}
  .editor-toolbar-v10{display:flex!important;flex-wrap:wrap!important;gap:8px!important;height:auto!important;border-radius:18px!important;padding:10px!important;margin:0 0 10px!important;border:1px solid var(--app-line)!important}
  .editor-toolbar-v10 .toolbar-spacer{display:none!important}
  .editor-toolbar-v10 button{display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;flex:1 1 calc(25% - 8px)!important;min-width:0!important;height:42px!important;padding:0 10px!important;font-size:12px!important}
  .editor-toolbar-v10 button span{display:none!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  #autoPrepare span,#removeBackground span,#undoEdit span,#resetEditor span,#openEditorTools span,#openAiTools span{display:inline!important}
  #autoPrepare,#removeBackground,#openEditorTools,#openAiTools{flex-basis:calc(50% - 8px)!important}
  .source-actions,.output-gate-actions,.export-buttons,.export-secondary-actions{display:grid!important;grid-template-columns:1fr!important;gap:9px!important}
  .mobile-fixed-ad{left:10px!important;right:10px!important;bottom:10px!important;min-height:72px!important;border-radius:18px!important}
  .mobile-fixed-ad ins{min-height:68px!important}
  .has-mobile-ad .actions-sticky{bottom:86px!important}
  .has-mobile-ad .screen.active,.has-mobile-ad .editor-screen.active{padding-bottom:170px!important}
  .review-grid-v10,.export-card-v10{padding-bottom:6px!important}
  .output-gate-card{scroll-margin-top:132px!important}
  .tool-fields{display:grid!important;grid-template-columns:1fr!important;gap:10px!important}
  .tool-fields label{min-width:0!important}
}
@media (max-width:430px){
  .editor-toolbar-v10 button{flex-basis:calc(50% - 8px)!important}
}
@media (max-width:900px){
  .print-gate>div{grid-template-columns:1fr!important}
  .print-actions{position:sticky!important;bottom:0!important;z-index:20!important;padding-bottom:calc(8px + env(safe-area-inset-bottom))!important;background:rgba(8,13,22,.94)!important;backdrop-filter:blur(14px)!important}
  .print-actions button{min-height:48px!important}
}

/* Restored biometric loading / analysis effect */
.process-overlay{position:absolute!important;inset:0!important;z-index:40!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:10px!important;overflow:hidden!important;background:linear-gradient(180deg,rgba(5,10,17,.72),rgba(15,12,40,.84))!important;backdrop-filter:blur(2px)!important;color:#fff!important;isolation:isolate}
.process-overlay.hidden{display:none!important}
.process-overlay:before{content:"";position:absolute;inset:0;z-index:-2;background-image:linear-gradient(rgba(94,234,212,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(94,234,212,.055) 1px,transparent 1px);background-size:26px 26px;animation:analysisGrid 5s linear infinite}
.process-overlay:after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at center,transparent 20%,rgba(4,8,15,.48) 78%)}
.scan-line{position:absolute!important;left:5%!important;right:5%!important;height:2px!important;background:linear-gradient(90deg,transparent,#4cf4df,#fff,#8a78ff,transparent)!important;box-shadow:0 0 18px #4cf4df,0 0 30px rgba(139,92,246,.45)!important;animation:faceScanV11 1.6s ease-in-out infinite!important}
.face-scan{position:relative!important;width:42%!important;height:58%!important;max-width:190px!important;max-height:260px!important;border:1px solid rgba(94,234,212,.58)!important;border-radius:48% 48% 43% 43%!important;box-shadow:inset 0 0 36px rgba(94,234,212,.06),0 0 28px rgba(94,234,212,.09)!important}
.face-scan i{position:absolute!important;width:24px!important;height:24px!important;border-color:#a995ff!important;border-style:solid!important}
.face-scan i:nth-child(1){left:-2px;top:-2px;border-width:2px 0 0 2px;border-radius:8px 0 0}
.face-scan i:nth-child(2){right:-2px;top:-2px;border-width:2px 2px 0 0;border-radius:0 8px 0 0}
.face-scan i:nth-child(3){left:-2px;bottom:-2px;border-width:0 0 2px 2px;border-radius:0 0 0 8px}
.face-scan i:nth-child(4){right:-2px;bottom:-2px;border-width:0 2px 2px 0;border-radius:0 0 8px}
.process-overlay strong{max-width:82%;font-size:13px!important;line-height:1.45!important;text-align:center!important;letter-spacing:.01em!important}
.process-overlay span{font-size:12px!important;color:#75efe1!important;font-weight:800!important;padding:5px 9px!important;border-radius:999px!important;background:rgba(5,12,20,.58)!important;border:1px solid rgba(94,234,212,.18)!important}
@keyframes faceScanV11{0%,100%{top:10%;opacity:.55}50%{top:87%;opacity:1}}
@keyframes analysisGrid{from{background-position:0 0,0 0}to{background-position:0 26px,26px 0}}

/* Optional SEO copy managed from Admin without changing the application layout */
.managed-app-content{max-width:1180px;margin:18px auto 40px;padding:0 14px;color:#dfe6f1}
.managed-app-content__inner{padding:22px;border:1px solid rgba(255,255,255,.08);border-radius:24px;background:linear-gradient(180deg,rgba(17,24,39,.94),rgba(10,16,29,.98));box-shadow:0 16px 48px rgba(0,0,0,.24)}
.managed-app-content h2{margin:0 0 12px;font-size:clamp(22px,3vw,34px);letter-spacing:-.035em}
.managed-app-content p,.managed-app-content li{color:#aeb8c8;line-height:1.75}
.managed-app-content img{max-width:100%;height:auto;border-radius:16px}
@media(max-width:760px){.process-overlay strong{font-size:12px!important}.face-scan{width:48%!important;height:56%!important}.managed-app-content{margin:12px auto 100px;padding:0 10px}.managed-app-content__inner{padding:17px;border-radius:20px}}
.review-photo{position:relative!important;overflow:hidden!important}
.review-analysis-overlay{position:absolute;inset:0;z-index:25;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;overflow:hidden;background:linear-gradient(180deg,rgba(5,10,17,.70),rgba(15,12,40,.84));backdrop-filter:blur(2px);color:#fff}
.review-analysis-overlay.hidden{display:none!important}
.review-analysis-overlay:before{content:"";position:absolute;inset:0;z-index:-2;background-image:linear-gradient(rgba(94,234,212,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(94,234,212,.055) 1px,transparent 1px);background-size:26px 26px;animation:analysisGrid 5s linear infinite}
.review-analysis-overlay:after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(circle at center,transparent 20%,rgba(4,8,15,.48) 78%)}
.review-analysis-overlay strong{max-width:82%;font-size:13px;line-height:1.45;text-align:center}
.review-analysis-overlay>span{font-size:12px;color:#75efe1;font-weight:800;padding:5px 9px;border-radius:999px;background:rgba(5,12,20,.58);border:1px solid rgba(94,234,212,.18)}


/* v11.1 unified preview protection */
.source-photo-preview{position:relative!important;overflow:hidden!important;border-radius:24px!important;background:#fff!important;min-width:0!important}
.source-preview>.source-photo-preview{padding:0!important;border:0!important;background:#fff!important}
.source-preview>.source-preview-meta{padding:18px!important;border:1px solid var(--app-line-soft)!important;border-radius:20px!important;background:rgba(255,255,255,.025)!important;max-width:none!important}
.source-photo-preview img{display:block!important;width:100%!important;max-height:64vh!important;object-fit:contain!important;border-radius:0!important;background:#fff!important}
.photo-frame>.editor-watermark-layer{z-index:5!important}
.photo-frame .guide{z-index:6!important}
.photo-frame .selection{z-index:6!important}
.ai-review-photo{position:relative;overflow:hidden;border-radius:12px;background:#fff}
.ai-review-photo img{border-radius:0!important}
.archive-photo-preview{position:relative;overflow:hidden;border-radius:12px;background:#fff}
.archive-photo-preview img{display:block;width:100%;height:auto}
.archive-card .watermark-layer{grid-template-columns:repeat(2,1fr);grid-auto-rows:34px;gap:4px}
.archive-card .watermark-layer span{font-size:8px;letter-spacing:.05em}
.print-protected-preview{position:relative;overflow:hidden;background:#fff}
.print-thumb-watermark{position:absolute;inset:-20%;z-index:4;display:grid;grid-template-columns:repeat(2,1fr);grid-auto-rows:22px;align-content:center;gap:3px;transform:rotate(-45deg);pointer-events:none;overflow:hidden}
.print-thumb-watermark span{font-size:7px;font-weight:900;letter-spacing:.05em;text-align:center;text-transform:uppercase;white-space:nowrap;color:rgba(25,32,45,.18)}
.output-unlocked .print-thumb-watermark{display:none}
.file-chip-preview{width:46px;height:54px;border-radius:10px}
.file-chip-preview img{width:100%!important;height:100%!important;border-radius:0!important;object-fit:cover!important}
.queue-photo-preview{width:48px;height:58px;border-radius:9px}
.queue-photo-preview img{width:100%!important;height:100%!important;border-radius:0!important;object-fit:cover!important}
@media(max-width:760px){
  .source-photo-preview img{max-height:55dvh!important}
  .archive-card .watermark-layer{grid-auto-rows:28px}
  .archive-card .watermark-layer span{font-size:7px}
  .queue-photo-preview{width:44px;height:54px}
}


/* v11.2 mobile ad collision protection */
:root{--mobile-ad-height:0px;--mobile-action-height:64px}
@media(max-width:760px){
  .mobile-fixed-ad{
    z-index:80!important;
    left:10px!important;
    right:10px!important;
    bottom:calc(8px + env(safe-area-inset-bottom))!important;
    min-height:50px!important;
    height:auto!important;
    max-height:90px!important;
    overflow:hidden!important;
    contain:layout paint!important;
  }
  .mobile-fixed-ad ins,.mobile-fixed-ad .ad-fallback{
    width:100%!important;
    min-height:50px!important;
    max-height:90px!important;
    overflow:hidden!important;
  }
  .actions-sticky{
    z-index:92!important;
  }
  .has-mobile-ad .actions-sticky{
    bottom:calc(var(--mobile-ad-height,0px) + 16px + env(safe-area-inset-bottom))!important;
  }
  .has-mobile-ad .screen.active,
  .has-mobile-ad .editor-screen.active{
    padding-bottom:calc(var(--mobile-ad-height,0px) + var(--mobile-action-height,64px) + 38px + env(safe-area-inset-bottom))!important;
  }
  .has-mobile-ad .screen-scroll{
    padding-bottom:calc(var(--mobile-ad-height,0px) + var(--mobile-action-height,64px) + 28px)!important;
  }
  .has-mobile-ad .main-card-v10{
    padding-bottom:calc(var(--mobile-ad-height,0px) + 12px)!important;
  }
  .has-mobile-ad .mobile-fixed-ad{
    pointer-events:auto!important;
  }
}

/* v11.3 fixed application viewport + full-image watermark */
:root{
  --app-header-height:72px;
  --app-top-ad-space:0px;
  --app-shell-gap:18px;
}

body.studio-app{
  height:100dvh!important;
  min-height:100dvh!important;
  overflow:hidden!important;
}

.app-header-v10{flex:0 0 auto!important}
.app-top-ad.hidden{display:none!important}

.studio-shell-v10{
  height:calc(100dvh - var(--app-header-height) - var(--app-top-ad-space) - var(--app-shell-gap))!important;
  min-height:0!important;
  margin-bottom:0!important;
  align-items:stretch!important;
}
.steps-v10,
.main-card-v10,
.desktop-ad-panel{
  min-height:0!important;
  max-height:100%!important;
}
.steps-v10{overflow:auto!important}
.main-card-v10{
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr)!important;
  overflow:hidden!important;
}
.card-head-v10{
  position:relative!important;
  top:auto!important;
  flex:0 0 auto!important;
}
.screen{
  min-height:0!important;
}
.screen.active:not(.editor-screen):not(.print-screen){
  display:grid!important;
  grid-template-rows:minmax(0,1fr) auto!important;
  height:100%!important;
  min-height:0!important;
  overflow:hidden!important;
  padding-bottom:0!important;
}
.screen-scroll{
  min-height:0!important;
  max-height:none!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  scrollbar-gutter:stable!important;
}
.actions-sticky{
  position:relative!important;
  left:auto!important;
  right:auto!important;
  bottom:auto!important;
  flex:0 0 auto!important;
  margin:0!important;
}
.editor-screen.active{
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  height:100%!important;
  min-height:0!important;
  overflow:hidden!important;
  padding-bottom:0!important;
}
.editor-toolbar-v10{
  position:relative!important;
  top:auto!important;
  flex:0 0 auto!important;
}
.photo-stage-v10{
  min-height:0!important;
  height:100%!important;
  overflow:hidden!important;
}
.photo-frame{
  max-height:100%!important;
  max-width:100%!important;
}
.print-screen.active{
  height:100%!important;
  min-height:0!important;
  overflow:hidden!important;
}
.print-screen iframe{height:100%!important;min-height:0!important}

/* Watermark is intentionally drawn over the complete visible photo, not just blank background. */
.watermark-layer{
  inset:-16%!important;
  z-index:14!important;
  grid-template-columns:repeat(3,minmax(92px,1fr))!important;
  grid-auto-rows:56px!important;
  gap:10px 12px!important;
  opacity:1!important;
  mix-blend-mode:normal!important;
}
.watermark-layer span{
  color:rgba(66,74,102,calc(var(--wm-opacity,.09) + .02))!important;
  text-shadow:0 1px 1px rgba(255,255,255,.22),0 1px 1px rgba(0,0,0,.22)!important;
  -webkit-text-stroke:0 rgba(0,0,0,0);
  font-weight:760!important;
}
.photo-frame>.editor-watermark-layer{z-index:14!important}
.photo-frame .guide{z-index:16!important}
.photo-frame .selection{z-index:17!important}
.photo-frame #brushCanvas{z-index:18!important}
.photo-frame .landmark{z-index:20!important}
.photo-frame .process-overlay{z-index:40!important}
.review-analysis-overlay{z-index:40!important}

@media(max-width:820px){
  :root{
    --app-header-height:60px;
    --app-shell-gap:0px;
  }
  body.studio-app{padding-bottom:0!important}
  .studio-shell-v10{
    display:grid!important;
    grid-template-rows:auto minmax(0,1fr)!important;
    height:calc(100dvh - var(--app-header-height) - var(--mobile-ad-height,0px) - var(--mobile-ad-safe-gap,0px) - env(safe-area-inset-bottom))!important;
    margin:0!important;
    padding:0!important;
  }
  body:not(.has-mobile-ad) .studio-shell-v10{
    height:calc(100dvh - var(--app-header-height))!important;
  }
  .steps-v10{
    position:relative!important;
    top:auto!important;
    overflow:hidden!important;
  }
  .steps-scroll{overflow-x:auto!important;overflow-y:hidden!important}
  .main-card-v10{
    min-height:0!important;
    height:100%!important;
    overflow:hidden!important;
  }
  .card-head-v10{
    position:relative!important;
    top:auto!important;
    padding:10px 12px 9px!important;
  }
  .screen.active:not(.editor-screen):not(.print-screen){
    min-height:0!important;
    height:100%!important;
    padding-bottom:0!important;
  }
  .screen-scroll{
    padding:12px 12px 12px!important;
    overflow:auto!important;
  }
  .actions-sticky{
    position:relative!important;
    bottom:auto!important;
    padding:9px 12px calc(9px + env(safe-area-inset-bottom))!important;
    box-shadow:0 -10px 24px rgba(0,0,0,.18)!important;
  }
  .has-mobile-ad .actions-sticky{bottom:auto!important}
  .has-mobile-ad .screen.active,
  .has-mobile-ad .editor-screen.active,
  .has-mobile-ad .screen-scroll,
  .has-mobile-ad .main-card-v10{
    padding-bottom:0!important;
  }
  .editor-screen.active{
    height:100%!important;
    min-height:0!important;
    padding-bottom:0!important;
  }
  .editor-toolbar-v10{
    position:relative!important;
    top:auto!important;
    margin:0!important;
    max-height:104px!important;
    overflow:auto!important;
  }
  .photo-stage-v10{
    min-height:0!important;
    height:100%!important;
    padding:8px 10px 9px!important;
    gap:7px!important;
  }
  .detection-status{min-height:34px!important;padding:7px 9px!important}
  .auto-align{min-height:38px!important}
  .upload-zone{
    min-height:0!important;
    height:100%!important;
  }
  .source-preview{
    height:100%!important;
    min-height:0!important;
    overflow:auto!important;
    align-content:center!important;
  }
  .source-photo-preview img{max-height:42dvh!important}
  .review-grid-v10,
  .export-card-v10{
    height:100%!important;
    min-height:0!important;
    overflow:auto!important;
    align-content:start!important;
  }
  .review-photo,.export-photo{max-width:min(88vw,360px)!important}
  .review-photo img,.export-photo img{max-height:42dvh!important}
  .watermark-layer{
    grid-template-columns:repeat(3,minmax(70px,1fr))!important;
    grid-auto-rows:42px!important;
    gap:6px!important;
  }
  .watermark-layer span{font-size:10px!important}
}

@media(max-width:430px){
  .card-head-v10 h1{font-size:17px!important}
  .card-head-v10{padding-top:8px!important;padding-bottom:8px!important}
  .editor-toolbar-v10{max-height:96px!important}
  .review-photo img,.export-photo img{max-height:37dvh!important}
}

/* v11.3 print builder: fixed app shell, internal panel scrolling only */
body.print-app{
  height:100dvh!important;
  min-height:100dvh!important;
  overflow:hidden!important;
}
.print-shell{
  height:calc(100dvh - 78px)!important;
  min-height:0!important;
  margin-bottom:0!important;
}
.print-controls{
  max-height:100%!important;
  min-height:0!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
}
.preview-area{
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
  overflow:hidden!important;
}
.stage{
  min-height:0!important;
  height:100%!important;
  overflow:auto!important;
}
.print-thumb-watermark span{
  color:rgba(111,88,214,.24)!important;
  text-shadow:0 1px 1px rgba(255,255,255,.45),0 1px 2px rgba(0,0,0,.45)!important;
}
@media(max-width:900px){
  .print-shell{
    height:calc(100dvh - 60px)!important;
    display:grid!important;
    grid-template-rows:minmax(250px,46%) minmax(0,54%)!important;
    overflow:hidden!important;
    padding:0!important;
  }
  .print-controls{
    min-height:0!important;
    max-height:none!important;
    overflow:auto!important;
    border-bottom:1px solid var(--line-soft)!important;
  }
  .preview-area{
    min-height:0!important;
    height:100%!important;
    overflow:hidden!important;
  }
  .stage{min-height:0!important;height:100%!important;padding:24px!important}
  .embedded.print-app .print-shell,
  body.embedded.print-app .print-shell{
    height:100dvh!important;
    grid-template-rows:minmax(250px,46%) minmax(0,54%)!important;
  }
}

.manual-review-action{background:linear-gradient(135deg,#f6b64f,#ee9a2b)!important;color:#151515!important;box-shadow:0 10px 24px rgba(238,154,43,.18)!important}

/* v11.6 studio refinement */
.protected-preview{position:relative;user-select:none;-webkit-user-select:none}
.protected-preview img{pointer-events:none!important;-webkit-user-drag:none!important;user-select:none!important}
.review-photo,.export-photo,.source-photo-preview,.archive-photo-preview,.ai-review-photo{background:#fff!important}
.watermark-layer{z-index:12!important;display:grid!important}
.watermark-layer span{font-size:12px!important;font-weight:800!important;letter-spacing:.05em!important;color:rgba(63,72,96,var(--wm-opacity,.085))!important;text-shadow:0 1px 1px rgba(255,255,255,.22),0 1px 1px rgba(0,0,0,.14)!important}
.review-photo img,.export-photo img{width:100%!important;height:100%!important;object-fit:contain!important;display:block!important}
.review-photo,.export-photo{display:flex!important;align-items:center!important;justify-content:center!important;min-height:320px!important}
.stage-tools-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:4px 0 8px}
.stage-tool-item{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 14px;border-radius:18px;border:1px solid rgba(148,163,184,.14);background:rgba(255,255,255,.03);color:#eef2f8;text-align:left;cursor:pointer;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.stage-tool-item:hover{transform:translateY(-1px);border-color:rgba(139,92,246,.36);background:rgba(109,94,252,.08)}
.stage-tool-item span{font-size:14px;font-weight:800}
.stage-tool-item small{font-size:11px;line-height:1.45;color:#98a6ba}
.tools-dialog[open]{display:flex!important;align-items:stretch!important;justify-content:flex-end!important;padding:0!important;background:rgba(2,6,12,.44)!important}
.tools-dialog .dialog-card--sheet{width:min(460px,100vw)!important;height:100dvh!important;max-height:100dvh!important;border-radius:28px 0 0 28px!important;padding:20px 18px calc(20px + env(safe-area-inset-bottom))!important;overflow:hidden!important}
.tools-dialog .tools-scroll{overflow:auto;min-height:0;padding-right:4px}
.app-top-ad{min-height:72px!important;max-height:72px!important;overflow:hidden!important;border-radius:20px!important}
.app-top-ad .ad-fallback{min-height:72px!important}
.desktop-ad-panel{display:none!important}
.mobile-fixed-ad{max-height:58px!important;min-height:58px!important;overflow:hidden!important}
.mobile-fixed-ad .ad-fallback{min-height:58px!important;padding:8px 12px!important}
.output-lock-badge.hidden{display:none!important}
@media (max-width:940px){
  .stage-tools-panel{grid-template-columns:1fr!important}
}
@media (max-width:760px){
  .stage-tools-panel{grid-template-columns:1fr 1fr!important;gap:8px!important}
  .stage-tool-item{padding:10px 11px!important;border-radius:16px!important}
  .stage-tool-item span{font-size:12px!important}
  .stage-tool-item small{font-size:10px!important}
  .tools-dialog .dialog-card--sheet{width:100vw!important;height:auto!important;max-height:92dvh!important;border-radius:24px 24px 0 0!important}
  .review-photo,.export-photo{min-height:260px!important}
  .app-top-ad{display:none!important}
}

/* v11.7 compact photo tools + download compression */
.stage-tools-panel{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:8px!important;margin:2px 0 6px!important}
.stage-tool-item{min-width:0!important;min-height:66px!important;padding:9px 10px!important;border-radius:16px!important;display:grid!important;grid-template-columns:28px minmax(0,1fr)!important;grid-template-rows:auto auto!important;column-gap:8px!important;row-gap:1px!important;align-items:center!important}
.stage-tool-item svg{grid-row:1/3;width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;color:#a996ff}
.stage-tool-item span{font-size:12px!important;line-height:1.15!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.stage-tool-item small{font-size:9px!important;line-height:1.25!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tool-section{scroll-margin-top:10px}
.tool-help{margin:0 0 14px;color:#9aa7bb;font-size:12px;line-height:1.6}
.setting-switch{display:flex!important;align-items:flex-start!important;gap:11px!important;padding:13px 14px!important;border-radius:16px!important;border:1px solid rgba(148,163,184,.14)!important;background:rgba(255,255,255,.025)!important}
.setting-switch>input{width:20px!important;height:20px!important;margin-top:1px!important;accent-color:#7c5cff}
.setting-switch>span{display:grid;gap:3px}.setting-switch strong{font-size:13px}.setting-switch small{color:#8f9caf;font-size:11px;line-height:1.45}
.download-limit-grid{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end;margin-top:12px}
.download-limit-grid>label{display:grid;gap:7px;font-size:12px;color:#dce3ef}
.input-suffix{display:grid;grid-template-columns:minmax(0,1fr) 46px;border:1px solid #2c3950;border-radius:14px;overflow:hidden;background:#09111d}
.input-suffix input{border:0!important;border-radius:0!important;min-width:0!important}
.input-suffix b{display:grid;place-items:center;border-left:1px solid #2c3950;color:#9ca9bc;font-size:11px}
.download-limit-grid .secondary{min-height:46px!important;white-space:nowrap}
.download-limit-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
.download-limit-info>div{padding:10px 11px;border:1px solid rgba(148,163,184,.12);border-radius:14px;background:rgba(255,255,255,.022);display:grid;gap:4px}
.download-limit-info span{font-size:9px;text-transform:uppercase;letter-spacing:.08em;color:#7f8da4}.download-limit-info strong{font-size:12px;color:#eef3fb;overflow-wrap:anywhere}
.download-warning{padding:10px 12px;margin:10px 0 0;border-radius:13px;background:rgba(246,182,79,.1);border:1px solid rgba(246,182,79,.2);color:#f1d09a;font-size:11px;line-height:1.5}
.download-summary-card{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0;padding:13px 14px;border-radius:17px;border:1px solid rgba(148,163,184,.15);background:rgba(255,255,255,.028);color:#eef3fb;text-align:left;cursor:pointer}
.download-summary-card:hover{border-color:rgba(139,92,246,.4);background:rgba(139,92,246,.07)}
.download-summary-card>span{display:grid;gap:4px}.download-summary-card strong{font-size:13px}.download-summary-card small{font-size:11px;color:#96a4b8}.download-summary-card>b{font-size:22px;color:#a996ff}
.compression-result{margin:0 0 12px;padding:10px 12px;border-radius:14px;background:rgba(51,214,166,.08);border:1px solid rgba(51,214,166,.16);color:#a9ead6;font-size:11px;font-weight:700;line-height:1.5}
@media(max-width:1100px){.stage-tool-item small{display:none}.stage-tool-item{grid-template-rows:1fr!important;grid-template-columns:24px minmax(0,1fr)!important;min-height:52px!important}.stage-tool-item svg{grid-row:auto!important}.stage-tools-panel{grid-template-columns:repeat(5,minmax(100px,1fr))!important;overflow-x:auto!important;scrollbar-width:none!important}.stage-tools-panel::-webkit-scrollbar{display:none}}
@media(max-width:760px){
  .stage-tools-panel{display:flex!important;overflow-x:auto!important;gap:7px!important;padding-bottom:2px!important}
  .stage-tool-item{flex:0 0 124px!important;min-height:48px!important;padding:8px 9px!important;border-radius:14px!important}
  .stage-tool-item span{font-size:11px!important}
  .download-limit-grid{grid-template-columns:1fr!important}.download-limit-grid .secondary{width:100%!important}
  .download-limit-info{grid-template-columns:1fr 1fr!important}.download-limit-info>div:last-child{grid-column:1/-1}
}
.photo-stage-v10{grid-template-rows:auto auto minmax(220px,1fr) auto!important}
@media(max-width:760px){.photo-stage-v10{grid-template-rows:auto auto minmax(190px,1fr) auto!important}}

/* v11.8 usability and tools tabs */
.mobile-fixed-ad{display:none!important}
@media (max-width:760px){.mobile-fixed-ad:not(.hidden){display:flex!important}}
.tools-dialog .dialog-card--sheet{display:flex;flex-direction:column}
.modal-head--sticky{position:sticky;top:0;z-index:5;background:linear-gradient(180deg,rgba(5,11,23,.98),rgba(5,11,23,.92));padding-bottom:12px}
.tool-tabs{display:flex;gap:8px;overflow:auto;padding:0 0 12px;position:sticky;top:72px;z-index:4;background:linear-gradient(180deg,rgba(5,11,23,.98),rgba(5,11,23,.92));scrollbar-width:none}
.tool-tabs::-webkit-scrollbar{display:none}
.tool-tab{border:1px solid rgba(148,163,184,.18);background:rgba(255,255,255,.04);color:#cbd5e1;padding:9px 12px;border-radius:999px;font:700 12px/1.1 system-ui;white-space:nowrap;cursor:pointer}
.tool-tab.is-active{background:linear-gradient(135deg,#8b5cf6,#6d5efc);border-color:rgba(139,92,246,.5);color:#fff;box-shadow:0 10px 24px rgba(109,94,252,.24)}
.tools-scroll{flex:1;min-height:0;overflow:auto}
.tool-section{display:none}
.tool-section.is-active{display:block}
.tool-section .section-divider:first-child{display:none}
.dialog-footer{padding-top:12px;border-top:1px solid rgba(148,163,184,.12);background:linear-gradient(180deg,rgba(5,11,23,.04),rgba(5,11,23,.18))}
.reward-card-v10 .dialog-close,.dialog-card--sheet .dialog-close{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:12px;border:1px solid rgba(148,163,184,.18);background:rgba(255,255,255,.04);color:#fff}
.dialog-card--sheet .modal-head,.reward-card-v10 .modal-head{align-items:center}
.download-summary-card{cursor:pointer}
.review-photo,.export-photo{overflow:hidden}
.review-photo img,.export-photo img,.ai-review-photo img{object-fit:contain!important;background:#fff!important}
.watermark-layer{inset:-10%!important}
.watermark-layer span{font-size:11px!important;font-weight:760!important;color:rgba(95,104,128,var(--wm-opacity,.075))!important}
.review-photo.is-unlocked .watermark-layer,.export-photo.is-unlocked .watermark-layer,.ai-review-photo.is-unlocked .watermark-layer{display:none!important}
@media (max-width:760px){
  .tool-tabs{top:68px;padding-bottom:10px}
  .dialog-footer{padding-bottom:calc(10px + env(safe-area-inset-bottom))}
}

/* v11.8.2 quality preview fixes */
.review-photo{padding:0!important;background:transparent!important;border-radius:24px!important;overflow:hidden!important;box-shadow:0 14px 32px rgba(0,0,0,.18)!important}
.review-photo img{display:block;width:100%!important;height:100%!important;object-fit:contain!important;background:#fff!important}
.review-photo span{left:10px!important;bottom:10px!important;z-index:3}
.review-photo [data-watermark-layer]{inset:0!important;border-radius:inherit!important}
.export-photo{padding:0!important;background:transparent!important;overflow:hidden!important}
.export-photo img{display:block;width:100%!important;height:100%!important;object-fit:contain!important;background:#fff!important}


/* v11.8.3 preview consistency fixes */
.review-photo,.export-photo,.ai-review-photo{display:flex!important;align-items:center!important;justify-content:center!important;background:#fff!important}
.review-photo img,.export-photo img,.ai-review-photo img{object-fit:contain!important;background:#fff!important}
.print-protected-preview img,.file-chip-preview img,.queue-photo-preview img{object-fit:contain!important;background:#fff!important}

/* v11.9 raster watermark previews: DOM overlays are no longer the security layer */
.watermark-layer{display:none!important}
.print-thumb-watermark{display:none!important}

/* v11.9 final precedence: keep the editor tool dock footprint stable */
@media(min-width:761px){
  .photo-stage-v10{grid-template-rows:auto auto 150px minmax(260px,1fr) auto!important}
}
@media(max-width:760px){
  .photo-stage-v10{grid-template-rows:auto auto minmax(300px,1fr) auto!important}
}


/* v11.9.7 Quality Check geometry lock */
.screen[data-screen="4"] .review-grid-v10{align-items:start!important;align-content:start!important}
.screen[data-screen="4"] .review-photo{
  align-self:start!important;
  justify-self:start!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:var(--bio-quality-ratio,35 / 45)!important;
  overflow:hidden!important;
}
.screen[data-screen="4"] .review-photo img{
  width:100%!important;
  height:100%!important;
  max-height:none!important;
  object-fit:contain!important;
}
@media(max-width:760px){
  .screen[data-screen="4"] .review-photo{justify-self:center!important;max-width:min(88vw,360px)!important}
}

/* ===== merged from mobile-final-v1193.css ===== */
/* Biometric Studio v11.9.3 — authoritative mobile layout layer.
   Loaded last. Keep mobile overrides here instead of adding competing patches. */

@media (max-width: 820px) {
  html,
  body.studio-app {
    width: 100% !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    height: 100dvh !important;
    min-height: 100dvh !important;
    overflow: hidden !important;
    overscroll-behavior: none !important;
  }

  body.studio-app * { min-width: 0; }

  .app-header-v10 {
    width: 100% !important;
    max-width: 100vw !important;
    height: 60px !important;
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 0 12px !important;
  }
  .app-header-v10 .logo { min-width: 0 !important; overflow: hidden !important; }
  .app-header-v10 .logo span { white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
  .app-header-v10 .desktop-nav { display: none !important; }
  .app-header-v10 select { width: auto !important; min-width: 92px !important; max-width: 116px !important; }
  .app-top-ad { display: none !important; }

  .studio-shell-v10 {
    width: 100% !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    height: calc(100dvh - 60px - var(--mobile-ad-height, 0px) - var(--mobile-ad-safe-gap, 0px) - env(safe-area-inset-bottom)) !important;
    min-height: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    grid-template-rows: 58px minmax(0, 1fr) !important;
    gap: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    align-items: stretch !important;
  }
  body.studio-app:not(.has-mobile-ad) .studio-shell-v10 {
    height: calc(100dvh - 60px - env(safe-area-inset-bottom)) !important;
  }

  .steps-v10 {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    height: 58px !important;
    min-height: 58px !important;
    padding: 6px 8px !important;
    margin: 0 !important;
    border-width: 0 0 1px !important;
    border-radius: 0 !important;
    overflow: hidden !important;
    background: rgba(9,15,25,.98) !important;
    box-shadow: none !important;
    z-index: 30 !important;
  }
  .steps-v10 .steps-heading,
  .steps-v10 .privacy-note { display: none !important; }
  .steps-scroll {
    width: 100% !important;
    height: 46px !important;
    display: flex !important;
    flex-flow: row nowrap !important;
    align-items: center !important;
    gap: 6px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 0 2px 2px !important;
    scrollbar-width: none !important;
  }
  .steps-scroll::-webkit-scrollbar { display: none !important; }
  .steps-v10 .step {
    flex: 0 0 44px !important;
    width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    display: grid !important;
    place-items: center !important;
    padding: 3px !important;
    border-radius: 13px !important;
  }
  .steps-v10 .step b {
    width: 34px !important;
    height: 34px !important;
    margin: 0 !important;
    border-radius: 11px !important;
  }
  .steps-v10 .step span { display: none !important; }

  .main-card-v10 {
    width: 100% !important;
    max-width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-rows: auto minmax(0,1fr) !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    overflow: hidden !important;
    background: #08111f !important;
  }
  .card-head-v10 {
    position: relative !important;
    inset: auto !important;
    z-index: 3 !important;
    min-height: 66px !important;
    padding: 10px 12px 9px !important;
    margin: 0 !important;
    background: #0b1422 !important;
    border-bottom: 1px solid rgba(148,163,184,.10) !important;
  }
  .card-head-v10 h1 { font-size: 20px !important; line-height: 1.05 !important; margin-top: 4px !important; }
  .card-head-v10 .eyebrow { font-size: 8px !important; }
  .status-pill { max-width: 46%; font-size: 9px !important; padding: 6px 8px !important; overflow: hidden !important; text-overflow: ellipsis !important; white-space: nowrap !important; }

  .screen,
  .screen.active,
  .editor-screen.active,
  .print-screen.active {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: 100% !important;
    overflow: hidden !important;
    padding: 0 !important;
  }
  .screen.active:not(.editor-screen):not(.print-screen) {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    grid-template-rows: minmax(0,1fr) auto !important;
  }
  .screen-scroll {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    padding: 12px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
    scrollbar-gutter: stable !important;
  }
  .screen-scroll > * { max-width: 100% !important; }

  .actions-sticky {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 60px !important;
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 8px !important;
    align-items: center !important;
    padding: 8px 12px calc(8px + env(safe-area-inset-bottom)) !important;
    margin: 0 !important;
    border-top: 1px solid rgba(148,163,184,.10) !important;
    background: #0a1321 !important;
    box-shadow: 0 -10px 26px rgba(0,0,0,.18) !important;
    z-index: 20 !important;
  }
  .actions-sticky button {
    width: 100% !important;
    min-width: 0 !important;
    min-height: 44px !important;
    height: auto !important;
    padding: 9px 10px !important;
    font-size: 12px !important;
    line-height: 1.2 !important;
    white-space: normal !important;
  }
  .actions-sticky button:only-child { grid-column: 1 / -1 !important; }
  .actions-sticky button:last-child:nth-child(3) { grid-column: auto !important; }

  /* Upload */
  .upload-zone {
    width: 100% !important;
    min-height: min(42dvh, 330px) !important;
    height: auto !important;
    padding: 20px 14px !important;
    border-radius: 20px !important;
    text-align: center !important;
  }
  .upload-zone > strong { font-size: 17px !important; }
  .upload-zone > small { max-width: 29ch !important; line-height: 1.45 !important; }
  .source-actions {
    width: min(100%, 420px) !important;
    display: grid !important;
    grid-template-columns: repeat(2,minmax(0,1fr)) !important;
    gap: 8px !important;
    margin-top: 14px !important;
  }
  .source-actions button { width: 100% !important; min-width: 0 !important; white-space: normal !important; }
  .source-preview {
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 12px !important;
    align-items: center !important;
    justify-items: center !important;
    padding: 12px !important;
    overflow: visible !important;
  }
  .source-photo-preview { width: min(58vw, 220px) !important; max-width: 220px !important; }
  .source-photo-preview img { width: 100% !important; max-height: 30dvh !important; object-fit: contain !important; }
  .source-preview-meta { width: 100% !important; text-align: center !important; align-items: center !important; }

  /* Prepare/editor */
  .editor-screen.active {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    grid-template-rows: auto minmax(0,1fr) auto !important;
  }
  .editor-toolbar-v10 {
    position: relative !important;
    inset: auto !important;
    width: 100% !important;
    min-height: 48px !important;
    max-height: 52px !important;
    display: flex !important;
    flex-flow: row nowrap !important;
    gap: 6px !important;
    padding: 6px 8px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    scrollbar-width: none !important;
  }
  .editor-toolbar-v10::-webkit-scrollbar { display: none !important; }
  .editor-toolbar-v10 button { flex: 0 0 auto !important; height: 38px !important; min-height: 38px !important; padding: 0 10px !important; }

  .photo-stage-v10 {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    grid-template-rows: auto auto minmax(0,1fr) auto !important;
    gap: 7px !important;
    padding: 8px 10px !important;
    overflow: hidden !important;
  }
  .detection-status { min-height: 34px !important; padding: 7px 9px !important; font-size: 10px !important; }
  .stage-tools-panel {
    width: 100% !important;
    display: flex !important;
    flex-flow: row nowrap !important;
    gap: 7px !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    padding: 0 0 3px !important;
    scrollbar-width: none !important;
  }
  .stage-tools-panel::-webkit-scrollbar { display: none !important; }
  .stage-tool-item { flex: 0 0 118px !important; min-height: 46px !important; padding: 7px 8px !important; }
  .stage-tool-item small { display: none !important; }
  .photo-frame {
    width: min(100%, 350px) !important;
    height: auto !important;
    max-width: 100% !important;
    max-height: 100% !important;
    min-height: 0 !important;
    align-self: center !important;
    justify-self: center !important;
    margin: 0 auto !important;
  }
  .auto-align { width: 100% !important; min-height: 38px !important; }

  .editor-inline-panel {
    display: none !important;
    position: fixed !important;
    left: 10px !important;
    right: 10px !important;
    top: auto !important;
    bottom: calc(68px + var(--mobile-ad-height,0px) + var(--mobile-ad-safe-gap,0px) + env(safe-area-inset-bottom)) !important;
    width: auto !important;
    max-width: none !important;
    max-height: 52dvh !important;
    min-height: 0 !important;
    padding: 12px !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    z-index: 120 !important;
  }
  .editor-inline-panel.is-open { display: grid !important; grid-template-rows: auto minmax(0,1fr) !important; }
  .editor-inline-panel .tools-scroll { max-height: 100% !important; overflow-y: auto !important; }
  .editor-inline-panel .tool-fields { grid-template-columns: minmax(0,1fr) !important; }

  /* Review / export */
  .review-grid-v10,
  .export-card-v10 {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    gap: 14px !important;
    overflow: visible !important;
  }
  .review-photo,
  .export-photo { width: min(100%, 330px) !important; max-width: 330px !important; min-height: 0 !important; margin: 0 auto !important; }
  .review-photo img,
  .export-photo img { width: 100% !important; height: auto !important; max-height: 38dvh !important; object-fit: contain !important; }
  .archive-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }

  .mobile-fixed-ad {
    left: 8px !important;
    right: 8px !important;
    bottom: calc(6px + env(safe-area-inset-bottom)) !important;
    width: auto !important;
    min-height: 0 !important;
    max-height: 58px !important;
    border-radius: 15px !important;
    overflow: hidden !important;
    z-index: 90 !important;
  }
  .mobile-fixed-ad.hidden { display: none !important; }
  .mobile-fixed-ad:not(.hidden) { display: flex !important; align-items: center !important; justify-content: center !important; }
  .mobile-fixed-ad .ad-fallback,
  .mobile-fixed-ad ins { width: 100% !important; min-height: 50px !important; max-height: 56px !important; }

  /* Dialogs */
  .app-dialog[open] { width: 100% !important; max-width: 100vw !important; display: flex !important; align-items: flex-end !important; justify-content: stretch !important; }
  .dialog-card,
  .dialog-card--wide,
  .dialog-card--sheet { width: 100% !important; max-width: 100vw !important; max-height: 88dvh !important; margin: 0 !important; border-radius: 22px 22px 0 0 !important; }
}

@media (max-width: 390px) {
  .app-header-v10 .logo span { display: none !important; }
  .app-header-v10 { grid-template-columns: auto 1fr !important; }
  .app-header-v10 select { justify-self: end !important; }
  .status-pill { display: none !important; }
  .card-head-v10 h1 { font-size: 18px !important; }
  .source-actions { grid-template-columns: minmax(0,1fr) !important; }
  .archive-grid { grid-template-columns: minmax(0,1fr) !important; }
  .actions-sticky { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  .actions-sticky button { font-size: 11px !important; }
}

/* Print builder mobile */
@media (max-width: 900px) {
  html,
  body.print-app { width: 100% !important; max-width: 100vw !important; min-width: 0 !important; height: 100dvh !important; overflow: hidden !important; }
  body.print-app * { min-width: 0; }
  .print-topbar { width: 100% !important; height: 60px !important; padding: 0 10px !important; overflow: hidden !important; }
  .print-topbar nav { display: none !important; }
  .print-shell {
    width: 100% !important;
    max-width: 100vw !important;
    height: calc(100dvh - 60px) !important;
    min-height: 0 !important;
    display: grid !important;
    grid-template-columns: minmax(0,1fr) !important;
    grid-template-rows: minmax(0,58%) minmax(0,42%) !important;
    gap: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
  }
  body.embedded.print-app .print-shell,
  .embedded.print-app .print-shell { height: 100dvh !important; grid-template-rows: minmax(0,58%) minmax(0,42%) !important; }
  .print-controls { width: 100% !important; min-height: 0 !important; max-height: none !important; overflow-x: hidden !important; overflow-y: auto !important; padding: 12px !important; position: relative !important; top: auto !important; }
  .preview-area { width: 100% !important; min-height: 0 !important; height: 100% !important; overflow: hidden !important; }
  .stage { width: 100% !important; height: 100% !important; min-height: 0 !important; padding: 14px !important; overflow: auto !important; }
  .print-advanced { display: block !important; visibility: visible !important; }
  .print-advanced > summary { position: sticky; top: 0; z-index: 2; }
}

/* ===== merged from mobile-v1198.css ===== */

/* v11.9.8 mobile prepare-stage optimization */
:root{--bio-mobile-editor-top:170px}
@media(max-width:760px){
  body.process-running .photo-stage-v10{padding-top:6px!important}
  body.process-running .stage-tools-panel{opacity:.72}
  .editor-screen.active{grid-template-rows:auto minmax(0,1fr)!important}
  .editor-toolbar-v10{top:calc(var(--app-header-height,60px) + 104px)!important}
  .photo-stage-v10{padding:6px 8px 10px!important;gap:8px!important;grid-template-rows:auto auto minmax(0,1fr) auto!important;align-content:start!important}
  .detection-status{min-height:32px!important;padding:7px 10px!important;font-size:10px!important;line-height:1.35!important}
  .stage-tools-panel{display:flex!important;overflow-x:auto!important;gap:7px!important;padding-bottom:1px!important;scroll-snap-type:x proximity!important}
  .stage-tool-item{flex:0 0 112px!important;min-height:44px!important;padding:7px 8px!important;grid-template-columns:20px minmax(0,1fr)!important;column-gap:6px!important}
  .stage-tool-item svg{width:20px!important;height:20px!important}
  .stage-tool-item span{font-size:10px!important;white-space:normal!important;line-height:1.15!important}
  .stage-tool-item small{display:none!important}
  .photo-frame{width:min(calc(100vw - 18px),380px)!important;max-width:100%!important;min-height:250px!important;max-height:60dvh!important;margin:0 auto!important}
  .process-overlay{background:linear-gradient(180deg,rgba(5,10,17,.26),rgba(15,12,40,.34))!important;backdrop-filter:blur(.8px)!important;justify-content:space-between!important;padding:18px 10px!important}
  .process-overlay:before{opacity:.42!important}
  .process-overlay:after{background:radial-gradient(circle at center,transparent 30%,rgba(4,8,15,.18) 88%)!important}
  .scan-line{top:18%!important}
  .face-scan{width:52%!important;height:62%!important;max-width:170px!important;max-height:230px!important;background:rgba(255,255,255,.04)!important}
  .process-overlay strong{max-width:92%!important;font-size:12px!important;text-shadow:0 1px 3px rgba(0,0,0,.45)!important}
  .process-overlay span{font-size:11px!important;padding:4px 8px!important}
  .auto-align{width:100%!important;min-height:40px!important;font-size:11px!important}
}
@media(max-width:400px){
  .photo-frame{min-height:230px!important;max-height:56dvh!important}
  .stage-tool-item{flex-basis:104px!important}
}


/* v11.9.8b stronger mobile prepare-stage layout */
@media(max-width:760px){
  .photo-stage-v10{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-areas:
      'status'
      'frame'
      'action'
      'tools'!important;
    grid-template-rows:auto minmax(260px,1fr) auto auto!important;
    align-content:start!important;
    overflow:visible!important;
  }
  #detectionStatus{grid-area:status!important}
  #photoFrame{grid-area:frame!important}
  #autoAlign{grid-area:action!important}
  #stageToolsPanel{grid-area:tools!important}
  .photo-frame{
    width:min(calc(100vw - 18px),390px)!important;
    min-height:clamp(260px,46dvh,430px)!important;
    max-height:min(58dvh,430px)!important;
    margin:0 auto!important;
    align-self:start!important;
    justify-self:center!important;
  }
  body.process-running .photo-frame{
    min-height:clamp(280px,50dvh,460px)!important;
    max-height:min(62dvh,460px)!important;
  }
  .stage-tools-panel{
    display:flex!important;
    flex-wrap:nowrap!important;
    overflow-x:auto!important;
    overflow-y:hidden!important;
    gap:7px!important;
    padding:2px 0 0!important;
    scrollbar-width:none!important;
  }
  .stage-tools-panel::-webkit-scrollbar{display:none!important}
  .stage-tool-item{flex:0 0 108px!important;min-height:44px!important}
  .auto-align{position:sticky!important;bottom:0!important;z-index:4!important}
  body.process-running .stage-tools-panel{opacity:.56!important}
  body.process-running .editor-toolbar-v10 button:not(#autoPrepare):not(#removeBackground):not(#openEditorTools){display:none!important}
  body.process-running .editor-toolbar-v10{min-height:44px!important;max-height:44px!important}
}
@media(max-width:420px){
  .photo-stage-v10{grid-template-rows:auto minmax(240px,1fr) auto auto!important}
  .photo-frame{width:min(calc(100vw - 16px),380px)!important;min-height:clamp(240px,42dvh,380px)!important}
  body.process-running .photo-frame{min-height:clamp(260px,48dvh,400px)!important}
}

/* ===== merged from mobile-v1200.css ===== */
/* Biometric Studio v11.10.0 — mobile-first application shell.
   Loaded last. Desktop remains on the existing layout. */

@media (max-width:760px){
  :root{
    --app-header-height:0px!important;
    --mobile-action-height:60px!important;
    --mobile-tool-rail:54px;
  }

  html,body{max-width:100%;overflow-x:hidden!important}
  body.studio-app{min-height:100dvh!important;height:auto!important;padding:0!important;overflow-y:auto!important;background:#070b12!important}

  /* Floating brand: no header row, no language selector on mobile. */
  .app-header-v10{
    position:fixed!important;
    inset:8px auto auto 8px!important;
    width:44px!important;
    height:44px!important;
    min-height:44px!important;
    padding:0!important;
    margin:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    z-index:160!important;
    pointer-events:none!important;
  }
  .app-header-v10 .logo{width:44px!important;height:44px!important;padding:0!important;margin:0!important;pointer-events:auto!important}
  .app-header-v10 .logo b{width:44px!important;height:44px!important;min-width:44px!important;display:grid!important;place-items:center!important;border-radius:14px!important;font-size:17px!important;box-shadow:0 10px 28px rgba(77,58,216,.28)!important}
  .app-header-v10 .logo span,
  .app-header-v10 .desktop-nav,
  .app-header-v10 #language{display:none!important}
  .app-top-ad{display:none!important}

  /* Main shell now uses the full viewport. */
  .studio-shell-v10{
    display:grid!important;
    grid-template-rows:58px minmax(0,1fr)!important;
    width:100%!important;
    height:100dvh!important;
    min-height:100dvh!important;
    margin:0!important;
    padding:0!important;
    overflow:hidden!important;
  }
  .steps-v10{
    position:relative!important;
    inset:auto!important;
    z-index:100!important;
    min-height:58px!important;
    height:58px!important;
    padding:7px 8px 7px 60px!important;
    border:0!important;
    border-bottom:1px solid rgba(148,163,184,.12)!important;
    border-radius:0!important;
    background:rgba(7,11,18,.96)!important;
    backdrop-filter:blur(14px)!important;
    overflow:hidden!important;
  }
  .steps-heading,.privacy-note{display:none!important}
  .steps-scroll{height:44px!important;display:flex!important;gap:8px!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:none!important}
  .steps-scroll::-webkit-scrollbar{display:none!important}
  .steps-v10 .step{flex:0 0 44px!important;width:44px!important;height:44px!important;min-height:44px!important;padding:3px!important;border-radius:13px!important}
  .steps-v10 .step b{width:36px!important;height:36px!important;margin:auto!important;font-size:13px!important}
  .steps-v10 .step span{display:none!important}

  .main-card-v10{
    min-width:0!important;
    min-height:0!important;
    height:100%!important;
    display:flex!important;
    flex-direction:column!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    overflow:hidden!important;
  }
  .card-head-v10{
    position:relative!important;
    inset:auto!important;
    flex:0 0 46px!important;
    min-height:46px!important;
    padding:7px 12px!important;
    display:flex!important;
    align-items:center!important;
    background:#0a111c!important;
    border-bottom:1px solid rgba(148,163,184,.10)!important;
    backdrop-filter:none!important;
    z-index:20!important;
  }
  .card-head-v10 .eyebrow{display:none!important}
  .card-head-v10 h1{margin:0!important;font-size:18px!important;line-height:1.1!important}
  .status-pill{font-size:9px!important;padding:5px 8px!important;max-width:42vw!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}

  .screen.active,
  .editor-screen.active{
    flex:1 1 auto!important;
    min-height:0!important;
    height:auto!important;
    padding:0 0 calc(62px + env(safe-area-inset-bottom))!important;
    overflow:auto!important;
  }
  .screen-scroll{padding:10px!important;max-height:none!important;overflow:visible!important}

  /* The SEO/CMS copy remains available to desktop/search engines but never steals app space on mobile. */
  .managed-app-content,
  .managed-app-content__inner{display:none!important}

  /* One compact bottom action dock replaces extra mobile content/footer space. */
  .actions-sticky{
    position:fixed!important;
    left:0!important;
    right:0!important;
    bottom:0!important;
    z-index:150!important;
    min-height:58px!important;
    display:flex!important;
    align-items:stretch!important;
    gap:7px!important;
    padding:7px 8px calc(7px + env(safe-area-inset-bottom))!important;
    margin:0!important;
    background:rgba(7,12,21,.97)!important;
    border-top:1px solid rgba(148,163,184,.13)!important;
    box-shadow:0 -10px 28px rgba(0,0,0,.28)!important;
    backdrop-filter:blur(14px)!important;
  }
  .actions-sticky button{
    flex:1 1 0!important;
    grid-column:auto!important;
    width:auto!important;
    min-width:0!important;
    min-height:44px!important;
    height:44px!important;
    padding:0 7px!important;
    border-radius:14px!important;
    font-size:11px!important;
    line-height:1.15!important;
    white-space:normal!important;
  }
  .has-mobile-ad .actions-sticky{bottom:var(--mobile-ad-height,0px)!important}

  /* Prepare = Photoshop-like vertical rail + large photo. */
  .editor-screen.active{
    display:grid!important;
    grid-template-columns:var(--mobile-tool-rail) minmax(0,1fr)!important;
    grid-template-rows:minmax(0,1fr)!important;
    gap:0!important;
    overflow:hidden!important;
  }
  .editor-toolbar-v10{
    grid-column:1!important;
    grid-row:1!important;
    position:relative!important;
    inset:auto!important;
    z-index:45!important;
    width:var(--mobile-tool-rail)!important;
    height:100%!important;
    min-height:0!important;
    max-height:none!important;
    display:grid!important;
    grid-auto-rows:minmax(36px,1fr)!important;
    align-content:stretch!important;
    gap:4px!important;
    padding:6px!important;
    margin:0!important;
    border:0!important;
    border-right:1px solid rgba(148,163,184,.13)!important;
    border-radius:0!important;
    background:#09111c!important;
    overflow:hidden!important;
  }
  .editor-toolbar-v10 .toolbar-spacer{display:none!important}
  .editor-toolbar-v10 button.hidden{display:none!important}
  .editor-toolbar-v10 button:not(.hidden){
    display:grid!important;
    place-items:center!important;
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    height:auto!important;
    min-height:36px!important;
    max-height:46px!important;
    padding:0!important;
    margin:0!important;
    flex:none!important;
    border-radius:11px!important;
    font-size:0!important;
    line-height:1!important;
    overflow:hidden!important;
    background:#111b2a!important;
    border:1px solid rgba(148,163,184,.14)!important;
    color:#f4f7fb!important;
  }
  .editor-toolbar-v10 button:not(.hidden)::before{
    content:attr(data-icon);
    display:block;
    font:700 20px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    color:inherit!important;
  }
  .editor-toolbar-v10 button span{display:none!important}
  .editor-toolbar-v10 button:hover,
  .editor-toolbar-v10 button.active,
  .editor-toolbar-v10 button.toolbar-accent{background:#17243a!important;border-color:rgba(139,92,246,.42)!important}
  .editor-toolbar-v10 #autoPrepare,
  .editor-toolbar-v10 #removeBackground{background:linear-gradient(145deg,#17233a,#151b31)!important}

  .photo-stage-v10{
    grid-column:2!important;
    grid-row:1!important;
    min-width:0!important;
    min-height:0!important;
    height:100%!important;
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-areas:'status' 'frame' 'align'!important;
    grid-template-rows:auto minmax(0,1fr) auto!important;
    gap:7px!important;
    padding:7px 8px!important;
    margin:0!important;
    overflow:hidden!important;
    align-content:stretch!important;
  }
  #detectionStatus{grid-area:status!important;min-height:30px!important;padding:6px 8px!important;margin:0!important;font-size:10px!important;line-height:1.35!important;border-radius:11px!important}
  #photoFrame{grid-area:frame!important;min-width:0!important;min-height:0!important;max-width:100%!important;max-height:100%!important;align-self:center!important;justify-self:center!important;margin:0 auto!important}
  #autoAlign{grid-area:align!important;width:100%!important;min-height:38px!important;height:38px!important;margin:0!important;font-size:10px!important;border-radius:12px!important}
  #stageToolsPanel{display:none!important}

  /* Keep the actual photo visible during detection/removal and restore the face scan effect. */
  .process-overlay{
    inset:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    padding:10px!important;
    background:linear-gradient(180deg,rgba(3,8,14,.10),rgba(17,10,42,.18))!important;
    backdrop-filter:none!important;
    overflow:hidden!important;
  }
  .process-overlay.hidden{display:none!important}
  .process-overlay:before{opacity:.28!important}
  .process-overlay:after{background:radial-gradient(circle at center,transparent 38%,rgba(5,9,17,.14) 100%)!important}
  .face-scan{
    position:absolute!important;
    left:50%!important;
    top:50%!important;
    transform:translate(-50%,-50%)!important;
    width:min(48%,170px)!important;
    height:min(58%,230px)!important;
    border:1.5px solid rgba(104,244,225,.78)!important;
    border-radius:46% 46% 43% 43%!important;
    background:rgba(255,255,255,.018)!important;
    box-shadow:inset 0 0 36px rgba(94,234,212,.08),0 0 28px rgba(94,234,212,.16)!important;
    animation:bioFacePulse 1.55s ease-in-out infinite!important;
  }
  .face-scan i{width:24px!important;height:24px!important;filter:drop-shadow(0 0 6px rgba(169,149,255,.65))!important}
  .scan-line{
    left:25%!important;
    right:25%!important;
    top:27%!important;
    height:2px!important;
    animation:bioFaceSweep 1.55s ease-in-out infinite!important;
    opacity:.95!important;
  }
  .process-overlay strong{
    position:absolute!important;
    left:10px!important;
    right:10px!important;
    bottom:38px!important;
    max-width:none!important;
    margin:0!important;
    padding:6px 9px!important;
    border-radius:10px!important;
    background:rgba(7,12,20,.52)!important;
    font-size:10px!important;
    line-height:1.3!important;
    text-align:center!important;
  }
  .process-overlay>span{
    position:absolute!important;
    right:9px!important;
    top:9px!important;
    padding:4px 7px!important;
    font-size:10px!important;
  }
  @keyframes bioFacePulse{0%,100%{transform:translate(-50%,-50%) scale(.98);opacity:.72}50%{transform:translate(-50%,-50%) scale(1.02);opacity:1}}
  @keyframes bioFaceSweep{0%,100%{top:27%;opacity:.55}50%{top:70%;opacity:1}}

  body.process-running .editor-toolbar-v10 button:not(.hidden){display:grid!important;opacity:.96!important}
  body.process-running .photo-stage-v10{padding-top:7px!important}

  /* Remaining workflow screens: simpler cards, larger useful area. */
  .upload-zone{min-height:0!important;padding:18px 12px!important;border-radius:18px!important}
  .source-preview{grid-template-columns:1fr!important;gap:9px!important}
  .source-photo-preview img{max-height:48dvh!important;object-fit:contain!important}
  .review-grid-v10,.export-card-v10{grid-template-columns:1fr!important;gap:10px!important;height:auto!important;overflow:visible!important}
  .review-photo,.export-photo{width:min(100%,330px)!important;min-height:0!important;max-width:330px!important;margin:0 auto!important}
  .review-photo img,.export-photo img{max-height:42dvh!important}
  .review-results,.export-info{padding:0 2px!important}
  .archive-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
  .dialog-card,.dialog-card--wide,.dialog-card--sheet{width:100vw!important;max-height:88dvh!important;border-radius:22px 22px 0 0!important;padding:14px 12px calc(14px + env(safe-area-inset-bottom))!important}
  .tools-dialog .dialog-card--sheet{width:100vw!important;height:auto!important;max-height:90dvh!important;border-radius:22px 22px 0 0!important}
  .tool-tabs{top:58px!important}

  .mobile-fixed-ad{left:6px!important;right:6px!important;bottom:calc(60px + env(safe-area-inset-bottom))!important;max-height:50px!important;min-height:50px!important;border-radius:13px!important}
  .mobile-fixed-ad .ad-fallback,.mobile-fixed-ad ins{min-height:50px!important;max-height:50px!important}
  .has-mobile-ad .screen.active,.has-mobile-ad .editor-screen.active{padding-bottom:calc(112px + env(safe-area-inset-bottom))!important}
}

@media (max-width:760px) and (max-height:680px){
  :root{--mobile-tool-rail:50px}
  .editor-toolbar-v10{width:50px!important;padding:4px!important;gap:3px!important}
  .editor-toolbar-v10 button:not(.hidden){width:40px!important;min-width:40px!important;max-width:40px!important;min-height:33px!important;max-height:40px!important}
  .editor-toolbar-v10 button:not(.hidden)::before{font-size:18px!important}
  .card-head-v10{flex-basis:42px!important;min-height:42px!important;padding:5px 10px!important}
  .photo-stage-v10{gap:5px!important;padding:5px 6px!important}
  #detectionStatus{min-height:27px!important;padding:5px 7px!important}
  #autoAlign{height:34px!important;min-height:34px!important}
}

/* Print builder mobile redesign. */
@media (max-width:900px){
  body.print-app{
    min-height:100dvh!important;
    height:auto!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding:0 0 76px!important;
  }
  .print-topbar{
    position:fixed!important;
    inset:8px auto auto 8px!important;
    z-index:160!important;
    width:44px!important;
    height:44px!important;
    min-height:44px!important;
    padding:0!important;
    margin:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
    pointer-events:none!important;
  }
  .print-topbar .print-brand{pointer-events:auto!important;width:44px!important;height:44px!important;padding:0!important}
  .print-topbar .print-brand b{display:grid!important;place-items:center!important;width:44px!important;height:44px!important;border-radius:14px!important;font-size:17px!important;box-shadow:0 10px 28px rgba(77,58,216,.28)!important}
  .print-topbar .print-brand span,.print-topbar nav,.print-topbar #printLanguage{display:none!important}

  .print-shell,
  .embedded.print-app .print-shell,
  body.embedded.print-app .print-shell{
    display:flex!important;
    flex-direction:column!important;
    width:100%!important;
    height:auto!important;
    min-height:100dvh!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
    gap:0!important;
  }
  .print-preview-area{
    order:-1!important;
    position:sticky!important;
    top:0!important;
    z-index:35!important;
    width:100%!important;
    height:42dvh!important;
    min-height:300px!important;
    max-height:390px!important;
    display:grid!important;
    grid-template-rows:auto minmax(0,1fr) auto auto!important;
    padding:0!important;
    margin:0!important;
    overflow:hidden!important;
    border:0!important;
    border-bottom:1px solid rgba(148,163,184,.13)!important;
    border-radius:0!important;
    background:#080e18!important;
    box-shadow:0 10px 30px rgba(0,0,0,.28)!important;
  }
  .preview-toolbar{min-height:52px!important;padding:8px 8px 8px 60px!important;background:rgba(8,14,24,.96)!important}
  .preview-toolbar>div:first-child strong{font-size:14px!important}
  .preview-toolbar>div:first-child span{font-size:9px!important;max-width:45vw!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .preview-toolbar .zoom{gap:4px!important}
  .preview-toolbar .zoom button{width:32px!important;height:32px!important}
  .print-stage,.stage.print-stage{height:100%!important;min-height:0!important;padding:8px!important;overflow:hidden!important}
  .paper-preview{max-width:100%!important;max-height:100%!important}
  .paper-preview canvas{max-width:100%!important;max-height:100%!important}
  .stats{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:1px!important;padding:0!important;background:rgba(148,163,184,.08)!important}
  .stats>div{min-width:0!important;padding:6px 4px!important;border:0!important;border-radius:0!important;background:#0b1422!important;text-align:center!important}
  .stats span{font-size:7px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .stats strong{font-size:9px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .print-warning{margin:0!important;padding:6px 8px!important;font-size:9px!important;border-radius:0!important}

  .print-controls{
    order:2!important;
    width:100%!important;
    max-width:none!important;
    max-height:none!important;
    min-height:0!important;
    height:auto!important;
    overflow:visible!important;
    padding:10px 8px 20px!important;
    background:#070b12!important;
  }
  .print-controls-head{padding:4px 4px 8px!important}
  .print-controls-head .eyebrow{display:none!important}
  .print-controls-head h1{margin:0!important;font-size:21px!important}
  .print-controls-head p{display:none!important}
  .control-card{margin:0 0 8px!important;padding:10px!important;border-radius:15px!important}
  .section-title{margin-bottom:8px!important}
  .section-title span{width:27px!important;height:27px!important;font-size:9px!important}
  .section-title strong{font-size:12px!important}
  .upload{min-height:94px!important;padding:12px!important;border-radius:14px!important}
  .upload small{display:none!important}
  .file-chip{grid-template-columns:48px minmax(0,1fr) 36px 36px!important;gap:7px!important;padding:7px!important}
  .file-chip-preview{width:48px!important;height:58px!important}
  .photo-queue{gap:6px!important}
  .queue-photo{grid-template-columns:42px minmax(0,1fr) auto 34px!important;gap:7px!important;padding:7px!important;border-radius:12px!important}
  .queue-photo-preview{width:42px!important;height:52px!important}
  .queue-meta strong{font-size:10px!important}.queue-meta small{font-size:8px!important}
  .queue-count{height:34px!important}.queue-count button{width:30px!important}.queue-count input{width:38px!important}
  .field-grid.two,.field-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:7px!important}
  .field-grid.three>label:last-child{grid-column:1/-1!important}
  .preset-row{display:flex!important;gap:6px!important;overflow-x:auto!important;scrollbar-width:none!important}.preset-row::-webkit-scrollbar{display:none!important}
  .preset-row .chip{flex:0 0 auto!important}
  .print-advanced{margin-top:7px!important}
  .print-advanced>summary{padding:8px 0!important;font-size:11px!important}
  .print-gate{padding:9px!important;border-radius:13px!important}.print-gate p{font-size:9px!important;margin:4px 0 7px!important}
  .print-actions{
    position:sticky!important;
    bottom:6px!important;
    z-index:45!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:7px!important;
    margin:9px -2px 0!important;
    padding:7px!important;
    border:1px solid rgba(148,163,184,.13)!important;
    border-radius:15px!important;
    background:rgba(8,14,24,.97)!important;
    box-shadow:0 12px 34px rgba(0,0,0,.34)!important;
    backdrop-filter:blur(12px)!important;
  }
  .print-actions button{min-height:44px!important;font-size:11px!important;border-radius:12px!important}
}

@media (max-width:430px){
  .preview-toolbar>div:first-child span{display:none!important}
  .print-preview-area{height:40dvh!important;min-height:280px!important}
  .stats span{font-size:6px!important}.stats strong{font-size:8px!important}
}


/* v11.10.1 scan-line visibility + GPU compositing */
.process-overlay .scan-line,
.review-analysis-overlay .scan-line{
  display:block!important;
  z-index:8!important;
  pointer-events:none!important;
  height:3px!important;
  opacity:.95!important;
  background:linear-gradient(90deg,transparent 0%,#42f5df 18%,#ffffff 50%,#8b7cff 82%,transparent 100%)!important;
  box-shadow:0 0 8px rgba(66,245,223,.95),0 0 20px rgba(66,245,223,.72),0 0 30px rgba(139,124,255,.45)!important;
  transform:translateZ(0);
  backface-visibility:hidden;
  will-change:transform,opacity!important;
}

/* ===== merged from mobile-v11103.css ===== */
/* Biometric Studio v11.10.3 — authoritative mobile usability pass.
   Loaded last. Desktop layout is intentionally left unchanged. */

@media (max-width:760px){
  :root{
    --bio-step-h:48px;
    --bio-head-h:44px;
    --bio-actions-h:64px;
    --bio-rail-w:50px;
  }

  html,body{width:100%;max-width:100%;height:100%;overflow:hidden!important;overscroll-behavior:none!important}
  body.studio-app{height:100dvh!important;min-height:100dvh!important;overflow:hidden!important;padding:0!important}

  /* tiny floating brand, no wasted header row */
  .app-header-v10{
    position:fixed!important;left:7px!important;top:6px!important;right:auto!important;bottom:auto!important;
    width:38px!important;height:38px!important;min-height:38px!important;padding:0!important;margin:0!important;
    border:0!important;background:transparent!important;box-shadow:none!important;z-index:220!important;pointer-events:none!important;
  }
  .app-header-v10 .logo{width:38px!important;height:38px!important;padding:0!important;margin:0!important;pointer-events:auto!important}
  .app-header-v10 .logo b{width:38px!important;height:38px!important;min-width:38px!important;border-radius:12px!important;font-size:15px!important;display:grid!important;place-items:center!important}
  .app-header-v10 .logo span,.app-header-v10 nav,.app-header-v10 #language,.app-top-ad{display:none!important}

  .studio-shell-v10{
    width:100%!important;height:100dvh!important;min-height:100dvh!important;margin:0!important;padding:0!important;
    display:grid!important;grid-template-rows:var(--bio-step-h) minmax(0,1fr)!important;overflow:hidden!important;
  }

  /* six steps always fit — no horizontal scroll */
  .steps-v10{
    position:relative!important;inset:auto!important;width:100%!important;height:var(--bio-step-h)!important;min-height:var(--bio-step-h)!important;
    padding:5px 7px 5px 52px!important;margin:0!important;border:0!important;border-bottom:1px solid rgba(148,163,184,.12)!important;
    border-radius:0!important;background:rgba(7,11,18,.98)!important;overflow:hidden!important;z-index:120!important;
  }
  .steps-heading,.privacy-note{display:none!important}
  .steps-scroll{
    width:100%!important;height:38px!important;display:grid!important;grid-template-columns:repeat(6,minmax(0,1fr))!important;
    gap:4px!important;overflow:hidden!important;padding:0!important;margin:0!important;
  }
  .steps-v10 .step{
    width:100%!important;min-width:0!important;max-width:none!important;height:38px!important;min-height:38px!important;
    padding:2px!important;margin:0!important;border-radius:11px!important;display:grid!important;place-items:center!important;overflow:hidden!important;
  }
  .steps-v10 .step b{width:30px!important;height:30px!important;min-width:30px!important;margin:0!important;font-size:11px!important;border-radius:10px!important}
  .steps-v10 .step span{display:none!important}

  .main-card-v10{
    min-width:0!important;min-height:0!important;width:100%!important;height:100%!important;display:flex!important;flex-direction:column!important;
    overflow:hidden!important;border:0!important;border-radius:0!important;background:#070b12!important;box-shadow:none!important;
  }
  .card-head-v10{
    flex:0 0 var(--bio-head-h)!important;min-height:var(--bio-head-h)!important;height:var(--bio-head-h)!important;
    position:relative!important;inset:auto!important;margin:0!important;padding:7px 10px!important;display:flex!important;align-items:center!important;
    border-bottom:1px solid rgba(148,163,184,.10)!important;background:#09111d!important;z-index:30!important;
  }
  .card-head-v10 .eyebrow{display:none!important}
  .card-head-v10 h1{margin:0!important;font-size:18px!important;line-height:1.05!important;letter-spacing:-.025em!important}
  .status-pill{max-width:42vw!important;padding:5px 7px!important;font-size:8px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}

  /* Each workflow screen owns its scroll. Bottom actions never move. */
  .screen,.screen.active{width:100%!important;min-width:0!important;min-height:0!important;height:100%!important;max-height:100%!important}
  .screen.active:not(.editor-screen):not(.print-screen){
    display:block!important;overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important;
    padding:0 0 calc(var(--bio-actions-h) + env(safe-area-inset-bottom) + 10px)!important;overscroll-behavior-y:contain!important;
  }
  .screen-scroll{width:100%!important;min-height:0!important;padding:10px 10px 18px!important;overflow:visible!important;max-height:none!important}
  .managed-app-content,.managed-app-content__inner{display:none!important}

  .actions-sticky{
    position:fixed!important;left:0!important;right:0!important;bottom:0!important;top:auto!important;z-index:210!important;
    min-height:var(--bio-actions-h)!important;height:auto!important;display:flex!important;align-items:center!important;gap:7px!important;
    margin:0!important;padding:7px 8px calc(7px + env(safe-area-inset-bottom))!important;
    border:0!important;border-top:1px solid rgba(148,163,184,.14)!important;border-radius:0!important;
    background:rgba(7,12,21,.985)!important;box-shadow:0 -12px 34px rgba(0,0,0,.35)!important;backdrop-filter:blur(16px)!important;
    transform:none!important;contain:none!important;
  }
  .actions-sticky button{
    flex:1 1 0!important;width:auto!important;min-width:0!important;height:46px!important;min-height:46px!important;max-height:46px!important;
    margin:0!important;padding:0 8px!important;border-radius:14px!important;font-size:11px!important;line-height:1.1!important;white-space:normal!important;
  }
  .actions-sticky .next{float:none!important;margin:0!important}
  .has-mobile-ad .actions-sticky{bottom:calc(var(--mobile-ad-height,0px) + 10px + env(safe-area-inset-bottom))!important}
  .mobile-fixed-ad.hidden{display:none!important}
  .mobile-fixed-ad:not(.hidden){display:flex!important}
  .has-mobile-ad .screen.active:not(.print-screen),.has-mobile-ad .editor-screen.active{padding-bottom:calc(var(--bio-actions-h) + var(--mobile-ad-height,0px) + 20px + env(safe-area-inset-bottom))!important}

  /* Standard selection / upload: compact and scroll-safe. */
  .standard-grid{max-height:none!important;overflow:visible!important;grid-template-columns:1fr!important;gap:7px!important;margin-top:10px!important}
  .standard-card{min-height:72px!important;padding:10px 10px 10px 52px!important;border-radius:15px!important}
  .selected-standard{margin-bottom:8px!important}
  .upload-zone{min-height:min(56dvh,430px)!important;height:auto!important;padding:18px 12px!important;border-radius:18px!important}
  .source-preview{height:auto!important;min-height:0!important;padding:8px!important;gap:8px!important;grid-template-columns:1fr!important}
  .source-photo-preview img{width:100%!important;max-height:52dvh!important;object-fit:contain!important}

  /* Prepare: fixed icon rail + maximum photo area. */
  .editor-screen.active{
    display:grid!important;grid-template-columns:var(--bio-rail-w) minmax(0,1fr)!important;grid-template-rows:minmax(0,1fr)!important;
    width:100%!important;height:100%!important;min-height:0!important;padding:0 0 calc(var(--bio-actions-h) + env(safe-area-inset-bottom))!important;
    overflow:hidden!important;
  }
  .editor-toolbar-v10{
    grid-column:1!important;grid-row:1!important;position:relative!important;inset:auto!important;z-index:90!important;
    width:var(--bio-rail-w)!important;height:100%!important;min-height:0!important;max-height:none!important;
    display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:flex-start!important;gap:4px!important;
    padding:5px 4px!important;margin:0!important;border:0!important;border-right:1px solid rgba(148,163,184,.13)!important;border-radius:0!important;
    background:#08111c!important;overflow:visible!important;scrollbar-width:none!important;
  }
  .editor-toolbar-v10::-webkit-scrollbar{display:none!important}
  .editor-toolbar-v10 .toolbar-spacer{display:none!important}
  .editor-toolbar-v10 button.hidden{display:none!important}
  .editor-toolbar-v10 button:not(.hidden){
    position:relative!important;display:grid!important;place-items:center!important;flex:0 0 40px!important;
    width:40px!important;min-width:40px!important;max-width:40px!important;height:40px!important;min-height:40px!important;max-height:40px!important;
    padding:0!important;margin:0!important;border-radius:11px!important;overflow:visible!important;
    border:1px solid rgba(148,163,184,.16)!important;background:#111b2a!important;color:#f7f9fd!important;
    font-size:0!important;line-height:1!important;box-shadow:none!important;transition:width .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease!important;
  }
  .editor-toolbar-v10 button:not(.hidden) > span{display:none!important}
  .editor-toolbar-v10 button:not(.hidden)::before{
    content:attr(data-mobile-icon)!important;display:grid!important;place-items:center!important;width:40px!important;height:40px!important;
    font:750 19px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;color:inherit!important;flex:0 0 40px!important;
  }
  .editor-toolbar-v10 button:not(.hidden)::after{display:none!important;content:attr(data-mobile-label)!important}
  .editor-toolbar-v10 button.active,.editor-toolbar-v10 button[aria-pressed="true"]{
    color:#fff!important;background:linear-gradient(145deg,#38256d,#1b2943)!important;border-color:rgba(139,92,246,.65)!important;
    box-shadow:0 0 0 2px rgba(139,92,246,.12)!important;
  }
  .editor-toolbar-v10 button.mobile-tool-open{
    width:144px!important;max-width:144px!important;grid-template-columns:40px minmax(0,1fr)!important;place-items:center start!important;
    justify-content:start!important;z-index:230!important;padding:0 9px 0 0!important;overflow:hidden!important;
    background:linear-gradient(135deg,#24194a,#17253b)!important;border-color:rgba(139,92,246,.70)!important;
    box-shadow:0 12px 30px rgba(0,0,0,.42)!important;
  }
  .editor-toolbar-v10 button.mobile-tool-open::before{grid-column:1!important}
  .editor-toolbar-v10 button.mobile-tool-open::after{
    grid-column:2!important;display:block!important;min-width:0!important;color:#fff!important;
    font:800 10px/1.2 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
    white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;text-align:left!important;
  }
  .editor-toolbar-v10 #openEditorTools{margin-top:auto!important}

  .photo-stage-v10{
    grid-column:2!important;grid-row:1!important;width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-areas:'status' 'frame' 'align'!important;
    grid-template-rows:auto minmax(0,1fr) auto!important;gap:6px!important;padding:6px 7px!important;margin:0!important;overflow:hidden!important;
  }
  #detectionStatus{grid-area:status!important;min-height:28px!important;margin:0!important;padding:5px 7px!important;border-radius:10px!important;font-size:9px!important;line-height:1.35!important}
  #photoFrame{grid-area:frame!important;width:auto!important;height:auto!important;min-width:0!important;min-height:0!important;max-width:100%!important;max-height:100%!important;margin:auto!important;align-self:center!important;justify-self:center!important}
  #autoAlign{grid-area:align!important;width:100%!important;height:36px!important;min-height:36px!important;margin:0!important;border-radius:11px!important;font-size:9px!important}
  #stageToolsPanel{display:none!important}

  /* Full-photo processing effect: subtle, readable and scaled to the actual photo frame. */
  .process-overlay,.review-analysis-overlay{
    position:absolute!important;inset:0!important;overflow:hidden!important;isolation:isolate!important;
    background:linear-gradient(180deg,rgba(3,9,16,.16),rgba(14,10,34,.23))!important;backdrop-filter:none!important;
  }
  .process-overlay::before,.review-analysis-overlay::before{
    opacity:.42!important;background-size:22px 22px!important;
  }
  .process-overlay::after,.review-analysis-overlay::after{
    background:radial-gradient(circle at 50% 46%,transparent 24%,rgba(5,9,17,.12) 70%,rgba(5,9,17,.26) 100%)!important;
  }
  .process-overlay .face-scan,.review-analysis-overlay .face-scan{
    position:absolute!important;left:50%!important;top:48%!important;transform:translate(-50%,-50%)!important;
    width:52%!important;height:58%!important;max-width:none!important;max-height:none!important;border:1.5px solid rgba(109,242,226,.74)!important;
    border-radius:47% 47% 43% 43%!important;background:rgba(255,255,255,.018)!important;
    box-shadow:inset 0 0 38px rgba(94,234,212,.08),0 0 30px rgba(94,234,212,.15)!important;
  }
  .process-overlay .scan-line,.review-analysis-overlay .scan-line{
    display:block!important;position:absolute!important;left:5%!important;right:auto!important;width:90%!important;height:3px!important;z-index:12!important;
    background:linear-gradient(90deg,transparent,#45f4df 14%,#fff 50%,#9586ff 86%,transparent)!important;
    box-shadow:0 0 9px rgba(69,244,223,.95),0 0 22px rgba(69,244,223,.58),0 0 32px rgba(149,134,255,.34)!important;
  }
  .process-overlay strong,.review-analysis-overlay strong{
    position:absolute!important;left:8px!important;right:8px!important;bottom:10px!important;z-index:20!important;
    margin:0!important;padding:6px 8px!important;border-radius:9px!important;background:rgba(5,10,18,.62)!important;
    color:#fff!important;font-size:9px!important;line-height:1.3!important;text-align:center!important;
  }
  .process-overlay>span,.review-analysis-overlay>span{
    position:absolute!important;right:8px!important;top:8px!important;z-index:20!important;margin:0!important;padding:4px 7px!important;
    border-radius:999px!important;background:rgba(5,10,18,.62)!important;font-size:9px!important;
  }

  /* Quality/export/archive compactness. */
  .review-grid-v10,.export-card-v10{grid-template-columns:1fr!important;gap:9px!important;height:auto!important;overflow:visible!important}
  .review-photo,.export-photo{width:min(100%,300px)!important;max-width:300px!important;min-height:0!important;margin:0 auto!important}
  .review-photo img,.export-photo img{max-height:38dvh!important}
  .archive-panel{padding:10px!important;border-radius:15px!important}
  .archive-head{gap:8px!important}.archive-head small{display:none!important}
  .archive-grid{display:flex!important;grid-template-columns:none!important;gap:7px!important;overflow-x:auto!important;overflow-y:hidden!important;margin-top:8px!important;padding:2px 1px 5px!important;scrollbar-width:none!important}
  .archive-grid::-webkit-scrollbar{display:none!important}
  .archive-card{flex:0 0 92px!important;width:92px!important;padding:5px!important;border-radius:12px!important}
  .archive-photo-preview{height:88px!important;border-radius:9px!important}.archive-photo-preview img{width:100%!important;height:100%!important;object-fit:contain!important}
  .archive-card label{font-size:8px!important;line-height:1.15!important;margin-top:5px!important}.archive-card label span{display:block!important;max-height:20px!important;overflow:hidden!important}
  .archive-card button{width:22px!important;height:22px!important;right:7px!important;top:7px!important;font-size:12px!important}

  /* Embedded print screen gets the whole available area; scrolling happens inside the print document. */
  .print-screen.active{display:block!important;width:100%!important;height:100%!important;min-height:0!important;padding:0!important;overflow:hidden!important}
  .print-screen iframe{display:block!important;width:100%!important;height:100%!important;min-height:0!important;border:0!important;overflow:auto!important;background:#070b12!important}

  .dialog-card,.dialog-card--wide,.dialog-card--sheet{max-height:90dvh!important;overflow:hidden!important}
  .tools-scroll{overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important}
}

@media (max-width:390px){
  :root{--bio-rail-w:46px}
  .app-header-v10,.app-header-v10 .logo,.app-header-v10 .logo b{width:36px!important;height:36px!important;min-width:36px!important}
  .steps-v10{padding-left:48px!important;padding-right:5px!important}
  .steps-scroll{gap:3px!important}
  .steps-v10 .step{height:36px!important;min-height:36px!important}
  .steps-v10 .step b{width:28px!important;height:28px!important;min-width:28px!important;font-size:10px!important}
  .editor-toolbar-v10{width:46px!important;padding-left:3px!important;padding-right:3px!important}
  .editor-toolbar-v10 button:not(.hidden){width:38px!important;min-width:38px!important;max-width:38px!important;height:38px!important;min-height:38px!important;max-height:38px!important}
  .editor-toolbar-v10 button:not(.hidden)::before{width:38px!important;height:38px!important;font-size:18px!important}
  .editor-toolbar-v10 button.mobile-tool-open{width:136px!important;max-width:136px!important}
  .card-head-v10 h1{font-size:17px!important}
}

/* Print builder: natural mobile scrolling, compact memory previews, exact actions. */
@media (max-width:900px){
  html.print-root,body.print-app{height:auto!important;min-height:100%!important;overflow-x:hidden!important;overflow-y:auto!important;overscroll-behavior-y:auto!important;-webkit-overflow-scrolling:touch!important}
  body.print-app{padding:0 0 16px!important;background:#070b12!important}
  .print-topbar{
    position:fixed!important;left:7px!important;top:6px!important;right:auto!important;width:38px!important;height:38px!important;min-height:38px!important;
    padding:0!important;margin:0!important;background:transparent!important;border:0!important;box-shadow:none!important;z-index:220!important;pointer-events:none!important;
  }
  .print-topbar .print-brand{width:38px!important;height:38px!important;pointer-events:auto!important;padding:0!important}
  .print-topbar .print-brand b{width:38px!important;height:38px!important;border-radius:12px!important;font-size:15px!important;display:grid!important;place-items:center!important}
  .print-topbar .print-brand span,.print-topbar nav,.print-topbar #printLanguage{display:none!important}

  .print-shell,.embedded.print-app .print-shell,body.embedded.print-app .print-shell{
    display:flex!important;flex-direction:column!important;width:100%!important;max-width:none!important;height:auto!important;min-height:100dvh!important;
    margin:0!important;padding:0!important;gap:0!important;overflow:visible!important;
  }
  .print-preview-area{
    order:-1!important;position:relative!important;top:auto!important;z-index:1!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;
    padding:0!important;margin:0!important;display:grid!important;grid-template-rows:auto auto auto auto!important;gap:0!important;
    overflow:visible!important;border:0!important;border-bottom:1px solid rgba(148,163,184,.12)!important;border-radius:0!important;background:#080e18!important;box-shadow:none!important;
  }
  .preview-toolbar{min-height:46px!important;padding:6px 7px 6px 50px!important;background:#08101b!important}
  .preview-toolbar>div:first-child strong{font-size:12px!important}.preview-toolbar>div:first-child span{font-size:8px!important;max-width:48vw!important}
  .preview-toolbar .zoom button{width:30px!important;height:30px!important}.preview-toolbar .zoom span{font-size:9px!important}
  .print-stage,.stage.print-stage{width:100%!important;height:min(42dvh,360px)!important;min-height:250px!important;max-height:360px!important;padding:26px 18px!important;overflow:auto!important;overscroll-behavior:contain!important}
  .paper-preview{max-width:100%!important;max-height:100%!important;margin:auto!important}.paper-preview canvas{max-width:100%!important;max-height:100%!important}
  .stats{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:1px!important;padding:0!important;background:rgba(148,163,184,.08)!important}
  .stats>div{min-width:0!important;padding:5px 3px!important;border:0!important;border-radius:0!important;background:#0b1422!important;text-align:center!important}
  .stats span{font-size:6px!important}.stats strong{margin-top:2px!important;font-size:8px!important}
  .print-warning{margin:0!important;padding:6px 8px!important;border-radius:0!important;font-size:9px!important}

  .print-controls{order:2!important;width:100%!important;max-width:none!important;height:auto!important;min-height:0!important;max-height:none!important;padding:9px 8px 88px!important;overflow:visible!important;background:#070b12!important;border:0!important;border-radius:0!important;box-shadow:none!important}
  .print-controls-head{padding:2px 3px 7px!important}.print-controls-head .eyebrow,.print-controls-head p{display:none!important}.print-controls-head h1{margin:0!important;font-size:19px!important}
  .control-card{margin:0 0 7px!important;padding:9px!important;border-radius:14px!important}
  .section-title{margin-bottom:7px!important}.section-title span{width:25px!important;height:25px!important;font-size:8px!important}.section-title strong{font-size:11px!important}
  .upload{min-height:82px!important;padding:10px!important}.upload-icon{width:38px!important;height:38px!important;font-size:19px!important}.upload small{display:none!important}
  .file-chip{grid-template-columns:38px minmax(0,1fr) 32px 32px!important;gap:6px!important;padding:6px!important;border-radius:12px!important}.file-chip-preview,.file-chip img{width:38px!important;height:46px!important}

  /* Prepared photos from memory are compact horizontal cards rather than huge previews. */
  .photo-queue{display:flex!important;gap:7px!important;overflow-x:auto!important;overflow-y:hidden!important;padding:1px 1px 5px!important;margin-top:7px!important;scrollbar-width:none!important;scroll-snap-type:x proximity!important}
  .photo-queue::-webkit-scrollbar{display:none!important}
  .queue-photo{flex:0 0 174px!important;width:174px!important;min-height:68px!important;display:grid!important;grid-template-columns:38px minmax(0,1fr) 26px!important;grid-template-rows:auto auto!important;gap:4px 6px!important;padding:6px!important;border-radius:12px!important;scroll-snap-align:start!important}
  .queue-photo-preview{grid-column:1!important;grid-row:1/3!important;width:38px!important;height:48px!important}.queue-photo-preview img{width:100%!important;height:100%!important;object-fit:contain!important}
  .queue-meta{grid-column:2!important;grid-row:1!important;min-width:0!important}.queue-meta strong{font-size:8px!important}.queue-meta small{display:none!important}
  .queue-count{grid-column:2!important;grid-row:2!important;height:27px!important;display:grid!important;grid-template-columns:24px 32px 24px!important}.queue-count button{width:24px!important;height:27px!important;padding:0!important;font-size:12px!important}.queue-count input{width:32px!important;height:27px!important;padding:0!important;font-size:9px!important}
  .queue-remove{grid-column:3!important;grid-row:1!important;width:26px!important;height:26px!important;padding:0!important}

  .field-grid.two,.field-grid.three{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important}.field-grid.three>label:last-child{grid-column:1/-1!important}
  .control-card input,.control-card select{padding:10px 11px!important;border-radius:12px!important}
  .preset-row{display:flex!important;flex-wrap:nowrap!important;overflow-x:auto!important;gap:5px!important;scrollbar-width:none!important}.preset-row::-webkit-scrollbar{display:none!important}.preset-row .chip{flex:0 0 auto!important;padding:7px 9px!important;font-size:9px!important}
  .print-advanced{margin-top:6px!important}.print-advanced summary{padding:6px 0!important;font-size:10px!important}
  .print-gate{padding:8px!important;border-radius:12px!important}.print-gate p{font-size:8px!important;margin:4px 0 6px!important}

  .print-actions{
    position:fixed!important;left:7px!important;right:7px!important;bottom:calc(7px + env(safe-area-inset-bottom))!important;z-index:210!important;
    display:grid!important;grid-template-columns:1fr 1fr!important;gap:6px!important;margin:0!important;padding:6px!important;
    border:1px solid rgba(148,163,184,.14)!important;border-radius:14px!important;background:rgba(8,14,24,.985)!important;box-shadow:0 12px 34px rgba(0,0,0,.42)!important;backdrop-filter:blur(15px)!important;
  }
  .print-actions button{height:44px!important;min-height:44px!important;border-radius:11px!important;font-size:10px!important}

  body.embedded.print-app,body.print-app.embedded{height:100dvh!important;min-height:100dvh!important;overflow-y:auto!important;overflow-x:hidden!important}
  body.embedded.print-app .print-shell,body.print-app.embedded .print-shell{min-height:100%!important}
}

@media (max-width:760px) and (max-height:720px){
  :root{--bio-rail-w:44px;--bio-head-h:40px;--bio-actions-h:58px}
  .card-head-v10{padding-top:5px!important;padding-bottom:5px!important}.card-head-v10 h1{font-size:16px!important}
  .editor-toolbar-v10{width:44px!important;padding:3px!important;gap:2px!important}
  .editor-toolbar-v10 button:not(.hidden){flex-basis:34px!important;width:36px!important;min-width:36px!important;max-width:36px!important;height:34px!important;min-height:34px!important;max-height:34px!important;border-radius:9px!important}
  .editor-toolbar-v10 button:not(.hidden)::before{width:36px!important;height:34px!important;font-size:16px!important}
  .editor-toolbar-v10 button.mobile-tool-open{width:128px!important;max-width:128px!important;grid-template-columns:36px minmax(0,1fr)!important}
  .editor-toolbar-v10 button.mobile-tool-open::after{font-size:9px!important}
  #detectionStatus{min-height:24px!important;padding:4px 6px!important;font-size:8px!important}
  #autoAlign{height:32px!important;min-height:32px!important}
  .actions-sticky button{height:42px!important;min-height:42px!important;max-height:42px!important}
}

@media (max-width:760px){
  .main-card-v10 > .screen.active{flex:1 1 auto!important;height:auto!important;min-height:0!important;max-height:none!important}
  .main-card-v10 > .editor-screen.active,.main-card-v10 > .print-screen.active{height:auto!important;min-height:0!important}
}

/* ===== merged from v11.10.6-compact.css ===== */
/* Biometric Studio v11.10.6 — compact photo-centered UX */

.custom-size--first{margin:0 0 12px!important;border:1px solid rgba(139,92,246,.34)!important;border-radius:16px!important;background:linear-gradient(145deg,rgba(124,92,255,.10),rgba(55,214,208,.035))!important}
.custom-size--first summary{padding:13px 14px!important;font-weight:800!important;cursor:pointer!important}
.custom-size--first>div{padding:0 12px 12px!important}

.watermark-layer{pointer-events:none!important;position:absolute!important;inset:0!important;z-index:4!important;overflow:hidden!important;display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:minmax(42px,1fr);place-items:center;opacity:1!important}
.watermark-layer span{display:block!important;max-width:130px;color:rgba(35,42,62,var(--wm-opacity,.14))!important;font:800 9px/1.1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;letter-spacing:.02em!important;white-space:nowrap!important;transform:rotate(var(--wm-angle,-45deg))!important;text-shadow:0 1px 0 rgba(255,255,255,.32)!important}
.protected-preview.is-unlocked .watermark-layer{display:none!important}

.quality-annotations,.quality-pass-effect{position:absolute;inset:0;z-index:10;pointer-events:none}
.quality-tag{position:absolute;display:flex;align-items:center;gap:5px;transform:translate(-50%,-50%);max-width:148px;padding:5px 7px 5px 5px;border:1px solid rgba(255,118,136,.72);border-radius:999px;background:rgba(54,13,22,.88);box-shadow:0 7px 20px rgba(0,0,0,.34);backdrop-filter:blur(8px);animation:qualityTagIn .32s ease both;animation-delay:var(--tag-delay,0ms)}
.quality-tag:after{content:"";position:absolute;left:50%;top:100%;width:1px;height:16px;background:linear-gradient(rgba(255,118,136,.85),transparent)}
.quality-tag i{width:20px;height:20px;display:grid;place-items:center;flex:0 0 20px;border-radius:50%;background:#ff647c;color:white;font:900 11px/1 system-ui}
.quality-tag span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#fff;font:800 9px/1.1 system-ui}
@keyframes qualityTagIn{from{opacity:0;transform:translate(-50%,-42%) scale(.94)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}
.quality-pass-effect{display:grid;place-items:center;align-content:center;gap:7px;background:radial-gradient(circle at center,rgba(20,184,166,.12),transparent 48%);animation:qualityPassFade 1.05s ease both}
.quality-pass-effect.hidden{display:none!important}
.quality-pass-effect i{width:60px;height:60px;display:grid;place-items:center;border-radius:50%;border:2px solid rgba(94,234,212,.9);background:rgba(4,65,58,.72);color:#89fff1;font:900 30px/1 system-ui;box-shadow:0 0 0 9px rgba(45,212,191,.08),0 14px 36px rgba(0,0,0,.28)}
.quality-pass-effect strong{padding:5px 11px;border-radius:999px;background:rgba(5,30,29,.75);color:#b9fff7;font:900 11px/1 system-ui;letter-spacing:.14em}
@keyframes qualityPassFade{0%{opacity:0;transform:scale(.94)}25%,78%{opacity:1;transform:scale(1)}100%{opacity:.18}}
.review-photo #reviewBadge.is-pass{background:rgba(12,83,73,.92)!important;color:#a7fff2!important;border-color:rgba(94,234,212,.45)!important}
.quality-watermark-unlock{position:absolute;left:50%;bottom:10px;z-index:15;transform:translateX(-50%);min-height:34px;padding:0 11px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(7,12,21,.84);color:#fff;font:800 9px/1 system-ui;box-shadow:0 8px 24px rgba(0,0,0,.34);backdrop-filter:blur(10px);cursor:pointer}
.quality-watermark-unlock.hidden{display:none!important}
.quality-summary-pass,.quality-summary-fail{display:flex;flex-wrap:wrap;gap:6px;justify-content:center}
.quality-summary-pass{color:#65e8d7;font-weight:900}
.quality-summary-fail span{padding:5px 8px;border-radius:999px;background:rgba(255,100,124,.10);border:1px solid rgba(255,100,124,.22);color:#ff9bac;font-size:10px}

.final-photo-actions{position:absolute;z-index:12;left:50%;bottom:8px;transform:translateX(-50%);display:flex;align-items:center;gap:5px;padding:5px;border:1px solid rgba(148,163,184,.22);border-radius:15px;background:rgba(7,12,21,.86);backdrop-filter:blur(12px);box-shadow:0 10px 26px rgba(0,0,0,.34)}
.final-photo-actions button{width:42px;height:38px;display:grid;place-items:center;border:0;border-radius:10px;background:#121d2d;color:#fff;font:800 16px/1 system-ui;cursor:pointer}
.final-photo-actions button span{display:none}
.archive-panel.is-collapsed{display:none!important}

.print-tool-dock{display:none}

.ad-fallback--visible{width:100%;height:100%;min-height:46px;display:grid;grid-template-columns:auto 1fr;grid-template-rows:auto auto;align-content:center;column-gap:8px;padding:6px 10px;text-align:left}
.ad-fallback--visible small{grid-row:1/3;align-self:center;padding:3px 5px;border-radius:6px;background:rgba(124,92,255,.14);font-size:7px;font-weight:900;letter-spacing:.08em}
.ad-fallback--visible strong{font-size:10px;line-height:1.1;color:#dfe7f4}
.ad-fallback--visible span{font-size:8px;line-height:1.15;color:#8f9caf;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

@media (max-width:760px){
  .custom-size--first{margin:0 0 8px!important;border-radius:14px!important}
  .custom-size--first summary{padding:10px 11px!important;font-size:11px!important}
  .custom-size--first>div{padding:0 9px 9px!important;gap:6px!important}
  .search-label{margin-top:0!important}

  .editor-screen.active{grid-template-columns:var(--bio-rail-w,50px) minmax(0,1fr)!important}
  .editor-toolbar-v10{transition:width .18s ease,box-shadow .18s ease!important}
  .editor-toolbar-v10 #toggleToolLabels{order:-20!important;background:linear-gradient(145deg,#24204a,#17243a)!important;border-color:rgba(139,92,246,.54)!important}
  .editor-toolbar-v10 #openEditorTools{margin-top:0!important}
  .editor-toolbar-v10.show-tool-labels{position:absolute!important;left:0!important;top:0!important;bottom:0!important;width:min(178px,54vw)!important;align-items:stretch!important;padding:5px!important;z-index:260!important;overflow-y:auto!important;overflow-x:hidden!important;box-shadow:18px 0 38px rgba(0,0,0,.48)!important;background:rgba(8,17,28,.985)!important;backdrop-filter:blur(15px)!important}
  .editor-toolbar-v10.show-tool-labels button:not(.hidden){width:100%!important;min-width:0!important;max-width:none!important;height:38px!important;min-height:38px!important;max-height:38px!important;display:grid!important;grid-template-columns:38px minmax(0,1fr)!important;justify-content:start!important;place-items:center start!important;padding:0 8px 0 0!important;font-size:0!important}
  .editor-toolbar-v10.show-tool-labels button:not(.hidden)::before{grid-column:1!important;width:38px!important;height:38px!important;content:attr(data-mobile-icon)!important}
  .editor-toolbar-v10.show-tool-labels button:not(.hidden)::after{content:attr(data-mobile-label)!important;display:block!important;grid-column:2!important;min-width:0!important;color:#fff!important;font:800 10px/1.15 system-ui!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;text-align:left!important}
  .editor-toolbar-v10.show-tool-labels #toggleToolLabels::after{content:"Hide tools"!important}
  .editor-toolbar-v10 button.mobile-tool-open{width:40px!important;max-width:40px!important;padding:0!important;grid-template-columns:40px!important;box-shadow:none!important}
  .editor-toolbar-v10 button.mobile-tool-open::after{display:none!important}

  .screen[data-screen="4"].active{overflow:hidden!important;padding-bottom:calc(var(--bio-actions-h) + var(--mobile-ad-height,0px) + 14px + env(safe-area-inset-bottom))!important}
  .screen[data-screen="4"] .screen-scroll{height:100%!important;padding:5px 7px!important;overflow:hidden!important}
  .review-grid-v10{height:100%!important;min-height:0!important;display:grid!important;grid-template-rows:minmax(0,1fr) auto!important;gap:5px!important;overflow:hidden!important}
  .screen[data-screen="4"] .review-photo{align-self:center!important;justify-self:center!important;width:auto!important;max-width:min(84vw,340px)!important;max-height:100%!important;min-height:0!important;margin:0!important}
  .screen[data-screen="4"] .review-photo img{width:100%!important;height:100%!important;max-height:calc(100dvh - var(--bio-step-h) - var(--bio-head-h) - var(--bio-actions-h) - var(--mobile-ad-height,0px) - 66px)!important;object-fit:contain!important}
  .screen[data-screen="4"] .review-results{padding:0!important;min-height:25px!important;text-align:center!important}
  .screen[data-screen="4"] .review-results h3,.screen[data-screen="4"] .review-disclaimer,.screen[data-screen="4"] .manual-review-note{display:none!important}
  .screen[data-screen="4"] .check-list{margin:0!important;min-height:0!important}
  .screen[data-screen="4"] .quality-summary-pass,.screen[data-screen="4"] .quality-summary-fail{min-height:24px!important;align-items:center!important}
  .quality-tag{max-width:118px;padding:4px 6px 4px 4px}.quality-tag i{width:18px;height:18px;flex-basis:18px}.quality-tag span{font-size:8px}
  .quality-pass-effect i{width:52px;height:52px;font-size:26px}.quality-pass-effect strong{font-size:9px}
  .quality-watermark-unlock{bottom:7px;min-height:30px;font-size:8px}

  .screen[data-screen="5"].active{overflow:hidden!important;padding-bottom:8px!important}
  .screen[data-screen="5"] .screen-scroll{height:100%!important;padding:5px 7px 7px!important;overflow:hidden!important}
  .screen[data-screen="5"] .export-card-v10{height:100%!important;display:grid!important;grid-template-rows:minmax(0,1fr) auto!important;gap:5px!important;overflow:hidden!important}
  .screen[data-screen="5"] .export-photo{align-self:center!important;width:auto!important;max-width:min(84vw,340px)!important;max-height:100%!important;margin:0 auto!important}
  .screen[data-screen="5"] .export-photo img{max-height:calc(100dvh - var(--bio-step-h) - var(--bio-head-h) - 116px)!important;object-fit:contain!important}
  .screen[data-screen="5"] .export-info{display:flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;min-height:36px!important;padding:0!important}
  .screen[data-screen="5"] .export-info h2,.screen[data-screen="5"] #exportDetails,.screen[data-screen="5"] .download-summary-card,.screen[data-screen="5"] .compression-result,.screen[data-screen="5"] .export-buttons,.screen[data-screen="5"] .export-secondary-actions{display:none!important}
  .screen[data-screen="5"] .output-gate-card{margin:0!important;padding:6px 8px!important;min-height:34px!important;border-radius:11px!important}
  .screen[data-screen="5"] .output-gate-card>strong,.screen[data-screen="5"] .output-gate-card>p{display:none!important}
  .screen[data-screen="5"] .output-gate-actions{display:flex!important;gap:5px!important}
  .screen[data-screen="5"] .output-gate-actions button{height:30px!important;min-height:30px!important;padding:0 8px!important;font-size:8px!important;border-radius:9px!important}
  .final-photo-actions{bottom:7px;gap:3px;padding:4px;border-radius:13px}
  .final-photo-actions button{width:36px;height:34px;border-radius:9px;font-size:14px}
  .archive-panel{position:absolute!important;left:7px!important;right:7px!important;bottom:7px!important;z-index:50!important;max-height:48%!important;overflow:auto!important;margin:0!important;padding:8px!important;border:1px solid rgba(148,163,184,.18)!important;border-radius:15px!important;background:rgba(8,14,24,.98)!important;box-shadow:0 -14px 34px rgba(0,0,0,.42)!important}
  .archive-panel .archive-head h3{font-size:11px!important}.archive-panel .archive-head small{display:none!important}.archive-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}

  .mobile-fixed-ad{z-index:205!important;display:flex!important;align-items:stretch!important;justify-content:stretch!important;min-height:50px!important;max-height:50px!important;overflow:hidden!important}
  .mobile-fixed-ad:not(.hidden) .ad-fallback--visible{display:grid!important}
  body.has-mobile-ad .mobile-fixed-ad{visibility:visible!important;opacity:1!important}
}

@media (min-width:761px){
  .editor-toolbar-v10 #toggleToolLabels{display:none!important}
  .screen[data-screen="4"] .review-results{align-self:center}
  .screen[data-screen="4"] .review-results .review-disclaimer{display:none}
  .screen[data-screen="5"] .archive-panel{margin-top:10px}
  .final-photo-actions button:hover span{display:block;position:absolute;margin-top:54px;padding:5px 7px;border-radius:7px;background:#050a12;color:white;font-size:9px;white-space:nowrap}
}

/* Mobile print builder: preview remains central; controls open as compact tool sheets. */
@media (max-width:900px){
  html.print-root,body.print-app,body.print-app.embedded{height:100dvh!important;min-height:100dvh!important;overflow:hidden!important;padding:0!important}
  .print-shell,.embedded.print-app .print-shell,body.embedded.print-app .print-shell{height:100dvh!important;min-height:100dvh!important;overflow:hidden!important;display:block!important;position:relative!important}
  .print-preview-area{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;padding:0 0 68px!important;display:grid!important;grid-template-rows:44px minmax(0,1fr) auto!important;overflow:hidden!important;border:0!important}
  .preview-toolbar{height:44px!important;min-height:44px!important;padding:5px 7px 5px 50px!important;z-index:20!important}
  .print-stage,.stage.print-stage{height:100%!important;min-height:0!important;max-height:none!important;padding:12px 10px 76px!important;overflow:hidden!important;display:grid!important;place-items:center!important}
  .paper-preview{max-width:100%!important;max-height:100%!important;margin:auto!important}
  .stats{position:absolute!important;left:7px!important;right:7px!important;bottom:66px!important;z-index:22!important;border-radius:11px!important;overflow:hidden!important;border:1px solid rgba(148,163,184,.12)!important}
  .print-warning{position:absolute!important;left:8px!important;right:8px!important;bottom:104px!important;z-index:25!important;border-radius:10px!important}

  .print-tool-dock{position:absolute;left:50%;bottom:9px;transform:translateX(-50%);z-index:215;display:flex;gap:4px;padding:4px;border:1px solid rgba(148,163,184,.17);border-radius:15px;background:rgba(8,14,24,.97);box-shadow:0 12px 34px rgba(0,0,0,.42);backdrop-filter:blur(14px)}
  .print-tool-dock button{width:48px;height:48px;display:grid;grid-template-rows:22px 12px;place-items:center;border:1px solid rgba(148,163,184,.12);border-radius:11px;background:#111b2a;color:#fff;padding:4px 2px}
  .print-tool-dock button b{font:800 18px/1 system-ui}.print-tool-dock button span{font:800 7px/1 system-ui;color:#9eabbc}
  .print-tool-dock button.is-active{background:linear-gradient(145deg,#38256d,#1b2943);border-color:rgba(139,92,246,.62)}

  .print-controls{display:contents!important;padding:0!important;margin:0!important;background:transparent!important;border:0!important}
  .print-controls-head{display:none!important}
  .print-controls>.control-card{display:none!important}
  .print-controls>.control-card.is-mobile-active{display:block!important;position:fixed!important;left:7px!important;right:7px!important;bottom:66px!important;z-index:210!important;max-height:min(42dvh,360px)!important;overflow:auto!important;margin:0!important;padding:9px!important;border:1px solid rgba(148,163,184,.18)!important;border-radius:16px!important;background:rgba(8,14,24,.985)!important;box-shadow:0 -16px 38px rgba(0,0,0,.46)!important;backdrop-filter:blur(16px)!important}
  .print-controls>.control-card.is-mobile-active .section-title{margin-bottom:6px!important}
  .print-controls>.control-card.is-mobile-active .section-title span{width:24px!important;height:24px!important}
  .print-controls>.control-card.is-mobile-active .section-title strong{font-size:11px!important}
  .print-controls>.control-card.is-mobile-active label{font-size:8px!important}
  .print-controls>.control-card.is-mobile-active input,.print-controls>.control-card.is-mobile-active select{height:34px!important;min-height:34px!important;padding:5px 8px!important;font-size:9px!important}
  .print-controls>.control-card.is-mobile-active .upload{min-height:70px!important;padding:8px!important}
  .print-controls>.control-card.is-mobile-active .photo-queue{max-height:115px!important}
  .print-controls>.control-card.is-mobile-active .print-advanced{margin:3px 0!important}
  .print-controls>.control-card.is-mobile-active .print-advanced summary{padding:4px!important}
  .print-controls>.control-card.is-mobile-active .print-actions{position:static!important;display:grid!important;margin:6px 0 0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
  .print-controls>.control-card.is-mobile-active .print-actions button{height:38px!important;min-height:38px!important}
  .print-controls>.control-card.is-mobile-active .print-gate{padding:7px!important}
  .print-controls>.control-card.is-mobile-active .print-gate p{display:none!important}
  .print-controls>.control-card.is-mobile-active #qualityWrap{margin-top:5px!important}

  body.print-panel-open .stats{opacity:.18;pointer-events:none}
  body.print-panel-open .print-stage{filter:brightness(.78)}
}

@media (max-width:420px){
  .print-tool-dock button{width:44px;height:46px}.print-tool-dock{gap:3px}.print-tool-dock button b{font-size:16px}
  .final-photo-actions button{width:34px}
  .quality-tag{max-width:105px}
}

/* Desktop print builder uses the same photo-first icon workflow as mobile. */
@media (min-width:901px){
  body.print-app{height:100vh;min-height:100vh;overflow:hidden}
  .print-shell{height:calc(100vh - 68px);max-width:1600px;padding:12px 14px 14px;display:block;position:relative;overflow:hidden}
  .embedded .print-shell{height:100dvh;padding:10px}
  .print-controls{display:contents!important;padding:0!important;margin:0!important;border:0!important;background:transparent!important;box-shadow:none!important}
  .print-controls-head{display:none!important}
  .print-controls>.control-card{display:none!important}
  .print-controls>.control-card.is-mobile-active{display:block!important;position:fixed!important;right:18px!important;top:86px!important;width:min(350px,calc(100vw - 36px))!important;max-height:calc(100vh - 104px)!important;overflow:auto!important;z-index:230!important;margin:0!important;padding:13px!important;border:1px solid rgba(148,163,184,.20)!important;border-radius:18px!important;background:rgba(8,14,24,.985)!important;box-shadow:0 20px 56px rgba(0,0,0,.48)!important;backdrop-filter:blur(18px)!important}
  .embedded .print-controls>.control-card.is-mobile-active{top:16px!important;max-height:calc(100dvh - 32px)!important}
  .print-controls>.control-card.is-mobile-active .section-title{margin-bottom:8px!important}
  .print-controls>.control-card.is-mobile-active .upload{min-height:112px!important;padding:13px!important}
  .print-controls>.control-card.is-mobile-active .photo-queue{max-height:200px!important;overflow:auto!important}
  .print-preview-area{position:relative!important;top:auto!important;width:100%!important;height:100%!important;min-height:0!important;padding:10px 12px 74px!important;display:grid!important;grid-template-rows:46px minmax(0,1fr) auto!important;gap:8px!important;overflow:hidden!important;border-radius:24px!important}
  .preview-toolbar{height:46px!important;padding:4px 8px!important}
  .print-stage,.stage.print-stage{min-height:0!important;height:100%!important;padding:42px 72px 74px!important;overflow:hidden!important}
  .paper-preview{max-width:100%!important;max-height:100%!important;margin:auto!important}
  .stats{z-index:22!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important}
  .stats div{padding:8px 10px!important;border-radius:12px!important}
  .stats span{font-size:8px!important}.stats strong{font-size:11px!important;margin-top:3px!important}
  .print-warning{position:absolute!important;left:16px!important;right:16px!important;bottom:78px!important;z-index:30!important}
  .print-tool-dock{position:absolute!important;left:50%!important;bottom:12px!important;transform:translateX(-50%)!important;z-index:220!important;display:flex!important;gap:5px!important;padding:5px!important;border:1px solid rgba(148,163,184,.18)!important;border-radius:16px!important;background:rgba(8,14,24,.97)!important;box-shadow:0 14px 38px rgba(0,0,0,.42)!important;backdrop-filter:blur(16px)!important}
  .print-tool-dock button{width:58px!important;height:48px!important;display:grid!important;grid-template-rows:23px 12px!important;place-items:center!important;padding:4px!important;border:1px solid rgba(148,163,184,.12)!important;border-radius:11px!important;background:#111b2a!important;color:#fff!important;cursor:pointer!important}
  .print-tool-dock button b{font:800 18px/1 system-ui!important}.print-tool-dock button span{font:800 8px/1 system-ui!important;color:#9eabbc!important}
  .print-tool-dock button.is-active{background:linear-gradient(145deg,#38256d,#1b2943)!important;border-color:rgba(139,92,246,.62)!important}
  body.print-panel-open .print-stage{filter:brightness(.76)!important;transition:filter .16s ease}
  body.print-panel-open .stats{opacity:.28!important;pointer-events:none!important}
}

/* v11.10.7 compact reliability overrides */
body.bio-busy-lock .editor-toolbar-v10,
body.bio-busy-lock .actions-sticky,
body.bio-review-busy .actions-sticky{pointer-events:none!important;opacity:.48!important}
body.bio-busy-lock #photoFrame>img{filter:blur(1.8px) saturate(.82) brightness(.88)!important;transform-origin:center!important;transition:filter .22s ease!important}
body.bio-review-busy .review-photo>img{filter:blur(1.35px) saturate(.88) brightness(.9)!important;transition:filter .22s ease!important}
.process-overlay,.review-analysis-overlay{backdrop-filter:blur(2px)!important;background:linear-gradient(180deg,rgba(4,8,14,.08),rgba(4,8,14,.24))!important}
.process-overlay .scan-line,.review-analysis-overlay .scan-line{opacity:1!important;filter:drop-shadow(0 0 8px rgba(112,198,255,.9))!important}

@media (max-width:760px){
  html,body.studio-app{height:100dvh!important;min-height:100dvh!important;overflow:hidden!important}
  .studio-shell-v10{height:calc(100dvh - var(--app-header-height,60px))!important;overflow:hidden!important}
  .main-card-v10{height:100%!important;overflow:hidden!important}
  .screen,.screen.active{overflow:hidden!important;overscroll-behavior:none!important}
  .screen-scroll{height:100%!important;max-height:100%!important;overflow:hidden!important}
  .editor-screen.active{padding-bottom:calc(var(--bio-actions-h) + var(--mobile-ad-height,0px) + 8px)!important}
  .photo-stage-v10{min-height:0!important;height:100%!important;overflow:hidden!important;padding-bottom:4px!important}
  .editor-toolbar-v10{bottom:auto!important;top:0!important;align-self:stretch!important;max-height:100%!important;overflow:hidden!important}
  .editor-toolbar-v10.show-tool-labels{top:0!important;bottom:auto!important;height:auto!important;max-height:min(66dvh,420px)!important;overflow:hidden!important;width:min(210px,64vw)!important}
  .editor-toolbar-v10.show-tool-labels button:not(.hidden){height:34px!important;min-height:34px!important;max-height:34px!important;grid-template-columns:34px minmax(0,1fr)!important}
  .editor-toolbar-v10.show-tool-labels button:not(.hidden)::before{width:34px!important;height:34px!important}
  .editor-toolbar-v10.show-tool-labels button:not(.hidden)::after{display:block!important;font-size:9px!important;line-height:1!important}
  .editor-toolbar-v10.show-tool-labels #toggleToolLabels::after{content:"Hide tools"!important}

  .editor-inline-panel.is-open{position:absolute!important;left:48px!important;right:5px!important;bottom:5px!important;top:auto!important;z-index:270!important;max-height:min(46dvh,330px)!important;height:auto!important;overflow:hidden!important;padding:7px!important;border-radius:15px!important}
  .editor-inline-head{min-height:30px!important;margin-bottom:4px!important}.editor-inline-head .eyebrow{display:none!important}
  .editor-inline-mount{max-height:calc(min(46dvh,330px) - 42px)!important;overflow:hidden!important}
  .tool-tabs{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:3px!important;margin:0 0 5px!important}
  .tool-tab{min-height:28px!important;height:28px!important;padding:0 3px!important;font-size:7px!important}
  .tools-scroll{overflow:hidden!important;max-height:none!important;padding:0!important}
  .tool-section{display:none!important}.tool-section.is-active{display:block!important;overflow:hidden!important}
  .tool-section h3,.tool-help,.acceptance-rules,.gender-guide,.section-divider{display:none!important}
  .tool-fields,.download-limit-grid,.download-limit-info{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:4px!important}
  .tool-section label{font-size:7px!important;gap:2px!important}.tool-section input,.tool-section select,.tool-section textarea{min-height:30px!important;height:30px!important;font-size:8px!important;padding:3px 6px!important}
  .tool-section textarea{height:46px!important}.background-swatches{margin:2px 0!important}.background-swatches button{width:30px!important;height:30px!important}
  .inline-size-controls{grid-template-columns:1fr 1fr auto!important;gap:4px!important}.inline-size-controls button{height:30px!important;min-height:30px!important;font-size:8px!important}

  .mobile-fixed-ad{left:4px!important;right:4px!important;bottom:4px!important;min-height:48px!important;max-height:48px!important;border-radius:12px!important}
  .mobile-fixed-ad .ad-fallback{min-height:48px!important;height:48px!important;padding:3px 8px!important;grid-template-columns:auto 1fr!important;align-items:center!important;gap:2px 8px!important}
  .mobile-fixed-ad .ad-fallback span{display:none!important}.mobile-fixed-ad .ad-fallback small{font-size:6px!important}.mobile-fixed-ad .ad-fallback strong{font-size:9px!important}
  .has-mobile-ad .actions-sticky{bottom:calc(var(--mobile-ad-height,48px) + 4px)!important}
  .actions-sticky{padding:5px 6px calc(5px + env(safe-area-inset-bottom))!important;min-height:52px!important}
  .actions-sticky button{height:40px!important;min-height:40px!important;max-height:40px!important;font-size:9px!important;border-radius:11px!important}
  .has-mobile-ad .screen.active:not(.print-screen),.has-mobile-ad .editor-screen.active{padding-bottom:calc(var(--bio-actions-h) + var(--mobile-ad-height,48px) + 8px + env(safe-area-inset-bottom))!important}
}

@media (max-width:900px){
  .print-tool-dock{width:min(calc(100vw - 12px),360px)!important;justify-content:center!important;bottom:5px!important}
  .print-tool-dock button{flex:1 1 0!important;width:auto!important;min-width:0!important;height:50px!important;grid-template-rows:22px 14px!important}
  .print-tool-dock button span{display:block!important;font-size:8px!important;color:#d4dbea!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
  .print-controls>.control-card.is-mobile-active{left:5px!important;right:5px!important;bottom:62px!important;max-height:none!important;height:auto!important;overflow:hidden!important;padding:7px!important;border-radius:14px!important}
  .print-controls>.control-card.is-mobile-active .section-title{margin-bottom:4px!important}
  .print-controls>.control-card.is-mobile-active .section-title span{width:20px!important;height:20px!important}.print-controls>.control-card.is-mobile-active .section-title strong{font-size:10px!important}
  .print-controls>.control-card.is-mobile-active label{font-size:7px!important;gap:2px!important}.print-controls>.control-card.is-mobile-active input,.print-controls>.control-card.is-mobile-active select{height:30px!important;min-height:30px!important;font-size:8px!important;padding:3px 6px!important}
  .print-controls>.control-card.is-mobile-active .field-grid{gap:4px!important}.print-controls>.control-card.is-mobile-active .upload{min-height:54px!important;padding:5px!important}.print-controls>.control-card.is-mobile-active .upload small{display:none!important}
  .print-controls>.control-card.is-mobile-active .photo-queue{max-height:88px!important;overflow:hidden!important}.queue-photo{min-height:38px!important;padding:3px!important}.queue-photo-preview{width:30px!important;height:36px!important}.queue-meta small{display:none!important}
  .print-controls>.control-card.is-mobile-active .print-advanced{margin:2px 0!important}.print-controls>.control-card.is-mobile-active .print-advanced summary{display:none!important}.print-controls>.control-card.is-mobile-active .print-advanced[open]>*:not(summary){display:block!important}
  .print-controls>.control-card.is-mobile-active .print-gate{padding:5px!important;margin:4px 0!important}.print-controls>.control-card.is-mobile-active .print-gate p{display:none!important}.print-controls>.control-card.is-mobile-active .print-actions{gap:4px!important;margin-top:4px!important}.print-controls>.control-card.is-mobile-active .print-actions button{height:34px!important;min-height:34px!important;font-size:8px!important}
  .stats{bottom:58px!important}.print-preview-area{padding-bottom:60px!important}.print-stage,.stage.print-stage{padding-bottom:62px!important}
}
@media (max-width:900px){
  #printPaperPanel.paper-mode .print-advanced{display:none!important}
  #printPaperPanel.layout-mode>label:first-of-type,#printPaperPanel.layout-mode>.advanced-paper{display:none!important}
  #printPaperPanel.layout-mode .print-advanced{display:block!important;border:0!important;padding:0!important;margin:0!important}
  #printPaperPanel.layout-mode .print-advanced summary{display:none!important}
  #printPaperPanel.layout-mode .segmented{margin:0 0 4px!important}
}
.process-overlay::after,.review-analysis-overlay::after{content:"";position:absolute;left:0;right:0;top:-18%;height:18%;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(104,190,255,.12),rgba(126,221,255,.42),transparent);animation:bioContinuousScan 1.55s linear infinite!important;mix-blend-mode:screen}
@keyframes bioContinuousScan{0%{transform:translateY(0)}100%{transform:translateY(650%)}}
@media (max-width:760px){
  .screen[data-screen="1"].active,.screen[data-screen="2"].active,.screen[data-screen="5"].active{overflow-y:auto!important;overflow-x:hidden!important;-webkit-overflow-scrolling:touch!important}
  .screen[data-screen="3"].active,.screen[data-screen="4"].active,.screen[data-screen="6"].active{overflow:hidden!important}
}

/* ===== merged from v11.10.8-ui.css ===== */
/* Biometric Studio v11.10.8 — compact, labeled, photo-first refinements */

/* Stage 3: simplified essential tools. Advanced transforms stay available in code but do not clutter the normal flow. */
.editor-toolbar-v10 .advanced-editor-tool{display:none!important}
.editor-toolbar-v10 #openCropTools,.editor-toolbar-v10 #openBackgroundTools{display:grid!important}
.editor-inline-head{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important}
.editor-inline-head .inline-tool-context{margin-right:auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#dbe6f5;font:800 10px/1.1 system-ui}
.editor-inline-panel .tool-tabs{display:none!important}
#editorSettingsSection{display:none!important}
.tools-dialog.output-only .tool-tabs{display:none!important}
.tools-dialog.output-only .tool-section{display:none!important}
.tools-dialog.output-only #downloadSettingsSection{display:block!important}

/* Stage 5 action rail: labels are always visible, not tooltip-only. */
.final-photo-actions{left:auto!important;right:7px!important;top:50%!important;bottom:auto!important;transform:translateY(-50%)!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;width:76px!important;gap:4px!important;padding:4px!important}
.final-photo-actions button{width:68px!important;height:38px!important;min-height:38px!important;display:grid!important;grid-template-columns:20px minmax(0,1fr)!important;place-items:center start!important;gap:4px!important;padding:0 6px!important;font-size:13px!important}
.final-photo-actions button span{display:block!important;min-width:0!important;color:#e8eef8!important;font:800 8px/1.05 system-ui!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.archive-head-actions{display:flex;align-items:center;gap:5px}.archive-close{width:28px!important;height:28px!important;min-height:28px!important}
.print-screen{position:relative!important}.print-builder-close{position:absolute;left:8px;top:8px;z-index:30;height:34px;padding:0 10px;border:1px solid rgba(148,163,184,.22);border-radius:10px;background:rgba(8,14,24,.92);color:#fff;font:800 10px/1 system-ui;backdrop-filter:blur(10px);cursor:pointer}.print-builder-close span{font-size:9px}

@media (max-width:760px){
  /* Keep the current excellent no-scroll image layout and only refine the rail. */
  .editor-toolbar-v10{overflow:hidden!important}
  .editor-toolbar-v10 button:not(.hidden)>.tool-icon{display:none!important}
  .editor-toolbar-v10 button:not(.hidden)>.tool-label{display:none!important}
  .editor-toolbar-v10 button:not(.hidden)::after{display:none!important}
  .editor-toolbar-v10.show-tool-labels button:not(.hidden)::after{display:none!important;content:none!important}
  .editor-toolbar-v10.show-tool-labels #toggleToolLabels::after{display:none!important;content:none!important}
  .editor-toolbar-v10.show-tool-labels{width:min(192px,58vw)!important;max-height:min(72dvh,430px)!important;overflow-y:auto!important;overflow-x:hidden!important}
  .editor-toolbar-v10.show-tool-labels button:not(.hidden){display:grid!important;grid-template-columns:36px minmax(0,1fr)!important;width:100%!important;min-width:0!important;max-width:none!important;padding:0 7px 0 0!important;font-size:0!important;place-items:center start!important}
  .editor-toolbar-v10.show-tool-labels button:not(.hidden)::before{grid-column:1!important;width:36px!important;height:34px!important}
  .editor-toolbar-v10.show-tool-labels button:not(.hidden)>.tool-label{display:block!important;grid-column:2!important;min-width:0!important;margin:0!important;color:#fff!important;font:800 9px/1.1 system-ui!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;text-align:left!important}
  .editor-toolbar-v10.show-tool-labels #toggleToolLabels>.tool-label{color:#cfc8ff!important}
  .editor-toolbar-v10 #toggleToolLabels::before{font-size:22px!important}
  .editor-inline-panel.is-open{left:50px!important;right:5px!important;bottom:5px!important;max-height:min(42dvh,300px)!important;padding:6px!important}
  .editor-inline-head{min-height:28px!important;margin:0 0 4px!important}.editor-inline-head .inline-tool-context{font-size:9px!important}.editor-inline-head .dialog-close{width:27px!important;height:27px!important;min-height:27px!important}
  .editor-inline-mount{max-height:calc(min(42dvh,300px) - 34px)!important;overflow:hidden!important}
  .editor-inline-panel .tool-section.is-active{gap:5px!important}
  .editor-inline-panel .tool-fields{grid-template-columns:1fr 1fr!important;gap:5px!important}
  .editor-inline-panel .tool-section h3,.editor-inline-panel .section-divider,.editor-inline-panel .tool-help{display:none!important}
  .editor-inline-panel label{gap:2px!important;font-size:7px!important}.editor-inline-panel input,.editor-inline-panel select{height:30px!important;min-height:30px!important}.editor-inline-panel textarea{height:44px!important;min-height:44px!important}
  .background-swatches{display:flex!important;gap:5px!important}.background-swatches button{width:30px!important;height:30px!important}

  /* Keep Stage 5 photo central while reserving a narrow named action rail on its right edge. */
  .screen[data-screen="5"] .export-photo{width:min(92vw,350px)!important;max-width:min(92vw,350px)!important;padding-right:80px!important;box-sizing:border-box!important;background:transparent!important;overflow:visible!important}
  .screen[data-screen="5"] .export-photo>img{width:100%!important;margin:0!important;border-radius:18px!important;background:#fff!important}
  .screen[data-screen="5"] .export-photo .watermark-layer{right:80px!important}
  .screen[data-screen="5"] .output-lock-badge{right:84px!important}
  .final-photo-actions{right:0!important;width:76px!important;background:rgba(7,12,21,.94)!important}
  .final-photo-actions button{width:68px!important;height:36px!important;min-height:36px!important}
  .final-photo-actions button span{font-size:7.5px!important}
  .archive-panel{overflow:hidden!important;max-height:min(45dvh,310px)!important}.archive-grid{max-height:230px!important;overflow:auto!important}

  .tools-dialog .dialog-card--sheet{max-height:min(78dvh,520px)!important;height:auto!important;overflow:hidden!important}.tools-dialog .tools-scroll{overflow:hidden!important}.tools-dialog #downloadSettingsSection{overflow:hidden!important}.tools-dialog #downloadSettingsSection .tool-help{display:none!important}.tools-dialog #downloadSettingsSection .download-limit-info{grid-template-columns:1fr 1fr!important;gap:4px!important}.tools-dialog #downloadSettingsSection .download-limit-info>div:last-child{grid-column:1/-1!important}.tools-dialog #downloadSettingsSection label{font-size:8px!important}.tools-dialog #downloadSettingsSection input{min-height:32px!important;height:32px!important}.tools-dialog .dialog-footer{padding-top:6px!important}.tools-dialog .dialog-footer button{min-height:34px!important;height:34px!important}
  .print-builder-close{top:5px;left:5px;height:30px;padding:0 8px}
}

@media (min-width:761px){
  .final-photo-actions{right:10px!important;width:88px!important}.final-photo-actions button{width:80px!important;height:40px!important;grid-template-columns:22px minmax(0,1fr)!important}.final-photo-actions button span{display:block!important;font-size:9px!important;position:static!important;margin:0!important;padding:0!important;background:none!important}
}


/* Print builder sheets: explicit close control without adding scroll. */
.print-controls>.control-card{position:relative!important}.print-panel-close{display:none;position:absolute;right:7px;top:7px;z-index:8;width:28px;height:28px;min-height:28px;padding:0;border:1px solid rgba(148,163,184,.2);border-radius:9px;background:#111b2a;color:#fff;font:800 17px/1 system-ui;cursor:pointer}
.print-controls>.control-card.is-mobile-active .print-panel-close{display:grid;place-items:center}
@media(max-width:900px){.print-controls>.control-card.is-mobile-active{padding-top:38px!important;overflow:hidden!important}.print-controls>.control-card.is-mobile-active .photo-queue{overflow:auto!important}.print-controls>.control-card.is-mobile-active .print-panel-close{display:grid!important}}
@media(min-width:901px){.print-controls>.control-card.is-mobile-active .print-panel-close{display:grid!important}}

/* ===== merged from v11.10.9-ui.css ===== */
/* Biometric Studio v11.10.9 — locked output gate, complete labels/icons, primary print action */

/* Stage 3: never bring intentionally-hidden advanced tools back when the rail expands. */
@media (max-width:760px){
  .editor-toolbar-v10.show-tool-labels button.advanced-editor-tool:not(.hidden){display:none!important}
  .editor-toolbar-v10.show-tool-labels button:not(.hidden):not(.advanced-editor-tool){display:grid!important;grid-template-columns:36px minmax(0,1fr)!important;align-items:center!important;justify-items:start!important}
  .editor-toolbar-v10.show-tool-labels button:not(.hidden):not(.advanced-editor-tool)>.tool-icon,
  .editor-toolbar-v10.show-tool-labels button:not(.hidden):not(.advanced-editor-tool)>.tool-label{display:none!important}
  .editor-toolbar-v10.show-tool-labels button:not(.hidden):not(.advanced-editor-tool)::before{content:attr(data-mobile-icon)!important;display:grid!important;grid-column:1!important;place-items:center!important;width:36px!important;height:34px!important;color:#f5f7fb!important;font:800 18px/1 system-ui!important}
  .editor-toolbar-v10.show-tool-labels button:not(.hidden):not(.advanced-editor-tool)::after{content:attr(data-mobile-label)!important;display:block!important;grid-column:2!important;position:static!important;min-width:0!important;max-width:100%!important;margin:0!important;padding:0!important;background:none!important;color:#f5f7fb!important;font:800 9px/1.12 system-ui!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;text-align:left!important;opacity:1!important;transform:none!important}
  .editor-toolbar-v10.show-tool-labels #toggleToolLabels::after{content:attr(data-mobile-label)!important;color:#d9d2ff!important}
}

/* Stage 5: the ad unlock is the only active surface until the current output scope is unlocked. */
.screen[data-screen="5"] .export-photo{isolation:isolate!important}
.stage5-unlock-overlay{position:absolute;z-index:40;left:0;top:0;bottom:0;right:80px;display:grid;place-items:center;padding:14px;border-radius:18px;background:linear-gradient(180deg,rgba(5,10,18,.26),rgba(5,10,18,.62));backdrop-filter:blur(2.2px)}
.stage5-unlock-overlay.hidden{display:none!important}
.stage5-unlock-card{width:min(92%,260px);display:grid;justify-items:center;gap:8px;padding:14px 12px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(7,12,21,.90);box-shadow:0 18px 45px rgba(0,0,0,.42);text-align:center}
.stage5-lock-icon{font-size:22px;line-height:1}.stage5-unlock-card>strong{font:850 12px/1.15 system-ui;color:#fff}
.stage5-unlock-ad{width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;gap:9px;padding:0 14px;border:0;border-radius:14px;background:linear-gradient(135deg,#7c5cff,#9a6cff);color:#fff;font:900 12px/1.1 system-ui;box-shadow:0 10px 28px rgba(124,92,255,.32);cursor:pointer}
.stage5-play{width:26px;height:26px;display:grid;place-items:center;border-radius:999px;background:rgba(255,255,255,.17);font-size:11px}
.stage5-unlock-pay{border:0;background:transparent;color:#c9d3e2;font:750 9px/1.1 system-ui;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.screen[data-screen="5"].output-locked .final-photo-actions{opacity:.36!important;filter:saturate(.5)!important;pointer-events:none!important}
.screen[data-screen="5"].output-locked .final-photo-actions button,
.screen[data-screen="5"].output-locked #openDownloadSettings,
.screen[data-screen="5"].output-locked #downloadDigital,
.screen[data-screen="5"].output-locked #printSingle,
.screen[data-screen="5"].output-locked #openPrint,
.screen[data-screen="5"].output-locked #archiveAndNew{pointer-events:none!important}
.screen[data-screen="5"] .output-gate-card{display:none!important}
@media (min-width:761px){.stage5-unlock-overlay{right:96px}.stage5-unlock-card{width:min(86%,300px);padding:18px 16px}.stage5-unlock-ad{min-height:52px;font-size:13px}}

/* Stage 6: complete SVG icons, six equally legible primary tools, Print beside Export. */
.print-tool-dock button svg{width:21px;height:21px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.print-tool-dock button[data-print-action="print"]{background:linear-gradient(145deg,rgba(124,92,255,.28),rgba(17,27,42,.98))!important;border-color:rgba(139,92,246,.45)!important}
.print-tool-dock button:disabled{opacity:.38!important;cursor:not-allowed!important;filter:saturate(.35)!important}
@media (max-width:900px){
  .print-tool-dock{width:min(calc(100vw - 10px),420px)!important;gap:3px!important;padding:4px!important}
  .print-tool-dock button{flex:1 1 0!important;width:auto!important;min-width:0!important;height:50px!important;grid-template-rows:23px 13px!important;padding:4px 1px!important}
  .print-tool-dock button svg{width:19px;height:19px}
  .print-tool-dock button span{display:block!important;max-width:100%!important;font-size:7.5px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
}
@media (min-width:901px){
  .print-tool-dock{gap:5px!important}
  .print-tool-dock button{width:62px!important}
  .print-tool-dock button svg{width:21px;height:21px}
  .print-tool-dock button span{font-size:8px!important}
}

/* ===== merged from v11.10.11-ui.css ===== */
/* Biometric Studio v11.10.10 — final rail consistency, clear Stage 5 actions, embedded preview title spacing */

/* Stage 3: the collapsed and expanded rails contain exactly the same usable tools. */
.editor-toolbar-v10 .advanced-editor-tool,
.editor-toolbar-v10 button.advanced-editor-tool,
.editor-toolbar-v10 button.advanced-editor-tool:not(.hidden){display:none!important}
.editor-toolbar-v10 .toolbar-spacer{display:none!important}
.editor-toolbar-v10 button.hidden{display:none!important}

@media (max-width:760px){
  .editor-toolbar-v10{overflow:hidden!important}
  .editor-toolbar-v10.show-tool-labels{
    width:min(220px,68vw)!important;
    height:auto!important;
    max-height:min(68dvh,430px)!important;
    overflow:hidden!important;
    align-content:start!important;
  }
  .editor-toolbar-v10.show-tool-labels button:not(.hidden):not(.advanced-editor-tool){
    display:grid!important;
    grid-template-columns:38px minmax(0,1fr)!important;
    align-items:center!important;
    justify-items:start!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:36px!important;
    min-height:36px!important;
    max-height:36px!important;
    padding:0 8px 0 0!important;
    font-size:0!important;
  }
  /* Do not use pseudo labels here. Real DOM labels are more reliable and stay visible after translations/cache changes. */
  .editor-toolbar-v10.show-tool-labels button:not(.hidden):not(.advanced-editor-tool)::before,
  .editor-toolbar-v10.show-tool-labels button:not(.hidden):not(.advanced-editor-tool)::after{
    display:none!important;
    content:none!important;
  }
  .editor-toolbar-v10.show-tool-labels button:not(.hidden):not(.advanced-editor-tool)>.tool-icon{
    display:grid!important;
    grid-column:1!important;
    place-items:center!important;
    width:38px!important;
    height:36px!important;
    margin:0!important;
    color:#f5f7fb!important;
    font:800 17px/1 system-ui!important;
  }
  .editor-toolbar-v10.show-tool-labels button:not(.hidden):not(.advanced-editor-tool)>.tool-label{
    display:block!important;
    grid-column:2!important;
    min-width:0!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
    color:#f5f7fb!important;
    font:800 9.5px/1.1 system-ui!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-overflow:clip!important;
    text-align:left!important;
  }
  .editor-toolbar-v10.show-tool-labels #toggleToolLabels>.tool-label{color:#d9d2ff!important}
}

/* Stage 5: stronger, readable right-side primary action rail. */
.final-photo-actions button svg{
  width:17px;height:17px;display:block;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;overflow:visible
}
@media (max-width:760px){
  .screen[data-screen="5"] .export-photo{
    width:min(94vw,360px)!important;
    max-width:min(94vw,360px)!important;
    padding-right:98px!important;
    box-sizing:border-box!important;
    overflow:visible!important;
  }
  .screen[data-screen="5"] .export-photo>img{
    width:100%!important;
    margin:0!important;
    border-radius:18px!important;
    background:#fff!important;
  }
  .screen[data-screen="5"] .export-photo .watermark-layer{right:98px!important}
  .screen[data-screen="5"] .output-lock-badge{right:102px!important}
  .stage5-unlock-overlay{right:98px!important}
  .final-photo-actions{
    right:0!important;
    top:50%!important;
    bottom:auto!important;
    transform:translateY(-50%)!important;
    width:92px!important;
    gap:5px!important;
    padding:5px!important;
    border:1px solid rgba(148,163,184,.20)!important;
    border-radius:15px!important;
    background:rgba(7,12,21,.97)!important;
    box-shadow:0 12px 30px rgba(0,0,0,.36)!important;
  }
  .final-photo-actions button{
    width:82px!important;
    height:40px!important;
    min-height:40px!important;
    display:grid!important;
    grid-template-columns:20px minmax(0,1fr)!important;
    align-items:center!important;
    justify-items:start!important;
    gap:6px!important;
    padding:0 7px!important;
    border:1px solid rgba(148,163,184,.10)!important;
    border-radius:10px!important;
    background:#121d2d!important;
    color:#fff!important;
  }
  .final-photo-actions button span{
    display:block!important;
    min-width:0!important;
    color:#eef3fb!important;
    font:850 9px/1.05 system-ui!important;
    white-space:nowrap!important;
    overflow:visible!important;
    text-overflow:clip!important;
  }
  .final-photo-actions button:disabled{opacity:.34!important;filter:saturate(.45)!important}
}
@media (min-width:761px){
  .final-photo-actions{width:98px!important}
  .final-photo-actions button{width:88px!important;grid-template-columns:21px minmax(0,1fr)!important;gap:7px!important}
  .final-photo-actions button span{font-size:9.5px!important}
}

/* Stage 6 embedded mode: reserve space for the parent "Back to photo" overlay. */
@media (max-width:900px){
  body.embedded.print-app .preview-toolbar,
  body.print-app.embedded .preview-toolbar{
    padding:5px 7px 5px 102px!important;
  }
  body.embedded.print-app .preview-toolbar>div:first-child,
  body.print-app.embedded .preview-toolbar>div:first-child{min-width:0!important}
  body.embedded.print-app .preview-toolbar>div:first-child strong,
  body.print-app.embedded .preview-toolbar>div:first-child strong{
    display:block!important;
    white-space:nowrap!important;
    font-size:12px!important;
  }
}

/* ===== merged from v11.10.12-stage1.css ===== */
/* Biometric Studio v11.10.12-stage1 — workflow/scroll/editor/print fixes */

/* Step 1 + Step 2 scrolling: keep the sticky action row outside the scrollable content. */
.screen[data-screen="1"],.screen[data-screen="2"]{min-height:0}
.screen[data-screen="1"]>.screen-scroll,.screen[data-screen="2"]>.screen-scroll{
  min-height:0;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;touch-action:pan-y;padding-bottom:18px;scrollbar-gutter:stable
}
@media(max-width:760px){
  .screen[data-screen="1"].active,.screen[data-screen="2"].active{display:flex!important;flex-direction:column!important;overflow:hidden!important}
  .screen[data-screen="1"]>.screen-scroll,.screen[data-screen="2"]>.screen-scroll{flex:1 1 auto!important;height:0!important;max-height:none!important;padding-right:3px!important;padding-bottom:24px!important}
  .screen[data-screen="1"] .standard-grid{max-height:none!important;overflow:visible!important;touch-action:pan-y!important}
  .screen[data-screen="2"] .upload-zone,.screen[data-screen="2"] .source-preview{flex:0 0 auto!important}
}

/* Previous prepared photos in Step 2. */
.recent-photos{margin-top:14px;padding:11px;border:1px solid rgba(148,163,184,.18);border-radius:16px;background:#0c1420}
.recent-photos-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:9px}
.recent-photos-head>div{display:grid;gap:2px}.recent-photos-head strong{font-size:12px;color:#f2f6fb}.recent-photos-head small{font-size:10px;color:#8fa0b5}
.recent-scroll-button{flex:0 0 34px;width:34px;height:34px;border:1px solid #2b3b50;border-radius:10px;background:#142033;color:#fff;font-size:17px;cursor:pointer}
.recent-photos-track{display:flex;gap:8px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x proximity;overscroll-behavior-inline:contain;padding:1px 1px 5px;touch-action:pan-x}
.recent-photo-card{position:relative;flex:0 0 92px;scroll-snap-align:start;border:1px solid rgba(148,163,184,.15);border-radius:12px;background:#101b2a;overflow:hidden}
.recent-photo-card__preview{position:relative;width:92px;height:112px;background:#fff;overflow:hidden}.recent-photo-card__preview img{width:100%;height:100%;object-fit:cover;display:block}
.recent-photo-card__title{display:block;padding:6px 6px 3px;color:#dbe6f2;font:800 9px/1.15 system-ui;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.recent-photo-card__actions{display:grid;grid-template-columns:repeat(2,1fr);gap:3px;padding:4px}
.recent-photo-card__actions button{height:27px;border:0;border-radius:7px;background:#18283d;color:#dce7f4;font:800 8px/1 system-ui;cursor:pointer}.recent-photo-card__actions button:hover{background:#243956}
.recent-photo-large{position:relative;width:min(320px,78vw);margin:0 auto 14px;background:#fff;border-radius:16px;overflow:hidden}.recent-photo-large img{display:block;width:100%;height:auto;max-height:55vh;object-fit:contain}
.recent-photo-dialog-actions{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px!important}.recent-photo-dialog-actions button{width:100%}

/* Stage 3 rail: labels must never leak outside collapsed buttons. */
.editor-toolbar-v10:not(.show-tool-labels) .tool-label{display:none!important;visibility:hidden!important;opacity:0!important;position:absolute!important;pointer-events:none!important}
.editor-toolbar-v10.show-tool-labels .tool-label{position:static!important;visibility:visible!important;opacity:1!important;pointer-events:auto!important}
.editor-toolbar-v10 button{overflow:hidden!important}
.editor-toolbar-v10 #paintBrush:not(.hidden){display:grid!important}

/* Context controls appear directly above the photo only for the selected tool. */
.stage-quick-controls{z-index:35;width:min(430px,92%);margin:0 auto 7px;padding:7px 9px;border:1px solid rgba(148,163,184,.20);border-radius:12px;background:rgba(7,14,24,.94);box-shadow:0 8px 22px rgba(0,0,0,.28);backdrop-filter:blur(10px)}
.stage-quick-controls .quick-row{display:flex;align-items:center;gap:7px;min-width:0}.stage-quick-controls .quick-row>strong{flex:0 0 auto;color:#f3f6fa;font-size:10px}.stage-quick-controls input[type="range"]{min-width:0;flex:1}.stage-quick-controls input[type="color"]{width:34px;height:28px;padding:0;border:0;background:transparent}.stage-quick-controls button{height:28px;border:1px solid #314158;border-radius:8px;background:#152236;color:#fff;font:800 9px/1 system-ui;padding:0 8px}.stage-quick-controls .quick-swatches{display:flex;gap:5px}.stage-quick-controls .quick-swatch{width:26px;height:26px;padding:0;border-radius:50%;border:2px solid rgba(255,255,255,.35)}
.brush-active.paint-mode #brushCanvas{cursor:crosshair}.brush-active.erase-mode #brushCanvas{cursor:cell}

/* Step 5 communicates that quality review passed before the unlock decision. */
.stage5-pass-badge{position:absolute;z-index:11;left:10px;top:10px;display:flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid rgba(74,222,128,.38);border-radius:999px;background:rgba(5,46,22,.88);color:#dcfce7;box-shadow:0 8px 18px rgba(0,0,0,.20);backdrop-filter:blur(8px)}
.stage5-pass-badge span{display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:#22c55e;color:#052e16;font-weight:1000}.stage5-pass-badge strong{font:850 9px/1 system-ui}
@media(max-width:760px){
  /* Half of the action rail overlaps the photo, half remains outside it. */
  .screen[data-screen="5"] .export-photo{padding-right:46px!important}
  .screen[data-screen="5"] .export-photo .watermark-layer{right:46px!important}
  .screen[data-screen="5"] .output-lock-badge{right:50px!important}
  .stage5-unlock-overlay{right:46px!important}
  .stage5-pass-badge{left:7px;top:7px}
}

/* Print builder: visible prepared-photo library and reliable multi-photo queue. */
.print-library-button{width:100%;margin:8px 0 4px}
.stored-photo-picker{margin-top:8px;border:1px solid rgba(148,163,184,.16);border-radius:12px;background:#0c1420;padding:8px}.stored-photo-picker-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px}.stored-photo-picker-head button{border:0;background:transparent;color:#fff;font-size:18px}
.stored-photo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(82px,1fr));gap:7px;max-height:52vh;overflow:auto}.stored-photo-option{display:grid;gap:4px;padding:5px;border:1px solid rgba(148,163,184,.16);border-radius:10px;background:#111c2b;color:#fff;cursor:pointer}.stored-photo-option img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:7px;background:#fff}.stored-photo-option strong{font:800 8.5px/1.15 system-ui;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stored-photo-option small{font:700 8px/1 system-ui;color:#8fa0b5}.print-library-dialog{width:min(760px,94vw)!important}
.photo-queue{max-height:32vh;overflow-y:auto;overscroll-behavior:contain}.queue-photo{min-width:0}
@media(max-width:900px){.stored-photo-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.photo-queue{max-height:44vh}}

/* Embedded Stage 6 fills the available frame and remains independently scroll-safe. */
.screen[data-screen="6"].active{min-height:0!important}.screen[data-screen="6"] #printBuilder{display:block;width:100%!important;height:100%!important;min-height:0!important;border:0!important}

/* Stage 1 selector alignment for the live components. */
.recent-photos-track{touch-action:pan-x pan-y}
.recent-photo-preview{position:relative;width:92px;height:108px;padding:0;border:0;background:#fff;overflow:hidden;display:block;cursor:pointer}
.recent-photo-preview img{display:block;width:100%;height:100%;object-fit:cover}
.recent-photo-meta{display:grid;gap:2px;padding:6px 6px 3px;min-width:0}
.recent-photo-meta strong{color:#dbe6f2;font:800 8.5px/1.15 system-ui;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.recent-photo-meta small{color:#8fa0b5;font:700 7.5px/1 system-ui;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.recent-photo-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2px;padding:4px}
.recent-photo-actions button{height:25px;padding:0 2px;border:0;border-radius:6px;background:#18283d;color:#dce7f4;font:800 7.5px/1 system-ui;cursor:pointer;overflow:hidden}
.stage-quick-controls .quick-control-row{display:flex;align-items:center;gap:7px;min-width:0}
.stage-quick-controls .quick-control-row>strong{flex:0 0 auto;color:#f3f6fa;font-size:10px}
.stage-quick-controls .quick-control-row>input[type="range"]{flex:1;min-width:70px}
.stage-quick-controls .quick-backgrounds button[data-quick-bg]{width:27px;height:27px;min-width:27px;padding:0;border:2px solid rgba(255,255,255,.35);border-radius:50%;background:var(--swatch);box-shadow:0 0 0 1px rgba(0,0,0,.25)}
.stored-photo-card{display:grid;grid-template-columns:58px minmax(0,1fr) auto;gap:8px;align-items:center;width:100%;padding:7px;border:1px solid rgba(148,163,184,.16);border-radius:11px;background:#111c2b;color:#fff;text-align:left;cursor:pointer}
.stored-photo-thumb{display:block;width:58px;aspect-ratio:3/4;border-radius:8px;overflow:hidden;background:#fff}
.stored-photo-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.stored-photo-card>span:nth-child(2){display:grid;gap:3px;min-width:0}.stored-photo-card strong{font:800 9px/1.2 system-ui;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stored-photo-card small{font:700 8px/1 system-ui;color:#8fa0b5}.stored-photo-card>b{font:850 8px/1 system-ui;color:#9bc4ff}
.print-library-empty{grid-column:1/-1;color:#9cabc0;font-size:12px;line-height:1.5;padding:10px}
@media(max-width:600px){.stored-photo-grid{grid-template-columns:1fr!important}.stored-photo-card{grid-template-columns:52px minmax(0,1fr) auto}.stored-photo-thumb{width:52px}}
@media(max-width:900px){
  .print-controls>.control-card.is-mobile-active .photo-queue{max-height:142px!important;overflow-y:auto!important;overscroll-behavior:contain!important;-webkit-overflow-scrolling:touch!important}
}

.bio-auth-dialog{border:0;background:transparent}.bio-auth-card{width:min(420px,90vw);background:#102130;color:#eef6fb;border:1px solid #294357;border-radius:18px;padding:20px;display:grid;gap:12px}.bio-auth-head{display:flex;justify-content:space-between;align-items:center}.bio-auth-head h2{margin:0}.bio-auth-card input{padding:12px;border-radius:10px;border:1px solid #385063;background:#08131d;color:#fff}.bio-auth-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.bio-auth-actions button,.bio-oauth{padding:11px;border-radius:10px;border:0;text-align:center;text-decoration:none;background:#eafaff;color:#071018}.ai-premium-fab{position:absolute;top:52px;right:12px;z-index:14;border:1px solid #e7c45f!important;background:#231d0e!important;color:#ffe28a!important;border-radius:999px!important;padding:8px 11px!important;font-weight:800!important}.ai-package-dialog .dialog-card{max-width:560px}.ai-package-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px}.ai-package-card{border:1px solid #334c60;border-radius:14px;padding:14px;background:#0c1925}.ai-package-card button{width:100%;margin-top:8px}

.account-save-prompt{display:grid;gap:6px;margin:12px 0}.account-save-prompt small{opacity:.7}.account-save-prompt .secondary{border-color:#3c7189}

/* ===== merged from v11.10.16-mobile-scroll-hotfix.css ===== */
/* v11.10.16 — mobile Step 1/2 scroll collapse hotfix
   Loaded last on purpose: older mobile styles use high-specificity !important rules. */
@media (max-width:760px){
  /* Step 1 and Step 2 scroll at screen level. Do not use height:0 on .screen-scroll;
     that rule relied on flex, while older high-specificity rules force the screen to grid/block. */
  body.studio-app .main-card-v10 > .screen[data-screen="1"].active,
  body.studio-app .main-card-v10 > .screen[data-screen="2"].active{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-height:100%!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-y:contain!important;
    touch-action:pan-y!important;
    padding-bottom:calc(var(--bio-actions-h,52px) + var(--mobile-ad-height,0px) + 18px)!important;
  }

  body.studio-app .main-card-v10 > .screen[data-screen="1"].active > .screen-scroll,
  body.studio-app .main-card-v10 > .screen[data-screen="2"].active > .screen-scroll{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    min-height:0!important;
    flex:none!important;
    overflow:visible!important;
    touch-action:pan-y!important;
    padding:10px 10px 22px!important;
  }

  body.studio-app .main-card-v10 > .screen[data-screen="1"].active .standard-grid{
    display:grid!important;
    height:auto!important;
    max-height:none!important;
    min-height:0!important;
    overflow:visible!important;
    touch-action:pan-y!important;
  }

  body.studio-app .main-card-v10 > .screen[data-screen="1"].active .search-label,
  body.studio-app .main-card-v10 > .screen[data-screen="1"].active .custom-size,
  body.studio-app .main-card-v10 > .screen[data-screen="1"].active .selected-standard,
  body.studio-app .main-card-v10 > .screen[data-screen="2"].active .upload-zone,
  body.studio-app .main-card-v10 > .screen[data-screen="2"].active .source-preview,
  body.studio-app .main-card-v10 > .screen[data-screen="2"].active .recent-photos{
    height:auto!important;
    min-height:0!important;
    flex:none!important;
  }

  /* Keep the fixed action bar above the fixed mobile ad while content scrolls beneath it. */
  body.studio-app .main-card-v10 > .screen[data-screen="1"].active > .actions-sticky,
  body.studio-app .main-card-v10 > .screen[data-screen="2"].active > .actions-sticky{
    position:fixed!important;
    left:0!important;
    right:0!important;
    z-index:210!important;
  }
  body.studio-app.has-mobile-ad .main-card-v10 > .screen[data-screen="1"].active > .actions-sticky,
  body.studio-app.has-mobile-ad .main-card-v10 > .screen[data-screen="2"].active > .actions-sticky{
    bottom:var(--mobile-ad-height,48px)!important;
  }
}

/* ==========================================================================
   v11.10.18 MOBILE RECOVERY + FRAME STABILITY
   Surgical authority layer. Keeps the proven v11.10.16 mobile flow and only
   adds the requested flags/context/toolbar/frame consistency changes.
   ========================================================================== */

:root{
  --bio-photo-ratio:35 / 45;
  --bio-frame-width:360px;
}
body.studio-app{--bio-photo-ratio:35 / 45}

/* Country flags: keep the existing card geometry, only replace the old code badge. */
.standard-card .country-flag{
  display:grid!important;
  place-items:center!important;
  font-style:normal!important;
  font-size:21px!important;
  line-height:1!important;
  color:inherit!important;
}
@media (max-width:760px){
  .standard-card .country-flag{font-size:20px!important}
}

/* Step 2: selected document context. */
.selected-standard-context{
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:10px;
  align-items:center;
  margin:0 0 12px;
  padding:11px 12px;
  border:1px solid rgba(139,92,246,.32);
  border-radius:15px;
  background:linear-gradient(135deg,rgba(124,58,237,.12),rgba(15,23,42,.78));
}
.selected-standard-context.hidden{display:none!important}
.selected-standard-context .standard-context-flag{font-size:27px;line-height:1}
.selected-standard-context .standard-context-copy{display:grid;gap:3px;min-width:0}
.selected-standard-context strong{font-size:12px;color:#f4f7fb;white-space:normal}
.selected-standard-context small{font-size:10px;color:#9fb0c5;line-height:1.35}

/* The selected document controls the same visual frame ratio in Steps 3, 4 and 5. */
.photo-frame,.review-photo,.export-photo{
  box-sizing:border-box!important;
  aspect-ratio:var(--bio-photo-ratio)!important;
}
.review-photo,.export-photo{
  width:min(var(--bio-frame-width,360px),100%)!important;
  height:auto!important;
  min-width:0!important;
  min-height:0!important;
  max-width:100%!important;
  margin-inline:auto!important;
  overflow:hidden!important;
}
.review-photo>img,.export-photo>img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  min-width:0!important;
  min-height:0!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
}

/* Real toolbar nodes are authoritative. Never let old pseudo labels leak behind icons. */
.editor-toolbar-v10 button:not(.hidden)::before,
.editor-toolbar-v10 button:not(.hidden)::after{
  display:none!important;
  content:none!important;
}
.editor-toolbar-v10 button:not(.hidden)>.tool-icon{
  display:grid!important;
  place-items:center!important;
  opacity:1!important;
  visibility:visible!important;
}
.editor-toolbar-v10 button:not(.hidden)>.tool-label{
  position:static!important;
}

@media (max-width:760px){
  /* Restore the proven screen-level scrolling model from v11.10.16. */
  body.studio-app .main-card-v10>.screen[data-screen="1"].active,
  body.studio-app .main-card-v10>.screen[data-screen="2"].active{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-height:100%!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-y:contain!important;
    touch-action:pan-y!important;
    padding-bottom:calc(var(--bio-actions-h,52px) + var(--mobile-ad-height,0px) + 18px)!important;
  }
  body.studio-app .main-card-v10>.screen[data-screen="1"].active>.screen-scroll,
  body.studio-app .main-card-v10>.screen[data-screen="2"].active>.screen-scroll{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-height:none!important;
    min-height:0!important;
    flex:none!important;
    overflow:visible!important;
    touch-action:pan-y!important;
    padding:10px 10px 24px!important;
  }
  body.studio-app .main-card-v10>.screen[data-screen="1"].active .standard-grid{
    display:grid!important;
    height:auto!important;
    max-height:none!important;
    min-height:0!important;
    overflow:visible!important;
    touch-action:pan-y!important;
  }
  body.studio-app .main-card-v10>.screen[data-screen="1"].active .search-label,
  body.studio-app .main-card-v10>.screen[data-screen="1"].active .custom-size,
  body.studio-app .main-card-v10>.screen[data-screen="1"].active .selected-standard,
  body.studio-app .main-card-v10>.screen[data-screen="2"].active .selected-standard-context,
  body.studio-app .main-card-v10>.screen[data-screen="2"].active .upload-zone,
  body.studio-app .main-card-v10>.screen[data-screen="2"].active .source-preview,
  body.studio-app .main-card-v10>.screen[data-screen="2"].active .recent-photos{
    height:auto!important;
    min-height:0!important;
    flex:none!important;
  }

  /* Step 2 preview must always have a visible box once the hidden class is removed. */
  body.studio-app .screen[data-screen="2"] .source-preview:not(.hidden){
    display:grid!important;
    width:100%!important;
    min-height:0!important;
    overflow:visible!important;
  }
  body.studio-app .screen[data-screen="2"] .source-photo-preview{
    position:relative!important;
    display:grid!important;
    place-items:center!important;
    width:100%!important;
    min-height:180px!important;
    max-height:52dvh!important;
    overflow:hidden!important;
    background:#fff!important;
    border-radius:16px!important;
  }
  body.studio-app .screen[data-screen="2"] .source-photo-preview>img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    max-width:100%!important;
    max-height:52dvh!important;
    object-fit:contain!important;
    opacity:1!important;
    visibility:visible!important;
  }

  /* Collapsed Step 3 rail = real icon only. Expanded rail = icon + real label. */
  .editor-toolbar-v10:not(.show-tool-labels) button:not(.hidden)>.tool-label{
    display:none!important;
    visibility:hidden!important;
    opacity:0!important;
    width:0!important;
    max-width:0!important;
    overflow:hidden!important;
    pointer-events:none!important;
  }
  .editor-toolbar-v10:not(.show-tool-labels) button:not(.hidden)>.tool-icon{
    display:grid!important;
    width:100%!important;
    height:100%!important;
    margin:0!important;
    font:800 18px/1 system-ui!important;
  }
  .editor-toolbar-v10.show-tool-labels button:not(.hidden)>.tool-icon{
    display:grid!important;
    width:34px!important;
    min-width:34px!important;
    height:34px!important;
    font:800 17px/1 system-ui!important;
  }
  .editor-toolbar-v10.show-tool-labels button:not(.hidden)>.tool-label{
    display:block!important;
    width:auto!important;
    max-width:100%!important;
    min-width:0!important;
    visibility:visible!important;
    opacity:1!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    font:800 10px/1.15 system-ui!important;
  }

  /* Steps 4/5 keep the photo visible and allow their content area to scroll if needed. */
  body.studio-app .main-card-v10>.screen[data-screen="4"].active,
  body.studio-app .main-card-v10>.screen[data-screen="5"].active{
    min-height:0!important;
    overflow:hidden!important;
  }
  body.studio-app .main-card-v10>.screen[data-screen="4"]>.screen-scroll,
  body.studio-app .main-card-v10>.screen[data-screen="5"]>.screen-scroll{
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-y:contain!important;
  }
  .review-photo,.export-photo{
    width:min(var(--bio-frame-width,300px),calc(100vw - 76px))!important;
    max-width:calc(100vw - 76px)!important;
    min-height:0!important;
    max-height:none!important;
  }
  .review-photo>img,.export-photo>img{
    display:block!important;
    width:100%!important;
    height:100%!important;
    max-height:none!important;
    object-fit:cover!important;
    opacity:1!important;
    visibility:visible!important;
  }

  /* Fixed actions stay above the ad and never steal the scroll gesture. */
  body.studio-app .main-card-v10>.screen[data-screen="1"].active>.actions-sticky,
  body.studio-app .main-card-v10>.screen[data-screen="2"].active>.actions-sticky{
    position:fixed!important;
    left:0!important;
    right:0!important;
    z-index:210!important;
  }
  body.studio-app.has-mobile-ad .main-card-v10>.screen[data-screen="1"].active>.actions-sticky,
  body.studio-app.has-mobile-ad .main-card-v10>.screen[data-screen="2"].active>.actions-sticky{
    bottom:calc(var(--mobile-ad-height,48px) + 4px)!important;
  }
}

@media (min-width:761px){
  /* Desktop/tablet frame width is shared by Prepare, Review and Final output. */
  .review-photo,.export-photo{
    width:min(var(--bio-frame-width,360px),100%)!important;
  }
}

/* v11.10.19 canonical geometry + stage 5 cleanup + stage 6 mobile recovery */
:root{--bio-document-ratio:5/6;--bio-canonical-frame-width:360px}

/* One document ratio owns every photo surface. No step may invent a different frame. */
#photoFrame,
.screen[data-screen="4"] .review-photo,
.screen[data-screen="5"] .export-photo{
  aspect-ratio:var(--bio-document-ratio)!important;
  min-width:0!important;
  min-height:0!important;
  box-sizing:border-box!important;
}
#photoFrame{
  width:var(--bio-canonical-frame-width)!important;
  height:auto!important;
  max-width:100%!important;
  max-height:none!important;
  margin:0 auto!important;
  background:#fff!important;
  overflow:hidden!important;
  border:0!important;
  outline:0!important;
}
#photoFrame>img{
  position:absolute!important;
  inset:0!important;
  left:50%!important;
  top:50%!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center!important;
}
.screen[data-screen="4"] .review-photo,
.screen[data-screen="5"] .export-photo{
  width:min(var(--bio-canonical-frame-width),100%)!important;
  height:auto!important;
  max-width:100%!important;
  max-height:none!important;
  padding:0!important;
  margin:0 auto!important;
  background:#fff!important;
  border:0!important;
  outline:0!important;
  overflow:hidden!important;
  box-shadow:0 14px 32px rgba(0,0,0,.18)!important;
}
.screen[data-screen="4"] .review-photo>img,
.screen[data-screen="5"] .export-photo>img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  object-fit:contain!important;
  object-position:center!important;
  background:#fff!important;
  border:0!important;
}

/* Desktop editor: keep the document photo visible as a portrait frame from top to bottom. */
@media (min-width:761px){
  .screen[data-screen="3"].active{overflow:hidden!important}
  .screen[data-screen="3"] .photo-stage-v10{
    display:grid!important;
    grid-template-rows:auto auto minmax(0,1fr) auto!important;
    align-content:start!important;
    justify-items:center!important;
    overflow:hidden!important;
    min-height:0!important;
  }
  .screen[data-screen="3"] #stageToolsPanel{width:100%!important}
  .screen[data-screen="3"] #photoFrame{align-self:start!important;justify-self:center!important}
  .screen[data-screen="4"] .review-grid-v10{
    grid-template-columns:minmax(280px,360px) minmax(260px,1fr)!important;
    align-items:start!important;
    gap:24px!important;
  }
  .screen[data-screen="5"] .screen-scroll{overflow-y:auto!important;overflow-x:hidden!important}
  .screen[data-screen="5"] .export-card-v10{
    display:grid!important;
    grid-template-columns:minmax(300px,390px) minmax(260px,1fr)!important;
    grid-template-rows:auto!important;
    align-items:start!important;
    gap:26px!important;
    height:auto!important;
    overflow:visible!important;
    padding:8px 4px 16px!important;
  }
  .screen[data-screen="5"] .export-photo{
    justify-self:center!important;
    align-self:start!important;
    overflow:visible!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .screen[data-screen="5"] .export-photo>img{
    overflow:hidden!important;
    border-radius:20px!important;
    box-shadow:0 14px 32px rgba(0,0,0,.22)!important;
  }
  .screen[data-screen="5"] .export-info{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:12px!important;
    padding:4px 0!important;
  }
  /* Use the photo action rail as the only Save/Print/Sheet controls; remove duplicate controls below. */
  .screen[data-screen="5"] .export-buttons{display:none!important}
  .screen[data-screen="5"] .export-secondary-actions{display:none!important}
  .screen[data-screen="5"] .archive-panel.is-collapsed{display:none!important}
  .screen[data-screen="5"] .final-photo-actions{
    right:-42px!important;
    left:auto!important;
    top:50%!important;
    bottom:auto!important;
    transform:translateY(-50%)!important;
    width:86px!important;
    padding:5px!important;
    gap:5px!important;
    z-index:30!important;
  }
  .screen[data-screen="5"] .final-photo-actions button{width:76px!important}
  .screen[data-screen="5"] .export-photo .watermark-layer{right:0!important}
  .screen[data-screen="5"] .output-lock-badge{right:8px!important}
}

/* Mobile stages 3–5: same document ratio, no artificial black wrapper and no resized inner photo. */
@media (max-width:760px){
  .screen[data-screen="3"] .photo-stage-v10{
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    align-content:start!important;
  }
  #photoFrame{
    width:var(--bio-canonical-frame-width)!important;
    max-width:calc(100vw - 28px)!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    align-self:start!important;
    justify-self:center!important;
    flex:0 0 auto!important;
  }
  .screen[data-screen="4"].active,
  .screen[data-screen="5"].active{overflow:hidden!important}
  .screen[data-screen="4"]>.screen-scroll,
  .screen[data-screen="5"]>.screen-scroll{
    height:100%!important;
    min-height:0!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    -webkit-overflow-scrolling:touch!important;
    overscroll-behavior-y:contain!important;
  }
  .screen[data-screen="4"] .review-photo,
  .screen[data-screen="5"] .export-photo{
    width:min(var(--bio-canonical-frame-width),calc(100vw - 36px))!important;
    max-width:calc(100vw - 36px)!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    padding:0!important;
    overflow:visible!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .screen[data-screen="4"] .review-photo>img,
  .screen[data-screen="5"] .export-photo>img{
    border-radius:18px!important;
    background:#fff!important;
    box-shadow:0 12px 28px rgba(0,0,0,.22)!important;
  }
  .screen[data-screen="5"] .export-card-v10{
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    height:auto!important;
    overflow:visible!important;
    gap:12px!important;
  }
  .screen[data-screen="5"] .export-info{width:100%!important}
  .screen[data-screen="5"] .export-info h2,
  .screen[data-screen="5"] #exportDetails,
  .screen[data-screen="5"] .download-summary-card,
  .screen[data-screen="5"] .compression-result{display:none!important}
  .screen[data-screen="5"] .export-buttons{display:none!important}
  .screen[data-screen="5"] .export-secondary-actions{display:none!important}
  .screen[data-screen="5"] .archive-panel.is-collapsed{display:none!important}
  .screen[data-screen="5"] .final-photo-actions{
    right:-38px!important;
    left:auto!important;
    top:50%!important;
    bottom:auto!important;
    transform:translateY(-50%)!important;
    width:78px!important;
    z-index:30!important;
  }
  .screen[data-screen="5"] .final-photo-actions button{width:68px!important}
  .screen[data-screen="5"] .export-photo .watermark-layer{right:0!important}
  .screen[data-screen="5"] .output-lock-badge{right:8px!important}

  /* Restore the compact v11.10.11 mobile print-sheet container. */
  .main-card-v10:has(.print-screen.active){
    height:calc(100dvh - 58px - 60px - var(--mobile-ad-height,0px))!important;
    min-height:0!important;
    padding:0!important;
    overflow:hidden!important;
  }
  .main-card-v10:has(.print-screen.active)>.card-head-v10{display:none!important}
  .print-screen.active{
    display:block!important;
    position:relative!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    padding:0!important;
    margin:0!important;
    overflow:hidden!important;
  }
  .print-screen #printBuilder{
    display:block!important;
    width:100%!important;
    height:100%!important;
    min-height:0!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    overflow:auto!important;
    background:#070b12!important;
  }
  .print-screen .print-builder-close{top:5px!important;left:5px!important;z-index:50!important;height:30px!important;padding:0 8px!important}
}


/* v11.10.21 — Step 2 only. Keep all other workflow styling unchanged. */
.screen[data-screen="2"] #sourcePreview,
.screen[data-screen="2"] .source-preview-data{
  display:none!important;
}

.screen[data-screen="2"] .upload-zone{
  width:100%!important;
  min-height:250px!important;
  height:auto!important;
  padding:18px 16px!important;
  border-radius:18px!important;
}
.screen[data-screen="2"] .upload-orb{
  width:52px!important;
  height:52px!important;
  border-radius:16px!important;
  margin-bottom:8px!important;
  font-size:24px!important;
}
.screen[data-screen="2"] .upload-zone>strong{
  font-size:16px!important;
  line-height:1.2!important;
  margin-top:0!important;
}
.screen[data-screen="2"] .upload-zone>small{
  margin-top:4px!important;
  line-height:1.35!important;
}
.screen[data-screen="2"] .source-actions{
  margin-top:12px!important;
  gap:8px!important;
}
.screen[data-screen="2"] .source-actions button{
  min-height:40px!important;
  height:40px!important;
  padding:0 14px!important;
}

.screen[data-screen="2"] .recent-photos{
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  overflow:hidden!important;
}
.screen[data-screen="2"] .recent-photos-head{
  min-width:0!important;
}
.screen[data-screen="2"] .recent-photos-head>div:first-child{
  min-width:0!important;
}
.screen[data-screen="2"] .recent-scroll-controls{
  display:flex!important;
  flex:0 0 auto!important;
  gap:6px!important;
  align-items:center!important;
}
.screen[data-screen="2"] .recent-scroll-button{
  display:grid!important;
  place-items:center!important;
  flex:0 0 34px!important;
  width:34px!important;
  height:34px!important;
  padding:0!important;
  user-select:none!important;
  touch-action:manipulation!important;
}
.screen[data-screen="2"] .recent-scroll-button:disabled{
  opacity:.32!important;
  cursor:default!important;
}
.screen[data-screen="2"] .recent-photos-track{
  display:flex!important;
  flex-wrap:nowrap!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  gap:8px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  scroll-behavior:smooth!important;
  scroll-snap-type:x proximity!important;
  overscroll-behavior-x:contain!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-x!important;
  scrollbar-width:thin!important;
}
.screen[data-screen="2"] .recent-photo-card{
  flex:0 0 92px!important;
  width:92px!important;
  min-width:92px!important;
  max-width:92px!important;
}

@media(max-width:760px){
  .screen[data-screen="2"] .upload-zone{
    min-height:190px!important;
    padding:14px 12px!important;
    border-radius:16px!important;
  }
  .screen[data-screen="2"] .upload-orb{
    width:44px!important;
    height:44px!important;
    border-radius:14px!important;
    font-size:21px!important;
    margin-bottom:6px!important;
  }
  .screen[data-screen="2"] .upload-zone>strong{
    font-size:15px!important;
  }
  .screen[data-screen="2"] .source-actions{
    margin-top:9px!important;
    gap:6px!important;
  }
  .screen[data-screen="2"] .source-actions button{
    min-height:38px!important;
    height:38px!important;
  }
  .screen[data-screen="2"] .recent-photos{
    margin-top:10px!important;
    padding:9px!important;
  }
  .screen[data-screen="2"] .recent-photos-head{
    margin-bottom:7px!important;
  }
  .screen[data-screen="2"] .recent-photos-head small{
    display:none!important;
  }
  .screen[data-screen="2"] .recent-scroll-button{
    flex-basis:32px!important;
    width:32px!important;
    height:32px!important;
  }
}


/* v11.10.22 — Level 5 only: compact two-column photo actions + narrower details.
   This block intentionally overrides only the final-photo UI. */
.screen[data-screen="5"] .export-photo{
  position:relative!important;
  padding:0!important;
}
.screen[data-screen="5"] .final-photo-actions{
  position:absolute!important;
  left:50%!important;
  right:auto!important;
  top:auto!important;
  bottom:10px!important;
  transform:translateX(-50%)!important;
  z-index:30!important;
  width:min(220px,calc(100% - 18px))!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  flex-direction:unset!important;
  align-items:stretch!important;
  gap:5px!important;
  padding:5px!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:14px!important;
  background:rgba(7,12,21,.88)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.28)!important;
  backdrop-filter:blur(10px)!important;
}
.screen[data-screen="5"] .final-photo-actions button{
  width:100%!important;
  min-width:0!important;
  height:34px!important;
  min-height:34px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:6px!important;
  padding:0 8px!important;
  border-radius:9px!important;
  font-size:12px!important;
  line-height:1!important;
}
.screen[data-screen="5"] .final-photo-actions button svg{
  flex:0 0 15px!important;
  width:15px!important;
  height:15px!important;
}
.screen[data-screen="5"] .final-photo-actions button span{
  display:block!important;
  position:static!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  background:none!important;
  color:#eef3fb!important;
  font:800 8.5px/1 system-ui!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.screen[data-screen="5"] .final-photo-actions button:last-child{
  grid-column:1 / -1!important;
  width:calc(50% - 2.5px)!important;
  justify-self:center!important;
}
.screen[data-screen="5"] .export-photo .watermark-layer{
  right:0!important;
  bottom:0!important;
}
.screen[data-screen="5"] .stage5-unlock-overlay{
  right:0!important;
}

@media (min-width:761px){
  .screen[data-screen="5"] .export-card-v10{
    grid-template-columns:minmax(300px,390px) minmax(220px,280px)!important;
    justify-content:center!important;
    max-width:760px!important;
    margin:0 auto!important;
    gap:22px!important;
  }
  .screen[data-screen="5"] .export-info{
    width:100%!important;
    max-width:280px!important;
    justify-self:start!important;
    gap:9px!important;
    padding:2px 0!important;
  }
  .screen[data-screen="5"] .export-info h2{
    font-size:22px!important;
    line-height:1.08!important;
    margin:0!important;
  }
  .screen[data-screen="5"] #exportDetails{
    font-size:11px!important;
    line-height:1.45!important;
  }
  .screen[data-screen="5"] .download-summary-card,
  .screen[data-screen="5"] .account-save-prompt{
    width:100%!important;
    max-width:280px!important;
  }
  .screen[data-screen="5"] .download-summary-card{
    min-height:48px!important;
    padding:8px 10px!important;
  }
  .screen[data-screen="5"] .download-summary-card strong{font-size:10px!important}
  .screen[data-screen="5"] .download-summary-card small{font-size:9px!important}
  .screen[data-screen="5"] .account-save-prompt .secondary{
    min-height:38px!important;
    height:38px!important;
    font-size:10px!important;
  }
  .screen[data-screen="5"] .account-save-prompt small{
    display:block!important;
    margin-top:5px!important;
    font-size:9px!important;
    line-height:1.35!important;
  }
}

@media (max-width:760px){
  .screen[data-screen="5"] .final-photo-actions{
    bottom:8px!important;
    width:min(194px,calc(100% - 16px))!important;
    gap:4px!important;
    padding:4px!important;
    border-radius:12px!important;
  }
  .screen[data-screen="5"] .final-photo-actions button{
    height:31px!important;
    min-height:31px!important;
    padding:0 7px!important;
    gap:5px!important;
    border-radius:8px!important;
  }
  .screen[data-screen="5"] .final-photo-actions button svg{
    width:14px!important;
    height:14px!important;
    flex-basis:14px!important;
  }
  .screen[data-screen="5"] .final-photo-actions button span{
    font-size:8px!important;
  }
  .screen[data-screen="5"] .export-info{
    width:min(100%,280px)!important;
    max-width:280px!important;
    margin:0 auto!important;
  }
}

/* AdSense standard placements */
.export-success-ad{margin:14px 0;min-height:90px;border-radius:16px;overflow:hidden}
.export-success-ad.hidden{display:none!important}
@media(max-width:760px){.export-success-ad{min-height:70px;margin:10px 0}}
