:root{--primary-start:#1565c0;--primary-mid:#2196f3;--primary-end:#42a5f5;--primary-glow:#2196f366;--accent-start:#00bcd4;--accent-end:#4fc3f7;--success:#4caf50;--success-glow:#4caf504d;--danger:#e53935;--danger-glow:#e539354d;--bg-page:linear-gradient(135deg, #f8faff 0%, #e3f2fd 100%);--bg-card:#fffffff2;--bg-glass:#ffffffb3;--gradient-breath:linear-gradient(45deg, #1565c0 0%, #2196f3 25%, #42a5f5 50%, #2196f3 75%, #1565c0 100%);--gradient-flow:linear-gradient(-45deg, #1565c0, #2196f3, #42a5f5, #00bcd4);--shadow-organic:0 2px 8px #1565c014, 0 4px 16px #2196f30f, 0 8px 32px #42a5f50a;--shadow-breathing:0 4px 16px #1565c01f, 0 8px 32px #2196f314, 0 16px 64px #42a5f50f;--shadow-intense:0 8px 32px #1565c033, 0 16px 64px #2196f326, 0 32px 128px #42a5f51a;--glow-soft:0 0 20px var(--primary-glow);--glow-medium:0 0 40px var(--primary-glow);--glow-intense:0 0 60px var(--primary-glow);--breath-slow:8s;--breath-medium:5s;--breath-fast:3s;--pulse:2s;--flow:15s;--ease-organic:cubic-bezier(.45, .05, .55, .95);--ease-bounce:cubic-bezier(.68, -.55, .265, 1.55);--ease-smooth:cubic-bezier(.4, 0, .2, 1);--border-base:1px;--border-breath:2px;--border-glow:3px}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;background:var(--bg-page);animation:gradientBreath var(--flow) var(--ease-organic) infinite;color:#1a1a2e;background-size:400% 400%;min-height:100vh;font-family:system-ui,-apple-system,sans-serif;overflow-x:hidden}@keyframes gradientBreath{0%,to{background-position:0%}50%{background-position:100%}}::selection{background:var(--gradient-breath);color:#fff}.page-container{min-height:100vh;animation:pageBreath 3s var(--ease-organic) infinite}@keyframes pageBreath{0%,to{filter:brightness()}50%{filter:brightness(1.01)}}.login-container{justify-content:center;align-items:center;min-height:100vh;display:flex;position:relative;overflow:hidden}.login-container:before{content:"";background:var(--gradient-flow);width:200%;height:200%;animation:flowBackground var(--flow) var(--ease-organic) infinite;opacity:.1;z-index:0;background-size:400% 400%;position:absolute;top:-50%;left:-50%}@keyframes flowBackground{0%{transform:translate(0)rotate(0)}25%{transform:translate(10%,10%)rotate(90deg)}50%{transform:translateY(20%)rotate(180deg)}75%{transform:translate(-10%,10%)rotate(270deg)}to{transform:translate(0)rotate(360deg)}}.login-card{background:var(--bg-glass);z-index:10;width:420px;box-shadow:var(--shadow-breathing);border:var(--border-base) solid transparent;animation:cardBreath var(--breath-medium) var(--ease-organic) infinite, borderPulse var(--breath-slow) var(--ease-organic) infinite;border-radius:16px;padding:48px;position:relative}.login-card:before{content:"";background:var(--gradient-breath);-webkit-mask-composite:xor;animation:breatheBorder var(--breath-slow) var(--ease-organic) infinite;pointer-events:none;background-size:300% 300%;border-radius:16px;padding:2px;position:absolute;inset:-2px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@keyframes cardBreath{0%,to{box-shadow:var(--shadow-breathing);transform:scale(1)translateY(0)}50%{box-shadow:var(--shadow-intense);transform:scale(1.005)translateY(-1px)}}@keyframes breatheBorder{0%,to{opacity:.6;background-position:0%}50%{opacity:1;background-position:100%}}@keyframes borderPulse{0%,to{filter:drop-shadow(0 0 8px var(--primary-glow))}50%{filter:drop-shadow(0 0 20px var(--primary-glow))}}button{cursor:pointer;transition:all .3s var(--ease-organic);border:none;font-family:inherit;position:relative;overflow:hidden}button:before{content:"";width:0;height:0;transition:width .6s var(--ease-organic), height .6s var(--ease-organic);background:#ffffff80;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}button:hover:before{width:400px;height:400px}button:active{transform:scale(.98)}.btn-primary{background:var(--gradient-breath);color:#fff;animation:gradientFlow var(--breath-medium) var(--ease-organic) infinite;box-shadow:var(--glow-soft);background-size:300% 300%;border-radius:8px;padding:12px 24px;font-size:13px;font-weight:600}.btn-primary:hover{animation:gradientFlow var(--breath-fast) var(--ease-organic) infinite, buttonGlow var(--pulse) var(--ease-organic) infinite;box-shadow:var(--glow-medium);transform:translateY(-1px)}@keyframes gradientFlow{0%,to{background-position:0%}50%{background-position:100%}}@keyframes buttonGlow{0%,to{box-shadow:var(--glow-soft)}50%{box-shadow:var(--glow-intense)}}.btn-success{color:#fff;animation:successBreath var(--breath-medium) var(--ease-organic) infinite;background:linear-gradient(135deg,#4caf50,#66bb6a);border-radius:8px;padding:12px 24px;font-size:13px;font-weight:600}.btn-success:hover{animation:successBreath var(--breath-fast) var(--ease-organic) infinite;box-shadow:0 0 30px var(--success-glow)}@keyframes successBreath{0%,to{filter:brightness()saturate()}50%{filter:brightness(1.02)saturate(1.2)}}.btn-danger{color:#e53935;animation:dangerPulse var(--breath-slow) var(--ease-organic) infinite;background:0 0;border:2px solid #e53935;border-radius:8px;padding:10px 22px;font-size:13px;font-weight:600}.btn-danger:hover{color:#fff;box-shadow:0 0 30px var(--danger-glow);animation:dangerIntense var(--pulse) var(--ease-organic) infinite;background:linear-gradient(135deg,#e53935,#ef5350);border-color:#0000}@keyframes dangerPulse{0%,to{border-color:#e53935}50%{border-color:#ef5350}}@keyframes dangerIntense{0%,to{box-shadow:0 0 20px var(--danger-glow)}50%{box-shadow:0 0 40px var(--danger-glow)}}input,textarea{background:var(--bg-glass);width:100%;transition:all .3s var(--ease-organic);border:2px solid #0000;border-radius:8px;padding:14px;font-family:inherit;font-size:14px;position:relative}input::placeholder,textarea::placeholder{color:#999;opacity:.7;transition:opacity .3s var(--ease-organic)}input:hover,textarea:hover{background:#ffffffd9;border-color:#1565c033}input:focus,textarea:focus{animation:inputGlow var(--pulse) var(--ease-organic) infinite;background:#fffffff2;border-color:#1565c0;outline:none;transform:scale(1.005);box-shadow:0 0 0 4px #1565c01a,0 0 20px #2196f333}input:focus::placeholder,textarea:focus::placeholder{opacity:.4}@keyframes inputGlow{0%,to{box-shadow:0 0 0 4px #1565c01a,0 0 20px #2196f333}50%{box-shadow:0 0 0 4px #1565c026,0 0 30px #2196f34d}}.card,.panel{background:var(--bg-glass);box-shadow:var(--shadow-organic);transition:all .4s var(--ease-organic);animation:cardBreath var(--breath-slow) var(--ease-organic) infinite;border:1px solid #ffffff80;border-radius:12px;padding:24px}.card:hover,.panel:hover{box-shadow:var(--shadow-breathing);border-color:#1565c04d;transform:translateY(-2px)}.prompt-item{cursor:pointer;transition:all .3s var(--ease-organic);background:#fff9;border:2px solid #0000;border-radius:8px;margin-bottom:8px;padding:12px;position:relative;overflow:hidden}.prompt-item:before{content:"";background:var(--gradient-breath);width:0;height:100%;transition:width .4s var(--ease-organic);opacity:.2;position:absolute;top:0;left:0}.prompt-item:hover{background:#ffffffe6;border-color:#1565c04d;transform:translate(2px);box-shadow:0 4px 12px #1565c026}.prompt-item:hover:before{width:4px}.prompt-item.active{animation:activeBreath var(--breath-medium) var(--ease-organic) infinite;background:#1565c026;border-color:#1565c0}.prompt-item.active:before{background:var(--gradient-breath);width:4px;animation:borderFlow var(--breath-slow) linear infinite;background-size:100% 300%}@keyframes activeBreath{0%,to{background:#1565c026;box-shadow:0 2px 8px #1565c033}50%{background:#2196f333;box-shadow:0 4px 16px #2196f34d}}@keyframes borderFlow{0%{background-position:0 0}to{background-position:0 100%}}.badge{text-transform:uppercase;letter-spacing:.5px;border-radius:20px;align-items:center;gap:6px;padding:4px 12px;font-size:11px;font-weight:600;display:inline-flex;position:relative}.badge-active{background:var(--gradient-breath);color:#fff;animation:badgeGradient var(--breath-medium) var(--ease-organic) infinite, badgePulse var(--pulse) var(--ease-organic) infinite;box-shadow:0 0 15px var(--primary-glow);background-size:200% 200%}@keyframes badgeGradient{0%,to{background-position:0%}50%{background-position:100%}}@keyframes badgePulse{0%,to{box-shadow:0 0 15px var(--primary-glow);transform:scale(1)}50%{box-shadow:0 0 25px var(--primary-glow);transform:scale(1.02)}}@keyframes warningBreath{0%,to{filter:brightness();transform:scale(1)}50%{filter:brightness(1.2);transform:scale(1.02)}}.toast{background:var(--gradient-breath);color:#fff;z-index:9999;box-shadow:var(--shadow-breathing);animation:toastSlide .4s var(--ease-bounce), gradientFlow var(--breath-medium) var(--ease-organic) infinite, toastGlow var(--pulse) var(--ease-organic) infinite;background-size:200% 200%;border-radius:12px;padding:16px 24px;font-size:14px;font-weight:600;position:fixed;top:24px;right:24px}@keyframes toastSlide{0%{opacity:0;transform:translate(400px)}to{opacity:1;transform:translate(0)}}@keyframes toastGlow{0%,to{box-shadow:var(--shadow-breathing)}50%{box-shadow:var(--shadow-intense)}}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:#1565c00d;border-radius:10px}::-webkit-scrollbar-thumb{background:var(--gradient-breath);animation:scrollGradient var(--breath-slow) var(--ease-organic) infinite;background-size:200% 200%;border-radius:10px}::-webkit-scrollbar-thumb:hover{animation:scrollGradient var(--breath-fast) var(--ease-organic) infinite;box-shadow:0 0 10px var(--primary-glow)}@keyframes scrollGradient{0%,to{background-position:0%}50%{background-position:100%}}.header{background:var(--bg-glass);border-bottom:2px solid #0000;border-image:var(--gradient-breath) 1;animation:headerBreath var(--breath-slow) var(--ease-organic) infinite;border-image-slice:1;padding:20px 32px}@keyframes headerBreath{0%,to{background:#fffffff2;box-shadow:0 2px 8px #1565c014}50%{background:#fffffffa;box-shadow:0 4px 16px #1565c01f}}#neuralCanvas{animation:canvasBreath var(--breath-slow) var(--ease-organic) infinite}@keyframes canvasBreath{0%,to{opacity:.15}50%{opacity:.25}}.analyze-layout{grid-template-columns:45% 55%;gap:24px;height:calc(100vh - 140px);display:grid}.panel-left,.panel-right{flex-direction:column;display:flex;overflow-y:auto}.loading-symbiotic{flex-direction:column;justify-content:center;align-items:center;gap:24px;height:100%;display:flex;position:relative}.loading-logo-container{width:120px;height:120px;animation:logoBreath 3s var(--ease-organic) infinite;position:relative}.loading-logo{object-fit:cover;z-index:10;border-radius:50%;width:100%;height:100%;position:relative;box-shadow:0 8px 32px #1565c04d}.breathing-ring{border:2px solid var(--primary-mid);opacity:0;border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.breathing-ring:first-child{width:100%;height:100%;animation:ringPulse 3s var(--ease-organic) infinite}.breathing-ring:nth-child(2){width:100%;height:100%;animation:ringPulse 3s var(--ease-organic) infinite .5s}.breathing-ring:nth-child(3){width:100%;height:100%;animation:ringPulse 3s var(--ease-organic) infinite 1s}@keyframes logoBreath{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}@keyframes ringPulse{0%{opacity:0;width:100%;height:100%}50%{opacity:.6}to{opacity:0;width:160%;height:160%}}.particle{background:var(--gradient-breath);opacity:0;border-radius:50%;width:4px;height:4px;animation:4s linear infinite particleFlow;position:absolute}.particle:nth-child(4){animation-delay:0s}.particle:nth-child(5){animation-delay:.5s}.particle:nth-child(6){animation-delay:1s}.particle:nth-child(7){animation-delay:1.5s}.particle:nth-child(8){animation-delay:2s}.particle:nth-child(9){animation-delay:2.5s}.particle:nth-child(10){animation-delay:3s}.particle:nth-child(11){animation-delay:3.5s}@keyframes particleFlow{0%{opacity:0;transform:translate(-50%,-50%)rotate(0)translate(80px)scale(0)}10%{opacity:1}90%{opacity:.8}to{opacity:0;transform:translate(-50%,-50%)rotate(360deg)translate(80px)scale(1)}}.loading-text{color:var(--primary-mid);text-transform:uppercase;letter-spacing:2px;font-size:14px;font-weight:600;animation:1.5s ease-in-out infinite textPulse}@keyframes textPulse{0%,to{opacity:.6}50%{opacity:1}}.loading-subtext{color:#666;font-size:12px;font-style:italic;animation:2s ease-in-out infinite fadeInOut}@keyframes fadeInOut{0%,to{opacity:.3}50%{opacity:.8}}.split-layout{grid-template-columns:350px 1fr;gap:24px;height:calc(100vh - 140px);display:grid}.prompt-item{cursor:pointer;transition:all .3s var(--ease-organic);background:0 0;border:1px solid #1565c026;border-radius:6px;margin-bottom:8px;padding:12px}.prompt-item:hover{border-left:3px solid var(--primary-mid);background:#1565c00d;transform:translate(4px)}.prompt-item.active{animation:cardBreath var(--breath-medium) var(--ease-organic) infinite;background:#1565c01a;border:1px solid #1565c0}.prompt-filename{color:#1a1a2e;margin-bottom:4px;font-family:monospace;font-size:13px;font-weight:600}.prompt-meta{color:#666;justify-content:space-between;align-items:center;font-size:11px;display:flex}.section-title{color:#1a1a2e;margin:0;font-size:16px;font-weight:600}.badge{border-radius:4px;padding:4px 10px;font-size:11px;font-weight:600;display:inline-block}.badge-active{background:var(--gradient-breath);color:#fff;animation:gradientBreath var(--flow) ease infinite;background-size:300% 300%}.badge-unsaved{color:#1a1a2e;animation:breatheBorder var(--pulse) ease-in-out infinite;background:#ffc107}.btn-accent{color:#fff;cursor:pointer;transition:all .3s var(--ease-smooth);animation:gradientBreath var(--breath-slow) ease infinite;background:linear-gradient(135deg,#42a5f5,#2196f3) 0 0/200% 200%;border:none;border-radius:6px;padding:10px 20px;font-size:13px;font-weight:600}.btn-accent:hover:not(:disabled){animation:gradientBreath var(--breath-fast) ease infinite;box-shadow:0 4px 20px #42a5f566}.btn-accent:disabled{opacity:.5;cursor:not-allowed}.btn-danger{color:#fff;cursor:pointer;transition:all .3s var(--ease-smooth);background:linear-gradient(135deg,#e53935,#c62828) 0 0/200% 200%;border:none;border-radius:6px;padding:10px 20px;font-size:13px;font-weight:600}.btn-danger:hover:not(:disabled){animation:gradientBreath var(--breath-fast) ease infinite;box-shadow:0 4px 20px #e5393566}.btn-danger:disabled{opacity:.5;cursor:not-allowed}.toast{background:var(--gradient-breath);color:#fff;z-index:1000;animation:slideIn .3s var(--ease-bounce), gradientBreath var(--flow) ease infinite;background-size:300% 300%;border-radius:8px;padding:16px 24px;font-size:14px;font-weight:600;position:fixed;top:100px;right:32px;box-shadow:0 4px 20px #4caf504d}@keyframes slideIn{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.gap-sm{gap:8px}.gap-md{gap:12px}.text-secondary{color:#999}.input-mono{font-family:monospace}.prompt-item.selected{border-left:3px solid var(--primary-mid);background:#1565c014}.btn-secondary{color:#666;cursor:pointer;transition:all .3s var(--ease-smooth);background:0 0;border:1px solid #ddd;border-radius:6px;padding:10px 20px;font-size:13px;font-weight:600}.btn-secondary:hover{background:#0000000d;border-color:#999}.btn-primary:disabled,.btn-accent:disabled,.btn-danger:disabled{pointer-events:none;opacity:.4!important;cursor:not-allowed!important;box-shadow:none!important;background:#ccc!important;animation:none!important}
