@import url("https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Manrope:wght@400;500;600;700;800&display=swap");
:root{--bg:#0d0f12;--surface:#15181d;--surface-2:#1b1f25;--line:#2b3038;--text:#f2f1ed;--muted:#8b929e;--lime:#4969df;--lime-dim:#3857cd;--orange:#f88b52;--font:'Manrope',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--mono:'DM Mono',monospace}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:15px}button,input{font:inherit}button{cursor:pointer;color:inherit}.app-shell{min-height:100vh}.topbar{height:74px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 34px}.brand{display:flex;align-items:center;gap:12px}.brand-mark{width:34px;height:34px;background:var(--lime);color:#101317;font-weight:800;display:grid;place-items:center;font-size:13px;letter-spacing:-.06em}.brand strong{display:block;font-size:15px;letter-spacing:-.02em}.brand span{display:block;font-size:11px;color:var(--muted);margin-top:2px}.topbar-meta{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:12px}.status-dot{width:7px;height:7px;background:var(--lime);border-radius:50%;box-shadow:0 0 0 4px #4969df16}.icon-btn{border:0;background:transparent;color:var(--muted);font-size:17px;margin-left:8px}.workspace{max-width:1440px;margin:0 auto;padding:28px 34px 60px}.mode-tabs{display:flex;gap:22px;border-bottom:1px solid var(--line);margin-bottom:32px}.mode-tab{background:none;border:0;color:var(--muted);padding:0 0 14px;font-weight:600;font-size:13px;position:relative}.mode-tab.active{color:var(--text)}.mode-tab.active:after{content:'';position:absolute;bottom:-1px;left:0;right:0;height:2px;background:var(--lime)}.mode-panel{display:none}.mode-panel.active{display:block}.panel-head{display:flex;justify-content:space-between;gap:32px;align-items:end;margin-bottom:28px}.panel-head.compact{align-items:center}.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--lime);margin:0 0 10px}.panel-head h1{font-size:28px;line-height:1.2;letter-spacing:-.04em;margin:0;max-width:680px}.subcopy{margin:10px 0 0;color:var(--muted);font-size:13px;line-height:1.6}.head-actions{display:flex;gap:10px}.primary-btn,.ghost-btn,.text-btn,.format-btn,.chip,.size-pill{border:1px solid var(--line);background:var(--surface-2);padding:11px 15px;font-weight:700;font-size:12px;white-space:nowrap}.primary-btn{background:var(--lime);color:#11140d;border-color:var(--lime)}.primary-btn span{font-size:15px;margin-left:5px}.ghost-btn{color:var(--text);background:transparent}.ghost-btn.small{padding:7px 10px;font-size:11px}.text-btn{border:0;padding:0;background:transparent;color:var(--lime);font-weight:700}.url-strip{display:flex;gap:10px;margin-bottom:24px}.url-input-wrap{display:flex;align-items:center;gap:10px;flex:1;border:1px solid var(--line);background:var(--surface);padding:0 15px}.url-symbol{color:var(--lime);font-size:18px}.url-input-wrap input{flex:1;background:transparent;border:0;outline:0;color:var(--text);height:44px;font-family:var(--mono);font-size:12px}.url-input-wrap input::placeholder{color:#626975}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:24px}.dropzone{border:1px dashed #47505d;background:#12151a;min-height:92px;display:flex;align-items:center;gap:14px;padding:18px 20px}.drop-icon{width:34px;height:34px;border:1px solid var(--lime);color:var(--lime);display:grid;place-items:center;font-size:21px}.dropzone strong{display:block;font-size:13px}.dropzone span{display:block;color:var(--muted);font-size:11px;margin-top:3px}.dropzone .text-btn{margin-left:auto}.asset-toolbar{display:flex;justify-content:space-between;align-items:center;padding:21px 0 15px;border-bottom:1px solid var(--line)}.toolbar-left,.toolbar-right{display:flex;align-items:center;gap:9px}.toolbar-left>span{font-family:var(--mono);font-size:11px;margin-right:5px}.chip{padding:6px 9px;background:transparent;color:var(--muted);font-size:11px}.chip.active{background:var(--surface-2);color:var(--text)}.asset-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding-top:15px}.asset-card{background:var(--surface);border:1px solid var(--line);position:relative;overflow:hidden}.asset-card.selected{border-color:var(--lime)}.asset-card .thumb{height:126px;background:#21252c;display:grid;place-items:center;overflow:hidden}.asset-card .thumb img{width:100%;height:100%;object-fit:cover}.asset-card .thumb .sample-art{width:100%;height:100%;display:grid;place-items:center;font-weight:800;font-size:28px;color:#fff}.sample-one{background:linear-gradient(140deg,#d5f8a0,#3d633d)}.sample-two{background:linear-gradient(140deg,#b1cae9,#43577c)}.sample-three{background:linear-gradient(140deg,#ffca95,#a54430)}.sample-four{background:linear-gradient(140deg,#b3a5fb,#403070)}.asset-body{padding:11px}.asset-name{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.asset-meta{display:flex;justify-content:space-between;color:var(--muted);font-family:var(--mono);font-size:10px;margin-top:6px}.asset-check{position:absolute;top:8px;left:8px;width:18px;height:18px;border:1px solid #85909e;background:#101317;display:grid;place-items:center;font-size:12px;color:#101317}.selected .asset-check{background:var(--lime);border-color:var(--lime)}.control-panel{background:var(--surface);border:1px solid var(--line);padding:19px;height:max-content}.control-section{padding-bottom:20px;margin-bottom:18px;border-bottom:1px solid var(--line)}.section-title{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;margin-bottom:15px}.muted{color:var(--muted);font-weight:400;font-size:11px}.accent{color:var(--lime);font-family:var(--mono);font-size:11px}.format-row{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.format-btn{padding:8px 4px;background:transparent;color:var(--muted);font-family:var(--mono);font-size:10px}.format-btn.active{background:#293118;border-color:var(--lime);color:var(--lime)}.range-label{display:flex;justify-content:space-between;font-size:12px;margin:12px 0 8px}.range-label output{font-family:var(--mono);color:var(--lime)}.range{width:100%;accent-color:var(--lime)}.range-scale{display:flex;justify-content:space-between;color:#69717c;font-size:10px}.estimate{display:flex;align-items:baseline;gap:8px}.estimate strong{font-family:var(--mono);font-size:22px}.estimate span{color:var(--muted);font-size:11px}.progress{height:4px;background:#2a2f35;margin-top:13px}.progress i{display:block;height:100%;width:62%;background:var(--lime)}.full{width:100%;justify-content:center}.privacy-note{color:#69717c;font-size:10px;text-align:center;margin:14px 0 0}.icon-layout,.sports-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:24px}.icon-editor,.icon-output,.sports-form,.sports-preview{border-top:1px solid var(--line);padding-top:20px}.icon-drop{margin-bottom:20px}.logo-preview{width:46px;height:46px;background:var(--lime);color:#11140d;display:grid;place-items:center;font-weight:800;overflow:hidden}.logo-preview img{width:100%;height:100%;object-fit:cover}.crop-stage{background:var(--surface);border:1px solid var(--line);padding:20px;min-height:390px;display:flex;align-items:center;flex-direction:column}.stage-label{align-self:flex-start;color:var(--muted);font-size:11px;margin-bottom:16px}.crop-square{width:min(100%,310px);aspect-ratio:1;background:repeating-conic-gradient(#e7e9ed 0% 25%,#f3f4f6 0% 50%) 50% / 22px 22px;display:grid;place-items:center;position:relative;overflow:hidden}.crop-guide{position:absolute;inset:15%;border:1px dashed #ffffff80;border-radius:22%}.crop-image{width:58%;aspect-ratio:1;background:var(--lime);display:grid;place-items:center;font-size:50px;font-weight:800;color:#12170b;border-radius:23%;transition:.2s}.crop-controls{display:flex;align-items:center;gap:16px;width:min(100%,310px);margin-top:20px;color:var(--muted);font-size:11px}.crop-controls label{display:flex;align-items:center;gap:8px;flex:1}.crop-controls input{flex:1;accent-color:var(--lime)}.output-head,.preview-top{display:flex;justify-content:space-between;align-items:center;font-size:12px;font-weight:700;margin-bottom:12px}.icon-list{border:1px solid var(--line);background:var(--surface)}.icon-row{display:grid;grid-template-columns:45px 1fr auto auto;gap:12px;align-items:center;padding:11px 13px;border-bottom:1px solid var(--line)}.icon-row:last-child{border-bottom:0}.mini-icon{background:var(--lime);width:34px;height:34px;display:grid;place-items:center;color:#11140d;font-size:10px;font-weight:800;border-radius:22%}.icon-row strong{font-size:11px}.icon-row span{display:block;color:var(--muted);font-size:10px;margin-top:2px}.icon-row code{font-family:var(--mono);color:var(--muted);font-size:10px}.download-mini{border:0;background:transparent;color:var(--lime);font-size:15px}.sports-form{padding-right:12px}.field-label{display:block;color:var(--muted);font-size:11px;margin:0 0 10px}.template-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin-bottom:20px}.template-btn{border:1px solid var(--line);background:var(--surface);padding:12px 7px;text-align:left;font-size:11px;color:var(--muted);min-height:60px}.template-btn.active{border-color:var(--lime);color:var(--text);background:#1e2516}.template-btn b{display:block;color:inherit;margin-bottom:4px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.form-row label{color:var(--muted);font-size:11px}.form-row input{display:block;width:100%;margin-top:7px;border:1px solid var(--line);background:var(--surface);color:var(--text);padding:10px 11px;outline:0;font-size:12px}.size-pills{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:20px}.size-pill{padding:8px 10px;color:var(--muted);background:transparent;font-family:var(--mono);font-size:10px}.size-pill.active{color:var(--lime);border-color:var(--lime);background:#1d2415}.match-art{min-height:455px;background:linear-gradient(145deg,#263e25 0%,#121c17 46%,#1b1010 100%);position:relative;padding:28px;display:flex;flex-direction:column;justify-content:center;overflow:hidden}.match-art:before{content:'';position:absolute;width:290px;height:290px;border:1px solid #ffffff20;border-radius:50%;right:-70px;top:-55px}.match-art:after{content:'';position:absolute;width:420px;height:130px;border-top:1px solid #4969df50;border-radius:50%;transform:rotate(-28deg);left:-100px;bottom:80px}.art-kicker,.art-date,.art-footer{font-family:var(--mono);font-size:10px;color:#d2dbbd;position:relative;z-index:1}.art-title{font-size:clamp(26px,4vw,46px);line-height:1.05;font-weight:800;letter-spacing:-.07em;max-width:400px;margin:20px 0 13px;position:relative;z-index:1}.art-title em{font-style:normal;color:var(--lime);font-size:.55em;letter-spacing:0;margin:0 5px}.art-date{color:var(--lime)}.art-badge{position:absolute;top:28px;right:28px;border:1px solid #4969df80;color:var(--lime);padding:7px 9px;font-size:10px;font-weight:700;z-index:1}.art-footer{display:flex;justify-content:space-between;margin-top:auto;color:#a0a99d;font-size:9px}.art-footer span:last-child{color:var(--lime)}.preview-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}.toast{position:fixed;right:24px;bottom:24px;background:var(--lime);color:#12170b;padding:12px 15px;font-weight:700;font-size:12px;opacity:0;transform:translateY(10px);transition:.2s;pointer-events:none}.toast.show{opacity:1;transform:none}@media(max-width:900px){.content-grid,.icon-layout,.sports-layout{grid-template-columns:1fr}.control-panel{order:-1}.asset-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:620px){.topbar{padding:0 18px}.topbar-meta{display:none}.workspace{padding:22px 18px 45px}.panel-head{display:block}.head-actions{margin-top:18px}.url-strip{display:block}.url-strip .primary-btn{margin-top:8px;width:100%}.asset-grid{grid-template-columns:repeat(2,1fr)}.asset-toolbar{align-items:flex-start;gap:12px}.toolbar-right{flex-direction:column;align-items:flex-end}.form-row{grid-template-columns:1fr}.template-grid{grid-template-columns:repeat(2,1fr)}.panel-head h1{font-size:23px}.icon-drop{align-items:flex-start;flex-wrap:wrap}.icon-drop .text-btn{margin-left:60px}.crop-square{width:250px}}
/* Light, centered upload workspace inspired by the supplied reference layout. */
:root{--bg:#fff;--surface:#fff;--surface-2:#f7f8fc;--line:#e6e9f3;--text:#1f2c55;--muted:#7180a1;--lime:#3e5ee8;--lime-dim:#2947c4;--orange:#f88b52}
body{background:#fff;color:var(--text)}
.topbar{height:82px;padding:0 clamp(20px,5vw,84px);background:#fff;border-bottom:1px solid #e7eaf4;gap:36px}
.brand{flex:0 0 auto;gap:10px}.brand-mark{width:36px;height:36px;background:#3e5ee8;color:#fff;border-radius:6px;box-shadow:0 8px 18px #3e5ee82b}.brand strong{color:#243b9c;letter-spacing:.01em}.brand span{color:#8792ac}
.topbar-meta{margin-left:auto;color:#7683a1}.status-dot{background:#42c788;box-shadow:0 0 0 4px #42c78818}.icon-btn{color:#7180a1}
.top-nav{order:2;display:flex;gap:30px;margin:0 auto;border:0}.top-nav .mode-tab{padding:30px 0 27px;color:#8390ad;font-size:14px}.top-nav .mode-tab.active{color:#3e5ee8}.top-nav .mode-tab.active:after{background:#3e5ee8;height:3px}
.workspace{max-width:1440px;padding:38px clamp(18px,5vw,84px) 76px}
.web-hero{text-align:center;padding:8px 0 30px}.web-hero .eyebrow{color:#6f82d9;letter-spacing:.14em}.web-hero h1{font-size:clamp(46px,6vw,76px);line-height:.98;letter-spacing:-.075em;color:#3d5de0;margin:12px 0 24px;font-weight:800}.web-hero h1 span{font-size:.9em}.web-hero .subcopy{color:#7180a1;font-size:14px;line-height:1.8;margin:0}
.hero-dropzone{width:min(1100px,100%);min-height:246px;margin:0 auto;border:2px dashed #4461ea;background:#fff;border-radius:18px;justify-content:center;gap:35px;padding:34px 42px;box-shadow:0 17px 45px #3e5ee80e;transition:.2s}.hero-dropzone.dragging{background:#f5f7ff;border-color:#2947c4;transform:translateY(-2px)}
.drop-art{width:190px;height:120px;position:relative;display:flex;align-items:flex-end;justify-content:center;gap:0}.drop-art:before,.drop-art:after{content:'';position:absolute;width:84px;height:112px;background:#fff;border:1px solid #e8ebf8;border-radius:12px;box-shadow:0 15px 28px #3e5ee81c;transform:rotate(-8deg);left:26px;top:3px}.drop-art:after{transform:rotate(7deg);left:78px;top:0}.drop-art span{z-index:2;margin:0 -2px 16px;padding:11px 7px;background:#f5f7ff;color:#4c68dd;font-family:var(--mono);font-size:12px;border-radius:5px;box-shadow:0 5px 12px #3e5ee812}.drop-art span:nth-child(1){transform:rotate(-8deg)}.drop-art span:nth-child(2){transform:translateY(-6px)}.drop-art span:nth-child(3){transform:rotate(7deg)}
.drop-copy{text-align:center}.drop-copy strong{font-size:22px;color:#3e5ee8}.drop-copy span{margin-top:10px;color:#8792ac}
.hero-actions{display:flex;align-items:center;justify-content:center;gap:18px;color:#9aa7ca;font-size:14px;margin:22px 0 36px}.hero-actions .primary-btn{border-radius:999px;padding:14px 23px;box-shadow:0 9px 19px #3e5ee833}.hero-actions kbd{display:inline-grid;place-items:center;min-width:40px;height:34px;padding:0 8px;border:2px solid #4562df;border-radius:10px;color:#3e5ee8;background:#fff;font-family:var(--mono);font-size:13px;font-weight:700;box-shadow:0 2px 0 #dfe4f7}.hero-actions b{margin:0 4px;color:#7b88ac}.upload-arrow{font-size:18px;margin-right:6px}
.url-strip{margin:0 auto 28px;width:min(1100px,100%);background:#f8f9fd;border:1px solid #e4e8f3;padding:8px;border-radius:12px}.url-input-wrap{border:0;background:#fff;border-radius:8px;padding-left:13px}.url-input-wrap input{color:#2e3f70}.url-input-wrap input::placeholder{color:#9aa6c1}.url-strip .primary-btn{border-radius:8px;padding:11px 18px}
.content-grid{gap:26px}.asset-toolbar{border-color:#e4e8f3}.asset-card,.control-panel,.icon-list,.crop-stage{background:#fff;border-color:#e4e8f3;border-radius:10px}.asset-card .thumb{background:#f2f4f9}.asset-card.selected{border-color:#3e5ee8}.asset-check{background:#fff;border-color:#b7c0d6}.selected .asset-check{background:#3e5ee8;border-color:#3e5ee8;color:#fff}.control-panel{box-shadow:0 8px 25px #334b9b0c}.control-section{border-color:#e4e8f3}.format-btn.active,.size-pill.active{background:#eef1ff;color:#3e5ee8;border-color:#3e5ee8}.range{accent-color:#3e5ee8}.range-label output,.accent,.text-btn,.download-mini{color:#3e5ee8}.progress{background:#e8ebf4}.progress i{background:#3e5ee8}.privacy-note{color:#8792ac}
.mode-panel:not(#panel-web) .panel-head h1{color:#25355f}.mode-panel:not(#panel-web) .eyebrow{color:#3e5ee8}
.toast{background:#3e5ee8;color:#fff;border-radius:8px;box-shadow:0 8px 25px #3e5ee844}
@media(max-width:820px){.topbar{gap:18px}.top-nav{gap:18px}.top-nav .mode-tab{font-size:12px}.hero-dropzone{min-height:215px;gap:14px;padding:28px 20px}.drop-art{transform:scale(.84)}.drop-copy strong{font-size:18px}}
@media(max-width:620px){.topbar{height:auto;min-height:76px;flex-wrap:wrap;padding:14px 18px;gap:12px}.top-nav{order:3;width:100%;justify-content:space-between;gap:12px}.top-nav .mode-tab{padding:10px 0 12px;font-size:13px}.workspace{padding-top:25px}.web-hero{padding-top:0}.web-hero h1{font-size:50px}.web-hero .subcopy{font-size:12px}.hero-dropzone{display:block;padding:24px 12px;min-height:210px}.drop-art{margin:0 auto 8px}.drop-copy strong{font-size:17px}.drop-copy span{font-size:11px}.hero-actions{flex-wrap:wrap;gap:10px;margin:18px 0 27px}.hero-actions>span:last-of-type{width:100%;text-align:center}.url-strip{display:flex;flex-wrap:wrap}.url-input-wrap{min-width:100%}.url-strip .primary-btn{width:100%;margin-top:2px}.topbar-meta{display:none}}

/* Dark workbench theme. */
:root{--bg:#0d0f12;--surface:#15181d;--surface-2:#1b1f25;--line:#2b3038;--text:#f2f1ed;--muted:#8b929e;--lime:#4969df;--lime-dim:#3857cd}
body{background:var(--bg);color:var(--text)}
.topbar{background:#0d0f12;border-color:var(--line)}
.brand-mark{background:var(--lime);color:#101317;box-shadow:none}.brand strong{color:var(--text)}.brand span{color:var(--muted)}
.top-nav .mode-tab{color:var(--muted)}.top-nav .mode-tab.active{color:var(--text)}.top-nav .mode-tab.active:after{background:var(--lime)}
.topbar-meta{color:var(--muted)}.status-dot{background:var(--lime);box-shadow:0 0 0 4px #4969df16}.icon-btn{color:var(--muted)}
.web-hero .eyebrow{color:var(--lime)}.web-hero h1{color:var(--text)}.web-hero .subcopy{color:var(--muted)}
.hero-dropzone{background:#12151a;border-color:#566170;box-shadow:none}.hero-dropzone.dragging{background:#1c2415;border-color:var(--lime)}
.drop-art:before,.drop-art:after{background:#f7f8fa;border-color:#fff;box-shadow:0 15px 28px #0005}.drop-art span{background:#20252e;color:var(--lime);box-shadow:none}.drop-copy strong{color:var(--lime)}.drop-copy span{color:var(--muted)}
.hero-actions{color:var(--muted)}.hero-actions .primary-btn{box-shadow:none}.hero-actions kbd{border-color:var(--lime);color:var(--lime);background:var(--surface-2);box-shadow:0 2px 0 #0a0c0e}.hero-actions b{color:var(--muted)}
.url-strip{background:transparent;border-color:var(--line)}.url-input-wrap{background:var(--surface);border-color:var(--line)}.url-input-wrap input{color:var(--text)}.url-input-wrap input::placeholder{color:#626975}.url-symbol{color:var(--lime)}
.asset-card,.control-panel,.icon-list,.crop-stage{background:var(--surface);border-color:var(--line);box-shadow:none}.asset-card .thumb{background:#21252c}.asset-card.selected{border-color:var(--lime)}.asset-check{background:#101317;border-color:#85909e}.selected .asset-check{background:var(--lime);border-color:var(--lime);color:#101317}
.asset-toolbar,.control-section{border-color:var(--line)}.format-btn.active,.size-pill.active{background:#293118;color:var(--lime);border-color:var(--lime)}.range{accent-color:var(--lime)}.range-label output,.accent,.text-btn,.download-mini{color:var(--lime)}.progress{background:#2a2f35}.progress i{background:var(--lime)}.privacy-note{color:#69717c}
.mode-panel:not(#panel-web) .panel-head h1{color:var(--text)}.mode-panel:not(#panel-web) .eyebrow{color:var(--lime)}
.template-btn,.form-row input{background:var(--surface);border-color:var(--line);color:var(--text)}.template-btn.active{border-color:var(--lime);color:var(--text);background:#1e2516}
.toast{background:var(--lime);color:#12170b;box-shadow:none}
.empty-assets{grid-column:1/-1;min-height:150px;border:1px dashed var(--line);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--muted);text-align:center}.empty-assets strong{color:var(--text);font-size:13px}.empty-assets span{font-size:11px}.estimate-scope{color:var(--muted);font-family:var(--mono);font-size:10px;margin-top:8px}
.asset-output{color:var(--lime);font-family:var(--mono);font-size:9px;margin-top:6px}.icon-drop.dragging{border-color:var(--lime);background:#1c2415}.primary-btn.small{padding:7px 10px;font-size:11px}
.batch-help{color:var(--muted);font-size:12px;line-height:1.6;margin:0}.asset-controls{margin-top:11px;padding-top:10px;border-top:1px solid var(--line);display:grid;gap:8px}.asset-controls label{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:7px;color:var(--muted);font-size:10px}.asset-controls select{grid-column:2/4;width:100%;border:1px solid var(--line);background:var(--surface-2);color:var(--text);padding:7px 8px;font-size:11px}.asset-controls input{grid-column:2/4;width:100%;accent-color:var(--lime)}.asset-controls output{color:var(--lime);font-family:var(--mono);font-size:10px}.asset-actions{display:flex;gap:7px;margin-top:2px}.asset-actions button{flex:1}.compare-modal{display:none;position:fixed;inset:0;z-index:40}.compare-modal.open{display:block}.compare-backdrop{position:absolute;inset:0;background:#050608d9;backdrop-filter:blur(5px)}.compare-dialog{position:absolute;inset:5vh 5vw;display:flex;flex-direction:column;background:#111419;border:1px solid #353b47;box-shadow:0 25px 80px #0009;padding:24px}.compare-close{position:absolute;right:16px;top:12px;border:0;background:transparent;color:#fff;font-size:30px;line-height:1;z-index:2}.compare-head{display:flex;justify-content:space-between;align-items:flex-start;padding-right:28px;margin-bottom:16px}.compare-head h2{font-size:22px;margin:0;color:var(--text)}.compare-head .eyebrow{margin-bottom:6px}.compare-meta{color:var(--muted);font-family:var(--mono);font-size:11px;padding-top:18px}.compare-stage{position:relative;flex:1;min-height:0;overflow:hidden;background:#24272c;isolation:isolate}.compare-image{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.compare-result{position:absolute;inset:0 auto 0 0;width:50%;overflow:hidden;z-index:1;border-right:1px solid #fff}.compare-result .compare-image{width:100%;max-width:none}.compare-divider{position:absolute;top:0;bottom:0;left:50%;z-index:2;width:2px;background:#fff;transform:translateX(-1px);pointer-events:none}.compare-divider button{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;border:0;border-radius:50%;background:#050608;color:#fff;font-size:19px;box-shadow:0 5px 20px #0008}.compare-label{position:absolute;top:16px;z-index:3;padding:7px 10px;background:#050608cc;color:#fff;font-size:11px}.compare-label-original{left:16px}.compare-label-result{right:16px}.compare-slider{display:flex;align-items:center;gap:12px;margin-top:15px;color:var(--muted);font-size:12px}.compare-slider input{flex:1;accent-color:var(--lime)}
@media(max-width:700px){.compare-dialog{inset:2vh 3vw;padding:16px}.compare-head{display:block}.compare-meta{padding-top:8px}.asset-controls label{font-size:11px}}
.compare-controls{display:grid;grid-template-columns:120px minmax(180px,1fr) minmax(180px,1fr) auto;gap:12px;align-items:end;margin-bottom:16px;padding:12px;border:1px solid var(--line);background:var(--surface)}.compare-controls label{display:grid;grid-template-columns:1fr auto;gap:6px;color:var(--muted);font-size:10px}.compare-controls label:first-child{display:block}.compare-controls select{width:100%;margin-top:6px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);padding:8px;font-size:11px}.compare-controls input{grid-column:1/-1;width:100%;accent-color:var(--lime)}.compare-controls output{color:var(--lime);font-family:var(--mono)}.compare-controls button{height:34px}
@media(max-width:900px){.compare-controls{grid-template-columns:1fr 1fr}.compare-controls button{grid-column:1/-1}}
@media(max-width:560px){.compare-controls{grid-template-columns:1fr}.compare-controls button{grid-column:auto}}
.compare-result{inset:0 0 0 auto;border-right:0;border-left:1px solid #fff}
.compare-result .compare-image{left:auto;right:0}
.compare-divider button{cursor:ew-resize;pointer-events:auto;touch-action:none}
.compare-stage{touch-action:none}
.compare-dialog{inset:0;padding:28px;border:0;box-shadow:none}
.compare-backdrop{background:#050608}
@media(max-width:700px){.compare-dialog{inset:0;padding:16px}}
.format-switch-group{display:flex;gap:0;width:100%;border:1px solid var(--line);background:var(--surface-2);padding:3px}.format-switch{flex:1;border:0;background:transparent;color:var(--muted);padding:7px 5px;font-family:var(--mono);font-size:10px;font-weight:700}.format-switch.active{background:var(--lime);color:#11140d;box-shadow:0 3px 10px #4969df33}.dimension-row{display:flex;align-items:center;gap:6px}.dimension-row label{display:flex;align-items:center;gap:4px;color:var(--muted);font-size:10px}.dimension-row input{width:72px;border:1px solid var(--line);background:var(--surface-2);color:var(--text);padding:6px 7px;font-family:var(--mono);font-size:10px}.lock-ratio{white-space:nowrap}.lock-ratio input{width:auto;accent-color:var(--lime)}.compare-format-control,.compare-dimension-control{display:grid;gap:6px;color:var(--muted);font-size:10px}.compare-controls{grid-template-columns:minmax(220px,1.1fr) minmax(270px,1.3fr) minmax(150px,1fr) minmax(150px,1fr) auto}.compare-controls label{display:grid}.compare-controls label input{margin-top:5px}.compare-controls .dimension-row{align-items:center}.compare-controls .dimension-row input{width:66px}
@media(max-width:1100px){.compare-controls{grid-template-columns:1fr 1fr}.compare-controls .compare-format-control,.compare-controls .compare-dimension-control{grid-column:span 2}.compare-controls button{grid-column:span 2}}
@media(max-width:620px){.compare-controls{grid-template-columns:1fr}.compare-controls .compare-format-control,.compare-controls .compare-dimension-control,.compare-controls button{grid-column:auto}.dimension-row input{width:64px}}
body.drag-active::before{content:"";position:fixed;inset:10px;z-index:100;pointer-events:none;border:2px dashed var(--lime);box-shadow:0 0 0 1px #4969df33,0 0 28px #4969df66,inset 0 0 28px #4969df16;animation:drop-border-pulse 1.25s ease-in-out infinite}
body.drag-active::after{content:"释放以上传图片";position:fixed;left:50%;bottom:24px;z-index:101;pointer-events:none;transform:translateX(-50%);padding:9px 15px;border:1px solid var(--lime);background:#151b12eF;color:var(--lime);font-family:var(--mono);font-size:11px;letter-spacing:.04em;box-shadow:0 0 22px #4969df4d;animation:drop-hint-in .18s ease-out}
@keyframes drop-border-pulse{0%,100%{opacity:.58;box-shadow:0 0 0 1px #4969df22,0 0 18px #4969df4d,inset 0 0 18px #4969df0d}50%{opacity:1;box-shadow:0 0 0 1px #4969df66,0 0 34px #4969df8c,inset 0 0 34px #4969df22}}
@keyframes drop-hint-in{from{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%,0)}}
@media(max-width:620px){body.drag-active::before{inset:6px}body.drag-active::after{bottom:14px;font-size:10px}}
.asset-grid{min-width:0;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}
.asset-card{min-width:0;overflow:hidden}
.asset-card .thumb{height:clamp(150px,18vw,230px);min-height:150px;aspect-ratio:4/3;background:#21252c}
.asset-card .thumb img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
.asset-body{min-width:0;padding:13px}
.asset-controls{min-width:0;gap:10px}
.asset-controls>label{min-width:0}
.asset-controls>label input[type="range"]{min-width:0}
.format-switch-group{min-width:0;overflow:hidden}
.format-switch{min-width:0;padding:8px 4px;font-size:clamp(9px,1vw,10px);text-overflow:ellipsis;overflow:hidden}
.dimension-row{min-width:0;flex-wrap:wrap;gap:7px}
.dimension-row label:not(.lock-ratio){min-width:0;flex:1 1 78px}
.dimension-row input{min-width:0;width:100%;max-width:none}
.dimension-row>span{flex:0 0 auto}
.dimension-row .lock-ratio{flex:0 0 auto}
.asset-actions{min-width:0;gap:8px}
.asset-actions button{min-width:0;overflow:hidden;text-overflow:ellipsis}
.asset-output{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:560px){
  .asset-grid{grid-template-columns:minmax(0,1fr);gap:12px}
  .asset-card .thumb{height:min(62vw,260px);min-height:150px}
  .asset-body{padding:12px}
  .format-switch{font-size:10px;padding-inline:3px}
  .dimension-row label:not(.lock-ratio){flex-basis:92px}
}

/* Full-width workspace and AI cutout panel */
.workspace{max-width:1440px;width:100%;}
.cutout-layout{display:grid;grid-template-columns:minmax(280px, .8fr) minmax(0, 1.2fr);gap:24px}
.cutout-drop{align-self:start;min-height:180px;flex-direction:column;align-items:flex-start;justify-content:center}
.cutout-drop .text-btn{margin-left:0}
.cutout-preview{border-top:1px solid var(--line);padding-top:20px;min-width:0}
.cutout-stage{min-height:420px;display:grid;place-items:center;position:relative;overflow:hidden;background:repeating-conic-gradient(#252a31 0% 25%,#1c2026 0% 50%) 50% / 26px 26px;color:var(--muted);font-size:12px}
.cutout-stage canvas{display:block;max-width:100%;max-height:620px;width:auto;height:auto;object-fit:contain}
.cutout-stage.has-image span{position:absolute;left:14px;bottom:12px;padding:6px 9px;background:#0d0f12cc;color:var(--lime);font-family:var(--mono);font-size:10px}
@media(max-width:800px){.cutout-layout{grid-template-columns:1fr}.cutout-drop{min-height:130px}.cutout-stage{min-height:300px}}

/* Centered, bounded image cards */
.content-grid{display:block}
.asset-grid{grid-template-columns:repeat(auto-fit,minmax(280px,460px));justify-content:center;align-items:start}
.asset-card{width:100%;max-width:460px;justify-self:center}
.asset-card .thumb img{width:auto;height:auto;max-width:100%;max-height:100%;margin:auto;object-fit:contain;object-position:center}
#downloadAll{display:grid;grid-template-columns:1fr;gap:2px;min-width:210px;text-align:center;line-height:1.2}
#downloadAll[hidden]{display:none!important}
#downloadAll .download-all-title{font-size:12px;margin:0}
#downloadAll small{font-family:var(--mono);font-size:9px;font-weight:600;opacity:.72;white-space:nowrap}
@media(max-width:620px){.asset-grid{grid-template-columns:minmax(0,460px)}.asset-card{max-width:460px}.toolbar-right{width:100%;align-items:stretch}.toolbar-right button{width:100%}#downloadAll{min-width:0}}

/* Upload introduction */
.web-hero h1{max-width:none;white-space:nowrap}
.hero-dropzone{cursor:pointer}
.hero-dropzone:focus-visible{outline:2px solid var(--lime);outline-offset:4px;border-color:var(--lime)}
#panel-web.has-assets .upload-intro{display:none!important}
#panel-web.has-assets .asset-toolbar{padding-top:0}
@media(max-width:620px){.web-hero h1{white-space:normal}}

/* Unified motion and interaction system */
:root{
  --radius-sm:8px;
  --radius-md:14px;
  --ease-out:cubic-bezier(.22,1,.36,1);
  --ease-standard:cubic-bezier(.2,.7,.2,1);
  --fast:160ms;
  --normal:280ms;
  --glow:0 0 0 1px #4969df24,0 10px 30px #0003;
}
html{scroll-behavior:smooth}
body{background:radial-gradient(circle at 50% -20%,#182016 0,#0d0f12 34rem);background-attachment:fixed}
button,a,input,.dropzone,.asset-card,.format-switch-group,.url-input-wrap,.cutout-stage,.crop-stage,.icon-list,.match-art{transition:border-color var(--fast) var(--ease-standard),background-color var(--fast) var(--ease-standard),color var(--fast) var(--ease-standard),box-shadow var(--normal) var(--ease-out),transform var(--fast) var(--ease-out),opacity var(--fast) ease,filter var(--fast) ease}
button{position:relative;overflow:hidden;border-radius:var(--radius-sm);transform:translateZ(0)}
button:not(:disabled):hover{transform:translateY(-1px);filter:brightness(1.06)}
button:not(:disabled):active,button.is-pressing{transform:translateY(0) scale(.975);transition-duration:80ms}
button:focus-visible,input:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
button:disabled{cursor:not-allowed;opacity:.42}
.primary-btn{box-shadow:0 8px 22px #4969df16}
.primary-btn:not(:disabled):hover{box-shadow:0 10px 28px #4969df32}
.ghost-btn:not(:disabled):hover,.text-btn:not(:disabled):hover{border-color:#4969df70;color:var(--lime);background:#4969df0b}
.ui-ripple{position:absolute;z-index:0;width:12px;height:12px;border-radius:50%;background:#fff5;pointer-events:none;transform:translate(-50%,-50%) scale(0);animation:ui-ripple 520ms var(--ease-out) forwards}
button>*:not(.ui-ripple){position:relative;z-index:1}
@keyframes ui-ripple{to{opacity:0;transform:translate(-50%,-50%) scale(18)}}
.topbar{background:#0d0f12e8;backdrop-filter:blur(14px);position:sticky;top:0;z-index:20}
.brand-mark{border-radius:9px;box-shadow:0 0 24px #4969df26;transition:transform var(--normal) var(--ease-out),box-shadow var(--normal) ease}
.brand:hover .brand-mark{transform:rotate(-4deg) scale(1.05);box-shadow:0 0 30px #4969df40}
.top-nav .mode-tab{border-radius:0;transition:color var(--fast) ease,transform var(--fast) var(--ease-out)}
.top-nav .mode-tab:hover{color:var(--text);transform:translateY(-1px)}
.top-nav .mode-tab:after{transform:scaleX(0);transform-origin:center;transition:transform var(--normal) var(--ease-out)}
.top-nav .mode-tab.active:after{transform:scaleX(1)}
.mode-panel.active{animation:panel-enter 360ms var(--ease-out) both}
@keyframes panel-enter{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.web-hero h1{letter-spacing:-.055em;text-shadow:0 10px 38px #0007}
.hero-dropzone,.asset-card,.control-panel,.cutout-stage,.crop-stage,.icon-list,.match-art,.url-strip{border-radius:var(--radius-md)}
.hero-dropzone:hover{border-color:#4969df99;background:#151a14;box-shadow:inset 0 0 40px #4969df08,var(--glow);transform:translateY(-2px)}
.hero-dropzone:active{transform:scale(.997)}
.drop-art{transition:transform var(--normal) var(--ease-out)}
.hero-dropzone:hover .drop-art{transform:translateY(-4px) rotate(-1deg)}
.drop-art:before,.drop-art:after,.drop-art span{transition:transform var(--normal) var(--ease-out),box-shadow var(--normal) ease}
.hero-dropzone:hover .drop-art:before{transform:translateX(-9px) rotate(-5deg)}
.hero-dropzone:hover .drop-art:after{transform:translateX(9px) rotate(5deg)}
.url-input-wrap:focus-within{border-color:var(--lime);box-shadow:0 0 0 3px #4969df12}
#panel-web.has-assets .content-grid{animation:workspace-enter 420ms var(--ease-out) both}
@keyframes workspace-enter{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.asset-card{border-radius:var(--radius-md);transition:transform var(--normal) var(--ease-out),border-color var(--fast) ease,box-shadow var(--normal) ease}
.asset-card:hover{transform:translateY(-4px);border-color:#56606e;box-shadow:0 18px 42px #0005}
.asset-card.selected{box-shadow:0 0 0 1px #4969df20,0 16px 40px #0004}
.asset-card .thumb img{transition:opacity var(--fast) ease,transform var(--normal) var(--ease-out),filter var(--normal) ease}
.asset-card:hover .thumb img{transform:scale(1.012)}
.asset-card .thumb{position:relative}
.asset-card .thumb:after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(105deg,transparent 30%,#ffffff10 48%,transparent 66%);transform:translateX(-120%);opacity:0}
.asset-card .thumb.is-updating img{opacity:.52;filter:blur(1px)}
.asset-card .thumb.is-updating:after{opacity:1;animation:thumb-shimmer 800ms ease-in-out infinite}
@keyframes thumb-shimmer{to{transform:translateX(120%)}}
.asset-check{border-radius:6px;transition:background-color var(--fast) ease,color var(--fast) ease,transform var(--fast) var(--ease-out),box-shadow var(--fast) ease}
.selected .asset-check{box-shadow:0 4px 14px #4969df32}
.format-switch-group{border-radius:10px;padding:4px}
.format-switch{border-radius:6px}
.format-switch:not(.active):hover{color:var(--text);background:#ffffff08;transform:none}
.format-switch.active{box-shadow:0 5px 16px #4969df25;animation:format-select 220ms var(--ease-out)}
@keyframes format-select{from{transform:scale(.94);opacity:.65}to{transform:none;opacity:1}}
input[type="range"]{cursor:pointer;filter:saturate(1.08);transition:filter var(--fast) ease,opacity var(--fast) ease}
input[type="range"]:hover{filter:brightness(1.12) saturate(1.2)}
.dimension-row input,.form-row input,.url-input-wrap{border-radius:var(--radius-sm)}
.dimension-row input:focus,.form-row input:focus{border-color:var(--lime);box-shadow:0 0 0 3px #4969df10;outline:0}
.asset-output{transition:color var(--fast) ease,opacity var(--fast) ease}
.compare-modal.open .compare-backdrop{animation:fade-in 220ms ease both}
.compare-modal.open .compare-dialog{animation:dialog-enter 320ms var(--ease-out) both}
@keyframes fade-in{from{opacity:0}to{opacity:1}}
@keyframes dialog-enter{from{opacity:0;transform:scale(.985)}to{opacity:1;transform:none}}
.compare-divider button:hover{transform:translate(-50%,-50%) scale(1.08);box-shadow:0 8px 30px #000b,0 0 0 5px #4969df1a}
.mode-panel[hidden]{display:none!important}
.asset-thumb-preview{width:100%;padding:0;border:0;border-radius:0;cursor:zoom-in;text-align:inherit}
.asset-thumb-preview img{transition:transform 260ms var(--ease-out),filter 220ms ease}
.asset-thumb-preview:hover img,.asset-thumb-preview:focus-visible img{transform:scale(1.018);filter:brightness(1.06)}
.asset-thumb-preview:focus-visible{outline:2px solid var(--lime);outline-offset:-3px}
.asset-check{z-index:3}
.compare-stage{overscroll-behavior:contain;cursor:default}
.compare-canvas{position:absolute;left:50%;top:50%;width:1px;height:1px;transform:translate(-50%,-50%);overflow:visible;will-change:width,height}
.compare-image{inset:0;width:100%;height:100%;max-width:none;object-fit:fill;pointer-events:none;user-select:none;-webkit-user-drag:none}
.compare-result{inset:0 0 0 auto;height:100%;overflow:hidden;border-left:0;z-index:1}
.compare-result .compare-image{position:absolute;left:auto;right:0;width:var(--compare-canvas-width,100%);height:var(--compare-canvas-height,100%);max-width:none}
.compare-divider{top:0;bottom:0;width:72px;height:100%;background:transparent;transform:translateX(-50%);pointer-events:auto;cursor:ew-resize;touch-action:none;outline:0}
.compare-divider::before{content:"";position:absolute;top:0;bottom:0;left:50%;width:2px;background:#fff;transform:translateX(-50%);box-shadow:0 0 0 1px #0002}
.compare-divider:focus-visible::after{content:"";position:absolute;inset:0 6px;border:1px solid #4969df99;border-radius:28px}
.compare-divider button{pointer-events:none;width:54px;height:54px;z-index:2;top:var(--handle-y,72px)}
.compare-reset{position:absolute;top:12px;right:12px;z-index:6;display:flex;align-items:center;gap:10px;padding:8px 11px;border:1px solid #ffffff26;border-radius:9px;background:#111419cf;color:var(--text);font-size:12px;backdrop-filter:blur(8px)}
.compare-reset:hover{background:#292e35}.compare-reset:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
.compare-reset kbd{font-family:var(--mono);color:var(--muted);font-size:12px}
.custom-icon-size{display:flex;align-items:center;gap:8px;padding:0 16px 16px;color:var(--muted);font-size:12px}
.custom-icon-size input{width:90px;min-width:0;padding:7px 8px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);color:var(--text);font-family:var(--mono)}
.custom-icon-size input[aria-invalid="true"]{border-color:#e68c8c}.custom-icon-size span{margin-left:auto}
.compare-label{top:12px;padding:6px 9px;background:#080a0de6;border:1px solid #ffffff14;border-radius:7px;white-space:nowrap;pointer-events:none;box-shadow:0 8px 22px #0006}
.compare-label-original{left:auto;right:calc(50% + 10px)}
.compare-label-result{left:calc(50% + 10px);right:auto}
.compare-zoom-toast{position:absolute;left:50%;bottom:20px;z-index:5;min-width:54px;padding:7px 10px;transform:translate(-50%,8px);border:1px solid #ffffff18;border-radius:999px;background:#090b0ed9;color:#fff;font-family:var(--mono);font-size:12px;text-align:center;opacity:0;pointer-events:none;box-shadow:0 8px 24px #0007;transition:opacity 180ms ease,transform 220ms var(--ease-out);backdrop-filter:blur(8px)}
.compare-zoom-toast.show{opacity:.92;transform:translate(-50%,0)}
@media(max-width:620px){.compare-divider{width:62px}.compare-label{top:8px;font-size:10px}.compare-zoom-toast{bottom:12px}}
.toast{border-radius:var(--radius-sm);box-shadow:0 14px 35px #0006;transition:opacity var(--normal) ease,transform var(--normal) var(--ease-out)}
.toast.show{animation:toast-pop 320ms var(--ease-out)}
@keyframes toast-pop{0%{opacity:0;transform:translateY(12px) scale(.96)}100%{opacity:1;transform:none}}
.cutout-stage canvas{animation:result-enter 380ms var(--ease-out) both}
@keyframes result-enter{from{opacity:0;transform:scale(.985)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* Live logo specification previews */
.mini-icon{overflow:hidden;background:repeating-conic-gradient(#30353c 0 25%,#252a30 0 50%) 50%/10px 10px}
.mini-icon img{display:block;width:100%;height:100%;object-fit:cover;animation:result-enter 260ms var(--ease-out) both}

/* Content-driven sports artwork */
.player-upload-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 18px}
.score-inputs.is-hidden{display:none}
.player-upload{display:flex;align-items:center;justify-content:center;gap:8px;min-width:0}
.player-upload-dot{width:9px;height:9px;border-radius:50%;background:var(--home-team-color,#4969df);box-shadow:0 0 14px currentColor}
.player-upload-dot.away{background:var(--away-team-color,#ff4d68)}
.match-art{--home-team-color:#ba1e2d;--away-team-color:#b5222d;display:block;isolation:isolate;background:#080a0d;min-height:560px;padding:0;border:1px solid #ffffff16}
.match-art:before,.match-art:after{display:none}
.art-grid{position:absolute;inset:0;z-index:-1;opacity:.22;background-image:linear-gradient(#fff 1px,transparent 1px),linear-gradient(90deg,#fff 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,#000,transparent 75%)}
.player-duel{position:absolute;inset:0;display:grid;grid-template-columns:1fr 84px 1fr;align-items:end;overflow:hidden;z-index:0}
.player-side{height:88%;position:relative;display:flex;align-items:center;justify-content:flex-end;flex-direction:column;overflow:hidden;padding-bottom:92px;background:linear-gradient(160deg,color-mix(in srgb,var(--home-team-color) 72%,#050608),#080a0d 70%);clip-path:polygon(0 0,100% 8%,88% 100%,0 100%)}
.player-away{background:linear-gradient(200deg,color-mix(in srgb,var(--away-team-color) 72%,#050608),#080a0d 70%);clip-path:polygon(0 8%,100% 0,100% 100%,12% 100%)}
.player-side img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(.82) contrast(1.08);transform:scale(1.02);mask-image:linear-gradient(to bottom,#000 66%,transparent 96%)}
.player-side:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,transparent 45%,#080a0dee 94%);pointer-events:none}
.player-initial{font-family:var(--mono);font-size:clamp(120px,18vw,230px);font-weight:900;line-height:.8;color:#ffffff14;position:absolute;top:21%;z-index:0}
.player-side strong{position:relative;z-index:2;font-size:clamp(18px,2.5vw,34px);letter-spacing:.08em;text-transform:uppercase;color:#fff;text-shadow:0 4px 20px #000}
.duel-mark{position:relative;z-index:3;align-self:center;display:grid;place-items:center;width:84px;height:84px;border-radius:50%;background:var(--lime);color:#0b0e09;font-family:var(--mono);font-size:24px;font-weight:900;box-shadow:0 0 0 9px #090b0e,0 0 40px #4969df44}
.art-content{position:absolute;left:28px;right:28px;bottom:58px;z-index:4;text-align:center}
.art-kicker{font-size:11px;letter-spacing:.14em;color:#ffffffb8}
.art-title{max-width:none;margin:12px 0 7px;font-size:clamp(30px,5vw,58px);letter-spacing:-.055em;text-shadow:0 6px 24px #000}
.art-title em{display:inline-block;padding:0 6px;color:var(--lime)}
.art-date{font-size:12px;letter-spacing:.05em}
.art-score{display:none;font-family:var(--mono);font-size:clamp(54px,9vw,110px);font-weight:900;line-height:.9;color:#fff;text-shadow:0 8px 30px #000}
.art-score span{color:var(--lime)}
.art-badge{z-index:5;background:#080a0db8;backdrop-filter:blur(8px);border-radius:999px}
.art-footer{position:absolute;left:28px;right:28px;bottom:20px;z-index:5;margin:0}
.theme-matchday{background:linear-gradient(120deg,color-mix(in srgb,var(--home-team-color) 72%,#080a0d),#080a0d 48%,color-mix(in srgb,var(--away-team-color) 72%,#080a0d))}
.theme-duel .player-side{height:100%;padding-bottom:105px}.theme-duel .duel-mark{transform:scale(1.12)}
.theme-live{background:radial-gradient(circle at 50% 28%,#ff263840,transparent 38%),#090b0e}.theme-live .art-badge{color:#fff;border-color:#ff375f;background:#ff2545}.theme-live .duel-mark{background:#ff3152;color:#fff;box-shadow:0 0 0 9px #090b0e,0 0 38px #ff315266}
.theme-lineup{background:linear-gradient(#123b27dd,#07150e),repeating-linear-gradient(90deg,#ffffff08 0 1px,transparent 1px 16.66%)}.theme-lineup .player-duel{opacity:.34}.theme-lineup .art-content{bottom:105px}.theme-lineup .art-title{font-size:clamp(34px,6vw,70px);text-transform:uppercase}.theme-lineup .duel-mark{display:none}
.theme-score,.theme-halftime,.theme-fulltime{background:radial-gradient(circle at 50% 42%,#29351d,#07090b 58%)}
.theme-score .art-score,.theme-halftime .art-score,.theme-fulltime .art-score{display:block}
.theme-score .art-title,.theme-halftime .art-title,.theme-fulltime .art-title{font-size:clamp(20px,3vw,34px);margin-bottom:8px}
.theme-score .player-side,.theme-halftime .player-side,.theme-fulltime .player-side{opacity:.48;padding-bottom:72px}
.theme-score .duel-mark,.theme-halftime .duel-mark,.theme-fulltime .duel-mark{display:none}
.theme-halftime{background:linear-gradient(135deg,#4f330c,#11100c 45%,#30200b)}.theme-halftime .art-score span{color:#ffbd3e}
.theme-fulltime{background:linear-gradient(160deg,#23262b,#050608 52%,#181a1f)}.theme-fulltime .art-score{letter-spacing:.08em}
.theme-social{background:conic-gradient(from 210deg at 50% 35%,var(--home-team-color),#171327,var(--away-team-color),var(--home-team-color))}.theme-social .player-side{height:94%;transform:scale(.93);border-radius:28px 28px 0 0}.theme-social .duel-mark{border-radius:18px;transform:rotate(-7deg)}
.theme-app{background:linear-gradient(100deg,#090b0e 0 38%,color-mix(in srgb,var(--home-team-color) 40%,#090b0e),color-mix(in srgb,var(--away-team-color) 46%,#090b0e))}.theme-app .player-duel{left:38%}.theme-app .art-content{right:58%;bottom:auto;top:50%;transform:translateY(-50%);text-align:left}.theme-app .art-title{font-size:clamp(28px,4vw,50px)}.theme-app .duel-mark{width:64px;height:64px;font-size:18px}.theme-app .art-date{text-align:left}
.match-art.is-landscape{min-height:360px}.match-art.is-landscape .player-side{height:100%;padding-bottom:55px}.match-art.is-landscape .art-content{bottom:46px}.match-art.is-landscape .art-title{font-size:clamp(25px,4vw,48px);margin:7px 0 4px}.match-art.is-landscape .player-side strong{font-size:18px}.match-art.is-landscape .art-footer{bottom:14px}
@media(max-width:700px){.player-upload-row{grid-template-columns:1fr}.match-art{min-height:480px}.player-duel{grid-template-columns:1fr 58px 1fr}.duel-mark{width:58px;height:58px;font-size:17px}.art-content{left:16px;right:16px}.theme-app .player-duel{left:0}.theme-app .art-content{right:16px;top:auto;bottom:58px;transform:none;text-align:center}}

/* Empty and cross-workspace upload states */
#panel-web:not(.has-assets) .content-grid{display:none}
.dropzone[role="button"]{cursor:pointer}
.dropzone[role="button"]:focus-visible{outline:2px solid var(--lime);outline-offset:4px;border-color:var(--lime)}
.dropzone.dragging{border-color:var(--lime)!important;background:#1c2415!important;box-shadow:inset 0 0 42px #4969df0d,0 0 0 1px #4969df33,0 12px 35px #0004}
.icon-drop .upload-quality-note{margin-top:8px;color:var(--lime);font-size:11px;line-height:1.45}

/* Image-first icon export gallery */
#panel-icon{--asset-preview-bg:#f2f4f8}
.icon-layout{grid-template-columns:minmax(300px,.72fr) minmax(0,1.5fr);gap:30px}
.icon-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;border:0;background:transparent;border-radius:0}
.icon-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface);transition:transform var(--normal) var(--ease-out),border-color var(--fast) ease,box-shadow var(--normal) ease}
.icon-card:hover{transform:translateY(-4px);border-color:#56606e;box-shadow:0 18px 40px #0004}
.icon-visual{position:relative;min-height:220px;padding:24px;display:grid;place-items:center;overflow:hidden;background:var(--asset-preview-bg)}
.icon-visual:before{content:none}
.icon-visual .mini-icon{position:relative;z-index:1;width:min(82%,190px);height:auto;aspect-ratio:1;border-radius:23%;display:grid;place-items:center;background:var(--lime);color:#11140d;font-size:38px;box-shadow:0 4px 16px #1d293914,0 0 0 1px #1d29390a;transition:transform var(--normal) var(--ease-out),box-shadow var(--normal) ease}
.icon-card:hover .mini-icon{transform:scale(1.035);box-shadow:0 6px 20px #1d29391a,0 0 0 1px #1d293914}
.icon-visual .mini-icon img{width:100%;height:100%;object-fit:cover}
.icon-size-badge{position:absolute;z-index:2;right:10px;top:10px;margin:0!important;padding:5px 7px;border:1px solid var(--line);border-radius:999px;background:#ffffffeb;color:var(--muted)!important;font-family:var(--mono);font-size:9px!important;backdrop-filter:blur(8px)}
.icon-card-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px;border-top:1px solid var(--line)}
.icon-card-meta>div{min-width:0}.icon-card-meta strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.icon-card-meta span{display:block;margin-top:4px;color:var(--muted);font-family:var(--mono);font-size:9px}
.icon-card .download-mini{flex:0 0 auto;padding:7px 9px;border:1px solid var(--line);border-radius:7px;background:transparent;color:var(--lime);font-size:10px;font-weight:700}
.icon-card .download-mini:hover{border-color:var(--lime);background:#4969df0c}
@media(max-width:760px){.icon-layout{grid-template-columns:1fr}.icon-list{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}
@media(max-width:520px){.icon-list{grid-template-columns:1fr 1fr;gap:10px}.icon-visual{min-height:160px;padding:18px}.icon-visual .mini-icon{width:min(80%,135px)}.icon-card-meta{display:block;padding:11px}.icon-card .download-mini{width:100%;margin-top:9px}}
/* Logo safe-area preview background controls */
.crop-controls{width:min(100%,560px);flex-wrap:wrap;gap:10px 14px}
.crop-controls .scale-control{flex:1 1 220px}
.preview-bg-control{display:flex;align-items:center;gap:8px;flex:0 1 auto;white-space:nowrap}
.preview-bg-control input[type="color"]{flex:0 0 42px;width:42px;height:34px;padding:3px;border:1px solid var(--line);border-radius:7px;background:var(--surface-2);cursor:pointer;accent-color:initial}
.preview-bg-control output{font-family:var(--mono);font-size:10px;color:var(--muted);min-width:58px}
.preview-bg-note{width:min(100%,560px);margin:10px 0 0;color:var(--muted);font-size:10px;line-height:1.5;text-align:left}
.crop-controls .ghost-btn.active{border-color:var(--lime);background:#4969df18;color:var(--lime)}
@media(max-width:620px){.crop-controls{align-items:stretch}.crop-controls .scale-control{flex-basis:100%}.preview-bg-control{flex:1}.preview-bg-note{text-align:center}}

/* Per-size icon placement diagrams */
.icon-card{position:relative;overflow:hidden}
.icon-help-wrap{position:absolute;z-index:8;top:10px;left:10px}
.icon-help{width:27px;height:27px;padding:0;border:1px solid var(--line);border-radius:50%;background:#ffffffeb;color:var(--muted);font-family:var(--mono);font-size:12px;font-weight:800;box-shadow:0 2px 6px #1d293914;backdrop-filter:blur(8px);transition:transform var(--fast) var(--ease-out),border-color var(--fast) ease,background var(--fast) ease}
.icon-help:hover,.icon-help:focus-visible{transform:scale(1.08);border-color:var(--lime);background:var(--lime);color:#11140d;outline:0}
.icon-usage-popover{position:absolute;z-index:9999;left:0;top:35px;width:690px;max-width:calc(100vw - 32px);padding:22px;border:1px solid #4b5562;border-radius:14px;background:#101318f7;box-shadow:0 28px 80px #000e;opacity:0;visibility:hidden;transform:translateY(8px) scale(.985);transform-origin:bottom center;pointer-events:none;transition:opacity var(--fast) ease,transform var(--normal) var(--ease-out),visibility var(--fast) ease;backdrop-filter:blur(18px)}
.icon-usage-popover.is-floating{position:fixed;opacity:1;visibility:visible;transform:none}
.icon-usage-popover.is-floating:after{content:"";position:absolute;left:50%;bottom:-7px;width:12px;height:12px;border-right:1px solid #4b5562;border-bottom:1px solid #4b5562;background:#101318;transform:translateX(-50%) rotate(45deg)}
.icon-usage-popover.is-floating.is-below{transform-origin:top center}
.icon-usage-popover.is-floating.is-below:after{top:-7px;bottom:auto;border:0;border-left:1px solid #4b5562;border-top:1px solid #4b5562}
.icon-usage-popover strong{display:block;margin-top:16px;color:var(--text);font-size:18px}
.icon-usage-popover p{margin:7px 0 0;color:var(--muted);font-size:14px;line-height:1.6}
.usage-diagram{height:426px;border:1px solid #ffffff13;border-radius:11px;background:radial-gradient(circle at 30% 15%,#33404a,#1b2027 60%,#14171c);display:grid;place-items:center;overflow:hidden;transform:translateZ(0)}
.usage-diagram .usage-device{transform:scale(2.75)}
.usage-device{position:relative;width:76px;height:124px;padding:12px 6px 8px;border:2px solid #858f9c;border-radius:14px;background:linear-gradient(150deg,#26303a,#15191f);box-shadow:0 8px 22px #0009}
.usage-device-bar{position:absolute;left:7px;right:7px;top:4px;display:flex;align-items:center;justify-content:space-between;color:#d9dee5;font-family:var(--mono);font-size:5px}.usage-device-bar i{width:12px;height:3px;border-radius:5px;background:#050607}.usage-device-bar b{width:8px;height:4px;border:1px solid #aab2bd;border-radius:1px}
.usage-screen{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:7px 5px;padding-top:5px}.usage-screen>span{width:15px;height:15px;border-radius:4px;background:#4b5664}.usage-screen>span:nth-child(2n){background:#36414d}.usage-target{display:grid;place-items:center!important;background:var(--lime)!important;color:#12150e;font-family:var(--mono);font-size:4px;font-weight:900;outline:2px solid #fff;outline-offset:2px;box-shadow:0 0 0 4px #4969df30}.usage-callout{position:absolute;left:56px;top:2px;width:48px;padding:3px 4px;border-radius:3px;background:var(--lime);color:#10130c;font-size:6px;font-weight:800}.usage-callout:before{content:"";position:absolute;right:100%;top:7px;width:18px;border-top:1px solid var(--lime)}
.usage-dock{position:absolute;left:8px;right:8px;bottom:7px;display:flex;justify-content:center;gap:5px;padding:4px;border-radius:7px;background:#ffffff16}.usage-dock span{width:12px;height:12px;border-radius:3px;background:#5b6673}
.app-store .usage-device{width:108px;height:108px;border-radius:9px;padding:17px 8px 8px}.app-store .usage-screen{grid-template-columns:28px 1fr;gap:8px}.app-store .usage-screen>span{display:none}.app-store .usage-target{display:grid!important;width:28px;height:28px;border-radius:7px}.app-store .usage-screen:after{content:"应用名称\A 获取并安装";white-space:pre;align-self:center;color:#d9dee5;font-size:7px;line-height:1.7}.app-store .usage-callout{left:66px;top:40px}.app-store .usage-dock{display:none}
.tablet-home .usage-device{width:112px;height:82px;border-radius:10px}.tablet-home .usage-screen{grid-template-columns:repeat(5,1fr);gap:6px}.tablet-home .usage-callout{left:76px;top:-1px}
.mac-dock .usage-device,.windows-start .usage-device,.browser-tab .usage-device{width:150px;height:92px;border-radius:7px;padding:12px}.mac-dock .usage-screen>span,.windows-start .usage-screen>span,.browser-tab .usage-screen>span{display:none}.mac-dock .usage-dock{left:26px;right:26px;bottom:6px}.mac-dock .usage-dock span:nth-child(2){background:var(--lime);outline:2px solid #fff}.mac-dock .usage-callout{left:96px;top:67px}.windows-start .usage-screen{display:grid;grid-template-columns:repeat(4,25px);gap:5px}.windows-start .usage-screen>span{display:block;width:25px;height:25px;border-radius:2px}.windows-start .usage-screen .usage-target{display:grid;width:25px;height:25px}.windows-start .usage-dock{display:none}.windows-start .usage-callout{left:100px;top:10px}
.android-home .usage-device{border-radius:18px}.android-home .usage-screen>span{border-radius:50%}.android-home .usage-target{border-radius:50%}.android-home .usage-callout{left:56px;top:2px}
.notification .usage-screen{display:block;padding-top:8px}.notification .usage-screen>span{display:none}.notification .usage-screen:before{content:"新消息\A 赛事即将开始";display:block;white-space:pre;margin-top:6px;padding:8px 5px 8px 21px;border-radius:5px;background:#f4f6f8;color:#1a1d21;font-size:6px;line-height:1.6}.notification .usage-target{position:absolute;display:grid!important;left:5px;top:20px;width:12px;height:12px;border-radius:50%;font-size:3px}.notification .usage-callout{left:55px;top:15px}.notification .usage-dock{display:none}
.splash .usage-screen{display:grid;place-items:center;height:90px;padding:0}.splash .usage-screen>span{display:none}.splash .usage-target{display:grid!important;width:34px;height:34px;border-radius:9px}.splash .usage-callout{left:56px;top:32px}.splash .usage-dock{display:none}
.browser-tab .usage-device{height:78px;padding-top:20px}.browser-tab .usage-device-bar{left:0;right:0;top:0;height:17px;padding:0 6px;background:#313842;border-radius:5px 5px 0 0}.browser-tab .usage-device-bar:after{content:"网页标题";position:absolute;left:27px;top:5px;color:#eef1f5;font-size:6px}.browser-tab .usage-device-bar i{width:11px;height:11px;background:var(--lime);outline:1px solid #fff}.browser-tab .usage-device-bar span,.browser-tab .usage-device-bar b{display:none}.browser-tab .usage-screen:after{content:"网页内容";color:#75808d;font-size:8px}.browser-tab .usage-callout{left:85px;top:-20px}.browser-tab .usage-dock{display:none}
@media(max-width:760px){.icon-usage-popover{padding:14px}.usage-diagram{height:min(62vw,330px)}.usage-diagram .usage-device{transform:scale(2)}.icon-usage-popover strong{margin-top:12px;font-size:15px}.icon-usage-popover p{font-size:12px}}
@media(max-width:420px){.usage-diagram{height:240px}.usage-diagram .usage-device{transform:scale(1.55)}}

/* Image cards follow the uploaded image ratio and always fill their width */
.asset-card .thumb{display:block;height:auto;min-height:0;aspect-ratio:auto;background:#21252c}
.asset-card .thumb img{display:block;width:100%;height:auto;max-width:none;max-height:none;margin:0;object-fit:initial;object-position:initial}
.asset-source{margin-top:5px;color:var(--lime);font-family:var(--mono);font-size:9px}
@media(max-width:560px){.asset-card .thumb{height:auto;min-height:0}}

/* Softer three-file upload illustration */
.drop-art{width:210px;height:132px;isolation:isolate}
.drop-art:before,.drop-art:after{content:none}
.drop-art .drop-file{position:absolute;top:10px;width:88px;height:112px;border:1px solid #3a424d;border-radius:12px;background:linear-gradient(155deg,#2c333d 0%,#222831 62%,#1c222a 100%);box-shadow:0 16px 30px #05060845,inset 0 1px 0 #ffffff0a;transform-origin:50% 90%;transition:transform var(--normal) var(--ease-out),border-color var(--normal) ease,box-shadow var(--normal) ease;overflow:hidden}
.drop-art .drop-file:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,#ffffff0a,transparent 38%,#00000018);pointer-events:none}
.drop-art .drop-file-svg{left:27px;z-index:1;transform:rotate(-8deg)}
.drop-art .drop-file-jpg{left:61px;top:5px;z-index:2;transform:rotate(-1deg)}
.drop-art .drop-file-png{left:95px;top:10px;z-index:3;transform:rotate(8deg)}
.drop-art .drop-file span,.drop-art .drop-file span:nth-child(n){position:absolute;left:8px;right:8px;bottom:10px;margin:0;padding:8px 4px;border:1px solid #444d59;border-radius:6px;background:#181d24e8;color:#4969df;font-family:var(--mono);font-size:12px;font-style:normal;text-align:center;box-shadow:0 5px 12px #0003;transform:none}
.hero-dropzone:hover .drop-art .drop-file-svg{transform:translateX(-7px) translateY(-2px) rotate(-10deg)}
.hero-dropzone:hover .drop-art .drop-file-jpg{transform:translateY(-7px) rotate(0)}
.hero-dropzone:hover .drop-art .drop-file-png{transform:translateX(7px) translateY(-2px) rotate(10deg)}
.hero-dropzone:hover .drop-art .drop-file{border-color:#58636f;box-shadow:0 20px 36px #05060855,inset 0 1px 0 #ffffff10}

/* Huaban-style masonry gallery and content-aligned navigation */
.top-nav{
  margin-left:auto;
  margin-right:0;
  justify-content:flex-end;
}
.asset-grid{
  display:block;
  min-width:0;
  padding-top:15px;
  column-width:320px;
  column-gap:14px;
}
.asset-grid>.asset-card{
  display:inline-block;
  width:100%;
  max-width:460px;
  margin:0 auto 14px;
  vertical-align:top;
  break-inside:avoid;
  page-break-inside:avoid;
}
.asset-grid>.empty-assets{
  width:100%;
  column-span:all;
}
@media(max-width:620px){
  .top-nav{justify-content:flex-end}
  .asset-grid{column-width:auto;column-count:1;padding-top:12px}
  .asset-grid>.asset-card{display:block;margin-right:auto;margin-left:auto}
}

/* Quiet per-card controls; keep the download action as the visual anchor */
.asset-controls .format-switch.active{
  background:#30353c;
  color:#eef1f5;
  box-shadow:none;
}
.asset-controls output,
.asset-output{
  color:#9ba4b0;
}
.asset-controls .lock-ratio input{
  accent-color:#7f8894;
}
.asset-controls input[type="range"]{
  height:16px;
  margin:2px 0;
  appearance:none;
  -webkit-appearance:none;
  accent-color:#7f8894;
  background:transparent;
  filter:none;
  opacity:.78;
}
.asset-controls input[type="range"]:hover,
.asset-controls input[type="range"]:focus-visible{
  filter:none;
  opacity:1;
}
.asset-controls input[type="range"]::-webkit-slider-runnable-track{
  height:3px;
  border:0;
  border-radius:999px;
  background:#3b414a;
}
.asset-controls input[type="range"]::-webkit-slider-thumb{
  width:12px;
  height:12px;
  margin-top:-4.5px;
  border:1px solid #a2aab4;
  border-radius:50%;
  appearance:none;
  -webkit-appearance:none;
  background:#747d89;
  box-shadow:0 1px 4px #0008;
}
.asset-controls input[type="range"]::-moz-range-track{
  height:3px;
  border:0;
  border-radius:999px;
  background:#3b414a;
}
.asset-controls input[type="range"]::-moz-range-progress{
  height:3px;
  border-radius:999px;
  background:#68717d;
}
.asset-controls input[type="range"]::-moz-range-thumb{
  width:12px;
  height:12px;
  border:1px solid #a2aab4;
  border-radius:50%;
  background:#747d89;
  box-shadow:0 1px 4px #0008;
}
.asset-actions .asset-download{
  color:#11140d;
  background:var(--lime);
  border-color:var(--lime);
}

/* Card selection and removal affordances */
.asset-card .asset-check,.selection-peek-image .asset-check{
  position:absolute;
  z-index:4;
  top:0;
  left:0;
  width:46px;
  height:46px;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  color:transparent;
  display:grid;
  place-items:center;
  box-shadow:none;
}
.asset-card .asset-check::before,.selection-peek-image .asset-check::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  translate:-50% -50%;
  width:22px;
  height:22px;
  border:1px solid #85909e;
  border-radius:6px;
  background:#101317e8;
  transition:background-color var(--fast) ease,border-color var(--fast) ease,transform var(--fast) var(--ease-out);
}
.asset-card .asset-check::after,.selection-peek-image .asset-check::after{
  content:"✓";
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  z-index:1;
  color:#101317;
  font-size:15px;
  font-weight:900;
  line-height:1;
  opacity:0;
  transform:scale(.7);
  transition:opacity var(--fast) ease,transform var(--fast) var(--ease-out);
}
.asset-card .asset-check:hover::before,.selection-peek-image .asset-check:hover::before{transform:scale(1.08);border-color:#c4ccd5}
.asset-card.selected .asset-check::before,.selection-peek-image.selected .asset-check::before{background:var(--lime);border-color:var(--lime)}
.asset-card.selected .asset-check::after,.selection-peek-image.selected .asset-check::after{opacity:1;transform:scale(1)}
.asset-remove{
  position:absolute;
  z-index:5;
  top:10px;
  right:10px;
  width:28px;
  height:28px;
  padding:0;
  border:1px solid #ffffff20;
  border-radius:50%;
  background:#0d0f12d9;
  color:#c6cdd6;
  font-size:20px;
  line-height:24px;
  opacity:0;
  pointer-events:none;
  transform:translateY(-3px) scale(.92);
  transition:opacity var(--fast) ease,transform var(--fast) var(--ease-out),background-color var(--fast) ease,color var(--fast) ease;
}
.asset-card:hover .asset-remove,.asset-card:focus-within .asset-remove{opacity:1;pointer-events:auto;transform:none}
.asset-remove:hover{background:#2b3038;color:#fff;border-color:#aab3bf}
.batch-format{min-width:112px;padding-right:26px!important;appearance:auto;-webkit-appearance:auto;color:var(--muted);background:var(--surface-2)}
.batch-format:focus{border-color:#69737f;outline:0;box-shadow:none}
.toolbar-right .batch-format{height:32px;padding:7px 30px 7px 10px!important;border:1px solid var(--line);border-radius:var(--radius-sm);background-color:transparent;color:var(--text);font:700 11px var(--font);cursor:pointer;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath d='m2 4 4 4 4-4' fill='none' stroke='%238c95a3' stroke-width='1.5'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}
.batch-format option{background:var(--surface);color:var(--text)}
.batch-format[hidden]{display:none!important}
.toolbar-right .batch-format:hover{border-color:#69737f;background-color:#ffffff05}
.toolbar-right .batch-format:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
.cutout-stage canvas[hidden]{display:none}

/* Compact card parameters and linked dimensions */
.asset-parameters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;min-width:0}
.asset-controls .asset-parameters>label{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px;min-width:0;align-items:center}
.asset-controls .asset-parameters input[type="range"]{grid-column:1/-1;width:100%;min-width:0}
.asset-controls .asset-parameters output{justify-self:end}
.asset-controls .dimension-row,.compare-controls .dimension-row{display:grid;grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr);gap:8px;align-items:center}
.compression-plan-control{display:grid;gap:3px;color:var(--muted);font-size:10px}
.compression-plan-group{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2px;padding:2px;overflow:visible}
.compression-plan-group.compression-plan-group--quality{grid-template-columns:repeat(6,minmax(0,1fr))}
.compression-plan-group .compression-plan-switch{min-width:0;min-height:32px;height:32px;padding:0 2px;line-height:1;font-family:var(--font);font-size:10px;white-space:nowrap}
.compression-plan-group .compression-plan-switch.active{background:#4969df;color:#fff;box-shadow:none}
.asset-controls .dimension-row>label:not(.lock-ratio),.compare-controls .dimension-row>label:not(.lock-ratio){display:flex;min-width:0;gap:5px}
.asset-controls .dimension-row input[type="number"],.compare-controls .dimension-row input[type="number"]{width:100%;min-width:0;height:32px;margin:0;padding:6px}
.dimension-row .ratio-toggle{position:relative;display:block;width:32px;height:32px;margin:0;cursor:pointer}
.dimension-row .ratio-toggle input[type="checkbox"]{position:absolute;inset:0;z-index:2;width:100%;height:100%;margin:0;padding:0;opacity:0;cursor:pointer}
.ratio-symbol{display:grid;place-items:center;position:absolute;inset:0;border:1px solid var(--line);border-radius:var(--radius-sm);background:transparent;color:#747d89;transition:background-color var(--fast),color var(--fast),border-color var(--fast)}
.ratio-symbol::before{content:"";width:18px;height:18px;background:currentColor;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cg fill='none' stroke='black' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='M10 8H7a4 4 0 0 0 0 8h3m4-8h3a4 4 0 0 1 0 8h-3M8 12h8'/%3E%3C/g%3E%3C/svg%3E") center/contain no-repeat}
.ratio-toggle input:checked+.ratio-symbol{background:#30353c;border-color:#626b76;color:#edf0f4}
.ratio-toggle input:not(:checked)+.ratio-symbol::before{mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 8H6a4 4 0 0 0 0 8h2m8-8h2a4 4 0 0 1 0 8h-2M14 4l-4 16' fill='none' stroke='black' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")}
.ratio-toggle input:focus-visible+.ratio-symbol{outline:2px solid var(--lime);outline-offset:2px}
.ratio-toggle:hover .ratio-symbol{border-color:#a0a8b2}

/* Resize and crop workspace */
.resize-drop{min-height:120px;display:flex;flex-direction:column;justify-content:center;gap:9px;padding:28px;margin-bottom:24px}
.resize-drop span{color:var(--muted);font-size:14px}
.resize-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:24px;align-items:start}
.resize-workspace[hidden]{display:none}
.resize-preview{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md)}
.resize-source{position:relative;max-width:100%;width:fit-content;overflow:hidden;line-height:0;background:repeating-conic-gradient(#30343b 0 25%,#25292f 0 50%) 0/20px 20px}
.resize-source>img{display:block;width:auto;height:auto;max-width:100%;max-height:65vh}
.resize-crop{position:absolute;box-sizing:border-box;border:2px solid #edf0f4;box-shadow:0 0 0 100vmax #000a;pointer-events:none;transition:left 180ms ease,top 180ms ease,width 180ms ease,height 180ms ease}
.resize-crop i{position:absolute;inset:33.333% 0;border-top:1px solid #ffffff70;border-bottom:1px solid #ffffff70}
.resize-crop i+i{inset:0 33.333%;border:0;border-left:1px solid #ffffff70;border-right:1px solid #ffffff70}
#resizeInfo{margin:18px 0 0;color:var(--muted);font-size:13px;text-align:center;overflow-wrap:anywhere}
.resize-settings{display:grid;gap:16px;min-width:0;padding:20px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-md)}
.resize-settings strong{font-size:14px}.resize-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
.resize-settings .dimension-row{display:grid;grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr);gap:8px}
.resize-settings .dimension-row>label:not(.ratio-toggle){display:flex;min-width:0;font-size:14px}
.resize-settings .dimension-row input[type="number"]{min-width:0;width:100%;font-size:14px;height:36px;border-radius:8px}
.resize-note{margin:0;color:var(--muted);font-size:12px;line-height:1.7}
.resize-rotation-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.resize-rotation-controls>div{display:flex;gap:8px;flex-wrap:wrap}
.resize-rotation-controls button{white-space:nowrap}
.resize-watermark{padding:14px;border:1px solid var(--line);border-radius:12px;background:var(--surface-2)}
.resize-watermark-toggle{display:flex;align-items:center;gap:10px;cursor:pointer}
.resize-watermark-toggle>span{display:grid;gap:3px}
.resize-watermark-toggle small,.resize-watermark-logo-fields>span{color:var(--muted);font-size:12px}
.resize-watermark-options{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;margin-top:14px}
.resize-watermark-options[hidden],.resize-watermark-text-fields[hidden],.resize-watermark-logo-fields[hidden]{display:none}
.resize-watermark-options>label,.resize-watermark-text-fields>label{display:grid;gap:5px;min-width:0;color:var(--muted);font-size:12px}
.resize-watermark-options input:not([type=checkbox]):not([type=range]):not([type=color]),.resize-watermark-options select{width:100%;min-width:0;height:36px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text)}
.resize-watermark-options input[type=range]{grid-column:1/-1;width:100%;accent-color:var(--lime)}
.resize-watermark-options output{margin-left:auto;color:var(--muted)}
.resize-watermark-options input[type=color]{width:100%;height:36px;padding:3px;border:1px solid var(--line);border-radius:8px;background:#fff}
.resize-watermark-text-fields{display:grid;grid-column:1/-1;grid-template-columns:minmax(0,1fr) 74px;gap:10px}
.resize-watermark-logo-fields{display:flex;grid-column:1/-1;align-items:center;gap:8px;flex-wrap:wrap}
.resize-watermark-logo-picker{position:relative;display:inline-flex;align-items:center;margin:0;cursor:pointer}
.resize-watermark-tile{display:flex!important;grid-column:1/-1;align-items:center;gap:8px}
.resize-watermark-tile input{margin:0}
.resize-crop .resize-watermark-preview{position:absolute;inset:0;display:block;width:100%;height:100%;pointer-events:none}
.resize-crop .resize-watermark-preview[hidden]{display:none}
.resize-options{display:flex;gap:8px;flex-wrap:wrap}.resize-presets{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.resize-presets button{display:grid;gap:5px;text-align:left;padding:12px;font-size:13px}.resize-presets small{font-size:12px;color:var(--muted);font-family:var(--mono)}
.resize-options .active,.resize-presets .active{background:#30363e;border-color:#9aa3af;color:#fff}
.resize-format{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:14px}
.resize-format select{background:var(--surface-2);color:var(--text);border:1px solid var(--line);border-radius:8px;padding:8px 12px}
.asset-card{user-select:none}.asset-name,.asset-meta{user-select:text}
@media(max-width:800px){.resize-workspace{grid-template-columns:1fr}.resize-preview{padding:12px}.resize-source>img{max-height:50vh}}
@media(prefers-reduced-motion:reduce){.resize-crop{transition:none}}
.selection-peek{position:fixed;inset:0;width:min(1200px,92vw);max-width:92vw;max-height:86vh;margin:auto;padding:20px;border:1px solid var(--line);border-radius:20px;background:#14181df5;color:var(--text);box-shadow:0 24px 90px #0008;overflow:auto;overscroll-behavior:contain}
.selection-peek::backdrop{background:#05070aa8;backdrop-filter:blur(8px)}
.selection-peek[open]{animation:fade-in 160ms ease both}
.selection-peek-grid{columns:200px;column-gap:14px}
.selection-peek-image{display:block;break-inside:avoid;width:100%;padding:0;margin:0 0 14px;overflow:hidden;border:2px solid transparent;border-radius:12px;background:repeating-conic-gradient(#30343b 0 25%,#25292f 0 50%) 0/20px 20px;cursor:pointer;transition:border-color 150ms ease,opacity 150ms ease}
.selection-peek-image img{display:block;width:100%;height:auto;object-fit:contain}
.selection-peek-image:hover{border-color:#aeb6c1;opacity:.8}
.selection-peek-image:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
@media(max-width:600px){.selection-peek{padding:12px}.selection-peek-grid{columns:2;column-gap:10px}.selection-peek-image{margin-bottom:10px}}
@media(prefers-reduced-motion:reduce){.selection-peek[open]{animation:none}}
.resize-source.can-pan{cursor:grab;touch-action:none;user-select:none}
.resize-source.is-panning{cursor:grabbing}
.resize-source>img{user-select:none;-webkit-user-drag:none;pointer-events:none;will-change:transform}
.resize-source.is-panning .resize-crop{transition:none}
.resize-source:focus-visible{outline:2px solid var(--lime);outline-offset:4px}
#iconList{display:flex;flex-direction:column;gap:28px}
.icon-layout{grid-template-columns:minmax(260px,.65fr) minmax(0,1.35fr);align-items:start}
.icon-editor,.icon-output{min-width:0}
.icon-output{width:100%}
.icon-export-group{width:100%}
.icon-group-grid{grid-template-columns:repeat(auto-fill,minmax(min(220px,100%),1fr));}
@media(max-width:760px){.icon-layout{grid-template-columns:minmax(0,1fr)}}
@media(min-width:761px) and (max-width:900px){.icon-layout{grid-template-columns:minmax(240px,.65fr) minmax(0,1.35fr)}}
.icon-export-group{min-width:0}
.icon-export-group h3{display:flex;align-items:center;justify-content:space-between;margin:0 0 14px;padding-bottom:12px;border-bottom:1px solid var(--line);font-size:16px;font-weight:600}
.icon-export-group h3 span{font-size:12px;font-weight:400;color:var(--muted)}
.icon-group-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px;align-items:start}
@media(max-width:520px){.icon-group-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}}
.selection-peek-image.selected{border-color:var(--lime)}
.selection-peek-image.selected:hover{border-color:var(--lime);opacity:1;box-shadow:0 0 0 1px #4969df30}
@media(min-width:1101px){
  .icon-editor{position:sticky;top:94px;align-self:start;max-height:calc(100vh - 110px);max-height:calc(100dvh - 110px);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--line) transparent}
}

/* Upload placeholders and image decoding share one quiet shimmer. */
.asset-card .thumb.loading-shimmer{min-height:220px;position:relative;background:var(--surface-2)}
.loading-shimmer{overflow:hidden;position:relative}
.loading-shimmer::after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(100deg,transparent 15%,#ffffff0d 45%,#ffffff16 50%,transparent 85%);animation:upload-shimmer 1.5s ease-in-out infinite;pointer-events:none}
@keyframes upload-shimmer{to{transform:translateX(100%)}}
.loading-line{height:14px;width:65%;background:var(--surface-2);border-radius:6px;margin-top:14px}
.asset-card .thumb.loading-shimmer img{opacity:0}
.asset-card .thumb img{transition:opacity .2s ease}
.asset-name:has(.asset-rename){display:flex;align-items:center;gap:4px}
.asset-rename{min-width:0;width:100%;border:1px solid var(--lime);border-radius:6px;padding:3px 5px;background:var(--surface-2);color:var(--text);outline:none}
.resize-drop.hero-dropzone{width:min(1100px,100%);border:2px dashed #566170;border-radius:18px;min-height:246px;background:#12151a;margin:0 auto 24px}
.pdf-compose{width:min(1200px,92vw);max-height:88vh;max-height:88dvh;padding:0;border:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--text);box-shadow:0 24px 90px #0008}
.pdf-compose::backdrop{background:#0008;backdrop-filter:blur(8px)}
.pdf-compose[open]{display:flex;flex-direction:column;animation:fade-in .18s ease}
.pdf-compose header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;gap:20px;border-bottom:1px solid var(--line)}
.pdf-compose h2{font-size:20px;margin:0 0 6px}.pdf-compose p{color:var(--muted);font-size:13px;margin:0}
.pdf-compose-grid{overflow:auto;min-height:0;padding:24px;columns:200px;column-gap:16px}
.pdf-page{width:100%;display:block;break-inside:avoid;margin:0 0 16px;border:1px solid var(--line);border-radius:14px;padding:0;background:var(--surface-2);overflow:hidden;position:relative;cursor:grab}
.pdf-page img{width:100%;height:auto;display:block;pointer-events:none}
.pdf-page .pdf-page-number{position:absolute;left:10px;top:10px;padding:4px 9px;border-radius:8px;background:#0c1014d9;color:white;font:12px var(--mono)}
.pdf-page.drag-target,.pdf-page:focus-visible{outline:2px solid var(--lime);outline-offset:-2px}
.pdf-page.is-dragging{opacity:.4}
.pdf-compose footer{padding:16px 24px;border-top:1px solid var(--line);display:flex;justify-content:flex-end}
@media(max-width:620px){.pdf-compose-grid{columns:2;column-gap:10px;padding:14px}.pdf-compose header{padding:16px}.resize-drop.hero-dropzone{min-height:215px}}
.asset-card .thumb.loading-shimmer::after{opacity:1;animation:upload-shimmer 1.5s ease-in-out infinite}

/* Shared close control for all dialogs. */
.modal-close{position:absolute;right:16px;top:12px;width:36px;height:36px;padding:0;border:0;border-radius:8px;background:transparent;color:#fff;font-size:30px;font-weight:400;line-height:1;display:grid;place-items:center;z-index:3}
.modal-close:hover{background:#ffffff0c}.modal-close:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
.pdf-compose header{padding-right:68px}
.pdf-page-details{display:block;padding:12px 14px;text-align:left;pointer-events:none}
.pdf-page-details strong{display:block;font-size:13px;font-weight:500;overflow-wrap:anywhere;line-height:1.5}
.pdf-page-details small{display:block;color:var(--muted);font:12px var(--mono);margin-top:6px}
#panel-web .asset-toolbar{position:sticky;top:var(--topbar-height,82px);z-index:15;background:#0d0f12f5;backdrop-filter:blur(16px);box-shadow:0 10px 18px #0002;padding:14px 0}
#panel-web.has-assets .asset-toolbar{padding-top:14px}
.quality-workspace[hidden]{display:none}.quality-workspace{margin-top:24px}
.quality-tools,.quality-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.quality-tools .active{border-color:var(--lime);color:var(--lime);background:#4969df08}
.quality-actions{margin:20px 0}.quality-actions span{color:var(--muted);font-size:13px}
.quality-stage{position:relative;height:clamp(360px,66vh,850px);background:#24272c;overflow:hidden;isolation:isolate;border:1px solid var(--line);border-radius:16px}
.quality-canvas{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%)}
.quality-canvas img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:fill}
.quality-divider{position:absolute;inset:0 auto 0 50%;width:48px;transform:translateX(-50%);cursor:ew-resize;touch-action:none;z-index:2}
.quality-divider::before{content:"";position:absolute;left:calc(50% - 1px);top:0;bottom:0;width:2px;background:#fff;box-shadow:0 0 3px #0006}
.quality-divider i{position:absolute;top:var(--handle-y,72px);left:50%;transform:translate(-50%,-50%);width:48px;height:48px;display:grid;place-items:center;border-radius:50%;background:#050608;color:#fff;font-style:normal;font-size:23px;pointer-events:none}
.quality-divider span{position:absolute;top:16px;padding:7px 10px;border-radius:8px;background:#050608dd;font-size:12px;pointer-events:none}
.quality-before-label{right:calc(50% + 12px)}.quality-after-label{left:calc(50% + 12px)}
.quality-stage .compare-reset{z-index:4}
@media(max-width:620px){#panel-web .asset-toolbar{gap:8px;flex-wrap:wrap}.asset-toolbar .toolbar-right{flex-direction:row;flex-wrap:wrap;justify-content:flex-end;flex:1}.quality-tools{gap:8px}.quality-tools button{flex:1;min-width:40%}.top-nav{overflow-x:auto}}

/* Uploaded optimization assets begin directly beneath the sticky navigation. */
.workspace:has(#panel-web.active.has-assets){padding-top:0}
#panel-web.has-assets .content-grid{animation:none}
#panel-quality.has-image>.panel-head,#panel-quality.has-image>#qualityDropzone{display:none}
#panel-quality.has-image .quality-workspace{margin-top:0}
.quality-model-options{display:flex;align-items:center;gap:12px;margin-top:16px;font-size:13px;color:var(--muted)}
.quality-model-options[hidden]{display:none}
.quality-model-options select{border:1px solid var(--line);border-radius:10px;padding:9px 12px;background:var(--surface-2);color:var(--text);font:inherit}
.quality-restore-note{color:var(--muted);font-size:12px;line-height:1.5}
.quality-stage{touch-action:none;cursor:grab}
.quality-stage.is-panning{cursor:grabbing}
.quality-canvas img{pointer-events:none;user-select:none;-webkit-user-drag:none}

/* Product identity uses the supplied logo artwork without recoloring it. */
.brand .brand-mark{width:44px;height:44px;background:transparent;box-shadow:none;border:0;flex-shrink:0;overflow:visible}
.brand .brand-mark img{display:block;width:44px;height:44px;object-fit:contain}

/* Keep the longer slogan within narrow screens. */
.web-hero h1{white-space:normal;overflow-wrap:normal;font-size:clamp(30px,5.3vw,76px);line-height:1.1}
#logoPreview{background:transparent}

.external-tab{text-decoration:none;display:inline-flex;align-items:center;white-space:nowrap}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.resize-source>img{width:100%;height:100%;max-width:none;max-height:none;object-fit:fill}

.toolbar-left{flex-wrap:wrap;row-gap:6px}
.toolbar-left>#assetCount{font-size:16px;white-space:nowrap}
.toolbar-left>.selection-hint{font-family:var(--font);font-size:13px;color:var(--muted);margin-right:0}
.toolbar-left>.selection-hint[hidden]{display:none}

/* Distribute cards across available width, including small PDF page sets. */
.asset-grid{position:relative;column-width:auto;column-count:auto;padding-top:15px}
.asset-grid>.asset-card{position:absolute;display:block;max-width:none;margin:0}

/* Keep sparse galleries compact and allow inspecting zoomed preview edges. */
.asset-grid>.asset-card{max-width:460px}
#panel-resize.has-image #resizeDropzone{display:none}
.resize-heading-actions{display:flex;align-items:center;gap:8px}
.compare-stage{cursor:grab;user-select:none}
.compare-stage.is-panning{cursor:grabbing}
.compare-canvas{will-change:width,height,left,top}

#panel-web.is-fetching-page>.upload-intro,#panel-web.is-fetching-page>.content-grid{display:none}
.workspace:has(#panel-web.active.is-fetching-page){padding-top:0;padding-bottom:0}
.page-fetch-progress{min-height:calc(100dvh - var(--topbar-height,90px));display:grid;place-items:center;padding:32px 16px}
.page-fetch-progress[hidden]{display:none}
.page-fetch-progress-content{width:min(520px,100%);text-align:center}
.page-fetch-track{height:28px;border:2px solid #69765b;border-radius:999px;padding:3px;background:#1b2118;box-shadow:inset 0 2px 5px #0009,0 0 22px #4969df12;overflow:hidden}
.page-fetch-fill{height:100%;border-radius:999px;background:repeating-linear-gradient(135deg,#4969df 0px,#4969df 18px,#3857cd 18px,#3857cd 36px);background-size:51px 100%;box-shadow:inset 0 3px 3px #4969df66,inset 0 -3px 3px #527e3370;animation:page-fetch-stripes 1s linear infinite}
#pageFetchStatus{margin:20px 0 0;color:var(--muted);font-size:16px;line-height:1.6}
@keyframes page-fetch-stripes{to{background-position:51px 0}}
@media(prefers-reduced-motion:reduce){.page-fetch-fill{animation:none}}

.large-image-notice{top:20px;left:50%;right:auto;bottom:auto;z-index:100;max-width:calc(100vw - 32px);transform:translate(-50%,-12px)}
.large-image-notice.show{opacity:1;transform:translate(-50%,0)}
@media(prefers-reduced-motion:reduce){.large-image-notice{transition:none}}

.asset-shelf{position:fixed;left:16px;top:calc(var(--topbar-height,82px) + 16px);bottom:16px;width:240px;z-index:18;border:1px solid var(--line);border-radius:14px;background:var(--surface);display:flex;flex-direction:column;overflow:hidden}
.asset-shelf[hidden]{display:none}
.asset-shelf-toggle{width:100%;min-height:48px;display:flex;justify-content:space-between;align-items:center;gap:8px;padding:12px;border:0;background:transparent;color:var(--text);font-size:14px;text-align:left}
.asset-shelf-toggle b{font-weight:400;color:var(--muted)}
.shelf-chevron{font-size:22px;transform:rotate(180deg)}
.asset-shelf-body{overflow-y:auto;padding:0 12px 16px;min-height:0}
.asset-shelf-body>p{font-size:12px;color:var(--muted);margin:0 0 12px}
.asset-shelf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 10px;color:var(--muted);font-size:13px}
.shelf-card{min-width:0}.shelf-thumb{width:100%;aspect-ratio:1;border:1px solid var(--line);border-radius:9px;overflow:hidden;padding:0;background:#282c33;cursor:grab}
.shelf-thumb:active{cursor:grabbing}.shelf-thumb img{display:block;width:100%;height:100%;object-fit:contain}
.shelf-name{margin-top:6px;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:text}
.shelf-name .asset-rename{width:65%;min-width:0}
.asset-shelf.collapsed{width:48px;bottom:auto}.asset-shelf.collapsed .asset-shelf-body,.asset-shelf.collapsed .asset-shelf-toggle>span:first-child{display:none}
.asset-shelf.collapsed .shelf-chevron{transform:none}.asset-shelf.collapsed .asset-shelf-toggle{justify-content:center}
body.with-asset-shelf .workspace{padding-left:280px}body.with-asset-shelf.asset-shelf-collapsed .workspace{padding-left:88px}
@media(max-width:700px){.asset-shelf{width:200px;left:8px;top:calc(var(--topbar-height,82px) + 8px);bottom:8px}body.with-asset-shelf .workspace{padding-left:224px;padding-right:12px}body.with-asset-shelf.asset-shelf-collapsed .workspace{padding-left:72px}.asset-shelf-toggle{font-size:13px}}
@media(max-width:480px){body.with-asset-shelf .workspace{padding-left:72px}.asset-shelf:not(.collapsed){box-shadow:12px 0 35px #0009}}

.asset-shelf-empty{grid-column:1/-1;display:flex;flex-direction:column;align-items:center;text-align:center;padding:32px 0;gap:14px;color:var(--muted)}
.asset-shelf-empty svg{opacity:.65}.asset-shelf-empty p{margin:0;font-size:14px;line-height:1.7;max-width:190px}
.asset-shelf-empty a{color:var(--lime);font-size:14px;text-decoration:none;padding:6px}.asset-shelf-empty a:hover{text-decoration:underline}
.upload-flying-image{position:fixed;left:0;top:0;width:68px;height:84px;padding:5px;border:1px solid #89939f;border-radius:10px;background:#252b32;box-shadow:0 8px 24px #0006;z-index:80;pointer-events:none;display:grid;place-items:center;color:var(--lime);font-size:15px;font-weight:600;will-change:transform,opacity;overflow:hidden}
.upload-flying-image img{display:block;width:100%;height:100%;object-fit:contain;border-radius:5px}

.web-tab-label{position:relative;display:inline-block}
.top-nav .web-tab-count{position:absolute;top:calc(100% + 2px);left:50%;transform:translateX(-50%);color:var(--lime);font-size:10px;font-weight:500;line-height:12px;font-variant-numeric:tabular-nums;white-space:nowrap;pointer-events:none}
@media(max-width:620px){.top-nav .mode-tab{padding-bottom:24px}}

/* Cutout uses a single zoomable image canvas. */
#panel-cutout.has-image #cutoutDropzone{display:none}
#panel-cutout.has-image .cutout-layout{grid-template-columns:minmax(0,1fr)}
.cutout-actions{display:flex;gap:8px;align-items:center}
#cutoutStage{height:clamp(300px,65vh,800px);min-height:300px;touch-action:none;overscroll-behavior:contain;user-select:none}
#cutoutStage.has-image{cursor:grab}#cutoutStage.is-panning{cursor:grabbing}
#cutoutStage.is-brushing{cursor:crosshair}
#cutoutStage[data-cutout-background="transparent"]{background-color:#fff;background-image:linear-gradient(45deg,#e3e7ee 25%,transparent 25%),linear-gradient(-45deg,#e3e7ee 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e3e7ee 75%),linear-gradient(-45deg,transparent 75%,#e3e7ee 75%);background-size:22px 22px;background-position:0 0,0 11px,11px -11px,-11px 0}
#cutoutStage[data-cutout-background="solid"]{background:var(--cutout-preview-background,#fff)}
#cutoutStage canvas{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:none;max-height:none;animation:none;pointer-events:none}
#cutoutStatus{z-index:2;pointer-events:none;max-width:calc(100% - 28px)}
#cutoutReset{position:absolute;right:12px;top:12px;z-index:3;background:#111419df}
#cutoutReset[hidden]{display:none}
#cutoutZoom{z-index:4;pointer-events:none}
.asset-toolbar .toolbar-right>button,.asset-toolbar .toolbar-right>select{height:48px;min-height:48px;box-sizing:border-box;padding-top:6px;padding-bottom:6px}
#downloadAll:disabled{background:var(--surface-2);border-color:var(--line);color:var(--muted);box-shadow:none;cursor:not-allowed;filter:none;transform:none}

.external-link-icon{flex-shrink:0;margin-left:5px;vertical-align:middle}

.compression-setting { display:flex; align-items:center; gap:8px; color:var(--muted, #8b929d); font-size:12px; margin:8px 0; }
.compression-setting select { min-width:0; flex:1; padding:7px 8px; border:1px solid #30363e; border-radius:8px; background:#1b2025; color:#f1f1ed; }
.compare-toolbar .compression-setting { min-width:170px; }
.compression-result { color:#8b929d; font-size:11px; line-height:1.5; min-height:17px; margin:6px 0; }
.asset-effort:disabled, #compareEffort:disabled { opacity:.4; cursor:default; }
.compare-controls > .compression-setting { display:flex; flex-direction:column; align-items:stretch; margin:0; }

/* Office import, local OCR export, and persistent preferences. */
.settings-trigger{flex:0 0 auto;width:38px;height:38px;display:grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:10px;background:transparent;color:var(--muted);transition:color var(--fast) ease,border-color var(--fast) ease,background var(--fast) ease}
.settings-trigger:hover{color:var(--text);border-color:#4b535f;background:#ffffff08}.settings-trigger:focus-visible{outline:2px solid var(--lime);outline-offset:2px}
.office-dialog{position:relative;width:min(660px,calc(100vw - 32px));max-height:min(88vh,820px);max-height:min(88dvh,820px);padding:0;border:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--text);box-shadow:0 28px 100px #000a;overflow:hidden}
.office-dialog::backdrop{background:#050608c7;backdrop-filter:blur(8px)}
.office-dialog[open]{display:flex;flex-direction:column;animation:dialog-enter 260ms var(--ease-out) both}
.office-dialog>header{position:relative;flex:0 0 auto;padding:24px 70px 20px 24px;border-bottom:1px solid var(--line)}
.office-dialog>header h2{margin:0;font-size:22px;letter-spacing:-.025em}.office-dialog>header p:not(.eyebrow){margin:7px 0 0;color:var(--muted);font-size:13px;line-height:1.55}
.office-dialog-body{padding:22px 24px;overflow:auto;display:grid;gap:12px}
.office-dialog>footer{flex:0 0 auto;display:flex;justify-content:flex-end;gap:10px;padding:16px 24px;border-top:1px solid var(--line)}
.office-choice{position:relative;display:grid;grid-template-columns:22px minmax(0,1fr);align-items:flex-start;gap:12px;padding:16px;border:1px solid var(--line);border-radius:13px;background:#111419;cursor:pointer;transition:border-color var(--fast) ease,background var(--fast) ease}
.office-choice:hover{border-color:#4b535f;background:#15191f}.office-choice:has(input:checked){border-color:var(--lime);background:#4969df08;box-shadow:inset 0 0 0 1px #4969df22}
.office-choice input{width:17px;height:17px;margin:2px 0 0;accent-color:var(--lime)}
.office-choice span{min-width:0}.office-choice strong{display:block;font-size:14px;line-height:1.45}.office-choice small{display:block;margin-top:5px;color:var(--muted);font-size:12px;line-height:1.65}
.office-choice em{display:inline-block;margin-left:6px;padding:2px 6px;border:1px solid #ddad55aa;border-radius:999px;color:#e8be6e;font:normal 9px var(--mono);vertical-align:2px}
.office-choice.experimental:has(input:checked){border-color:#ddad55;background:#ddad5508;box-shadow:inset 0 0 0 1px #ddad5522}
.office-local-note{margin:0;padding:12px 14px;border-radius:10px;background:#ffffff06;color:var(--muted);font-size:12px;line-height:1.65}
.settings-dialog{width:min(590px,calc(100vw - 32px))}.settings-field{display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,auto);align-items:center;gap:18px;padding:17px 0}.settings-field strong,.settings-field small{display:block}.settings-field strong{font-size:14px}.settings-field small{margin-top:4px;color:var(--muted);font-size:12px}.settings-field select{min-width:190px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--surface-2);color:var(--text);font:inherit}.settings-reset{justify-self:start;margin-top:2px}
.ocr-dialog{width:min(700px,calc(100vw - 32px))}.ocr-format-list{display:grid;gap:10px;margin:0;padding:0;border:0}.ocr-format-list legend{margin:0 0 10px;font-size:12px;font-weight:700;color:var(--muted)}
.ocr-progress{position:relative;overflow:hidden;min-height:68px;padding:15px 15px 23px;border:1px solid var(--line);border-radius:11px;background:#0e1115;color:var(--text);font-size:13px}
.ocr-progress[hidden]{display:none}.ocr-progress::after{content:"";position:absolute;left:14px;right:14px;bottom:12px;height:4px;border-radius:999px;background:#272d34}
.ocr-progress i{position:absolute;left:14px;bottom:12px;z-index:1;height:4px;max-width:calc(100% - 28px);border-radius:999px;background:var(--lime);transition:width 180ms ease}
.ocr-progress i.indeterminate{animation:ocr-progress-slide 1.15s ease-in-out infinite}
@keyframes ocr-progress-slide{0%{transform:translateX(-110%)}50%{transform:translateX(105%)}100%{transform:translateX(300%)}}
.office-render-host{position:fixed;left:-100000px;top:0;z-index:9999;width:max-content;min-width:1px;background:#fff;color:#111;pointer-events:none}
.office-sheet-page{display:block;width:max-content;min-width:900px;max-width:3000px;padding:40px;background:#fff;color:#111;font-family:Arial,"PingFang SC","Microsoft YaHei",sans-serif}
.office-sheet-page h2{margin:0 0 18px;font-size:22px;color:#111}.office-sheet-page table{border-collapse:collapse;background:#fff;color:#111;font-size:14px}.office-sheet-page td{min-width:84px;max-width:260px;height:28px;padding:5px 8px;border:1px solid #aeb5bd;white-space:pre-wrap;overflow-wrap:anywhere;vertical-align:top}
@media(max-width:1020px){.settings-trigger{margin-left:-22px}.top-nav{gap:17px}.top-nav .mode-tab{font-size:12px}}
@media(max-width:700px){.settings-trigger{position:absolute;right:16px;top:16px;margin:0}.topbar{position:sticky}.office-dialog{width:calc(100vw - 18px);border-radius:15px}.office-dialog>header{padding:20px 62px 17px 18px}.office-dialog-body{padding:18px}.office-dialog>footer{padding:14px 18px}.settings-field{grid-template-columns:1fr}.settings-field select{width:100%;min-width:0}}
@media(min-width:1101px) { .compare-controls { grid-template-columns:minmax(190px,1.2fr) minmax(230px,1.2fr) minmax(130px,.8fr) minmax(110px,.7fr) minmax(90px,.6fr) auto; } }
.asset-quality:disabled, #compareQuality:disabled { opacity:.4; cursor:default; }

/* Keep the compression choices compact so the image comparison gets more room. */
.compression-stage-table{overflow:visible;border:0;background:transparent}
.compression-stage-header{display:none}
.compression-candidates{margin:0 0 8px}
.compression-candidates-heading{display:none}
.compression-stage-rows{display:grid;grid-template-columns:repeat(var(--plan-count,8),minmax(0,1fr));gap:4px;padding:1px}
.compression-stage-choice,.compression-stage-placeholder{min-width:0;min-height:40px;grid-template-columns:14px minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:5px;row-gap:1px;padding:5px 7px;border:1px solid var(--line);border-radius:7px;text-align:left;font-size:10px}
.compression-stage-choice{background:var(--surface)}
.compression-stage-choice:nth-child(even){background:var(--surface)}
.compression-stage-choice span:first-child{grid-column:1;grid-row:1/3}
.compression-stage-choice span:nth-child(2),.compression-stage-placeholder span:nth-child(2){grid-column:2;grid-row:1;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.compression-stage-choice span:nth-child(3),.compression-stage-placeholder span:nth-child(3){grid-column:3;grid-row:1;color:var(--muted);white-space:nowrap}
.compression-stage-choice span:nth-child(4),.compression-stage-placeholder span:nth-child(4){grid-column:2/4;grid-row:2;color:var(--muted);font-size:9px}
.compression-stage-choice span:nth-child(5),.compression-stage-choice span:nth-child(6),.compression-stage-placeholder span:nth-child(5),.compression-stage-placeholder span:nth-child(6){display:none}
.compression-stage-choice.selected span:nth-child(3),.compression-stage-choice.selected span:nth-child(4){color:#fff}
@media(max-width:900px){.compression-stage-rows{gap:3px}.compression-stage-choice,.compression-stage-placeholder{grid-template-columns:12px minmax(0,1fr);grid-template-rows:auto auto auto;padding:4px 3px;font-size:9px}.compression-stage-choice span:first-child{grid-column:1;grid-row:1/4}.compression-stage-choice span:nth-child(2),.compression-stage-placeholder span:nth-child(2){grid-column:2;grid-row:1}.compression-stage-choice span:nth-child(3),.compression-stage-placeholder span:nth-child(3){grid-column:2;grid-row:2}.compression-stage-choice span:nth-child(4),.compression-stage-placeholder span:nth-child(4){grid-column:2;grid-row:3;font-size:8px}}

.compare-meta { white-space:pre-line; line-height:1.7; overflow-wrap:anywhere; }
.compression-candidates{margin:-4px 0 14px;padding:0 1px}.compression-candidates[hidden]{display:none}.compression-candidates-heading{display:flex;align-items:baseline;gap:12px;margin-bottom:8px;color:var(--text);font-size:12px}.compression-candidates-heading span{color:var(--muted);font-size:10px}.compression-candidate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.compression-candidate{min-width:0;display:grid;grid-template-columns:58px minmax(0,1fr);grid-template-rows:auto 1fr;align-items:center;column-gap:10px;padding:7px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--text);text-align:left;cursor:pointer}.compression-candidate:disabled{opacity:.65;cursor:wait}.compression-candidate.selected{border-color:var(--lime);background:color-mix(in srgb,var(--lime) 9%,var(--surface));box-shadow:0 0 0 1px var(--lime)}.candidate-label{font-size:11px;font-weight:700}.candidate-preview{grid-row:1/3;grid-column:1;width:58px;height:48px;display:grid;place-items:center;overflow:hidden;border-radius:6px;background:#e9edf2}.candidate-preview img{width:100%;height:100%;object-fit:cover}.candidate-result{color:var(--muted);font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.compression-candidate-grid .loading-shimmer{background:linear-gradient(110deg,#e9edf2 8%,#fff 18%,#e9edf2 33%);background-size:200% 100%;animation:loading-shimmer 1.2s linear infinite}@keyframes loading-shimmer{to{background-position-x:-200%}}
@media(max-width:700px){.compression-candidate-grid{grid-template-columns:1fr}.compression-candidate{grid-template-columns:58px minmax(0,1fr)}.compression-candidates-heading{display:block}.compression-candidates-heading span{display:block;margin-top:4px}}
.compression-stage-table{overflow-x:auto;border:1px solid var(--line);border-radius:9px;background:var(--surface)}.compression-stage-table[hidden]{display:none}.compression-stage-header,.compression-stage-choice,.compression-stage-placeholder{min-width:540px;display:grid;grid-template-columns:34px minmax(60px,.8fr) minmax(90px,1fr) minmax(70px,.8fr) minmax(65px,.8fr) minmax(90px,1fr);align-items:center;text-align:right}.compression-stage-header{padding:7px 10px;color:var(--muted);font-size:10px;font-weight:700}.compression-stage-header span:first-child,.compression-stage-choice span:first-child,.compression-stage-placeholder span:first-child{text-align:center}.compression-stage-choice,.compression-stage-placeholder{padding:7px 10px;border:0;border-top:1px solid color-mix(in srgb,var(--line) 65%,transparent);color:var(--text);font:inherit;font-size:11px}.compression-stage-choice{width:100%;background:var(--surface);cursor:pointer}.compression-stage-choice:nth-child(even){background:color-mix(in srgb,var(--lime) 5%,var(--surface))}.compression-stage-choice:hover{background:color-mix(in srgb,var(--lime) 11%,var(--surface))}.compression-stage-choice.selected{background:var(--lime);color:#fff}.compression-stage-choice:focus-visible{outline:2px solid var(--lime);outline-offset:-2px}.compression-stage-placeholder{color:var(--muted)}.compression-stage-choice span:first-child{color:var(--lime);font-size:13px}.compression-stage-choice.selected span:first-child{color:#fff}
.compare-manual-toggle{align-self:end;padding:7px 11px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;font-size:11px;white-space:nowrap;cursor:pointer}.compare-manual-toggle:hover{border-color:var(--lime);color:var(--lime)}.compare-manual-toggle[hidden]{display:none}
.asset-card.selected .asset-check::after,.selection-peek-image.selected .asset-check::after{color:#fff}
.format-switch.active{color:#fff}
.asset-controls .format-switch.active{background:#4969df;color:#fff;box-shadow:none}
.primary-btn{display:inline-flex;align-items:center;justify-content:center;line-height:1.2;vertical-align:middle}
.primary-btn span{line-height:1;vertical-align:middle}
.compare-controls:has(#compareQualityControl[hidden]){grid-template-columns:minmax(220px,1fr) minmax(260px,1.2fr) auto}
.compare-controls>#compareQualityControl[hidden],.compare-controls>#compareEffortControl[hidden]{display:none}
@media(max-width:1100px){.compare-controls:has(#compareQualityControl[hidden]){grid-template-columns:1fr 1fr}.compare-controls:has(#compareQualityControl[hidden]) .compare-format-control,.compare-controls:has(#compareQualityControl[hidden]) .compare-dimension-control{grid-column:span 2}}
@media(max-width:620px){.compare-controls:has(#compareQualityControl[hidden]){grid-template-columns:1fr}.compare-controls:has(#compareQualityControl[hidden]) .compare-format-control,.compare-controls:has(#compareQualityControl[hidden]) .compare-dimension-control{grid-column:auto}}
.compare-dialog{background:#fff;color:#20242b;color-scheme:light}.compare-head h2{color:#20242b}.compare-close{color:#5b6472}
.utility-heading h1{font-size:30px;margin:8px 0}.utility-heading p,.utility-upload>span,.utility-note{color:var(--muted);line-height:1.7}.utility-tabs{display:flex;gap:8px;margin:22px 0}.utility-tabs .active{color:var(--lime);border-color:var(--lime)}.utility-upload{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:18px;border:1px dashed var(--line);border-radius:16px;margin-bottom:20px}.utility-upload>span{font-size:12px}.utility-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:22px}.utility-settings{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:20px;align-self:start}.utility-settings h2{font-size:18px;margin:0 0 18px}.utility-settings label{display:flex;flex-wrap:wrap;gap:8px;font-size:12px;margin:16px 0;color:var(--muted)}.utility-settings input:not([type=checkbox]),.utility-settings select{width:100%;min-width:0;accent-color:var(--lime)}.utility-settings input:not([type=range]):not([type=checkbox]),.utility-settings select{padding:9px;background:var(--surface-2);border:1px solid var(--line);border-radius:8px;color:var(--text)}.utility-settings input[type=color]{height:36px;padding:3px!important}.utility-settings output{margin-left:auto;color:var(--lime)}.utility-note{font-size:12px}.utility-stage{min-height:340px;height:52vh;display:flex;align-items:center;justify-content:center;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:repeating-conic-gradient(#22262b 0% 25%,#292e34 0% 50%) 0/20px 20px}.utility-stage canvas{max-width:100%;max-height:100%;object-fit:contain}.utility-stage p{color:var(--muted)}.utility-actionbar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:16px 0}.utility-actionbar>span{margin-right:auto}.utility-files{display:grid;grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:12px}.utility-file{padding:8px;border:1px solid var(--line);border-radius:10px;min-width:0}.utility-file.active{border-color:var(--lime)}.utility-thumb{width:100%;height:90px;border:0;background:var(--surface);cursor:pointer}.utility-thumb img{height:100%;width:100%;object-fit:contain}.utility-file>div{font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-top:7px}.utility-preview-name{font-size:13px;overflow-wrap:anywhere}.exif-details{margin:0;display:grid;gap:6px}.exif-details dt{color:var(--muted);font-size:11px;margin-top:12px}.exif-details dd{margin:0;font-size:13px;overflow-wrap:anywhere}#utilityProgress{font-size:12px;color:var(--lime);overflow-wrap:anywhere}.utility-settings[hidden],#wmLogoFields[hidden],#wmTextFields[hidden]{display:none}@media(max-width:850px){.utility-layout{grid-template-columns:1fr}.utility-settings{max-width:none}.utility-stage{height:42vh;min-height:240px}}

/* File converter in Utilities. */
.file-convert-panel[hidden],.file-convert-progress[hidden],.file-convert-result[hidden],.file-convert-info [hidden]{display:none}
.file-convert-panel{display:grid;gap:18px;padding:22px;border:1px solid var(--line);border-radius:18px;background:linear-gradient(150deg,#171b20 0%,#111419 70%);box-shadow:0 22px 58px #0002}
.file-convert-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-bottom:18px;border-bottom:1px solid var(--line)}
.file-convert-heading h2{margin:5px 0 7px;font-size:24px;letter-spacing:-.025em}.file-convert-heading p:not(.eyebrow){margin:0;color:var(--muted);font-size:13px;line-height:1.65}
.file-convert-local{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #4969df55;border-radius:999px;color:var(--lime);font:600 10px var(--mono);letter-spacing:.03em}.file-convert-local:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px #4969df14}
.file-convert-directions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.file-convert-direction{display:grid;grid-template-columns:max-content 25px max-content;align-items:center;justify-content:start;gap:5px 8px;min-height:132px;padding:17px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);color:var(--text);text-align:left;transition:border-color var(--fast) ease,background var(--fast) ease,transform var(--fast) var(--ease-out)}
.file-convert-direction:hover{border-color:#4c5561;transform:translateY(-1px)}.file-convert-direction.active,.file-convert-direction[aria-pressed="true"]{border-color:var(--lime);background:#4969df09;box-shadow:inset 0 0 0 1px #4969df20}
.file-type-badge{display:inline-grid;place-items:center;min-width:50px;height:29px;padding:0 9px;border:1px solid #4b535f;border-radius:7px;color:#d7dbe1;font:700 10px var(--mono)}.file-type-badge.target{border-color:#4969df66;color:var(--lime);background:#4969df0b}
.file-convert-arrow{color:var(--muted);font-size:18px;text-align:center}.file-convert-direction strong,.file-convert-direction small{grid-column:1/-1}.file-convert-direction strong{margin-top:7px;font-size:14px}.file-convert-direction small{color:var(--muted);font-size:11px;font-weight:400;line-height:1.6}
.file-convert-dropzone{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:16px;min-height:128px;padding:22px;border:1px dashed #505966;border-radius:15px;background:#0e1115;cursor:pointer;transition:border-color var(--fast) ease,background var(--fast) ease,box-shadow var(--fast) ease}
.file-convert-dropzone:hover,.file-convert-dropzone.dragging{border-color:var(--lime);background:#4969df06;box-shadow:inset 0 0 0 1px #4969df1c}.file-convert-dropzone:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
.file-convert-drop-icon{width:54px;height:62px;display:grid;place-items:center;position:relative;border:1px solid #49515d;border-radius:10px;background:linear-gradient(145deg,#252b32,#171b20);color:var(--lime)}.file-convert-drop-icon:before{content:"";width:22px;height:28px;border:2px solid currentColor;border-radius:3px}.file-convert-drop-icon:after{content:"+";position:absolute;right:5px;bottom:5px;width:21px;height:21px;display:grid;place-items:center;border-radius:50%;background:var(--lime);color:#111;font-size:15px;font-weight:800;box-shadow:0 3px 9px #0007}
.file-convert-drop-copy{min-width:0}.file-convert-drop-copy strong,.file-convert-drop-copy span{display:block}.file-convert-drop-copy strong{font-size:15px}.file-convert-drop-copy span{margin-top:7px;color:var(--muted);font-size:12px;line-height:1.55}
.file-convert-workspace{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,330px);gap:14px;align-items:stretch}
.file-convert-list-wrap,.file-convert-info{min-width:0;border:1px solid var(--line);border-radius:14px;background:#111419}
.file-convert-list-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 15px;border-bottom:0}.file-convert-list-head>div{display:flex;align-items:baseline;gap:9px}.file-convert-list-head strong{font-size:13px}.file-convert-list-head span{color:var(--muted);font-size:11px}
.file-convert-list{min-height:132px;max-height:310px;overflow:auto;padding:8px}.file-convert-empty{min-height:114px;display:flex;align-items:center;justify-content:center;gap:10px;padding:18px;color:var(--muted);text-align:center}.file-convert-empty>span{width:28px;height:28px;display:grid;place-items:center;border:1px dashed #505966;border-radius:8px;font-size:17px}.file-convert-empty p{max-width:330px;margin:0;font-size:12px;line-height:1.6}
.file-convert-item{display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:11px;padding:10px;border-radius:10px}.file-convert-item+.file-convert-item{border-top:1px solid #252b32}.file-convert-item:hover{background:#ffffff04}.file-convert-file-icon{width:36px;height:40px;display:grid;place-items:center;border:1px solid #3e4651;border-radius:7px;background:#1b2026;color:var(--lime);font:700 8px var(--mono)}
.file-convert-file-copy{min-width:0}.file-convert-file-copy strong,.file-convert-file-copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-convert-file-copy strong{font-size:12px}.file-convert-file-copy span,.file-convert-item-status{margin-top:4px;color:var(--muted);font-size:10px}.file-convert-item-remove{width:30px;height:30px;padding:0;border:0;border-radius:7px;background:transparent;color:var(--muted);font-size:18px}.file-convert-item-remove:hover{background:#ffffff08;color:var(--text)}
.file-convert-info{padding:17px}.file-convert-info h3{margin:0 0 12px;font-size:14px}.file-convert-info ul{margin:0;padding-left:18px;color:#bdc3cb;font-size:11px;line-height:1.75}.file-convert-info li+li{margin-top:5px}.file-convert-info>p{margin:14px 0 0;padding-top:12px;border-top:1px solid var(--line);color:var(--muted);font-size:10px;line-height:1.65}
.file-convert-progress{padding:15px;border:1px solid #4969df3d;border-radius:13px;background:#4969df07}.file-convert-progress-head{display:flex;align-items:center;justify-content:space-between;gap:16px}.file-convert-progress-head strong{font-size:12px}.file-convert-progress-head span{color:var(--lime);font:700 11px var(--mono)}.file-convert-progress-track{height:5px;margin:11px 0 8px;overflow:hidden;border-radius:999px;background:#272d34}.file-convert-progress-track i{display:block;width:0;height:100%;border-radius:inherit;background:var(--lime);transition:width 180ms ease}.file-convert-progress p{margin:0;color:var(--muted);font-size:10px}
.file-convert-result{display:flex;align-items:center;gap:12px;padding:14px 16px;border:1px solid #4969df4d;border-radius:13px;background:#4969df08}.file-convert-result-icon{flex:0 0 auto;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--lime);color:#111;font-weight:800}.file-convert-result strong,.file-convert-result p{display:block;margin:0}.file-convert-result strong{font-size:13px}.file-convert-result p{margin-top:4px;color:var(--muted);font-size:11px}
.file-convert-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding-top:2px}.file-convert-actions>span{margin-right:auto;color:var(--muted);font-size:11px}.file-convert-actions button{min-height:42px}.file-convert-actions button:disabled,.file-convert-list-head button:disabled{opacity:.42;cursor:not-allowed;transform:none}
@media(max-width:820px){.file-convert-workspace{grid-template-columns:1fr}.file-convert-info{order:-1}.file-convert-info ul{columns:2;column-gap:30px}.file-convert-info li{break-inside:avoid}.file-convert-dropzone{grid-template-columns:48px minmax(0,1fr) auto}.file-convert-drop-icon{width:46px;height:54px}}
@media(max-width:620px){.utility-tabs{overflow-x:auto;padding-bottom:3px}.utility-tabs button{flex:0 0 auto}.file-convert-panel{padding:15px;border-radius:14px}.file-convert-heading{display:block}.file-convert-local{margin-top:12px}.file-convert-directions{grid-template-columns:1fr}.file-convert-direction{min-height:122px}.file-convert-dropzone{grid-template-columns:48px minmax(0,1fr);padding:18px 14px}.file-convert-dropzone .primary-btn{grid-column:1/-1;width:100%;justify-content:center}.file-convert-info ul{columns:1}.file-convert-actions{display:grid;grid-template-columns:1fr 1fr}.file-convert-actions>span{grid-column:1/-1;margin:0}.file-convert-actions button{width:100%;padding-left:9px;padding-right:9px}}

/* Account dialog */
.account-trigger{flex-shrink:0;border:1px solid var(--line,#343941);background:transparent;color:var(--lime,#4969df);padding:9px 13px;border-radius:999px;font:inherit;font-size:13px;cursor:pointer;white-space:nowrap}
.account-dialog{width:min(480px,calc(100vw - 32px));max-height:90dvh;overflow:auto;box-sizing:border-box;border:1px solid var(--line,#343941);border-radius:24px;background:#15181d;color:#f1f2ef;padding:32px;box-shadow:0 24px 100px #0008}
.account-dialog::backdrop{background:#0009;backdrop-filter:blur(5px)}
.account-dialog h2{font-size:28px;margin:12px 0 20px}.account-close{position:absolute;right:16px;top:12px;border:0;background:none;color:#a5aab3;font-size:28px;cursor:pointer}
.account-copy{color:#9ba2ae;font-size:14px;line-height:1.7}.account-small{font-size:12px}.account-login-mark{margin:22px auto;width:82px;height:82px;border-radius:24px;display:grid;place-items:center;background:#4969df15;color:var(--lime,#4969df);font-weight:700;font-size:22px}
#accountLogin{text-align:center}#accountStatus{font-size:14px;line-height:1.6;min-height:44px}#accountSubmit{width:100%;justify-content:center}#accountRetry{margin-top:12px}
.account-stats{display:grid;grid-template-columns:1fr;gap:12px;margin:24px 0}.account-products{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:24px 0}.account-stats>div,.account-products article{padding:16px;border:1px solid #343941;border-radius:14px}.account-stats span,.account-stats small{display:block;color:#9ba2ae;font-size:12px}.account-stats strong{display:block;margin:10px 0;color:var(--lime,#4969df);font-size:21px}.account-products h3{font-size:16px;margin:0}.account-products p{font-size:12px;line-height:1.6;color:#9ba2ae}.account-products button{width:100%;padding:9px;border-radius:8px;border:1px solid #343941;color:#838995;background:#1c2027}.account-dialog button:disabled{opacity:.5;cursor:not-allowed}.account-dialog [hidden]{display:none!important}
@media(max-width:620px){.account-trigger{margin-left:auto}.account-dialog{padding:24px}.account-products,.account-stats{gap:8px}}

#accountForm{text-align:left}#accountForm label{display:block;margin:16px 0 8px;font-size:14px;color:#c4c9d1}#accountForm input{width:100%;min-width:0;box-sizing:border-box;border:1px solid #414650;border-radius:10px;background:#171a20;color:#f4f6f8;padding:12px;font:inherit}#accountForm input:focus-visible{outline:2px solid var(--lime,#4969df);outline-offset:2px}.account-code-row{display:flex;gap:10px}.account-code-row button{flex-shrink:0;min-width:112px}#accountForm button:disabled{opacity:.45;cursor:not-allowed}

/* Every resize item owns its crop preview and selection. */
.resize-batch{min-width:0}.resize-batch-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;color:var(--muted)}#resizeList{display:grid;gap:20px}.resize-card-actions{display:flex;justify-content:space-between;align-items:center;align-self:stretch;margin-bottom:20px;font-size:14px}.resize-card-actions label{display:flex;gap:8px;align-items:center}.resize-preview.selected{border-color:#4969df}.resize-filename{margin:16px 0 6px;overflow-wrap:anywhere;text-align:center;cursor:text}.resize-meta{margin:0;color:var(--muted);font-size:13px;text-align:center}.resize-settings{position:sticky;top:20px}#resizeList .resize-preview{min-height:220px}#resizeDownload:disabled{opacity:.4;cursor:not-allowed}@media(max-width:800px){.resize-settings{position:static;grid-row:1}.resize-workspace{display:grid}}

/* Match the image optimizer's masonry and selection controls. */
#resizeList{display:block;column-width:320px;column-gap:14px;padding-top:15px}
#resizeList>.resize-preview{display:inline-block;position:relative;box-sizing:border-box;width:100%;max-width:460px;min-height:0;margin:0 0 14px;padding:0;break-inside:avoid;vertical-align:top;overflow:hidden;border-color:var(--line)}
#resizeList>.resize-preview.selected{border-color:var(--lime)}
#resizeList .resize-source{margin:0 auto;max-width:100%}
#resizeList .resize-filename{padding:0 14px;text-align:left;font-size:14px;margin:14px 0 6px}
#resizeList .resize-meta{padding:0 14px 16px;text-align:left;font-size:12px}
.resize-batch-toolbar{flex-wrap:wrap}.resize-select-hint{font-size:12px;color:var(--muted)}
@media(max-width:620px){#resizeList{column-width:auto;column-count:1}#resizeList>.resize-preview{display:block;margin:0 auto 14px}}

#resizeList{position:relative;display:block;width:100%;min-width:0;padding-top:15px}
#resizeList>.resize-preview{position:absolute;display:block;max-width:none;margin:0}

.account-history{margin:16px 0;font-size:13px;color:var(--muted)}.account-history summary{cursor:pointer}.account-history ul{padding-left:20px;max-height:220px;overflow:auto}.account-history li{margin:10px 0;overflow-wrap:anywhere}
.resize-workspace[hidden]{display:none!important}

/* Explicit account button colors avoid the native light button background. */
#accountSend{appearance:none;background:#242a33;color:#f4f6f8;border:1px solid #596371;border-radius:10px;padding:12px 14px;font:inherit;font-size:13px;font-weight:600;cursor:pointer}
#accountSend:not(:disabled):hover{background:#333d49;border-color:#4969df}
#accountForm #accountSend:disabled{background:#242a33;color:#abb4c0;border-color:#414650;opacity:1;cursor:not-allowed}

/* Light, tool-first visual pass: clean surfaces, quiet borders, and readable controls. */
:root{color-scheme:light;--bg:#f6f7f9;--surface:#fff;--surface-2:#f8f9fb;--line:#e5e7eb;--text:#252a32;--muted:#6b7280;--lime:#4969df;--lime-dim:#3554c4;--orange:#e98a43}
body{background:var(--bg);color:var(--text)}
.topbar{background:#ffffffed;border-color:var(--line);box-shadow:0 1px 3px #10182808}
.brand-mark{background:#4969df;color:#fff;box-shadow:none;border-radius:9px}
.brand strong{color:#252a32}.brand span{color:var(--muted)}
.top-nav .mode-tab{color:#626b78}.top-nav .mode-tab.active{color:var(--lime)}
.top-nav .mode-tab.active:after{background:var(--lime)}
.web-hero h1{color:#252a32}.web-hero .eyebrow{color:var(--lime)}
.hero-dropzone,.resize-drop.hero-dropzone{background:#fff;border-color:#9aa9e8;box-shadow:0 8px 28px #1d29390a}
.hero-dropzone:hover,.hero-dropzone.dragging,.resize-drop.hero-dropzone:hover{background:#f8f9ff;border-color:var(--lime);box-shadow:0 12px 32px #4969df14}
.dropzone{background:#fff;border-color:#cfd5df;border-radius:12px}
.dropzone.dragging{background:#f3f6ff!important;border-color:var(--lime)!important;box-shadow:0 0 0 3px #4969df18}
.content-grid,.control-panel,.asset-card,.crop-stage,.icon-list,.utility-settings,.utility-file,.office-dialog,.settings-dialog,.ocr-dialog,.account-dialog,.selection-peek{background:#fff;color:var(--text)}
.asset-card .thumb,.shelf-thumb{background:#eef0f3}
.asset-toolbar{background:#ffffffed;border-color:var(--line)}
#panel-web .asset-toolbar{background:#ffffffed;box-shadow:0 8px 18px #1d29390a}
.ghost-btn,.format-btn,.size-pill,.utility-tabs button,.resize-settings select,.compression-setting select{background:#fff;color:var(--text);border-color:var(--line)}
.ghost-btn:hover,.format-btn:hover,.size-pill:hover,.utility-tabs button:hover{background:#f5f6f8;border-color:#c8ced8}
.format-btn.active,.size-pill.active,.template-btn.active{background:#edf1ff;border-color:#b9c6f6;color:#3554c4}
.chip.active{background:#edf1ff;color:#3554c4}
.primary-btn{background:#4969df;color:#fff;border-color:#4969df;box-shadow:0 2px 4px #4969df26}
.primary-btn:hover{background:#3554c4;border-color:#3554c4}
.web-hero h1{color:var(--lime);text-shadow:none}
.drop-icon{border-color:#4969df;color:#4969df}
.text-btn,.download-mini,.asset-shelf-empty a{color:#3554c4}
.url-input-wrap,.url-input-wrap input,.form-row input,.utility-settings input:not([type=range]):not([type=checkbox]),.utility-settings select,.settings-field select,.compression-setting select{background:#fff;color:var(--text);border-color:#d5dae2}
.url-input-wrap input::placeholder,.utility-settings input::placeholder{color:#9aa1ad}
.asset-check{background:transparent;border-color:transparent;color:transparent}.selected .asset-check{background:transparent;border-color:transparent}
.progress,.file-convert-progress-track{background:#e9edf3}
.template-btn{background:#fff;color:var(--muted)}
.match-art{background:#f4f6fb;color:#252a32}
.match-art:before{border-color:#252a3214}.match-art:after{border-color:#4969df4d}
.art-kicker,.art-date,.art-footer{color:#5b6472}.art-date,.art-title em,.art-footer span:last-child{color:#3554c4}
.art-title{color:#202633}.art-badge{background:#fff;border-color:#d7def7;color:#3554c4}
.compare-stage,.quality-stage{background:#e9edf2}
.compare-reset{background:#ffffffeb;color:#252a32;border-color:#d9dee7;box-shadow:0 4px 14px #1d29391a}
.compare-reset:hover{background:#f5f6f8}
.compare-label,.compare-zoom-toast{background:#252a32;color:#fff}
.selection-peek{border-color:var(--line)}
.resize-drop.hero-dropzone{border-width:2px}
.dropzone.dragging{box-shadow:inset 0 0 0 1px #4969df22,0 8px 24px #1d29390a}
.quality-divider i{background:#252a32}
.quality-divider span{background:#252a32;color:#fff}
.cutout-stage{background-color:#edf0f4}
#cutoutReset{background:#ffffffeb;color:#252a32;border:1px solid #d9dee7}
.compression-setting{color:var(--muted)}
.settings-trigger{background:#fff;color:var(--muted)}.settings-trigger:hover{background:#f5f6f8;border-color:#c8ced8}
.office-dialog{box-shadow:0 24px 80px #1d293926}.office-dialog::backdrop,.ocr-dialog::backdrop,.settings-dialog::backdrop{background:#20263370}
.office-choice{background:#fff}.office-choice:hover{background:#f8f9fb;border-color:#c8ced8}
.office-choice:has(input:checked){background:#f3f6ff;box-shadow:inset 0 0 0 1px #4969df18}
.office-choice em{color:#956118;border-color:#e6c68e}
.office-local-note{background:#f4f5f7}
.ocr-progress{background:#f8f9fb}
.ocr-progress:after{background:#e4e7ec}
.utility-stage{background:repeating-conic-gradient(#eef0f3 0% 25%,#e3e6eb 0% 50%) 0/20px 20px}
.utility-stage p{color:#687180}
.file-convert-panel{background:#fff;box-shadow:0 8px 28px #1d29390a}
.file-convert-local{border-color:#d7e4b3;color:#587927}.file-convert-local:before{background:#79a63a;box-shadow:0 0 0 4px #79a63a18}
.file-convert-direction:hover{border-color:#c8ced8;background:#fbfcfd}
.file-convert-direction.active,.file-convert-direction[aria-pressed="true"]{background:#f3f6ff;box-shadow:inset 0 0 0 1px #4969df18}
.file-type-badge{border-color:#d6dae1;color:#535b67}.file-type-badge.target{border-color:#c5d0f5;color:#3554c4;background:#f3f6ff}
.file-convert-dropzone{background:#fafbfc;border-color:#b8c0cc}
.file-convert-dropzone:hover,.file-convert-dropzone.dragging{background:#f5f7ff}
.file-convert-drop-icon{border-color:#d7dce5;background:#f1f3f7}
.file-convert-drop-icon:after{color:#fff}
.file-convert-list-wrap,.file-convert-info{background:#fff}
.file-convert-item+.file-convert-item{border-color:#eef0f3}.file-convert-item:hover,.file-convert-item-remove:hover{background:#f5f6f8}
.file-convert-file-icon{border-color:#d9dee6;background:#f5f6f8}
.file-convert-info ul{color:#5f6875}
.file-convert-progress{background:#f6f8ff;border-color:#dce3fb}
.file-convert-progress-track{background:#e7eaf0}
.file-convert-result{background:#f7faef;border-color:#dce8c5}
.file-convert-result-icon{color:#fff;background:#6c9135}
.file-convert-result.is-warning{background:#fff8eb;border-color:#f2c66d;color:#7a4b08}
.file-convert-result.is-warning .file-convert-result-icon{background:#e7a627;color:#fff}
.file-convert-result.is-warning p{color:#805b22}
.file-convert-result-copy{min-width:0}
.file-convert-pricing-link{display:inline-block;margin-top:7px;color:var(--brand-blue);font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.file-convert-pricing-link[hidden]{display:none}
.account-trigger{border-color:#d8deea;background:#fff;color:#3554c4}
.account-dialog{background:#fff;color:var(--text);border-color:#e1e5eb;box-shadow:0 24px 90px #1d293926}
.account-dialog::backdrop{background:#20263370}
.account-copy,.account-products p,.account-stats span,.account-stats small{color:#6b7280}
.account-close{color:#6b7280}
.account-login-mark{background:#edf2ff;color:#3554c4}
.account-stats>div,.account-products article{border-color:#e5e7eb}
.account-products button{border-color:#d8deea;color:#3554c4;background:#f8f9fb}
#accountForm label{color:#4b5563}
#accountForm input{background:#fff;border-color:#d5dae2;color:#252a32}
#accountSend{background:#4969df;color:#fff;border-color:#4969df}
#accountSend:not(:disabled):hover{background:#3554c4;border-color:#3554c4}
#accountForm #accountSend:disabled{background:#e8ebf0;color:#687180;border-color:#d5dae2;opacity:1}
.upload-flying-image{background:#fff;color:#3554c4;border-color:#d8deea;box-shadow:0 8px 24px #1d293926}
.page-fetch-track{background:#e8ebf0;border-color:#cdd4df;box-shadow:inset 0 1px 3px #1d29391a}
.page-fetch-fill{background:repeating-linear-gradient(135deg,#4969df 0px,#4969df 18px,#7190ee 18px,#7190ee 36px);box-shadow:none}
@media(prefers-color-scheme:dark){:root{color-scheme:light}}
@media(max-width:380px){.account-code-row{flex-wrap:wrap}.account-code-row #accountSend{width:100%}}

/* Header layout aligned like a compact document-tools workspace. */
.topbar{justify-content:flex-start;padding-inline:clamp(16px,3vw,48px);gap:0}
.brand{gap:10px}
.brand .brand-mark{width:42px;height:42px;overflow:hidden;border-radius:10px;background:#4969df;box-shadow:0 4px 10px #4969df26}
.brand .brand-mark img{width:42px;height:42px;filter:none}
.top-nav{order:0;flex:0 1 auto;min-width:0;margin:0 0 0 clamp(18px,2vw,34px);justify-content:flex-start;gap:clamp(12px,1.45vw,25px);overflow-x:auto;scrollbar-width:none}
.top-nav::-webkit-scrollbar{display:none}
.top-nav .mode-tab{flex:0 0 auto;white-space:nowrap}
.topbar>.account-trigger{order:3;margin-left:auto}
.topbar>.settings-trigger{order:4;margin-left:10px}
@media(max-width:1050px){.topbar{gap:0}.top-nav{margin-left:18px;gap:14px}.top-nav .mode-tab{font-size:12px}.account-trigger{padding:8px 10px;font-size:12px}}
@media(max-width:760px){.topbar{height:auto;min-height:72px;flex-wrap:wrap;padding:12px 16px;gap:10px}.topbar>.account-trigger{margin-left:auto}.topbar>.settings-trigger{position:static;margin-left:0}.top-nav{order:5;width:100%;flex:1 0 100%;margin:0;justify-content:flex-start;gap:20px}.top-nav .mode-tab{padding:9px 0 11px}}

/* Document converter landing page: six real tools shown as roomy cards. */
.utility-heading{margin:12px 0 28px}
.utility-heading h1{margin:6px 0 8px;font-size:clamp(28px,3vw,38px);letter-spacing:-.045em;color:var(--text)}
.utility-heading p:not(.eyebrow){max-width:720px;color:var(--muted);font-size:14px}
.document-tool-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.document-tool-card{position:relative;min-width:0;min-height:176px;display:grid;grid-template-columns:54px minmax(0,1fr) 16px;align-content:start;align-items:start;gap:12px;padding:25px 24px;border:1px solid #e2e5e9;border-radius:9px;background:#fff;color:var(--text);text-align:left;box-shadow:0 1px 2px #1d293908;transition:transform 160ms ease,border-color 160ms ease,box-shadow 160ms ease}
.document-tool-card:hover,.document-tool-card:focus-visible{transform:translateY(-2px);border-color:#c8d0e6;box-shadow:0 10px 28px #1d293912;outline:none}
.document-tool-card .nav-tool-icon{width:54px;height:56px;flex:none;font-size:20px}
.document-tool-icon{width:54px;height:56px;display:grid;place-items:center;border-radius:9px;color:#fff;font-size:25px;font-weight:800;line-height:1}
.document-tool-icon.blue{background:#3c91ed}.document-tool-icon.violet{background:#7659e9}.document-tool-icon.amber{background:#f7ae00}.document-tool-icon.pink{background:#d44de0}.document-tool-icon.teal{background:#16b5b5}.document-tool-icon.red{background:#ef363c}
.document-tool-icon.green{background:#217346}
.document-tool-copy{min-width:0;display:grid;gap:7px;padding-top:3px}
.document-tool-copy strong{font-size:18px;line-height:1.35;letter-spacing:-.02em}
.document-tool-copy small{font-size:14px;line-height:1.6;color:#4f5661}
.document-tool-arrow{font-size:30px;line-height:1;color:#252a32;text-align:right;transition:transform 160ms ease}
.document-tool-card:hover .document-tool-arrow{transform:translateX(3px)}
.document-tools-home.dragging{outline:3px solid #4969df40;outline-offset:8px;border-radius:12px}
.document-image-workspace{margin-top:8px}.document-image-workspace[hidden],#documentToolsHome[hidden]{display:none!important}
.pdf-special-workspace{margin-top:8px;padding:clamp(20px,3vw,36px);border:1px solid #e3e6ee;border-radius:24px;background:linear-gradient(145deg,#fff,#f8f9fc);box-shadow:0 18px 54px #27334d0b}
.pdf-special-workspace.json-csv-workspace{border:0;background:transparent;box-shadow:none}
.pdf-special-workspace[hidden]{display:none!important}.pdf-special-heading{margin:22px 0 24px}.pdf-special-heading h2{margin:6px 0;font-size:clamp(28px,3vw,42px);letter-spacing:-.04em}.pdf-special-heading>p:last-child{max-width:760px;color:#788194;line-height:1.75}
.pdf-compare-inputs,.pdf-markdown-controls{display:flex;align-items:stretch;gap:14px;flex-wrap:wrap}.pdf-file-picker{position:relative;display:flex;flex:1 1 260px;min-height:82px;flex-direction:column;justify-content:center;gap:6px;padding:14px 18px;border:1px dashed #cbd2e2;border-radius:16px;background:#fff;cursor:pointer}.pdf-file-picker strong{font-size:14px;color:#252a36}.pdf-file-picker span{color:#858da0;font-size:13px}.pdf-file-picker input{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer}.pdf-compare-inputs>.primary-btn,.pdf-markdown-controls>.primary-btn,.pdf-markdown-controls>.ghost-btn{align-self:center;min-height:48px}
.pdf-special-status{min-height:25px;margin:16px 0;color:#65718a;font-size:14px}.pdf-special-status.is-error{color:#c33d4d}.pdf-compare-results{margin-top:20px}.pdf-compare-results[hidden]{display:none}.pdf-compare-toolbar{display:flex;align-items:center;justify-content:center;gap:14px;flex-wrap:wrap;margin:18px 0}.pdf-compare-toolbar>span{color:#778196;font-size:13px}.pdf-compare-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;align-items:start}.pdf-compare-grid figure{min-width:0;margin:0;padding:12px;border:1px solid #e3e6ee;border-radius:16px;background:#fff}.pdf-compare-grid figcaption{margin:0 0 10px;color:#58637b;font-size:13px;font-weight:650}.pdf-compare-grid canvas{display:block;width:100%;height:auto;max-height:78vh;object-fit:contain;background:#f0f1f4;border-radius:8px}.pdf-special-note{margin:14px 0 0;color:#8b92a1;font-size:12px;line-height:1.7}.pdf-markdown-preview-label{display:block;margin:20px 0 8px;font-size:13px;font-weight:650;color:#58637b}.pdf-markdown-preview{display:block;width:100%;min-height:360px;padding:18px;border:1px solid #e0e4ed;border-radius:14px;background:#fff;color:#30394c;font:13px/1.75 ui-monospace,SFMono-Regular,Menlo,monospace;resize:vertical}
.pdf-inline-tool-link{color:var(--brand,#4b63dc);font-weight:650;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.pdf-inline-tool-link:hover{color:#334bc8}
.html-pdf-form{max-width:880px}.html-pdf-form>label{display:block;margin-bottom:8px;font-size:13px;font-weight:650;color:#58637b}.html-pdf-form>div{display:flex;gap:12px}.html-pdf-form input{min-width:0;flex:1;padding:0 16px;border:1px solid #dce1eb;border-radius:12px;background:#fff;color:#263044;font:inherit;outline:none}.html-pdf-form input:focus{border-color:#697be1;box-shadow:0 0 0 4px #536be51a}.html-pdf-form .primary-btn{min-height:50px;white-space:nowrap}
body:has(#panel-tools.active) .asset-shelf{display:none}
body:has(#panel-tools.active) .workspace{padding-left:clamp(18px,5vw,84px)!important}
.document-back-button{display:inline-flex;align-items:center;gap:8px;margin:0 0 20px;padding:0;border:0;background:transparent;color:#3554c4;font:600 14px var(--font);cursor:pointer}
.document-back-button:hover{text-decoration:underline}
.file-convert-heading .document-back-button{margin-bottom:14px}
.file-convert-panel[hidden]{display:none!important}
.file-convert-panel .file-convert-directions{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1020px){.document-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.file-convert-panel .file-convert-directions{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.document-tool-grid{grid-template-columns:1fr;gap:12px}.document-tool-card{min-height:130px;padding:19px 17px;grid-template-columns:46px minmax(0,1fr) 14px;gap:12px}.document-tool-card .nav-tool-icon{width:46px;height:48px;font-size:18px}.document-tool-icon{width:46px;height:48px;font-size:22px}.document-tool-copy strong{font-size:16px}.document-tool-copy small{font-size:12px}.file-convert-panel .file-convert-directions{grid-template-columns:1fr}}
@media(max-width:820px){.pdf-compare-grid{grid-template-columns:1fr}.pdf-compare-grid canvas{max-height:64vh}.pdf-special-workspace{padding:19px;border-radius:18px}}
@media(max-width:620px){.html-pdf-form>div{align-items:stretch;flex-direction:column}.html-pdf-form input{min-height:48px}}
.image-tools-back{display:inline-flex;align-items:center;gap:8px;margin:0 0 16px;padding:0;border:0;background:transparent;color:#3554c4;font:600 14px var(--font);cursor:pointer}
.image-tools-back:hover{text-decoration:underline}
.image-tool-mode-proxy[hidden]{display:none!important}
.utility-tabs[hidden]{display:none!important}
.image-tool-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:1020px){.image-tool-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.image-tool-grid{grid-template-columns:1fr}}

/* Document conversion becomes a file gallery with one preview per uploaded document. */
.file-convert-panel:not(.has-files) .file-convert-workspace{display:none}
.file-convert-panel.has-files .file-convert-directions{display:none}
.file-convert-panel.has-files .file-convert-dropzone{min-height:76px;padding:12px 16px;grid-template-columns:42px minmax(0,1fr) auto}
.file-convert-panel.has-files .file-convert-drop-icon{width:38px;height:44px}
.file-convert-panel.has-files .file-convert-drop-copy strong{font-size:13px}
.file-convert-panel.has-files .file-convert-drop-copy span{margin-top:3px;font-size:11px}
.file-convert-panel.has-files .file-convert-dropzone .primary-btn{padding:9px 12px}
.file-convert-workspace{grid-template-columns:minmax(280px,350px) minmax(0,1fr);gap:16px;align-items:start}
.file-convert-list-wrap,.file-convert-preview-wrap,.file-convert-info{border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.file-convert-list-wrap{position:sticky;top:14px;overflow:hidden}
.file-convert-list{height:min(62vh,660px);min-height:250px;max-height:none;overflow:auto;padding:10px;column-width:140px;column-gap:10px;column-fill:balance}
.file-convert-item{display:inline-flex;position:relative;vertical-align:top;width:100%;margin:0 0 10px;padding:8px;break-inside:avoid;flex-direction:column;align-items:stretch;gap:8px;border:1px solid var(--line);border-radius:11px;background:var(--surface);text-align:left}
.file-convert-item+.file-convert-item{border-top:1px solid var(--line)}
.file-convert-item:hover,.file-convert-item.active{border-color:var(--lime);background:#4969df08}
.file-convert-item-preview{display:flex;width:100%;min-width:0;align-items:flex-start;gap:9px;padding:0;border:0;background:transparent;text-align:left;color:inherit}
.file-convert-file-icon{flex:0 0 38px;width:38px;height:44px;border-color:var(--line);background:var(--surface-2);color:var(--lime);font-size:8px}
.file-convert-file-copy strong,.file-convert-file-copy span{white-space:normal;overflow-wrap:anywhere}
.file-convert-file-copy strong{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;line-height:1.35}
.file-convert-file-copy span{font-size:10px;line-height:1.45}
.file-convert-item-remove{position:absolute;right:4px;top:4px;width:24px;height:24px;border-radius:50%;background:var(--surface);box-shadow:0 1px 4px #0001}
.file-convert-preview-column{display:grid;min-width:0;gap:14px}
.file-convert-preview-wrap{min-width:0;overflow:hidden}
.file-convert-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:54px;padding:11px 15px;border-bottom:1px solid var(--line)}
.file-convert-preview-head>div{display:flex;min-width:0;align-items:baseline;gap:10px}
.file-convert-preview-head strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.file-convert-preview-head span{flex:0 0 auto;color:var(--muted);font-size:11px}
.file-convert-preview{height:min(70vh,820px);min-height:360px;overflow:auto;padding:22px;background:#f0f2f5}
.file-convert-preview-empty{min-height:280px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:9px;color:var(--muted);text-align:center}
.file-convert-preview-empty>span{font-size:32px;color:#9aa3b2}
.file-convert-preview-empty strong{font-size:14px;color:var(--text)}
.file-convert-preview-empty small{font-size:11px}
.file-convert-preview-page-wrap{width:max-content;max-width:100%;margin:0 auto 18px;padding:10px;background:#fff;box-shadow:0 3px 16px #1d29391a}
.file-convert-preview-page{display:block;width:100%;height:auto}
.file-convert-preview-page.excel-rendered-page{width:auto;max-width:none}
.file-convert-preview-docx{min-height:100%;display:flex;align-items:flex-start;flex-direction:column;gap:18px}
.file-convert-preview-docx .docx-wrapper{width:100%;padding:0;background:transparent}
.file-convert-preview-docx .docx{margin:0 auto 16px;box-shadow:0 3px 16px #1d29391a}
.file-convert-preview-sheet{margin:0 0 22px;padding:16px;border:1px solid var(--line);border-radius:10px;background:#fff}
.file-convert-preview-sheet h3{margin:0 0 12px;font-size:13px;color:#252a32}
.file-convert-preview-sheet small{display:block;margin-top:9px;color:#6b7280}
.file-convert-preview-table{width:100%;border-collapse:collapse;font-size:11px;color:#252a32}
.file-convert-preview-table th,.file-convert-preview-table td{min-width:70px;max-width:260px;padding:7px 9px;border:1px solid #d9dee8;white-space:pre-wrap;overflow-wrap:anywhere;text-align:left;vertical-align:top}
.file-convert-preview-table th{background:#f2f4f8;font-weight:700}
.file-convert-info{padding:16px}
@media(max-width:900px){.file-convert-workspace{grid-template-columns:minmax(0,1fr)}.file-convert-list-wrap{position:static}.file-convert-list{height:auto;max-height:250px;min-height:0;column-width:150px}.file-convert-preview{height:58vh;min-height:300px}.file-convert-info{order:initial}}
@media(max-width:620px){.file-convert-panel.has-files .file-convert-dropzone{grid-template-columns:42px minmax(0,1fr)}.file-convert-panel.has-files .file-convert-dropzone .primary-btn{grid-column:1/-1;width:100%;justify-content:center}.file-convert-list{max-height:220px;column-width:130px}.file-convert-preview-head{align-items:flex-start;flex-direction:column}.file-convert-preview-head>div{display:block;width:100%}.file-convert-preview-head span{display:block;margin-top:4px}.file-convert-preview{height:55vh;padding:12px}}

/* Match the requested document workspace: masonry on the left, expanded tools on the right. */
#panel-tools>.utility-heading[hidden]{display:none!important}
#panel-tools:has(#documentImageWorkspace:not([hidden]))>.utility-heading{display:none!important}
.drop-art .drop-file{border-color:#3554c4;background:linear-gradient(155deg,#7290f0 0%,#4969df 64%,#3554c4 100%);box-shadow:0 16px 30px #243c9c30,inset 0 1px 0 #ffffff35}
.drop-art .drop-file:before{background:linear-gradient(115deg,#ffffff32,transparent 40%,#1d358c24)}
.drop-art .drop-file span,.drop-art .drop-file span:nth-child(n){border-color:#a9baf7;background:#2f4ec9;color:#fff;box-shadow:0 5px 12px #243c9c30}
.hero-dropzone:hover .drop-art .drop-file{border-color:#2947c4;box-shadow:0 20px 36px #243c9c45,inset 0 1px 0 #ffffff45}
.file-convert-heading{padding-bottom:12px}
.file-convert-heading h2{font-size:22px}
.file-convert-heading p:not(.eyebrow){font-size:12px}
.file-convert-panel:not(.has-files) .file-convert-workspace{display:grid}
.file-convert-workspace{grid-template-columns:minmax(0,1.45fr) minmax(360px,.85fr);gap:18px;align-items:start}
.file-convert-list-wrap{position:static;overflow:hidden}
.file-convert-list-head{padding:14px 16px}
.file-convert-list-actions{display:flex;align-items:center;gap:14px}
.file-convert-list-actions .primary-btn.small{padding:8px 12px}
.file-convert-list{height:min(72vh,850px);min-height:400px;max-height:none;padding:14px;column-width:190px;column-gap:14px;column-fill:balance}
.file-convert-item{padding:12px;gap:10px;border-radius:12px;box-shadow:0 2px 8px #1d293908}
.file-convert-item-preview{gap:11px;min-height:58px;align-items:center}
.file-convert-file-icon{flex-basis:42px;width:42px;height:50px;border-radius:9px;background:#edf2ff;color:#4969df;font-size:9px}
.file-convert-item-remove{right:6px;top:6px}
.file-convert-controls{display:grid;gap:14px;min-width:0}
.file-convert-control-section,.file-convert-preview-wrap,.file-convert-info{min-width:0;padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.file-convert-control-section h3,.file-convert-info h3{margin:0 0 13px;font-size:14px}
.file-convert-panel .file-convert-directions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.file-convert-panel .file-convert-direction{grid-template-columns:max-content 20px max-content;min-height:112px;padding:12px;border-radius:11px;background:#fff}
.file-convert-panel .file-convert-direction.active,.file-convert-panel .file-convert-direction[aria-pressed="true"]{border-color:#4969df;background:#f3f6ff;box-shadow:inset 0 0 0 1px #4969df18}
.file-convert-panel .file-convert-direction:hover{border-color:#4969df;background:#f8faff}
.file-convert-panel .file-convert-direction strong{margin-top:3px;font-size:12px}
.file-convert-panel .file-convert-direction small{font-size:10px}
.file-convert-panel .file-type-badge{min-width:44px;height:26px;border-color:#d7dce5;color:#49515e}
.file-convert-panel .file-type-badge.target{border-color:#4969df55;color:#3554c4;background:#4969df0d}
.file-convert-panel .file-convert-arrow{font-size:15px}
.file-convert-preview-wrap{padding:0}
.file-convert-preview{height:min(38vh,430px);min-height:220px;padding:16px;background:#f0f2f5}
.file-convert-preview-empty{min-height:180px}
.file-convert-info{padding:15px}
.file-convert-info ul{color:#5f6875;font-size:11px}
.file-convert-info li+li{margin-top:3px}
.file-convert-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:12px;border:1px solid var(--line);border-radius:14px;background:var(--surface)}
.file-convert-actions>span{grid-column:1/-1;margin:0 0 2px}
.file-convert-actions button{width:100%;justify-content:center;padding-inline:10px}
.file-convert-panel.has-files .file-convert-directions{display:grid}
.file-convert-panel.has-files .file-convert-dropzone{min-height:62px;padding:9px 12px;grid-template-columns:32px minmax(0,1fr);gap:10px}
.file-convert-panel.has-files .file-convert-drop-icon{width:30px;height:36px}
.file-convert-panel.has-files .file-convert-drop-icon:before{width:16px;height:20px}
.file-convert-panel.has-files .file-convert-drop-icon:after{width:16px;height:16px;font-size:12px}
.file-convert-panel.has-files .file-convert-drop-copy strong{font-size:11px}
.file-convert-panel.has-files .file-convert-drop-copy span{font-size:10px}
@media(max-width:1020px){.file-convert-workspace{grid-template-columns:minmax(0,1fr)}.file-convert-list{height:auto;max-height:410px;min-height:220px;column-width:190px}.file-convert-preview{height:46vh}}
@media(max-width:620px){.file-convert-workspace{gap:12px}.file-convert-list{max-height:340px;column-width:145px;padding:9px;column-gap:9px}.file-convert-item{padding:9px}.file-convert-control-section,.file-convert-info{padding:12px}.file-convert-panel .file-convert-direction{min-height:102px;padding:9px}.file-convert-panel .file-type-badge{min-width:36px;height:23px;padding-inline:5px;font-size:9px}.file-convert-preview{height:42vh;padding:10px}}

/* Document gallery: only the operation column is a panel; each file previews its first page. */
.file-convert-list-wrap{border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;padding:0!important}
.file-convert-controls{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:0 2px 8px #1d293908}
.file-convert-control-section,.file-convert-info,.file-convert-actions{padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.file-convert-info{padding-top:14px;border-top:1px solid var(--line)}
.file-convert-actions{padding-top:14px;border-top:1px solid var(--line)}
.file-convert-list-head{padding:8px 0 12px!important}
.file-convert-list{height:min(72vh,850px);padding:0 4px 12px 0;column-width:220px;column-gap:14px;column-fill:balance}
.file-convert-item{display:inline-flex;position:relative;width:100%;margin:0 0 14px;padding:10px;gap:7px;flex-direction:column;align-items:stretch;break-inside:avoid;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 2px 8px #1d293908}
.file-convert-item+.file-convert-item{border-top:1px solid var(--line)}
.file-convert-item:hover,.file-convert-item.active{border-color:#4969df;background:var(--surface)}
.file-convert-thumb-button{display:block;width:100%;padding:0;overflow:hidden;border:0;border-radius:7px;background:#eef0f4;cursor:zoom-in}
.file-convert-thumb{display:block;width:100%;height:auto;max-height:340px;object-fit:contain;object-position:top center;background:#f1f2f5}
.file-convert-name-row{display:flex;min-width:0;align-items:center;gap:5px;padding-right:24px}
.file-convert-name-text{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px;font-weight:600;color:var(--text);cursor:text}
.file-convert-rename{flex:none;width:21px;height:21px;padding:0;border:0;background:transparent;color:var(--muted);font-size:14px;cursor:pointer}
.file-convert-rename:hover{color:#3554c4}.file-convert-rename[hidden]{display:none}
.file-convert-name-input{width:100%;min-width:0;height:29px;padding:3px 6px;border:1px solid #4969df;border-radius:5px;font:inherit;font-size:12px}
.file-convert-file-size,.file-convert-item-status{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:10px;color:var(--muted)}
.file-convert-item-remove{right:14px;top:auto;bottom:42px;z-index:1}
.file-convert-panel .file-convert-direction[hidden]{display:none!important}
.file-convert-preview-dialog{width:min(1080px,calc(100vw - 36px));max-width:none;max-height:calc(100dvh - 36px);padding:0;overflow:hidden;border:1px solid var(--line);border-radius:16px;background:var(--surface);color:var(--text);box-shadow:0 22px 75px #11182745}
.file-convert-preview-dialog::backdrop{background:#11182788;backdrop-filter:blur(2px)}
.file-convert-preview-dialog .file-convert-preview-head{min-height:58px;padding:12px 16px;border-bottom:1px solid var(--line)}
.file-convert-preview-dialog .file-convert-preview-head>div{min-width:0;display:flex;align-items:baseline;gap:12px}
.file-convert-preview-dialog .file-convert-preview-head strong{max-width:min(65vw,680px)}
.file-convert-preview-close{flex:none;width:34px;height:34px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);font-size:23px;line-height:1;cursor:pointer}
.file-convert-preview-dialog .file-convert-preview{height:min(78dvh,900px);min-height:260px}
.file-convert-thumbnail-stage{position:fixed;left:-12000px;top:0;width:794px;min-height:1123px;overflow:visible;background:#fff;pointer-events:none;z-index:-1}
.file-convert-thumbnail-stage .docx-wrapper{background:#fff!important;padding:0!important}.file-convert-thumbnail-stage .docx{margin:0!important;box-shadow:none!important}
@media(max-width:1020px){.file-convert-list{height:auto;max-height:440px;min-height:180px;column-width:190px}.file-convert-preview-dialog .file-convert-preview{height:72dvh}}
@media(max-width:620px){.file-convert-workspace{gap:14px}.file-convert-list{max-height:380px;column-width:145px;column-gap:9px}.file-convert-item{padding:8px;margin-bottom:9px}.file-convert-thumb{max-height:240px}.file-convert-item-remove{right:11px;bottom:38px}.file-convert-preview-dialog{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);border-radius:12px}.file-convert-preview-dialog .file-convert-preview-head{align-items:center;flex-direction:row}.file-convert-preview-dialog .file-convert-preview-head>div{display:flex}.file-convert-preview-dialog .file-convert-preview-head span{display:none}.file-convert-preview-dialog .file-convert-preview{height:78dvh;padding:10px}}

/* PDF compression workspace and a same-size add-file tile in the document gallery. */
.file-convert-list{align-items:stretch!important}
.file-convert-item,.file-convert-panel.has-files #fileConvertDropzone.file-convert-add-card{box-sizing:border-box;height:clamp(300px,28vw,380px);min-height:0}
.file-convert-item{overflow:hidden}
.file-convert-thumb-wrap{display:grid;min-height:0;flex:1 1 auto;place-items:center}
.file-convert-thumb{width:100%;height:100%;max-height:none;object-fit:contain}
.file-convert-panel.has-files #fileConvertDropzone.file-convert-add-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;margin:0;padding:22px;border:1px dashed #4969df88;border-radius:12px;background:#f5f7ff;box-shadow:0 2px 8px #1d293908;text-align:center}
.file-convert-panel.has-files #fileConvertDropzone.file-convert-add-card:hover,.file-convert-panel.has-files #fileConvertDropzone.file-convert-add-card.dragging{border-color:#4969df;background:#eef2ff;box-shadow:inset 0 0 0 1px #4969df25}
.file-convert-panel.has-files #fileConvertDropzone.file-convert-add-card .file-convert-drop-icon{width:56px;height:62px;border-color:#b9c7ff;border-radius:15px;background:#e9eeff;color:#4969df}
.file-convert-panel.has-files #fileConvertDropzone.file-convert-add-card .file-convert-drop-icon:after{background:#4969df;color:#fff;box-shadow:0 3px 9px #4969df30}
.file-convert-panel.has-files #fileConvertDropzone.file-convert-add-card .file-convert-drop-icon:before{content:"+";width:auto;height:auto;border:0;border-radius:0;color:#4969df;font:500 42px/1 Arial,sans-serif}
.file-convert-panel.has-files #fileConvertDropzone.file-convert-add-card .file-convert-drop-icon:after{display:none}
.file-convert-panel.has-files #fileConvertDropzone.file-convert-add-card .file-convert-drop-copy strong{font-size:15px;line-height:1.5}
.file-convert-panel.has-files #fileConvertDropzone.file-convert-add-card .file-convert-drop-copy span{font-size:11px;line-height:1.5}
.file-convert-panel.has-files #fileConvertDropzone.file-convert-add-card .file-convert-drop-copy{display:grid;gap:6px}
.file-convert-compression-panel{display:grid;gap:14px}
.file-convert-compression-panel[hidden]{display:none!important}
.file-convert-compression-panel h3{display:flex;align-items:center;gap:9px;margin:0;font-size:14px;font-weight:700;letter-spacing:normal}
.file-convert-compression-mark{display:block;width:28px;height:28px;flex:none;object-fit:contain}
.file-convert-compression-levels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.file-convert-compression-level{position:relative;min-height:58px;display:grid;place-items:center;padding:8px 6px;border:1px solid #dfe3eb;border-radius:10px;background:#fff;color:#202631;text-align:center;cursor:pointer;transition:border-color .16s,background .16s,box-shadow .16s}
.file-convert-compression-level input{position:absolute;width:1px;height:1px;opacity:0}
.file-convert-compression-level:has(input:checked){border:1.5px solid #4969df;background:#f2f5ff;box-shadow:0 0 0 1px #4969df18}
.file-convert-compression-level:focus-within{outline:2px solid #4969df;outline-offset:2px}
.file-convert-compression-level span,.file-convert-compression-level strong,.file-convert-compression-level small{display:block}
.file-convert-compression-level strong{font-size:12px;font-weight:700}
.file-convert-compression-level small{margin-top:3px;color:#737c8b;font-size:10px;line-height:1.35}
.file-convert-compression-level-hint{margin:-5px 0 0;color:#737c8b;font-size:11px;line-height:1.5}
.file-convert-compression-result{display:grid;gap:10px;padding:13px;border-radius:10px;background:#e5f8ed;color:#202631}
.file-convert-compression-result>strong{font-size:12px;font-weight:700}
.file-convert-compression-sizes{display:grid;gap:7px;font-size:11px}
.file-convert-compression-sizes span{display:flex;justify-content:space-between;gap:12px;color:#5e6978}
.file-convert-compression-sizes b{color:#202631;text-align:right}
.file-convert-compression-track{height:6px;overflow:hidden;border-radius:99px;background:#a8e8c1}
.file-convert-compression-track i{display:block;width:0;height:100%;border-radius:inherit;background:#16bf5b;transition:width 240ms ease}
.file-convert-compression-result p{margin:0;color:#657368;font-size:11px;line-height:1.55}
.file-convert-controls:has(.file-convert-compression-panel:not([hidden])) #fileConvertStart{min-height:42px;padding:11px 10px;border:1px solid #4969df;border-radius:12px;background:#4969df;color:#fff;font-size:12px;font-weight:700;line-height:1.2}
.file-convert-controls:has(.file-convert-compression-panel:not([hidden])) #fileConvertDownload{min-height:42px;font-size:12px;font-weight:700;line-height:1.2}
.file-convert-controls:has(.file-convert-compression-panel:not([hidden])) #fileConvertStart:hover{background:#004fe0}
@media(max-width:620px){.file-convert-item,.file-convert-panel.has-files #fileConvertDropzone.file-convert-add-card{height:clamp(280px,92vw,340px)}.file-convert-panel.has-files #fileConvertDropzone.file-convert-add-card{padding:14px;gap:12px}.file-convert-compression-levels{gap:5px}.file-convert-compression-level{min-height:54px;padding:7px 3px}.file-convert-compression-level strong{font-size:11px}.file-convert-compression-level small{font-size:9px}}

/* Keep the upload target separate from a wrapping, scrollable document grid. */
.file-convert-panel.has-files .file-convert-dropzone{margin-bottom:18px}
.file-convert-list-wrap{overflow:visible!important}
.file-convert-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,190px),1fr));align-content:start;align-items:start;gap:14px;height:auto;min-height:0;max-height:min(72vh,850px);overflow-x:hidden;overflow-y:auto;padding:0 5px 12px 0;column-width:auto;column-gap:0;column-fill:initial}
.file-convert-list{column-gap:14px;row-gap:18px}
.file-convert-item{display:flex;position:relative;width:auto;min-width:0;margin:0;padding:10px;gap:7px;flex-direction:column;align-items:stretch;align-self:start;break-inside:auto}
.file-convert-item+.file-convert-item{border-top:0}
.file-convert-item{cursor:pointer}
.file-convert-thumb-wrap{position:relative;width:100%;overflow:hidden;border-radius:7px;background:#eef0f4}
.file-convert-thumb{width:100%;max-height:340px;object-fit:contain;object-position:top center}
.file-convert-preview-trigger,.file-convert-item-remove{position:absolute;z-index:2;display:grid;place-items:center;width:32px;height:32px;padding:0;border:1px solid #dce2ee;border-radius:50%;background:#fff;color:#344054;box-shadow:0 2px 8px #11182720;cursor:pointer}
.file-convert-preview-trigger{top:8px;left:8px;font-size:17px}
.file-convert-preview-trigger{display:inline-flex;width:auto;min-width:64px;height:34px;padding:0 12px;border-radius:9px;font-size:13px;font-weight:600}
.file-convert-item-remove{top:8px;right:8px;bottom:auto;font-size:22px;line-height:1}
.file-convert-preview-trigger:hover,.file-convert-item-remove:hover{border-color:#4969df;background:#f5f7ff;color:#3554c4}
.file-convert-preview-trigger[aria-pressed="true"]{background:#4969df;border-color:#4969df;color:#fff}
.file-convert-preview-trigger:disabled,.file-convert-item-remove:disabled{opacity:.55;cursor:not-allowed}
.file-convert-preview-trigger,.file-convert-preview-trigger[aria-pressed="true"]{border-color:#4969df;background:#4969df;color:#fff}
.file-convert-preview-trigger:hover,.file-convert-preview-trigger[aria-pressed="true"]:hover{border-color:#3554c4;background:#3554c4;color:#fff}
.file-convert-name-row{padding-right:0}
.file-convert-preview-dialog{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;overflow:hidden;border:0;border-radius:0;box-shadow:none}
.file-convert-preview-dialog .file-convert-preview-head{min-height:58px}
.file-convert-preview-dialog .file-convert-preview{height:calc(100dvh - 58px);min-height:0;max-height:none}
.file-convert-preview-dialog .file-convert-preview-head{gap:10px}
.file-convert-preview-tools{display:flex;flex:none;align-items:center;gap:5px;margin-left:auto}
.file-convert-preview-tools[hidden]{display:none!important}
.file-convert-preview-tools button{min-width:32px;height:32px;padding:0 9px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font:inherit;cursor:pointer}
.file-convert-preview-tools button:hover{border-color:#4969df;color:#3554c4}
.file-convert-preview-tools output{min-width:48px;text-align:center;font-size:12px;color:var(--muted)}
@media(max-width:1020px){.file-convert-list{height:auto;min-height:0;max-height:440px;grid-template-columns:repeat(auto-fill,minmax(min(100%,170px),1fr));column-width:auto}.file-convert-preview-dialog .file-convert-preview{height:calc(100dvh - 58px)}}
@media(max-width:620px){.file-convert-list{max-height:380px;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;padding-right:0}.file-convert-item{margin:0;padding:8px}.file-convert-thumb{max-height:240px}.file-convert-item-remove{right:8px;top:8px;bottom:auto}.file-convert-preview-dialog{width:100vw;max-height:none;border-radius:0}.file-convert-preview-dialog .file-convert-preview-head{align-items:center;flex-direction:row}.file-convert-preview-dialog .file-convert-preview-head>div{display:flex}.file-convert-preview-dialog .file-convert-preview-head span{display:none}.file-convert-preview-dialog .file-convert-preview{height:calc(100dvh - 58px);padding:10px}}

/* Office file format colors stay consistent in direction badges and the primary action. */
.file-convert-panel .file-type-badge.format-pdf{border-color:#e5322d55;color:#d92d27;background:#fff1f0}
.file-convert-panel .file-type-badge.format-word{border-color:#2b579a55;color:#2b579a;background:#eef4fc}
.file-convert-panel .file-type-badge.format-excel{border-color:#21734655;color:#217346;background:#edf7f0}
.file-convert-panel .file-type-badge.format-ppt{border-color:#d2472655;color:#c43c20;background:#fff1ec}
.file-convert-panel .file-convert-direction.active[data-output-format="pdf"]{border-color:#e5322d;background:#fff5f4;box-shadow:inset 0 0 0 1px #e5322d18}
.file-convert-panel .file-convert-direction.active[data-output-format="word"]{border-color:#2b579a;background:#f3f7fc;box-shadow:inset 0 0 0 1px #2b579a18}
.file-convert-panel .file-convert-direction.active[data-output-format="excel"]{border-color:#217346;background:#f2f8f4;box-shadow:inset 0 0 0 1px #21734618}
.file-convert-panel .file-convert-direction.active[data-output-format="ppt"]{border-color:#d24726;background:#fff6f2;box-shadow:inset 0 0 0 1px #d2472618}
#fileConvertStart[data-output-format="pdf"]{background:#e5322d;border-color:#e5322d;box-shadow:0 5px 16px #e5322d25}
#fileConvertStart[data-output-format="word"]{background:#2b579a;border-color:#2b579a;box-shadow:0 5px 16px #2b579a25}
#fileConvertStart[data-output-format="excel"]{background:#217346;border-color:#217346;box-shadow:0 5px 16px #21734625}
#fileConvertStart[data-output-format="ppt"]{background:#d24726;border-color:#d24726;box-shadow:0 5px 16px #d2472625}
#fileConvertStart[data-output-format="pdf"]:not(:disabled):hover{background:#c92722;border-color:#c92722}
#fileConvertStart[data-output-format="word"]:not(:disabled):hover{background:#21477e;border-color:#21477e}
#fileConvertStart[data-output-format="excel"]:not(:disabled):hover{background:#195b37;border-color:#195b37}
#fileConvertStart[data-output-format="ppt"]:not(:disabled):hover{background:#b9391d;border-color:#b9391d}
.file-convert-watermark-settings label{display:block;margin:12px 0 6px;color:var(--muted);font-size:12px}
.file-convert-watermark-settings input[type="text"]{width:100%;height:40px;padding:8px 10px;border:1px solid #d5dae2;border-radius:8px;background:#fff;color:var(--text)}
.file-convert-watermark-settings input[type="range"]{width:100%;accent-color:#e5322d}
.file-convert-watermark-settings[hidden]{display:none!important}
.pdf-watermark-options{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px 10px}
.pdf-watermark-options>.resize-watermark-type-row,.pdf-watermark-options>.resize-watermark-text-fields,.pdf-watermark-options>.resize-watermark-logo-fields,.pdf-watermark-options>.resize-watermark-pair-row{grid-column:1/-1}
.pdf-watermark-options .resize-watermark-type-row{justify-items:center}
.pdf-watermark-options .resize-watermark-text-fields{grid-template-columns:minmax(0,1fr);margin:0}
.pdf-watermark-options .resize-watermark-text-settings-row{align-items:end}
.pdf-watermark-options .resize-watermark-control,.pdf-watermark-options .resize-watermark-text-input,.pdf-watermark-options .resize-watermark-range-field{display:grid;gap:4px;min-width:0;margin:0;color:var(--muted);font-size:11px}
.pdf-watermark-options .resize-watermark-control select,.pdf-watermark-options .resize-watermark-text-input input{box-sizing:border-box;width:100%;min-width:0;height:32px;padding:5px 8px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text);font-size:12px}
.pdf-watermark-options .resize-watermark-control input[type=color]{box-sizing:border-box;width:100%;height:32px;padding:3px;border:1px solid var(--line);border-radius:8px;background:#fff}
.pdf-watermark-options .resize-watermark-range-field{grid-template-columns:minmax(0,1fr) auto;align-items:center}
.pdf-watermark-options .resize-watermark-range-field input[type=range]{grid-column:1/-1;width:100%;margin:0;accent-color:var(--brand-blue)}
.pdf-watermark-options .resize-watermark-range-field output{margin-left:auto;color:var(--muted);font-size:10px}
.pdf-watermark-options .resize-watermark-logo-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;min-width:0;margin:0}
.pdf-watermark-options .resize-watermark-logo-upload-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.pdf-watermark-options .resize-watermark-logo-upload-row>span{min-width:0;overflow-wrap:anywhere;color:var(--muted);font-size:10px}
.pdf-watermark-options #fileConvertWatermarkLogoTileSlot .resize-watermark-control{width:100%}
.file-convert-preview-page-wrap{position:relative}
.file-convert-preview-watermark{position:absolute;z-index:1;pointer-events:none}

/* Keep the document card actions neutral and evenly inset. */
.file-convert-preview-trigger,.file-convert-preview-trigger[aria-pressed="true"]{top:10px;left:10px;display:flex;align-items:center;justify-content:center;min-width:64px;height:34px;padding:0 12px;border-color:#d6dbe5;border-radius:9px;background:#fff;color:#344054;text-align:center}

/* Compression outputs PDF, but its action button uses the Imager theme color. */
.file-convert-controls:has(.file-convert-compression-panel:not([hidden])) #fileConvertStart[data-output-format="pdf"]{border-color:#4969df;background:#4969df;box-shadow:0 2px 4px #4969df26}
.file-convert-controls:has(.file-convert-compression-panel:not([hidden])) #fileConvertStart[data-output-format="pdf"]:not(:disabled):hover{border-color:#3554c4;background:#3554c4;box-shadow:0 2px 4px #4969df26}
.file-convert-preview-trigger:hover,.file-convert-preview-trigger[aria-pressed="true"]:hover{border-color:#4969df;background:#f3f6ff;color:#3554c4}
.file-convert-item-remove{top:10px;right:10px}
.file-convert-list{column-gap:16px;row-gap:18px;padding:2px 5px 12px 2px}
.file-convert-item+.file-convert-item{border-top:0}
.file-convert-item.active{outline:2px solid #4969df;outline-offset:0}
.file-convert-name-text{display:-webkit-box;flex:1;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.35;white-space:normal;overflow:hidden;overflow-wrap:anywhere;text-overflow:clip}
.file-convert-item-remove{top:10px;right:10px;bottom:auto;display:grid;width:60px;height:60px;padding:0;place-items:center;border:2px solid #d8deea;border-radius:15px;background:#fff;color:#344054;font-size:22px;line-height:1;box-shadow:0 2px 10px #11182716}
.file-convert-item-remove:hover{border-color:#c6d0e1;background:#fff;color:#273449}
.file-convert-preview-trigger,.file-convert-preview-trigger[aria-pressed="true"]{top:6px;left:6px;height:34px}
.file-convert-item-remove{top:6px;right:6px;width:34px;height:34px;border:1px solid #d6dbe5;border-radius:9px;font-size:19px;box-shadow:0 2px 8px #11182716}
.file-convert-name-input{flex:1;width:auto;min-width:0}
.file-convert-name-extension{flex:none;color:var(--muted);font-size:12px;font-weight:600;white-space:nowrap}
.file-convert-workspace{grid-template-columns:minmax(0,1.75fr) minmax(300px,.65fr);gap:14px}
.file-convert-panel .file-convert-control-section,.file-convert-panel .file-convert-info{padding:13px}
.file-convert-panel #fileConvertDirectionSection{padding-right:6px;padding-left:6px}
.file-convert-panel .file-convert-directions{gap:7px}
.file-convert-panel .file-convert-direction{display:flex;align-items:center;justify-content:center;min-width:0;min-height:48px;padding:8px 6px;gap:6px;border-radius:999px}
.file-convert-panel .file-type-badge{min-width:36px;height:22px;padding:0 6px;font-size:9px}
.file-convert-panel .file-convert-arrow{font-size:12px}
.file-convert-panel .file-convert-direction strong{min-width:0;margin:0;font-size:12px;line-height:1.3;text-align:left}
.file-convert-format-icon{flex:none;width:22px;height:26px;object-fit:contain}
.file-convert-panel .file-convert-direction:focus-visible{outline:2px solid var(--brand-blue);outline-offset:3px}
.file-convert-panel .file-convert-direction small{font-size:9px}
@media(max-width:1020px){.file-convert-workspace{grid-template-columns:minmax(0,1fr)}}

/* Let the file wall grow with its contents; keep conversion controls beside it. */
.file-convert-list{height:auto;min-height:0;max-height:none;overflow:visible}
.file-convert-controls{position:sticky;top:16px;align-self:start;max-height:calc(100vh - 32px);overflow-y:auto}
@media(max-width:1020px){.file-convert-controls{position:static;max-height:none;overflow:visible}}
.topbar .brand{color:inherit;text-decoration:none}
.topbar .brand:hover{color:inherit}
.topbar .brand{color:inherit;text-decoration:none}

/* Pricing and package selection */
.pricing-page{max-width:1440px;margin:0 auto;padding:clamp(22px,4vw,56px)}
.pricing-heading{max-width:820px;margin:0 auto 34px;text-align:center}
.pricing-heading .eyebrow{color:#4969df;font:600 12px/1.4 ui-monospace,monospace;letter-spacing:.14em}
.pricing-heading h1{margin:10px 0;font-size:clamp(30px,4vw,44px);letter-spacing:-.035em}
.pricing-heading>p:last-child{margin:0;color:var(--muted);font-size:15px}
.pricing-memberships,.pricing-comparison,.pricing-points{margin:28px 0 0}
.pricing-section-heading{display:flex;align-items:end;justify-content:space-between;gap:16px;margin-bottom:16px}
.pricing-section-heading h2{margin:0;font-size:22px}
.pricing-section-heading p{margin:5px 0 0;color:var(--muted);font-size:14px}
.pricing-section-heading>span{color:var(--muted);font-size:13px}
.membership-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:16px}
.membership-plan{position:relative;display:flex;min-width:0;flex-direction:column;padding:24px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 4px 18px #1d293908}
.membership-plan.featured{border:2px solid #4969df;background:linear-gradient(180deg,#f5f7ff,#fff 45%);box-shadow:0 10px 32px #4969df1c}
.plan-recommend{position:absolute;top:-12px;right:18px;padding:5px 11px;border-radius:999px;background:#4969df;color:white;font-size:12px;font-weight:700}
.plan-launch-badge{align-self:flex-start;margin-top:14px;padding:5px 10px;border:1px solid #ffc8c8;border-radius:999px;background:#fff1f1;color:#d93636;font-size:12px;font-weight:700;letter-spacing:.02em}
.plan-card-top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.plan-card-top h3{margin:0;font-size:19px}
.plan-card-top>span{color:var(--muted);font-size:13px}
.plan-price{display:flex;align-items:baseline;gap:8px;margin:14px 0 7px}
.plan-price del{color:#9299a8;font-size:16px;text-decoration-thickness:1.5px;text-underline-offset:3px}
.plan-price strong{color:#e53935;font-size:38px;line-height:1;letter-spacing:-.04em}
.plan-price span{color:var(--muted);font-size:14px}
.plan-daily{display:flex;align-items:baseline;gap:6px;margin:0;color:#9299a8;font-size:13px}
.plan-daily strong{font-size:13px;font-weight:600}
.plan-daily span{font-size:13px}
.plan-saving{min-height:22px;margin:17px 0 0;color:var(--muted);font-size:13px}
.plan-saving b{color:#e53935}
.plan-saving-secondary{margin-top:3px}
.plan-select{width:100%;min-height:44px;margin-top:auto;padding:10px 14px;border:1px solid #4969df;border-radius:10px;background:#4969df;color:#fff;font:inherit;font-weight:700;cursor:pointer;transition:background .15s,border-color .15s,box-shadow .15s}
.plan-select:hover{background:#3d59c8;box-shadow:0 4px 12px #4969df30}
.membership-plan .plan-select{margin-top:22px}
.membership-plan.featured .plan-select{background:#4969df}
.plan-select.selected{outline:3px solid #4969df35;outline-offset:2px}
.plan-select.secondary{min-height:36px;margin-top:12px;background:white;color:#344054;font-size:13px}
.plan-select.secondary:hover{border-color:#4969df;color:#3554c4;background:#f5f7ff}
.pricing-footnote{margin:14px 0 0;color:var(--muted);font-size:13px}
.pricing-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:14px;background:#fff}
.pricing-table{width:100%;border-collapse:collapse;text-align:left}
.pricing-table th,.pricing-table td{padding:15px 18px;border-bottom:1px solid var(--line);font-size:14px}
.pricing-table thead th{background:#f8f9fc;color:#596579;font-size:13px}
.pricing-table tbody tr:last-child th,.pricing-table tbody tr:last-child td{border-bottom:0}
.pricing-table tbody th{font-weight:600}
.pricing-table td{color:var(--muted)}
.pricing-table .member-column{background:#f5f7ff;color:#3554c4;font-weight:600}
.pricing-rights-table th:first-child{min-width:105px}.pricing-rights-table td{min-width:170px}
.pricing-selection{position:sticky;z-index:4;bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:30px 0 10px;padding:16px 20px;border:1px solid #dce2f4;border-radius:14px;background:#fff;box-shadow:0 8px 28px #1d293916}
.pricing-selection>div{display:grid;grid-template-columns:auto 1fr;align-items:baseline;gap:3px 12px}
.pricing-selection>div>span{grid-row:span 2;color:var(--muted);font-size:13px}
.pricing-selection strong{font-size:15px}.pricing-selection small{color:var(--muted);font-size:12px}
.pricing-selection>button{min-height:44px;padding:0 18px;border:0;border-radius:9px;background:#e7e9ed;color:#858b96;font:inherit;font-weight:700}
.pricing-payment-note{margin:10px 0;color:var(--muted);font-size:12px;text-align:center}
.pricing-payment-note:empty{display:none}

@media(max-width:680px){.pricing-page{padding:22px 16px}.membership-plan-grid{grid-template-columns:1fr}.membership-plan{padding:20px}.pricing-section-heading{align-items:start;flex-direction:column}.pricing-selection{align-items:stretch;flex-direction:column}.pricing-selection>button{width:100%}.pricing-table th,.pricing-table td{padding:12px 10px;font-size:12px}.pricing-rights-table{min-width:520px}}

.membership-plan.has-referral-discount .plan-price [data-current-price]{color:#d93636!important}
.pricing-referral-badge{padding:4px 7px;border:1px solid #ffcaca;border-radius:999px;background:#fff0f0;color:#d93636;font-size:10px;font-style:normal;font-weight:750;line-height:1.2;white-space:nowrap}
.membership-plan .plan-daily{justify-content:flex-start;gap:5px;margin:8px 0 0;padding:0;border:0;background:transparent;color:#9299a8;font-size:12px}
.membership-plan .plan-daily>span{font-size:12px}
.membership-plan .plan-daily strong{color:#778196;font-size:13px;font-weight:600;letter-spacing:0}

.file-convert-heading>div:first-child{display:flex;align-items:center;gap:10px}
.file-convert-heading .document-back-button{flex:none;margin:0;font-size:25px;line-height:1;text-decoration:none}
.file-convert-heading h2{margin:0}
.file-convert-item:hover{border-color:#4969df;outline:2px solid #4969df;outline-offset:0}

/* Keep the converter workspace on the page canvas; only its inner cards are surfaced. */
.file-convert-panel{background:transparent;border-color:transparent;box-shadow:none}

/* Give the uploaded document wall priority and keep converter choices compact. */
.file-convert-workspace{grid-template-columns:minmax(0,1fr) minmax(340px,360px);gap:18px}
.file-convert-list{max-height:min(78vh,1000px)}
.file-convert-heading .eyebrow,.file-convert-heading h2+p,.file-convert-heading .file-convert-local{display:none}
.file-convert-heading{padding-bottom:10px}
.file-convert-panel .file-convert-direction small{display:none}
.file-convert-info:not(.file-convert-watermark-settings){display:none}
.file-convert-drop-copy span{display:none}
#fileConvertDropHint{display:block!important;max-width:100%;overflow-wrap:anywhere}
.toast{max-width:min(560px,calc(100vw - 32px));white-space:normal;line-height:1.55;color:#fff}
.file-convert-panel.has-files .file-convert-dropzone{margin-bottom:12px}
@media(max-width:1020px){.file-convert-workspace{grid-template-columns:minmax(0,1fr)}}

.pdf-organizer-dialog{position:fixed;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;overflow:hidden;border:0;background:#f5f6f8;color:var(--text)}
.pdf-organizer-dialog[open]{display:flex;flex-direction:column}
.pdf-organizer-dialog::backdrop{background:#11182788;backdrop-filter:blur(2px)}
.pdf-organizer-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 26px;border-bottom:1px solid var(--line);background:#fff}
.pdf-organizer-head h2{margin:2px 0 5px;font-size:22px}.pdf-organizer-head p:not(.eyebrow){margin:0;color:var(--muted);font-size:13px}
.pdf-organizer-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 26px;background:#fff;border-bottom:1px solid var(--line);color:var(--muted);font-size:13px}
.pdf-organizer-toolbar>div{display:flex;align-items:center;gap:9px}
.pdf-organizer-drop{display:flex;min-height:74px;margin:18px 26px 12px;padding:14px;align-items:center;justify-content:center;flex-direction:column;gap:6px;border:1px dashed #b9c3d4;border-radius:12px;background:#fff;color:var(--text);text-align:center;cursor:pointer}
.pdf-organizer-drop span{color:var(--muted);font-size:12px}.pdf-organizer-drop.dragging{border-color:#4969df;background:#f3f6ff}
.pdf-organizer-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));align-content:start;align-items:start;flex:1;min-height:0;gap:16px;height:auto;padding:4px 26px 18px;overflow:auto}
.pdf-organizer-page{position:relative;min-width:0;padding:10px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 2px 8px #1d293908}
.pdf-organizer-page.is-dragging{opacity:.45}.pdf-organizer-page.drag-target{border-color:#4969df;box-shadow:0 0 0 2px #4969df35}
.pdf-organizer-thumb{display:flex;height:240px;align-items:center;justify-content:center;overflow:hidden;background:#eef0f4;border-radius:7px}
.pdf-organizer-thumb img{display:block;max-width:100%;max-height:100%;object-fit:contain;box-shadow:0 2px 9px #11182720}
.pdf-organizer-page-number{position:absolute;top:16px;left:16px;display:grid;min-width:26px;height:26px;place-items:center;border-radius:7px;background:#252a32dd;color:#fff;font-size:12px;font-weight:700}
.pdf-organizer-page-actions{position:absolute;top:15px;right:15px;display:flex;gap:5px}
.pdf-organizer-page-actions button{display:grid;width:30px;height:30px;place-items:center;border:1px solid #d6dbe5;border-radius:8px;background:#fff;color:#344054;font-size:18px;box-shadow:0 2px 6px #11182718;cursor:pointer}
.pdf-organizer-page-actions button:hover{border-color:#4969df;color:#3554c4}.pdf-organizer-page-actions button:last-child:hover{border-color:#e5322d;color:#d92d27}
.pdf-organizer-page-details{display:grid;gap:4px;margin-top:9px}.pdf-organizer-page-details strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:12px}.pdf-organizer-page-details small{color:var(--muted);font-size:11px}
.pdf-organizer-footer{display:flex;flex:none;min-height:68px;align-items:center;justify-content:space-between;gap:16px;padding:12px 26px;border-top:1px solid var(--line);background:#fff}
.pdf-organizer-footer span{color:var(--muted);font-size:12px}
.pdf-organizer-footer>div{display:flex;align-items:center;gap:10px}.pdf-draw-status{flex:none;margin:0 26px 12px;padding:10px 13px;border-radius:10px;background:#fff;color:var(--muted);font-size:13px}.pdf-draw-status.is-error{color:#b42318;background:#fff1f0}.pdf-draw-preview{display:flex;flex:1;min-height:240px;margin:0 26px 18px;overflow:hidden;border:1px solid var(--line);border-radius:12px;background:#e9edf2}.pdf-draw-preview[hidden]{display:none}.pdf-draw-preview iframe{width:100%;height:100%;min-height:50vh;border:0;background:#fff}
@media(max-width:620px){.pdf-organizer-head,.pdf-organizer-toolbar{padding-right:14px;padding-left:14px}.pdf-organizer-drop{margin-right:14px;margin-left:14px}.pdf-organizer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding-right:14px;padding-left:14px}.pdf-organizer-thumb{height:190px}.pdf-organizer-footer{padding-right:14px;padding-left:14px}.pdf-organizer-footer span{max-width:55%}.pdf-draw-status{margin-right:14px;margin-left:14px}.pdf-draw-preview{margin-right:14px;margin-left:14px}.pdf-organizer-footer>div{gap:6px}.pdf-organizer-footer>div button{padding-right:10px;padding-left:10px}}
#pdfDrawDialog .pdf-organizer-footer{flex-wrap:wrap;justify-content:flex-end}
#pdfDrawDialog .pdf-organizer-footer>span{flex:1 1 100%;max-width:none}
#pdfDrawDialog .pdf-organizer-footer>div{flex-wrap:wrap;justify-content:flex-end;max-width:100%}
@media(max-width:620px){#pdfDrawDialog .pdf-organizer-footer>div{width:100%}#pdfDrawDialog .pdf-organizer-footer>div button{flex:1 1 140px;min-width:0}}

.pdf-visual-editor{position:fixed;inset:0;width:auto;height:auto;min-width:0;min-height:0;max-width:none;max-height:none;margin:0;padding:0;overflow:hidden;border:0;background:#f4f6fb;color:#20232a}
.pdf-visual-editor[open]{display:flex;flex-direction:column}.pdf-visual-editor::backdrop{background:#11182788;backdrop-filter:blur(2px)}
.pdf-visual-head{display:flex;flex:none;min-width:0;align-items:center;justify-content:space-between;gap:16px;min-height:58px;padding:8px 18px;background:#fff;border-bottom:1px solid #e4e7ee}
.pdf-visual-brand{display:flex;min-width:0;align-items:center;gap:15px;overflow:hidden}.pdf-visual-brand strong{font-size:16px}.pdf-visual-brand span{min-width:0;max-width:38vw;overflow:hidden;color:#737b8a;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.tool-route-breadcrumb{display:flex;min-height:42px;max-width:1440px;align-items:center;gap:9px;margin:0 auto;padding:0 34px;background:#fff;color:#a0a6b1;font-size:12px}.tool-route-breadcrumb[hidden]{display:none!important}.tool-route-breadcrumb a{color:#788292;text-decoration:none}.tool-route-breadcrumb a:hover{text-decoration:underline}.tool-route-breadcrumb [aria-current="page"]{color:#454d5b;font-weight:560}
.pdf-visual-breadcrumb{display:flex;align-items:center;gap:7px;color:#7b8494;font-size:12px}.pdf-visual-brand .pdf-visual-breadcrumb span{max-width:none;overflow:visible;font-size:12px}.pdf-visual-breadcrumb strong{color:#303744;font-size:12px}
@media(max-width:700px){.tool-route-breadcrumb{min-height:38px;padding:0 14px;gap:6px;font-size:11px}}
.pdf-visual-head-actions{display:flex;align-items:center;gap:9px}.pdf-visual-head-actions .primary-btn{min-height:38px}.pdf-visual-head-actions .file-convert-preview-close{font-size:24px}
.pdf-visual-tools{display:flex;flex:none;align-items:center;justify-content:center;gap:5px;padding:8px 12px;overflow-x:auto;background:#fff;border-bottom:1px solid #dce4f2;box-shadow:0 2px 5px #15294a08}
.pdf-visual-tools button{display:flex;min-width:47px;height:42px;align-items:center;justify-content:center;flex-direction:column;gap:1px;padding:3px 8px;border:1px solid transparent;border-radius:7px;background:#fff;color:#454c58;font-size:18px;cursor:pointer}
.pdf-visual-tools button span{font-size:10px}.pdf-visual-tools button:hover{background:#f5f7fb}.pdf-visual-tools button.is-active{border-color:#b8ccff;background:#edf3ff;color:#2d68da}
.pdf-visual-tools label{display:flex;align-items:center;gap:6px;padding:0 9px;color:#667085;font-size:12px}.pdf-visual-color input{width:26px;height:26px;padding:1px;border:1px solid #d0d5dd;border-radius:5px;background:#fff}.pdf-visual-size input{width:85px;accent-color:#356fe0}
.pdf-visual-body{display:flex;width:100%;min-width:0;flex:1;min-height:0}.pdf-visual-pages{display:flex;flex:none;width:196px;flex-direction:column;border-right:1px solid #e0e4ec;background:#fff}.pdf-visual-page-nav{display:flex;align-items:center;justify-content:space-around;min-height:50px;border-bottom:1px solid #eef0f4;color:#5d6572;font-size:13px}.pdf-visual-page-nav button{width:32px;height:32px;border:0;border-radius:7px;background:#fff;color:#454c58;font-size:23px;cursor:pointer}.pdf-visual-page-nav button:disabled{color:#c5c9d1;cursor:default}
.pdf-visual-thumbs{display:flex;align-items:center;flex-direction:column;gap:12px;padding:14px 12px 24px;overflow:auto;overscroll-behavior:contain}.pdf-visual-thumb{position:relative;flex:none;width:150px;max-width:100%;padding:5px 5px 3px;border:2px solid transparent;border-radius:8px;background:#fff;cursor:pointer;transition:border-color .15s,box-shadow .15s}.pdf-visual-thumb:hover{border-color:#c6d8ff}.pdf-visual-thumb.is-active{border-color:#4385f5;box-shadow:0 0 0 1px #4385f533}.pdf-visual-thumb-preview{position:relative;display:block;width:100%;min-height:42px;overflow:hidden;border:1px solid #e4e8f0;background:#f7f8fa}.pdf-visual-thumb-preview canvas{position:absolute;inset:0;display:block;width:100%!important;height:100%!important;min-height:0;border:0;background:transparent}.pdf-visual-thumb-number{display:block;padding-top:5px;color:#4a5260;font-size:12px;text-align:center}.pdf-visual-stage #pdfVisualOverlay{touch-action:none}.pdf-visual-text-layer{position:absolute;z-index:3;inset:0;overflow:hidden;pointer-events:none}.pdf-visual-text-item{position:absolute;display:block;overflow:hidden;color:transparent;white-space:pre;line-height:1.15;pointer-events:none;user-select:none;transform-origin:left top}.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item{pointer-events:auto;cursor:text}.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item:hover,.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item:focus-visible{outline:1px dashed #4385f5;background:#4385f51a}
.pdf-visual-workspace{position:relative;display:flex;width:0;flex:1 1 0;min-width:0;min-height:0;align-items:flex-start;justify-content:center;padding:0 24px;overflow:auto;background:#e8efff;overscroll-behavior:contain;scroll-behavior:smooth}.pdf-visual-empty{display:flex;width:100%;min-height:48vh;align-items:center;justify-content:center;flex-direction:column;gap:12px;color:#687386;text-align:center}.pdf-visual-empty[hidden]{display:none!important}.pdf-visual-empty strong{color:#303744;font-size:20px}.pdf-visual-empty span{max-width:440px;font-size:14px;line-height:1.6}.pdf-visual-document{display:flex;width:100%;max-width:1440px;align-items:center;flex-direction:column;gap:24px;padding:28px 0 60px}.pdf-visual-document[hidden]{display:none!important}.pdf-visual-stage{position:relative;flex:none;max-width:100%;height:auto;margin:0 auto;box-shadow:0 4px 20px #15294a24;background:#fff;scroll-margin:24px}.pdf-visual-stage canvas{position:absolute;inset:0;display:block;width:100%;height:100%}.pdf-visual-stage .pdf-visual-canvas{position:relative}.pdf-visual-stage .pdf-visual-overlay{touch-action:none}
.pdf-visual-foot{display:flex;flex:none;min-height:40px;align-items:center;justify-content:space-between;gap:12px;padding:7px 16px;background:#fff;border-top:1px solid #e4e7ee;color:#747d8c;font-size:11px}.pdf-visual-foot span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@media(max-width:700px){.pdf-visual-head{padding:7px 10px}.pdf-visual-brand{align-items:flex-start;flex-direction:column;gap:2px}.pdf-visual-brand span{max-width:38vw;font-size:10px}.pdf-visual-head-actions{gap:5px}.pdf-visual-head-actions button{padding-right:9px;padding-left:9px;font-size:12px}.pdf-visual-tools{justify-content:flex-start;overflow-x:auto}.pdf-visual-tools label{gap:3px;padding:0 4px;font-size:10px}.pdf-visual-size input{width:58px}.pdf-visual-pages{width:112px}.pdf-visual-page-nav{min-height:44px;font-size:11px}.pdf-visual-thumb{width:86px}.pdf-visual-thumbs{gap:9px;padding:10px 8px 18px}.pdf-visual-workspace{padding:0 10px}.pdf-visual-document{gap:14px;padding:14px 0 36px}.pdf-visual-stage{scroll-margin:12px}.pdf-visual-foot{font-size:10px}.pdf-visual-foot span:last-child{display:none}}
.pdf-visual-text-edit{position:absolute;z-index:20;top:50%;left:50%;width:min(420px,calc(100vw - 36px));box-sizing:border-box;padding:19px;border:1px solid #dfe4ef;border-radius:14px;background:#fff;box-shadow:0 18px 60px #11182740;transform:translate(-50%,-50%)}.pdf-visual-text-edit[hidden]{display:none!important}.pdf-visual-text-edit-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.pdf-visual-text-edit-head strong{font-size:16px}.pdf-visual-text-edit-head button{width:30px;height:30px;border:0;border-radius:7px;background:#f3f5f8;color:#596170;font-size:20px;cursor:pointer}.pdf-visual-text-edit label{display:block;margin-bottom:7px;color:#596170;font-size:13px}.pdf-visual-text-edit>input{width:100%;min-height:42px;box-sizing:border-box;padding:9px 11px;border:1px solid #cfd7e5;border-radius:8px;font:inherit;font-size:14px;outline:none}.pdf-visual-text-edit>input:focus{border-color:#4385f5;box-shadow:0 0 0 3px #4385f51f}.pdf-visual-text-edit-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:15px}.pdf-visual-text-edit-actions button{min-height:38px;padding:0 13px}


.file-convert-preview-content{width:100%;min-width:100%;display:flex;align-items:center;flex-direction:column;gap:18px}
.file-convert-preview-page-wrap{width:100%;max-width:100%;box-sizing:border-box}
.file-convert-preview-content .file-convert-preview-page{width:100%;max-width:100%;height:auto}
.file-convert-preview-content .excel-rendered-page{width:100%;max-width:100%}
.file-convert-encrypt-settings input,.file-convert-decrypt-settings input{display:block;width:100%;min-height:40px;margin:6px 0 14px;padding:9px 11px;border:1px solid #d7dce5;border-radius:8px;background:#fff;color:#252a32;font:inherit}
.file-convert-info:not(.file-convert-watermark-settings):not(.file-convert-encrypt-settings):not(.file-convert-decrypt-settings){display:none}

/* Encryption fields are controls, not explanatory notes. */
#fileConvertEncryptSettings:not([hidden]){display:block}
#fileConvertDecryptSettings:not([hidden]){display:block}
.file-convert-table-notice{margin:10px 0 0;padding:10px 12px;border-radius:9px;background:#f5f7ff;color:#58657c;font-size:12px;line-height:1.55}
/* Keep preview pages at a fitted base size so zoom has a clear visible effect. */
.file-convert-preview-content .file-convert-preview-page-wrap{flex:none;width:max-content;max-width:none}
.file-convert-preview-content .file-convert-preview-page{display:block;width:auto;max-width:none;height:auto}

/* Keep the document list content-sized and the desktop tools panel in view. */
.file-convert-list{height:auto;min-height:0;max-height:none;overflow:visible}
.file-convert-controls{position:sticky;top:16px;align-self:start;max-height:calc(100vh - 32px);overflow-y:auto}
@media(max-width:1020px){.file-convert-controls{position:static;max-height:none;overflow:visible}}

/* Make the selected checkout action unmistakable, with a restrained moving sheen. */
.pricing-selection>button{position:relative;overflow:hidden;transition:transform .18s ease,background .2s ease,box-shadow .2s ease}
.pricing-selection>button.is-ready{border:1px solid var(--brand-blue);background:linear-gradient(110deg,var(--brand-blue) 18%,#7891f5 42%,#4969df 62%);background-size:240% 100%;color:#fff;box-shadow:0 7px 18px rgb(73 105 223 / 22%);animation:payment-button-shine 3.2s ease-in-out infinite}
.pricing-selection>button.is-ready:hover{transform:translateY(-1px);box-shadow:0 10px 24px rgb(73 105 223 / 30%)}
.pricing-selection>button:disabled{cursor:not-allowed}
@keyframes payment-button-shine{0%,36%{background-position:100% 0}74%,100%{background-position:0 0}}
.account-device-count{margin:2px 0 14px}
@media(prefers-reduced-motion:reduce){.pricing-selection>button.is-ready{animation:none;background-position:50% 0}}

/* A calm, value-led checkout choice for PDF exports. */
.pdf-editor-paywall{width:min(820px,calc(100vw - 32px));max-height:min(92vh,820px);padding:clamp(22px,3vw,34px);border-radius:22px;background:radial-gradient(ellipse at 92% 0%,#36466d55 0,transparent 38%),#25272a;}
.pdf-editor-paywall .pdf-visual-ocr-head{margin-bottom:8px;}
.pdf-editor-paywall .pdf-visual-ocr-eyebrow{display:inline-flex;align-items:center;gap:7px;}
.pdf-editor-paywall .pdf-visual-ocr-eyebrow::before{width:7px;height:7px;border-radius:50%;background:#88a5ff;content:"";box-shadow:0 0 10px #88a5ff88;}
.pdf-editor-paywall .pdf-visual-ocr-head h2{font-size:clamp(25px,3.7vw,34px);letter-spacing:-.035em;}
.pdf-editor-paywall .pdf-visual-ocr-description{max-width:700px;margin:2px 0 18px;color:#c7cbd3;font-size:15px;}
.pdf-editor-paywall-summary{display:flex;align-items:center;gap:12px;margin:0 0 15px;padding:13px 15px;border:1px solid #47515f;border-radius:13px;background:linear-gradient(100deg,#2c3544,#2b2c30 72%);}
.pdf-editor-paywall-check{display:grid;width:34px;height:34px;flex:none;place-items:center;border:1px solid #5d7ee8;border-radius:50%;background:#3c5fc3;color:#fff;font-size:18px;font-weight:700;box-shadow:0 0 20px #5277e633;}
.pdf-editor-paywall-summary>span:nth-child(2){display:grid;min-width:0;gap:3px;}
.pdf-editor-paywall-summary strong{color:#f3f5fa;font-size:13px;}
.pdf-editor-paywall-summary small{color:#aeb6c4;font-size:12px;line-height:1.45;}
.pdf-editor-paywall-local{margin-left:auto;padding:6px 9px;border:1px solid #535c68;border-radius:999px;color:#cbd3e0;font-size:11px;white-space:nowrap;}
.pdf-editor-offers{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:0;}
.pdf-editor-offer{position:relative;min-height:142px;align-items:flex-start;gap:13px;padding:18px 16px;border-color:#484c53;border-radius:16px;background:linear-gradient(145deg,#303236,#292b2e);box-shadow:inset 0 1px #ffffff08;}
.pdf-editor-offer:hover{border-color:#7d98ee;background:linear-gradient(145deg,#343a49,#2c2d31);box-shadow:0 10px 28px #0003;transform:translateY(-2px);}
.pdf-editor-offer.is-featured{border-color:#6685ff;background:linear-gradient(145deg,#303c61 0%,#2d3038 72%);box-shadow:inset 0 0 0 1px #6685ff24,0 8px 28px #18264d4d;}
.pdf-editor-offer.is-featured::before{position:absolute;top:10px;right:12px;padding:4px 8px;border:1px solid #718df58a;border-radius:999px;background:#314a8c;color:#dce6ff;content:"适合多份文档";font-size:10px;font-weight:650;}
.pdf-editor-offer-mark{flex-basis:52px;height:52px;border:1px solid #566fae88;border-radius:15px;background:linear-gradient(145deg,#405793,#33416b);color:#e0e8ff;font-size:13px;}
.pdf-editor-offer-copy{align-self:center;gap:8px;padding-right:8px;}
.pdf-editor-offer-copy strong{display:flex;flex-wrap:wrap;align-items:center;gap:4px;color:#f5f6f8;font-size:16px;}
.pdf-editor-offer-copy strong b{margin-left:4px;color:#a9c4ff;font-size:25px;letter-spacing:-.03em;}
.pdf-editor-offer-copy strong em{padding:3px 6px;border-radius:5px;background:#435a963d;color:#c5d4ff;font-size:10px;font-style:normal;font-weight:600;}
.pdf-editor-offer-copy small{color:#b7beca;font-size:12px;line-height:1.6;}
.pdf-editor-offer-arrow{align-self:center;margin-left:auto;color:#c3d1f4;font-size:27px;}
.pdf-editor-task-rule{margin:15px 0 0;padding:11px 13px;border-left:2px solid #6988f3;border-radius:0 8px 8px 0;background:#ffffff08;color:#adb4c0;font-size:12px;line-height:1.6;}
.pdf-editor-paywall-status:empty{display:none;}
.pdf-editor-paywall .pdf-visual-ocr-actions{justify-content:flex-end;margin-top:17px;padding-top:15px;border-top:1px solid #ffffff15;}
.pdf-editor-paywall #pdfEditorPaywallDone{min-height:42px;padding:0 18px;border-radius:9px;background:#35373a;border-color:#555b64;color:#eceff4;}
.pdf-editor-paywall #pdfEditorPaywallDone:hover{background:#41444a;}
#pdfEditorPaywallLogin[hidden]{display:none!important;}
@media(max-width:650px){.pdf-editor-paywall{width:calc(100vw - 20px);padding:19px;border-radius:17px}.pdf-editor-paywall-summary{align-items:flex-start}.pdf-editor-paywall-local{display:none}.pdf-editor-offers{grid-template-columns:1fr}.pdf-editor-offer{min-height:105px;padding:14px}.pdf-editor-offer.is-featured::before{top:8px;right:9px}.pdf-editor-offer-copy strong{font-size:15px}.pdf-editor-offer-copy strong b{font-size:22px}.pdf-editor-paywall .pdf-visual-ocr-actions{justify-content:stretch}.pdf-editor-paywall #pdfEditorPaywallDone{width:100%;}}


/* Match the app footer directory to the landing-page directory layout. */
.seo-directory{padding:47px max(28px,calc((100vw - 1440px)/2));background:#f7f8fc}
.seo-directory-inner{display:flex;align-items:flex-start;justify-content:space-between;gap:50px;max-width:1440px;margin:0 auto}
.seo-directory-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;flex:1;min-width:0}
.seo-directory-groups>section{min-width:0}
.seo-directory-groups h3{margin:0 0 12px;color:var(--text);font-size:14px}
.seo-directory-links{display:flex;flex-wrap:wrap;gap:7px}
.seo-directory-links a{padding:7px 10px;border:1px solid #e3e6ee;border-radius:999px;background:#fff;color:#637087;text-decoration:none;font-size:10px;white-space:nowrap;transition:border-color .18s,color .18s,transform .18s}
.seo-directory-links a:hover{transform:translateY(-1px);border-color:#abb7ed;color:#4055c7}
@media(max-width:900px){.seo-directory-inner{gap:22px}.seo-directory-groups{grid-template-columns:1fr;gap:18px}}
@media(max-width:680px){.seo-directory{padding:34px 19px}.seo-directory-inner{display:block}.seo-directory-groups{gap:20px}.seo-directory-links{gap:7px}.seo-directory-links a{font-size:10px;padding:6px 9px}}

/* Match the workspace wordmark to the landing page and keep the header compact. */
.topbar .brand > div > strong{font-size:21px;font-weight:780;letter-spacing:-.04em;line-height:1.2}
.topbar .brand > div > span{display:none}

/* Use the same public navigation on every app tool and pricing view. */
body .app-shell>.topbar{display:none}
body .app-shell>.landing-header{display:flex}
body.pricing-mode .landing-nav>a[href*="tool=pricing"]{color:#4969df}
.app-nav-login{appearance:none}

/* Override the legacy wide table rules so every plan fits in one readable row. */
.compression-candidates{margin:0 0 8px;padding:0 1px}
.compression-candidates-heading,.compression-stage-header{display:none!important}
.compression-stage-table{min-width:0;overflow:visible;border:0;background:transparent}
.compression-stage-rows{display:grid;grid-template-columns:repeat(var(--plan-count,8),minmax(0,1fr));gap:4px;min-width:0;padding:1px}
.compression-stage-choice,.compression-stage-placeholder{box-sizing:border-box;width:100%;min-width:0;min-height:40px;display:grid;grid-template-columns:14px minmax(0,1fr);grid-template-rows:auto auto;align-items:center;gap:2px 4px;padding:5px;border:1px solid var(--line);border-radius:7px;text-align:left;font-size:10px}
.compression-stage-choice{background:var(--surface)}
.compression-stage-choice:nth-child(even){background:var(--surface)}
.compression-stage-choice span:first-child{grid-column:1;grid-row:1/3;text-align:center}
.compression-stage-choice span:nth-child(2),.compression-stage-placeholder span:nth-child(2){grid-column:2;grid-row:1;min-width:0;white-space:normal;overflow:visible;overflow-wrap:anywhere;text-overflow:clip;text-align:left;font-size:10px;font-weight:700}
.compression-stage-choice span:nth-child(3),.compression-stage-placeholder span:nth-child(3){grid-column:2;grid-row:2;min-width:0;white-space:normal;text-align:left;font-size:9px;color:var(--muted)}
.compression-stage-choice span:nth-child(4),.compression-stage-placeholder span:nth-child(4),.compression-stage-choice span:nth-child(5),.compression-stage-choice span:nth-child(6),.compression-stage-placeholder span:nth-child(5),.compression-stage-placeholder span:nth-child(6){display:none}
.compression-stage-choice.selected span:nth-child(3){color:#fff}
@media(max-width:900px){.compression-stage-rows{gap:3px}.compression-stage-choice,.compression-stage-placeholder{min-height:42px;padding:4px 3px;grid-template-columns:12px minmax(0,1fr)}.compression-stage-choice span:nth-child(2),.compression-stage-placeholder span:nth-child(2){font-size:9px}.compression-stage-choice span:nth-child(3),.compression-stage-placeholder span:nth-child(3){font-size:8px}}
@media(max-width:520px){.compression-stage-choice span:nth-child(3),.compression-stage-placeholder span:nth-child(3){display:none}.compression-stage-choice,.compression-stage-placeholder{min-height:36px;grid-template-columns:10px minmax(0,1fr);padding:3px 2px}.compression-stage-choice span:first-child{font-size:10px!important}}
.compression-stage-choice .plan-choice-radio,.compression-stage-placeholder .plan-choice-radio{grid-column:1;grid-row:1/3}
.compression-stage-choice .plan-choice-label,.compression-stage-placeholder .plan-choice-label{grid-column:2;grid-row:1;display:block;min-width:0;overflow:visible;white-space:normal;overflow-wrap:anywhere;text-overflow:clip;text-align:left;font-size:10px;font-weight:700}
.compression-stage-choice .plan-choice-size,.compression-stage-placeholder .plan-choice-size{grid-column:2;grid-row:2;display:block;min-width:0;overflow:visible;white-space:normal;overflow-wrap:anywhere;text-overflow:clip;text-align:left;font-size:9px;color:var(--muted)}
.compression-stage-choice .plan-choice-saving,.compression-stage-choice .plan-choice-rmse,.compression-stage-choice .plan-choice-worst,.compression-stage-placeholder .plan-choice-saving,.compression-stage-placeholder .plan-choice-rmse,.compression-stage-placeholder .plan-choice-worst{display:none}
.compression-stage-choice.selected .plan-choice-size{color:#fff}
@media(max-width:900px){.compression-stage-choice .plan-choice-label,.compression-stage-placeholder .plan-choice-label{font-size:9px}.compression-stage-choice .plan-choice-size,.compression-stage-placeholder .plan-choice-size{font-size:8px}}
@media(max-width:520px){.compression-stage-choice .plan-choice-size,.compression-stage-placeholder .plan-choice-size{display:none}}

/* Full-bleed compression toolbar; its controls stay in the centered workspace. */
#panel-web .asset-toolbar{isolation:isolate;background:transparent!important;box-shadow:none!important;border-bottom:0}
#panel-web .asset-toolbar::before{content:"";position:absolute;z-index:-1;left:50%;top:0;bottom:0;width:100vw;transform:translateX(-50%);background:#fff;border-bottom:1px solid #e5e7eb;box-shadow:0 5px 16px #1d29390b;pointer-events:none}
#panel-web .asset-toolbar>.toolbar-left,#panel-web .asset-toolbar>.toolbar-right{position:relative;z-index:1}
.compression-plan-control{gap:7px;color:var(--muted);font-size:10px}
.compression-mode-toggle{display:inline-flex;align-items:center;gap:2px;width:max-content;padding:2px;border:1px solid #e1e4eb;border-radius:999px;background:#f3f4f7}
.compression-mode-tab{min-height:25px;padding:4px 10px;border:0;border-radius:999px;background:transparent;color:#717784;font-size:10px;font-weight:650;line-height:1;white-space:nowrap;transition:background-color .16s,color .16s,box-shadow .16s}
.compression-mode-tab.active{background:#fff;color:#3554c4;box-shadow:0 1px 3px #26334a1a}
.compression-mode-tab:focus-visible{outline:2px solid #4969df70;outline-offset:1px}
.compression-plan-content[hidden],.compression-target-content[hidden]{display:none!important}
.compression-target-content{display:grid;grid-template-columns:minmax(0,1fr) 78px;align-items:center;gap:7px;min-width:0;width:100%}
.asset-controls .compression-target-content .compression-target-value{grid-column:1;width:100%;min-width:0;box-sizing:border-box;height:32px;padding:5px 8px;border:1px solid #d5dae2;border-radius:8px;background:#fff;color:var(--text);font:12px var(--mono);font-variant-numeric:tabular-nums}
.asset-controls .compression-target-content .compression-target-unit{grid-column:2;width:100%;min-width:0;box-sizing:border-box;height:32px;padding:4px 8px;border:1px solid #d5dae2;border-radius:8px;background:#fff;color:var(--text);font-size:11px}
.compression-target-note{grid-column:1/-1;color:#858c98;font-size:9px;line-height:1.3}
@media(max-width:620px){#panel-web .asset-toolbar::before{box-shadow:0 4px 12px #1d29390a}.compression-target-content{grid-template-columns:minmax(0,1fr) 72px;gap:5px}.compression-target-note{font-size:8px}}
.asset-thumb-preview{position:relative}
.asset-thumb-preview img[hidden],#compareProcessed[hidden]{display:none!important}
.asset-preview-loading,.compare-preview-loading{position:absolute;inset:0;z-index:2;display:grid;place-items:center;pointer-events:none}
.asset-preview-loading[hidden],.compare-preview-loading[hidden]{display:none!important}
.asset-preview-loading{background:#f7f8fb}
.asset-preview-loading .tool-route-loader-logo{width:42px;height:42px}
.compare-preview-loading{background:#fff9}
.compare-preview-loading .tool-route-loader-logo{width:72px;height:72px}
.compare-target-control{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:0 18px 10px;color:var(--muted);font-size:12px}
.compare-target-control[hidden]{display:none!important}
.compare-target-mode{font-weight:700;color:var(--text)}
.compare-target-control input{width:115px;min-width:72px;height:34px;padding:6px 9px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font:13px var(--mono)}
.compare-target-control select{height:34px;min-width:68px;padding:5px 8px;border:1px solid var(--line);border-radius:8px;background:var(--surface);color:var(--text);font-size:12px}
.compare-target-note{flex-basis:100%;color:var(--muted);font-size:11px}
.compare-result.is-loading .compare-image{visibility:hidden}
@media(max-width:620px){.compare-target-control{gap:6px;padding:0 12px 8px}.compare-target-control input{width:92px}.compare-target-note{font-size:10px}}

/* Keep preview geometry stable while a new format or compression result is built. */
.asset-card .thumb.is-updating .asset-thumb-preview>img{visibility:hidden!important;opacity:0!important;filter:none!important;transform:none!important}
.asset-card .thumb.is-updating .asset-preview-loading{position:absolute!important;inset:0!important;z-index:5;display:grid!important;place-items:center!important}
.compare-dialog{overflow-y:auto;overscroll-behavior:contain}
.compare-stage{flex:1 1 0;min-height:clamp(220px,30vh,360px)}
@media(max-width:700px){.compare-stage{flex-grow:1;min-height:clamp(200px,28vh,320px)}}

.cutout-editor-controls{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin:12px 0;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:#fff}
.cutout-editor-controls[hidden]{display:none!important}
.cutout-edit-tools,.cutout-background-tools{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.cutout-edit-tools>.active,.cutout-bg-option.active{border-color:#4969df;background:#eef2ff;color:#3554c4}
.cutout-brush-size{display:flex;align-items:center;gap:7px;margin-left:5px;color:var(--muted);font-size:11px}
.cutout-brush-size input{width:100px;accent-color:#4969df}
.cutout-brush-size output{min-width:38px;color:var(--text);font:11px var(--mono)}
.cutout-background-tools>span{margin-right:2px;color:var(--muted);font-size:11px}
.cutout-bg-option{width:27px;height:27px;display:grid;place-items:center;padding:3px;border:1px solid var(--line);border-radius:7px;background:#fff;cursor:pointer}
.cutout-bg-option i{width:18px;height:18px;display:block;border:1px solid #c9ced7;border-radius:4px}
.cutout-bg-option .transparent-swatch{background-color:#fff;background-image:linear-gradient(45deg,#dfe4ec 25%,transparent 25%),linear-gradient(-45deg,#dfe4ec 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#dfe4ec 75%),linear-gradient(-45deg,transparent 75%,#dfe4ec 75%);background-size:8px 8px;background-position:0 0,0 4px,4px -4px,-4px 0}
@media(max-width:620px){.cutout-editor-controls{align-items:flex-start}.cutout-edit-tools{width:100%}.cutout-brush-size{flex:1;min-width:120px}.cutout-brush-size input{flex:1;width:auto}}
.compare-dialog .compression-stage-choice span.plan-choice-label,.compare-dialog .compression-stage-placeholder span.plan-choice-label{display:block;grid-column:2;grid-row:1;min-width:0;max-width:100%;overflow:visible;white-space:normal;overflow-wrap:anywhere;text-overflow:clip;color:var(--text);font-size:10px;font-weight:700}
.compare-dialog .compression-stage-choice span.plan-choice-size,.compare-dialog .compression-stage-placeholder span.plan-choice-size{display:block;grid-column:2;grid-row:2;min-width:0;max-width:100%;overflow:visible;white-space:normal;overflow-wrap:anywhere;text-overflow:clip;color:var(--muted);font-size:9px}
.compare-dialog .compression-stage-choice.selected span.plan-choice-label,.compare-dialog .compression-stage-choice.selected span.plan-choice-size{color:#fff}
.compare-dialog .compression-stage-choice.selected,.compare-dialog .compression-stage-choice.selected:nth-child(even){background:#4969df!important;border-color:#4969df;color:#fff}
.compare-dialog .compression-stage-choice span.plan-choice-saving,.compare-dialog .compression-stage-choice span.plan-choice-rmse,.compare-dialog .compression-stage-choice span.plan-choice-worst,.compare-dialog .compression-stage-placeholder span.plan-choice-saving,.compare-dialog .compression-stage-placeholder span.plan-choice-rmse,.compare-dialog .compression-stage-placeholder span.plan-choice-worst{display:none}
@media(max-width:900px){.compare-dialog .compression-stage-choice span.plan-choice-label,.compare-dialog .compression-stage-placeholder span.plan-choice-label{font-size:9px}.compare-dialog .compression-stage-choice span.plan-choice-size,.compare-dialog .compression-stage-placeholder span.plan-choice-size{font-size:8px}}
@media(max-width:520px){.compare-dialog .compression-stage-choice span.plan-choice-size,.compare-dialog .compression-stage-placeholder span.plan-choice-size{display:none}}

.json-csv-workspace .json-csv-source{min-height:240px}.json-csv-safety{display:flex;align-items:center;gap:8px;margin-top:14px;color:#65718a;font-size:13px}.json-csv-safety input{accent-color:var(--brand,#4969df)}.json-csv-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}.json-csv-actions button{min-height:44px}.json-csv-actions button:disabled{opacity:.5;cursor:not-allowed}
.json-csv-sheet-viewport{height:auto;max-height:none;min-height:220px;overflow-x:auto;overflow-y:hidden;border:1px solid #cfd3da;border-radius:10px;background:#fff;outline:none}.json-csv-sheet-viewport:focus-visible{box-shadow:0 0 0 3px #4969df2b}.json-csv-empty{min-height:220px;display:grid;place-items:center;margin:0;color:#9299a7;font-size:14px}.json-csv-sheet{width:max-content;min-width:100%;border-collapse:separate;border-spacing:0;table-layout:fixed;color:#20242b;font:13px/1.35 Arial,"PingFang SC",sans-serif}.json-csv-sheet th,.json-csv-sheet td{height:auto;max-width:220px;min-width:110px;box-sizing:border-box;padding:5px 8px;overflow:visible;border-right:1px solid #d5d7dc;border-bottom:1px solid #d5d7dc;text-align:left;text-overflow:clip;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word}.json-csv-sheet thead th{position:sticky;top:0;z-index:3;min-width:110px;height:28px;padding:4px 8px;background:#292b2f;color:#f7f7f8;font-weight:500;text-align:center}.json-csv-sheet thead .json-csv-corner{position:sticky;left:0;z-index:5;width:44px;min-width:44px;background:linear-gradient(135deg,#313338 49%,#858990 50%,#313338 54%)}.json-csv-sheet tbody th{position:sticky;left:0;z-index:2;width:44px;min-width:44px;background:#f2f3f5;color:#666c76;font-weight:400;text-align:center}.json-csv-sheet tbody tr:first-child td{background:#fff}.json-csv-sheet tbody tr:hover td{background:#f4f7ff}.json-csv-sheet tbody td:focus{outline:2px solid #4771d9;outline-offset:-2px}

/* Preserve image-tool glyph sizing while sharing navigation colors. */
[data-image-tool] .nav-tool-icon{font-size:25px}
@media(max-width:620px){[data-image-tool] .nav-tool-icon{font-size:22px}}

/* PDF editor: inline text and source-image selection controls. */
.pdf-visual-editbar{display:flex;flex:none;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:5px 12px;background:#f8faff;border-bottom:1px solid #dce4f2}
.pdf-visual-editbar[hidden],.pdf-visual-text-controls[hidden]{display:none!important}
.pdf-visual-text-controls{display:flex;align-items:center;gap:6px;padding:4px 6px;border:1px solid #c9d8fa;border-radius:8px;background:#fff;box-shadow:0 2px 6px #15294a12}
.pdf-visual-text-controls select,.pdf-visual-text-controls input[type=number]{height:32px;min-width:88px;padding:0 8px;border:1px solid #e2e6ee;border-radius:5px;background:#fff;color:#303744;font:inherit;font-size:13px}
.pdf-visual-text-controls input[type=number]{width:58px;min-width:58px}
.pdf-visual-text-controls input[type=color]{width:36px;height:32px;padding:2px;border:1px solid #e2e6ee;border-radius:5px;background:#fff}
.pdf-visual-text-controls button,.pdf-visual-editbar>#pdfVisualDeleteSelection{min-height:32px;padding:0 10px;border:1px solid #e2e6ee;border-radius:5px;background:#fff;color:#303744;font:inherit;font-size:13px;cursor:pointer}
.pdf-visual-text-controls button[aria-pressed=true]{border-color:#9bb8f8;background:#edf3ff;color:#225cc4}
.pdf-visual-text-controls button:disabled,.pdf-visual-editbar button:disabled{opacity:.45;cursor:not-allowed}
.pdf-visual-text-item.is-editing{z-index:6;overflow:visible!important;min-height:1.3em;padding:0;outline:2px solid #4385f5!important;background:#fff!important;caret-color:auto;cursor:text;pointer-events:auto;user-select:text;white-space:pre-wrap}
.pdf-visual-editor[data-tool=edit-text] .pdf-visual-image-item{pointer-events:auto}.pdf-visual-editor[data-tool="text"] .pdf-visual-added-text-item{pointer-events:auto}
.pdf-visual-image-item{position:absolute;z-index:5;display:block;box-sizing:border-box;padding:0;border:1px dashed transparent;border-radius:1px;background:transparent;cursor:pointer;pointer-events:none}
.pdf-visual-image-item:hover,.pdf-visual-image-item:focus-visible,.pdf-visual-image-item.is-selected{border:2px solid #4385f5;background:#4385f51a;outline:none}
.pdf-visual-image-item:disabled{pointer-events:none;border-color:transparent;background:transparent}
@media(max-width:700px){.pdf-visual-editbar{justify-content:flex-start;overflow-x:auto}.pdf-visual-text-controls{flex:none}.pdf-visual-text-controls select{min-width:76px}}
.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item{z-index:9;pointer-events:auto;cursor:text}.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item:hover,.pdf-visual-text-item.is-selected{outline:2px solid #4385f5;background:#4385f51a}
.pdf-visual-editbar.is-floating-delete{position:fixed;z-index:79;top:0;left:0;display:block;width:0;height:0;min-height:0;box-sizing:border-box;margin:0;padding:0;border:0;background:transparent;overflow:visible;pointer-events:none}
.pdf-visual-editbar.is-floating-delete>#pdfVisualDeleteSelection{position:fixed;z-index:80;min-height:38px;border:0;border-radius:7px;background:#10275c;color:#fff;box-shadow:0 5px 16px #10275c40;pointer-events:auto}
html[data-tool-route-pending] .workspace{visibility:hidden}

/* One spacious entry page for document tools, before processing controls appear. */
html[data-document-upload] #workspace,html[data-document-upload] .seo-directory{display:none!important}
.document-upload-page[hidden]{display:none}
html[data-document-upload] .document-upload-page{display:block}
.document-upload-page{width:min(1440px,calc(100% - 48px));max-width:1440px;margin:0 auto;padding:28px 0 72px}
html[data-document-route] .tool-route-breadcrumb{max-width:1440px;min-height:20px;padding:0;margin:28px auto 0;gap:12px;color:#a1a1aa;font-size:13px;background:transparent}
.document-upload-page #toolRouteBreadcrumb{width:100%;margin:0 0 44px}
html[data-document-route] .tool-route-breadcrumb [aria-current="page"]{color:#202024;font-weight:500}
.document-upload-heading{text-align:center}
.document-upload-heading h1{margin:0;font-size:clamp(32px,3.6vw,52px);font-weight:800;letter-spacing:-.035em;line-height:1.25;color:#111}
.document-upload-heading p{max-width:1040px;margin:16px auto 0;color:#777;font-size:17px;line-height:1.65}
.document-upload-benefits{display:flex;justify-content:flex-end;align-items:center;gap:9px;margin-top:42px;margin-bottom:16px;font-size:13px}
.document-upload-benefits a,.document-upload-benefits button{min-height:36px;padding:8px 16px;border:1px solid #e6e7ee;border-radius:24px;background:#fff;color:#666;text-decoration:none;font-size:13px;font-weight:500}
.document-upload-benefits a{color:#fff;border-color:var(--brand-blue);background:var(--brand-blue)}
.document-upload-benefits button:hover{border-color:var(--brand-blue);color:var(--brand-blue)}
.document-upload-benefits [hidden]{display:none}
.document-upload-benefits[hidden]{display:none}
.document-upload-card{position:relative;padding:24px;border:1px solid color-mix(in srgb,var(--brand-blue) 20%,#fff);border-radius:24px;background:#fff}
.document-upload-benefits[hidden]+.document-upload-card{margin-top:42px}
.document-upload-dropzone{position:relative;min-height:520px;padding:64px 24px 78px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px dashed var(--brand-blue);border-radius:18px;background:var(--brand-blue-soft);text-align:center;cursor:pointer;transition:border-color .2s,background .2s}
.document-upload-dropzone:hover,.document-upload-dropzone.dragging{border-color:var(--brand-blue-hover);background:color-mix(in srgb,var(--brand-blue) 12%,#fff)}
.document-upload-dropzone:focus-visible{outline:3px solid color-mix(in srgb,var(--brand-blue) 35%,transparent);outline-offset:5px}
.document-upload-icon{position:relative;width:80px;height:80px;margin-bottom:26px;display:grid;place-items:center;border-radius:20px;background:color-mix(in srgb,var(--brand-blue) 14%,#fff);color:#8b8b98}
.document-upload-icon svg{width:34px;height:44px}
.document-upload-icon b{position:absolute;left:16px;top:31px;min-width:30px;max-width:60px;padding:4px;border-radius:4px;background:#ed4051;color:#fff;font-size:10px;line-height:1}
.document-upload-dropzone h2{margin:0;color:#111;font-size:23px;font-weight:700;line-height:1.4}
.document-upload-dropzone>p:not(.document-upload-note):not(.document-upload-error){margin:12px 0 26px;color:#929099;font-size:15px;line-height:1.5}
.document-upload-browse{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-width:208px;min-height:56px;padding:14px 24px;border:1px solid #111;border-radius:10px;background:#111;color:#fff;font-size:15px;font-weight:650;line-height:1.4}
.document-upload-browse:before{content:"+";width:19px;height:19px;display:grid;place-items:center;border:1.5px solid currentColor;border-radius:50%;font-size:17px;font-weight:500;line-height:1}
.document-upload-browse:hover{background:#292929}
.document-upload-dropzone [hidden]{display:none!important}
.document-upload-note{position:absolute;bottom:24px;left:16px;right:16px;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;column-gap:10px;row-gap:3px;margin:0;color:#9996a0;font-size:12px;line-height:1.6}
.document-upload-note span:first-child{margin-right:0}
.document-upload-note span[hidden]{display:none}
.document-upload-error{min-height:18px;margin:12px 0 0;color:#c42b3c;font-size:13px}
.document-upload-file-name{display:block;max-width:100%;margin-top:10px;color:#696579;font-size:13px;overflow-wrap:anywhere}
.document-upload-file-name:empty{display:none}
.document-upload-second{margin-top:16px}
.document-upload-secondary{padding:12px 20px;border:1px solid color-mix(in srgb,var(--brand-blue) 35%,#fff);border-radius:10px;background:#fff;color:var(--brand-blue);font-size:14px}
.document-upload-paste{margin-top:18px;padding:0;border:0;background:transparent;color:var(--brand-blue);font-size:14px}
.document-upload-url-form{width:min(600px,100%);display:flex;gap:12px}
.document-upload-url-form input{min-width:0;flex:1;padding:14px;border:1px solid color-mix(in srgb,var(--brand-blue) 25%,#fff);border-radius:10px;background:#fff;color:#222;font-size:15px}
html[data-document-route]:not([data-document-upload]) .tool-route-breadcrumb{width:min(1440px,calc(100% - 48px))}
/* Keep the document workspace and breadcrumb aligned to the site-wide 1440px content width. */
html:has(.file-convert-panel:not([hidden])) .workspace{width:min(1440px,calc(100% - 48px));max-width:1440px}
html:has(.file-convert-panel:not([hidden])) .tool-route-breadcrumb{width:min(1440px,calc(100% - 48px));max-width:1440px}
body:has(#panel-tools.active):has(.file-convert-panel:not([hidden])) #workspace.workspace{padding-left:0!important;padding-right:0!important}
html[data-document-route="pdf-compress"] .file-convert-heading{display:none!important}
.file-convert-list-actions #fileConvertBrowse{display:inline-flex;width:64px;min-width:64px;height:42px;min-height:42px;align-items:center;justify-content:center;padding:0;border-radius:12px;font-size:12px;font-weight:700;line-height:1.2}
@media(max-width:760px){
  .document-upload-page{width:calc(100% - 32px);padding:22px 0 44px}
  .document-upload-page #toolRouteBreadcrumb{margin:0 0 32px;font-size:12px;gap:8px;flex-wrap:wrap}
  .document-upload-heading h1{font-size:clamp(29px,7vw,40px)}
  .document-upload-heading p{margin-top:14px;font-size:14px}
  .document-upload-benefits{margin-top:28px;gap:7px;justify-content:center;flex-wrap:wrap}
  .document-upload-benefits a,.document-upload-benefits button{font-size:12px;padding:8px 12px}
  .document-upload-card{padding:12px;border-radius:20px}
  .document-upload-benefits[hidden]+.document-upload-card{margin-top:28px}
  .document-upload-dropzone{min-height:400px;padding:38px 16px 78px;border-radius:13px}
  .document-upload-icon{width:68px;height:68px;margin-bottom:22px}
  .document-upload-icon b{left:12px;top:27px}
  .document-upload-dropzone h2{font-size:20px}
  .document-upload-dropzone>p:not(.document-upload-note):not(.document-upload-error){font-size:13px;margin-bottom:23px}
  .document-upload-browse{min-width:0;max-width:100%;min-height:50px;font-size:14px}
  .document-upload-note{font-size:10px;bottom:16px;left:10px;right:10px;column-gap:7px}
  .document-upload-url-form{flex-direction:column}
}

/* PDF editor inserted objects: direct manipulation handles. */
.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-object-rotate{pointer-events:auto}
.pdf-visual-object-rotate{position:absolute;z-index:8;display:grid;place-items:center;width:36px;height:36px;padding:0;border:2px solid #5d91ff;border-radius:50%;background:#fff;color:#4c83f4;font:700 23px/1 Arial,sans-serif;cursor:grab;touch-action:none;box-shadow:0 2px 8px #1a315522;pointer-events:none}
.pdf-visual-added-text-item{z-index:7;overflow:visible!important;padding:0;border:1px dashed transparent;background:transparent;white-space:pre-wrap;line-height:1.2;cursor:move;user-select:none;touch-action:none}
.pdf-visual-added-text-item.is-selected,.pdf-visual-added-text-item:focus-visible{border:2px solid #4385f5!important;background:#4385f51a!important;outline:none}
.pdf-visual-added-text-item[contenteditable="true"]{z-index:9;border:2px solid #4385f5!important;background:#fff!important;cursor:text;user-select:text;white-space:pre-wrap;overflow:visible!important;outline:none}
.pdf-visual-added-image-item{touch-action:none;cursor:move}
.pdf-visual-object-rotate:active{cursor:grabbing}
.pricing-rights-table .pricing-check{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e8efff;color:#2563c8;font:700 18px/1 Arial,sans-serif}
.pricing-rights-table td{text-align:center}
.pdf-visual-object-rotate{opacity:0;visibility:hidden;transition:opacity .12s,visibility .12s}
.pdf-visual-object-rotate.is-selected{opacity:1;visibility:visible;pointer-events:auto}

.pdf-visual-text-controls{pointer-events:auto}
.pricing-rights-table thead th{text-align:center}

/* Immediate Alipay checkout actions on the legacy pricing panel. */
.plan-select--payment{display:inline-flex;align-items:center;justify-content:center;gap:9px}
.plan-select--payment .alipay-mark{display:block;flex:0 0 20px;width:20px;height:20px;background-color:currentColor;-webkit-mask:url("/_assets/25de07cdeee0018c/assets/alipay.svg") center/contain no-repeat;mask:url("/_assets/25de07cdeee0018c/assets/alipay.svg") center/contain no-repeat}
.plan-select--payment:disabled,.plan-select--payment:disabled:hover{border-color:#c8cfdf;background:#e7eaf2;color:#8a93a5;box-shadow:none;cursor:not-allowed}

/* Resize workspace: align the full tool content to 1440px and keep settings compact. */
.workspace:has(#panel-resize.active){max-width:1508px}
.resize-drop.hero-dropzone{width:100%;max-width:1440px}
#resizeList{padding-top:15px}
#resizeList>.resize-preview{box-sizing:border-box;width:auto;min-width:0;padding:0}
.resize-settings{gap:10px;padding:14px}
.resize-settings>strong{font-size:12px;line-height:1.25}
.resize-heading-actions{gap:6px}
.resize-heading-actions .ghost-btn.small{padding:5px 8px}
.resize-settings .dimension-row{gap:6px}
.resize-settings .dimension-row input[type="number"]{height:32px;padding:5px 8px}
.resize-rotation-controls{gap:6px}
.resize-rotation-controls>div{gap:5px}
.resize-rotation-controls button{padding:5px 7px;font-size:10px}
.resize-note{font-size:11px;line-height:1.45}
.resize-options{gap:6px}
.resize-options .ghost-btn.small{padding:5px 7px;font-size:10px}
.resize-presets{gap:6px}
.resize-presets button{gap:3px;padding:7px 8px;font-size:11px}
.resize-presets small{font-size:10px}
.resize-format{font-size:12px}
.resize-format select{padding:6px 9px}
#resizeDownload{min-height:36px;padding:8px 12px}
.resize-watermark{padding:10px}
.resize-watermark-toggle>span{gap:2px}
.resize-watermark-toggle strong{font-size:13px}
.resize-watermark-toggle small,.resize-watermark-logo-fields>span{font-size:10px}
.resize-watermark-options{gap:7px 9px;margin-top:9px}
.resize-watermark-options>label,.resize-watermark-text-fields>label{gap:4px;font-size:11px}
.resize-watermark-options input:not([type=checkbox]):not([type=range]):not([type=color]),.resize-watermark-options select{height:32px;padding:5px 8px}
.resize-watermark-options input[type=color]{height:32px}
@media(min-width:801px){
  .resize-settings{max-height:calc(100dvh - 112px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}
}
#panel-resize.has-image>.panel-head{display:none}
.resize-control-group{display:grid;gap:6px;min-width:0}
.resize-control-group>strong{font-size:12px;line-height:1.25}
.resize-dim-rotate-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0}
.resize-settings .dimension-row.resize-inline-dimensions{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);gap:4px;min-width:0;flex-wrap:nowrap}
.resize-settings .dimension-row .resize-dimension-field{position:relative;display:block!important;min-width:0!important;flex:none!important;color:var(--muted);font-size:11px!important}
.resize-dimension-field>span{position:absolute;top:50%;left:9px;z-index:1;transform:translateY(-50%);color:var(--muted);font:600 11px/1 var(--mono);pointer-events:none}
.resize-settings .dimension-row .resize-dimension-field input[type="number"]{box-sizing:border-box;width:100%;min-width:0;height:32px;padding:5px 6px 5px 27px!important;border-radius:8px;font-size:12px!important}
.resize-settings .dimension-row .resize-lock-toggle{width:28px;height:32px;flex:0 0 28px}
.resize-settings .dimension-row .resize-lock-toggle .ratio-symbol{display:grid;width:28px;height:32px;place-items:center}
.resize-rotation-controls{display:flex;align-items:center;justify-content:flex-end;gap:4px;min-width:0;flex-wrap:nowrap}
.resize-rotation-controls .resize-rotate-btn{position:relative;display:grid;place-items:center;box-sizing:border-box;width:33px;min-width:33px;height:32px;min-height:32px;padding:2px!important;border-radius:8px}
.resize-rotate-btn svg{display:block;width:24px;height:24px;overflow:visible;fill:currentColor;stroke:none}
.resize-heading-actions{justify-content:flex-end;margin:0}
@media(max-width:400px){.resize-dim-rotate-row{gap:5px}.resize-settings .dimension-row.resize-inline-dimensions{grid-template-columns:minmax(0,1fr) 25px minmax(0,1fr);gap:3px}.resize-settings .dimension-row .resize-lock-toggle{width:25px;flex-basis:25px}.resize-settings .dimension-row .resize-lock-toggle .ratio-symbol{width:25px}.resize-rotation-controls .resize-rotate-btn{width:29px;min-width:29px}}
.resize-watermark-toggle{gap:8px}
.resize-watermark-toggle strong{font-size:13px}
.resize-watermark-options{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin-top:9px}
.resize-watermark-type-row,.resize-watermark-text-fields,.resize-watermark-logo-fields,.resize-watermark-options>.resize-watermark-pair-row{grid-column:1/-1}
.resize-watermark-type-row{display:grid;justify-items:center;min-width:0}
.resize-watermark-type-switch{display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid var(--line);border-radius:999px;background:#fff}
.resize-watermark-type-switch button{min-height:28px;padding:5px 14px;border:0;border-radius:999px;background:transparent;color:var(--muted);font:inherit;font-size:11px;font-weight:600;line-height:1.2;cursor:pointer}
.resize-watermark-type-switch button.active{background:var(--brand-blue);color:#fff;box-shadow:0 2px 6px #4969df35}
.resize-watermark-type-switch button:focus-visible{outline:2px solid var(--brand-blue);outline-offset:2px}
.resize-watermark-text-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:7px;min-width:0}
.resize-watermark-pair-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;min-width:0}
.resize-watermark-text-settings-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.resize-watermark-text-settings-row[hidden]{display:none}
.resize-watermark-control[hidden]{display:none}
.resize-watermark-control,.resize-watermark-text-input,.resize-watermark-range-field{display:grid;gap:4px;min-width:0;color:var(--muted);font-size:11px}
.resize-watermark-range-field{grid-template-columns:minmax(0,1fr) auto;align-items:center}
.resize-watermark-range-field input[type=range]{grid-column:1/-1;width:100%;margin:0;accent-color:var(--brand-blue)}
.resize-watermark-control select,.resize-watermark-text-input input{box-sizing:border-box;width:100%;min-width:0;height:32px;padding:5px 8px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text);font-size:12px}
.resize-watermark-control input[type=color]{box-sizing:border-box;width:100%;height:32px;padding:3px;border:1px solid var(--line);border-radius:8px;background:#fff}
.resize-watermark-options output{margin-left:auto;color:var(--muted);font-size:10px}
.resize-watermark-logo-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;min-width:0}
.resize-watermark-logo-upload-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.resize-watermark-logo-upload-row>span{flex:1 1 100px;min-width:0;overflow-wrap:anywhere;color:var(--muted);font-size:11px}
#resizeWatermarkTileLogoSlot .resize-watermark-control{width:100%}
.resize-options{display:flex;align-items:center;justify-content:flex-start;gap:3px;flex-wrap:nowrap;width:100%;min-width:0;overflow-x:auto;padding:3px;border:1px solid var(--line);border-radius:999px;background:var(--surface-2);scrollbar-width:none;-webkit-overflow-scrolling:touch}
.resize-options::-webkit-scrollbar{display:none}
.resize-options .ghost-btn.small{display:flex;flex:1 1 0;align-items:center;justify-content:center;box-sizing:border-box;min-width:max-content;min-height:28px;padding:5px 6px;border:1px solid transparent;border-radius:999px;background:transparent;color:var(--muted);font-size:10px;font-weight:600;line-height:1.1}
.resize-options .ghost-btn.small.active{border-color:transparent;background:var(--brand-blue);color:#fff;box-shadow:0 2px 6px #4969df30}
.resize-options .ghost-btn.small:focus-visible{outline:2px solid var(--brand-blue);outline-offset:1px}

/* Keep export actions anchored while the resize options scroll independently. */
.resize-settings{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:0;min-width:0;min-height:0;height:calc(100dvh - 104px);max-height:calc(100dvh - 104px);overflow:hidden;padding:0}
.resize-settings-scroll{display:grid;align-content:start;gap:10px;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:14px}
.resize-settings-footer{display:grid;gap:8px;padding:10px 14px 14px;border-top:1px solid var(--line);background:var(--surface);box-shadow:0 -6px 16px #1d293908}
.resize-settings-footer .resize-format{min-height:32px}
.resize-settings-footer #resizeDownload{width:100%;min-height:42px}
@media(min-width:801px){.resize-settings{height:calc(100dvh - 112px);max-height:calc(100dvh - 112px)}}
@media(max-width:800px){.resize-settings{height:calc(100dvh - 90px);max-height:calc(100dvh - 90px)}}

/* Keep resize selection guidance beside the select-all control. */
.resize-batch-toolbar-leading{display:flex;align-items:center;justify-content:flex-start;gap:10px;min-width:0}
.resize-batch-toolbar-leading>label{display:flex;align-items:center;gap:6px;white-space:nowrap}
.resize-batch-toolbar .resize-select-hint{flex:1 1 auto;min-width:0;text-align:left}
.resize-batch-toolbar #resizeCount{margin-left:auto;white-space:nowrap}

/* Keep selection controls visible without taking much room from the image list. */
.resize-batch-toolbar{position:sticky;top:0;z-index:30;min-height:38px;flex-wrap:nowrap;gap:10px;margin:0 0 8px;padding:5px 10px;border:1px solid var(--line);border-radius:10px;background:var(--surface);box-shadow:0 4px 12px #1d293910}
.resize-batch-toolbar-leading{flex:1 1 auto}
.resize-batch-toolbar-leading>label{font-size:13px}
.resize-batch-toolbar .resize-select-hint{font-size:12px}
.resize-batch-toolbar #resizeCount{font-size:13px}
@media(max-width:620px){.resize-batch-toolbar{gap:6px;padding-inline:8px}.resize-batch-toolbar-leading{gap:7px}.resize-batch-toolbar .resize-select-hint{font-size:10px}}

.resize-custom-size{display:grid;gap:6px;padding:8px;border:1px solid var(--line);border-radius:10px;background:var(--surface-2)}
.resize-custom-size-heading{display:flex;align-items:center;gap:6px;color:var(--text);font-size:11px;font-weight:600}
.resize-custom-size-heading small{color:var(--muted);font:10px/1 var(--mono)}
.resize-custom-size-row{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto;align-items:center;gap:6px;min-width:0}
.resize-custom-size-field{position:relative;display:block;min-width:0;color:var(--muted);font-size:10px}
.resize-custom-size-field>span{position:absolute;top:50%;left:8px;transform:translateY(-50%);pointer-events:none}
.resize-custom-size-field input{box-sizing:border-box;width:100%;min-width:0;height:32px;padding:5px 6px 5px 26px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text);font-size:12px}
.resize-custom-size-times{color:var(--muted);font-size:12px}

/* Keep the standalone image watermark workspace aligned with the resize tool. */
.document-image-workspace{margin-top:0}
.document-image-workspace[data-image-tool="watermark"]>#documentImageBack{display:none!important}
.document-image-workspace .utility-heading{margin:0 0 28px}
.document-image-workspace.has-files>.utility-heading,.document-image-workspace.has-files>.utility-drop{display:none}
.document-image-workspace .utility-drop{width:100%;max-width:1440px;margin:0 0 24px;text-align:center;cursor:pointer}
.document-image-workspace .utility-drop .utility-upload-action{display:inline-flex;min-height:40px;align-items:center;justify-content:center;padding:9px 15px;color:#fff}
.document-image-workspace .utility-layout{grid-template-columns:minmax(0,1fr) minmax(300px,360px);gap:24px;align-items:start;margin-top:0}
.document-image-workspace .utility-layout[hidden]{display:none!important}
.document-image-workspace .utility-main{min-width:0}
.document-image-workspace .utility-controls{position:sticky;top:20px;display:grid;grid-template-rows:minmax(0,1fr) auto;gap:0;box-sizing:border-box;min-width:0;min-height:0;height:calc(100dvh - 112px);max-height:calc(100dvh - 112px);overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}
.document-image-workspace .utility-settings{display:grid;grid-template-rows:minmax(0,1fr);min-height:0;height:100%;max-height:none;overflow:hidden;padding:0;border:0;border-radius:0;background:transparent}
.document-image-workspace .utility-settings[hidden]{display:none!important}
.document-image-workspace .utility-settings-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:14px}
.document-image-workspace .utility-settings-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px}
.document-image-workspace .utility-settings-heading h2{margin:0;font-size:14px}
.document-image-workspace .utility-settings-heading .ghost-btn{padding:5px 8px;font-size:11px}
.document-image-workspace .utility-settings label{gap:6px;margin:9px 0;font-size:12px}
.document-image-workspace .utility-settings input:not([type=checkbox]),.document-image-workspace .utility-settings select{padding:8px}
.document-image-workspace .utility-settings input[type=range]{width:100%;margin:0;accent-color:var(--brand)}
.document-image-workspace .utility-settings input[type=color]{height:34px}
.document-image-workspace .utility-settings .utility-note{margin:12px 0 0;font-size:11px;line-height:1.55}
.document-image-workspace .utility-settings label{display:grid}
.document-image-workspace .utility-settings label>output{margin-left:auto;color:var(--muted)}
.document-image-workspace .utility-settings input:not([type=checkbox]),.document-image-workspace .utility-settings select{box-sizing:border-box;width:100%;min-width:0}
.document-image-workspace .utility-controls-footer{padding:10px 14px 14px;border-top:1px solid var(--line);background:var(--surface);box-shadow:0 -6px 16px #1d293908}
.document-image-workspace #wmFormatControl{display:grid;gap:5px;margin:0;color:var(--muted);font-size:11px}
.document-image-workspace #wmFormatControl[hidden]{display:none!important}
.document-image-workspace #wmFormat{height:34px;border:1px solid var(--line);border-radius:8px;background:var(--surface-2);color:var(--text);font-size:12px}
.document-image-workspace #utilityProgress{min-height:18px;max-height:42px;overflow:auto;margin:5px 0 0;color:var(--muted);font-size:11px;line-height:1.4;overflow-wrap:anywhere}
.document-image-workspace .utility-actionbar{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:8px;margin:0;padding-top:9px}
.document-image-workspace .utility-actionbar button{width:100%;min-width:0;min-height:38px;justify-content:center;padding:8px 6px;font-size:11px}
.document-image-workspace .utility-batch-toolbar{margin:0;padding:5px 10px}
.document-image-workspace .utility-files{position:relative;display:block;width:100%;min-width:0;padding-top:8px}
.document-image-workspace .utility-file{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;box-sizing:border-box;min-width:0;min-height:0;margin:0;padding:0;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-md);background:var(--surface)}
.document-image-workspace .utility-file.selected{border-color:var(--brand-blue);box-shadow:0 0 0 1px #4969df20}
.document-image-workspace .utility-file .resize-source{flex:0 0 auto;max-width:calc(100% - 48px);margin:16px auto 0}
.document-image-workspace .utility-card-canvas{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:fill}
.document-image-workspace .utility-file .resize-filename{box-sizing:border-box;width:100%;margin:14px 0 6px;padding:0 14px;text-align:left;font-size:14px;line-height:1.4}
.document-image-workspace .utility-file .resize-meta{box-sizing:border-box;width:100%;margin:0;padding:0 14px 16px;text-align:left;font-size:12px;line-height:1.45}
.document-image-workspace .utility-file .asset-check{top:10px;left:10px}
.document-image-workspace .utility-file .asset-remove{top:8px;right:8px}
@media(max-width:800px){.document-image-workspace .utility-layout{grid-template-columns:1fr}.document-image-workspace .utility-controls{position:static;grid-row:1;height:min(70dvh,620px);max-height:70dvh}.document-image-workspace .utility-main{grid-row:2}}
@media(max-width:620px){.document-image-workspace .utility-files{padding-top:8px}.document-image-workspace .utility-file{position:absolute;display:flex;width:100%;margin:0}.document-image-workspace .utility-controls{height:min(70dvh,620px);max-height:70dvh}}
.document-image-workspace .utility-watermark-options{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin:9px 0 0}
.document-image-workspace .utility-watermark-options>.resize-watermark-type-row,.document-image-workspace .utility-watermark-options>.resize-watermark-text-fields,.document-image-workspace .utility-watermark-options>.resize-watermark-logo-fields,.document-image-workspace .utility-watermark-options>.resize-watermark-pair-row{grid-column:1/-1}
.document-image-workspace .utility-watermark-options .resize-watermark-type-row{justify-items:center}
.document-image-workspace .utility-watermark-options .resize-watermark-type-switch{margin:0}
.document-image-workspace .utility-watermark-options .resize-watermark-text-fields{gap:7px;margin:0}
.document-image-workspace .utility-watermark-options .resize-watermark-control,.document-image-workspace .utility-watermark-options .resize-watermark-text-input,.document-image-workspace .utility-watermark-options .resize-watermark-range-field{display:grid;gap:4px;min-width:0;margin:0;color:var(--muted);font-size:11px}
.document-image-workspace .utility-watermark-options .resize-watermark-text-settings-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.document-image-workspace .utility-watermark-options .resize-watermark-control select,.document-image-workspace .utility-watermark-options .resize-watermark-text-input input{box-sizing:border-box;width:100%;min-width:0;height:32px;padding:5px 8px;border:1px solid var(--line);border-radius:8px;background:#fff;color:var(--text);font-size:12px}
.document-image-workspace .utility-watermark-options .resize-watermark-control input[type=color]{box-sizing:border-box;width:100%;height:32px;padding:3px;border:1px solid var(--line);border-radius:8px;background:#fff}
.document-image-workspace .utility-watermark-options .resize-watermark-range-field{grid-template-columns:minmax(0,1fr) auto;align-items:center}
.document-image-workspace .utility-watermark-options .resize-watermark-range-field input[type=range]{grid-column:1/-1;width:100%;margin:0;accent-color:var(--brand-blue)}
.document-image-workspace .utility-watermark-options .resize-watermark-range-field output{margin-left:auto;color:var(--muted);font-size:10px}
.document-image-workspace .utility-watermark-options .resize-watermark-logo-fields{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;min-width:0}
.document-image-workspace .utility-watermark-options .resize-watermark-logo-upload-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0}
.document-image-workspace .utility-watermark-options .resize-watermark-logo-upload-row>label{display:inline-flex;align-items:center;justify-content:center;gap:4px;margin:0;padding:5px 8px;font-size:11px}
.document-image-workspace .utility-watermark-options .resize-watermark-logo-upload-row>span{flex:1 1 100px;min-width:0;overflow-wrap:anywhere;color:var(--muted);font-size:10px}
.document-image-workspace .utility-watermark-options #wmLogoTileSlot .resize-watermark-control{width:100%}
.document-image-workspace .utility-watermark-options .resize-watermark-control[hidden],.document-image-workspace .utility-watermark-options .resize-watermark-text-settings-row[hidden],.document-image-workspace .utility-watermark-options .resize-watermark-logo-fields[hidden]{display:none!important}
.resize-drop .resize-upload-action{display:inline-flex;min-height:40px;align-items:center;justify-content:center;margin-top:8px;padding:9px 15px;border-radius:9px;color:#fff;font-size:12px}
.resize-heading-actions #resizeReplace{color:#fff}
.document-image-workspace .utility-settings-heading-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;min-width:0}
.document-image-workspace .utility-settings-heading-actions .primary-btn{padding:5px 8px;color:#fff;font-size:11px}
.document-image-workspace .utility-actionbar{grid-template-columns:minmax(0,1fr)}
.resize-custom-size-row #resizeCustomApply{min-height:32px;padding:5px 9px}

/* Image optimizer: compact per-image rotation controls and vector preview badge. */
.asset-controls .asset-dimension-rotation-row{grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr) 68px;gap:4px;flex-wrap:nowrap}
.asset-controls .asset-dimension-rotation-row>label:not(.lock-ratio){gap:4px;white-space:nowrap}
.asset-controls .asset-dimension-rotation-row input[type="number"]{flex:1;width:0;min-width:0;padding:5px 4px}
.asset-rotation-controls{display:flex;align-items:center;justify-content:flex-end;gap:4px;min-width:0}
.asset-rotate-btn{box-sizing:border-box;display:grid;place-items:center;width:32px;min-width:32px;height:32px;min-height:32px;padding:0!important;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:#454b55}
.asset-rotate-btn svg{display:block;width:27px;height:27px;overflow:visible;fill:currentColor;stroke:none}
.asset-rotate-btn svg path{fill:currentColor;stroke:none}
.asset-rotate-btn:hover,.asset-rotate-btn:focus-visible{border-color:var(--brand-blue);background:var(--brand-blue-soft);color:var(--brand-blue)}
.asset-rotate-btn:focus-visible{outline:2px solid var(--brand-blue);outline-offset:2px}
.asset-thumb-preview .asset-vector-badge{position:absolute;z-index:2;left:9px;bottom:9px;padding:5px 8px;border:1px solid #ffffff55;border-radius:999px;background:#27334fe8;color:#fff;font-size:11px;font-weight:650;line-height:1.2;letter-spacing:.02em;pointer-events:none;backdrop-filter:blur(6px)}
@media(max-width:380px){.asset-controls .asset-dimension-rotation-row{grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr) 64px;gap:3px}.asset-controls .asset-dimension-rotation-row .ratio-toggle{width:28px;height:32px}.asset-rotation-controls{gap:2px}.asset-rotate-btn{width:30px;min-width:30px}}

/* Keep image cards still while lazy thumbnails decode, and avoid loading full-size photos into every card. */
.asset-card .asset-thumb-preview{height:auto;min-height:0;aspect-ratio:var(--asset-aspect-ratio);overflow:hidden}
.asset-card .asset-thumb-preview>img{display:block;width:100%;height:100%;max-width:none;max-height:none;margin:0;object-fit:contain}

/* Bounded batch processing and streaming export status. */
.batch-job-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 14px;margin:12px 0;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 4px 14px #1d293908}
.batch-job-panel[hidden]{display:none!important}
.batch-job-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;min-width:0;color:var(--text);font-size:12px;font-weight:600}
#batchJobStatus{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#batchJobCount{flex:none;color:var(--muted);font:11px var(--mono)}
.batch-job-track{grid-column:1/-1;height:6px;overflow:hidden;border-radius:999px;background:var(--surface-2,#eef0f4)}
.batch-job-track i{display:block;width:0;height:100%;border-radius:inherit;background:var(--brand-blue);transition:width .18s ease}
.batch-job-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;grid-column:1/-1}
.batch-job-actions button{min-height:30px;padding:4px 10px;font-size:11px}
.batch-job-actions button[hidden]{display:none!important}
.tool-job-controls{display:grid;gap:7px;width:100%;min-width:0}
.tool-job-controls[hidden]{display:none!important}
.tool-job-status{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;color:var(--muted);font-size:11px}
.tool-job-status>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tool-job-status>span:last-child{flex:none;font:10px var(--mono)}
.tool-job-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}
.tool-job-actions button{min-height:28px;padding:3px 9px;font-size:10px}
.tool-job-actions button[hidden]{display:none!important}
.utility-job-controls{margin:8px 0}
@media(max-width:620px){.batch-job-panel{margin:8px 0;padding:10px}.batch-job-heading{font-size:11px}.batch-job-actions{justify-content:flex-start}}

/* WPS-inspired PDF workspace: compact app bar, contextual ribbon, page rail and light canvas. */
.pdf-visual-editor{background:#f5f7fa;color:#263244}
.pdf-visual-editor[open]{display:flex;flex-direction:column}
.pdf-visual-head{min-height:48px;gap:12px;padding:5px 16px;background:#f5f7fa;border-bottom:1px solid #dce2ea;color:#263244}
.pdf-visual-brand{flex:1 1 auto;gap:20px}
.pdf-visual-logo{display:flex;flex:none;align-items:center;gap:8px;color:#263244;text-decoration:none;font-size:18px;font-weight:680;letter-spacing:-.04em}
.pdf-visual-logo img{display:block;width:29px;height:29px;border-radius:7px}
.pdf-visual-file{display:flex;min-width:0;align-items:center;gap:10px}
.pdf-visual-file strong{max-width:min(42vw,560px);overflow:hidden;color:#263244;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:520}
.pdf-visual-file-state{flex:none!important;padding:3px 7px;border:1px solid #dce2ea;border-radius:999px;color:#647084!important;font-size:10px!important}
.pdf-visual-head-actions{gap:7px}
.pdf-visual-head-actions .pdf-visual-file{margin-left:5px;padding-left:14px;border-left:1px solid #dce2ea}
.pdf-visual-head-actions .pdf-visual-file strong{max-width:min(26vw,380px)}
.pdf-visual-head-button{min-height:32px;padding:0 12px;border:1px solid #dce2ea;border-radius:6px;background:#f5f7fa;color:#263244;font:inherit;font-size:12px;cursor:pointer}
.pdf-visual-head-button:hover:not(:disabled){border-color:#dce2ea;background:#ffffff}
.pdf-visual-head-button:disabled{opacity:.45;cursor:not-allowed}
.pdf-visual-head-button.pdf-visual-save{border-color:#4a70e8;background:#4b68df;color:#fff}
.pdf-visual-head-button.pdf-visual-save:hover:not(:disabled){background:#5b79ed}
.pdf-visual-tabbar{display:flex;flex:none;min-height:36px;align-items:stretch;gap:2px;padding:0 14px;background:#f5f7fa;border-bottom:1px solid #dce2ea}
.pdf-visual-tabbar.pdf-visual-head-nav{min-height:36px;align-self:stretch;align-items:stretch;margin-left:8px;padding:0 10px;border:0;border-right:1px solid #dce2ea;border-left:1px solid #dce2ea;background:transparent}
.pdf-visual-tabs{display:flex;min-width:0;align-items:stretch;gap:2px}
.pdf-visual-history{display:flex;flex:none;align-items:center;gap:2px;padding-right:10px}
.pdf-visual-tabbar .pdf-visual-history-button{display:grid;min-width:34px;width:34px;height:30px;place-items:center;padding:0;border:0;border-radius:4px;background:transparent;color:#647084;cursor:pointer}
.pdf-visual-history-button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}
.pdf-visual-tabbar .pdf-visual-history-button:hover:not(:disabled){background:#ffffff;color:#263244}
.pdf-visual-tabbar .pdf-visual-history-button:disabled{background:transparent;color:#737373;opacity:.58;cursor:default}
.pdf-visual-tabs-divider{width:1px;height:20px;flex:none;margin:0 7px 0 0;background:#edf1f7}
.pdf-visual-tabs button{position:relative;min-width:58px;padding:0 13px;border:0;background:transparent;color:#647084;font:inherit;font-size:12px;cursor:pointer}
.pdf-visual-tabs button:hover{background:#ffffff;color:#263244}
.pdf-visual-tabs button[aria-selected="true"]{color:#263244}
.pdf-visual-tabs button[aria-selected="true"]::after{position:absolute;right:10px;bottom:0;left:10px;height:2px;background:#6386ff;content:""}
.pdf-visual-tabs-spacer{flex:1}
.pdf-visual-local-badge{display:flex;align-items:center;gap:6px;padding:0 8px;color:#647084;font-size:10px}
.pdf-visual-local-badge i{width:7px;height:7px;border-radius:50%;background:#46bd78;box-shadow:0 0 8px #46bd7855}
.pdf-visual-tools{display:flex;flex:none;min-height:64px;align-items:stretch;justify-content:flex-start;gap:0;padding:2px 12px;background:#f5f7fa;border-bottom:1px solid #dce2ea;box-shadow:none}
.pdf-visual-ribbon-panel{display:flex;min-width:0;align-items:stretch;gap:0}
.pdf-visual-ribbon-panel[hidden]{display:none!important}
.pdf-visual-tool-group{display:flex;align-items:center;gap:3px;padding:2px 10px;border-right:1px solid #dce2ea}
.pdf-visual-tools button{display:flex;min-width:57px;height:56px;align-items:center;justify-content:center;flex-direction:column;gap:3px;padding:4px 8px;border:1px solid transparent;border-radius:5px;background:transparent;color:#263244;font-size:12px;cursor:pointer}
.pdf-visual-tools button b{color:#263244;font-size:21px;font-weight:450;line-height:1}
.pdf-visual-tools button span{color:inherit;font-size:10px;white-space:nowrap}
.pdf-visual-tools button:hover:not(:disabled){background:#ffffff;color:#263244}
.pdf-visual-tools button.is-active{border-color:#4c639e;background:#edf1f7;color:#263244}
.pdf-visual-tools button.is-active b{color:#91adff}
.pdf-visual-tools button:disabled{opacity:.4;cursor:not-allowed}
.pdf-visual-tool-settings{gap:14px}
.pdf-visual-tools label{display:flex;align-items:center;gap:6px;padding:0 4px;color:#647084;font-size:11px}
.pdf-visual-color input{width:25px;height:25px;padding:1px;border:1px solid #dce2ea;border-radius:4px;background:#ffffff}
.pdf-visual-size input{width:90px;accent-color:#6e8eff}
.pdf-visual-ribbon-note,.pdf-visual-page-total{display:flex;align-items:center;padding:0 16px;color:#647084;font-size:11px}
.pdf-visual-page-panel{align-items:center}
.pdf-visual-page-total{min-width:120px;color:#263244;font-size:12px}
.pdf-visual-body{background:#ffffff}
.pdf-visual-pages{width:196px;background:#f5f7fa;border-right:1px solid #dce2ea}
.pdf-visual-page-nav{min-height:44px;border-bottom:1px solid #dce2ea;background:#f5f7fa;color:#263244}
.pdf-visual-page-nav button{background:transparent;color:#263244}
.pdf-visual-page-nav button:hover:not(:disabled){background:#ffffff}
.pdf-visual-page-nav button:disabled{color:#696969}
.pdf-visual-page-counter{display:flex;flex:1;min-width:0;justify-content:center}
.pdf-visual-page-nav .pdf-visual-page-count,.pdf-visual-page-input{box-sizing:border-box;width:100%;max-width:110px;height:28px;padding:0 7px;border:1px solid #dce2ea;border-radius:6px;background:#ffffff;color:#263244;font:inherit;font-size:13px;line-height:1;text-align:center}
.pdf-visual-page-nav .pdf-visual-page-count{font-size:13px;cursor:pointer}
.pdf-visual-page-nav .pdf-visual-page-count:hover:not(:disabled){border-color:#dce2ea;background:#ffffff}
.pdf-visual-page-nav .pdf-visual-page-count:disabled{border-color:transparent;background:transparent;color:#696969;cursor:default}
.pdf-visual-page-input{outline:none}
.pdf-visual-page-input:focus{border-color:#6687ff;box-shadow:0 0 0 1px #6687ff55}
.pdf-visual-page-input[hidden],.pdf-visual-page-count[hidden]{display:none!important}
.pdf-visual-thumbs{gap:11px;padding:12px;background:#f5f7fa}
.pdf-visual-thumb{padding:4px 4px 3px;border-color:transparent;border-radius:5px;background:#f5f7fa}
.pdf-visual-thumb:hover{border-color:#dce2ea}
.pdf-visual-thumb.is-active{border-color:#6687ff;box-shadow:0 0 0 1px #6687ff44}
.pdf-visual-thumb-preview{border-color:#dce2ea;background:#ffffff}
.pdf-visual-thumb-number{color:#647084}
.pdf-visual-workspace{padding:24px;background:#ffffff;scroll-behavior:auto}
.pdf-visual-document{gap:20px;padding:8px 0 36px}
.pdf-visual-stage{box-shadow:0 3px 18px #0008}
.pdf-visual-empty{color:#647084}
.pdf-visual-empty strong{color:#263244}
.pdf-visual-foot{min-height:30px;padding:4px 12px;background:#f5f7fa;border-top:1px solid #dce2ea;color:#647084;font-size:10px}
.pdf-visual-editbar{background:#ffffff;border-bottom-color:#dce2ea;color:#263244}
.pdf-visual-text-controls button,.pdf-visual-editbar>#pdfVisualDeleteSelection{border-color:#dce2ea;background:#ffffff;color:#263244}
.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item:hover,.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item:focus-visible{outline-color:#6d8eff;background:#6386ff22}

/* A loaded PDF takes over the viewport as a focused editing workspace. */
html[data-pdf-editor-active],html[data-pdf-editor-active] body{width:100%;height:100%;min-width:0;min-height:0;overflow:hidden;background:#f5f7fa}
html[data-pdf-editor-active] .app-shell{width:100%;height:100%;min-height:0;overflow:hidden}
html[data-pdf-editor-active] .topbar,html[data-pdf-editor-active] .landing-header,html[data-pdf-editor-active] .tool-route-breadcrumb,html[data-pdf-editor-active] .document-upload-page,html[data-pdf-editor-active] .tool-guide,html[data-pdf-editor-active] .seo-directory{display:none!important}
html[data-pdf-editor-active] .pdf-visual-editor[open]{position:fixed;z-index:1000;inset:0;width:100vw;height:100vh;height:100dvh;max-width:none;max-height:none;margin:0;border:0;border-radius:0}
.pdf-visual-home{flex:none;white-space:nowrap}
@media(max-width:700px){.pdf-visual-head{min-height:44px;padding:5px 8px;gap:6px}.pdf-visual-brand{flex:1 1 auto;min-width:0;align-items:center;flex-direction:row;gap:8px}.pdf-visual-logo span{display:none}.pdf-visual-file{gap:5px}.pdf-visual-file strong{max-width:24vw;font-size:11px}.pdf-visual-file-state{display:none!important}.pdf-visual-head-actions{gap:4px}.pdf-visual-head-button{min-height:30px;padding:0 8px;font-size:10px}.pdf-visual-tabbar{min-height:34px;padding:0 5px}.pdf-visual-tabbar.pdf-visual-head-nav{min-height:32px;margin-left:3px;padding:0 4px;overflow:visible}.pdf-visual-tabs button{min-width:52px;padding:0 8px}.pdf-visual-head-nav .pdf-visual-tabs button{min-width:42px;padding:0 5px;font-size:11px}.pdf-visual-history{gap:0;padding-right:5px}.pdf-visual-tabbar .pdf-visual-history-button{min-width:28px;width:28px;height:28px}.pdf-visual-history-button svg{width:19px;height:19px}.pdf-visual-tabs-divider{margin-right:3px}.pdf-visual-tools{min-height:58px;padding:2px 4px;overflow-x:auto}.pdf-visual-ribbon-panel{flex:none}.pdf-visual-tool-group{gap:1px;padding:2px 5px}.pdf-visual-tools button{min-width:48px;height:50px;padding:3px 4px}.pdf-visual-tools button b{font-size:18px}.pdf-visual-tools button span{font-size:9px}.pdf-visual-tool-settings{gap:5px}.pdf-visual-size input{width:55px}.pdf-visual-ribbon-note{display:none}.pdf-visual-pages{width:100px}.pdf-visual-page-nav{gap:2px;padding:0 4px;justify-content:space-between}.pdf-visual-page-nav>button:not(.pdf-visual-page-count){flex:0 0 22px;width:22px;font-size:21px}.pdf-visual-page-nav .pdf-visual-page-count,.pdf-visual-page-input{max-width:none;height:26px;padding:0 2px;font-size:10px}.pdf-visual-page-nav .pdf-visual-page-count{font-size:10px}.pdf-visual-thumb{width:78px}.pdf-visual-thumbs{padding:8px 5px}.pdf-visual-workspace{padding:12px 8px}.pdf-visual-document{gap:12px;padding-top:5px}.pdf-visual-foot{font-size:9px}}
@media(max-width:700px){.pdf-visual-head-actions .pdf-visual-file{margin-left:2px;padding-left:6px}.pdf-visual-head-actions .pdf-visual-file strong{max-width:21vw;font-size:10px}}

/* Paragraph selection mirrors a desktop word processor's text object controls. */
.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-layer{overflow:visible}
.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item{outline:1px dashed #858585!important;outline-offset:2px;background:transparent!important}
.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item:hover,.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item:focus-visible{outline-color:#777!important;background:transparent!important}
.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item.is-selected{outline:none!important;background:transparent!important}
.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item.is-editing{outline:2px solid #4d7dff!important;background:#fff!important}
.pdf-visual-text-selection-frame{position:absolute;z-index:35;box-sizing:border-box;border:1px solid #4d7dff;pointer-events:none;touch-action:none}
.pdf-visual-text-selection-frame[hidden]{display:none!important}
.pdf-visual-text-handle,.pdf-visual-text-rotate{position:absolute;display:block;box-sizing:border-box;padding:0;border:1px solid #dce2ea;border-radius:50%;background:#fff;color:#535353;box-shadow:0 1px 3px #0003;pointer-events:auto;touch-action:none;cursor: nwse-resize}
.pdf-visual-text-handle{width:10px;height:10px;transform:translate(-50%,-50%)}
.pdf-visual-text-handle.is-nw,.pdf-visual-text-handle.is-se{cursor:nwse-resize}
.pdf-visual-text-handle.is-ne,.pdf-visual-text-handle.is-sw{cursor:nesw-resize}
.pdf-visual-text-handle.is-n,.pdf-visual-text-handle.is-s{cursor:ns-resize}
.pdf-visual-text-handle.is-e,.pdf-visual-text-handle.is-w{cursor:ew-resize}
.pdf-visual-text-handle.is-nw{top:0;left:0}.pdf-visual-text-handle.is-n{top:0;left:50%}.pdf-visual-text-handle.is-ne{top:0;left:100%}
.pdf-visual-text-handle.is-e{top:50%;left:100%}.pdf-visual-text-handle.is-se{top:100%;left:100%}.pdf-visual-text-handle.is-s{top:100%;left:50%}
.pdf-visual-text-handle.is-sw{top:100%;left:0}.pdf-visual-text-handle.is-w{top:50%;left:0}
.pdf-visual-text-rotate{top:-39px;left:50%;width:25px;height:25px;transform:translateX(-50%);border-color:#b4b4b4;font-size:18px;line-height:22px;cursor:grab}
.pdf-visual-text-rotate::after{position:absolute;top:23px;left:50%;width:1px;height:15px;background:#edf1f7;content:""}
.pdf-visual-text-rotate:active{cursor:grabbing}
.pdf-visual-editbar.is-floating-text{position:fixed;z-index:1200;display:flex;width:min(680px,calc(100vw - 16px));min-height:0;box-sizing:border-box;align-items:stretch;justify-content:flex-start;flex-direction:column;gap:6px;padding:8px;border:1px solid #dce2ea;border-radius:10px;background:rgb(255 255 255 / 96%);box-shadow:0 12px 32px #0007;backdrop-filter:blur(9px);overflow:visible;color:#263244}
.pdf-visual-editbar.is-floating-text .pdf-visual-text-controls{display:flex;min-width:0;align-items:stretch;flex-direction:column;gap:5px;padding:0;border:0;background:transparent;box-shadow:none}
.pdf-visual-text-toolbar-row{display:flex;min-width:0;align-items:center;flex-wrap:wrap;gap:5px}
.pdf-visual-text-controls label{display:flex;min-height:34px;align-items:center;gap:5px;padding:0 6px;border:1px solid #dce2ea;border-radius:5px;color:#263244;font-size:12px;white-space:nowrap}
.pdf-visual-font-select{flex:0 1 210px;min-width:130px}.pdf-visual-font-select select{flex:1;min-width:0!important}
.pdf-visual-text-controls select,.pdf-visual-text-controls input[type=number]{height:32px;min-width:84px;padding:0 7px;border-color:#dce2ea;border-radius:4px;background:#ffffff;color:#263244;font-size:12px}
.pdf-visual-text-controls input[type=number]{width:52px;min-width:52px;text-align:center}
.pdf-visual-font-stepper{display:flex;align-items:center;gap:3px;padding:2px;border:1px solid #dce2ea;border-radius:5px;background:#ffffff}
.pdf-visual-font-stepper button{min-width:29px!important;min-height:28px!important;padding:0 4px!important;border:0!important;background:transparent!important;color:#263244!important}
.pdf-visual-font-stepper input[type=number]{height:28px;border:0!important;background:transparent!important}
.pdf-visual-text-controls button{min-width:35px;min-height:34px;padding:0 8px;border-color:#dce2ea;border-radius:5px;background:#ffffff;color:#263244;font-size:14px}
.pdf-visual-text-controls button:hover:not(:disabled),.pdf-visual-text-controls button[aria-pressed="true"]{border-color:#8ba8ff;background:#34466d;color:#fff}
.pdf-visual-text-controls input[type=color]{width:29px;height:25px;padding:1px;border-color:#dce2ea;border-radius:4px;background:#ffffff}
.pdf-visual-underline-icon{text-decoration:underline;text-underline-offset:3px}.pdf-visual-highlight-icon{color:#fff176;text-shadow:0 0 4px #fff176}
.pdf-visual-editbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px}
.pdf-visual-editbar-actions button{display:inline-flex;min-height:29px;align-items:center;justify-content:center;gap:6px;padding:0 10px;border:1px solid #dce2ea;border-radius:5px;background:#ffffff;color:#263244;font:inherit;font-size:12px;cursor:pointer}
.pdf-visual-editbar-actions button:hover:not(:disabled){border-color:#8ba8ff;background:#34466d}
.pdf-visual-editbar.is-floating-text #pdfVisualDeleteSelection{background:#edf1f7;color:#263244}
.pdf-visual-editbar.is-floating-text #pdfVisualTextDone{background:#4b68df;color:#fff}
@media(max-width:700px){.pdf-visual-editbar.is-floating-text{width:calc(100vw - 16px);max-height:min(48vh,240px);overflow:auto}.pdf-visual-text-toolbar-row{gap:4px}.pdf-visual-text-controls label{font-size:11px}}

/* Let the home button's hover/focus treatment paint outside the filename row. */
.pdf-visual-brand{overflow:visible}
.pdf-visual-page-menu{position:fixed;z-index:1200;display:flex;width:min(184px,calc(100vw - 16px));box-sizing:border-box;flex-direction:column;padding:6px;border:1px solid #dce2ea;border-radius:8px;background:#ffffff;box-shadow:0 12px 36px #0009;color:#263244}
.pdf-visual-page-menu[hidden]{display:none!important}
.pdf-visual-page-menu button{min-height:36px;padding:0 11px;border:0;border-radius:5px;background:transparent;color:inherit;font:inherit;font-size:13px;text-align:left;cursor:pointer}
.pdf-visual-page-menu button:hover:not(:disabled),.pdf-visual-page-menu button:focus-visible{outline:0;background:#ffffff;color:#263244}
.pdf-visual-page-menu button:disabled{opacity:.38;cursor:default}
.pdf-visual-page-menu button.is-danger{color:#ff9b9b}
.pdf-visual-page-menu-submenu-wrap{width:100%}
.pdf-visual-page-menu-submenu-wrap>[data-page-action="insert"]{display:flex;width:100%;box-sizing:border-box;align-items:center;justify-content:space-between}
.pdf-visual-thumb.is-page-selected{border-color:#6687ff;box-shadow:0 0 0 1px #6687ff44}
.pdf-visual-thumb.is-active.is-page-selected{border-color:#6687ff;box-shadow:0 0 0 2px #6687ff66}
.pdf-visual-page-menu-separator{height:1px;margin:5px 5px;background:#edf1f7}
.pdf-visual-workspace{scroll-behavior:auto}
.pdf-visual-page-menu-submenu-wrap{position:relative}
.pdf-visual-page-menu-submenu-wrap>button{display:flex;align-items:center;justify-content:space-between;gap:18px}
.pdf-visual-page-menu-submenu-wrap>button span{color:#647084;font-size:20px;line-height:1}
.pdf-visual-page-menu-submenu-wrap.is-open>button,.pdf-visual-page-menu-submenu-wrap:hover>button{background:#ffffff;color:#263244}
.pdf-visual-page-submenu{position:absolute;top:-7px;left:calc(100% + 6px);display:flex;width:min(210px,calc(100vw - 16px));box-sizing:border-box;flex-direction:column;padding:6px;border:1px solid #dce2ea;border-radius:8px;background:#ffffff;box-shadow:0 12px 36px #0009;color:#263244}
.pdf-visual-page-submenu[hidden]{display:none!important}
.pdf-visual-page-menu.opens-submenu-left .pdf-visual-page-submenu{right:calc(100% + 6px);left:auto}
.pdf-visual-page-menu.opens-submenu-overlap .pdf-visual-page-submenu{top:36px;right:auto;left:0}
.pdf-visual-page-submenu button{white-space:nowrap}
.pdf-visual-page-action-menu{top:auto;bottom:0;left:calc(100% + 8px);z-index:8;width:min(210px,calc(100vw - 16px))}
.pdf-visual-page-action-menu.opens-left{right:calc(100% + 8px);left:auto}
.pdf-visual-page-action-menu button{min-height:38px;padding:0 12px;border:0;border-radius:5px;background:transparent;color:inherit;font:inherit;font-size:14px;text-align:left;white-space:nowrap;cursor:pointer}
.pdf-visual-page-action-menu button:hover,.pdf-visual-page-action-menu button:focus-visible{outline:0;background:#ffffff;color:#263244}

/* Compact WPS-style zoom controls; keep zoomed pages scrollable horizontally. */
.pdf-visual-foot{justify-content:space-between;gap:12px}
#pdfVisualStatus{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pdf-visual-zoom{display:flex;flex:none;align-items:center;gap:10px;color:#263244}
.pdf-visual-zoom button{display:grid;width:24px;height:28px;place-items:center;padding:0;border:0;border-radius:0;background:transparent;color:#647084;font-size:27px;font-weight:300;line-height:1;cursor:pointer}
.pdf-visual-zoom button:hover:not(:disabled){background:transparent;color:#263244}
.pdf-visual-zoom button:disabled{opacity:.38;cursor:default}
.pdf-visual-zoom button:focus-visible,.pdf-visual-zoom select:focus-visible,.pdf-visual-zoom-slider:focus-visible{outline:1px solid #6687ff;outline-offset:2px}
.pdf-visual-zoom select{width:76px;height:28px;padding:0 3px;border:0;border-radius:0;background:transparent;color:#263244;font:inherit;font-size:14px;cursor:pointer}
.pdf-visual-zoom-slider{width:clamp(100px,12vw,210px);height:18px;margin:0;appearance:none;background:transparent;cursor:pointer}
.pdf-visual-zoom-slider::-webkit-slider-runnable-track{height:4px;border-radius:4px;background:linear-gradient(to right,#4d7dff 0 var(--pdf-zoom-progress,25%),#edf1f7 var(--pdf-zoom-progress,25%) 100%)}
.pdf-visual-zoom-slider::-webkit-slider-thumb{width:14px;height:14px;margin-top:-5px;appearance:none;border:2px solid #dce2ea;border-radius:50%;background:#ffffff}
.pdf-visual-zoom-slider::-moz-range-track{height:4px;border-radius:4px;background:#edf1f7}
.pdf-visual-zoom-slider::-moz-range-progress{height:4px;border-radius:4px;background:#4d7dff}
.pdf-visual-zoom-slider::-moz-range-thumb{width:10px;height:10px;border:2px solid #dce2ea;border-radius:50%;background:#ffffff}
.pdf-visual-workspace{justify-content:flex-start}
.pdf-visual-document{flex:none;width:max-content;min-width:100%;max-width:none}
.pdf-visual-stage{max-width:none}
@media(max-width:700px){.pdf-visual-foot{gap:6px;padding:4px 7px}.pdf-visual-zoom{gap:5px}.pdf-visual-zoom-slider{width:clamp(54px,17vw,110px)}.pdf-visual-zoom button{width:20px;height:24px;font-size:23px}.pdf-visual-zoom select{width:62px;height:24px;font-size:12px}}

/* Keep PDF text controls and handles visually steady in the light editor. */
.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item{cursor:default}
.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item.is-editing{cursor:text}
.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item.is-selected{cursor:grab;touch-action:none}
.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item.is-moving{cursor:grabbing}
.pdf-visual-editor .pdf-visual-text-handle:not(:disabled):hover,.pdf-visual-editor .pdf-visual-text-handle:not(:disabled):active{transform:translate(-50%,-50%);filter:none}
.pdf-visual-editor .pdf-visual-text-rotate:not(:disabled):hover,.pdf-visual-editor .pdf-visual-text-rotate:not(:disabled):active{transform:translateX(-50%);filter:none}
.pdf-visual-editor .pdf-visual-object-rotate:not(:disabled):hover,.pdf-visual-editor .pdf-visual-object-rotate:not(:disabled):active{transform:none;filter:none}
.pdf-visual-added-text-item:not([contenteditable="true"]):not(.is-selected){border:1px dashed #858585!important;background:transparent!important}
.pdf-visual-added-text-item:not([contenteditable="true"]):not(.is-selected):is(:hover,:focus-visible){border:1px dashed #858585!important;background:transparent!important}
.pdf-visual-added-text-item[contenteditable="true"]+.pdf-visual-object-rotate::after{position:absolute;top:100%;left:50%;width:1px;height:16px;background:#858585;content:""}
.pdf-visual-tabs-divider{align-self:center}
.pdf-visual-editor .pdf-visual-text-item.is-editing,.pdf-visual-editor .pdf-visual-added-text-item[contenteditable="true"]{box-sizing:border-box;min-height:1.3em;padding:0;border:2px solid #4d7dff!important;outline:none!important;background:#fff!important;caret-color:auto;cursor:text;pointer-events:auto;user-select:text;white-space:pre-wrap}
.pdf-visual-editor[data-tool="text"] .pdf-visual-text-layer{overflow:visible}
.pdf-visual-text-controls{border-color:#dce2ea;background:#ffffff;color:#263244;box-shadow:0 2px 8px #0003}
.pdf-visual-text-controls label{border-color:#dce2ea;color:#263244}
.pdf-visual-text-controls select,.pdf-visual-text-controls input[type="number"]{border-color:#dce2ea;background:#ffffff;color:#263244;color-scheme:light}
.pdf-visual-text-controls input[type="color"]{border-color:#dce2ea;background:#ffffff;color-scheme:light}
.pdf-visual-text-controls button{border-color:#dce2ea;background:#ffffff;color:#263244}
.pdf-visual-text-controls button[aria-pressed="true"]{border-color:#6e8eff;background:#35466d;color:#fff}

/* Open documents and inserted-image editing controls. */
.pdf-visual-image-controls{display:flex;min-width:0;flex-direction:column;gap:7px;padding:0;border:0;background:transparent}
.pdf-visual-image-controls[hidden],.pdf-visual-image-crop[hidden]{display:none!important}
.pdf-visual-image-toolbar-row{display:flex;align-items:center;flex-wrap:wrap;gap:5px}
.pdf-visual-image-controls button{min-width:34px;min-height:32px;padding:0 8px;border:1px solid #dce2ea;border-radius:5px;background:#ffffff;color:#263244;font:inherit;font-size:13px;cursor:pointer}
.pdf-visual-image-controls button:hover:not(:disabled){border-color:#8ba8ff;background:#34466d;color:#fff}
.pdf-visual-image-controls button.pdf-visual-image-action{display:inline-flex;min-height:38px;align-items:center;justify-content:center;gap:6px;padding:0 9px;white-space:nowrap}
.pdf-visual-image-controls button.pdf-visual-image-action>svg,.pdf-visual-editbar-actions button>svg{display:block;width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}
.pdf-visual-image-controls button.pdf-visual-image-action>span,.pdf-visual-editbar-actions button>span{line-height:1}
.pdf-visual-image-layer{position:relative;display:flex;flex:none}
.pdf-visual-image-layer-toggle{gap:6px!important}
.pdf-visual-image-controls button.pdf-visual-image-action>.pdf-visual-image-caret{display:grid;width:14px;height:14px;flex:none;place-items:center;align-self:center;line-height:0;transition:transform .15s ease}
.pdf-visual-image-caret svg{display:block;width:14px;height:14px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8}
.pdf-visual-image-layer-toggle[aria-expanded="true"] .pdf-visual-image-caret{transform:rotate(180deg)}
.pdf-visual-image-layer-options{position:absolute;top:calc(100% + 6px);left:0;z-index:1210;display:flex;min-width:168px;box-sizing:border-box;flex-direction:column;gap:3px;padding:5px;border:1px solid #dce2ea;border-radius:8px;background:#ffffff;box-shadow:0 10px 28px #0008}
.pdf-visual-image-layer-options[hidden]{display:none!important}
.pdf-visual-image-controls .pdf-visual-image-layer-options button{display:flex;width:100%;min-height:36px;align-items:center;justify-content:flex-start;gap:9px;padding:0 9px;border:0;background:transparent;text-align:left;font-size:13px;white-space:nowrap}
.pdf-visual-image-layer-options button:hover:not(:disabled){background:#ffffff}
.pdf-visual-image-layer-options svg{display:block;width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}
.pdf-visual-image-opacity{display:flex;min-height:32px;align-items:center;gap:7px;padding:0 7px;border:1px solid #dce2ea;border-radius:5px;color:#263244;font-size:12px;white-space:nowrap}
.pdf-visual-image-opacity input{width:100px;accent-color:#6b8cff}
.pdf-visual-image-opacity output{min-width:34px;color:#263244;text-align:right}
.pdf-visual-image-crop{display:grid;grid-template-columns:repeat(2,minmax(130px,1fr));align-items:center;gap:5px;padding:6px;border:1px solid #dce2ea;border-radius:6px;background:#ffffff}
.pdf-visual-image-crop label{display:flex;align-items:center;gap:6px;color:#263244;font-size:11px}
.pdf-visual-image-crop input{min-width:0;flex:1;accent-color:#6b8cff}
.pdf-visual-object-handle{position:absolute;z-index:9;width:11px;height:11px;padding:0;border:1px solid #aaa;border-radius:50%;background:#fff;box-shadow:0 0 0 1px #fff;opacity:0;visibility:hidden;touch-action:none;cursor:nwse-resize}
.pdf-visual-object-handle.is-selected{opacity:1;visibility:visible}
.pdf-visual-object-handle.is-nw{transform:translate(-50%,-50%);cursor:nwse-resize}
.pdf-visual-object-handle.is-ne{transform:translate(-50%,-50%);cursor:nesw-resize}
.pdf-visual-object-handle.is-se{transform:translate(-50%,-50%);cursor:nwse-resize}
.pdf-visual-object-handle.is-sw{transform:translate(-50%,-50%);cursor:nesw-resize}
.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-object-handle.is-selected{pointer-events:auto}
.pdf-visual-added-image-rotate.is-selected::after{position:absolute;top:100%;left:50%;width:1px;height:16px;background:#858585;content:""}
.pdf-visual-editor .pdf-visual-image-preview{position:absolute;z-index:6;display:block;max-width:none;object-fit:fill;opacity:.76;pointer-events:none;filter:drop-shadow(0 2px 5px #0005)}
.pdf-visual-editbar.is-floating-image{position:fixed;z-index:1200;display:flex;width:min(680px,calc(100vw - 16px));min-height:0;box-sizing:border-box;align-items:center;justify-content:flex-start;flex-flow:row wrap;gap:6px;padding:8px;border:1px solid #dce2ea;border-radius:10px;background:rgb(255 255 255 / 96%);box-shadow:0 12px 32px #0007;backdrop-filter:blur(9px);overflow:visible;color:#263244}
.pdf-visual-editbar.is-floating-image .pdf-visual-image-controls,.pdf-visual-editbar.is-floating-image .pdf-visual-image-toolbar-row,.pdf-visual-editbar.is-floating-image .pdf-visual-editbar-actions{display:contents}
.pdf-visual-editbar.is-floating-image .pdf-visual-image-crop{order:2;flex:1 0 100%}
.pdf-visual-editbar.is-floating-image #pdfVisualImageDone{order:0;border-color:#5c78e8;background:#4b68df;color:#fff}
.pdf-visual-editbar.is-floating-image #pdfVisualImageDone:hover:not(:disabled){border-color:#8298ff;background:#5b78f0}
.pdf-visual-editbar.is-floating-image #pdfVisualDeleteSelection{order:1;border-color:#dce2ea;background:#edf1f7;color:#263244}
.pdf-visual-editbar.is-floating-image #pdfVisualDeleteSelection:hover:not(:disabled){border-color:#d78282;background:#edf1f7}
@media(max-width:700px){.pdf-visual-editbar.is-floating-image{width:calc(100vw - 16px);max-height:min(48vh,260px);overflow:auto}.pdf-visual-image-opacity input{width:65px}}
.pdf-visual-font-stepper{border-color:#dce2ea;background:#ffffff}
.pdf-visual-font-stepper button{border:0!important;background:transparent!important;color:#263244!important}
.pdf-visual-font-stepper input[type="number"]{border:0!important;background:transparent!important}

/* Keep navigation glyphs centered and inline PDF editing to one visible border. */
.pdf-visual-page-nav>button:not(.pdf-visual-page-count){display:grid;place-items:center;padding:0;line-height:1}
.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item.is-editing{border:0!important;outline:2px solid #4d7dff!important;outline-offset:0;box-shadow:none!important;caret-color:#20232a!important}

/* Keep hidden confirmation controls out of the object toolbars. */
.pdf-visual-editbar button[hidden],.pdf-visual-editbar-actions [hidden]{display:none!important}

/* Edit only the PDF filename stem; keep its extension as a separate label. */
.pdf-visual-file strong[title]{cursor:text}
.pdf-visual-file strong.is-editing{display:inline-flex;align-items:center;overflow:visible}
.pdf-visual-file-name-input{width:min(42vw,520px);min-width:110px;height:28px;padding:2px 5px;border:1px solid #dce2ea;border-radius:4px;background:#ffffff;color:#263244;font:inherit;font-size:inherit;outline:none}
.pdf-visual-file-name-input:focus{border-color:#6b8cff;box-shadow:0 0 0 2px #6b8cff35}

/* Stack the reading modes as compact, full-width rows. */
.pdf-visual-mode-tools{align-items:stretch;flex-direction:column;gap:3px;padding:2px 9px}
.pdf-visual-tools .pdf-visual-mode-tools>button{min-width:112px;height:30px;justify-content:flex-start;flex-direction:row;gap:8px;padding:2px 9px;font-size:13px}
.pdf-visual-tools .pdf-visual-mode-tools>button>b{display:grid;width:22px;height:22px;flex:0 0 22px;place-items:center;font-size:19px;line-height:1}
.pdf-visual-tools .pdf-visual-mode-tools>button>span{font-size:13px}

/* The Pages tab expands the existing page thumbnails into an adjustable gallery. */
.pdf-visual-body.is-page-gallery>.pdf-visual-pages,.pdf-visual-body.is-page-gallery>.pdf-visual-workspace{display:none!important}
.pdf-visual-page-gallery[hidden]{display:none!important}
.pdf-visual-body.is-page-gallery>.pdf-visual-page-gallery{display:flex;min-width:0;min-height:0;flex:1;flex-direction:column;overflow:hidden;background:#f5f7fa}
.pdf-visual-page-gallery-heading{display:flex;min-height:34px;align-items:center;justify-content:center;gap:16px;padding:3px 18px;color:#647084;font-size:11px;text-align:center}
.pdf-visual-page-gallery-heading>span:last-child{color:#777;white-space:nowrap}
.pdf-visual-page-gallery-empty{padding:38px 18px;color:#647084;font-size:13px;text-align:center}
.pdf-visual-body.is-page-gallery #pdfVisualThumbs{display:grid;width:100%;box-sizing:border-box;min-width:0;min-height:0;flex:1 1 auto;align-items:start;align-content:start;grid-auto-flow:row;grid-auto-rows:max-content;grid-template-columns:repeat(auto-fill,minmax(min(100%,var(--pdf-page-gallery-thumb-width,190px)),1fr));gap:clamp(16px,1.5vw,30px);padding:12px clamp(16px,3.2vw,64px) 30px;overflow:auto;overscroll-behavior:contain}
.pdf-visual-thumb-wrap{position:relative;display:flex;flex:none;width:100%;min-width:0;justify-content:center}
.pdf-visual-body.is-page-gallery .pdf-visual-thumb-wrap{display:block;align-self:start;justify-self:stretch;min-width:0}
.pdf-visual-body.is-page-gallery .pdf-visual-thumb{position:relative;display:flex;align-self:start;justify-self:stretch;min-width:0;min-height:0;width:100%;height:max-content;max-width:none;align-items:stretch;flex-direction:column;padding:7px 7px 4px;border:2px solid transparent;border-radius:3px;background:transparent}
.pdf-visual-body.is-page-gallery .pdf-visual-thumb-wrap.is-active .pdf-visual-thumb{width:100%}
.pdf-visual-page-actions{display:none}
.pdf-visual-body.is-page-gallery .pdf-visual-thumb-wrap.is-active .pdf-visual-page-actions{position:absolute;z-index:5;top:7px;right:-14px;display:flex;flex-direction:column;gap:6px}
.pdf-visual-page-action{display:flex;width:100px;height:38px;box-sizing:border-box;align-items:center;justify-content:center;gap:7px;padding:0 9px;border:1px solid #dce2ea;border-radius:7px;background:#ffffff;color:#263244;font:inherit;font-size:13px;white-space:nowrap;box-shadow:0 2px 8px #0005;cursor:pointer}
.pdf-visual-page-action:hover{border-color:#6687ff;background:#ffffff;color:#263244}
.pdf-visual-page-action:focus-visible{outline:2px solid #6687ff;outline-offset:2px}
.pdf-visual-page-action svg{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.pdf-visual-page-action span{line-height:1}
.pdf-visual-body.is-page-gallery .pdf-visual-thumb:hover{border-color:#dce2ea}
.pdf-visual-body.is-page-gallery .pdf-visual-thumb-preview{min-height:42px;border-color:transparent;background:#fff}
.pdf-visual-body.is-page-gallery .pdf-visual-thumb-preview canvas{object-fit:fill}
.pdf-visual-body.is-page-gallery .pdf-visual-thumb-number{padding-top:7px;color:#647084;font-size:13px}
.pdf-visual-body.is-page-gallery .pdf-visual-thumb.is-active{border-color:#6687ff;box-shadow:0 0 0 1px #6687ff44}
.pdf-visual-body.is-page-gallery .pdf-visual-thumb.is-page-selected{border-color:#6687ff;box-shadow:0 0 0 1px #6687ff55}
@media(max-width:700px){.pdf-visual-page-gallery-heading{justify-content:flex-start;gap:8px;padding-inline:10px;font-size:10px}.pdf-visual-body.is-page-gallery #pdfVisualThumbs{gap:8px;padding:8px}.pdf-visual-body.is-page-gallery .pdf-visual-thumb{padding:4px 4px 3px}.pdf-visual-body.is-page-gallery .pdf-visual-thumb-wrap.is-active .pdf-visual-page-actions{top:4px;right:-8px}.pdf-visual-page-action{width:88px;height:34px;gap:5px;padding-inline:7px;font-size:12px}.pdf-visual-page-action svg{width:16px;height:16px}}

/* Keep PDF scrollbars subtle and remove the bright browser-default track. */
.pdf-visual-workspace,#pdfVisualThumbs{scrollbar-width:thin;scrollbar-color:#666 transparent}
.pdf-visual-workspace::-webkit-scrollbar,#pdfVisualThumbs::-webkit-scrollbar{width:12px;height:12px}
.pdf-visual-workspace::-webkit-scrollbar-track,#pdfVisualThumbs::-webkit-scrollbar-track{background:transparent}
.pdf-visual-workspace::-webkit-scrollbar-thumb,#pdfVisualThumbs::-webkit-scrollbar-thumb{border:3px solid transparent;border-radius:999px;background:#edf1f7;background-clip:content-box}
.pdf-visual-workspace::-webkit-scrollbar-thumb:hover,#pdfVisualThumbs::-webkit-scrollbar-thumb:hover{background-color:#858585}
.pdf-visual-workspace::-webkit-scrollbar-corner,#pdfVisualThumbs::-webkit-scrollbar-corner{background:transparent}

/* Reading tools: native text selection, plus a grab-to-scroll hand mode. */
.pdf-visual-tools button .pdf-visual-tool-icon{display:grid;width:22px;height:22px;place-items:center;line-height:1}
.pdf-visual-tools button .pdf-visual-tool-icon svg{display:block;width:21px;height:21px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}
.pdf-visual-editor[data-tool="select"] .pdf-visual-text-item,.pdf-visual-editor[data-tool="text-highlight"] .pdf-visual-text-item{z-index:4;pointer-events:auto;cursor:text;user-select:text;-webkit-user-select:text}
.pdf-visual-editor[data-tool="select"] .pdf-visual-text-item::selection,.pdf-visual-editor[data-tool="text-highlight"] .pdf-visual-text-item::selection{color:transparent!important;background:#82b4ffb3}
.pdf-visual-editor[data-tool="hand"] .pdf-visual-workspace,.pdf-visual-editor[data-tool="hand"] .pdf-visual-stage,.pdf-visual-editor[data-tool="hand"] .pdf-visual-overlay{cursor:grab!important;user-select:none;-webkit-user-select:none}
.pdf-visual-editor[data-tool="hand"][data-panning="true"] .pdf-visual-workspace,.pdf-visual-editor[data-tool="hand"][data-panning="true"] .pdf-visual-stage,.pdf-visual-editor[data-tool="hand"][data-panning="true"] .pdf-visual-overlay{cursor:grabbing!important}
.pdf-visual-editor[data-tool="hand"] .pdf-visual-text-layer{pointer-events:none!important}

/* PDF table insertion and in-place table editing. */
.pdf-visual-table-tool{position:relative;display:flex;align-items:stretch}
.pdf-visual-table-picker[hidden]{display:none!important}
.pdf-visual-table-picker{position:fixed;z-index:1500;width:292px;box-sizing:border-box;padding:12px;border:1px solid #dce2ea;border-radius:12px;background:#ffffff;color:#263244;box-shadow:0 12px 30px #0008}
.pdf-visual-table-size{display:block;margin:0 0 10px;color:#263244;font-size:13px;text-align:center}
.pdf-visual-table-grid{display:grid;grid-template-columns:repeat(10,24px);gap:3px;justify-content:center;margin:0 auto 11px}
.pdf-visual-tools .pdf-visual-table-grid .pdf-visual-table-cell{width:24px;min-width:24px;height:24px;min-height:24px;padding:0;border:1px solid #a1a5aa;border-radius:1px;background:#ffffff;color:transparent}
.pdf-visual-tools .pdf-visual-table-grid .pdf-visual-table-cell:hover,.pdf-visual-tools .pdf-visual-table-grid .pdf-visual-table-cell.is-preview{border-color:#f5bd9c;background:#f5bd9c}
.pdf-visual-table-confirm{display:flex!important;width:100%;min-width:0!important;height:36px!important;min-height:36px!important;align-items:center!important;justify-content:flex-start!important;flex-direction:row!important;gap:8px!important;padding:0 8px!important;border:0!important;border-top:1px solid #dce2ea!important;border-radius:0!important;background:transparent!important;color:#263244!important;font-size:13px!important}
.pdf-visual-table-confirm span{font-size:17px!important;color:#6fc6aa}
.pdf-visual-table-confirm:hover{background:#ffffff!important}
.pdf-visual-table-manual[hidden],#pdfVisualTableGridMode[hidden]{display:none!important}
.pdf-visual-table-manual{display:grid;gap:12px;padding:8px 2px 2px}
.pdf-visual-tools .pdf-visual-table-number-field{display:grid;grid-template-columns:88px minmax(0,1fr);align-items:center;gap:8px;padding:0;color:#263244;font-size:14px}
.pdf-visual-table-number-control{display:grid;grid-template-columns:34px minmax(0,1fr) 34px;min-width:0;height:42px;overflow:hidden;border:1px solid #dce2ea;border-radius:8px;background:#ffffff}
.pdf-visual-tools .pdf-visual-table-number-control button{display:grid;width:34px;min-width:34px;height:40px;min-height:0;place-items:center;flex-direction:row;gap:0;padding:0;border:0;background:transparent;color:#647084;font-size:20px;line-height:1;cursor:pointer}
.pdf-visual-tools .pdf-visual-table-number-control button:hover:not(:disabled){background:#edf1f7;color:#263244}
.pdf-visual-table-number-control input{box-sizing:border-box;width:100%;min-width:0;padding:5px 7px;border:0;border-right:1px solid #dce2ea;border-left:1px solid #dce2ea;outline:0;background:#ffffff;color:#263244;font:inherit;font-size:16px;line-height:1.2;text-align:center}
.pdf-visual-table-number-control input:focus{box-shadow:inset 0 0 0 2px #4d7dff}
.pdf-visual-table-number-control input::-webkit-inner-spin-button,.pdf-visual-table-number-control input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.pdf-visual-table-number-control input[type=number]{appearance:textfield;-moz-appearance:textfield}
.pdf-visual-table-manual-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:3px}
.pdf-visual-tools .pdf-visual-table-manual-actions button{width:auto;min-width:82px;height:38px;min-height:38px;flex-direction:row;padding:0 14px;border:1px solid #dce2ea;border-radius:7px;font:inherit;font-size:14px;cursor:pointer}
.pdf-visual-tools .pdf-visual-table-cancel{background:#ffffff;color:#263244}
.pdf-visual-tools .pdf-visual-table-manual-actions .pdf-visual-table-cancel:hover:not(:disabled){background:#edf1f7;color:#263244}
.pdf-visual-tools .pdf-visual-table-manual-confirm{border-color:#386bdf!important;background:#3478f6;color:#fff}
.pdf-visual-tools .pdf-visual-table-manual-actions .pdf-visual-table-manual-confirm:hover:not(:disabled){background:#4b88ff;color:#263244}
.pdf-visual-editor .pdf-visual-table-preview{position:absolute;z-index:6;display:grid;box-sizing:border-box;overflow:hidden;border:1px solid #242424;background:#fff;opacity:.82;pointer-events:none;filter:drop-shadow(0 2px 4px #0003)}
.pdf-visual-editor .pdf-visual-table-preview span{min-width:0;min-height:0;border-right:1px solid #252525;border-bottom:1px solid #252525}
.pdf-visual-added-table-item{border:2px dashed transparent!important;border-radius:0!important;background-color:#fff!important}
.pdf-visual-added-table-item:hover,.pdf-visual-added-table-item:focus-visible,.pdf-visual-added-table-item.is-selected{border:2px dashed #4d7dff!important;background-color:#fff!important}
.pdf-visual-object-handle.pdf-visual-table-control{z-index:12;display:grid;width:27px;height:27px;box-sizing:border-box;place-items:center;padding:0;border:1px solid #8b8f95;border-radius:5px;background:#fff;color:#35383c;font:16px/1 Arial,sans-serif;box-shadow:0 1px 4px #0003;opacity:0;visibility:hidden;touch-action:none;cursor:pointer;transform:none}
.pdf-visual-object-handle.pdf-visual-table-control.is-selected{opacity:1;visibility:visible}
.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-object-handle.pdf-visual-table-control.is-selected{pointer-events:auto}
.pdf-visual-table-control.is-move{cursor:grab}
.pdf-visual-table-control.is-resize{cursor:nwse-resize}
.pdf-visual-table-control.is-add-column,.pdf-visual-table-control.is-add-row{border-color:#7b9af8;color:#356fe0;font-size:20px;font-weight:500}
.pdf-visual-table-control.is-add-column:hover,.pdf-visual-table-control.is-add-row:hover{background:#eaf0ff}

/* OCR confirmation for the in-editor PDF workflow. */
.pdf-visual-tools #pdfVisualOcr:disabled{opacity:.42;cursor:not-allowed}
.pdf-visual-ocr-dialog{width:min(900px,calc(100vw - 32px));max-width:none;max-height:min(92vh,820px);box-sizing:border-box;margin:auto;padding:clamp(18px,3vw,32px);overflow:auto;border:1px solid #dce2ea;border-radius:18px;background:#ffffff;color:#263244;box-shadow:0 26px 90px #000b}
.pdf-visual-ocr-dialog[open]{display:flex;flex-direction:column;gap:0;animation:dialog-enter 220ms ease-out both}
.pdf-visual-ocr-dialog::backdrop{background:#08090bd9;backdrop-filter:blur(6px)}
.pdf-visual-ocr-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px}
.pdf-visual-ocr-eyebrow{color:#86a1ff;font-size:12px;font-weight:600;letter-spacing:.05em}
.pdf-visual-ocr-head h2{margin:4px 0 0;color:#263244;font-size:clamp(20px,3vw,27px);font-weight:600}
.pdf-visual-ocr-close{display:grid;width:36px;height:36px;flex:none;place-items:center;border:0;border-radius:7px;background:transparent;color:#647084;font-size:28px;line-height:1;cursor:pointer}
.pdf-visual-ocr-close:hover{background:#ffffff;color:#263244}
.pdf-visual-ocr-description{margin:0 0 8px;color:#263244;font-size:clamp(14px,1.8vw,17px);line-height:1.65}
.pdf-visual-ocr-language{display:flex;align-items:center;gap:8px;margin:0 0 16px;color:#647084;font-size:13px}
.pdf-visual-ocr-language-dot{width:8px;height:8px;border-radius:50%;background:#6f91ff;box-shadow:0 0 9px #6f91ff66}
.pdf-visual-ocr-preview{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:210px;height:clamp(210px,36vh,340px);overflow:hidden;border:1px solid #dce2ea;border-radius:12px;background:#ffffff}
.pdf-visual-ocr-preview-half{position:relative;min-width:0;overflow:hidden;background:linear-gradient(135deg,#edf1f7 0 16%,#ffffff 16% 100%)}
.pdf-visual-ocr-preview-half.is-after{background:linear-gradient(135deg,#edf1f7 0 16%,#ffffff 16% 100%)}
.pdf-visual-ocr-page{position:absolute;inset:14px 13px 0;display:flex;box-sizing:border-box;flex-direction:column;gap:9px;padding:clamp(16px,4vw,32px);overflow:hidden;background:#ececec;color:#444;box-shadow:0 3px 14px #0005}
.pdf-visual-ocr-page strong{margin-bottom:8px;color:#323232;font-family:serif;font-size:clamp(14px,2vw,21px);font-weight:600}
.pdf-visual-ocr-page>span{display:block;width:88%;height:5px;flex:none;border-radius:2px;background:#9c9c9c;opacity:.62}
.pdf-visual-ocr-page>span:nth-of-type(2n){width:72%}
.pdf-visual-ocr-page>span.is-highlight{width:max-content;max-width:100%;height:auto;padding:3px 5px;background:#83a6ff8c;color:#303c5e;font-family:serif;font-size:clamp(10px,1.5vw,15px);line-height:1.3;opacity:1}
.pdf-visual-ocr-page>i{display:block;width:100%;height:1px;flex:none;margin:5px 0;background:#c2c2c2}
.pdf-visual-ocr-preview-half.is-before .pdf-visual-ocr-page{filter:grayscale(1) blur(1.1px);opacity:.82}
.pdf-visual-ocr-preview-half.is-after .pdf-visual-ocr-page{background:#f6f6f6}
.pdf-visual-ocr-preview-tag{position:absolute;bottom:12px;left:12px;padding:6px 10px;border:1px solid #dce2ea;border-radius:999px;background:#fffffff2;color:#263244;font-size:11px}
.pdf-visual-ocr-preview-half.is-after .pdf-visual-ocr-preview-tag{right:12px;left:auto}
.pdf-visual-ocr-preview-divider{position:absolute;top:0;bottom:0;left:50%;z-index:1;width:3px;background:#6e8eff;transform:translateX(-50%)}
.pdf-visual-ocr-preview-divider::after{position:absolute;top:50%;left:50%;display:grid;width:36px;height:36px;place-items:center;border:2px solid #8ca5ff;border-radius:50%;background:#3e5edb;color:#fff;content:"↔";font-size:17px;transform:translate(-50%,-50%)}
.pdf-visual-ocr-note{min-height:22px;margin:14px 0;color:#647084;font-size:12px;line-height:1.6}
.pdf-visual-ocr-note.is-error{color:#ff9b9b}
.pdf-visual-ocr-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:4px}
.pdf-visual-ocr-actions button{display:inline-flex;min-height:40px;align-items:center;justify-content:center;gap:8px;padding:0 15px;border-radius:7px;font:inherit;font-size:13px;cursor:pointer}
.pdf-visual-ocr-cancel{border:1px solid #dce2ea;background:#ffffff;color:#263244}
.pdf-visual-ocr-cancel:hover:not(:disabled){background:#edf1f7;color:#263244}
.pdf-visual-ocr-run{border:1px solid #5e7ef1;background:#4d6fe8;color:#fff}
.pdf-visual-ocr-run:hover:not(:disabled){background:#5a7cf4}
.pdf-visual-ocr-run:disabled,.pdf-visual-ocr-cancel:disabled,.pdf-visual-ocr-close:disabled{opacity:.5;cursor:not-allowed}
.pdf-visual-ocr-run svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7}
@media(max-width:600px){.pdf-visual-ocr-dialog{width:calc(100vw - 20px);max-height:94vh;padding:17px;border-radius:13px}.pdf-visual-ocr-preview{height:clamp(180px,31vh,260px);min-height:180px}.pdf-visual-ocr-page{inset:9px 8px 0;padding:15px 10px;gap:7px}.pdf-visual-ocr-note{font-size:11px}}

/* PDF editor watermark controls are mounted in this dialog and operate on the open task. */
.pdf-visual-watermark-dialog{width:min(1120px,calc(100vw - 32px));max-height:min(94vh,940px)}
.pdf-visual-watermark-dialog .pdf-visual-ocr-head{margin-bottom:8px}
.pdf-visual-watermark-layout{display:grid;grid-template-columns:minmax(330px,.9fr) minmax(320px,1.1fr);gap:18px;min-height:0;align-items:stretch}
.pdf-visual-watermark-settings [hidden]{display:none!important}
.pdf-visual-watermark-settings{min-width:0;max-height:58vh;overflow:auto;padding:12px;border:1px solid #dce2ea;border-radius:12px;background:#ffffff}
.pdf-visual-watermark-settings #fileConvertWatermarkSettings{display:block!important;margin:0;padding:0;border:0;background:transparent;color:#263244;box-shadow:none}
.pdf-visual-watermark-settings #fileConvertWatermarkSettings h3{margin:0 0 10px;color:#263244;font-size:15px}
.pdf-visual-watermark-settings .resize-watermark-type-switch{background:#f5f7fa}
.pdf-visual-watermark-settings .resize-watermark-type-switch button{color:#647084}
.pdf-visual-watermark-settings .resize-watermark-type-switch button.active{background:#465fbd;color:#fff}
.pdf-visual-watermark-settings .resize-watermark-control,.pdf-visual-watermark-settings .resize-watermark-text-input,.pdf-visual-watermark-settings .resize-watermark-range-field{color:#647084}
.pdf-visual-watermark-settings .resize-watermark-control select,.pdf-visual-watermark-settings .resize-watermark-text-input input{border-color:#dce2ea;background:#f5f7fa;color:#263244}
.pdf-visual-watermark-settings .resize-watermark-control input[type=color]{border-color:#dce2ea;background:#f5f7fa}
.pdf-visual-watermark-settings .resize-watermark-range-field output{color:#263244}
.pdf-visual-watermark-settings .resize-watermark-logo-upload-row{color:#647084}
.pdf-visual-watermark-preview-panel{display:flex;min-width:0;min-height:280px;flex-direction:column;gap:10px;padding:12px;border:1px solid #dce2ea;border-radius:12px;background:#ffffff}
.pdf-visual-watermark-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#263244;font-size:13px}
.pdf-visual-watermark-preview-heading span{color:#647084;font-size:12px}
.pdf-visual-watermark-preview-stage{position:relative;display:grid;flex:1;min-height:220px;place-items:center;overflow:hidden;border:1px solid #dce2ea;border-radius:9px;background:#f5f7fa}
.pdf-visual-watermark-preview-stage canvas{grid-area:1/1;display:block;width:auto;max-width:100%;height:auto;max-height:54vh;object-fit:contain}
.pdf-visual-watermark-preview-stage canvas+canvas{position:absolute;inset:50% auto auto 50%;width:auto;height:auto;max-width:100%;max-height:54vh;transform:translate(-50%,-50%);pointer-events:none}
.pdf-visual-watermark-preview-nav{display:flex;align-items:center;justify-content:center;gap:14px;color:#647084;font-size:12px}
.pdf-visual-watermark-preview-nav button{display:grid;width:30px;height:30px;place-items:center;border:1px solid #dce2ea;border-radius:7px;background:#ffffff;color:#263244;font-size:21px;line-height:1;cursor:pointer}
.pdf-visual-watermark-preview-nav button:hover:not(:disabled){border-color:#809cff;background:#edf1f7}
.pdf-visual-watermark-preview-nav button:disabled{opacity:.42;cursor:default}
.pdf-visual-watermark-note{margin:10px 0 8px}
@media(max-width:760px){.pdf-visual-watermark-dialog{max-height:95vh}.pdf-visual-watermark-layout{grid-template-columns:minmax(0,1fr);gap:12px}.pdf-visual-watermark-settings{max-height:34vh}.pdf-visual-watermark-preview-panel{min-height:250px}.pdf-visual-watermark-preview-stage{min-height:180px}.pdf-visual-watermark-preview-stage canvas,.pdf-visual-watermark-preview-stage canvas+canvas{max-height:38vh}}

/* Damaged-PDF recovery confirmation, using a before/after document illustration. */
.pdf-visual-repair-dialog{width:min(900px,calc(100vw - 32px))}
.pdf-visual-repair-file{max-width:100%;margin:-3px 0 12px;overflow:hidden;color:#647084;font-size:12px;text-overflow:ellipsis;white-space:nowrap}
.pdf-visual-repair-entitlement{display:flex;min-height:36px;align-items:center;gap:9px;margin:0 0 14px;padding:0 11px;border:1px solid #dce2ea;border-radius:8px;background:#ffffff;color:#263244}
.pdf-visual-repair-entitlement>span{display:grid;width:19px;height:19px;flex:none;place-items:center;border-radius:50%;background:#4e9b70;color:#fff;font-size:13px;font-weight:700}
.pdf-visual-repair-entitlement p{margin:0;font-size:12px;line-height:1.5}
.pdf-visual-repair-preview{position:relative;display:grid;grid-template-columns:1fr 1fr;min-height:190px;height:clamp(190px,30vh,270px);overflow:hidden;border:1px solid #dce2ea;border-radius:12px;background:#ffffff}
.pdf-visual-repair-half{position:relative;min-width:0;overflow:hidden;background:linear-gradient(135deg,#edf1f7 0 16%,#ffffff 16% 100%)}
.pdf-visual-repair-half.is-rebuilt{background:linear-gradient(135deg,#edf1f7 0 16%,#ffffff 16% 100%)}
.pdf-visual-repair-page{position:absolute;inset:13px 20% 0;display:flex;box-sizing:border-box;flex-direction:column;gap:8px;padding:clamp(13px,3vw,24px);overflow:hidden;border-top:2px solid #ddd;background:#efefef;color:#333;box-shadow:0 3px 14px #0005}
.pdf-visual-repair-page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:5px}
.pdf-visual-repair-page-head>span{padding:3px 6px;border-radius:3px;background:#d9d9d9;color:#676767;font:700 9px/1.2 Arial,sans-serif}
.pdf-visual-repair-page-head>i{display:block;width:35%;height:3px;border-radius:2px;background:#b8b8b8}
.pdf-visual-repair-page>b{display:block;width:70%;height:8px;margin:2px 0 4px;border-radius:2px;background:#777;opacity:.7}
.pdf-visual-repair-page>span{display:block;width:92%;height:5px;flex:none;border-radius:2px;background:#aaa;opacity:.66}
.pdf-visual-repair-page>span:nth-of-type(2n){width:72%}
.pdf-visual-repair-half.is-damaged .pdf-visual-repair-page{filter:grayscale(1);opacity:.7;transform:rotate(-1deg)}
.pdf-visual-repair-half.is-damaged .pdf-visual-repair-page>span.is-broken{height:8px;background:linear-gradient(90deg,#aaa 0 38%,transparent 38% 48%,#aaa 48% 66%,transparent 66% 73%,#aaa 73%);outline:1px dashed #d17b75}
.pdf-visual-repair-warning,.pdf-visual-repair-page-badge{position:absolute;right:10px;bottom:12px;display:grid;width:26px;height:26px;place-items:center;border:2px solid #eee;border-radius:50%;background:#c75c58;color:#fff;font-size:17px;font-weight:700;box-shadow:0 2px 8px #0005}
.pdf-visual-repair-page-badge{background:#4d8f6a;font-size:14px}
.pdf-visual-repair-tag{position:absolute;bottom:9px;left:9px;padding:5px 8px;border:1px solid #dce2ea;border-radius:999px;background:#fffffff2;color:#263244;font-size:10px}
.pdf-visual-repair-half.is-rebuilt .pdf-visual-repair-tag{right:9px;left:auto}
.pdf-visual-repair-divider{position:absolute;top:0;bottom:0;left:50%;z-index:1;width:3px;background:#6e8eff;transform:translateX(-50%)}
.pdf-visual-repair-divider>span{position:absolute;top:50%;left:50%;display:grid;width:36px;height:36px;place-items:center;border:2px solid #8ca5ff;border-radius:50%;background:#3e5edb;color:#fff;font-size:22px;transform:translate(-50%,-50%)}
.pdf-visual-repair-note{margin:12px 0;color:#647084}
@media(max-width:600px){.pdf-visual-repair-dialog{width:calc(100vw - 20px)}.pdf-visual-repair-preview{height:clamp(180px,30vh,230px);min-height:180px}.pdf-visual-repair-page{inset:11px 11% 0;padding:14px 11px;gap:7px}.pdf-visual-repair-tag{font-size:9px}}

/* Keep newly inserted images behind the PDF page content when sent to the bottom layer. */
.pdf-visual-stage .pdf-visual-canvas{z-index:0}
.pdf-visual-stage .pdf-visual-underlay-canvas{z-index:1;pointer-events:none}
.pdf-visual-stage .pdf-visual-source-content{z-index:2;pointer-events:none}
.pdf-visual-stage .pdf-visual-overlay{z-index:3;touch-action:none}
.pdf-visual-text-layer{z-index:4}
.pdf-visual-table-cell-input{min-width:0;min-height:0;box-sizing:border-box;overflow:hidden;padding:2px 5px;border:0;outline:none;background:transparent;color:#202020;font-family:SimSun,"Songti SC",serif;font-size:12px;line-height:1.15;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;cursor:text;user-select:text;-webkit-user-select:text}
.pdf-visual-table-cell-input:focus{outline:1px solid #4d7dff;outline-offset:-2px}

/* The PDF workspace also carries the generic .workspace class in legacy markup. */
.pdf-visual-workspace{max-width:none;margin:0}

/* Let replacement text grow past its original cell without painting a white box. */
.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item.is-editing{background:transparent!important;white-space:pre!important}
.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item.is-editing,.pdf-visual-editor[data-tool="edit-text"] .pdf-visual-text-item.is-editing *{cursor:text!important}

/* PDF editor conversion actions and print affordance. */
.pdf-visual-head-actions #pdfVisualPrint{background:#ffffff;color:#263244}
.pdf-visual-head-actions .pdf-visual-head-button{white-space:nowrap}
.pdf-visual-head-actions #pdfVisualPrint:hover:not(:disabled){border-color:#dce2ea;background:#ffffff}
.pdf-visual-convert{position:relative;display:flex;flex:none;align-items:stretch}
.pdf-visual-tools .pdf-visual-convert>button{position:relative;min-width:76px;color:#263244}
.pdf-visual-tools .pdf-visual-convert>button>span{font-size:10px}
.pdf-visual-tools .pdf-visual-convert>button>.pdf-visual-convert-label{display:inline-flex;align-items:center;justify-content:center;gap:3px;font-size:10px}
.pdf-visual-convert-label svg{display:block;width:9px;height:9px;flex:none;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8;transition:transform .15s ease}
#pdfVisualConvertToggle[aria-expanded="true"] .pdf-visual-convert-label svg{transform:rotate(180deg)}
.pdf-visual-tools .pdf-visual-convert>button:hover:not(:disabled),.pdf-visual-tools .pdf-visual-convert>button[aria-expanded="true"]{background:#ffffff;color:#263244}
.pdf-visual-editor .pdf-visual-convert-menu{position:fixed;z-index:1600;display:flex;width:196px;max-height:calc(100vh - 16px);box-sizing:border-box;flex-direction:column;gap:3px;overflow:auto;padding:6px;border:1px solid #dce2ea;border-radius:10px;background:#ffffff;color:#263244;box-shadow:0 12px 32px #0009}
.pdf-visual-editor .pdf-visual-convert-menu[hidden]{display:none!important}
.pdf-visual-editor .pdf-visual-convert-menu>button{display:flex;width:100%;min-width:0;height:auto;min-height:40px;align-items:center;justify-content:flex-start;flex-direction:row;gap:10px;padding:0 11px;border:0;border-radius:6px;background:transparent;color:#263244;font:inherit;font-size:14px;text-align:left;white-space:nowrap;cursor:pointer}
.pdf-visual-editor .pdf-visual-convert-menu>button::before{display:grid;width:22px;height:22px;flex:none;place-items:center;border-radius:5px;background:#edf1f7;color:#8eb0ff;font-size:12px;font-weight:650}
.pdf-visual-editor .pdf-visual-convert-menu>button[data-pdf-conversion="pdf-docx"]::before{content:"W"}
.pdf-visual-editor .pdf-visual-convert-menu>button[data-pdf-conversion="pdf-xlsx"]::before{content:"X";color:#66d6a4}
.pdf-visual-editor .pdf-visual-convert-menu>button[data-pdf-conversion="pdf-pptx"]::before{content:"P";color:#ffad73}
.pdf-visual-editor .pdf-visual-convert-menu>button[data-pdf-conversion="image-pdf"]::before{content:"▧";color:#f58ca8}
.pdf-visual-editor .pdf-visual-convert-menu>button:hover:not(:disabled){background:#edf1f7;color:#263244}
.pdf-visual-editor .pdf-visual-convert-menu>button:disabled{opacity:.45;cursor:not-allowed}
#pdfVisualWatermarkOpen>span{display:inline-flex;align-items:center;justify-content:center;gap:3px}
#pdfVisualWatermarkOpen .pdf-visual-watermark-chevron{display:block;width:9px;height:9px;flex:none;fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8;transition:transform .15s ease}
#pdfVisualWatermarkOpen[aria-expanded="true"] .pdf-visual-watermark-chevron{transform:rotate(180deg)}
.pdf-visual-tools #pdfVisualWatermarkOpen:hover:not(:disabled),.pdf-visual-tools #pdfVisualWatermarkOpen[aria-expanded="true"]{background:#ffffff;color:#263244}
.pdf-visual-editor .pdf-visual-watermark-menu{position:fixed;z-index:1600;display:flex;width:180px;max-height:calc(100vh - 16px);box-sizing:border-box;flex-direction:column;gap:3px;overflow:auto;padding:6px;border:1px solid #dce2ea;border-radius:10px;background:#ffffff;color:#263244;box-shadow:0 12px 32px #0009}
.pdf-visual-editor .pdf-visual-watermark-menu[hidden]{display:none!important}
.pdf-visual-editor .pdf-visual-watermark-menu>button{display:flex;width:100%;min-width:0;height:auto;min-height:40px;align-items:center;justify-content:flex-start;flex-direction:row;gap:10px;padding:0 11px;border:0;border-radius:6px;background:transparent;color:#263244;font:inherit;font-size:14px;text-align:left;white-space:nowrap;cursor:pointer}
.pdf-visual-editor .pdf-visual-watermark-menu>button::before{display:grid;width:22px;height:22px;flex:none;place-items:center;border-radius:5px;background:#edf1f7;color:#8eb0ff;font-size:15px;font-weight:600}
.pdf-visual-editor .pdf-visual-watermark-menu>button[data-watermark-action="add"]::before{content:"＋";color:#86a1ff}
.pdf-visual-editor .pdf-visual-watermark-menu>button[data-watermark-action="remove"]::before{content:"×";color:#ff9a9a}
.pdf-visual-editor .pdf-visual-watermark-menu>button:hover:not(:disabled){background:#edf1f7;color:#263244}
.pdf-visual-editor .pdf-visual-watermark-menu>button:disabled{opacity:.45;cursor:not-allowed}
.pdf-visual-watermark-notice{width:min(560px,calc(100vw - 32px));max-height:min(80vh,520px)}
.pdf-visual-watermark-notice .pdf-visual-ocr-description{margin:8px 0 20px;font-size:clamp(15px,2vw,18px)}
.pdf-visual-watermark-notice .pdf-visual-ocr-actions{margin-top:4px}
@media(max-width:700px){.pdf-visual-tools .pdf-visual-convert>button{min-width:66px;padding-right:5px;padding-left:5px}.pdf-visual-tools .pdf-visual-convert>button>span{font-size:9px}.pdf-visual-head-actions #pdfVisualPrint{padding-right:7px;padding-left:7px}}
.pdf-editor-paywall{width:min(620px,calc(100vw - 32px));max-height:min(92vh,780px)}
.pdf-editor-paywall .pdf-visual-ocr-head h2{font-size:clamp(23px,3vw,30px)}
.pdf-editor-offers{display:grid;gap:12px;margin:8px 0 0}
.pdf-editor-offer{display:flex;align-items:center;gap:14px;width:100%;min-height:82px;padding:14px 16px;border:1px solid #dce2ea;border-radius:14px;background:#ffffff;color:#263244;text-align:left;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease}
.pdf-editor-offer:hover{border-color:#7190ff;background:#edf1f7;transform:translateY(-1px)}
.pdf-editor-offer.is-featured{border-color:#536fe0;background:linear-gradient(110deg,#edf1f7,#ffffff 75%)}
.pdf-editor-offer[hidden]{display:none}
.pdf-editor-offer-mark{display:grid;place-items:center;flex:0 0 48px;height:48px;border-radius:13px;background:#3a4a79;color:#263244;font-size:13px;font-weight:700}
.pdf-editor-offer-copy{display:grid;gap:5px;min-width:0;flex:1}
.pdf-editor-offer-copy strong{font-size:17px;font-weight:650}
.pdf-editor-offer-copy strong b{margin-left:5px;color:#a9c4ff;font-size:20px}
.pdf-editor-offer-copy small{color:#263244;font-size:13px;line-height:1.45}
.pdf-editor-offer-arrow{color:#647084;font-size:25px}
.pdf-editor-task-rule{margin:14px 0 0;color:#647084;font-size:13px;line-height:1.5}
.pdf-editor-retained{margin:16px 0 4px;color:#263244;font-size:14px}
.pdf-editor-paywall-status:empty{display:none}
.pdf-editor-paywall .pdf-visual-ocr-actions{justify-content:space-between}
@media(max-width:600px){.pdf-editor-paywall{width:calc(100vw - 20px);padding:17px}.pdf-editor-offer{gap:10px;padding:12px}.pdf-editor-offer-copy strong{font-size:15px}.pdf-editor-offer-copy small{font-size:12px}}

/* Brand assets: independent Logo and full-screen Splash workspaces. */
#panel-icon [hidden]{display:none!important}
.asset-stage-head{display:flex;width:100%;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:20px}
.asset-stage-head .stage-label{margin:0;align-self:auto;white-space:nowrap}
.asset-mode-switch{display:inline-flex;gap:3px;padding:4px;border:1px solid var(--line);border-radius:999px;background:#f1f3f7}
.asset-mode-switch button{border:0;border-radius:999px;padding:8px 13px;background:transparent;color:var(--muted);font-size:12px;white-space:nowrap}
.asset-mode-switch button.active{background:#fff;color:#3554c4;font-weight:700;box-shadow:0 1px 5px #1d29391a}
.asset-mode-switch button:focus-visible,.splash-card button:focus-visible{outline:2px solid var(--lime);outline-offset:3px}
#logoPreview.is-splash{border:1px solid var(--line);border-radius:8px;color:var(--lime);flex-shrink:0}
#logoPreview.is-splash img{object-fit:contain}
.splash-editor{width:100%;min-width:0}
.splash-preview-stage{min-height:350px;padding:10px;display:flex;align-items:center;justify-content:center;border-radius:10px;background:var(--asset-preview-bg)}
.splash-preview-frame{position:relative;max-width:100%;overflow:hidden;box-shadow:0 4px 20px #1d29391a;background:#fff}
#splashPreview{display:block;width:100%;height:100%}
.splash-composition-guide{position:absolute;inset:10%;border:1px dashed #fff;outline:1px dashed #52607980;pointer-events:none}
#splashEmpty{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:12px;font-size:12px;line-height:1.8;color:#667085;background:#f8f9fbd9}
.splash-preview-caption{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin:12px 0 18px;font-size:10px;color:var(--muted)}
.splash-settings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 12px;align-items:end}
.splash-settings>label{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:11px;color:var(--muted)}
.splash-settings select{width:100%;min-width:0;padding:9px 7px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--text);font:inherit;font-size:11px}
.splash-settings>.preview-bg-control{flex-direction:row;align-items:center;justify-content:space-between}
.splash-settings .preview-bg-control input{flex:0 0 36px;width:36px}
.splash-settings .splash-position input{width:100%;min-width:0;margin:0;accent-color:var(--lime)}
.splash-resolution-note{font-size:11px;line-height:1.6;margin:10px 0 0;color:#92631c}
.splash-resolution-note:empty{display:none}
.splash-export-note{margin:0 0 12px;font-size:12px;color:var(--muted);line-height:1.7}
.splash-integration-note{margin-bottom:22px;color:var(--muted);font-size:11px;line-height:1.7}
.splash-integration-note summary{cursor:pointer;color:#526079}
.splash-integration-note p{margin:8px 0 0}
#splashList{display:flex;flex-direction:column;gap:26px;background:transparent}
.splash-group-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:12px}
.splash-card{min-width:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff}
.splash-card.is-selected{border-color:var(--lime);box-shadow:0 0 0 1px var(--lime)}
.splash-card-preview{border:0;border-bottom:1px solid var(--line);width:100%;height:150px;display:flex;align-items:center;justify-content:center;padding:12px;background:var(--asset-preview-bg)}
.splash-card-preview canvas{display:block;max-width:100%;max-height:100%;width:auto;height:auto;box-shadow:0 2px 6px #1d293914}
.splash-card-meta{display:grid;grid-template-columns:1fr auto;gap:4px 6px;align-items:center;padding:11px}
.splash-card-meta strong{grid-column:1/-1;font-size:12px;font-weight:600;font-family:var(--mono)}
.splash-card-meta span{font-size:10px;color:var(--muted)}
.splash-card-meta button{border:0;background:transparent;color:var(--lime);font-size:11px;padding:5px 0}
#panel-icon button:disabled{cursor:not-allowed;opacity:.45}
.splash-custom{margin-top:26px;padding:18px;border:1px solid var(--line);border-radius:10px;font-size:12px}
.splash-custom-fields{display:flex;align-items:center;gap:10px;margin:14px 0}
.splash-custom-fields label{display:flex;align-items:center;gap:7px;flex:1;min-width:0;color:var(--muted)}
.splash-custom-fields input{width:100%;min-width:0;border:1px solid var(--line);border-radius:6px;padding:9px;background:#fff;color:var(--text);font-size:12px}
.splash-custom-fields input[aria-invalid="true"]{border-color:#c64f4f}
.splash-custom-actions{display:flex;gap:10px}
.splash-custom-include{display:flex;align-items:center;gap:6px;margin-top:14px;color:var(--muted);font-size:11px}
.splash-card-preview{cursor:zoom-in}
.splash-card-preview.can-pan canvas,#splashLightboxCanvas.can-pan{cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none}
.splash-card-preview.is-panning canvas,#splashLightboxCanvas.is-panning{cursor:grabbing}
html.splash-lightbox-open{overflow:hidden}
.splash-lightbox{position:fixed;inset:0;width:100%;height:100%;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:#14171ef5;color:#f5f6fa;overflow:hidden}
.splash-lightbox[open]{display:flex;flex-direction:column}
.splash-lightbox::backdrop{background:#14171e}
.splash-lightbox-header{display:flex;align-items:center;gap:24px;flex:0 0 auto;padding:14px 20px}
.splash-lightbox-heading{display:flex;align-items:baseline;gap:12px;flex:1;min-width:0}
.splash-lightbox-heading strong{font:600 16px var(--mono);white-space:nowrap}
.splash-lightbox-heading>span,.splash-lightbox-scale{color:#b4bdcd;font-size:12px}
.splash-lightbox-scale{display:flex;gap:8px;white-space:nowrap}
.splash-crop-reset{flex-shrink:0;padding:8px 10px;border:1px solid #ffffff35;border-radius:7px;background:#ffffff0a;color:#f5f6fa;font-size:12px}
.splash-crop-reset:hover:enabled{background:#ffffff20}
.splash-crop-reset:disabled{opacity:.4;cursor:default}
.splash-crop-reset:focus-visible,#splashLightboxCanvas:focus-visible{outline:2px solid #a8baff;outline-offset:3px}
#splashLightboxClose{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border:1px solid #ffffff35;border-radius:50%;padding:0;background:#ffffff0a;color:#fff;font-size:25px;line-height:1}
#splashLightboxClose:hover{background:#ffffff20}
#splashLightboxClose:focus-visible{outline:2px solid #a8baff;outline-offset:3px}
.splash-lightbox-stage{display:flex;align-items:center;justify-content:center;flex:1;min-height:0;min-width:0;margin:0 16px 16px}
#splashLightboxCanvas{display:block;flex:0 0 auto;box-shadow:0 8px 40px #0005}
@media(max-width:520px){.splash-lightbox-header{position:relative;align-items:flex-start;flex-direction:column;gap:7px;padding:14px 64px 14px 14px}.splash-lightbox-heading{gap:8px;flex-wrap:wrap}.splash-lightbox-heading strong{font-size:14px}.splash-lightbox-heading>span,.splash-lightbox-scale{font-size:11px}#splashLightboxClose{position:absolute;right:14px;top:14px}.splash-lightbox-stage{margin:0 10px 10px}}
@media(max-width:520px){.asset-stage-head{gap:10px}.asset-mode-switch button{padding:8px 11px}.splash-group-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.splash-card-meta{padding:9px}.splash-card-meta strong{font-size:11px}.splash-custom{padding:13px}}

/* PDF object shapes use a contextual ribbon, separate from annotation strokes. */
.pdf-visual-tools{min-height:72px}
.pdf-visual-shape-tool{position:relative;display:flex}
.pdf-visual-shape-label{display:inline-flex;align-items:center;justify-content:center;gap:3px}
.pdf-visual-shape-label svg{display:block;flex:none;width:9px;height:9px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;transition:transform .15s ease}
#pdfVisualShapeToggle[aria-expanded="true"] .pdf-visual-shape-label svg{transform:rotate(180deg)}
.pdf-visual-shape-menu{position:fixed;z-index:1600;width:182px;padding:6px;border:1px solid #dce2ea;border-radius:9px;background:#ffffff;box-shadow:0 10px 30px #0008}
.pdf-visual-shape-menu[hidden],.pdf-visual-shape-panel[hidden]{display:none!important}
.pdf-visual-tools .pdf-visual-shape-menu button{width:100%;height:40px;flex-direction:row;justify-content:flex-start;gap:12px;padding:0 12px}
.pdf-visual-shape-menu svg{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.5}
.pdf-visual-tools .pdf-visual-shape-menu span{font-size:13px}
.pdf-visual-editor[data-shape-editing] .pdf-visual-ribbon-panel{display:none!important}
.pdf-visual-shape-panel{display:flex;align-items:stretch;gap:0;min-width:max-content;padding:2px 0}
.pdf-shape-group{display:flex;flex-direction:column;justify-content:center;gap:4px;padding:0 10px;border-right:1px solid #dce2ea}
.pdf-visual-tools .pdf-shape-group label{display:flex;gap:5px;padding:0;color:#263244;font-size:11px;white-space:nowrap;min-height:25px}
.pdf-shape-group input,.pdf-shape-group select{box-sizing:border-box;border:1px solid #dce2ea;border-radius:4px;background:#ffffff;color:#263244;height:25px;font:12px system-ui;color-scheme:light}
.pdf-shape-group input[type=number]{width:58px;padding:0 4px}.pdf-shape-group input[type=color]{width:28px;padding:2px}.pdf-shape-group input[type=checkbox]{width:13px;height:13px;accent-color:#6a88ff}.pdf-shape-group input[type=range]{width:110px;accent-color:#6a88ff}.pdf-shape-group select{max-width:95px}
.pdf-visual-tools .pdf-shape-group button{height:24px;min-height:24px;padding:1px 7px;font-size:11px;border-color:#dce2ea;min-width:0;flex-direction:row}
.pdf-visual-tools .pdf-shape-done{min-width:70px;align-self:center;margin:0 12px;font-size:24px;color:#e38b8b}
.pdf-shape-handle{transform:translate(-50%,-50%)}.pdf-shape-handle.is-n,.pdf-shape-handle.is-s{width:18px;height:8px;border-radius:4px;cursor:ns-resize}.pdf-shape-handle.is-e,.pdf-shape-handle.is-w{width:8px;height:18px;border-radius:4px;cursor:ew-resize}
.pdf-visual-editor[data-tool=shape] .pdf-visual-overlay{pointer-events:auto;cursor:crosshair}
.pdf-visual-editor[data-tool=edit-text] .pdf-visual-added-shape-item{outline:1px solid transparent}
.pdf-visual-editor[data-tool=edit-text] .pdf-visual-added-shape-item.is-selected{outline:2px solid #5784ff}

/* Shared editor upgrade presentation. Product prices remain server-authorized. */
.pdf-editor-paywall{position:fixed;width:min(1060px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 40px);padding:0;border:1px solid #dce2ea;border-radius:20px;background:#f5f7fa;color:#263244;overflow:auto;box-shadow:0 30px 100px #0008}
.pdf-editor-paywall[open]{display:grid;grid-template-columns:1.1fr 1fr}
.pdf-editor-paywall::backdrop{background:#0008;backdrop-filter:blur(4px)}
.pdf-editor-paywall-close{position:absolute;right:14px;top:12px;z-index:2}
.pdf-editor-paywall-story{min-width:0;padding:40px;background:radial-gradient(ellipse at 15% 85%,#343c53aa,transparent 65%),linear-gradient(145deg,#ffffff,#ffffff)}
.pdf-editor-paywall-brand{display:block;font-size:12px;font-weight:750;letter-spacing:2px;color:#263244}.pdf-editor-paywall-brand span{margin-left:6px;padding:3px 6px;border-radius:4px;background:#465edc;color:#fff;font-size:9px;letter-spacing:1px}
.pdf-editor-paywall h2{margin:27px 0 10px;font-size:28px;line-height:1.3;letter-spacing:-.5px}
.pdf-editor-paywall-tagline{margin:0 0 22px;color:#628aff;font-size:39px;line-height:1.2;font-weight:750;letter-spacing:-1px}
.pdf-editor-paywall .pdf-visual-ocr-description{min-height:50px;margin:0;color:#647084;font-size:13px;line-height:1.8}
.pdf-editor-paywall-art{position:relative;height:218px;margin:28px 0 30px;border:1px solid #dce2ea;border-radius:12px;background:#ffffff;box-shadow:0 16px 38px #0005;transform:perspective(900px) rotateY(7deg)}
.pdf-editor-art-bar{display:flex;align-items:center;gap:5px;height:28px;padding:0 11px;border-bottom:1px solid #dce2ea;color:#647084;font-size:9px}.pdf-editor-art-bar i{width:6px;height:6px;border-radius:50%;background:#f46c68}.pdf-editor-art-bar i:nth-child(2){background:#e8bb5d}.pdf-editor-art-bar i:nth-child(3){background:#69bc85}.pdf-editor-art-bar span{margin-left:12px}
.pdf-editor-art-tools{padding:8px 16px;color:#647084;font-size:9px;border-bottom:1px solid #dce2ea}
.pdf-editor-art-page{position:relative;margin:13px auto 0;padding:18px 22px;width:72%;height:126px;box-sizing:border-box;border-radius:2px;background:#ebedf4;color:#2b3041}.pdf-editor-art-page small{display:block;font-size:6px;letter-spacing:2px;color:#647084}.pdf-editor-art-page strong{display:block;margin:7px 0 12px;font-size:18px}.pdf-editor-art-page>span{display:block;width:80%;height:3px;margin:6px 0;background:#c1c7d3}.pdf-editor-art-page>span:nth-of-type(2){width:63%}
.pdf-editor-art-selection{position:absolute;right:-22px;bottom:8px;padding:8px 14px;background:#dce4ff;border:1px solid #5c87ff;color:#496de4;font:italic 18px Georgia}.pdf-editor-art-selection i{position:absolute;width:5px;height:5px;background:white;border:1px solid #5c87ff}.pdf-editor-art-selection i:nth-child(1){top:-4px;left:-4px}.pdf-editor-art-selection i:nth-child(2){top:-4px;right:-4px}.pdf-editor-art-selection i:nth-child(3){bottom:-4px;left:-4px}.pdf-editor-art-selection i:nth-child(4){bottom:-4px;right:-4px}
.pdf-editor-art-chip{position:absolute;bottom:-15px;left:14px;padding:8px 12px;border:1px solid #dce2ea;border-radius:30px;background:#edf1f7;color:#263244;font-size:10px}
.pdf-editor-paywall .pdf-editor-paywall-summary{display:flex;padding:0;border:0;background:none;align-items:flex-start;gap:9px;color:#263244}.pdf-editor-paywall-summary strong{font-size:12px}.pdf-editor-paywall-summary small{display:block;margin-top:4px;font-size:11px;color:#647084;line-height:1.6}
.pdf-editor-paywall-plans{display:flex;min-width:0;flex-direction:column;padding:54px 30px 25px;gap:16px}.pdf-editor-plan-eyebrow{font-size:13px;color:#647084;letter-spacing:1px}
.pdf-editor-paywall .pdf-editor-offers{display:flex;flex-direction:column;gap:12px;margin:0}
.pdf-editor-paywall .pdf-editor-offer{position:relative;min-height:122px;align-items:center;padding:20px;border:2px solid #dce2ea;border-radius:13px;background:#ffffff;box-shadow:none;transform:none}
.pdf-editor-paywall .pdf-editor-offer.is-selected{border-color:#5280ff;background:#edf1f7;box-shadow:inset 0 0 0 1px #5280ff33}
.pdf-editor-paywall .pdf-editor-offer-copy{display:block;flex:1}.pdf-editor-paywall .pdf-editor-offer-copy strong{display:flex;flex-wrap:wrap;align-items:center;gap:10px;font-size:15px}.pdf-editor-paywall .pdf-editor-offer-copy b{font-size:30px;line-height:1.1;color:#263244}.pdf-editor-paywall .is-selected .pdf-editor-offer-copy b{color:#779aff}
.pdf-editor-paywall .pdf-editor-offer-copy em{font-size:9px;color:#a9beff;background:#edf1f7;border-radius:4px;padding:3px 5px;font-style:normal}.pdf-editor-paywall .pdf-editor-offer-copy small{display:block;margin-top:11px;color:#647084;line-height:1.7;font-size:11px}
.pdf-editor-offer-check{display:grid;flex:none;place-items:center;width:18px;height:18px;border:1px solid #dce2ea;border-radius:50%;color:transparent;font-size:11px}.is-selected .pdf-editor-offer-check{background:#5279ee;border-color:#5279ee;color:white}
.pdf-editor-paywall .pdf-editor-task-rule{margin:0;color:#647084;font-size:10px;line-height:1.7}.pdf-editor-paywall .pdf-editor-paywall-status{margin:0;color:#ffbd93;min-height:0;font-size:12px}.pdf-editor-paywall-status:empty{display:none}
.pdf-editor-purchase-actions{display:flex;flex-direction:column;gap:10px;margin-top:auto}.pdf-editor-purchase-actions>button{cursor:pointer;font:inherit;border:0}.pdf-editor-purchase-actions #pdfEditorPurchase{min-height:50px;border-radius:9px;background:linear-gradient(110deg,#329bf5,#5657f3);color:#263244;font-size:16px;font-weight:650}.pdf-editor-purchase-actions>button:disabled{opacity:.5;cursor:wait}.pdf-editor-purchase-actions>span{color:#647084;font-size:10px;text-align:center}.pdf-editor-purchase-actions #pdfEditorPaywallDone{padding:8px;background:transparent;color:#647084;font-size:12px}.pdf-editor-paywall [hidden]{display:none!important}
.pdf-editor-purchase-actions #pdfEditorPaywallLogin{min-height:42px;border:1px solid #dce2ea;border-radius:9px;background:transparent;color:#263244;font-size:13px;font-weight:500}
@media(max-width:760px){.pdf-editor-paywall{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);border-radius:14px}.pdf-editor-paywall[open]{grid-template-columns:1fr}.pdf-editor-paywall-story{padding:24px 24px 18px}.pdf-editor-paywall h2{font-size:23px;margin:16px 0 8px}.pdf-editor-paywall-tagline{font-size:28px;margin-bottom:12px}.pdf-editor-paywall-art{display:none}.pdf-editor-paywall .pdf-visual-ocr-description{min-height:0;margin-bottom:12px}.pdf-editor-paywall-plans{padding:22px 24px;gap:12px}.pdf-editor-paywall .pdf-editor-offer{min-height:104px;padding:15px}.pdf-editor-paywall .pdf-editor-offer-copy b{font-size:26px}}

.pdf-visual-editor[data-tool=edit-text] .pdf-visual-added-shape-item{z-index:10}.pdf-shape-handle{z-index:12}.pdf-visual-shape-rotate{z-index:12}
.pdf-editor-paywall .pdf-editor-offer.is-featured::before{display:none}
.pdf-visual-editor[data-shape-editing] .pdf-visual-text-item{outline-color:transparent!important}

/* Give the main image uploader more room after removing its duplicate guide. */
#panel-web #dropzone{min-height:380px}
@media(max-width:820px){#panel-web #dropzone{min-height:340px}}
@media(max-width:620px){#panel-web #dropzone{min-height:300px;display:flex;flex-direction:column;gap:16px;justify-content:center}}

/* Office defaults: light PDF chrome, including contextual controls and dialogs. */
.pdf-visual-editor,.pdf-visual-ocr-dialog,.pdf-editor-paywall{color-scheme:light}
.pdf-visual-head,.pdf-visual-tabbar,.pdf-visual-foot{background:#f7f8fb;color:#475569}
.pdf-visual-editor,.pdf-visual-body,.pdf-visual-workspace,html[data-pdf-editor-active],html[data-pdf-editor-active] body{background:#edf0f5}
.pdf-visual-pages,.pdf-visual-page-nav,.pdf-visual-thumbs,.pdf-visual-thumb{background:#fff}
.pdf-visual-tools{background:#fff;border-color:#dce2ea}
.pdf-visual-tabs button[aria-selected="true"],.pdf-visual-tabs button:hover{color:#4164cf;background:#eaf0ff}
.pdf-visual-tabbar .pdf-visual-history-button:hover:not(:disabled),.pdf-visual-tools button:hover:not(:disabled){background:#edf2fa;color:#34445c}
.pdf-visual-tools button.is-active,.pdf-visual-text-controls button[aria-pressed="true"],.pdf-visual-image-controls button:hover:not(:disabled){background:#eaf0ff;border-color:#b7c9f4;color:#355bc6}
.pdf-visual-tools button.is-active b{color:#355bc6}
.pdf-visual-head-button:hover:not(:disabled){background:#edf2fa}
.pdf-visual-head-button.pdf-visual-save:hover:not(:disabled){background:#3b59ca;color:#fff}
.pdf-visual-stage{box-shadow:0 3px 18px #24334b26}
.pdf-visual-editbar.is-floating-image{background:#fffffff5;border-color:#d5deea;box-shadow:0 12px 32px #24334b26}
.pdf-visual-editbar.is-floating-image #pdfVisualDeleteSelection{background:#fff0f0;border-color:#f0cbd0;color:#b74353}
.pdf-visual-ocr-dialog,.pdf-editor-paywall{box-shadow:0 24px 80px #24334b30}
.pdf-visual-ocr-dialog::backdrop,.pdf-editor-paywall::backdrop{background:#24334b50;backdrop-filter:blur(3px)}
.pdf-visual-ocr-close:hover,.pdf-visual-ocr-cancel:hover:not(:disabled){background:#edf2fa;color:#34445c}
.pdf-visual-ocr-eyebrow,.pdf-editor-paywall-tagline{color:#4969df}
.pdf-visual-ocr-note.is-error,.pdf-editor-paywall .pdf-editor-paywall-status{color:#b74353}
.pdf-visual-repair-entitlement{background:#edf8f1;border-color:#cce4d4;color:#386b4c}
.pdf-editor-paywall-story{background:linear-gradient(145deg,#f0f4ff,#fafbff)}
.pdf-editor-paywall-art{background:#f6f8fc;box-shadow:0 12px 30px #24334b18}
.pdf-editor-art-chip,.pdf-editor-offer-mark{background:#e9efff;color:#4164cf}
.pdf-editor-paywall .pdf-editor-offer.is-selected{background:#eff3ff;border-color:#6f8de6}
.pdf-editor-paywall .is-selected .pdf-editor-offer-copy b{color:#4164cf}
.pdf-editor-paywall .pdf-editor-offer-copy em{background:#e6edff;color:#4164cf}
.pdf-editor-purchase-actions #pdfEditorPaywallLogin{border-color:#b7c9ed;color:#4164cf}
.pdf-visual-editbar.is-floating-text{box-shadow:0 12px 32px #24334b26}
.pdf-visual-text-controls button:hover:not(:disabled),.pdf-visual-editbar-actions button:hover:not(:disabled){background:#eaf0ff;border-color:#b7c9f4;color:#355bc6}
.pdf-visual-tools .pdf-visual-table-manual-actions .pdf-visual-table-manual-confirm:hover:not(:disabled),.pdf-editor-purchase-actions #pdfEditorPurchase{color:#fff}
