:root{--primary:#f97316;--primary-dark:#ea580c}
*{margin:0;padding:0;box-sizing:border-box}
body{background:linear-gradient(135deg,#fff7ed 0%,#ffedd5 100%);font-family:system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;min-height:100vh}
.header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,0.9);backdrop-filter:blur(20px);padding:12px 24px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid rgba(249,115,22,0.2);flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:8px}
.logo-icon{width:36px;height:36px;background:linear-gradient(135deg,#f97316,#f59e0b);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;color:#fff}
.logo-text{font-size:1.1rem;font-weight:700;background:linear-gradient(135deg,#f97316,#f59e0b);-webkit-background-clip:text;background-clip:text;color:transparent}
.brand-tag{font-size:0.55rem;background:linear-gradient(135deg,#f97316,#f59e0b);color:#fff;padding:2px 8px;border-radius:30px;margin-left:6px}
.header-center{flex:1;display:flex;justify-content:center}
.config-btn,.projects-btn{padding:8px 16px;background:linear-gradient(135deg,#f97316,#f59e0b);color:#fff;border:none;border-radius:30px;font-size:0.75rem;cursor:pointer}
.projects-btn{background:linear-gradient(135deg,#10b981,#059669);margin-right:8px}
.clear-chat{padding:6px 14px;border-radius:30px;font-size:0.75rem;cursor:pointer;background:rgba(255,255,255,0.8);border:1px solid #fed7aa;color:#f97316}
.chat-area{flex:1;overflow-y:auto;padding:20px;padding-bottom:100px;height:calc(100vh - 140px)}
.messages-container{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:16px}
.message-card{display:flex;gap:12px;animation:fadeIn 0.3s ease}
.message-card.user{align-self:flex-end;flex-direction:row-reverse}
.message-card.bot{align-self:flex-start}
.avatar{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:600;background:linear-gradient(135deg,#f97316,#f59e0b);color:#fff;flex-shrink:0}
.message-card.bot .avatar{background:#fff;color:#f97316;border:2px solid #f97316}
.bubble{max-width:70%;padding:12px 18px;border-radius:20px;font-size:0.9rem;line-height:1.5;background:rgba(255,255,255,0.95);border:1px solid rgba(249,115,22,0.1);color:#431407}
.message-card.user .bubble{background:linear-gradient(135deg,#f97316,#f59e0b);color:#fff;border:none}
.chat-tip{text-align:center;font-size:0.7rem;color:#f97316;margin-top:16px;padding:10px 16px;background:rgba(249,115,22,0.08);border-radius:30px}
.input-area{position:fixed;bottom:0;left:0;right:0;background:rgba(255,255,255,0.95);backdrop-filter:blur(10px);padding:16px 24px;border-top:1px solid rgba(249,115,22,0.15);z-index:100}
.input-wrapper{display:flex;gap:12px;background:#fff;border:1px solid #fed7aa;border-radius:60px;padding:4px 4px 4px 20px;max-width:800px;margin:0 auto}
.input-wrapper input{flex:1;border:none;background:transparent;padding:12px 0;font-size:0.95rem;outline:none}
.input-wrapper button{background:linear-gradient(135deg,#f97316,#f59e0b);border:none;border-radius:60px;padding:10px 28px;color:#fff;font-weight:600;cursor:pointer}
.batch-hint{font-size:0.7rem;color:#f97316;margin-top:8px;text-align:center}
.typing-bubble{background:rgba(255,255,255,0.95);border:1px solid rgba(249,115,22,0.15);border-radius:20px;padding:12px 18px}
.progress-bar-container{width:100%;height:3px;background:#fed7aa;border-radius:2px;margin-top:10px;overflow:hidden}
.progress-bar-fill{width:50%;height:100%;background:linear-gradient(90deg,#f97316,#f59e0b);animation:progress 1s ease-in-out infinite}
@keyframes progress{0%{width:0%}50%{width:70%}100%{width:100%}}
.type-badge{font-size:0.6rem;padding:2px 8px;border-radius:20px;margin-left:8px;background:#fef3e8;color:#f97316}
.preview-link,.download-link,.ftp-link{display:inline-block;margin-top:8px;margin-right:8px;padding:5px 14px;border-radius:30px;font-size:0.7rem;text-decoration:none;cursor:pointer}
.preview-link{background:rgba(249,115,22,0.1);color:#f97316}
.download-link{background:rgba(16,185,129,0.1);color:#059669}
.ftp-link{background:rgba(139,92,246,0.1);color:#7c3aed}
.site-id-badge,.file-count-badge{font-size:0.6rem;padding:2px 8px;border-radius:20px;margin-left:8px}
.site-id-badge{background:#fed7aa;color:#9a3412}
.file-count-badge{background:rgba(249,115,22,0.1);color:#f97316}
.features-text{font-size:0.75rem;color:#9a3412;margin-top:8px;padding-top:8px;border-top:1px solid #fed7aa}
.modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);backdrop-filter:blur(4px);display:none;align-items:center;justify-content:center;z-index:1000}
.modal-card{background:#fff;border-radius:28px;padding:24px;width:90%;max-width:600px;max-height:85vh;overflow-y:auto}
.modal-title{font-size:1.2rem;font-weight:700;color:#f97316;margin-bottom:20px;border-left:3px solid #f97316;padding-left:12px}
.form-group{margin-bottom:16px}
.form-group label{display:block;font-size:0.75rem;font-weight:600;color:#9a3412;margin-bottom:6px}
.form-group input,.form-group textarea{width:100%;padding:10px 14px;border:1px solid #fed7aa;border-radius:14px;font-size:0.85rem;outline:none}
.form-group textarea{resize:vertical}
.form-row{display:flex;gap:10px}
.form-row .form-group{flex:1}
.btn-primary{background:linear-gradient(135deg,#f97316,#f59e0b);color:#fff;border:none;padding:12px 24px;border-radius:40px;font-size:0.85rem;font-weight:600;cursor:pointer;width:100%}
.btn-secondary{background:#fff7ed;color:#9a3412;border:none;padding:10px 20px;border-radius:40px;font-size:0.8rem;cursor:pointer}
.api-status{font-size:0.7rem;margin:8px 24px 0;padding:8px;border-radius:8px;text-align:center}
.api-status.warning{background:#fffbeb;color:#92400e}
.expand-preview{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:20px;padding:16px;margin-top:8px}
.expand-preview-title{font-size:0.8rem;font-weight:600;color:#166534;margin-bottom:12px}
.expand-preview-list{display:flex;flex-wrap:wrap;gap:8px}
.expand-tag{background:#dcfce7;color:#166534;padding:4px 12px;border-radius:30px;font-size:0.7rem}
.expand-confirm-btn{background:#22c55e;color:#fff;border:none;padding:10px 20px;border-radius:40px;font-size:0.8rem;font-weight:600;cursor:pointer;margin-top:12px;width:100%}
.expand-cancel-btn{background:#fed7aa;color:#9a3412;border:none;padding:8px 16px;border-radius:40px;font-size:0.75rem;cursor:pointer;margin-top:8px;width:100%}
.project-item{background:#fff7ed;border:1px solid #fed7aa;border-radius:16px;padding:16px;margin-bottom:12px}
.project-item h4{color:#f97316;margin-bottom:8px}
.project-item .project-meta{font-size:0.7rem;color:#9a3412;margin-bottom:8px}
.project-item .project-actions{margin-top:12px}
.project-item .project-actions a{display:inline-block;margin-right:12px;padding:4px 12px;border-radius:20px;font-size:0.7rem;text-decoration:none}
.project-preview-link{background:#f97316;color:#fff}
.project-delete-link{background:#fee2e2;color:#dc2626;cursor:pointer}
@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
.type-selector{display:flex;gap:8px;background:#f1f5f9;padding:4px;border-radius:40px}
.type-btn{padding:6px 14px;border-radius:30px;font-size:0.7rem;cursor:pointer;border:none;background:transparent;color:#64748b;transition:all 0.2s}
.type-btn.active{background:linear-gradient(135deg,#f97316,#f59e0b);color:#fff}
@media (max-width:640px){
.header{padding:10px 12px}
.logo-icon{width:30px;height:30px;font-size:15px}
.logo-text{font-size:0.9rem}
.brand-tag{display:none}
.header-center{display:none}
.config-btn,.projects-btn{font-size:0;padding:6px 10px}
.config-btn:before{content:"⚙️";font-size:0.9rem}
.projects-btn:before{content:"📁";font-size:0.9rem}
.clear-chat{font-size:0;padding:6px 10px}
.clear-chat:before{content:"🗑️";font-size:0.9rem}
.chat-area{padding:16px;padding-bottom:90px}
.bubble{max-width:85%;font-size:0.85rem}
.input-area{padding:12px 16px}
.input-wrapper{padding:3px 3px 3px 16px}
.input-wrapper button{padding:8px 20px}
}