:root{--primary-color:#956ae6;--bg-gradient:linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%);--glass-bg:#fffffff2;--bot-bubble:#f3f3f3;--user-bubble:#8e63f1;--bot-text:#956ae6;--text-dark:#1e293b;--text-light:#dabfe3}*{box-sizing:border-box;margin:0;padding:0;font-family:Segoe UI,Roboto,Helvetica,Arial,sans-serif}body{background:var(--bg-gradient);justify-content:center;align-items:center;height:100vh;padding:20px;display:flex}.main-container{gap:20px;width:95vw;max-width:1600px;height:85vh;display:flex}.dashboard-container{background:var(--glass-bg);border-radius:20px;flex-direction:column;flex:1;gap:15px;height:100%;padding:20px;display:flex;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.dashboard-container::-webkit-scrollbar{width:6px}.dashboard-container::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:10px}.widget{background:0 0;border-bottom:1px solid #e2e8f0;padding:15px 0}.widget:last-child{border-bottom:none}.widget-title{color:#64748b;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px;font-size:.85rem;font-weight:600}.company-profile{border-bottom:1px solid #818aa3;align-items:center;gap:15px;padding-bottom:15px;display:flex}.company-icon{color:#64748b;background:#f1f5f9;border-radius:10px;justify-content:center;align-items:center;width:45px;height:45px;font-size:1.2rem;display:flex}.company-details h4{color:var(--text-dark);margin-bottom:3px;font-size:1rem}.company-details p{color:#7e8a99;font-family:monospace;font-size:.75rem}.text-red{color:#ef4444!important}.compliance-widget{justify-content:center;padding:20px 0;display:flex}.compliance-circle{background:conic-gradient(var(--primary-color) 94%, #e2e8f0 0);border-radius:50%;justify-content:center;align-items:center;width:130px;height:130px;transition:background .5s;display:flex}.compliance-inner{background:#fff;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;width:110px;height:110px;display:flex}.compliance-inner .score{color:var(--text-dark);font-size:2rem;font-weight:700;line-height:1}.compliance-inner .label{color:#94a3b8;letter-spacing:1px;margin-top:5px;font-size:.65rem}.tax-bar-container{margin:15px 0}.tax-progress{background:linear-gradient(90deg,#10b981 30%,#f59e0b 60%,#e2e8f0 60%);border-radius:4px;height:8px;margin-bottom:10px;transition:background .5s}.tax-markers{justify-content:space-between;display:flex}.marker{color:#94a3b8;flex-direction:column;font-size:.7rem;display:flex}.marker.active .pct{color:#f59e0b;font-weight:700}.tax-subtitle{color:#64748b;font-size:.8rem}.tax-subtitle .highlight{color:#f59e0b;font-weight:700}.mtd-list{flex-direction:column;gap:15px;margin-top:15px;display:flex}.mtd-item{justify-content:space-between;align-items:center;display:flex}.mtd-label{color:#64748b;align-items:center;gap:8px;font-size:.85rem;display:flex}.mtd-label i{text-align:center;width:15px}.mtd-value{color:var(--text-dark);font-size:.95rem;font-weight:600}.text-green{color:#10b981}.text-orange{color:#f97316}.text-blue{color:#3b82f6}.chat-container{background:var(--glass-bg);border-radius:20px;flex-direction:column;flex:1.2;width:100%;height:100%;display:flex;position:relative;overflow:hidden;box-shadow:0 20px 25px -5px #0000001a}.chat-header{background:#956ae6;border-bottom:1px solid #154c83;justify-content:space-between;align-items:center;padding:12px;display:flex}.user-info{align-items:center;gap:12px;display:flex}.avatar{position:relative}.status-dot{background:#2afd31;border:2px solid #fff;border-radius:50%;width:10px;height:10px;position:absolute;bottom:-5px;right:-2px}.user-info h4{color:#fff;font-size:1rem}.user-info p{color:var(--text-light);font-size:.75rem}.chat-messages{flex-direction:column;flex:1;gap:15px;padding:20px;display:flex;overflow-y:auto}.message{flex-direction:column;max-width:80%;animation:.3s fadeIn;display:flex}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message.bot{align-self:flex-start}.message.user{align-self:flex-end}.bubble{border-radius:18px;padding:12px 16px;font-size:.95rem;line-height:1.4}.bot .bubble{background:var(--bot-bubble);color:#432f71;border-bottom-left-radius:4px}.user .bubble{background:var(--user-bubble);color:#fff;border-bottom-right-radius:4px}.timestamp{color:var(--text-light);margin-top:5px;padding:0 5px;font-size:.7rem}.typing-indicator{padding:10px 20px;display:none}.typing-indicator.visible{display:block}.typing-indicator span{background:#cbbcf1;border-radius:50%;width:8px;height:8px;margin-right:5px;animation:1.3s infinite bounce;display:inline-block}.typing-indicator span:nth-child(2){animation-delay:.15s}.typing-indicator span:nth-child(3){animation-delay:.3s}@keyframes bounce{0%,60%,to{transform:translateY(0)}30%{transform:translateY(-4px)}}.chat-input{background:#fff;gap:10px;padding:20px;display:flex}.chat-input input{border:1px solid #c693ea;border-radius:25px;outline:none;flex:1;padding:12px 15px;font-size:.95rem;transition:border .3s}.chat-input input:focus{border-color:var(--primary-color)}.chat-input button{background:var(--primary-color);color:#fff;cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;width:45px;height:45px;transition:transform .2s,background .2s;display:flex}.chat-input button:hover{background:#4f46e5;transform:scale(1.05)}.chat-input button.upload-btn{color:#64748b;background:#e2e8f0}.chat-input button.upload-btn:hover{background:#cbd5e1}.chat-messages::-webkit-scrollbar{width:6px}.chat-messages::-webkit-scrollbar-thumb{background:#e2e8f0;border-radius:10px}.graph-container{background:var(--glass-bg);border-radius:20px;flex-direction:column;flex:1.5;height:100%;padding:30px;display:flex;overflow:auto hidden;box-shadow:0 20px 25px -5px #0000001a}.graph-header h3{color:var(--primary-color);letter-spacing:1px;text-transform:uppercase;border-bottom:2px solid #e2e8f0;align-items:center;gap:8px;padding-bottom:10px;font-size:1.1rem;font-weight:700;display:flex}.graph-header h3:before{content:"";background:#10b981;border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite pulse-dot;display:inline-block}@keyframes pulse-dot{0%,to{opacity:1;box-shadow:0 0 #10b98166}50%{opacity:.7;box-shadow:0 0 0 6px #10b98100}}.graph-flow{flex:1;justify-content:center;align-items:center;gap:100px;min-width:max-content;height:100%;margin-top:10px;padding-right:40px;display:flex;position:relative}.graph-col{z-index:2;flex-direction:column;flex-shrink:0;justify-content:center;gap:20px;display:flex}.col-engine{flex-direction:column;justify-content:center;align-items:center;height:auto;padding:0 10px;display:flex}.graph-svg-overlay{pointer-events:none;z-index:1;width:100%;height:100%;position:absolute;top:0;left:0;overflow:visible}.conn-glow{fill:none;stroke:#956ae614;stroke-width:8px;stroke-linecap:round}.conn-line{fill:none;stroke:#956ae64d;stroke-width:1.5px;stroke-linecap:round;stroke-dasharray:6 4;animation:1.2s linear infinite dash-flow}@keyframes dash-flow{to{stroke-dashoffset:-20px}}.conn-particle{fill:var(--primary-color);opacity:.85}.graph-card{background:#fff;border:1px solid #e2e8f0;border-radius:14px;width:220px;padding:15px;transition:transform .2s,box-shadow .2s;animation:.5s both card-appear;position:relative;box-shadow:0 4px 6px -1px #0000000d}.graph-card:hover{transform:translateY(-2px);box-shadow:0 8px 16px -4px #956ae626}@keyframes card-appear{0%{opacity:0;transform:translateY(12px)scale(.97)}to{opacity:1;transform:translateY(0)scale(1)}}.input-card{background:#fff;border:1px solid #e9dfff;border-radius:14px;align-items:flex-start;gap:10px;width:200px;padding:15px;transition:transform .2s,box-shadow .2s,border-color .2s;animation:.5s both card-appear;display:flex;position:relative;box-shadow:0 4px 6px -1px #0000000d,0 0 #956ae600}.input-card:hover{border-color:var(--primary-color);transform:translateY(-2px);box-shadow:0 8px 16px -4px #956ae626,0 0 20px #956ae614}.card-icon{color:#5ab2d3;background:linear-gradient(135deg,#f0f9ff,#ede9fe);border-radius:10px;justify-content:center;align-items:center;padding:10px;font-size:1.2rem;transition:transform .2s;display:flex}.input-card:hover .card-icon{transform:scale(1.08)}.card-info .label{color:#5ab2d3;letter-spacing:.5px;font-size:.65rem;font-weight:700}.card-info h4{color:var(--text-dark);margin:3px 0;font-size:.85rem}.card-info .value{color:#64748b;font-family:monospace;font-size:.8rem}.engine-node{width:76px;height:76px;color:var(--primary-color);border:2px solid var(--primary-color);z-index:2;background:#fff;border-radius:50%;justify-content:center;align-items:center;font-size:1.8rem;transition:box-shadow .3s;animation:3s ease-in-out infinite engine-breathe;display:flex;position:relative;box-shadow:0 4px 10px #956ae633,0 0 30px #956ae614}.engine-node:hover{box-shadow:0 4px 10px #956ae64d,0 0 50px #956ae626}@keyframes engine-breathe{0%,to{box-shadow:0 4px 10px #956ae633,0 0 30px #956ae614}50%{box-shadow:0 4px 10px #956ae64d,0 0 45px #956ae626}}.engine-ring{border:1.5px solid #956ae633;border-radius:50%;animation:3s ease-in-out infinite ring-pulse;position:absolute;inset:-8px}.engine-ring:after{content:"";border:1px solid #956ae61a;border-radius:50%;animation:3s ease-in-out .5s infinite ring-pulse;position:absolute;inset:-8px}@keyframes ring-pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:0;transform:scale(1.12)}}.engine-label{color:var(--text-dark);letter-spacing:.5px;margin-top:15px;font-size:.75rem;font-weight:800}.outcome-card{background:#fff;border:1px solid;border-radius:14px;width:300px;padding:15px;transition:transform .2s,box-shadow .2s;animation:.5s both card-appear;position:relative;box-shadow:0 4px 6px -1px #0000000d}.outcome-card:hover{transform:translateY(-2px)}.outcome-header{letter-spacing:.5px;border-radius:6px;align-items:center;gap:6px;margin-bottom:12px;padding:4px 10px;font-size:.65rem;font-weight:800;display:inline-flex}.outcome-card h4{color:var(--text-dark);margin-bottom:6px;font-size:.85rem;font-weight:600}.outcome-card p{color:#64748b;font-size:.75rem;line-height:1.4}.outcome-card.rejected{border-color:#fca5a5;box-shadow:0 4px 6px -1px #0000000d,0 0 #ef444400}.outcome-card.rejected:hover{box-shadow:0 8px 16px -4px #ef44441f,0 0 20px #ef44440f}.outcome-card.rejected .outcome-header{color:#ef4444;background:#fef2f2}.outcome-card.approved{border-color:#86efac;box-shadow:0 4px 6px -1px #0000000d,0 0 #10b98100}.outcome-card.approved:hover{box-shadow:0 8px 16px -4px #10b9811f,0 0 20px #10b9810f}.outcome-card.approved .outcome-header{color:#10b981;background:#f0fdf4}.outcome-card.pending{border-color:#fcd34d;box-shadow:0 4px 6px -1px #0000000d,0 0 #d9770600}.outcome-card.pending:hover{box-shadow:0 8px 16px -4px #d977061f,0 0 20px #d977060f}.outcome-card.pending .outcome-header{color:#d97706;background:#fffbeb}.connector-dot{background:var(--primary-color);z-index:3;border:2px solid #fff;border-radius:50%;width:10px;height:10px;margin-top:-5px;transition:transform .2s,box-shadow .2s;position:absolute;top:50%;box-shadow:0 0 6px #956ae64d}.graph-card:hover .connector-dot{transform:scale(1.2);box-shadow:0 0 10px #956ae680}.connector-dot.right{right:-6px}.connector-dot.left{left:-6px}.graph-container::-webkit-scrollbar{height:8px}.graph-container::-webkit-scrollbar-track{background:0 0}.graph-container::-webkit-scrollbar-thumb{background:#cbbcf1;border-radius:10px}.graph-container::-webkit-scrollbar-thumb:hover{background:var(--primary-color)}
