@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap";:root{--primary-50: #eef2ff;--primary-100: #e0e7ff;--primary-200: #c7d2fe;--primary-300: #a5b4fc;--primary-400: #818cf8;--primary-500: #6366f1;--primary-600: #4f46e5;--primary-700: #4338ca;--primary-800: #3730a3;--primary-900: #312e81;--accent-cyan: #06b6d4;--accent-emerald: #10b981;--accent-amber: #f59e0b;--accent-rose: #f43f5e;--accent-violet: #8b5cf6;--gray-50: #f9fafb;--gray-100: #f1f5f9;--gray-200: #e2e8f0;--gray-300: #cbd5e1;--gray-400: #94a3b8;--gray-500: #64748b;--gray-600: #475569;--gray-700: #334155;--gray-800: #1e293b;--gray-900: #0f172a;--bg-primary: #fafbfd;--bg-sidebar: #141726;--bg-card: rgba(255, 255, 255, .92);--bg-glass: rgba(255, 255, 255, .78);--shadow-xs: 0 1px 2px rgba(0, 0, 0, .03);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 2px 8px rgba(0, 0, 0, .04);--shadow-lg: 0 8px 24px rgba(0, 0, 0, .04);--shadow-xl: 0 12px 32px rgba(0, 0, 0, .06);--shadow-glow: 0 0 16px rgba(99, 102, 241, .08);--shadow-card-hover: 0 12px 32px rgba(99, 102, 241, .08);--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 20px;--radius-full: 9999px;--space-1: 4px;--space-2: 6px;--space-3: 10px;--space-4: 14px;--space-5: 18px;--space-6: 22px;--space-8: 28px;--space-10: 36px;--space-12: 44px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--transition-spring: .4s cubic-bezier(.22, 1, .36, 1);--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-size-xs: .6875rem;--font-size-sm: .75rem;--font-size-base: .8125rem;--font-size-md: .875rem;--font-size-lg: 1rem;--font-size-xl: 1.125rem;--font-size-2xl: 1.3125rem;--font-size-3xl: 1.625rem;--font-size-4xl: 2rem;--sidebar-width: 240px;--sidebar-collapsed: 64px;--header-height: 52px}*{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{font-family:var(--font-sans);background:var(--bg-primary);color:var(--gray-700);line-height:1.5;min-height:100vh;overflow-x:hidden;letter-spacing:.01em}#root{min-height:100vh}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--gray-200);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--gray-300)}::selection{background:var(--primary-200);color:var(--primary-900)}.shimmer{background:linear-gradient(90deg,#fff0,#fff6,#fff0);background-size:200% 100%;animation:shimmer 2s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 #6366f126}50%{box-shadow:0 0 12px 2px #6366f114}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.animate-fade-in{animation:fadeIn .4s ease-out forwards}.animate-fade-in-up{animation:fadeInUp .5s ease-out forwards}.animate-scale{animation:fadeInScale .3s ease-out forwards}.glass{background:#ffffffd1;backdrop-filter:blur(16px) saturate(160%);-webkit-backdrop-filter:blur(16px) saturate(160%);border:1px solid rgba(255,255,255,.6)}.gradient-text{background:linear-gradient(135deg,var(--primary-600),var(--accent-violet));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}button{font-family:var(--font-sans);cursor:pointer;border:none;outline:none}.btn{display:inline-flex;align-items:center;gap:var(--space-2);padding:5px 12px;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;letter-spacing:.01em;transition:all var(--transition-base);text-decoration:none;white-space:nowrap}.btn-primary{background:var(--primary-600);color:#fff;box-shadow:0 1px 4px #6366f12e}.btn-primary:hover{background:var(--primary-700);box-shadow:0 2px 8px #6366f138;transform:translateY(-1px)}.btn-primary:active{transform:scale(.98)}.btn-secondary{background:var(--gray-100);color:var(--gray-700);border:1px solid var(--gray-200)}.btn-secondary:hover{background:var(--gray-200);border-color:var(--gray-300)}.btn-ghost{background:transparent;color:var(--gray-600)}.btn-ghost:hover{background:var(--gray-100);color:var(--gray-800)}.btn-icon{width:32px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-md)}.btn-sm{padding:3px 10px;font-size:11px;border-radius:var(--radius-md)}.btn-lg{padding:var(--space-3) var(--space-6);font-size:var(--font-size-base);font-weight:600}.card{background:var(--bg-card);border-radius:var(--radius-lg);border:1px solid rgba(0,0,0,.05);box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-md);border-color:#00000012}.card-glass{background:var(--bg-glass);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid rgba(255,255,255,.6);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.badge{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:var(--radius-full);font-size:10px;font-weight:600;letter-spacing:.03em}.badge-primary{background:var(--primary-100);color:var(--primary-700)}.badge-success{background:#d1fae5;color:#065f46}.badge-warning{background:#fef3c7;color:#92400e}.badge-danger{background:#ffe4e6;color:#9f1239}input,select,textarea{font-family:var(--font-sans);font-size:var(--font-size-sm);padding:6px 10px;border:1px solid var(--gray-200);border-radius:var(--radius-md);background:#fff;color:var(--gray-800);transition:all var(--transition-fast);outline:none;width:100%}input:focus,select:focus,textarea:focus{border-color:var(--primary-400);box-shadow:0 0 0 3px #6366f11a}input::placeholder{color:var(--gray-400)}.tag{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:var(--radius-full);font-size:10px;font-weight:500;letter-spacing:.02em}[data-tooltip]{position:relative}[data-tooltip]:after{content:attr(data-tooltip);position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%) scale(.95);padding:4px 10px;background:var(--gray-900);color:#fff;font-size:11px;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;transition:all var(--transition-fast)}[data-tooltip]:hover:after{opacity:1;transform:translate(-50%) scale(1)}.progress-bar{height:6px;background:var(--gray-100);border-radius:var(--radius-full);overflow:hidden}.progress-bar-fill{height:100%;border-radius:var(--radius-full);background:linear-gradient(90deg,var(--primary-500),var(--accent-violet));transition:width var(--transition-slow)}.avatar{width:30px;height:30px;border-radius:var(--radius-full);background:var(--primary-500);display:flex;align-items:center;justify-content:center;color:#fff;font-size:10px;font-weight:600;flex-shrink:0}.divider{height:1px;background:var(--gray-100);margin:var(--space-4) 0}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12);text-align:center;color:var(--gray-400)}.empty-state svg{margin-bottom:var(--space-4);opacity:.5}.layout{display:flex;min-height:100vh}.sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:100;transition:width var(--transition-base);overflow:hidden}.sidebar-collapsed .sidebar{width:var(--sidebar-collapsed)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-4);height:var(--header-height)}.sidebar-logo{display:flex;align-items:center;gap:var(--space-2)}.logo-icon{flex-shrink:0}.logo-text{display:flex;flex-direction:column}.logo-title{font-size:11px;font-weight:700;color:#ffffffe6;letter-spacing:.1em;text-transform:uppercase}.logo-subtitle{font-size:9px;color:#ffffff59;font-weight:400;letter-spacing:.04em}.sidebar-toggle{width:24px;height:24px;border-radius:var(--radius-sm);background:#ffffff0f;color:#fff6;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);border:none;cursor:pointer}.sidebar-toggle:hover{background:#ffffff26;color:#fff}.sidebar-collapsed .sidebar-toggle svg{transform:rotate(180deg)}.sidebar-quick-action{padding:0 var(--space-4) var(--space-4)}.btn-create-page{display:flex;align-items:center;justify-content:center;gap:var(--space-2);width:100%;padding:8px var(--space-4);background:#ffffff12;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-md);color:#ffffffbf;font-size:11px;font-weight:500;text-decoration:none;transition:all var(--transition-base);cursor:pointer}.btn-create-page:hover{background:#ffffff1f;border-color:#ffffff2e;color:#fff}.sidebar-nav{flex:1;padding:0 var(--space-3);overflow-y:auto}.nav-section-label{padding:var(--space-2) var(--space-3);font-size:9px;font-weight:500;color:#ffffff40;text-transform:uppercase;letter-spacing:.08em}.nav-item{display:flex;align-items:center;gap:var(--space-3);padding:7px var(--space-3);margin-bottom:1px;border-radius:var(--radius-md);color:#ffffff80;font-size:13px;font-weight:400;text-decoration:none;transition:all var(--transition-fast);position:relative}.sidebar-collapsed .nav-item{justify-content:center;padding:var(--space-3)}.nav-item:hover{background:#ffffff0f;color:#fffc}.nav-item.active{background:#6366f126;color:#fffffff2;font-weight:500}.nav-item.active:before{content:"";position:absolute;left:-10px;top:50%;transform:translateY(-50%);width:2px;height:16px;background:var(--primary-400);border-radius:0 2px 2px 0}.nav-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center}.nav-badge{margin-left:auto;padding:1px 5px;background:var(--accent-rose);color:#fff;font-size:8px;font-weight:600;border-radius:var(--radius-full);letter-spacing:.04em}.sidebar-bottom{padding:var(--space-3);border-top:1px solid rgba(255,255,255,.06)}.sidebar-user{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3);margin-top:var(--space-2);border-radius:var(--radius-md);background:#ffffff0a}.user-info{display:flex;flex-direction:column}.user-name{font-size:11px;font-weight:500;color:#ffffffb3}.user-role{font-size:9px;color:#ffffff4d}.main-wrapper{flex:1;margin-left:var(--sidebar-width);transition:margin-left var(--transition-base);display:flex;flex-direction:column;min-height:100vh}.sidebar-collapsed .main-wrapper{margin-left:var(--sidebar-collapsed)}.top-bar{height:var(--header-height);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-8);position:sticky;top:0;z-index:50;border-bottom:1px solid var(--gray-100)}.top-bar-left{display:flex;align-items:center;gap:var(--space-3)}.mobile-menu{display:none}.page-title{font-size:var(--font-size-md);font-weight:600;color:var(--gray-800);letter-spacing:-.01em}.top-bar-right{display:flex;align-items:center;gap:var(--space-3)}.search-wrapper{position:relative;display:flex;align-items:center}.search-icon{position:absolute;left:12px;color:var(--gray-400);pointer-events:none;z-index:1}.search-input{width:220px;padding:6px 36px 6px 32px;font-size:11px;background:var(--gray-50);border:1px solid var(--gray-200);border-radius:var(--radius-full);transition:all var(--transition-base)}.search-input:focus{width:280px;background:#fff;border-color:var(--primary-300);box-shadow:0 0 0 2px #6366f10f}.search-shortcut{position:absolute;right:12px;font-size:11px;font-weight:500;color:var(--gray-400);background:var(--gray-100);padding:2px 6px;border-radius:4px;pointer-events:none}.notification-btn{position:relative}.notification-dot{position:absolute;top:5px;right:5px;width:6px;height:6px;background:var(--accent-rose);border-radius:50%;border:1.5px solid #fff}.main-content{flex:1;padding:var(--space-6);animation:fadeIn .2s ease-out}@media(max-width:1024px){.sidebar,.sidebar-collapsed .sidebar{transform:translate(-100%)}.main-wrapper,.sidebar-collapsed .main-wrapper{margin-left:0}.mobile-menu{display:flex}}@media(max-width:768px){.main-content{padding:var(--space-4)}.top-bar{padding:0 var(--space-4)}.search-wrapper{display:none}}.ai-fab{position:fixed;bottom:28px;right:28px;z-index:9999;display:flex;align-items:center;gap:var(--space-2);padding:0;border:none;background:transparent;cursor:pointer;transition:all .3s ease}.ai-fab.hidden{transform:scale(0);opacity:0;pointer-events:none}.fab-inner{width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#6366f1,#8b5cf6,#a855f7);color:#fff;position:relative;z-index:2;box-shadow:0 4px 20px #6366f166;transition:all .3s ease}.ai-fab:hover .fab-inner{transform:scale(1.08);box-shadow:0 8px 32px #6366f180}.fab-glow{position:absolute;width:56px;height:56px;border-radius:50%;background:linear-gradient(135deg,#6366f1,#8b5cf6);animation:fab-pulse 2.5s ease-in-out infinite;z-index:1}@keyframes fab-pulse{0%,to{transform:scale(1);opacity:.4}50%{transform:scale(1.4);opacity:0}}.fab-label{background:#0f172ad9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;font-size:12px;font-weight:600;padding:6px 14px;border-radius:var(--radius-full);white-space:nowrap;opacity:0;transform:translate(10px);transition:all .3s ease}.ai-fab:hover .fab-label{opacity:1;transform:translate(0)}.ai-panel{position:fixed;bottom:24px;right:24px;width:420px;height:640px;max-height:calc(100vh - 48px);background:#fff;border-radius:20px;box-shadow:0 0 0 1px #0000000a,0 24px 64px #0000001f,0 8px 24px #6366f114;z-index:10000;display:flex;flex-direction:column;animation:panelSlideIn .35s cubic-bezier(.16,1,.3,1);overflow:hidden}.ai-panel.expanded{width:720px;height:calc(100vh - 48px);bottom:24px;right:24px}@keyframes panelSlideIn{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.ai-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--gray-100);background:linear-gradient(135deg,#fafafe,#f8f7ff);flex-shrink:0}.aph-left{display:flex;align-items:center;gap:var(--space-3)}.ai-avatar{width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;position:relative}.ai-avatar-pulse{position:absolute;inset:-2px;border-radius:14px;border:2px solid #6366f1;opacity:.3;animation:fab-pulse 3s ease-in-out infinite}.aph-title{font-size:var(--font-size-sm);font-weight:700;color:var(--gray-800);display:block}.aph-status{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--gray-400)}.status-dot{width:6px;height:6px;border-radius:50%;background:#10b981;animation:pulse-glow 2s ease-in-out infinite}.aph-actions{display:flex;gap:2px}.ai-chat-area{flex:1;overflow-y:auto;padding:var(--space-4) var(--space-5);display:flex;flex-direction:column;gap:var(--space-4)}.chat-msg{display:flex;gap:var(--space-2);animation:fadeInUp .3s ease-out}.chat-msg.user{justify-content:flex-end}.msg-avatar{width:28px;height:28px;border-radius:10px;background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:2px}.msg-bubble{max-width:85%;padding:var(--space-3) var(--space-4);border-radius:16px;font-size:13px;line-height:1.7}.chat-msg.assistant .msg-bubble{background:var(--gray-50);color:var(--gray-700);border-bottom-left-radius:6px}.chat-msg.user .msg-bubble{background:linear-gradient(135deg,#6366f1,#818cf8);color:#fff;border-bottom-right-radius:6px}.msg-content strong{font-weight:700;color:var(--gray-900)}.chat-msg.user .msg-content strong{color:#fff}.msg-bullet{color:var(--primary-500)}.msg-actions{display:flex;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--gray-100)}.msg-action-btn{display:flex;align-items:center;gap:4px;padding:6px 14px;font-size:12px;font-weight:600;background:#fff;border:1.5px solid var(--primary-200);color:var(--primary-600);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast)}.msg-action-btn:hover{background:var(--primary-50);border-color:var(--primary-400)}.msg-bubble.typing{display:flex;gap:4px;align-items:center;padding:var(--space-3) var(--space-4)}.typing-dot{width:6px;height:6px;border-radius:50%;background:var(--gray-400);animation:typingBounce 1.2s ease-in-out infinite}.typing-dot:nth-child(2){animation-delay:.15s}.typing-dot:nth-child(3){animation-delay:.3s}@keyframes typingBounce{0%,60%,to{transform:translateY(0);opacity:.4}30%{transform:translateY(-6px);opacity:1}}.pipeline-container{background:linear-gradient(135deg,#f8f7ff,#eef2ff);border:1.5px solid var(--primary-100);border-radius:16px;padding:var(--space-4);animation:fadeInUp .4s ease-out}.pipeline-header{display:flex;align-items:center;gap:var(--space-2);font-size:12px;font-weight:700;color:var(--primary-600);margin-bottom:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--primary-100)}.pipeline-count{margin-left:auto;font-size:11px;color:var(--primary-400)}.pipeline-steps{display:flex;flex-direction:column;gap:0}.pipeline-step{display:flex;gap:var(--space-3);position:relative}.ps-icon-wrap{display:flex;flex-direction:column;align-items:center;flex-shrink:0}.ps-icon{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;background:var(--gray-100);color:var(--gray-400);transition:all .3s ease;z-index:1}.pipeline-step.done .ps-icon{background:var(--primary-500);color:#fff;box-shadow:0 2px 8px #6366f14d}.pipeline-step.active .ps-icon{background:#fff;border:2px solid var(--primary-400);color:var(--primary-600);box-shadow:0 0 12px #6366f133}.ps-line{width:2px;flex:1;min-height:12px;background:var(--gray-200);transition:background .3s ease}.pipeline-step.done .ps-line{background:var(--primary-400)}.ps-content{padding-bottom:var(--space-3);flex:1}.ps-label{font-size:12px;font-weight:600;color:var(--gray-500);display:block;line-height:28px}.pipeline-step.done .ps-label{color:var(--gray-800)}.pipeline-step.active .ps-label{color:var(--primary-600)}.ps-detail{font-size:11px;color:var(--gray-400);margin-top:2px;display:block}.pipeline-step.done .ps-detail{color:var(--primary-500)}.ai-quick-commands{padding:var(--space-3) var(--space-5);border-top:1px solid var(--gray-50);flex-shrink:0}.qc-label{font-size:11px;font-weight:600;color:var(--gray-400);text-transform:uppercase;letter-spacing:.04em;margin-bottom:var(--space-2)}.qc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-2)}.qc-card{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--gray-50);border:1px solid var(--gray-100);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-align:left}.qc-card:hover{background:var(--primary-50);border-color:var(--primary-200)}.qc-icon{color:var(--primary-500);flex-shrink:0}.qc-title{font-size:12px;font-weight:600;color:var(--gray-700);display:block;line-height:1.3}.qc-desc{font-size:10px;color:var(--gray-400);display:block}.ai-input-area{padding:var(--space-3) var(--space-5) var(--space-4);border-top:1px solid var(--gray-50);flex-shrink:0;background:#fff}.ai-input-wrap{display:flex;align-items:flex-end;gap:var(--space-2);background:var(--gray-50);border:1.5px solid var(--gray-200);border-radius:14px;padding:var(--space-2) var(--space-3);transition:all var(--transition-fast)}.ai-input-wrap:focus-within{border-color:var(--primary-400);background:#fff;box-shadow:0 0 0 3px #6366f114}.ai-input-wrap textarea{flex:1;border:none;background:transparent;resize:none;font-size:13px;line-height:1.5;padding:4px 0;min-height:20px;max-height:80px;font-family:inherit;color:var(--gray-800)}.ai-input-wrap textarea:focus{outline:none;box-shadow:none}.ai-input-wrap textarea::placeholder{color:var(--gray-400)}.ai-send-btn{width:32px;height:32px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--gray-200);color:var(--gray-400);border:none;cursor:pointer;transition:all var(--transition-fast);flex-shrink:0}.ai-send-btn.active{background:linear-gradient(135deg,#6366f1,#8b5cf6);color:#fff;box-shadow:0 2px 8px #6366f14d}.ai-send-btn.active:hover{transform:scale(1.05)}.ai-input-hint{display:flex;justify-content:space-between;padding-top:var(--space-2);font-size:10px;color:var(--gray-300)}.powered-by{font-weight:600;letter-spacing:.02em}.dashboard{max-width:1400px}.welcome-section{margin-bottom:var(--space-6);animation:fadeIn .3s ease-out}.welcome-content{display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-8)}.welcome-greeting{display:flex;align-items:center;gap:var(--space-4)}.greeting-avatar{width:40px;height:40px;border-radius:12px;overflow:hidden;flex-shrink:0;box-shadow:0 2px 8px #6366f126}.greeting-avatar-img{width:100%;height:100%;object-fit:cover}.welcome-title{font-size:var(--font-size-xl);font-weight:700;color:var(--gray-800);letter-spacing:-.02em}.welcome-subtitle{font-size:var(--font-size-sm);color:var(--gray-500);margin-top:2px}.welcome-subtitle strong{color:var(--primary-600);font-weight:700}.quick-actions{display:flex;gap:var(--space-3)}.quick-action-card{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:#fff;border:1px solid rgba(0,0,0,.05);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-base);min-width:175px}.quick-action-card:hover{border-color:var(--primary-200);box-shadow:0 4px 16px #6366f10f;transform:translateY(-2px)}.qa-icon{width:34px;height:34px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.qa-text{display:flex;flex-direction:column;text-align:left}.qa-label{font-size:11px;font-weight:600;color:var(--gray-700)}.qa-desc{font-size:10px;color:var(--gray-400)}.qa-arrow{color:var(--gray-300);margin-left:auto;transition:transform var(--transition-fast)}.quick-action-card:hover .qa-arrow{transform:translate(3px);color:var(--primary-400)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-6)}.stat-card{background:#fff;border:1px solid rgba(0,0,0,.04);border-radius:var(--radius-lg);padding:var(--space-4);transition:all var(--transition-base);animation:fadeInUp .4s ease-out both;position:relative;overflow:hidden}.stat-card:hover{box-shadow:0 6px 20px #0000000a;border-color:#0000000f;transform:translateY(-2px)}.stat-sparkline{position:absolute;bottom:0;left:0;right:0;height:40px;opacity:.3}.stat-sparkline svg{width:100%;height:100%}.stat-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.stat-icon{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center}.stat-change{display:flex;align-items:center;gap:2px;font-size:10px;font-weight:600;padding:2px 7px;border-radius:var(--radius-full)}.stat-change.up{color:#059669;background:#d1fae5}.stat-change.down{color:#dc2626;background:#ffe4e6}.stat-value{font-size:1.5rem;font-weight:700;color:var(--gray-800);letter-spacing:-.03em;line-height:1.2}.stat-label{font-size:11px;color:var(--gray-400);margin-top:1px;font-weight:400}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-4)}.section-header-left{display:flex;align-items:baseline;gap:var(--space-2)}.section-title{font-size:var(--font-size-md);font-weight:700;color:var(--gray-800);letter-spacing:-.01em}.section-count{font-size:10px;color:var(--gray-400);font-weight:400}.pages-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:var(--space-4);margin-bottom:var(--space-6)}.page-card{background:#fff;border:1px solid rgba(0,0,0,.04);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;transition:all var(--transition-base);animation:fadeInUp .4s ease-out both}.page-card:hover{box-shadow:0 12px 32px #6366f112;border-color:transparent;transform:translateY(-2px)}.page-cover{height:150px;position:relative;overflow:hidden}.cover-image{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.16,1,.3,1)}.page-card:hover .cover-image{transform:scale(1.08)}.page-cover-overlay{position:absolute;top:var(--space-3);right:var(--space-3);z-index:3}.page-hover-actions{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;gap:var(--space-2);background:#0f172a80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:opacity var(--transition-base);z-index:2}.page-card:hover .page-hover-actions{opacity:1}.hover-btn{display:flex;align-items:center;gap:4px;padding:8px 16px;border-radius:var(--radius-full);font-size:12px;font-weight:600;background:#ffffff26;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;border:1px solid rgba(255,255,255,.2);cursor:pointer;transition:all var(--transition-fast)}.hover-btn:hover{background:#ffffff40}.hover-btn.primary{background:var(--primary-500);border-color:var(--primary-500)}.hover-btn.primary:hover{background:var(--primary-600)}.page-info{padding:var(--space-3)}.page-name{font-size:11.5px;font-weight:600;color:var(--gray-700);margin-bottom:var(--space-1);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.page-meta{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-3)}.page-template{background:var(--primary-50);color:var(--primary-600)}.page-pv{display:flex;align-items:center;gap:3px;font-size:12px;color:var(--gray-500);font-weight:500}.page-footer{display:flex;align-items:center;justify-content:space-between;padding-top:var(--space-3);border-top:1px solid var(--gray-50)}.page-time{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--gray-400)}.dashboard-bottom{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.card-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-4);border-bottom:1px solid var(--gray-50)}.card-title{font-size:var(--font-size-sm);font-weight:700;color:var(--gray-700)}.card-subtitle{font-size:10px;color:var(--gray-400)}.feed-list{padding:var(--space-2) var(--space-4)}.feed-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) 0;border-bottom:1px solid var(--gray-50);animation:fadeIn .25s ease-out both;transition:background var(--transition-fast)}.feed-item:last-child{border-bottom:none}.feed-emoji{font-size:.9rem;flex-shrink:0;width:26px;height:26px;display:flex;align-items:center;justify-content:center;background:var(--gray-50);border-radius:var(--radius-md)}.feed-text{flex:1;font-size:11px;color:var(--gray-500)}.feed-text strong{color:var(--gray-700);margin-left:3px;font-weight:500}.feed-time{font-size:10px;color:var(--gray-400);white-space:nowrap;font-weight:400}.perf-stats{padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.perf-item{display:flex;align-items:center;gap:var(--space-2)}.perf-icon{width:30px;height:30px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;font-size:.85rem;flex-shrink:0}.perf-info{min-width:65px}.perf-num{font-size:var(--font-size-md);font-weight:700;color:var(--gray-800);line-height:1.2}.perf-label{font-size:10px;color:var(--gray-400);font-weight:400}.perf-bar-wrap{flex:1}.perf-item .progress-bar{height:6px;border-radius:3px}@media(max-width:1280px){.pages-grid{grid-template-columns:repeat(3,1fr)}.welcome-content{flex-direction:column}}@media(max-width:1024px){.stats-grid,.pages-grid{grid-template-columns:repeat(2,1fr)}.dashboard-bottom{grid-template-columns:1fr}.quick-actions{flex-wrap:wrap}}@media(max-width:640px){.stats-grid,.pages-grid{grid-template-columns:1fr}}.editor-layout{display:flex;height:calc(100vh - var(--header-height));margin:calc(-1 * var(--space-6));gap:0}.editor-panel{width:260px;background:#fff;border-right:1px solid rgba(0,0,0,.04);display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto}.right-panel{border-right:none;border-left:1px solid rgba(0,0,0,.04)}.panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid rgba(0,0,0,.04);position:sticky;top:0;background:#fff;z-index:5}.panel-header h3{font-size:11px;font-weight:600;color:var(--gray-700)}.component-tabs{display:flex;padding:var(--space-2) var(--space-3);gap:var(--space-1);background:var(--gray-50);border-bottom:1px solid rgba(0,0,0,.04)}.comp-tab{flex:1;padding:5px 0;font-size:10px;font-weight:500;color:var(--gray-400);background:transparent;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.comp-tab.active{background:#fff;color:var(--primary-600);box-shadow:var(--shadow-xs)}.component-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-1);padding:var(--space-3)}.component-item{display:flex;flex-direction:column;align-items:center;gap:3px;padding:var(--space-2) var(--space-1);border-radius:var(--radius-md);border:1px solid rgba(0,0,0,.04);cursor:grab;transition:all var(--transition-fast);background:#fff}.component-item:hover{border-color:var(--primary-300);background:var(--primary-50);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.component-item:active{cursor:grabbing;transform:scale(.95)}.comp-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:var(--gray-400);background:var(--gray-50);border-radius:var(--radius-sm)}.component-item:hover .comp-icon{color:var(--primary-500);background:var(--primary-100)}.comp-label{font-size:9px;color:var(--gray-400);font-weight:400}.panel-section{border-top:1px solid var(--gray-100);margin-top:auto}.panel-section-header{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);font-size:9px;font-weight:500;color:var(--gray-400);text-transform:uppercase;letter-spacing:.05em}.layer-list{padding:0 var(--space-3) var(--space-3);max-height:200px;overflow-y:auto}.layer-item{display:flex;align-items:center;gap:var(--space-2);padding:6px var(--space-2);border-radius:var(--radius-sm);cursor:pointer;transition:background var(--transition-fast);font-size:var(--font-size-xs);color:var(--gray-600)}.layer-item:hover{background:var(--gray-50)}.layer-item.active{background:var(--primary-50);color:var(--primary-700)}.layer-grip{color:var(--gray-300);cursor:grab}.layer-type{flex:1}.layer-index{font-size:10px;color:var(--gray-400);background:var(--gray-100);width:18px;height:18px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm)}.editor-canvas-wrapper{flex:1;display:flex;flex-direction:column;background:var(--gray-50);min-width:0}.editor-toolbar{display:flex;align-items:center;justify-content:space-between;padding:var(--space-1) var(--space-3);min-height:42px;border-bottom:1px solid rgba(0,0,0,.04);background:#ffffffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);flex-shrink:0}.toolbar-left,.toolbar-right{display:flex;align-items:center;gap:var(--space-2)}.toolbar-center{display:flex;align-items:center}.toolbar-divider{width:1px;height:20px;background:var(--gray-200);margin:0 var(--space-1)}.preview-modes{display:flex;background:var(--gray-100);border-radius:var(--radius-md);padding:2px}.preview-mode-btn{padding:5px 10px;border-radius:var(--radius-sm);color:var(--gray-400);background:transparent;transition:all var(--transition-fast)}.preview-mode-btn.active{background:#fff;color:var(--primary-600);box-shadow:var(--shadow-xs)}.page-name-input{font-size:var(--font-size-sm);font-weight:600;color:var(--gray-700);padding:4px 8px;border-radius:var(--radius-sm);outline:none;transition:background var(--transition-fast)}.page-name-input:hover,.page-name-input:focus{background:var(--gray-100)}.canvas-area{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:var(--space-6);overflow-y:auto;background:radial-gradient(circle at 20% 20%,rgba(99,102,241,.02) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(139,92,246,.02) 0%,transparent 50%),var(--gray-50)}.canvas-device{background:#fff;border-radius:var(--radius-lg);box-shadow:0 0 0 1px #0000000a,0 12px 40px #0000000f,0 0 24px #6366f105;overflow:hidden;transition:width var(--transition-base);position:relative}.canvas-device.phone{width:390px;border-radius:40px;border:8px solid #1e293b}.canvas-device.tablet{width:600px;border-radius:24px;border:6px solid #334155}.canvas-device.desktop{width:100%;max-width:900px;border-radius:var(--radius-lg)}.device-frame-top{height:36px;background:#1e293b;display:flex;align-items:center;justify-content:center}.device-notch{width:120px;height:28px;background:#0f172a;border-radius:0 0 20px 20px}.device-frame-bottom{height:24px;background:#1e293b;display:flex;align-items:center;justify-content:center}.device-home-bar{width:120px;height:4px;background:#475569;border-radius:2px}.canvas-content{min-height:500px;transition:all var(--transition-fast)}.canvas-content.drag-over{background:var(--primary-50);outline:2px dashed var(--primary-300);outline-offset:-8px}.canvas-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:var(--gray-400)}.canvas-empty p{font-size:var(--font-size-base);font-weight:600;margin-top:var(--space-3)}.canvas-empty span{font-size:var(--font-size-xs);margin-top:4px}.canvas-element{position:relative;transition:all var(--transition-fast);cursor:pointer}.canvas-element:hover{outline:2px solid var(--primary-200);outline-offset:-2px}.canvas-element.selected{outline:2px solid var(--primary-500);outline-offset:-2px}.element-toolbar{position:absolute;top:-32px;right:4px;display:flex;gap:2px;background:var(--gray-900);border-radius:var(--radius-sm);padding:2px;z-index:10;animation:fadeInScale .15s ease-out}.element-toolbar button{width:26px;height:26px;display:flex;align-items:center;justify-content:center;border-radius:4px;color:#ffffffb3;background:transparent;transition:all var(--transition-fast)}.element-toolbar button:hover{background:#ffffff26;color:#fff}.element-toolbar button.delete:hover{background:#dc2626;color:#fff}.props-content,.page-settings{padding:var(--space-4)}.props-form{display:flex;flex-direction:column;gap:var(--space-4)}.prop-group{display:flex;flex-direction:column;gap:var(--space-2)}.prop-label{font-size:10px;font-weight:500;color:var(--gray-400);text-transform:uppercase;letter-spacing:.04em}.prop-row{display:flex;gap:var(--space-3)}.flex-1{flex:1}.color-picker-row{display:flex;gap:var(--space-2);align-items:center}.color-input{width:30px;height:30px;padding:2px;border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0}.color-text{flex:1;font-family:monospace}.align-btns{display:flex;gap:var(--space-1);background:var(--gray-50);padding:3px;border-radius:var(--radius-md)}.align-btn{flex:1;padding:6px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--gray-400);background:transparent;transition:all var(--transition-fast)}.align-btn.active{background:#fff;color:var(--primary-600);box-shadow:var(--shadow-xs)}.upload-area{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-6) var(--space-4);border:2px dashed var(--gray-200);border-radius:var(--radius-md);color:var(--gray-400);cursor:pointer;transition:all var(--transition-fast);font-size:var(--font-size-sm)}.upload-area:hover{border-color:var(--primary-300);color:var(--primary-500);background:var(--primary-50)}.upload-hint{font-size:11px;color:var(--gray-400)}.utm-mini{display:flex;flex-direction:column;gap:var(--space-2)}.utm-row{display:flex;align-items:center;gap:var(--space-2)}.utm-row span{font-size:11px;font-weight:600;color:var(--gray-500);min-width:70px}.utm-row input{flex:1;font-size:12px;padding:4px 8px}.btn-ai-assist{justify-content:center;background:linear-gradient(135deg,var(--primary-50),#f3e8ff);color:var(--primary-600);border:1px solid var(--primary-200)}.btn-ai-assist:hover{background:linear-gradient(135deg,var(--primary-100),#ede9fe);border-color:var(--primary-300)}input[type=range]{-webkit-appearance:none;appearance:none;height:6px;background:var(--gray-200);border-radius:3px;outline:none;border:none;padding:0}input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;background:var(--primary-500);border-radius:50%;cursor:pointer;box-shadow:0 2px 6px #6366f14d}@media(max-width:1200px){.editor-panel{width:240px}}@media(max-width:900px){.editor-panel{position:absolute;top:0;bottom:0;z-index:20;box-shadow:var(--shadow-xl)}.left-panel{left:0}.right-panel{right:0}}.templates-page{max-width:1400px}.templates-hero{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,var(--primary-600),var(--accent-violet));border-radius:var(--radius-lg);padding:var(--space-8) var(--space-10);margin-bottom:var(--space-6);color:#fff;position:relative;overflow:hidden;animation:fadeIn .3s ease-out}.templates-hero:before{content:"";position:absolute;top:-50%;right:-10%;width:400px;height:400px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);border-radius:50%}.hero-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-2xl);font-weight:700;letter-spacing:-.02em}.hero-icon{animation:float 3s ease-in-out infinite}.hero-desc{font-size:11px;opacity:.7;margin-top:var(--space-1)}.hero-stats{display:flex;gap:var(--space-6)}.hero-stat{display:flex;flex-direction:column;align-items:center}.hs-num{font-size:var(--font-size-xl);font-weight:700}.hs-label{font-size:10px;opacity:.5}.templates-controls{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6);gap:var(--space-4)}.category-tabs{display:flex;gap:var(--space-2);overflow-x:auto;padding-bottom:2px}.cat-tab{padding:4px 12px;font-size:11px;font-weight:500;color:var(--gray-400);background:transparent;border:1px solid transparent;border-radius:var(--radius-full);white-space:nowrap;transition:all var(--transition-fast)}.cat-tab:hover{color:var(--gray-700);background:var(--gray-50)}.cat-tab.active{color:var(--primary-600);background:var(--primary-50);border-color:var(--primary-200)}.controls-right{display:flex;align-items:center;gap:var(--space-3)}.search-box{position:relative;display:flex;align-items:center}.search-box svg{position:absolute;left:10px;color:var(--gray-400)}.search-box input{padding-left:32px;width:200px;border-radius:var(--radius-full)}.view-toggle{display:flex;background:var(--gray-100);border-radius:var(--radius-md);padding:2px}.view-toggle button{padding:6px 10px;background:transparent;color:var(--gray-400);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.view-toggle button.active{background:#fff;color:var(--primary-600);box-shadow:var(--shadow-xs)}.templates-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4)}.templates-grid.list{grid-template-columns:1fr}.templates-grid.list .template-card{flex-direction:row}.templates-grid.list .tpl-cover{width:200px;height:140px}.template-card{background:#fff;border:1px solid rgba(0,0,0,.04);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;transition:all var(--transition-base);animation:fadeInUp .4s ease-out both;display:flex;flex-direction:column}.template-card:hover{box-shadow:var(--shadow-card-hover);border-color:transparent;transform:translateY(-2px)}.tpl-cover{height:170px;position:relative;overflow:hidden}.tpl-cover-image{width:100%;height:100%;object-fit:cover;transition:transform .6s cubic-bezier(.16,1,.3,1)}.template-card:hover .tpl-cover-image{transform:scale(1.04)}.tpl-hot{position:absolute;top:var(--space-2);left:var(--space-2);padding:2px 8px;background:#00000073;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#fff;font-size:10px;font-weight:600;border-radius:var(--radius-full);z-index:3;border:1px solid rgba(255,255,255,.08)}.tpl-preview-hint{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-2);background:#0f172a80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);color:#fff;font-size:var(--font-size-sm);font-weight:600;opacity:0;transition:opacity var(--transition-base);z-index:2}.template-card:hover .tpl-preview-hint{opacity:1}.tpl-info{padding:var(--space-3);flex:1;display:flex;flex-direction:column}.tpl-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-1)}.tpl-name{font-size:11.5px;font-weight:600;color:var(--gray-700)}.tpl-category{background:var(--primary-50);color:var(--primary-600)}.tpl-desc{font-size:10px;color:var(--gray-400);margin-bottom:var(--space-2);line-height:1.5}.tpl-footer{display:flex;align-items:center;gap:var(--space-2);margin-top:auto;padding-top:var(--space-2);border-top:1px solid var(--gray-50)}.tpl-rating{display:flex;align-items:center;gap:2px;font-size:10px;font-weight:500;color:var(--gray-600)}.tpl-uses{font-size:10px;color:var(--gray-400)}.tpl-footer .btn{margin-left:auto;padding:3px 10px;font-size:10px}.btn-sm{padding:4px 12px;font-size:12px}@media(max-width:1200px){.templates-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:900px){.templates-grid{grid-template-columns:repeat(2,1fr)}.templates-hero{flex-direction:column;text-align:center;gap:var(--space-6);padding:var(--space-8)}}@media(max-width:600px){.templates-grid{grid-template-columns:1fr}.templates-controls{flex-direction:column;align-items:stretch}}.campaigns-page{max-width:1400px}.campaigns-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-6)}.page-heading{font-size:var(--font-size-xl);font-weight:700;color:var(--gray-800);letter-spacing:-.02em}.page-desc{font-size:11px;color:var(--gray-400);margin-top:1px}.header-actions{display:flex;gap:var(--space-3)}.campaign-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-6)}.summary-card{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:#fff;border:1px solid rgba(0,0,0,.04);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.summary-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.summary-icon{font-size:1.1rem}.summary-count{font-size:var(--font-size-lg);font-weight:700}.summary-label{font-size:10px;color:var(--gray-400)}.campaigns-filters{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-5)}.filter-tabs{display:flex;gap:var(--space-1);background:var(--gray-50);border-radius:var(--radius-md);padding:3px}.filter-tab{padding:5px 14px;font-size:11px;font-weight:500;color:var(--gray-400);background:transparent;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.filter-tab.active{background:#fff;color:var(--primary-600);box-shadow:var(--shadow-xs);font-weight:500}.filter-right{display:flex;gap:var(--space-3)}.filter-right .search-box{position:relative;display:flex;align-items:center}.filter-right .search-box svg{position:absolute;left:10px;color:var(--gray-400)}.filter-right .search-box input{padding-left:32px;width:220px;border-radius:var(--radius-full)}.campaigns-table-wrapper{overflow-x:auto}.campaigns-table{width:100%;border-collapse:collapse;font-size:11.5px}.campaigns-table th{padding:var(--space-2) var(--space-3);text-align:left;font-size:10px;font-weight:500;color:var(--gray-400);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--gray-100);white-space:nowrap;background:var(--gray-50)}.campaigns-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--gray-50);vertical-align:middle}.campaigns-table tbody tr{transition:background var(--transition-fast);animation:fadeIn .3s ease-out both}.campaigns-table tbody tr:hover{background:var(--gray-50)}.campaigns-table tbody tr.selected{background:var(--primary-50)}.campaign-name-cell strong{display:block;font-weight:600;color:var(--gray-800)}.campaign-template{font-size:10px;color:var(--gray-400)}.channel-tag{font-size:10px;color:var(--gray-500);background:var(--gray-50);padding:1px 6px;border-radius:var(--radius-full)}.num-cell{font-variant-numeric:tabular-nums;color:var(--gray-600);font-weight:400}.date-cell{color:var(--gray-500);font-size:var(--font-size-xs)}.sort-btn{display:inline-flex;align-items:center;gap:3px;font-size:var(--font-size-xs);font-weight:600;color:var(--gray-500);text-transform:uppercase;letter-spacing:.04em;background:transparent;cursor:pointer}.sort-btn:hover{color:var(--gray-700)}input[type=checkbox]{width:14px;height:14px;accent-color:var(--primary-500);cursor:pointer}@media(max-width:1024px){.campaign-summary{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.campaigns-header{flex-direction:column;gap:var(--space-4)}.campaigns-filters{flex-direction:column;gap:var(--space-3)}}.analytics-page{max-width:1400px}.analytics-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-6)}.period-selector{display:flex;background:var(--gray-100);border-radius:var(--radius-md);padding:3px}.period-selector button{padding:5px 12px;font-size:11px;font-weight:500;color:var(--gray-400);background:transparent;border-radius:var(--radius-sm);transition:all var(--transition-fast)}.period-selector button.active{background:#fff;color:var(--primary-600);box-shadow:var(--shadow-xs)}.kpi-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--space-4);margin-bottom:var(--space-6)}.kpi-card{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);background:#fff;border:1px solid rgba(0,0,0,.04);border-radius:var(--radius-lg);transition:all var(--transition-base);animation:fadeInUp .4s ease-out both}.kpi-card:hover{box-shadow:var(--shadow-md);transform:translateY(-1px)}.kpi-icon-wrap{width:38px;height:38px;background:var(--primary-50);color:var(--primary-500);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;flex-shrink:0}.kpi-content{flex:1}.kpi-label{font-size:10px;color:var(--gray-400);font-weight:400}.kpi-row{display:flex;align-items:baseline;gap:var(--space-2);margin-top:1px}.kpi-value{font-size:var(--font-size-xl);font-weight:700;color:var(--gray-800);letter-spacing:-.02em}.kpi-change{display:flex;align-items:center;gap:1px;font-size:10px;font-weight:500}.kpi-change.up{color:#059669}.kpi-change.down{color:#dc2626}.charts-row{display:grid;grid-template-columns:2fr 1fr;gap:var(--space-4);margin-bottom:var(--space-4)}.chart-card{overflow:hidden}.chart-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-4) 0}.chart-header h3{font-size:var(--font-size-sm);font-weight:600;color:var(--gray-700)}.chart-body{padding:var(--space-4)}.chart-legend{display:flex;gap:var(--space-4)}.chart-legend span{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--gray-400)}.chart-legend i{width:8px;height:8px;border-radius:2px;display:inline-block}.pie-body{display:flex;flex-direction:column;align-items:center}.pie-legend{width:100%;display:flex;flex-direction:column;gap:var(--space-2)}.pie-legend-item{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm)}.pie-dot{width:8px;height:8px;border-radius:2px;flex-shrink:0}.pie-name{flex:1;color:var(--gray-600)}.pie-val{font-weight:600;color:var(--gray-800)}.analytics-bottom{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.region-list{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-3)}.region-item{display:flex;align-items:center;gap:var(--space-2)}.region-rank{font-size:10px;font-weight:600;color:var(--gray-400);min-width:20px}.region-name{font-size:11px;font-weight:400;color:var(--gray-600);min-width:44px}.region-bar-wrap{flex:1;height:6px;background:var(--gray-100);border-radius:var(--radius-full);overflow:hidden}.region-bar{height:100%;background:linear-gradient(90deg,var(--primary-500),var(--accent-violet));border-radius:var(--radius-full);animation:slideInFromLeft .6s ease-out both}@keyframes slideInFromLeft{0%{width:0}}.region-val{font-size:11px;font-weight:600;color:var(--gray-700);min-width:32px;text-align:right}@media(max-width:1200px){.charts-row,.analytics-bottom{grid-template-columns:1fr}}@media(max-width:768px){.kpi-grid{grid-template-columns:repeat(2,1fr)}.analytics-header{flex-direction:column;gap:var(--space-4)}}.utm-page{max-width:1400px}.utm-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:var(--space-6)}.utm-builder{margin-bottom:var(--space-6);overflow:hidden}.builder-header{padding:var(--space-4);border-bottom:1px solid var(--gray-100)}.builder-header h3{display:flex;align-items:center;gap:var(--space-2);font-size:var(--font-size-sm);font-weight:600;color:var(--gray-700)}.builder-form{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4)}.form-row{display:grid;gap:var(--space-4)}.form-row.cols-3{grid-template-columns:repeat(3,1fr)}.form-row.cols-2{grid-template-columns:repeat(2,1fr)}.form-group{display:flex;flex-direction:column;gap:4px}.form-group.full-width{grid-column:1 / -1}.form-group label{font-size:10px;font-weight:500;color:var(--gray-500)}.required{color:var(--accent-rose)}.form-hint{font-size:10px;color:var(--gray-400)}.generated-url{display:flex;flex-direction:column;gap:var(--space-2)}.generated-url label{font-size:var(--font-size-xs);font-weight:600;color:var(--gray-600)}.url-display{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);background:var(--gray-50);border:1px solid var(--primary-200);border-radius:var(--radius-md)}.url-display code{flex:1;font-size:11px;color:var(--primary-600);word-break:break-all;font-family:SF Mono,monospace}.builder-actions{display:flex;justify-content:flex-end;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--gray-100)}.utm-table-wrapper{overflow-x:auto}.utm-table{width:100%;border-collapse:collapse;font-size:11.5px}.utm-table th{padding:var(--space-2) var(--space-3);text-align:left;font-size:10px;font-weight:500;color:var(--gray-400);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--gray-100);white-space:nowrap;background:var(--gray-50)}.utm-table td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--gray-50);vertical-align:middle}.utm-table tbody tr{transition:background var(--transition-fast);animation:fadeIn .3s ease-out both}.utm-table tbody tr:hover{background:var(--gray-50)}.link-name-cell{display:flex;align-items:center;gap:var(--space-3)}.link-icon{color:var(--primary-400);flex-shrink:0}.link-name-cell strong{display:block;font-weight:600;color:var(--gray-800)}.link-url{font-size:11px;color:var(--gray-400)}.utm-tag{display:inline-block;padding:1px 6px;border-radius:var(--radius-full);font-size:10px;font-weight:500}.utm-tag.source{background:#eef2ff;color:#4338ca}.utm-tag.medium{background:#ecfeff;color:#0e7490}.utm-tag.campaign{background:#d1fae5;color:#065f46}.utm-tag.content{background:#fef3c7;color:#92400e}.num-cell{font-variant-numeric:tabular-nums;font-weight:500;color:var(--gray-700)}.date-cell{font-size:var(--font-size-xs);color:var(--gray-500)}.action-btns{display:flex;gap:2px}.action-btns .btn-icon{width:26px;height:26px}@media(max-width:900px){.form-row.cols-3,.form-row.cols-2{grid-template-columns:1fr}}.ai-page{max-width:1400px}.ai-hero{position:relative;border-radius:var(--radius-lg);padding:var(--space-8) var(--space-10);margin-bottom:var(--space-6);background:linear-gradient(135deg,#0f172a,#1e1b4b,#312e81);color:#fff;overflow:hidden}.ai-hero-bg{position:absolute;inset:0;overflow:hidden}.orb{position:absolute;border-radius:50%;filter:blur(60px);opacity:.4}.orb-1{width:300px;height:300px;background:#6366f1;top:-100px;right:10%;animation:float 8s ease-in-out infinite}.orb-2{width:200px;height:200px;background:#8b5cf6;bottom:-80px;left:20%;animation:float 6s ease-in-out infinite reverse}.orb-3{width:150px;height:150px;background:#06b6d4;top:20%;right:30%;animation:float 10s ease-in-out infinite}.ai-hero-content{position:relative;z-index:2}.ai-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;background:#ffffff14;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-full);font-size:10px;font-weight:500;margin-bottom:var(--space-3)}.ai-title{font-size:var(--font-size-3xl);font-weight:700;letter-spacing:-.03em;line-height:1.2}.ai-subtitle{font-size:11px;opacity:.5;margin-top:var(--space-1)}.ai-body{display:grid;grid-template-columns:380px 1fr;gap:var(--space-6)}.ai-config{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-4);position:sticky;top:calc(var(--header-height) + var(--space-6));align-self:start}.config-title{font-size:11px;font-weight:600;color:var(--gray-700);margin-bottom:var(--space-2)}.config-section textarea{resize:vertical;min-height:80px}.type-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--space-2)}.type-card{display:flex;flex-direction:column;align-items:center;gap:3px;padding:var(--space-2);background:var(--gray-50);border:1px solid var(--gray-100);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);text-align:center;color:var(--gray-500)}.type-card:hover{border-color:var(--primary-200);background:var(--primary-50)}.type-card.active{border-color:var(--primary-400);background:var(--primary-50);color:var(--primary-600)}.tc-label{font-size:var(--font-size-xs);font-weight:600;color:inherit}.tc-desc{font-size:10px;color:var(--gray-400)}.type-card.active .tc-desc{color:var(--primary-400)}.template-chips{display:flex;flex-wrap:wrap;gap:var(--space-2)}.chip{padding:3px 10px;font-size:11px;font-weight:500;background:var(--gray-50);border:1px solid var(--gray-200);color:var(--gray-500);border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast)}.chip:hover{border-color:var(--primary-300);color:var(--primary-600)}.chip.active{background:var(--primary-50);border-color:var(--primary-300);color:var(--primary-600)}.tone-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-2)}.tone-btn{padding:6px;font-size:12px;font-weight:500;background:var(--gray-50);border:1px solid var(--gray-200);color:var(--gray-600);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.tone-btn.active{background:var(--primary-50);border-color:var(--primary-300);color:var(--primary-600)}.lang-switch{display:flex;gap:var(--space-2)}.lang-switch button{flex:1;padding:6px;font-size:12px;background:var(--gray-50);border:1px solid var(--gray-200);color:var(--gray-600);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.lang-switch button.active{background:var(--primary-50);border-color:var(--primary-300);color:var(--primary-600)}.generate-btn{width:100%;justify-content:center;padding:var(--space-3) var(--space-5);font-size:var(--font-size-sm);border-radius:var(--radius-md);background:linear-gradient(135deg,var(--primary-600),var(--accent-violet));box-shadow:0 2px 12px #6366f133;margin-top:var(--space-2)}.generate-btn:hover:not(:disabled){box-shadow:0 4px 20px #6366f14d;transform:translateY(-1px)}.generate-btn:disabled{opacity:.85;cursor:not-allowed}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ai-results{display:flex;flex-direction:column;gap:var(--space-4)}.gen-progress{padding:var(--space-4)}.progress-header{display:flex;align-items:center;gap:var(--space-2);font-size:11px;font-weight:500;color:var(--primary-600);margin-bottom:var(--space-2)}.progress-steps{display:flex;gap:var(--space-4);margin-top:var(--space-4)}.progress-step{display:flex;align-items:center;gap:var(--space-2);font-size:12px;color:var(--gray-400)}.progress-step.active{color:var(--primary-600)}.progress-step.done{color:#10b981}.step-dot{width:8px;height:8px;border-radius:50%;background:var(--gray-200);transition:all var(--transition-fast)}.progress-step.active .step-dot{background:var(--primary-500);box-shadow:0 0 8px #6366f166}.progress-step.done .step-dot{background:#10b981}.results-header{display:flex;align-items:center;justify-content:space-between}.results-header h3{font-size:var(--font-size-sm);font-weight:600;color:var(--gray-700)}.results-actions{display:flex;gap:var(--space-2)}.results-list{display:flex;flex-direction:column;gap:var(--space-3)}.result-card{padding:var(--space-3);transition:all var(--transition-base);animation:fadeInUp .3s ease-out both;border:1px solid var(--gray-100)}.result-card.selected{border-color:var(--primary-400);background:var(--primary-50)}.result-top{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-3)}.select-btn{width:22px;height:22px;border-radius:var(--radius-full);border:2px solid var(--gray-300);background:transparent;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all var(--transition-fast)}.select-btn.active{background:var(--primary-500);border-color:var(--primary-500);color:#fff}.select-dot{width:6px;height:6px;border-radius:50%;background:transparent}.result-index{font-size:12px;font-weight:600;color:var(--gray-400)}.result-actions{margin-left:auto;display:flex;gap:2px}.result-content{font-size:var(--font-size-base);color:var(--gray-700);line-height:1.7}.result-meta{display:flex;gap:var(--space-2);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--gray-50)}.meta-tag{font-size:10px;font-weight:600;padding:2px 8px;background:var(--gray-100);color:var(--gray-500);border-radius:var(--radius-full)}.ai-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12);text-align:center}.ai-empty-icon{width:64px;height:64px;background:linear-gradient(135deg,var(--primary-100),#ede9fe);color:var(--primary-400);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;margin-bottom:var(--space-3);animation:float 3s ease-in-out infinite}.ai-empty h4{font-size:var(--font-size-md);font-weight:600;color:var(--gray-600);margin-bottom:var(--space-1)}.ai-empty p{font-size:11px;color:var(--gray-400);line-height:1.6}@media(max-width:1100px){.ai-body{grid-template-columns:1fr}.ai-config{position:static}}.settings-page{max-width:1100px}.settings-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6)}.btn-success{background:#10b981;color:#fff}.settings-layout{display:grid;grid-template-columns:200px 1fr;gap:var(--space-4)}.settings-nav{padding:var(--space-2);display:flex;flex-direction:column;gap:1px;align-self:start;position:sticky;top:calc(var(--header-height) + var(--space-6))}.settings-nav-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);font-size:11px;font-weight:400;color:var(--gray-500);background:transparent;cursor:pointer;transition:all var(--transition-fast);text-align:left}.settings-nav-item:hover{background:var(--gray-50);color:var(--gray-800)}.settings-nav-item.active{background:var(--primary-50);color:var(--primary-600)}.nav-arrow{margin-left:auto;opacity:0;transition:opacity var(--transition-fast)}.settings-nav-item.active .nav-arrow,.settings-nav-item:hover .nav-arrow{opacity:1}.settings-content{padding:var(--space-6);min-height:500px}.settings-section h3{font-size:var(--font-size-lg);font-weight:700;color:var(--gray-800);letter-spacing:-.01em}.section-desc{font-size:11px;color:var(--gray-400);margin-top:2px;margin-bottom:var(--space-5)}.settings-form{display:flex;flex-direction:column;gap:var(--space-4)}.settings-form .form-group label{font-size:11px;font-weight:500;color:var(--gray-600);display:block;margin-bottom:4px}.settings-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-4)}.toggle-row{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3);background:var(--gray-50);border-radius:var(--radius-md)}.toggle-info{display:flex;flex-direction:column}.toggle-label{font-size:11px;font-weight:500;color:var(--gray-700)}.toggle-desc{font-size:10px;color:var(--gray-400)}.toggle-switch{background:transparent;color:var(--gray-300);cursor:pointer;transition:color var(--transition-fast)}.toggle-switch.on{color:var(--primary-500)}.upload-zone{display:flex;flex-direction:column;align-items:center;gap:var(--space-2);padding:var(--space-6);border:1.5px dashed var(--gray-200);border-radius:var(--radius-lg);color:var(--gray-400);cursor:pointer;transition:all var(--transition-fast)}.upload-zone:hover{border-color:var(--primary-300);color:var(--primary-500);background:var(--primary-50)}.upload-hint{font-size:11px}.color-row{display:flex;gap:var(--space-2);align-items:center}.color-row .color-input{width:36px;height:36px;padding:2px;flex-shrink:0}.brand-preview-section label{font-size:var(--font-size-sm);font-weight:600;color:var(--gray-700);display:block;margin-bottom:8px}.brand-preview{width:280px;border-radius:var(--radius-lg);border:1px solid var(--gray-200);overflow:hidden}.bp-header{padding:var(--space-4);color:#fff}.bp-logo{font-size:var(--font-size-sm);font-weight:800;letter-spacing:.1em}.bp-body{padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.bp-line{height:8px;background:var(--gray-100);border-radius:4px}.bp-btn{margin-top:var(--space-2);padding:6px 16px;color:#fff;font-size:11px;font-weight:600;border-radius:6px;text-align:center;width:80px}.domain-list{display:flex;flex-direction:column;gap:var(--space-3)}.domain-item{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4);background:var(--gray-50);border-radius:var(--radius-md)}.domain-info{display:flex;align-items:center;gap:var(--space-3)}.domain-icon{color:var(--gray-400)}.domain-name{font-size:var(--font-size-sm);font-weight:600;color:var(--gray-800)}.api-card{padding:var(--space-4);background:var(--gray-50);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--space-3)}.api-header{display:flex;align-items:center;gap:var(--space-2)}.api-icon{font-size:1.2rem}.api-name{font-weight:500;color:var(--gray-700);display:block;font-size:11px}.api-status{font-size:10px;color:#10b981}.member-list{display:flex;flex-direction:column;gap:var(--space-3)}.member-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2);border-radius:var(--radius-md);transition:background var(--transition-fast)}.member-item:hover{background:var(--gray-50)}.member-info{flex:1;display:flex;flex-direction:column}.member-name{font-size:11px;font-weight:500;color:var(--gray-700)}.member-email{font-size:10px;color:var(--gray-400)}@media(max-width:768px){.settings-layout{grid-template-columns:1fr}.settings-nav{position:static;flex-direction:row;overflow-x:auto}}
