:root{color-scheme:light;--bg:#f6f8fc;--ink:#172238;--muted:#53647d;--surface:#fff;--line:#dde4f1;--primary:#3346c9;--primary-hi:#2435a7;--subtle:#edf0ff;--focus:#ef8f1f;--success:#167447;--radius:16px;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
[data-theme="dark"]{color-scheme:dark;--bg:#101726;--ink:#f2f5ff;--muted:#bbc8e2;--surface:#1a2539;--line:#35435c;--primary:#9caaff;--primary-hi:#c9d0ff;--subtle:#28375c;--focus:#ffcb70;--success:#9bf0bd}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);line-height:1.56}a{color:var(--primary);text-underline-offset:3px}button,input,select{font:inherit}button{cursor:pointer}button:disabled{opacity:.6;cursor:not-allowed}:focus-visible{outline:3px solid var(--focus);outline-offset:3px}.skip{position:absolute;left:8px;top:-80px;background:var(--surface);padding:12px;z-index:10}.skip:focus{top:8px}.wrap{width:min(1120px,calc(100% - 32px));margin:auto}.nav{background:var(--surface);border-bottom:1px solid var(--line);position:relative}.navrow{min-height:74px;display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;padding:12px 0}.brand{font-size:1.12rem;font-weight:850;text-decoration:none;color:var(--ink);display:flex;align-items:center;gap:10px}.brand img{width:38px;height:38px}nav{display:flex;align-items:center;flex-wrap:wrap;gap:18px}nav a{font-weight:650;text-decoration:none;font-size:.92rem}nav button{border:1px solid var(--line);color:var(--ink);background:var(--surface);border-radius:10px;padding:8px 12px}.hero{padding:56px 0 30px}.hero h1{font-size:clamp(2.2rem,5vw,3.6rem);line-height:1.13;letter-spacing:-.05em;margin:0 0 16px;max-width:830px}.lead{font-size:1.12rem;max-width:760px;color:var(--muted)}.eyebrow{font-size:.81rem;letter-spacing:.14em;text-transform:uppercase;font-weight:800;color:var(--primary);margin:0 0 10px}.pill-row{display:flex;gap:9px;flex-wrap:wrap;margin:21px 0}.pill{background:var(--subtle);border-radius:999px;color:var(--ink);font-size:.85rem;font-weight:650;padding:6px 12px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(18px,3vw,30px);box-shadow:0 5px 20px #15204009}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr));gap:17px}.tool-card{display:block;padding:22px;border-radius:var(--radius);border:1px solid var(--line);background:var(--surface);text-decoration:none;color:var(--ink);transition:transform .15s}.tool-card:hover{transform:translateY(-2px);border-color:var(--primary)}.tool-card strong{display:block;font-size:1.07rem;margin-bottom:7px}.tool-card span{color:var(--muted);font-size:.93rem}.section{padding:20px 0 46px}.section h2{letter-spacing:-.025em}.search{width:100%;max-width:640px;border:1px solid var(--line);border-radius:12px;padding:15px 17px;background:var(--surface);color:var(--ink);font-size:1rem}.empty{display:none;color:var(--muted)}.empty.is-visible{display:block}.crumbs{font-size:.87rem;color:var(--muted);margin:23px 0 0}.crumbs a{color:inherit}.work{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:20px;margin:26px auto}.drop{display:block;border:2px dashed var(--primary);border-radius:14px;background:var(--subtle);padding:25px;text-align:center;cursor:pointer}.drop.drag{background:var(--surface);border-style:solid}.drop b{display:block;font-size:1.15rem}.drop small{display:block;color:var(--muted);margin-top:8px}.drop input{position:absolute;left:-9999px}.preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:22px}.preview-grid figure{margin:0;min-width:0}.preview-grid figcaption{font-size:.83rem;font-weight:700;color:var(--muted);margin-bottom:5px}.preview-box{background:linear-gradient(45deg,#e4e7eb 25%,transparent 25%),linear-gradient(-45deg,#e4e7eb 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#e4e7eb 75%),linear-gradient(-45deg,transparent 75%,#e4e7eb 75%);background-position:0 0,0 10px,10px -10px,-10px 0;background-size:20px 20px;display:grid;place-items:center;position:relative;height:190px;overflow:hidden;border:1px solid var(--line);border-radius:11px}.preview-box img{max-height:100%;max-width:100%;object-fit:contain}.meta{overflow-wrap:anywhere;color:var(--muted);font-size:.83rem;margin:7px 0}.fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.field{display:flex;flex-direction:column;gap:6px;font-weight:650;font-size:.9rem}.field.full{grid-column:1/-1}.field input,.field select{min-width:0;background:var(--surface);border:1px solid var(--line);color:var(--ink);border-radius:9px;padding:10px}.hint{color:var(--muted);font-size:.82rem;margin:6px 0 10px}.checks{display:flex;align-items:center;gap:10px;font-weight:550}.checks input{width:18px;height:18px}.actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:18px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:11px;padding:12px 20px;font-weight:750;text-decoration:none;border:1px solid var(--primary);background:var(--primary);color:#fff}.btn:visited{color:#fff}.btn:hover{background:var(--primary-hi);color:#fff}.btn.secondary{color:var(--primary);background:transparent}.status{color:var(--muted);font-size:.94rem;margin:17px 0 0}.status.error{color:#b22b2b}.status.ok{color:var(--success)}.note{background:var(--subtle);padding:14px 16px;border-radius:11px;color:var(--ink);margin:14px 0}.prose{max-width:860px}.prose h2{margin-top:29px}.prose ul{padding-left:24px}.footer{border-top:1px solid var(--line);padding:32px 0;margin-top:35px;color:var(--muted);font-size:.9rem}.footlinks{display:flex;flex-wrap:wrap;gap:14px;margin:10px 0}.footer a{color:var(--muted)}.disclaimer{font-size:.85rem;color:var(--muted)}.hidden{display:none!important}.crop-hint{font-size:.86rem;color:var(--muted)}.tag{font-size:.78rem;font-weight:800;color:var(--primary)}@media(max-width:780px){.work{grid-template-columns:1fr}.hero{padding-top:34px}.preview-box{height:150px}.navrow{align-items:flex-start}.grid{grid-template-columns:1fr 1fr}}@media(max-width:470px){.grid{grid-template-columns:1fr}.fields{grid-template-columns:1fr}.preview-grid{grid-template-columns:1fr 1fr}nav{gap:12px}.wrap{width:min(100% - 24px,1120px)}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}
