.imggen-page{position:relative;overflow:hidden;border-radius:34px;background:#030712;color:#fff;padding:clamp(22px,4vw,52px);box-shadow:0 28px 90px rgba(2,6,23,.22)}.imggen-glow{position:absolute;inset:-20%;background:radial-gradient(circle at 20% 15%,rgba(34,211,238,.26),transparent 28%),radial-gradient(circle at 80% 10%,rgba(99,102,241,.28),transparent 32%),radial-gradient(circle at 55% 85%,rgba(16,185,129,.22),transparent 34%);filter:blur(10px);animation:imggenDrift 9s ease-in-out infinite alternate}@keyframes imggenDrift{to{transform:translate3d(20px,-18px,0) scale(1.04)}}.imggen-shell{position:relative;z-index:1;max-width:1180px;margin:auto}.imggen-head{max-width:860px}.imggen-head p{color:#67e8f9;font-weight:900;letter-spacing:.18em;font-size:.82rem}.imggen-head h1{margin:.35rem 0 0;font-size:clamp(3rem,8vw,6.6rem);line-height:.95;font-weight:950;letter-spacing:-.06em}.imggen-head span{display:block;margin-top:18px;color:#dbeafe;font-size:1.08rem;line-height:1.75}.imggen-grid{display:grid;grid-template-columns:430px minmax(0,1fr);gap:22px;margin-top:32px}.imggen-card{border:1px solid rgba(148,163,184,.22);border-radius:28px;background:linear-gradient(145deg,rgba(255,255,255,.14),rgba(255,255,255,.06));backdrop-filter:blur(18px);box-shadow:0 24px 70px rgba(0,0,0,.28)}.imggen-form{padding:22px;display:grid;gap:16px}.imggen-form label{display:grid;gap:8px;color:#e0f2fe;font-weight:850}.imggen-form input,.imggen-form textarea,.imggen-form select{width:100%;border:0;border-radius:16px;background:rgba(255,255,255,.92);color:#020617;padding:13px 14px;font-size:16px;outline:none;box-shadow:0 0 0 1px rgba(255,255,255,.16)}.imggen-form textarea{resize:vertical;line-height:1.65}.imggen-row{display:grid;grid-template-columns:1fr 110px;gap:12px}.imggen-submit{border:0;border-radius:999px;background:#22d3ee;color:#07111f;min-height:54px;font-size:1.05rem;font-weight:950;cursor:pointer;box-shadow:0 18px 42px rgba(34,211,238,.28)}.imggen-submit:disabled{opacity:.65;cursor:not-allowed}.imggen-status{min-height:22px;color:#bfdbfe;font-weight:760}.imggen-preview{padding:18px;min-height:560px}.imggen-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.imggen-toolbar b{font-size:1.2rem}.imggen-toolbar button{border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.08);color:#fff;border-radius:999px;padding:9px 14px;font-weight:850}.imggen-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.imggen-empty{grid-column:1/-1;min-height:470px;border:1px dashed rgba(255,255,255,.22);border-radius:24px;display:grid;place-items:center;text-align:center;color:#bfdbfe;padding:24px}.imggen-item{overflow:hidden;border-radius:22px;background:rgba(255,255,255,.08)}.imggen-item img{display:block;width:100%;aspect-ratio:1/1;object-fit:cover}.imggen-actions{display:flex;gap:8px;padding:10px}.imggen-actions a{flex:1;text-align:center;border-radius:999px;background:#fff;color:#020617;text-decoration:none;font-weight:900;padding:9px 10px}.imggen-code{margin-top:20px;border-radius:24px;background:rgba(2,6,23,.62);padding:18px;border:1px solid rgba(255,255,255,.12)}.imggen-code b{display:block;margin-bottom:10px;color:#e0f2fe}.imggen-code pre{margin:0;white-space:pre-wrap;word-break:break-word;color:#bae6fd;font-size:.92rem;line-height:1.6}@media(max-width:900px){.imggen-page{border-radius:0;margin:-22px -16px;padding:28px 18px 40px}.imggen-grid{grid-template-columns:1fr}.imggen-head h1{font-size:3.8rem}.imggen-results{grid-template-columns:1fr}.imggen-preview{min-height:auto}.imggen-empty{min-height:320px}}@media(max-width:420px){.imggen-head h1{font-size:3.1rem}.imggen-row{grid-template-columns:1fr}}
.imggen-keynote{border-radius:16px;background:rgba(34,211,238,.12);border:1px solid rgba(103,232,249,.28);color:#dffaff;padding:13px 14px;font-weight:850;line-height:1.55}

.imggen-check{border:1px solid rgba(255,255,255,.22);border-radius:999px;background:rgba(255,255,255,.08);color:#e0f2fe;min-height:48px;font-weight:900;cursor:pointer}.imggen-check:disabled{opacity:.6;cursor:not-allowed}
