/*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,::backdrop,:after,:before{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-divide-y-reverse:0;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-backdrop-blur:initial;--tw-backdrop-brightness:initial;--tw-backdrop-contrast:initial;--tw-backdrop-grayscale:initial;--tw-backdrop-hue-rotate:initial;--tw-backdrop-invert:initial;--tw-backdrop-opacity:initial;--tw-backdrop-saturate:initial;--tw-backdrop-sepia:initial;--tw-duration:initial}}}:root{--bg-primary:#18181b;--bg-secondary:#27272a;--bg-tertiary:#3f3f46;--bg-card:#3f3f46;--bg-hover:#52525b;--text-primary:#f8fafc;--text-secondary:#cbd5e1;--text-tertiary:#94a3b8;--crystal-blue:#3b82f6;--crystal-purple:#2563eb;--crystal-pink:#3b82f6;--crystal-cyan:#06b6d4;--crystal-green:#10b981;--crystal-white:#f8fafc;--gradient-crystal:linear-gradient(135deg,#3b82f6,#2563eb 50%,#1d4ed8);--gradient-subtle:linear-gradient(135deg,#3b82f61a,#2563eb1a);--gradient-card:linear-gradient(135deg,#3b82f60d,#2563eb0d);--shadow-glow:0 0 20px #3b82f64d;--shadow-card:0 4px 20px #00000080;--shadow-crystal:0 0 30px #3b82f666,0 0 60px #2563eb33;--shadow-hover:0 8px 30px #000000b3;--border-crystal:1px solid #3b82f64d;--border-subtle:1px solid #52525b;--border-hover:1px solid #3b82f680;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-full:50%;--spacing-xs:5px;--spacing-sm:10px;--spacing-md:15px;--spacing-lg:20px;--spacing-xl:30px;--spacing-2xl:40px;--font-size-xs:11px;--font-size-sm:12px;--font-size-base:14px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:20px;--font-size-3xl:24px;--font-size-4xl:28px;--font-size-5xl:32px;--font-size-6xl:48px;--font-size-7xl:60px;--transition-fast:.15s ease;--transition-normal:.3s ease;--transition-slow:.5s ease}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.6;font-size:var(--font-size-base);overflow-x:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:var(--crystal-blue);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--crystal-purple)}.breadcrumb h1,.breadcrumb p{color:var(--text-primary)!important;display:inline-block!important}.breadcrumb-separator{margin:0 8px}.page-title{font-weight:500}.crystal-layout{background:var(--bg-primary);min-height:100vh;display:flex}.crystal-sidebar{background:var(--bg-secondary);border-right:var(--border-subtle);width:280px;transition:var(--transition-normal);flex-direction:column;display:flex;position:relative;overflow:hidden}.crystal-sidebar:before{content:"";pointer-events:none;background:radial-gradient(circle,#3b82f61a 0,#0000 70%);width:200%;height:200%;animation:rotate 30s linear infinite;position:absolute;top:-50%;right:-50%}.crystal-main{background:var(--bg-primary);flex-direction:column;flex:1;display:flex}.crystal-header{background:var(--bg-secondary);padding:var(--spacing-lg)var(--spacing-xl);border-bottom:var(--border-subtle);backdrop-filter:blur(10px);z-index:100;justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.crystal-content{padding:var(--spacing-xl);flex:1;width:100%}.crystal-logo{gap:var(--spacing-md);padding:var(--spacing-xl);text-align:center;z-index:1;position:relative}.crystal-logo,.crystal-logo-icon{justify-content:center;align-items:center;display:flex}.crystal-logo-icon{background:var(--gradient-crystal);border-radius:var(--radius-md);width:50px;height:50px;font-weight:700;font-size:var(--font-size-2xl);box-shadow:var(--shadow-crystal);animation:pulse 2s ease-in-out infinite}.crystal-logo-text{font-size:var(--font-size-3xl);color:var(--crystal-blue);font-weight:600}.crystal-nav{padding:var(--spacing-lg)0;z-index:1;list-style:none;position:relative}.crystal-nav-item{margin:var(--spacing-xs)var(--spacing-md)}.crystal-nav-link{align-items:center;gap:var(--spacing-md);padding:var(--spacing-md)var(--spacing-lg);color:var(--text-secondary);border-radius:var(--radius-md);transition:var(--transition-normal);text-decoration:none;display:flex;position:relative;overflow:hidden}.crystal-nav-link:before{content:"";background:var(--gradient-subtle);width:0;height:100%;transition:width var(--transition-normal);position:absolute;top:0;left:0}.crystal-nav-link:hover{color:var(--text-primary);background:#ffffff0d;transform:translate(5px)}.crystal-nav-link:hover:before{width:100%}.crystal-nav-link.active{color:var(--crystal-blue);border:var(--border-crystal);background:#3b82f61a}.crystal-nav-icon{font-size:var(--font-size-xl);text-align:center;min-width:24px}.crystal-card{padding:var(--spacing-2xl);position:relative}.crystal-card:before{content:"";background:var(--gradient-crystal);opacity:0;height:2px;transition:opacity var(--transition-normal);position:absolute;top:0;left:0;right:0}.crystal-card:hover{border-color:#3b82f64d;transform:translateY(-2px)}.crystal-card:hover:before{opacity:1}.crystal-card-gradient{background:var(--bg-card);border-radius:var(--radius-lg);padding:var(--spacing-2xl);transition:var(--transition-normal);position:relative;overflow:hidden}.crystal-card-gradient:before{content:"";background:var(--gradient-crystal);border-radius:var(--radius-lg);z-index:-1;opacity:0;transition:opacity var(--transition-normal);position:absolute;inset:-2px}.crystal-card-gradient:hover:before{opacity:1}.crystal-btn{background:var(--gradient-crystal);color:var(--text-primary);padding:var(--spacing-md)var(--spacing-xl);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-normal);font-weight:600;font-size:var(--font-size-base);justify-content:center;align-items:center;gap:var(--spacing-sm);border:none;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.crystal-btn:before{content:"";background:#ffffff4d;border-radius:50%;width:0;height:0;transition:width .6s,height .6s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.crystal-btn:hover{transform:translateY(-2px);box-shadow:0 5px 20px #3b82f666}.crystal-btn:hover:before{width:300px;height:300px}.crystal-btn-outline{border:var(--border-crystal);color:var(--crystal-blue);padding:var(--spacing-md)var(--spacing-xl);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-normal);font-weight:600;font-size:var(--font-size-base);background:0 0;position:relative;overflow:hidden}.crystal-btn-outline:hover{background:#3b82f61a;transform:translateY(-2px);box-shadow:0 5px 20px #3b82f633}.crystal-btn-ghost{backdrop-filter:blur(10px);border:var(--border-subtle);color:var(--text-primary);padding:var(--spacing-md)var(--spacing-xl);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-normal);background:#ffffff0d;font-weight:600}.crystal-btn-ghost:hover{border-color:var(--crystal-blue);background:#ffffff1a;transform:translateY(-2px)}.crystal-metrics-grid{gap:var(--spacing-lg);margin-bottom:var(--spacing-xl);grid-template-columns:repeat(auto-fit,minmax(250px,1fr));display:grid}.crystal-metric-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:var(--spacing-2xl);transition:var(--transition-normal);position:relative;overflow:hidden}.crystal-metric-card:after{content:"";background:radial-gradient(circle,var(--metric-color,#3b82f61a)0,transparent 70%);opacity:.3;pointer-events:none;width:150%;height:150%;animation:rotate 20s linear infinite;position:absolute;top:-50%;right:-50%}.crystal-metric-card.highlight{border-color:var(--crystal-blue);box-shadow:var(--shadow-glow)}.crystal-metric-icon{border-radius:var(--radius-md);width:50px;height:50px;margin-bottom:var(--spacing-md);z-index:1;font-size:var(--font-size-3xl);background:#ffffff1a;justify-content:center;align-items:center;display:flex;position:relative}.crystal-metric-value{font-size:var(--font-size-5xl);margin:var(--spacing-sm)0;z-index:1;font-weight:700;position:relative}.crystal-metric-title{font-size:var(--font-size-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:1px;z-index:1;margin-bottom:var(--spacing-sm);position:relative}.crystal-input{background:var(--bg-tertiary);border:var(--border-subtle);color:var(--text-primary);padding:var(--spacing-md)var(--spacing-md);border-radius:var(--radius-sm);width:100%;transition:var(--transition-normal);font-size:var(--font-size-base)}.crystal-input:focus{border-color:var(--crystal-blue);background:var(--bg-secondary);outline:none;box-shadow:0 0 0 3px #3b82f633}.crystal-input::-moz-placeholder{color:var(--text-tertiary)}.crystal-input::placeholder{color:var(--text-tertiary)}.crystal-textarea{background:var(--bg-tertiary);border:var(--border-subtle);color:var(--text-primary);padding:var(--spacing-md);border-radius:var(--radius-sm);width:100%;transition:var(--transition-normal);font-size:var(--font-size-base);resize:vertical;min-height:100px}.crystal-textarea:focus{border-color:var(--crystal-blue);background:var(--bg-secondary);outline:none;box-shadow:0 0 0 3px #3b82f633}.crystal-select{background:var(--bg-tertiary);border:var(--border-subtle);color:var(--text-primary);padding:var(--spacing-md);border-radius:var(--radius-sm);width:100%;transition:var(--transition-normal);font-size:var(--font-size-base);cursor:pointer}.crystal-select:focus{border-color:var(--crystal-blue);background:var(--bg-secondary);outline:none;box-shadow:0 0 0 3px #3b82f633}.crystal-title{font-size:var(--font-size-4xl);color:var(--text-primary);margin-bottom:var(--spacing-sm);font-weight:700}.crystal-subtitle{font-size:var(--font-size-lg);color:var(--text-secondary);margin-bottom:var(--spacing-xl)}.crystal-section-title{font-size:var(--font-size-3xl);color:var(--text-primary);margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-md);font-weight:700;position:relative}.crystal-section-title:after{content:"";background:var(--gradient-crystal);border-radius:2px;width:100px;height:3px;position:absolute;bottom:0;left:0}.crystal-neon-text{text-shadow:0 0 10px var(--crystal-blue),0 0 20px var(--crystal-blue),0 0 30px var(--crystal-blue),0 0 40px var(--crystal-purple)}.crystal-status-dot{width:8px;height:8px;margin-right:var(--spacing-sm);border-radius:50%;animation:pulse-dot 2s ease-in-out infinite;display:inline-block}.crystal-status-dot.active{background:var(--crystal-cyan);box-shadow:0 0 10px var(--crystal-cyan)}.crystal-status-dot.warning{background:#f59e0b;box-shadow:0 0 10px #f59e0b}.crystal-status-dot.success{background:var(--crystal-green);box-shadow:0 0 10px var(--crystal-green)}.crystal-progress{background:#ffffff1a;height:8px;overflow:hidden}.crystal-progress,.crystal-progress-fill{border-radius:var(--radius-sm);position:relative}.crystal-progress-fill{background:var(--gradient-crystal);height:100%;transition:width var(--transition-slow)}.crystal-progress-fill:after{content:"";background:linear-gradient(90deg,#0000,#ffffff80);width:50px;animation:shimmer 2s infinite;position:absolute;top:0;bottom:0;right:0}.crystal-tag{padding:var(--spacing-xs)var(--spacing-md);border-radius:var(--radius-xl);font-size:var(--font-size-sm);color:var(--crystal-blue);margin:var(--spacing-xs);transition:var(--transition-normal);background:#3b82f633;border:1px solid #3b82f666;display:inline-block}.crystal-tag:hover{background:#3b82f64d;transform:translateY(-2px);box-shadow:0 2px 10px #3b82f64d}.crystal-tag.success{color:var(--crystal-green);background:#00ff8033;border-color:#00ff8066}.crystal-tag.warning{color:#fa0;background:#fa03;border-color:#fa06}.crystal-tag.error{color:#ef4444;background:#ef444433;border-color:#ef444466}.crystal-alert{padding:var(--spacing-md)var(--spacing-lg);border-radius:var(--radius-sm);margin-bottom:var(--spacing-lg);align-items:center;gap:var(--spacing-md);border:1px solid;display:flex}.crystal-alert.success{color:var(--crystal-green);background:#00ff801a;border-color:#00ff804d}.crystal-alert.warning{color:#fa0;background:#ffaa001a;border-color:#ffaa004d}.crystal-alert.error{color:#ef4444;background:#ef44441a;border-color:#ef44444d}.crystal-alert.info{color:var(--crystal-blue);background:#3b82f61a;border-color:#3b82f64d}.crystal-grid{background:var(--bg-tertiary);border:var(--border-subtle);border-radius:var(--radius-md);overflow:hidden}.crystal-grid-header{padding:var(--spacing-md);border-bottom:var(--border-subtle);text-transform:uppercase;letter-spacing:1px;font-weight:600;font-size:var(--font-size-sm);color:var(--crystal-blue);background:#3b82f61a}.crystal-grid-row{padding:var(--spacing-md);transition:var(--transition-normal);cursor:pointer;border-bottom:1px solid #ffffff0d}.crystal-grid-row:hover{padding-left:var(--spacing-lg);background:#3b82f60d}.crystal-grid-row:last-child{border-bottom:none}.crystal-loading{border:2px solid #3b82f64d;border-top:2px solid var(--crystal-blue);border-radius:50%;width:20px;height:20px;animation:spin 1s linear infinite;display:inline-block}.crystal-skeleton{background:linear-gradient(90deg,var(--bg-tertiary)25%,#ffffff1a 50%,var(--bg-tertiary)75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:loading 1.5s ease-in-out infinite}.crystal-empty-state{padding:var(--spacing-2xl)var(--spacing-lg);color:var(--text-tertiary)}.crystal-empty-state-icon{font-size:var(--font-size-7xl);margin-bottom:var(--spacing-lg);opacity:.3}.crystal-empty-state-title{font-size:var(--font-size-3xl);color:var(--text-secondary);margin-bottom:var(--spacing-sm)}.crystal-empty-state-description{font-size:var(--font-size-lg);max-width:400px;margin:0 auto}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(1turn)}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.2)}}@keyframes shimmer{0%{background-position:-200%}to{background-position:200%}}@keyframes loading{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.text-crystal-blue{color:var(--crystal-blue)}.text-crystal-purple{color:var(--crystal-purple)}.text-crystal-pink{color:var(--crystal-blue)}.text-crystal-cyan{color:var(--crystal-cyan)}.text-crystal-green{color:var(--crystal-green)}.text-crystal-white{color:var(--crystal-white)}.crystal-spinner{border:4px solid #3b82f64d;border-top:4px solid var(--crystal-blue);width:40px;height:40px}.crystal-spinner,.crystal-spinner-sm{animation:spin 1s linear infinite;display:inline-block}.crystal-spinner-sm{border:2px solid #3b82f64d;border-top:2px solid var(--crystal-blue)}.crystal-icon-lg{font-size:var(--font-size-6xl);margin-bottom:var(--spacing-lg)}.crystal-heading-md{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-md)}.crystal-heading-lg{font-size:var(--font-size-4xl);margin-bottom:var(--spacing-md)}.crystal-button{background:var(--gradient-crystal);color:var(--text-primary);padding:var(--spacing-md)var(--spacing-xl);border-radius:var(--radius-sm);transition:var(--transition-normal);font-weight:600;gap:var(--spacing-sm);position:relative;overflow:hidden}.crystal-button:hover{transform:translateY(-2px);box-shadow:0 5px 20px #3b82f666}.crystal-card-header{padding:var(--spacing-2xl);justify-content:space-between;align-items:flex-start;gap:var(--spacing-lg);display:flex}.crystal-info-badge{border:1px solid #3b82f64d;max-width:300px}.crystal-info-badge,.crystal-table th{padding:var(--spacing-md);font-size:var(--font-size-sm);background:#3b82f61a}.crystal-table th{color:var(--text-primary);letter-spacing:.5px}.crystal-table td{padding:var(--spacing-md);color:var(--text-primary);border-bottom:1px solid #ffffff0d}.crystal-table tbody tr:hover{background:#3b82f60d}.text-text-primary{color:var(--text-primary)}.text-text-secondary{color:var(--text-secondary)}.text-text-tertiary{color:var(--text-tertiary)}.crystal-table-row{transition:var(--transition-normal)}.crystal-table-cell-currency{color:var(--crystal-green);font-family:Courier New,monospace}.crystal-link{transition:var(--transition-normal);text-decoration:none}.crystal-link:hover{color:var(--crystal-purple);text-decoration:underline}.crystal-expand-icon{color:var(--text-secondary);margin-left:var(--spacing-sm)}.crystal-badge,.crystal-expand-icon{font-size:var(--font-size-sm);transition:var(--transition-normal)}.crystal-badge{border-radius:var(--radius-xl)}.crystal-badge-sm{font-size:var(--font-size-xs);padding:2px 8px}.crystal-confidence-badge{padding:var(--spacing-xs)var(--spacing-md);border-radius:var(--radius-xl);font-size:var(--font-size-sm);transition:var(--transition-normal);align-items:center;font-weight:600;display:inline-flex}.crystal-info-card{background:#3b82f60d;border:1px solid #3b82f633}.space-y-8>*+*{margin-top:2rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mr-2{margin-right:.5rem}.mt-1{margin-top:.25rem}.py-12{padding-top:3rem;padding-bottom:3rem}.gap-2{gap:.5rem}.text-sm{font-size:.875rem}.crystal-glass{border:var(--border-subtle);background:#ffffff0d}.crystal-blur,.crystal-glass{backdrop-filter:blur(10px)}.crystal-shadow-glow{box-shadow:var(--shadow-glow)}.crystal-shadow-crystal{box-shadow:var(--shadow-crystal)}.crystal-border-gradient{background:var(--bg-card);border-radius:var(--radius-lg);position:relative}.crystal-border-gradient:before{content:"";background:var(--gradient-crystal);border-radius:var(--radius-lg);z-index:-1;opacity:0;transition:opacity var(--transition-normal);position:absolute;inset:-2px}.crystal-border-gradient:hover:before{opacity:1}.crystal-fade-in{animation:fadeIn var(--transition-slow)ease-out}.crystal-slide-in-left{animation:slideInLeft var(--transition-slow)ease-out}.crystal-slide-in-right{animation:slideInRight var(--transition-slow)ease-out}@media (max-width:1200px){.crystal-content{padding:var(--spacing-lg)}.crystal-metrics-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}@media (max-width:768px){.crystal-sidebar{z-index:1000;width:0;position:absolute;transform:translate(-100%)}.crystal-sidebar.open{width:280px;transform:translate(0)}.crystal-header{padding:var(--spacing-md)var(--spacing-lg)}.crystal-content{padding:var(--spacing-md)}.crystal-metrics-grid{gap:var(--spacing-md);grid-template-columns:1fr}.crystal-card,.crystal-card-gradient,.crystal-logo,.crystal-metric-card{padding:var(--spacing-lg)}.crystal-title{font-size:var(--font-size-3xl)}.crystal-section-title{font-size:var(--font-size-2xl)}}@media (max-width:480px){.crystal-content{padding:var(--spacing-sm)}.crystal-header{padding:var(--spacing-sm)var(--spacing-md);gap:var(--spacing-sm);flex-wrap:wrap}.crystal-card,.crystal-card-gradient,.crystal-metric-card{padding:var(--spacing-md)}.crystal-btn{padding:var(--spacing-sm)var(--spacing-md);font-size:var(--font-size-sm)}.crystal-metric-value{font-size:var(--font-size-4xl)}}:focus-visible{outline:2px solid var(--crystal-blue);outline-offset:2px}@media print{body{color:#000;background:#fff}.crystal-header,.crystal-sidebar{display:none}.crystal-card,.crystal-metric-card{box-shadow:none;border:1px solid #ccc}}@media (prefers-contrast:high){:root{--border-subtle:1px solid #ffffff4d;--text-secondary:#e0e0e0;--text-tertiary:silver}}@media (prefers-reduced-motion:reduce){*,:after,:before{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--color-primary:#0070f3;--color-primary-dark:#0050b3;--color-primary-light:#e6f7ff;--color-primary-rgb:0,112,243;--color-secondary:#6c757d;--color-secondary-dark:#495057;--color-secondary-light:#e9ecef;--color-success:#28a745;--color-success-light:#d4edda;--color-warning:#ffc107;--color-warning-light:#fff3cd;--color-error:#dc3545;--color-error-light:#f8d7da;--color-info:#17a2b8;--color-info-light:#d1ecf1;--color-purple:#8a2be2;--color-pink:#ff69b4;--color-blue:#1e90ff;--color-orange:#ff8c00;--color-gray:gray;--color-neutral-50:#f8f9fa;--color-neutral-100:#f1f3f5;--color-neutral-200:#e9ecef;--color-neutral-300:#dee2e6;--color-neutral-400:#ced4da;--color-neutral-500:#adb5bd;--color-neutral-600:#6c757d;--color-neutral-700:#495057;--color-neutral-800:#343a40;--color-neutral-900:#212529;--font-family-base:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,Cantarell,"Open Sans","Helvetica Neue",sans-serif;--font-size-xs:.75rem;--font-size-sm:.875rem;--font-size-base:1rem;--font-size-md:1.125rem;--font-size-lg:1.25rem;--font-size-xl:1.5rem;--font-size-2xl:1.875rem;--font-size-3xl:2.25rem;--font-size-4xl:3rem;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-base:1.5;--line-height-loose:1.75;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-8:3rem;--radius-base:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-full:9999px;--shadow-base:0 1px 3px #0000001a,0 1px 2px #0000000f;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-xl:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;--z-index-dropdown:1000;--z-index-sticky:1020;--z-index-fixed:1030;--z-index-modal-backdrop:1040;--z-index-modal:1050;--z-index-popover:1060;--z-index-tooltip:1070;--transition-base:all .2s ease-in-out;--transition-colors:color .2s ease-in-out,background-color .2s ease-in-out,border-color .2s ease-in-out;--transition-slow:all .3s ease-in-out}.dark{--color-primary:#3b82f6;--color-primary-dark:#2563eb;--color-primary-light:#1e3a8a;--color-neutral-50:#1f2937;--color-neutral-100:#374151;--color-neutral-200:#4b5563;--color-neutral-300:#6b7280;--color-neutral-400:#9ca3af;--color-neutral-500:#d1d5db;--color-neutral-600:#e5e7eb;--color-neutral-700:#f3f4f6;--color-neutral-800:#f9fafb;--color-neutral-900:#fff}.crystal-card{background:var(--bg-card);border:var(--border-subtle);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);transition:var(--transition-normal);overflow:hidden}.crystal-card:hover{border:var(--border-hover);box-shadow:var(--shadow-hover)}.crystal-card-header{padding:var(--spacing-lg)var(--spacing-xl);border-bottom:var(--border-subtle);background:var(--bg-secondary)}.crystal-card-content{padding:var(--spacing-xl)}.crystal-card-nested{background:var(--bg-tertiary);border:var(--border-subtle);border-radius:var(--radius-md);padding:var(--spacing-lg)}.crystal-gradient-subtle{background:var(--gradient-subtle);border:var(--border-crystal)}.crystal-gradient-card{background:var(--gradient-card);border:var(--border-crystal)}.crystal-glow{box-shadow:var(--shadow-crystal)}.crystal-glow-blue{box-shadow:0 0 20px #00d4ff33}.crystal-glow-green{box-shadow:0 0 20px #00ff8033}.crystal-glow-purple{box-shadow:0 0 20px #9945ff33}.crystal-heading-xs{font-size:var(--font-size-sm)}.crystal-heading-sm,.crystal-heading-xs{color:var(--text-primary);font-weight:600}.crystal-heading-sm{font-size:var(--font-size-base)}.crystal-heading-md{font-size:var(--font-size-lg);color:var(--text-primary);font-weight:600}.crystal-heading-lg{font-size:var(--font-size-xl)}.crystal-heading-lg,.crystal-heading-xl{color:var(--text-primary);font-weight:700}.crystal-heading-xl{font-size:var(--font-size-3xl)}.crystal-button{padding:var(--spacing-sm)var(--spacing-lg);border-radius:var(--radius-md);font-size:var(--font-size-base);transition:var(--transition-fast);cursor:pointer;border:none;justify-content:center;align-items:center;font-weight:500;text-decoration:none;display:inline-flex}.crystal-button:disabled{opacity:.5;cursor:not-allowed}.crystal-button-primary{background:var(--gradient-crystal);color:var(--crystal-white);box-shadow:var(--shadow-glow)}.crystal-button-primary:hover:not(:disabled){box-shadow:var(--shadow-crystal);transform:translateY(-2px)}.crystal-button-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:var(--border-subtle)}.crystal-button-secondary:hover:not(:disabled){background:var(--bg-hover);border:var(--border-hover)}.crystal-button-tertiary{color:var(--crystal-blue);border:var(--border-crystal);background:0 0}.crystal-button-tertiary:hover:not(:disabled){background:#00d4ff1a}.crystal-button-sm{padding:var(--spacing-xs)var(--spacing-md);font-size:var(--font-size-sm)}.crystal-button-close{color:var(--text-tertiary);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:var(--transition-fast);background:0 0;border:none}.crystal-button-close:hover{background:var(--bg-hover);color:var(--text-primary)}.crystal-badge{padding:var(--spacing-xs)var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--font-size-xs);white-space:nowrap;align-items:center;font-weight:500;display:inline-flex}.crystal-badge-sm{padding:2px var(--spacing-xs);font-size:10px}.crystal-badge-blue{color:var(--crystal-blue);background:#00d4ff33;border:1px solid #00d4ff4d}.crystal-badge-green{color:var(--crystal-green);background:#00ff8033;border:1px solid #00ff804d}.crystal-badge-pink{color:var(--crystal-pink);background:#f0a3;border:1px solid #ff00aa4d}.crystal-badge-orange{color:orange;background:#ffa50033;border:1px solid #ffa5004d}.crystal-badge-cyan{color:var(--crystal-cyan);background:#0ff3;border:1px solid #00ffff4d}.crystal-badge-gray{color:var(--text-tertiary);background:#8883;border:1px solid #8888884d}.crystal-table-container{overflow-x:auto}.crystal-table{border-collapse:collapse;width:100%}.crystal-table th{text-align:left;font-size:var(--font-size-xs);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em;background:var(--bg-secondary);font-weight:600}.crystal-table td,.crystal-table th{padding:var(--spacing-md)var(--spacing-lg);border-bottom:var(--border-subtle)}.crystal-table td{font-size:var(--font-size-sm)}.crystal-table-row{transition:var(--transition-fast);cursor:pointer}.crystal-table-row:hover{background:var(--bg-hover)}.crystal-table-row-expanded{background:#00d4ff0d}.crystal-table-cell-primary{color:var(--crystal-blue);font-weight:500}.crystal-table-cell-currency{color:var(--text-primary);font-weight:600}.crystal-link{color:var(--crystal-blue);cursor:pointer;transition:var(--transition-fast);text-decoration:underline}.crystal-link:hover{color:var(--crystal-cyan)}.crystal-expand-icon{color:var(--text-tertiary);font-size:var(--font-size-xs)}.crystal-confidence-badge{font-weight:500}.crystal-factors-cell{gap:var(--spacing-xs);flex-direction:column;display:flex}.crystal-factor-item{align-items:center;gap:var(--spacing-xs);flex-wrap:wrap;display:flex}.crystal-factor-detail{color:var(--text-tertiary);font-size:var(--font-size-xs)}.crystal-modal-overlay{backdrop-filter:blur(5px);z-index:1000;padding:var(--spacing-lg);background:#000c;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.crystal-modal{background:var(--bg-card);border:var(--border-crystal);border-radius:var(--radius-lg);box-shadow:var(--shadow-crystal);flex-direction:column;max-height:90vh;display:flex;overflow:hidden}.crystal-modal-xl{width:90vw;max-width:1200px}.crystal-modal-header{align-items:center;justify-content:between;padding:var(--spacing-lg)var(--spacing-xl);border-bottom:var(--border-subtle);background:var(--bg-secondary);display:flex}.crystal-modal-content{padding:var(--spacing-xl);flex:1;overflow-y:auto}.crystal-empty-state,.crystal-error-state,.crystal-loading-state{padding:var(--spacing-2xl);flex-direction:column;justify-content:center;align-items:center;display:flex}.crystal-empty-state{text-align:center}.crystal-spinner{border-top:3px solid var(--bg-tertiary);border:3px solid var(--bg-tertiary);border-top-color:var(--crystal-blue);border-radius:50%;width:32px;height:32px}.crystal-spinner,.crystal-spinner-sm{animation:crystal-spin 1s linear infinite}.crystal-spinner-sm{border-top:2px solid var(--bg-tertiary);border:2px solid var(--bg-tertiary);border-top-color:var(--crystal-blue);border-radius:50%;width:16px;height:16px}@keyframes crystal-spin{0%{transform:rotate(0)}to{transform:rotate(1turn)}}.crystal-icon{font-size:inherit;display:inline-block}.crystal-icon-lg{font-size:var(--font-size-4xl)}.crystal-icon-error{font-size:var(--font-size-lg);color:var(--crystal-pink)}.crystal-icon-info{font-size:var(--font-size-lg);color:var(--crystal-blue)}.crystal-info-badge{color:var(--crystal-blue);padding:var(--spacing-sm)var(--spacing-md);border-radius:var(--radius-md);font-size:var(--font-size-xs);background:#00d4ff1a;border:1px solid #00d4ff33}.crystal-detail-row{justify-content:space-between;align-items:center;display:flex}.crystal-detail-label{color:var(--text-tertiary);font-size:var(--font-size-sm)}.crystal-detail-value{color:var(--text-primary);font-weight:500;font-size:var(--font-size-sm)}.crystal-confidence-indicator{font-weight:600;font-size:var(--font-size-sm)}.crystal-metric-card{background:var(--bg-tertiary);border:var(--border-subtle);border-radius:var(--radius-md);padding:var(--spacing-lg);transition:var(--transition-fast)}.crystal-metric-card:hover{border:var(--border-hover)}.crystal-metric-label{color:var(--text-tertiary);font-size:var(--font-size-sm);margin-bottom:var(--spacing-xs);font-weight:500;display:block}.crystal-metric-value{color:var(--text-primary);font-size:var(--font-size-lg);margin-bottom:var(--spacing-xs);font-weight:600}.crystal-metric-subtitle{color:var(--text-tertiary);font-size:var(--font-size-xs)}.crystal-metric-blue{background:#00d4ff0d;border-color:#00d4ff33}.crystal-metric-green{background:#00ff800d;border-color:#00ff8033}.crystal-metric-cyan{background:#00ffff0d;border-color:#0ff3}.crystal-metric-purple{background:#9945ff0d;border-color:#9945ff33}.crystal-metric-pink{background:#ff00aa0d;border-color:#f0a3}.crystal-metric-orange{background:#ffa5000d;border-color:#ffa50033}.crystal-metric-gray{background:#8888880d;border-color:#8883}.crystal-scrollable-list{max-height:300px;padding-right:var(--spacing-sm);overflow-y:auto}.crystal-list-item{background:var(--bg-tertiary);border:var(--border-subtle);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-md);transition:var(--transition-fast)}.crystal-list-item:hover{background:var(--bg-hover);border:var(--border-hover)}.crystal-list-title{color:var(--text-primary);font-weight:600;font-size:var(--font-size-base)}.crystal-list-subtitle{color:var(--text-secondary);font-size:var(--font-size-sm)}.crystal-list-detail{color:var(--crystal-blue);font-size:var(--font-size-xs);margin-top:var(--spacing-xs)}.crystal-stat-item{gap:var(--spacing-xs);flex-direction:column;display:flex}.crystal-stat-label{color:var(--text-tertiary);font-size:var(--font-size-sm);font-weight:500}.crystal-stat-value{color:var(--text-primary);font-weight:600}.crystal-insight-card{align-items:center;gap:var(--spacing-md);background:var(--bg-tertiary);border:var(--border-subtle);border-radius:var(--radius-md);padding:var(--spacing-lg);display:flex}.crystal-insight-icon{font-size:var(--font-size-2xl);flex-shrink:0}.crystal-status-item{align-items:center;gap:var(--spacing-sm);display:flex}.crystal-status-label{color:var(--text-tertiary);font-size:var(--font-size-sm)}.crystal-status-value{color:var(--text-primary);font-weight:500;font-size:var(--font-size-sm)}.crystal-status-indicator{padding:var(--spacing-xs)var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500}.crystal-status-ready{color:var(--crystal-green);background:#00ff8033}.crystal-status-loading{color:var(--crystal-blue);background:#00d4ff33}.crystal-status-generating{color:var(--crystal-purple);background:#9945ff33}.crystal-status-error{color:var(--crystal-pink);background:#f0a3}.crystal-error-card{background:#ff00aa0d;border-color:#ff00aa4d}.crystal-info-card{background:#00d4ff0d;border-color:#00d4ff4d}@media (max-width:768px){.crystal-modal{width:95vw;max-height:95vh}.crystal-modal-content,.crystal-modal-header{padding:var(--spacing-md)}.crystal-card-content{padding:var(--spacing-lg)}.crystal-table td,.crystal-table th{padding:var(--spacing-sm)var(--spacing-md)}.crystal-factors-cell{flex-direction:column;align-items:flex-start}}.collapse{visibility:collapse}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden}.absolute,.sr-only{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.isolate{isolation:isolate}.z-50{z-index:50}.container{width:100%}.mx-auto{margin-inline:auto}.mx-px{margin-inline:1px}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline\!{display:inline!important}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.table\!{display:table!important}.table-row{display:table-row}.h-full{height:100%}.h-px{height:1px}.max-h-\[60vh\]{max-height:60vh}.max-h-\[90vh\]{max-height:90vh}.min-h-screen{min-height:100vh}.w-1\/4{width:25%}.w-2\/3{width:66.6667%}.w-3\/4{width:75%}.w-4\/6{width:66.6667%}.w-5\/6{width:83.3333%}.w-11\/12{width:91.6667%}.w-full{width:100%}.min-w-\[8rem\]{min-width:8rem}.min-w-full{min-width:100%}.flex-1{flex:1}.flex-shrink{flex-shrink:1}.flex-shrink-0{flex-shrink:0}.grow{flex-grow:1}.border-collapse{border-collapse:collapse}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.resize{resize:both}.list-inside{list-style-position:inside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-center{align-items:center}.items-end{align-items:flex-end}.items-start{align-items:flex-start}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}:where(.divide-y>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px*var(--tw-divide-y-reverse));border-bottom-width:calc(1px*calc(1 - var(--tw-divide-y-reverse)))}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.rounded-full{border-radius:3.40282e+38px}.border{border-style:var(--tw-border-style);border-width:1px}.border-0{border-style:var(--tw-border-style);border-width:0}.border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.border-b-2{border-bottom-style:var(--tw-border-style);border-bottom-width:2px}.border-l-4{border-left-style:var(--tw-border-style);border-left-width:4px}.border-transparent{border-color:#0000}.bg-gradient-to-br{--tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--tw-gradient-stops))}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.overline{text-decoration-line:overline}.underline{text-decoration-line:underline}.underline-offset-4{text-underline-offset:4px}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-90{opacity:.9}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor)}.ring,.ring-2{box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring-2{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.invert{--tw-invert:invert(100%)}.filter,.invert{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.backdrop-filter{backdrop-filter:var(--tw-backdrop-blur,)var(--tw-backdrop-brightness,)var(--tw-backdrop-contrast,)var(--tw-backdrop-grayscale,)var(--tw-backdrop-hue-rotate,)var(--tw-backdrop-invert,)var(--tw-backdrop-opacity,)var(--tw-backdrop-saturate,)var(--tw-backdrop-sepia,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-all{transition-property:all;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}.duration-300{--tw-duration:.3s;transition-duration:.3s}.outline-none{--tw-outline-style:none;outline-style:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.last\:border-b-0:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (hover:hover){.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-75:hover{opacity:.75}.hover\:opacity-80:hover{opacity:.8}}.focus\:ring-2:focus{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus\:ring-offset-2:focus{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus\:outline-none:focus{--tw-outline-style:none;outline-style:none}.focus-visible\:ring-2:focus-visible{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(2px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width:2px;--tw-ring-offset-shadow:var(--tw-ring-inset,)0 0 0 var(--tw-ring-offset-width)var(--tw-ring-offset-color)}.focus-visible\:outline-none:focus-visible{--tw-outline-style:none;outline-style:none}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.\[\&_svg\]\:pointer-events-none svg{pointer-events:none}.\[\&_svg\]\:shrink-0 svg{flex-shrink:0}@layer base{:root{--background:220 13% 9%;--foreground:210 40% 98%;--card:215 16% 24%;--card-foreground:210 40% 98%;--popover:215 25% 15%;--popover-foreground:210 40% 98%;--primary:217 91% 60%;--primary-foreground:210 40% 98%;--secondary:221 83% 53%;--secondary-foreground:210 40% 98%;--muted:215 16% 24%;--muted-foreground:215 20% 65%;--accent:217 91% 60%;--accent-foreground:210 40% 98%;--destructive:0 84% 60%;--destructive-foreground:210 40% 98%;--border:215 14% 32%;--input:215 16% 24%;--ring:217 91% 60%;--radius:.75rem;--sidebar-background:220 13% 9%;--sidebar-foreground:210 40% 98%;--sidebar-primary:217 91% 60%;--sidebar-primary-foreground:210 40% 98%;--sidebar-accent:215 25% 15%;--sidebar-accent-foreground:210 40% 98%;--sidebar-border:215 14% 32%;--sidebar-ring:217 91% 60%;--data-revenue:217 91% 60%;--data-weather:43 96% 56%;--data-footfall:158 64% 52%}html{color-scheme:dark}*{border-color:#ffffff1a}body{background-color:var(--bg-primary);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.6;overflow-x:hidden}}.calendar-day-data{justify-content:center;gap:.25rem;font-size:.75rem;line-height:1rem;display:flex;position:absolute;bottom:.25rem;left:0;right:0}.calendar-day-indicator{border-radius:9999px;width:.5rem;height:.5rem}.revenue-indicator{background-color:hsl(var(--data-revenue))}.weather-indicator{background-color:hsl(var(--data-weather))}.footfall-indicator{background-color:hsl(var(--data-footfall))}.animate-delay-100{animation-delay:.1s}.animate-delay-200{animation-delay:.2s}.animate-delay-300{animation-delay:.3s}.calendar-day{height:4rem;position:relative}@media (min-width:640px){.calendar-day{height:6rem}}.day-content-wrapper{flex-direction:column;justify-content:space-between;align-items:center;padding:.5rem;display:flex;position:absolute;inset:0}.rdp-month,.rdp-table{width:100%}.rdp-cell{padding:0}.day-detail-dialog{max-width:48rem}.recharts-default-tooltip{background-color:var(--bg-card)!important;border:var(--border-subtle)!important;border-radius:var(--radius-md)!important;box-shadow:var(--shadow-card)!important;backdrop-filter:blur(10px)!important}.recharts-tooltip-label{margin-bottom:var(--spacing-xs)!important;color:var(--text-primary)!important;font-weight:600!important}.recharts-tooltip-item{color:var(--text-secondary)!important}.recharts-tooltip-item-value{color:var(--text-primary)!important;font-weight:600!important}.dashboard-container{width:100%;max-width:none;padding:var(--spacing-xl);margin:0}.dashboard-header{margin-bottom:var(--spacing-2xl);align-items:flex-start;gap:var(--spacing-xl)}.dashboard-header h1{font-size:var(--font-size-4xl);color:var(--text-primary);margin-bottom:var(--spacing-xs);font-weight:700}.dashboard-header p{color:var(--text-secondary);font-size:var(--font-size-lg)}.dashboard-actions{align-items:center;gap:var(--spacing-lg);flex-wrap:wrap;display:flex}.dashboard-content{gap:var(--spacing-2xl);flex-direction:column;display:flex}.dashboard-grid{gap:var(--spacing-xl);grid-template-columns:repeat(12,1fr);align-items:start;width:100%;display:grid}.dashboard-section{background:var(--bg-card);border-radius:var(--radius-lg);border:var(--border-subtle);padding:var(--spacing-2xl);box-shadow:var(--shadow-card);transition:var(--transition-normal);position:relative;overflow:hidden}.dashboard-section:before{content:"";background:var(--gradient-crystal);opacity:0;height:2px;transition:opacity var(--transition-normal);position:absolute;top:0;left:0;right:0}.dashboard-section:hover{box-shadow:var(--shadow-hover);border-color:#3b82f64d;transform:translateY(-2px)}.dashboard-section:hover:before{opacity:1}.dashboard-section h2,.dashboard-section h3,.section-title{color:var(--text-primary);margin-bottom:var(--spacing-lg)}.section-title{font-size:var(--font-size-2xl);font-weight:600}.live-revenue-section{margin-bottom:var(--spacing-lg);grid-column:1/-1}.metrics-section{grid-column:1/8}.revenue-section{grid-column:8/-1}.category-section{grid-column:1/8}.weather-section{grid-column:8/10}.predictions-section{grid-column:10/-1}@media (max-width:1440px){.dashboard-grid{gap:var(--spacing-lg);grid-template-columns:repeat(12,1fr)}.metrics-section{grid-column:1/7}.revenue-section{grid-column:7/-1}.category-section{grid-column:1/7}.weather-section{grid-column:7/10}.predictions-section{grid-column:10/-1}}@media (max-width:1024px){.dashboard-grid{gap:var(--spacing-lg);grid-template-columns:repeat(8,1fr)}.live-revenue-section,.metrics-section,.revenue-section{grid-column:1/-1}.category-section{grid-column:1/5}.weather-section{grid-column:5/-1}.predictions-section{grid-column:1/-1}}@media (max-width:768px){.dashboard-container{padding:var(--spacing-lg)}.dashboard-grid{gap:var(--spacing-lg);grid-template-columns:1fr}.dashboard-section{grid-column:1}.dashboard-header{align-items:stretch;gap:var(--spacing-lg);flex-direction:column}.dashboard-actions{justify-content:flex-start}}.refresh-dashboard-button,.test-database-button{background:var(--gradient-crystal);color:var(--text-primary);padding:var(--spacing-md)var(--spacing-xl);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-normal);font-weight:600;font-size:var(--font-size-base);border:none;position:relative;overflow:hidden}.refresh-dashboard-button:before,.test-database-button:before{content:"";background:#ffffff4d;border-radius:50%;width:0;height:0;transition:width .6s,height .6s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.refresh-dashboard-button:hover,.test-database-button:hover{transform:translateY(-2px);box-shadow:0 5px 20px #3b82f666}.refresh-dashboard-button:hover:before,.test-database-button:hover:before{width:300px;height:300px}.refresh-dashboard-button:disabled,.test-database-button:disabled{background:var(--bg-tertiary);color:var(--text-tertiary);cursor:not-allowed;box-shadow:none;transform:none}.refresh-dashboard-button:disabled:before,.test-database-button:disabled:before{display:none}.date-navigator-container{align-items:center;display:flex}.date-navigator{align-items:center;gap:var(--spacing-lg);background:var(--bg-card);backdrop-filter:blur(10px);display:flex}.date-nav-button,.date-navigator{border:var(--border-subtle);border-radius:var(--radius-sm);padding:var(--spacing-md)}.date-nav-button{background:var(--bg-tertiary);cursor:pointer;color:var(--text-secondary);transition:var(--transition-normal);font-size:var(--font-size-lg);font-weight:600}.date-nav-button:hover:not(:disabled){background:var(--bg-hover);color:var(--crystal-blue);border-color:var(--crystal-blue);transform:translateY(-1px);box-shadow:0 2px 10px #3b82f633}.date-nav-button:disabled{opacity:.3;cursor:not-allowed;background:var(--bg-tertiary);color:var(--text-tertiary)}.date-display{text-align:center;min-width:140px;padding:0 var(--spacing-md)}.date-main{color:var(--text-primary);font-weight:600;font-size:var(--font-size-lg)}.date-sub{color:var(--text-secondary);margin-top:2px}.date-sub,.fallback-notice{font-size:var(--font-size-sm)}.fallback-notice{align-items:center;gap:var(--spacing-md);border-radius:var(--radius-sm);padding:var(--spacing-md)var(--spacing-lg);margin-top:var(--spacing-md);color:#fa0;backdrop-filter:blur(10px);background:#ffaa001a;border:1px solid #ffaa004d;display:flex}.fallback-notice svg{color:#fa0;flex-shrink:0}.error-container{border-radius:var(--radius-lg);padding:var(--spacing-2xl);margin:var(--spacing-xl)0;text-align:center;background:#ef44441a;border:1px solid #ef44444d}.error-message h3{color:#ef4444;font-size:var(--font-size-xl);margin-bottom:var(--spacing-md)}.error-message p{color:var(--text-secondary);margin-bottom:var(--spacing-lg)}.error-actions{gap:var(--spacing-md);flex-wrap:wrap;justify-content:center;display:flex}.generate-data-button,.refresh-button{background:var(--gradient-crystal);color:var(--text-primary);padding:var(--spacing-md)var(--spacing-xl);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-normal);border:none;font-weight:600;position:relative;overflow:hidden}.generate-data-button:hover,.refresh-button:hover{transform:translateY(-2px);box-shadow:0 5px 20px #3b82f666}.generate-data-button:disabled,.refresh-button:disabled{background:var(--bg-tertiary);color:var(--text-tertiary);cursor:not-allowed;box-shadow:none;transform:none}.test-results-container{border-radius:var(--radius-lg);padding:var(--spacing-2xl);margin:var(--spacing-xl)0;background:#00ff801a;border:1px solid #00ff804d}.test-results-message h3{color:#00ff80;font-size:var(--font-size-xl);margin-bottom:var(--spacing-md)}.test-results-message p{color:var(--text-secondary);margin-bottom:var(--spacing-lg)}.test-results-details{background:var(--bg-tertiary);border-radius:var(--radius-sm);padding:var(--spacing-lg);margin-top:var(--spacing-lg)}.test-results-details h4{color:var(--text-primary);margin-bottom:var(--spacing-md)}.test-results-details pre{background:var(--bg-secondary);color:var(--text-secondary);padding:var(--spacing-md);border-radius:var(--radius-sm);font-size:var(--font-size-sm);border:var(--border-subtle);overflow-x:auto}.test-actions{margin-top:var(--spacing-lg)}.use-record-button{background:var(--gradient-crystal);color:var(--text-primary);padding:var(--spacing-md)var(--spacing-xl);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-normal);border:none;font-weight:600}.use-record-button:hover{transform:translateY(-2px);box-shadow:0 5px 20px #3b82f666}.predictions-preview{background:var(--bg-tertiary);border:var(--border-subtle);border-radius:var(--radius-lg);padding:var(--spacing-xl);margin-bottom:var(--spacing-lg);transition:var(--transition-normal);cursor:pointer}.predictions-preview:hover{background:var(--bg-hover);box-shadow:var(--shadow-card);border-color:#3b82f64d;transform:translateY(-2px)}.predictions-content{align-items:start;gap:var(--spacing-lg);display:flex}.predictions-icon{border-radius:var(--radius-md);width:50px;height:50px;color:var(--crystal-blue);background:#3b82f61a;flex-shrink:0;justify-content:center;align-items:center;display:flex}.planning-icon{color:var(--crystal-purple);background:#2563eb1a}.enhanced-icon{color:var(--crystal-cyan);background:#06b6d41a}.predictions-info{flex:1}.predictions-info h3{color:var(--text-primary);font-size:var(--font-size-xl);margin-bottom:var(--spacing-sm)}.predictions-info p{color:var(--text-secondary);margin-bottom:var(--spacing-md);line-height:1.6}.predictions-features{margin:0;padding:0;list-style:none}.predictions-features li{color:var(--text-tertiary);font-size:var(--font-size-sm);margin-bottom:var(--spacing-xs);padding-left:var(--spacing-lg);position:relative}.predictions-features li:before{content:"✦";color:var(--crystal-blue);position:absolute;left:0}.predictions-actions{margin-top:var(--spacing-md)}.predictions-button{background:var(--gradient-crystal);color:var(--text-primary);padding:var(--spacing-md)var(--spacing-xl);border-radius:var(--radius-sm);cursor:pointer;transition:var(--transition-normal);align-items:center;gap:var(--spacing-sm);font-weight:600;font-size:var(--font-size-base);border:none;display:flex}.predictions-button:hover{transform:translateY(-2px);box-shadow:0 5px 20px #3b82f666}.planning-button{background:linear-gradient(135deg,#2563eb,#3b82f6)}.enhanced-button{background:linear-gradient(135deg,#06b6d4,#2563eb)}.dashboard-actions .date-display,.date-display,.date-navigator .date-display,.date-navigator-container .date-display,div[class*=date-display]{background:#000!important}.dashboard-actions .date-main,.dashboard-actions .date-sub,.date-main,.date-navigator .date-main,.date-navigator .date-sub,.date-navigator-container .date-main,.date-navigator-container .date-sub,.date-sub,div[class*=date-main],div[class*=date-sub]{color:#fff!important}.intelligent-prediction-details{background:var(--bg-card)!important;border:var(--border-subtle)!important;box-shadow:var(--shadow-card)!important;background-image:none!important}.comparison-note,.detected-patterns,.prediction-adjustments,.prediction-reasoning{background:var(--bg-tertiary)!important;border:var(--border-subtle)!important;box-shadow:var(--shadow-card)!important;background-image:none!important}.adjustment-item,.pattern-item,.prediction-metric,.reasoning-item{background:var(--bg-secondary)!important;border:var(--border-subtle)!important;box-shadow:var(--shadow-card)!important;background-image:none!important}.adjustment-item:hover,.intelligent-prediction-details:hover,.pattern-item:hover,.prediction-metric:hover,.reasoning-item:hover{box-shadow:var(--shadow-hover)!important;border:var(--border-subtle)!important}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}.revenue-prediction-dashboard{display:flex;flex-direction:column;gap:24px;padding:24px;max-width:1600px;margin:0 auto}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.title-section h1{font-size:24px;font-weight:600;margin:0}.title-section p{font-size:14px;color:#666;margin:4px 0 0}.actions-section{display:flex;align-items:center;gap:16px}.date-selector{gap:12px;position:relative}.date-selector,.nav-button{display:flex;align-items:center}.nav-button{justify-content:center;width:32px;height:32px;border-radius:6px;background-color:#f3f4f6;border:none;color:#4b5563;cursor:pointer;transition:all .2s ease}.nav-button:hover{background-color:#e5e7eb;color:#1f2937}.date-display{position:relative;cursor:pointer;padding:6px 12px;border-radius:6px;background-color:#f9fafb;transition:all .2s ease}.date-display:hover{background-color:#f3f4f6}.selected-date{display:flex;align-items:center;gap:8px;font-weight:500;color:#1f2937}.date-status{font-size:.75rem;font-weight:600;padding:2px 6px;border-radius:9999px}.date-status.today{background-color:#10b981;color:white}.date-status.future{background-color:#3b82f6;color:white}.date-status.past{background-color:#6b7280;color:white}.date-picker-container{position:absolute;top:100%;left:0;margin-top:8px;z-index:10;background-color:white;border-radius:6px;box-shadow:0 4px 6px -1px rgba(0,0,0,.1),0 2px 4px -1px rgba(0,0,0,.06);padding:8px}.date-picker{border:1px solid #e5e7eb;border-radius:4px;padding:6px 8px;font-size:.875rem}.placeholder{background:#f5f5f5;border:1px dashed #ccc;border-radius:8px;padding:24px;text-align:center;color:#666}.metrics-row{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.charts-row{display:grid;grid-template-columns:3fr 2fr;gap:24px}.correlation-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}@media (max-width:1200px){.metrics-row{grid-template-columns:repeat(2,1fr)}.charts-row{grid-template-columns:1fr}}@media (max-width:768px){.dashboard-header{flex-direction:column;align-items:flex-start;gap:16px}.correlation-grid,.metrics-row{grid-template-columns:1fr}}.metric-card{transition:all .3s ease;height:100%;display:flex;flex-direction:column}.metric-card:hover{transform:translateY(-5px);box-shadow:0 10px 25px rgba(0,0,0,.1)}.card-header{display:flex;justify-content:space-between;align-items:center}.card-content{flex:1;display:flex;flex-direction:column;justify-content:center}.primary-value{font-size:1.75rem;font-weight:700;line-height:1.2}.secondary-value{font-size:.875rem;opacity:.9}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:.5}50%{opacity:.2}}.error-message{background-color:#fee2e2;border:1px solid #ef4444;color:#b91c1c;padding:1rem;border-radius:.5rem;margin-bottom:1.5rem;display:flex;justify-content:space-between;align-items:center}.error-message button{background-color:#b91c1c;color:white;border:none;padding:.5rem 1rem;border-radius:.25rem;font-weight:500;cursor:pointer}.error-message button:hover{background-color:#991b1b}.correlation-card{transition:all .3s ease;height:100%;display:flex;flex-direction:column}.correlation-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.08)}.correlation-grid{margin-top:24px}.coefficient{font-family:SF Mono,Roboto Mono,monospace;color:#333}.strength-badge{letter-spacing:.5px}.refresh-button{display:flex;align-items:center;gap:6px;padding:6px 12px;border-radius:6px;background-color:#f3f4f6;border:none;color:#4b5563;font-weight:500;cursor:pointer;transition:all .2s ease}.refresh-button:hover:not(:disabled){background-color:#e5e7eb;color:#1f2937}.refresh-button:disabled{opacity:.6;cursor:not-allowed}.explanation{line-height:1.5}.insight-panel{margin-top:24px}.insights-list{list-style:none;padding:0}.insight-item{transition:all .2s ease;padding:8px;border-radius:6px}.insight-item:hover{background-color:rgba(255,255,255,.05)}.insight-text{line-height:1.5}.insights-section{margin-bottom:32px}.empty-state{opacity:.8}.factor-impact-chart,.revenue-chart-container{height:100%;display:flex;flex-direction:column}.chart-container{flex:1}.custom-tooltip{font-size:.875rem}.period-selector button{transition:all .2s ease}.legend-list{margin:0;padding:0;list-style:none}.charts-row{min-height:600px}.correlation-chart-container{height:100%;min-height:600px;display:flex;flex-direction:column}.correlation-chart-container.fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;background:white;padding:20px;min-height:100vh}@media (max-width:768px){.charts-row,.correlation-chart-container{min-height:400px}}@media (min-width:769px) and (max-width:1024px){.charts-row,.correlation-chart-container{min-height:500px}}@media (min-width:1025px){.charts-row,.correlation-chart-container{min-height:600px}}.chart-controls{justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.chart-controls,.control-group{display:flex;gap:1rem;flex-wrap:wrap}.control-group{align-items:center}.chart-options{display:flex;gap:.75rem;align-items:center;flex-wrap:wrap}.fullscreen-button,.reset-zoom-button{background-color:#3b82f6;color:white;border:none;border-radius:6px;padding:.5rem .75rem;font-size:.875rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:.25rem;font-weight:500}.fullscreen-button:hover,.reset-zoom-button:hover{background-color:#2563eb;transform:translateY(-1px);box-shadow:0 2px 4px rgba(0,0,0,.1)}.fullscreen-button{background-color:#6b7280;font-size:1rem;padding:.5rem;min-width:2.5rem;justify-content:center}.fullscreen-button:hover{background-color:#4b5563}.custom-tooltip{background-color:white;border-radius:8px;box-shadow:0 4px 12px rgba(0,0,0,.15);padding:1rem;max-width:320px;border:1px solid #e5e7eb}@media (max-width:768px){.chart-controls{flex-direction:column;align-items:stretch}.control-group{justify-content:space-between}.chart-options{justify-content:center}}