/* DsfX unified */
:root{--container-max:1200px;--radius-lg:12px;--primary-grad:linear-gradient(135deg,#667eea 0%,#764ba2 100%);--shadow-card:0 4px 20px rgba(0,0,0,.08)}
body{background:#fff;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,sans-serif}
.container{max-width:var(--container-max);margin:0 auto;padding:2rem}
header{text-align:center;margin-bottom:3rem;padding:2rem 0;background:var(--primary-grad);color:#fff;border-radius:var(--radius-lg);box-shadow:0 4px 20px rgba(102,126,234,.3)}
header h1{font-size:2.25rem;margin-bottom:.5rem;font-weight:700}
header p{font-size:1.05rem;opacity:.9;font-weight:300}
.tool-card{background:#fff;border-radius:var(--radius-lg);padding:2rem;box-shadow:var(--shadow-card);border:1px solid #e2e8f0}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1rem}
.card{background:#fff;border:1px solid #e2e8f0;border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-card)}
.row{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}
input[type="color"]{width:48px;height:38px;border:none;background:transparent;padding:0}
label{display:flex;gap:.5rem;align-items:center}
button{padding:.75rem 1.1rem;border:none;border-radius:var(--radius-lg);background:var(--primary-grad);color:#fff;cursor:pointer;font-weight:600}
button:hover{filter:brightness(1.03);transform:translateY(-1px)}
.preview{margin-top:1rem;border:1px solid #e2e8f0;border-radius:8px;padding:1rem;font-size:1.6rem;text-align:center}
.ratio{font-size:1.6rem;font-weight:700;margin:.5rem 0}
.wcag{list-style:none;padding:0;margin:0}
.wcag li{padding:.4rem 0;border-bottom:1px solid #e2e8f0}
.wcag li:last-child{border-bottom:none}
