.app-container{min-height:100vh;overflow:hidden;position:relative;background:radial-gradient(circle at 82% 6%,rgba(77,124,255,.18),transparent 28rem),radial-gradient(circle at 8% 38%,rgba(255,212,59,.08),transparent 22rem),linear-gradient(180deg,#0d0e12,#08090b 55%,#0d0e12)}.app-container:before{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;content:"";opacity:.28;background-image:linear-gradient(rgba(255,255,255,.015) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.015) 1px,transparent 1px);background-size:42px 42px}.site-header{width:min(1180px,calc(100% - 48px));height:76px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;position:relative;z-index:3;border-bottom:1px solid var(--border)}.brand{display:inline-flex;align-items:center;gap:11px;color:#fff;text-decoration:none;font-weight:750;letter-spacing:-.02em}.header-logo{width:30px;height:30px;object-fit:contain}.mvp-badge{padding:7px 11px;border:1px solid rgba(255,212,59,.34);border-radius:999px;color:var(--yellow-soft);background:#ffd43b14;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.content-wrapper{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:76px 0 90px;position:relative;z-index:2}.hero{min-height:440px;display:grid;grid-template-columns:minmax(0,1fr) 260px;align-items:center;gap:28px}.hero-copy{max-width:860px}.eyebrow,.section-kicker{color:var(--yellow);font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.main-title{margin:20px 0 22px;max-width:930px;font-size:clamp(52px,6.2vw,88px);font-weight:780;line-height:.96;letter-spacing:-.055em;text-wrap:balance}.hero-lead{margin:0;max-width:720px;color:#b9bdc6;font-size:clamp(18px,2vw,22px);line-height:1.52}.hero-facts{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}.hero-facts span{padding:9px 13px;border:1px solid var(--border);border-radius:999px;color:#d9dbe0;background:#ffffff09;font-size:13px}.drop-icon{width:min(100%,230px);justify-self:end;filter:drop-shadow(0 26px 65px rgba(77,124,255,.35));transform:rotate(6deg)}.form-container,.project-panel{position:relative;padding:clamp(24px,4vw,50px);border:1px solid var(--border);border-radius:28px;background:linear-gradient(145deg,#22252cf7,#14161bf7);box-shadow:0 36px 90px #00000061,inset 0 1px #ffffff0e}.form-container:after{position:absolute;top:-1px;right:42px;width:120px;height:3px;content:"";background:linear-gradient(90deg,var(--yellow),var(--blue));border-radius:99px}.form-title,.results-title{margin:10px 0 8px;color:#fff;font-size:clamp(28px,3.5vw,42px);letter-spacing:-.035em}.form-lead{margin:0 0 36px;color:var(--muted);line-height:1.5}.form-group{margin-bottom:24px}.field-label{display:block;margin-bottom:9px;color:#f4f5f7;font-size:14px;font-weight:700}.field-label span,.field-label small{color:var(--muted);font-size:12px;font-weight:500}.input-field,.refine-input,.project-refine input{width:100%;border:1px solid rgba(255,255,255,.13);border-radius:12px;color:#fff;background:#0506098c;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.input-field{min-height:52px;padding:14px 16px;font-size:16px}.input-field::placeholder,.refine-input::placeholder,.project-refine input::placeholder{color:#6f737d}.input-field:focus,.refine-input:focus,.project-refine input:focus{border-color:#4d7cffd9;background:#050609d1;box-shadow:0 0 0 4px #4d7cff1f;outline:none}.prompt-field{min-height:126px;resize:vertical;line-height:1.5}.field-hint,.button-note{margin-top:8px;color:#858a94;font-size:12px;line-height:1.45}.formats-fieldset{padding:0;margin:0 0 28px;border:0}.dimensions-container{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.dimension-button{min-height:72px;padding:12px 9px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:5px;border:1px solid rgba(255,212,59,.2);border-radius:12px;color:#f4dc78;background:#ffd43b0e;cursor:pointer;transition:transform .16s ease,border-color .16s ease,background .16s ease}.dimension-button span{font-size:14px;font-weight:800}.dimension-button small{color:#ffe98ea3;font-size:10px}.dimension-button:hover:not(:disabled){transform:translateY(-2px);border-color:#ffd43b8c}.dimension-button.selected{border-color:#4d7cffe6;color:#fff;background:linear-gradient(145deg,#4d7cff73,#315ee838);box-shadow:inset 0 0 0 1px #819eff2e}.dimension-button.selected small{color:#cdd8ff}.uploads-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:28px}.upload-field{min-height:88px;padding:14px 16px;display:flex;flex-direction:column;justify-content:center;border:1px dashed rgba(255,255,255,.18);border-radius:14px;background:#ffffff06;cursor:pointer;transition:border-color .16s ease,background .16s ease}.upload-field:hover{border-color:#4d7cff8c;background:#4d7cff0d}.upload-field .field-label{margin-bottom:5px}.upload-field input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.upload-caption{max-width:100%;overflow:hidden;color:#aeb3bd;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.button-container{display:flex;align-items:center;gap:18px}.generate-btn,.download-all-btn,.secondary-btn,.download-link{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;text-decoration:none;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}.generate-btn{min-height:54px;padding:14px 26px;gap:10px;color:#fff;background:linear-gradient(135deg,var(--blue),var(--blue-deep));box-shadow:0 14px 32px #315ee840;font-size:16px;font-weight:800}.generate-btn:hover:not(:disabled),.download-all-btn:hover,.secondary-btn:hover:not(:disabled),.download-link:hover{transform:translateY(-2px)}button:disabled{opacity:.45;cursor:not-allowed}.loading-spinner{width:17px;height:17px;display:inline-block;flex:0 0 auto;border:2px solid rgba(255,255,255,.28);border-top-color:#fff;border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.inline-error,.error-message,.success-message,.warning-message{margin-top:12px;padding:11px 13px;border-radius:10px;font-size:13px;line-height:1.45}.inline-error,.error-message{border:1px solid rgba(255,124,124,.25);color:#ffc0c0;background:#ff505014}.success-message{border:1px solid rgba(99,214,155,.22);color:#a9eac8;background:#63d69b12}.results-container{margin-top:38px;display:grid;gap:28px}.project-panel{padding:clamp(22px,3vw,38px)}.project-header{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:22px}.project-header .results-title{margin-bottom:0}.project-status{padding:9px 12px;display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(77,124,255,.24);border-radius:999px;color:#bfcaff;background:#4d7cff14;font-size:13px;font-weight:700}.project-status.done{border-color:#63d69b40;color:#a9eac8;background:#63d69b14}.project-status.error{color:#ffc0c0}.status-dot{width:7px;height:7px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px color-mix(in srgb,currentColor 16%,transparent)}.warnings-list{margin-bottom:18px}.warning-message{display:flex;align-items:flex-start;gap:9px;border:1px solid rgba(255,212,59,.2);color:#f5df86;background:#ffd43b0e}.warning-message span{width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border-radius:50%;color:#151515;background:var(--yellow);font-size:11px;font-weight:900}.generation-progress{padding:24px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--muted)}.banners-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}.banner-card{min-width:0;overflow:hidden;border:1px solid var(--border);border-radius:18px;background:#08090c85;transition:border-color .16s ease,transform .16s ease}.banner-card:hover{border-color:#ffffff2e;transform:translateY(-2px)}.banner-preview{height:220px;padding:18px;display:flex;align-items:center;justify-content:center;background:linear-gradient(45deg,#101217 25%,transparent 25%) 0 0 / 18px 18px,linear-gradient(-45deg,#101217 25%,transparent 25%) 0 9px / 18px 18px,#0c0e12}.banner-image{width:100%;height:100%;display:block;object-fit:contain;filter:drop-shadow(0 12px 22px rgba(0,0,0,.45))}.banner-placeholder{display:flex;align-items:center;gap:9px;color:var(--muted)}.banner-info{padding:18px}.banner-meta,.banner-details,.card-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}.banner-meta strong{font-size:18px}.banner-status{padding:5px 8px;border-radius:999px;color:#bfcaff;background:#4d7cff1a;font-size:11px;font-weight:700}.banner-status.done{color:#a9eac8;background:#63d69b17}.banner-status.error{color:#ffc0c0;background:#ff7c7c17}.banner-details{margin:8px 0 18px;color:var(--muted);font-size:11px}.regenerate-label{display:block;margin:0 0 7px;color:#bec2ca;font-size:11px}.refine-input{min-height:40px;padding:9px 11px;margin-bottom:10px;font-size:12px}.card-actions{align-items:stretch}.secondary-btn,.download-link{min-height:40px;padding:9px 12px;color:#dfe5ff;background:#4d7cff1f;font-size:12px;font-weight:750}.secondary-btn{border:1px solid rgba(77,124,255,.27)}.download-link{color:#18191c;background:var(--yellow)}.project-actions{margin-top:22px;padding-top:22px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;border-top:1px solid var(--border)}.project-refine label{display:block;margin-bottom:8px;color:#c6c9d0;font-size:12px;font-weight:700}.project-refine>div{display:flex;gap:9px}.project-refine input{min-height:44px;padding:10px 13px}.download-all-btn{min-height:46px;padding:12px 17px;color:#111318;background:var(--yellow);font-size:13px;font-weight:850}.circles-bg{width:520px;max-width:58vw;position:absolute;right:-160px;bottom:-180px;z-index:0;opacity:.16;pointer-events:none}.site-footer{width:min(1180px,calc(100% - 48px));margin:0 auto;padding:24px 0 34px;position:relative;z-index:2;border-top:1px solid var(--border);color:#676c75;font-size:12px}@media (max-width: 900px){.hero{min-height:390px;grid-template-columns:minmax(0,1fr) 150px}.dimensions-container{grid-template-columns:repeat(3,minmax(0,1fr))}.drop-icon{width:145px}}@media (max-width: 720px){.site-header,.content-wrapper,.site-footer{width:min(100% - 32px,1180px)}.content-wrapper{padding:48px 0 64px}.hero{min-height:390px;display:block}.main-title{margin-top:16px;font-size:clamp(40px,11vw,58px);line-height:1}.hero-lead{font-size:17px}.drop-icon{display:none}.form-container,.project-panel{padding:22px 18px;border-radius:20px}.dimensions-container{grid-template-columns:repeat(2,minmax(0,1fr))}.uploads-grid,.project-actions{grid-template-columns:1fr}.button-container{align-items:flex-start;flex-direction:column}.generate-btn{width:100%}.project-header{align-items:flex-start;flex-direction:column}.banners-grid{grid-template-columns:1fr}.banner-preview{height:200px}.project-refine>div,.card-actions{flex-direction:column}.secondary-btn,.download-link,.download-all-btn{width:100%}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Arial,sans-serif;color:#f7f7f4;background:#08090b;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg: #08090b;--panel: #17191e;--panel-soft: #1e2128;--border: rgba(255, 255, 255, .1);--muted: #9da1aa;--yellow: #ffd43b;--yellow-soft: #ffe98e;--blue: #4d7cff;--blue-deep: #315ee8;--green: #63d69b;--red: #ff7c7c}*{box-sizing:border-box}html{min-width:320px;min-height:100%;background:var(--bg)}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg)}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid rgba(77,124,255,.58);outline-offset:2px}a{color:inherit}#root{min-height:100vh}
