:root{--ai-primary:#667eea;--ai-secondary:#764ba2;--ai-gradient:linear-gradient(135deg,#667eea,#764ba2);--ai-gradient-hover:linear-gradient(135deg,#7c8ff0,#8b5ab8);--ai-glow-subtle:rgba(102,126,234,.2);--ai-glow:rgba(102,126,234,.4);--ai-glow-strong:rgba(102,126,234,.6);--ai-glow-ultra:rgba(102,126,234,.8);--ai-bg-subtle:rgba(102,126,234,.05);--ai-bg-hover:rgba(102,126,234,.1);--ai-bg-active:rgba(102,126,234,.15);--ai-border:rgba(118,75,162,.3);--ai-border-hover:rgba(118,75,162,.5);--ai-border-active:rgba(118,75,162,.7);--credit-gold:#fbbf24;--credit-gold-dark:#f59e0b;--credit-gold-text:#78350f;--ai-success:#10b981;--ai-warning:#f59e0b;--ai-danger:#ef4444;--ai-info:#3b82f6}.ai-btn-premium{position:relative;background:var(--ai-gradient);color:#fff;padding:12px 24px;border-radius:12px;border:none;font-weight:600;font-size:15px;cursor:pointer;overflow:hidden;box-shadow:0 4px 20px var(--ai-glow);transition:all .3s cubic-bezier(.4,0,.2,1);display:inline-flex;align-items:center;gap:8px}.ai-btn-premium:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 30px var(--ai-glow-strong);background:var(--ai-gradient-hover)}.ai-btn-premium:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 10px var(--ai-glow)}.ai-btn-premium:disabled{opacity:.6;cursor:not-allowed}.ai-btn-premium:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:linear-gradient(45deg,transparent,hsla(0,0%,100%,.1),transparent);animation:shimmer 3s infinite}@keyframes shimmer{0%{transform:translateX(-100%) translateY(-100%) rotate(45deg);opacity:0}50%{opacity:1}to{transform:translateX(100%) translateY(100%) rotate(45deg);opacity:0}}.ai-credit-badge{position:absolute;top:-6px;right:-6px;background:var(--credit-gold);color:var(--credit-gold-text);font-size:11px;font-weight:700;padding:3px 7px;border-radius:999px;border:2px solid #fff;box-shadow:0 2px 8px rgba(0,0,0,.15);z-index:1}.ai-credit-badge.low{background:var(--ai-danger);color:#fff;animation:pulse-warning 2s infinite}@keyframes pulse-warning{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.ai-style-card{position:relative;background:#fff;border:2px solid var(--ai-border);border-radius:16px;padding:24px;cursor:pointer;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;min-height:180px}.ai-style-card:hover{transform:translateY(-8px) scale(1.02);border-color:var(--ai-border-hover);background:var(--ai-bg-subtle);box-shadow:0 20px 40px var(--ai-glow)}.ai-style-card.recommended{border-color:var(--ai-primary);background:var(--ai-bg-subtle);box-shadow:0 8px 24px var(--ai-glow)}.ai-style-card.recommended:after{content:"⭐ RECOMMENDED";position:absolute;top:-12px;right:12px;background:var(--ai-gradient);color:#fff;font-size:11px;font-weight:700;padding:4px 12px;border-radius:999px;box-shadow:0 4px 12px var(--ai-glow)}.ai-style-card.selected{border-color:var(--ai-primary);background:var(--ai-bg-hover);box-shadow:0 12px 32px var(--ai-glow-strong)}.ai-style-icon{font-size:48px;line-height:1;margin-bottom:8px}.ai-style-title{font-weight:700;font-size:18px;color:#1f2937}.ai-style-description{font-size:14px;color:#6b7280;line-height:1.4}.ai-credits-widget{background:#fff;border:1px solid #e5e7eb;border-radius:16px;padding:20px;box-shadow:0 2px 8px rgba(0,0,0,.05)}.ai-credits-progress{width:100%;height:12px;background:#f3f4f6}.ai-credits-progress,.ai-credits-progress-fill{border-radius:999px;overflow:hidden;position:relative}.ai-credits-progress-fill{height:100%;background:var(--ai-gradient);transition:width .5s cubic-bezier(.4,0,.2,1)}.ai-credits-progress-fill:after{content:"";position:absolute;top:0;left:0;bottom:0;right:0;background:linear-gradient(90deg,transparent,hsla(0,0%,100%,.3),transparent);animation:progress-shimmer 2s infinite}@keyframes progress-shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.ai-credits-progress-fill.low{background:linear-gradient(135deg,#f59e0b,#ef4444)}.ai-credits-progress-fill.medium{background:linear-gradient(135deg,#10b981,#f59e0b)}.ai-loading-container{flex-direction:column;padding:48px 24px;min-height:300px}.ai-loading-container,.ai-loading-spinner{display:flex;align-items:center;justify-content:center}.ai-loading-spinner{width:80px;height:80px;border-radius:50%;background:var(--ai-gradient);animation:spin-glow 2s linear infinite;box-shadow:0 0 40px var(--ai-glow-strong);position:relative}@keyframes spin-glow{0%{transform:rotate(0deg);box-shadow:0 0 40px var(--ai-glow-strong)}50%{box-shadow:0 0 60px var(--ai-glow-ultra)}to{transform:rotate(1turn);box-shadow:0 0 40px var(--ai-glow-strong)}}.ai-loading-spinner:after{content:"";position:absolute;inset:8px;background:#fff;border-radius:50%}.ai-loading-icons{position:relative;z-index:1;display:flex;gap:12px;font-size:24px;animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.ai-loading-text{margin-top:24px;font-size:18px;font-weight:600;color:#1f2937;text-align:center}.ai-loading-subtext{margin-top:8px;font-size:14px;color:#6b7280;text-align:center}.ai-loading-progress{width:200px;height:6px;background:#f3f4f6;border-radius:999px;margin-top:16px;overflow:hidden}.ai-loading-progress-bar{height:100%;background:var(--ai-gradient);border-radius:999px;animation:progress-grow 2s ease-in-out}@keyframes progress-grow{0%{width:0}to{width:100%}}.ai-result-card{background:#fff;border:2px solid var(--ai-border);border-radius:16px;padding:24px;box-shadow:0 4px 16px rgba(0,0,0,.08)}.ai-result-header{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding-bottom:16px;border-bottom:1px solid #e5e7eb}.ai-result-success-icon{width:32px;height:32px;border-radius:50%;background:var(--ai-gradient);display:flex;align-items:center;justify-content:center;color:#fff}.ai-result-textarea{width:100%;min-height:120px;padding:16px;border:2px solid #e5e7eb;border-radius:12px;font-size:15px;line-height:1.6;resize:vertical;transition:all .2s}.ai-result-textarea:focus{outline:none;border-color:var(--ai-primary);box-shadow:0 0 0 3px var(--ai-glow-subtle)}.ai-modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:9999;padding:20px;animation:fade-in .2s ease-out}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.ai-modal-content{background:#fff;border-radius:24px;max-width:800px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 24px 64px rgba(0,0,0,.2);animation:slide-up .3s cubic-bezier(.4,0,.2,1)}@keyframes slide-up{0%{opacity:0;transform:translateY(40px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.ai-modal-header{padding:32px 32px 24px;border-bottom:1px solid #e5e7eb;position:relative}.ai-modal-close{position:absolute;top:24px;right:24px;width:36px;height:36px;border-radius:8px;border:none;background:#f3f4f6;color:#6b7280;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.ai-modal-close:hover{background:#e5e7eb;color:#1f2937}.ai-modal-body{padding:32px}.ai-modal-footer{padding:24px 32px;border-top:1px solid #e5e7eb;background:#f9fafb;border-radius:0 0 24px 24px;display:flex;justify-content:space-between;align-items:center}.ai-gradient-text{background:var(--ai-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;font-weight:700}.ai-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;border-radius:999px;font-size:12px;font-weight:600;background:var(--ai-bg-subtle);color:var(--ai-primary);border:1px solid var(--ai-border)}.ai-divider{display:flex;align-items:center;text-align:center;color:#9ca3af;font-size:14px;font-weight:500;margin:24px 0}.ai-divider:after,.ai-divider:before{content:"";flex:1;border-bottom:1px solid #e5e7eb}.ai-divider:before{margin-right:16px}.ai-divider:after{margin-left:16px}@media (max-width:768px){.ai-modal-content{max-width:100%;border-radius:24px 24px 0 0;max-height:95vh}.ai-modal-body,.ai-modal-footer,.ai-modal-header{padding-left:20px;padding-right:20px}.ai-style-card{padding:20px 16px;min-height:160px}.ai-btn-premium{width:100%;justify-content:center}}.ai-btn-premium:focus-visible,.ai-modal-close:focus-visible,.ai-style-card:focus-visible{outline:3px solid var(--ai-primary);outline-offset:2px}@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}