:root {
  --purple: #e9782b;
  --purple-dark: #c85c16;
  --lilac: #fff0e4;
  --ink: #2d211c;
  --muted: #766b65;
  --line: #eadfd8;
  --shadow: 0 22px 60px rgba(107, 67, 42, .12);
}
body { background: linear-gradient(180deg, #fff 0, #fff9f5 100%); }
.primary { box-shadow: 0 7px 18px rgba(233, 120, 43, .22); }
.dropzone { border-color: #edc6ad; background: #fffaf7; }
.image-card, .result-visual { background: #faf4f0; }
.text-btn { min-width: 52px; }
small, label, .eyebrow, .note, .privacy, .product small, .stats small, .section-head span, .status small, summary {
  font-family: "Century Gothic", CenturyGothic, AppleGothic, Arial, sans-serif;
}
.print-guide { border: 1px solid #efcfba; border-radius: 13px; overflow: hidden; margin: 16px 0; }
.stats { grid-template-columns: repeat(4, 1fr); }
.guide-title { padding: 13px 14px; background: #fff7f1; }
.guide-title b, .guide-title span { display: block; }
.guide-title b { font-size: 15px; }
.guide-title span { margin-top: 4px; color: var(--muted); font: 12px/1.45 "Century Gothic", CenturyGothic, AppleGothic, Arial, sans-serif; }
.guide-row { display: flex; justify-content: space-between; align-items: center; gap: 14px; padding: 11px 14px; border-top: 1px solid var(--line); font-size: 13px; }
.guide-row > span { color: var(--muted); }
.guide-row b { text-align: right; font-size: 13px; }
.guide-row b small { display: block; color: var(--muted); font-weight: 500; margin-top: 2px; }
.guide-row.chosen { background: var(--lilac); }
.guide-row em { display: inline-block; margin-left: 5px; padding: 2px 6px; border-radius: 20px; background: var(--purple); color: #fff; font-size: 10px; font-style: normal; }
.setting-help { margin: 10px 0 0; color: var(--muted); font: 12px/1.55 "Century Gothic", CenturyGothic, AppleGothic, Arial, sans-serif; }
.ai-note { display: flex; gap: 12px; margin: 15px 0; padding: 13px 15px; border-radius: 11px; background: #f8f6f4; color: var(--muted); font: 12px/1.55 "Century Gothic", CenturyGothic, AppleGothic, Arial, sans-serif; }
.ai-note b { color: var(--ink); white-space: nowrap; }
.topbar { height: 88px; }
.brand { gap: 10px; }
.brand > small { letter-spacing: 1.7px; color: var(--muted); font-weight: 800; }
.logo-crop { display: block; position: relative; overflow: hidden; width: 160px; height: 78px; }
.logo-crop img { position: absolute; width: 178px; max-width: none; left: -8px; top: -38px; }
@media (max-width: 760px) {
  .stats { grid-template-columns: repeat(2, 1fr); }
  .topbar { height: 72px; }
  .logo-crop { width: 130px; height: 64px; }
  .logo-crop img { width: 144px; left: -7px; top: -30px; }
  .brand > small { font-size: 8px; letter-spacing: 1px; }
  .guide-row { align-items: flex-start; }
  .ai-note { display: block; }
  .ai-note b { display: block; margin-bottom: 4px; }
}
.manual-download{display:block;margin:12px 0 14px;padding:14px 18px;border:2px solid var(--orange,#e9782b);border-radius:12px;background:#fff7f0;color:var(--orange,#e9782b);font-weight:700;text-align:center;text-decoration:none}.manual-download:hover{background:#ffeadb}.manual-download.hidden{display:none}.ai-upscale-box{display:none;flex-direction:column;align-items:stretch;gap:10px}.ai-progress{display:none;font-size:12px;color:var(--muted)}.ai-done{display:none;font-size:12px;color:var(--green);font-weight:700}
.pixel-change{width:100%;display:grid;grid-template-columns:1fr auto 1fr;grid-template-areas:"before-label arrow after-label" "before arrow after";align-items:center;gap:4px 14px;padding:12px 14px;border-radius:12px;background:#fff}.pixel-change small:first-of-type{grid-area:before-label}.pixel-change strong:first-of-type{grid-area:before}.pixel-change i{grid-area:arrow;font-size:22px;color:var(--orange,#e9782b);font-style:normal}.pixel-change small:last-of-type{grid-area:after-label}.pixel-change strong:last-of-type{grid-area:after;color:var(--orange,#e9782b)}.pixel-change small{color:var(--muted)}.pixel-note{width:100%;margin:0;font-size:13px;line-height:1.45;color:var(--muted)}
.simple-guide{padding:18px}.simple-guide>b{display:block;margin-bottom:12px;font-size:20px}.simple-guide>div{display:flex;justify-content:space-between;gap:18px;padding:10px 0;border-top:1px solid var(--line)}.simple-guide>div span{color:var(--muted)}.simple-guide>div strong{text-align:right}.simple-guide p{margin:12px 0 8px;padding:12px 14px;border-radius:10px;font-weight:800}.simple-guide p.pass{background:#e9f8ef;color:var(--green)}.simple-guide p.fail{background:#fff0f0;color:var(--red)}.simple-guide small{display:block;line-height:1.45;color:var(--muted)}
.simple-guide .ai-dpi-change{margin:8px 0;padding:12px 14px;border:0;border-radius:10px;background:#fff4e9}.simple-guide .ai-dpi-change strong{color:var(--orange,#e9782b)}
.pixel-reference{margin:0 0 16px;border:1px solid #efcfba;border-radius:13px;background:#fff;overflow:hidden}.pixel-reference summary{padding:14px 16px;background:#fff7f1;color:var(--ink);font-size:14px;font-weight:800;cursor:pointer}.pixel-reference summary::marker{color:var(--orange,#e9782b)}.reference-intro{padding:14px 16px}.reference-intro b,.reference-intro span{display:block}.reference-intro span{margin-top:4px;color:var(--muted);font:13px/1.45 "Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif}.reference-table{border-top:1px solid var(--line)}.reference-row{display:grid;grid-template-columns:1fr 1.3fr;gap:14px;padding:10px 16px;border-top:1px solid var(--line);font-size:13px}.reference-row:first-child{border-top:0}.reference-row span:last-child{text-align:right}.reference-head{background:#faf8f6;color:var(--muted);font-weight:700}.pixel-reference p{margin:0;padding:12px 16px;background:#fffaf6;color:var(--muted);font:12px/1.55 "Century Gothic",CenturyGothic,AppleGothic,Arial,sans-serif}
.enhance:not(.ai-upscale-box){display:grid;grid-template-columns:minmax(170px,1fr) minmax(170px,1fr);align-items:start}.enhance:not(.ai-upscale-box)>div:first-child{min-width:0}.enhance:not(.ai-upscale-box)>select{width:100%;min-width:0;margin:0}.enhance:not(.ai-upscale-box)>.pixel-change,.enhance:not(.ai-upscale-box)>.pixel-note{grid-column:1/-1}.pixel-change strong{min-width:0;overflow-wrap:anywhere}.pixel-change{min-width:0}
@media(max-width:980px){.enhance:not(.ai-upscale-box){grid-template-columns:1fr}.enhance:not(.ai-upscale-box)>.pixel-change,.enhance:not(.ai-upscale-box)>.pixel-note{grid-column:1}.enhance:not(.ai-upscale-box)>select{width:100%}}
