:root{
  --tool-ink:#0a2540;
  --tool-muted:#536176;
  --tool-red:#c81e2b;
  --tool-cream:#f7f4ed;
  --tool-line:#dfe3e8;
  --tool-green:#166534;
  --tool-amber:#92400e;
}
.tool-hero{background:linear-gradient(145deg,#081f36 0%,#123e63 68%,#8f1822 160%);color:#fff;padding:4.5rem 0 4rem;position:relative;overflow:hidden}
.tool-hero::after{content:"";position:absolute;width:34rem;height:34rem;border:1px solid rgba(255,255,255,.1);border-radius:50%;right:-12rem;top:-19rem;box-shadow:0 0 0 4rem rgba(255,255,255,.025),0 0 0 8rem rgba(255,255,255,.018)}
.tool-hero .container-narrow{position:relative;z-index:1}
.tool-kicker{display:inline-flex;align-items:center;gap:.55rem;font:800 .72rem/1.2 'Inter',sans-serif;letter-spacing:.18em;text-transform:uppercase;color:#ffd2d5;margin-bottom:1rem}
.tool-kicker::before{content:"";width:2rem;height:2px;background:#f15b65}
.tool-hero h1{font-family:'Anton','Inter',sans-serif;font-size:clamp(2.55rem,7vw,4.75rem);font-weight:400;line-height:.94;letter-spacing:.005em;text-transform:uppercase;max-width:13ch}
.tool-hero h1 em{font-style:normal;color:#ff7b84}
.tool-hero p{font-size:clamp(1rem,2vw,1.18rem);line-height:1.65;color:#d8e2ec;max-width:61ch;margin-top:1.2rem}
.tool-source-strip{background:#fff;border-bottom:1px solid var(--tool-line)}
.tool-source-strip .container-narrow{padding-top:1rem;padding-bottom:1rem;display:flex;gap:.75rem 1.5rem;align-items:center;justify-content:space-between;flex-wrap:wrap;font:600 .82rem/1.4 'Inter',sans-serif;color:var(--tool-muted)}
.tool-source-strip a{color:var(--tool-ink);text-decoration:underline;text-underline-offset:3px}
.tool-layout{background:var(--tool-cream);padding:3.5rem 0 5rem}
.tool-panel{background:#fff;border:1px solid var(--tool-line);border-radius:18px;box-shadow:0 20px 55px -38px rgba(10,37,64,.45);padding:clamp(1.25rem,4vw,2.3rem);margin-bottom:1.5rem}
.tool-panel h2{font:400 clamp(1.65rem,4vw,2.25rem)/1 'Anton','Inter',sans-serif;text-transform:uppercase;letter-spacing:.005em;color:var(--tool-ink);margin:0 0 .65rem}
.tool-panel h3{font:800 1rem/1.35 'Inter',sans-serif;color:var(--tool-ink);margin:1.4rem 0 .55rem}
.tool-panel>p,.tool-help{color:var(--tool-muted);line-height:1.65}
.tool-label{display:block;font:800 .78rem/1.25 'Inter',sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--tool-ink);margin-bottom:.45rem}
.tool-input,.tool-select{display:block;width:100%;min-height:50px;border:1.5px solid #b7c0cb;border-radius:10px;background:#fff;color:var(--tool-ink);font:600 1rem/1.2 'Inter',sans-serif;padding:.8rem .9rem;transition:border-color .15s,box-shadow .15s}
.tool-input:focus,.tool-select:focus{border-color:var(--tool-red);box-shadow:0 0 0 4px rgba(200,30,43,.14);outline:0}
.tool-input[aria-invalid="true"],.tool-select[aria-invalid="true"]{border-color:#b91c1c;box-shadow:0 0 0 4px rgba(185,28,28,.12)}
.tool-form-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.75rem;align-items:end;margin-top:1.25rem}
.tool-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:1.25rem}
.tool-button{min-height:50px;border:0;border-radius:10px;background:var(--tool-red);color:#fff;cursor:pointer;font:800 .88rem/1 'Inter',sans-serif;letter-spacing:.055em;text-transform:uppercase;padding:.9rem 1.25rem;display:inline-flex;align-items:center;justify-content:center;gap:.4rem;text-decoration:none;transition:background .15s,transform .15s}
.tool-button:hover{background:#a81520;transform:translateY(-1px);color:#fff}
.tool-button:focus-visible{outline:3px solid #fbbf24;outline-offset:3px}
.tool-button:disabled{cursor:wait;opacity:.66;transform:none}
.tool-button-secondary{background:var(--tool-ink)}
.tool-button-secondary:hover{background:#173f63}
.tool-status{margin-top:1.25rem;border-radius:12px;border:1px solid var(--tool-line);padding:1rem 1.1rem;line-height:1.55;color:var(--tool-ink)}
.tool-status[hidden]{display:none}
.tool-status[data-state="loading"]{background:#eff6ff;border-color:#93c5fd}
.tool-status[data-state="success"]{background:#f0fdf4;border-color:#86efac}
.tool-status[data-state="warning"]{background:#fffbeb;border-color:#fcd34d}
.tool-status[data-state="error"]{background:#fff1f2;border-color:#fda4af}
.tool-status strong{display:block;margin-bottom:.25rem}
.tool-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;margin:.9rem 0}
.tool-fact{border:1px solid rgba(10,37,64,.12);border-radius:9px;background:rgba(255,255,255,.7);padding:.7rem}
.tool-fact span{display:block;font:700 .66rem/1.2 'Inter',sans-serif;letter-spacing:.1em;text-transform:uppercase;color:var(--tool-muted);margin-bottom:.2rem}
.tool-fact b{font:800 .95rem/1.25 'Inter',sans-serif;color:var(--tool-ink)}
.tool-checks{display:grid;gap:.65rem;margin-top:1rem}
.tool-check{display:grid;grid-template-columns:1.2rem 1fr;gap:.65rem;align-items:start;border:1px solid var(--tool-line);border-radius:10px;padding:.85rem .9rem;background:#fff}
.tool-check input{width:1.1rem;height:1.1rem;margin-top:.12rem;accent-color:var(--tool-red)}
.tool-check label{font:650 .92rem/1.45 'Inter',sans-serif;color:var(--tool-ink);cursor:pointer}
.tool-check label small{display:block;font-weight:500;color:var(--tool-muted);margin-top:.12rem}
.tool-note{border-left:4px solid #eab308;background:#fffbeb;color:#713f12;padding:.9rem 1rem;margin:1.1rem 0;border-radius:0 9px 9px 0;font-size:.9rem;line-height:1.55}
.tool-privacy{display:flex;gap:.65rem;align-items:flex-start;color:var(--tool-muted);font-size:.82rem;line-height:1.5;margin-top:1rem}
.tool-privacy svg{width:18px;height:18px;flex:0 0 18px;color:var(--tool-green)}
.tool-actions{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap;margin-top:1rem}
.tool-small-link{color:var(--tool-ink);font-weight:700;text-underline-offset:3px}
.tool-steps{counter-reset:tool-step;display:grid;gap:.8rem;margin-top:1rem}
.tool-step{counter-increment:tool-step;display:grid;grid-template-columns:2.2rem 1fr;gap:.75rem;align-items:start}
.tool-step::before{content:counter(tool-step);width:2.2rem;height:2.2rem;border-radius:50%;display:grid;place-items:center;background:var(--tool-ink);color:#fff;font:800 .8rem/1 'Inter',sans-serif}
.tool-step p{color:var(--tool-muted);line-height:1.55;margin:0}
.tool-step strong{color:var(--tool-ink)}
.tool-license{font-size:.78rem;color:var(--tool-muted);line-height:1.55;border-top:1px solid var(--tool-line);padding-top:1rem;margin-top:1.4rem}
.tool-license a{color:var(--tool-ink)}
.asset-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin-top:1.4rem}
.asset-card{background:#fff;border:1px solid var(--tool-line);border-radius:16px;overflow:hidden;box-shadow:0 18px 40px -34px rgba(10,37,64,.5)}
.asset-preview{aspect-ratio:4/5;background:#e9edf1;overflow:hidden;border-bottom:1px solid var(--tool-line)}
.asset-preview img{display:block;width:100%;height:100%;object-fit:cover}
.asset-body{padding:1.15rem}
.asset-body h2{font:800 1.05rem/1.25 'Inter',sans-serif;color:var(--tool-ink);margin:0 0 .45rem}
.asset-body p{font-size:.9rem;line-height:1.55;color:var(--tool-muted);margin:0}
.asset-links{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.9rem}
.asset-link{border:1px solid #b7c0cb;border-radius:8px;padding:.55rem .75rem;color:var(--tool-ink);font:800 .73rem/1 'Inter',sans-serif;letter-spacing:.045em;text-transform:uppercase;text-decoration:none}
.asset-link:hover{border-color:var(--tool-red);color:var(--tool-red)}
.asset-wide{grid-column:1/-1;display:grid;grid-template-columns:minmax(220px,.75fr) 1.25fr}
.asset-wide .asset-preview{aspect-ratio:auto;min-height:300px}
@media(max-width:680px){
  .tool-hero{padding:3.2rem 0}
  .tool-form-row,.tool-form-grid{grid-template-columns:1fr}
  .tool-form-row .tool-button{width:100%}
  .tool-facts{grid-template-columns:1fr}
  .asset-grid{grid-template-columns:1fr}
  .asset-wide{grid-column:auto;display:block}
  .asset-wide .asset-preview{aspect-ratio:4/5;min-height:0}
}
@media(prefers-reduced-motion:reduce){.tool-button{transition:none}}
