
:root{--ink:#171713;--paper:#fffdf8;--cream:#f3efe6;--muted:#625d55;--blue:#3155e7;--green:#b7efcd;--orange:#f06431;--line:2px solid var(--ink);--max:1160px;--shadow:6px 6px 0 var(--ink)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.68 ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}img{max-width:100%}a{color:inherit}.wrap{width:min(var(--max),92vw);margin-inline:auto}.skip{position:absolute;left:-9999px}.skip:focus{left:12px;top:12px;z-index:100;background:white;padding:10px;border:2px solid}.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:13px 4vw;border-bottom:var(--line);background:#f3efe6ed;backdrop-filter:blur(12px)}.brand{text-decoration:none;font-weight:950;letter-spacing:-.035em}.nav{display:flex;align-items:center;gap:18px}.nav a{text-decoration:none;font-weight:800;font-size:14px}.menu-button{display:none;width:auto;padding:7px 10px;background:white;color:var(--ink)}.hero{padding:72px 0 46px}.eyebrow{font-size:12px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.hero h1,.article-head h1{font-size:clamp(46px,8.4vw,96px);line-height:.9;letter-spacing:-.072em;margin:.14em 0}.hero p{font-size:20px;max-width:790px}.trust{display:inline-block;padding:9px 13px;background:var(--green);border:var(--line);box-shadow:5px 5px 0}.tool{display:grid;grid-template-columns:minmax(330px,410px) minmax(0,1fr);gap:26px;padding:46px 0;border-top:var(--line)}.card,.stage,.answer,.toc,.example,.faq details,.panel{border:var(--line);background:var(--paper)}.card{padding:22px}.card h2{margin-top:0;font-size:29px;letter-spacing:-.04em}.field-label,label{display:block;margin:14px 0 6px;font-weight:850}.help{display:block;margin-top:5px;color:var(--muted);font-size:13px}input,select,button{width:100%;min-height:46px;padding:10px 12px;border:2px solid;border-radius:0;font:inherit;background:white;color:var(--ink)}input:focus-visible,select:focus-visible,button:focus-visible,a:focus-visible,summary:focus-visible{outline:4px solid #ffbf47;outline-offset:2px}button{font-weight:900;background:var(--blue);color:white;cursor:pointer}button.secondary{background:white;color:var(--ink)}button:disabled{cursor:not-allowed;opacity:.45}.row{display:grid;grid-template-columns:1fr 118px;gap:10px}.row.equal{grid-template-columns:1fr 1fr}.size-fields{display:grid;grid-template-columns:1fr 1fr 104px;gap:10px;align-items:end}.size-field label{margin:0 0 6px;font-size:13px}.compact-check{margin:12px 0 4px}.check{display:flex;align-items:flex-start;gap:10px;margin:14px 0}.check input{width:20px;min-height:20px;margin-top:3px}.check label{margin:0;font-weight:700}.metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:16px 0}.metric{padding:10px;background:#ebe5da;border:1px solid;min-width:0}.metric span{display:block;font-size:11px;font-weight:850;text-transform:uppercase;letter-spacing:.08em}.metric b{display:block;overflow-wrap:anywhere}.size-summary{margin:16px 0;padding:14px;border-left:8px solid var(--blue);background:#eef1ff}.size-summary span{display:block;font-size:12px;font-weight:850;text-transform:uppercase;letter-spacing:.1em}.size-summary strong{display:block;font-size:20px;line-height:1.35}.status{min-height:52px;margin:12px 0 0;color:var(--muted)}.status.warn{color:#8d2c10;font-weight:800}.status.good{color:#17633a;font-weight:800}.stage{min-height:620px;padding:54px 50px 62px;display:grid;place-items:center;background:#d8d0c3;overflow:hidden}.paper-shell{width:min(480px,100%);position:relative}.paper-name{position:absolute;left:0;top:-32px;font-size:12px;font-weight:900;letter-spacing:.09em;text-transform:uppercase}.paper{width:100%;aspect-ratio:var(--paper-aspect,210/297);background:white;position:relative;box-shadow:0 14px 38px #0004;overflow:visible}.paper:before{content:attr(data-width-label);position:absolute;left:50%;bottom:-32px;transform:translateX(-50%);white-space:nowrap;font-size:10px;font-weight:900;color:#4b4741}.paper:after{content:attr(data-height-label);position:absolute;right:-84px;top:50%;transform:translateY(-50%) rotate(90deg);white-space:nowrap;font-size:10px;font-weight:900;color:#4b4741}.safe-zone{position:absolute;inset:var(--safe-y,3.37%) var(--safe-x,4.76%);border:1px dashed #aaa;pointer-events:none}.safe-zone:after{content:"10 mm guide";position:absolute;right:3px;bottom:2px;font-size:8px;color:#777}.image-frame{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:23.81%;aspect-ratio:1;min-width:2px;min-height:2px;border:1px dashed var(--blue);background:#edf0ff;box-shadow:0 0 0 1px #fff}.image-frame img{display:block;width:100%;height:100%;object-fit:fill}.image-frame.empty img{display:none}.image-frame.empty:after{content:"Your image";position:absolute;inset:0;display:grid;place-items:center;color:#6d6a7d;font-size:12px;font-weight:800}.dim-h{position:absolute;left:0;right:0;top:-28px;border-top:2px solid var(--blue);height:18px;color:var(--blue)}.dim-h:before,.dim-h:after{content:"";position:absolute;top:-5px;width:2px;height:11px;background:var(--blue)}.dim-h:before{left:0}.dim-h:after{right:0}.dim-h b{position:absolute;left:50%;top:-23px;transform:translateX(-50%);padding:2px 5px;background:white;border:1px solid var(--blue);font-size:10px;white-space:nowrap}.dim-v{position:absolute;top:0;bottom:0;right:-28px;border-right:2px solid var(--orange);width:18px;color:#9c3512}.dim-v:before,.dim-v:after{content:"";position:absolute;right:-5px;width:11px;height:2px;background:var(--orange)}.dim-v:before{top:0}.dim-v:after{bottom:0}.dim-v b{position:absolute;left:10px;top:50%;transform:translateY(-50%) rotate(90deg);padding:2px 5px;background:white;border:1px solid var(--orange);font-size:10px;white-space:nowrap}.preview-caption{text-align:center;margin:44px 0 0;color:#5f5a52;font-size:12px;font-weight:700}.section{padding:62px 0;border-top:1px solid}.section-grid{display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw}.section h2{font-size:clamp(38px,6vw,70px);line-height:.95;letter-spacing:-.06em;margin:0}.section h3{font-size:25px;line-height:1.18;letter-spacing:-.02em}.note,.answer{border-left:8px solid var(--orange);padding:17px;background:white}.answer{border:var(--line);border-left:10px solid var(--blue);margin:22px 0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.link-card{display:block;padding:20px;border:var(--line);background:var(--paper);text-decoration:none}.link-card:hover{transform:translate(-2px,-2px);box-shadow:5px 5px 0}.link-card b{display:block;font-size:21px;line-height:1.2}.link-card span{display:block;color:var(--muted);margin-top:8px}.steps{counter-reset:steps;display:grid;gap:14px}.step{counter-increment:steps;padding:18px 18px 18px 68px;border:var(--line);background:white;position:relative}.step:before{content:counter(steps);position:absolute;left:16px;top:16px;width:36px;height:36px;display:grid;place-items:center;background:var(--blue);color:white;font-weight:900;border:2px solid}.step h3{margin:0 0 5px}.tips{display:grid;grid-template-columns:1fr 1fr;gap:16px}.tip{padding:20px;border:var(--line);background:white}.tip h3{margin-top:0}.faq{display:grid;gap:10px}.faq details{padding:0}.faq summary{cursor:pointer;font-weight:900;font-size:18px;padding:17px 50px 17px 17px;position:relative}.faq summary:after{content:"+";position:absolute;right:18px;font-size:24px}.faq details[open] summary:after{content:"−"}.faq details div{padding:0 18px 18px;color:#332f2a}.article-head{padding:58px 0 34px}.article-head h1{font-size:clamp(44px,7vw,78px);max-width:1000px}.dek{font-size:21px;max-width:820px}.byline{color:var(--muted);font-size:14px}.breadcrumbs{font-size:13px;color:var(--muted);padding-top:24px}.breadcrumbs a{text-decoration:none}.article-layout{display:grid;grid-template-columns:250px minmax(0,760px);gap:56px;align-items:start;padding-bottom:74px}.toc{padding:18px;position:sticky;top:80px}.toc b{display:block;margin-bottom:8px}.toc a{display:block;padding:5px 0;text-decoration:none;font-size:14px}.prose h2{font-size:35px;line-height:1.08;letter-spacing:-.04em;margin:1.7em 0 .45em}.prose h3{font-size:24px;margin:1.45em 0 .3em}.prose p,.prose li{font-size:17px}.prose table{width:100%;border-collapse:collapse;margin:24px 0;background:white}.prose th,.prose td{border:1px solid;padding:10px;text-align:left}.prose th{background:#ebe5da}.formula{padding:18px;border:var(--line);background:#eef1ff;font:700 19px/1.5 ui-monospace,SFMono-Regular,monospace;overflow:auto}.example{padding:18px;margin:18px 0}.references{padding-left:20px}.references a{overflow-wrap:anywhere}.author-box{margin-top:48px;padding:20px;border:var(--line);background:#e9e2d7}.footer{padding:38px 0 64px;border-top:var(--line)}.footer-grid{display:grid;grid-template-columns:1fr 2fr;gap:32px}.footer-brand{display:inline-block}.footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.footer a{text-decoration:none}.calc-output{font-size:clamp(34px,6vw,64px);font-weight:900;letter-spacing:-.05em;margin:.2em 0}.callout{padding:16px;border:1px solid;background:#fff}.legal{width:min(850px,92vw);margin:auto;padding:52px 0 82px}.legal h1{font-size:clamp(43px,8vw,68px);letter-spacing:-.055em;line-height:.95}.legal h2{margin-top:40px}.badge{display:inline-block;padding:3px 8px;border:1px solid;font-size:12px;font-weight:800}.sitemap-list{columns:2;column-gap:50px}.sitemap-list li{break-inside:avoid;margin:.5em 0}.ko{word-break:keep-all}.ad-placeholder{display:none}
@media(max-width:880px){.menu-button{display:block}.nav{display:none;position:absolute;left:0;right:0;top:100%;padding:14px 4vw;background:var(--cream);border-bottom:var(--line);flex-direction:column;align-items:flex-start}.nav.open{display:flex}.tool,.section-grid,.article-layout,.footer-grid{grid-template-columns:1fr}.toc{position:static}.cards{grid-template-columns:1fr}.stage{min-height:480px;padding:50px 34px 60px}.metrics{grid-template-columns:1fr}.paper:after{display:none}.footer-links{grid-template-columns:1fr 1fr}.hero{padding-top:52px}.tips{grid-template-columns:1fr}}
@media(max-width:500px){.size-fields{grid-template-columns:1fr 1fr}.size-fields .unit-field{grid-column:1/-1}.stage{padding:50px 27px 58px}.dim-h b,.dim-v b{font-size:8px}.paper:before{font-size:8px}.row.equal{grid-template-columns:1fr}.footer-links{grid-template-columns:1fr}.sitemap-list{columns:1}.hero h1{font-size:48px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.network-promo{margin:0 0 56px;padding:24px;border:2px solid #171713;background:#eef1ff;display:flex;align-items:center;justify-content:space-between;gap:20px;box-shadow:7px 7px 0 #171713}.network-promo h2{margin:0 0 6px;font-size:28px;letter-spacing:-.04em}.network-promo p{margin:0;color:#5f5a52}.network-promo a{display:inline-block;padding:12px 15px;background:#3155e7;color:#fff;text-decoration:none;font-weight:900;white-space:nowrap}@media(max-width:700px){.network-promo{display:block}.network-promo a{margin-top:16px}}


/* v1.8 — direct drag resizing on the proportional A4 preview */
.image-frame.empty:after{pointer-events:none}
.resize-handle{position:absolute;z-index:6;display:block;min-width:0;min-height:0;padding:0;border:2px solid var(--ink);border-radius:999px;background:white;color:var(--ink);box-shadow:0 1px 0 #0002;touch-action:none;user-select:none;-webkit-user-select:none}
.resize-handle:hover,.resize-handle:focus-visible{background:#ffbf47}
.resize-handle-e{width:14px;height:42px;right:-8px;top:50%;transform:translateY(-50%);cursor:ew-resize;border-color:var(--blue);background:var(--blue)}
.resize-handle-s{width:42px;height:14px;left:50%;bottom:-8px;transform:translateX(-50%);cursor:ns-resize;border-color:var(--orange);background:var(--orange)}
.resize-handle-se{width:22px;height:22px;right:-12px;bottom:-12px;cursor:nwse-resize;background:white}
.image-frame.is-resizing{outline:3px solid #ffbf47;outline-offset:2px}
.image-frame.is-resizing .resize-handle{box-shadow:0 0 0 3px #fff8}
@media (pointer:coarse){.resize-handle-e{width:22px;height:58px;right:-12px}.resize-handle-s{width:58px;height:22px;bottom:-12px}.resize-handle-se{width:30px;height:30px;right:-16px;bottom:-16px}}

#lockRatio:disabled + label{opacity:.55}#ratioHelp{margin-top:-2px;margin-bottom:10px}

/* v2.0 — multi-image A4 layout, direct move and per-image resizing */
.tool{grid-template-columns:minmax(360px,460px) minmax(0,1fr);align-items:start}
.tool-heading-row,.image-list-heading,.selected-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.tool-heading-row h2{margin-bottom:0}.tool-kicker{margin:2px 0 0;color:var(--muted);font-size:13px}.image-count{flex:0 0 auto;padding:4px 8px;border:1px solid;background:#eef1ff;font-size:12px;font-weight:900}.image-list-heading{align-items:center;margin:18px 0 8px}.image-list-heading .text-button{width:auto;min-height:34px;padding:5px 9px;background:white;color:var(--ink);font-size:12px}.image-list{display:grid;gap:7px;max-height:238px;overflow:auto;padding:2px}.image-list:empty{min-height:48px;border:1px dashed #9b958c;background:#faf7f0}.image-list:empty:after{content:"No images added yet";display:grid;place-items:center;min-height:46px;color:var(--muted);font-size:13px}.image-list-row{border:1px solid;background:white}.image-list-row.is-selected{border:2px solid var(--blue);box-shadow:3px 3px 0 #171713}.image-list-select{display:grid;grid-template-columns:42px minmax(0,1fr);gap:10px;align-items:center;width:100%;min-height:54px;padding:6px;background:white;color:var(--ink);text-align:left;border:0}.image-list-select img{width:42px;height:42px;object-fit:cover;border:1px solid}.image-list-select span{min-width:0}.image-list-select b,.image-list-select small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-list-select b{font-size:13px}.image-list-select small{color:var(--muted);font-size:11px}.selected-controls{margin-top:18px;padding-top:16px;border-top:2px solid}.selected-controls.is-disabled{opacity:.7}.selected-heading{align-items:baseline;margin-bottom:10px}.selected-heading span{font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.selected-heading strong{max-width:65%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:right}.position-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.layer-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:14px 0}.layer-actions .danger-button{grid-column:1/-1;background:#fff;color:#8d2c10;border-color:#8d2c10}.layer-actions button{min-height:40px;padding:7px 9px;font-size:13px}.items-layer{position:absolute;inset:0;overflow:hidden;z-index:2}.empty-stage{position:absolute;inset:0;z-index:1;display:grid;place-content:center;gap:4px;text-align:center;color:#777;pointer-events:none}.empty-stage[hidden]{display:none}.empty-stage b{font-size:20px}.empty-stage span{font-size:12px}.print-item{position:absolute;min-width:2px;min-height:2px;cursor:move;touch-action:none;user-select:none;-webkit-user-select:none;outline:1px dashed transparent;background:#edf0ff}.print-item img{display:block;width:100%;height:100%;max-width:none;object-fit:fill;pointer-events:none}.print-item.is-selected{outline:3px solid var(--blue);outline-offset:1px;box-shadow:0 0 0 2px #fff8}.print-item.is-moving{outline-color:#ffbf47;cursor:grabbing}.print-item.is-resizing{outline-color:#ffbf47}.print-item .dim-h,.print-item .dim-v,.print-item .resize-handle,.print-item .move-hint{display:none}.print-item.is-selected .dim-h,.print-item.is-selected .dim-v,.print-item.is-selected .resize-handle,.print-item.is-selected .move-hint{display:block}.move-hint{position:absolute;left:50%;top:50%;z-index:5;transform:translate(-50%,-50%);padding:2px 5px;background:#171713d9;color:white;font-size:9px;font-weight:900;white-space:nowrap;pointer-events:none}.print-item.is-moving .move-hint{background:#ffbf47;color:var(--ink)}.print-item .dim-h,.print-item .dim-v{z-index:5}.print-item .resize-handle{z-index:8}.safe-zone{z-index:1}.paper{isolation:isolate}.preview-caption{max-width:660px;margin-inline:auto}.stage{overflow:visible}.selected-controls input:disabled{background:#ebe5da}.selected-controls #lockRatio:disabled+label{opacity:.55}
@media(max-width:880px){.tool{grid-template-columns:1fr}.stage{overflow:hidden}.image-list{max-height:200px}}
@media(max-width:500px){.position-fields,.layer-actions{grid-template-columns:1fr}.layer-actions .danger-button{grid-column:auto}.tool-heading-row{display:block}.image-count{display:inline-block;margin-top:8px}.print-item.is-selected .move-hint{display:none}}


.paper-controls{margin:14px 0 18px;padding:14px;border:1px solid;background:#f6f2e8}.paper-select-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.segment{display:grid;grid-template-columns:1fr 1fr;gap:8px}.segment-option{display:block;margin:0}.segment-option input{position:absolute;opacity:0;pointer-events:none}.segment-option span{display:grid;place-items:center;min-height:46px;padding:10px 12px;border:2px solid;background:white;font-weight:800;cursor:pointer}.segment-option input:focus-visible+span{outline:4px solid #ffbf47;outline-offset:2px}.segment-option input:checked+span{background:var(--ink);color:#fff}.rotation-controls{margin-top:12px}.rotation-controls>label{margin-bottom:7px}.rotation-group{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.rotation-button{min-height:40px;padding:8px;background:white;color:var(--ink)}.rotation-button.is-active{background:var(--blue);color:#fff}.item-svg{display:block;width:100%;height:100%;overflow:visible;pointer-events:none}.item-svg image{pointer-events:none}.paper-name{max-width:100%;white-space:normal}.metric{min-height:66px}@media(max-width:640px){.paper-select-grid,.rotation-group{grid-template-columns:1fr 1fr}}
.tool>.card{position:relative;z-index:2}.tool>.stage{position:relative;z-index:1;overflow:hidden}

/* v2.3 — mobile-first editor order, overflow guard and print actions */
html,body{max-width:100%;overflow-x:hidden}
.wrap,.tool,.tool>.card,.tool>.stage,.paper-controls,.paper-select-grid,.size-fields,.position-fields,.rotation-group,.layer-actions,.metrics,.image-list,.image-list-row,.selected-controls{min-width:0}
input,select,button{max-width:100%;min-width:0}
.paper-select-grid>*,.size-fields>*,.position-fields>*,.rotation-group>*,.layer-actions>*,.metrics>*{min-width:0}
select{width:100%;text-overflow:ellipsis}
.export-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:14px}
.export-actions .secondary{background:#fff;color:var(--ink)}
.empty-stage{pointer-events:auto;padding:20px}
.empty-stage .stage-add-button{width:auto;min-height:40px;margin:10px auto 0;padding:8px 13px;background:var(--blue);color:#fff;pointer-events:auto}
.mobile-export-bar{display:none}

@media(max-width:880px){
  .wrap{width:min(100% - 24px,var(--max))}
  .hero{padding:28px 0 22px}
  .hero h1{font-size:clamp(38px,11vw,54px);line-height:.94;letter-spacing:-.055em;margin:.18em 0}
  .hero p{font-size:16px;line-height:1.55;margin:12px 0 18px}
  .hero .eyebrow{font-size:11px;margin:0}
  .trust{font-size:13px;box-shadow:3px 3px 0}
  .site-header{padding:10px 12px}
  .site-header .brand{max-width:calc(100% - 90px);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .tool{display:flex;flex-direction:column;gap:14px;padding:20px 0 38px}
  .tool>.stage{order:1;width:100%;min-height:0;padding:42px 16px 48px;overflow:hidden}
  .tool>.card{order:2;width:100%;padding:16px}
  .paper-shell{width:min(290px,100%)}
  .paper-name{top:-27px;font-size:10px;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .paper:before{bottom:-27px;width:100%;white-space:normal;text-align:center;font-size:9px;line-height:1.2}
  .paper:after{display:none}
  .preview-caption{margin-top:36px;font-size:11px;line-height:1.45}
  .paper-select-grid{grid-template-columns:1fr}
  .paper-controls{padding:12px}
  .card h2{font-size:25px}
  .mobile-export-bar{position:fixed;left:0;right:0;bottom:0;z-index:120;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:#fffdf8f2;border-top:2px solid var(--ink);backdrop-filter:blur(12px)}
  .mobile-export-bar button{min-height:48px}
  body.has-mobile-actions{padding-bottom:calc(72px + env(safe-area-inset-bottom))}
}

@media(max-width:500px){
  .wrap{width:calc(100% - 20px)}
  .webbe-network+ .skip + .site-header{max-width:100%}
  .paper-shell{width:min(270px,100%)}
  .tool>.stage{padding-inline:12px}
  .size-fields{grid-template-columns:1fr 1fr}
  .size-fields .unit-field{grid-column:1/-1}
  .rotation-group{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}
  .rotation-button{padding:7px 3px;font-size:13px}
  .position-fields{grid-template-columns:1fr 1fr}
  .layer-actions{grid-template-columns:1fr 1fr}
  .layer-actions .danger-button{grid-column:1/-1}
  .metrics{grid-template-columns:1fr 1fr}
  .metrics .metric:last-child{grid-column:1/-1}
  .export-actions{grid-template-columns:1fr}
  .preview-caption{display:none}
  .image-list-select{grid-template-columns:38px minmax(0,1fr)}
  .image-list-select img{width:38px;height:38px}
}

@media(max-width:360px){
  .paper-shell{width:min(245px,100%)}
  .hero h1{font-size:36px}
  .position-fields,.layer-actions,.metrics{grid-template-columns:1fr}
  .metrics .metric:last-child,.layer-actions .danger-button{grid-column:auto}
}
.mobile-export-bar[hidden]{display:none!important}
.segment-option input{width:1px!important;max-width:1px!important;min-width:1px!important;height:1px!important;min-height:1px!important;padding:0!important;margin:0!important}
.items-layer:empty{pointer-events:none}
@media(max-width:880px){html{scroll-padding-bottom:96px}.card button,.card input,.card select{scroll-margin-bottom:96px}}

/* v2.6 English-only upload and direction controls */
.upload-control{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:12px;width:100%;min-width:0;padding:10px;border:2px solid;background:#fff}
.visually-hidden-file{position:absolute!important;width:1px!important;height:1px!important;min-width:1px!important;min-height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.upload-button{display:inline-grid;place-items:center;width:auto;min-height:44px;margin:0;padding:9px 14px;border:2px solid var(--ink);background:var(--blue);color:#fff;font-weight:900;cursor:pointer;white-space:nowrap}
.visually-hidden-file:focus-visible+.upload-button{outline:4px solid #ffbf47;outline-offset:2px}
.upload-selection{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--muted)}
@media(max-width:500px){.upload-control{grid-template-columns:1fr}.upload-button{width:100%}.upload-selection{text-align:center;white-space:normal;overflow-wrap:anywhere}}
