body{color:#fff;background:#000;margin:0;padding:0;font-family:Arial,Helvetica,sans-serif}*{box-sizing:border-box}.container{width:100%;max-width:1000px;margin:auto;padding:20px}h1{text-align:center;margin-bottom:30px;font-size:42px}input[type=file]{color:#fff;background:#111;border:1px solid #222;border-radius:20px;width:100%;margin-bottom:20px;padding:20px}.preview{object-fit:cover;border:1px solid #222;border-radius:24px;width:100%;max-height:420px;margin-bottom:25px}.grid{grid-template-columns:1fr 1fr 1fr;gap:16px;margin-bottom:25px;display:grid}.card{background:#111;border:1px solid #222;border-radius:22px;padding:18px}.label{color:#aaa;margin-bottom:10px;font-size:14px}.select{color:#fff;background:#1a1a1a;border:none;border-radius:14px;outline:none;width:100%;padding:14px;font-size:14px}.generate-btn{color:#000;cursor:pointer;background:#fff;border:none;border-radius:20px;width:100%;height:58px;font-size:18px;font-weight:700;transition:all .2s}.generate-btn:hover{transform:scale(1.01)}.generate-btn:disabled{opacity:.6;cursor:not-allowed}.result{background:#111;border:1px solid #222;border-radius:24px;margin-top:30px;padding:25px}.result pre{white-space:pre-wrap;word-wrap:break-word;color:#f1f1f1;font-size:15px;line-height:1.8}@media (width<=900px){.grid{grid-template-columns:1fr}h1{font-size:32px}}.copy-btn{color:#fff;cursor:pointer;background:#222;border:1px solid #444;border-radius:12px;margin-top:16px;padding:12px 24px;font-size:14px;font-weight:600;transition:all .2s;display:inline-block}.copy-btn:hover{background:#333;border-color:#666}.error-box{color:#f88;background:#1a0000;border:1px solid #f44;border-radius:16px;margin-top:16px;padding:16px 20px;font-size:14px;line-height:1.6}
