/* 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:.5rem;flex-wrap:wrap;align-items:center}
.file-label{background:var(--primary-grad);color:#fff;padding:.7rem 1.2rem;border-radius:var(--radius-lg);cursor:pointer;font-weight:600;display:inline-flex;gap:.5rem;align-items:center}
.file-label input{display:none}
.hint{color:#6b7280;font-size:.9rem;margin-top:.5rem}
input[type="text"]{padding:.6rem .8rem;border:2px solid #e2e8f0;border-radius:8px;background:#fff}
input[type="text"]:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,.1)}
.list{margin:.75rem 0 0 0;padding:0;list-style:none;border:1px solid #e2e8f0;border-radius:8px;max-height:260px;overflow:auto}
.list li{display:flex;justify-content:space-between;align-items:center;padding:.5rem .75rem;border-bottom:1px solid #edf2f7}
.list li:last-child{border-bottom:none}
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)}
