:root{--bg-primary: #010101;--bg-secondary: #0a0a0a;--bg-tertiary: #111111;--text-primary: #e8e3d5;--text-secondary: #999;--accent-teal: #a9ddd3;--accent-teal-dark: #8fcdbd;--accent-tan: #e8c48f;--accent-rose: #d39da9;--state-waiting: #4a4a4a;--state-active: #a9ddd3;--state-completed: #e8e3d5;--state-error: #d39da9;--glass-bg: rgba(10, 10, 10, .8);--glass-border: rgba(169, 221, 211, .3);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .6);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", "Monaco", "Inconsolata", monospace;--font-size-xs: 11px;--font-size-sm: 13px;--font-size-base: 14px;--font-size-md: 16px;--font-size-lg: 18px;--font-size-xl: 24px;--font-size-2xl: 32px;--font-size-3xl: 48px;--font-size-4xl: 64px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--spacing-2xl: 48px;--spacing-3xl: 64px;--spacing-4xl: 96px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--radius-2xl: 24px;--transition-fast: .15s ease;--transition-base: .3s ease;--transition-slow: .5s ease}@media(max-width:768px){:root{--font-size-4xl: 40px;--font-size-3xl: 32px;--font-size-2xl: 24px;--font-size-xl: 20px}}@media(max-width:480px){:root{--font-size-4xl: 32px;--font-size-3xl: 28px}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.6;color:var(--text-primary);background-color:var(--bg-primary);min-height:100vh;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{width:100%;min-height:100vh;display:flex;flex-direction:column}main{flex:1}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:var(--text-primary)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-2xl)}h3{font-size:var(--font-size-xl)}h4{font-size:var(--font-size-lg);font-weight:600}p{color:var(--text-secondary);margin-bottom:var(--spacing-md)}a{color:var(--accent-teal);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent-teal-dark)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}.section{padding:var(--spacing-3xl) 0}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,var(--accent-teal),var(--accent-teal-dark));border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--accent-teal)}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(8px)}60%{transform:translateY(4px)}}.animate-fade-in{animation:fadeIn .6s ease forwards}.animate-fade-in-delay-1{animation:fadeIn .6s ease .1s forwards;opacity:0}.animate-fade-in-delay-2{animation:fadeIn .6s ease .2s forwards;opacity:0}.animate-fade-in-delay-3{animation:fadeIn .6s ease .3s forwards;opacity:0}.glass-card{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-xl)}.header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:var(--spacing-md) 0;transition:all var(--transition-base)}.header.scrolled{background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--glass-border)}.header-content{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}.header-brand{display:flex;align-items:center;gap:var(--spacing-md)}.header-brand a{display:flex;align-items:center}.logo{height:32px;width:auto}.brand-divider{width:1px;height:24px;background:var(--glass-border)}.brand-name{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary)}.tutorial-name{font-size:var(--font-size-md);font-weight:500;color:var(--text-secondary)}.nav-links{display:flex;list-style:none;gap:var(--spacing-xl)}.nav-links a{color:var(--text-secondary);font-size:var(--font-size-sm);font-weight:500;transition:color var(--transition-fast)}.nav-links a:hover{color:var(--text-primary)}.nav-links a.back-link{display:flex;align-items:center;gap:var(--spacing-xs)}.nav-links a.back-link svg{width:16px;height:16px}.footer{padding:var(--spacing-2xl) 0;background:var(--bg-primary);border-top:1px solid rgba(169,221,211,.1)}.footer-content{display:flex;align-items:center;justify-content:space-between;max-width:1200px;margin:0 auto;padding:0 var(--spacing-lg)}.footer-logo{height:24px;width:auto;opacity:.6;transition:opacity var(--transition-fast)}.footer-logo:hover{opacity:1}.footer-links{display:flex;gap:var(--spacing-xl);align-items:center}.footer-links a{color:var(--text-secondary);font-size:var(--font-size-sm);display:flex;align-items:center;gap:var(--spacing-xs);transition:color var(--transition-fast)}.footer-links a:hover{color:var(--text-primary)}.footer-links svg{width:16px;height:16px}.footer-copyright{font-size:var(--font-size-xs);color:var(--text-secondary);opacity:.6}@media(max-width:768px){.header{padding:0}.header-content{flex-direction:column;align-items:stretch;padding:0;gap:0}.header-brand{padding:var(--spacing-sm) var(--spacing-md);justify-content:center}.brand-divider,.brand-name,.tutorial-name{display:none}.header-content nav{border-top:1px solid var(--glass-border);overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.header-content nav::-webkit-scrollbar{display:none}.nav-links{gap:0;padding:0 var(--spacing-sm);flex-wrap:nowrap;white-space:nowrap}.nav-links li{flex-shrink:0}.nav-links a{display:flex;align-items:center;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-xs);position:relative}.nav-links a.back-link{padding-left:var(--spacing-sm)}.nav-links a.back-link svg{width:14px;height:14px}.footer-content{flex-direction:column;gap:var(--spacing-lg);text-align:center}.footer-links{flex-wrap:wrap;justify-content:center}}.section-title{text-align:center;margin-bottom:var(--spacing-2xl)}.section-title h2{margin-bottom:var(--spacing-sm)}.section-title p{font-size:var(--font-size-md);max-width:600px;margin:0 auto}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-family);font-size:var(--font-size-base);font-weight:500;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-base);white-space:nowrap}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,var(--accent-teal),var(--accent-teal-dark));color:var(--bg-primary);box-shadow:0 4px 15px #a9ddd34d}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #a9ddd366}.btn-outline{background:transparent;border:1px solid var(--glass-border);color:var(--text-primary)}.btn-outline:hover:not(:disabled){background:#a9ddd31a;border-color:var(--accent-teal)}.btn-sm{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--font-size-sm)}@keyframes drawPath{to{stroke-dashoffset:0}}@keyframes pulse{0%,to{opacity:1;box-shadow:0 0 #a9ddd366}50%{opacity:.8;box-shadow:0 0 0 10px #a9ddd300}}@keyframes fadeIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}@keyframes glow{0%,to{filter:drop-shadow(0 0 5px currentColor)}50%{filter:drop-shadow(0 0 15px currentColor)}}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-3xl) var(--spacing-lg);padding-top:calc(var(--spacing-3xl) + 80px);background:radial-gradient(ellipse at center top,rgba(232,196,143,.05) 0%,transparent 50%)}.hero-content{text-align:center;max-width:900px}.hero-badge{display:inline-flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-md);background:#e8c48f1a;border:1px solid rgba(232,196,143,.3);border-radius:20px;font-size:var(--font-size-sm);color:var(--accent-tan);margin-bottom:var(--spacing-lg)}.hero h1{margin-bottom:var(--spacing-lg);background:linear-gradient(135deg,var(--text-primary) 0%,var(--accent-tan) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero-tagline{font-size:var(--font-size-lg);color:var(--text-secondary);margin-bottom:var(--spacing-xl);max-width:700px;margin-left:auto;margin-right:auto}.hero-cta{display:flex;gap:var(--spacing-md);justify-content:center;flex-wrap:wrap;margin-bottom:var(--spacing-xl)}.hero-diagram{margin-top:var(--spacing-lg)}.consistency-mini-viz{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.bank-scenario{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg) var(--spacing-xl);background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-xl)}.bank-action{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-md);transition:all .3s ease}.bank-action.active{background:#a9ddd333;animation:pulse 1s infinite}.action-icon{font-size:1.5rem}.action-text{font-weight:500;color:var(--text-primary)}.bank-arrow{font-size:1.5rem;color:var(--text-secondary)}.bank-result{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs)}.result-label{font-size:var(--font-size-sm);color:var(--text-secondary)}.result-value{font-size:2rem;font-weight:700;font-family:var(--font-mono);color:var(--accent-teal);transition:all .3s ease}.result-value.stale{color:var(--accent-tan)}.hero-consistency-hint{font-size:var(--font-size-sm);color:var(--text-secondary);padding:var(--spacing-xs) var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-md);min-height:28px;transition:all .3s ease}.hero-consistency-hint.warning{color:var(--accent-tan);background:#e8c48f1a}.hero-consistency-hint.success{color:var(--accent-teal);background:#a9ddd31a}.demo-section{padding:var(--spacing-3xl) 0}.demo-layout-simple{display:flex;flex-direction:column;gap:var(--spacing-xl)}.demo-controls{display:flex;flex-wrap:wrap;gap:var(--spacing-lg);align-items:flex-end;justify-content:center;padding:var(--spacing-lg);background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg)}.control-group{display:flex;flex-direction:column;gap:var(--spacing-sm)}.control-label{font-size:var(--font-size-xs);font-weight:600;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.consistency-tabs{display:flex;gap:var(--spacing-xs);background:var(--bg-tertiary);padding:4px;border-radius:var(--radius-md)}.consistency-tab{padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:none;border-radius:var(--radius-sm);font-size:var(--font-size-sm);font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.consistency-tab:hover{color:var(--text-primary);background:#ffffff0d}.consistency-tab.active{background:var(--accent-teal);color:var(--bg-primary)}.actions-group{flex-direction:row;align-items:center;gap:var(--spacing-sm)}.btn-secondary{background:var(--bg-tertiary);border:1px solid var(--glass-border);color:var(--text-primary)}.btn-secondary:hover:not(:disabled){background:#a9ddd31a;border-color:var(--accent-teal)}.btn-icon{font-weight:700}.chain-visualization{display:flex;flex-direction:column;gap:var(--spacing-xl);padding:var(--spacing-xl);background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg)}.chain-section{display:flex;flex-direction:column;gap:var(--spacing-md)}.chain-label{display:flex;align-items:center;justify-content:space-between}.label-text{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary)}.block-count{font-size:var(--font-size-xs);color:var(--text-secondary);font-family:var(--font-mono)}.blockchain{display:flex;align-items:center;gap:0;padding:var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-md);overflow-x:auto;min-height:80px}.block-wrapper{display:flex;align-items:center;flex-shrink:0}.chain-connector{width:24px;height:2px;background:var(--accent-teal);opacity:.5}.chain-connector.missed{background:var(--accent-rose);opacity:.3;border-style:dashed}.block{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:100px;padding:var(--spacing-sm) var(--spacing-md);background:linear-gradient(135deg,#a9ddd333,#a9ddd31a);border:2px solid rgba(169,221,211,.3);border-radius:var(--radius-md);transition:all var(--transition-fast)}.block.genesis{background:linear-gradient(135deg,#e8c48f33,#e8c48f1a);border-color:#e8c48f4d}.block.head{border-color:var(--accent-teal);box-shadow:0 0 15px #a9ddd34d}.block.stale-head{border-color:var(--accent-tan)}.block.missed{opacity:.4;background:linear-gradient(135deg,#d39da933,#d39da91a);border-color:#d39da94d;border-style:dashed}.block-id{font-size:10px;font-family:var(--font-mono);color:var(--text-secondary);margin-bottom:2px}.block-label{font-size:var(--font-size-xs);font-weight:500;color:var(--text-primary);white-space:nowrap}.head-badge{position:absolute;top:-8px;right:-8px;padding:2px 6px;background:var(--accent-teal);color:var(--bg-primary);font-size:9px;font-weight:700;border-radius:4px}.block.missed .head-badge{background:var(--accent-rose)}.missed-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:#00000080;border-radius:var(--radius-md);font-size:10px;color:var(--accent-rose);font-weight:600}.chain-divider{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) 0}.divider-line{flex:1;height:1px;background:linear-gradient(90deg,transparent,var(--glass-border),transparent)}.divider-label{font-size:var(--font-size-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.result-section .blockchain{background:#0000004d}.result-chain{min-height:100px}.empty-result,.empty-chain{display:flex;align-items:center;justify-content:center;width:100%;color:var(--text-secondary);font-size:var(--font-size-sm);font-style:italic}.read-annotation{text-align:center;font-size:var(--font-size-sm);padding:var(--spacing-sm);border-radius:var(--radius-sm);min-height:24px}.read-annotation.success{color:var(--accent-teal);background:#a9ddd31a}.read-annotation.warning{color:var(--accent-tan);background:#e8c48f1a}.btn-reset{width:100%;margin-top:auto}.timeline-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);overflow:hidden}.timeline-panel .panel-header{flex-wrap:wrap;gap:var(--spacing-sm)}.balance-display{font-size:var(--font-size-md)}.balance-display strong{color:var(--accent-teal);font-size:var(--font-size-lg)}.timeline-legend{display:flex;gap:var(--spacing-md);font-size:var(--font-size-xs);color:var(--text-secondary)}.legend-item{display:flex;align-items:center;gap:var(--spacing-xs)}.legend-dot{width:10px;height:10px;border-radius:50%}.legend-dot.write{background:#6bff6b}.legend-dot.read{background:#6b9fff}.legend-dot.propagate{background:#e8c48f}.legend-dot.stale{background:#d39da9}.timeline-content{padding:0}.timeline-container{width:100%;height:420px;overflow-x:auto;overflow-y:hidden;background:var(--bg-primary)}.timeline-svg{min-width:800px;height:420px}.lane-bg{fill:transparent}.lane-bg.even{fill:#ffffff05}.lane-bg.odd{fill:#0000001a}.lane-label{font-size:12px;font-weight:600;font-family:var(--font-family)}.lane-line{stroke-dasharray:2 4}.timeline-event path{filter:drop-shadow(0 0 3px currentColor)}.timeline-event circle{transition:r .2s ease}.timeline-event:hover circle{r:8}.event-annotation{font-size:11px;font-family:var(--font-family);font-weight:500}.event-annotation.stale{fill:#d39da9!important}.nodes-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);overflow:hidden}.node-states{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--spacing-xs)}.node-state-card{background:var(--bg-tertiary);border-radius:var(--radius-md);padding:var(--spacing-sm);text-align:center;transition:all var(--transition-fast)}.node-state-card:hover{background:#a9ddd31a}.node-state-header{display:flex;flex-direction:column;gap:2px;margin-bottom:var(--spacing-xs)}.node-state-label{font-size:var(--font-size-sm);font-weight:600;color:var(--text-primary)}.node-state-label.leader{color:var(--accent-teal)}.node-state-role{font-size:10px;color:var(--text-secondary)}.node-state-balance{font-size:var(--font-size-lg);font-weight:700;font-family:var(--font-mono);color:var(--accent-teal)}.how-it-works{background:var(--bg-secondary)}.consistency-levels-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md);margin-top:var(--spacing-xl)}.consistency-levels-grid.six-cards{grid-template-columns:repeat(3,1fr)}.consistency-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);transition:all var(--transition-base);position:relative;overflow:hidden}.consistency-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #0006}.consistency-card.strong{border-top:3px solid var(--accent-teal)}.consistency-card.eventual{border-top:3px solid var(--accent-rose)}.consistency-card.consistent-prefix{border-top:3px solid #8fcdbd}.consistency-card.bounded-staleness{border-top:3px solid #b8d4a8}.consistency-card.monotonic-reads{border-top:3px solid var(--accent-tan)}.consistency-card.read-my-writes{border-top:3px solid #d4b896}.consistency-card-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.consistency-card-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);font-size:18px}.consistency-card.strong .consistency-card-icon{background:#a9ddd333}.consistency-card.eventual .consistency-card-icon{background:#d39da933}.consistency-card.consistent-prefix .consistency-card-icon{background:#8fcdbd33}.consistency-card.bounded-staleness .consistency-card-icon{background:#b8d4a833}.consistency-card.monotonic-reads .consistency-card-icon{background:#e8c48f33}.consistency-card.read-my-writes .consistency-card-icon{background:#d4b89633}.consistency-card h4{font-size:var(--font-size-md);margin:0}.consistency-card-viz{margin:var(--spacing-md) 0;padding:var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-md);overflow:hidden}.consistency-viz{width:100%;height:auto;display:block}.consistency-viz .node-label{font-size:10px;font-family:var(--font-family);fill:var(--text-secondary)}.consistency-viz .node-label.session-owner{fill:var(--accent-teal);font-weight:600}.consistency-viz .node-line{stroke:var(--glass-border);stroke-width:2}.consistency-viz .node-line-primary{stroke:var(--accent-teal);stroke-width:2}.consistency-viz .block{stroke:none;transition:opacity .3s ease}.consistency-viz .block-synced{fill:var(--accent-teal)}.consistency-viz .block-new{fill:var(--accent-teal);animation:blockPulse 2s ease-in-out infinite}.consistency-viz .block-stale{fill:var(--text-secondary);opacity:.3}.consistency-viz .block-num{font-size:10px;font-family:var(--font-mono);fill:var(--bg-primary);text-anchor:middle;dominant-baseline:middle}.consistency-viz .block-num-stale{fill:var(--text-secondary)}.consistency-viz .sync-label{font-size:9px;font-family:var(--font-family);fill:var(--accent-teal)}.consistency-viz .eventual-label{fill:var(--accent-rose)}.consistency-viz .prefix-label{fill:#8fcdbd}.consistency-viz .bounded-label{fill:#b8d4a8}.consistency-viz .monotonic-label{fill:var(--accent-tan)}.consistency-viz .rmw-label{fill:#d4b896}.consistency-viz .monotonic-arrow{stroke:var(--accent-tan);stroke-width:2;stroke-dasharray:4 2;fill:none}.linearizable-block-1{animation:blockAppear 4s ease-in-out infinite}.linearizable-block-2{animation:blockAppear 4s ease-in-out infinite 1s}.linearizable-block-3{animation:blockAppear 4s ease-in-out infinite 2s}.causal-block-a1{animation:blockAppear 6s ease-in-out infinite}.causal-block-b1{animation:blockAppear 6s ease-in-out infinite .2s}.causal-block-c1{animation:blockAppear 6s ease-in-out infinite .4s}.causal-block-a2{animation:blockAppear 6s ease-in-out infinite 1.5s}.causal-block-b2{animation:blockAppear 6s ease-in-out infinite 1.7s}.causal-block-c2{animation:blockAppear 6s ease-in-out infinite 1.9s}.causal-arrow-1{animation:arrowAppear 6s ease-in-out infinite 1.3s}.causal-arrow-2{animation:arrowAppear 6s ease-in-out infinite 1.5s}.causal-arrow-3{animation:arrowAppear 6s ease-in-out infinite 1.7s}.session-block-own{animation:blockAppear 5s ease-in-out infinite}.session-block-b{animation:blockAppear 5s ease-in-out infinite .5s}.session-block-c{animation:blockAppear 5s ease-in-out infinite 1s}.eventual-missing{animation:stalePulse 2s ease-in-out infinite}.eventual-q{animation:questionPulse 2s ease-in-out infinite}@keyframes blockAppear{0%,10%{opacity:0}20%,80%{opacity:1}90%,to{opacity:0}}@keyframes blockPulse{0%,to{opacity:1}50%{opacity:.7}}@keyframes arrowAppear{0%,20%{opacity:0}30%,70%{opacity:1}80%,to{opacity:0}}@keyframes stalePulse{0%,to{opacity:.2}50%{opacity:.4}}@keyframes questionPulse{0%,to{opacity:.3}50%{opacity:.6}}.consistency-card-description{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--spacing-md);line-height:1.5}.consistency-card-traits{display:flex;flex-direction:column;gap:var(--spacing-xs)}.trait{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--font-size-xs);color:var(--text-secondary)}.trait-icon{width:16px;height:16px;display:flex;align-items:center;justify-content:center}.trait-icon.good{color:var(--accent-teal)}.trait-icon.bad{color:var(--accent-rose)}.trait-icon.neutral{color:var(--accent-tan)}.consistency-card-section{margin-bottom:var(--spacing-sm)}.consistency-card-section:last-child{margin-bottom:0}.section-label{display:block;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);margin-bottom:var(--spacing-xs);opacity:.7}.consistency-card-section.guarantees .trait-icon.good{color:var(--accent-teal)}.consistency-card-section.anomalies .section-label{color:var(--accent-rose)}.tradeoff-spectrum{margin-top:var(--spacing-2xl);padding:var(--spacing-xl);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg)}.spectrum-header{text-align:center;margin-bottom:var(--spacing-lg)}.spectrum-header h4{margin-bottom:var(--spacing-xs)}.spectrum-header p{font-size:var(--font-size-sm);color:var(--text-secondary)}.spectrum-bar{position:relative;height:8px;background:linear-gradient(90deg,var(--accent-teal) 0%,var(--accent-tan) 50%,var(--accent-rose) 100%);border-radius:4px;margin:var(--spacing-lg) 0}.spectrum-labels{display:flex;justify-content:space-between;font-size:var(--font-size-xs);color:var(--text-secondary)}.spectrum-visualization{display:flex;align-items:stretch;gap:0;margin-top:var(--spacing-lg)}.spectrum-endpoint{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md);min-width:100px;text-align:center}.spectrum-endpoint.strongest{background:linear-gradient(180deg,rgba(169,221,211,.2) 0%,transparent 100%);border-radius:var(--radius-lg) 0 0 var(--radius-lg)}.spectrum-endpoint.weakest{background:linear-gradient(180deg,rgba(211,157,169,.2) 0%,transparent 100%);border-radius:0 var(--radius-lg) var(--radius-lg) 0}.endpoint-marker{width:16px;height:16px;border-radius:50%}.spectrum-endpoint.strongest .endpoint-marker{background:var(--accent-teal);box-shadow:0 0 12px #a9ddd380}.spectrum-endpoint.weakest .endpoint-marker{background:var(--accent-rose);box-shadow:0 0 12px #d39da980}.spectrum-endpoint span{font-size:var(--font-size-sm);color:var(--text-primary)}.endpoint-desc{font-size:var(--font-size-xs)!important;color:var(--text-secondary)!important}.spectrum-middle-zone{flex:1;display:flex;flex-direction:column;padding:var(--spacing-md);background:linear-gradient(180deg,rgba(232,196,143,.1) 0%,transparent 100%);position:relative}.middle-zone-bar{height:8px;background:linear-gradient(90deg,var(--accent-teal) 0%,rgba(184,212,168,.8) 15%,rgba(232,196,143,.6) 50%,rgba(212,184,150,.8) 85%,var(--accent-rose) 100%);border-radius:4px;margin-bottom:var(--spacing-md)}.middle-zone-items{display:flex;justify-content:space-around;flex-wrap:wrap;gap:var(--spacing-sm)}.middle-item{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--glass-border);font-size:var(--font-size-xs);text-align:center;transition:all var(--transition-fast)}.middle-item:hover{transform:translateY(-2px);border-color:var(--accent-tan)}.middle-item.bounded-staleness{border-top:2px solid #b8d4a8}.middle-item.consistent-prefix{border-top:2px solid #8fcdbd}.middle-item.monotonic-reads{border-top:2px solid var(--accent-tan)}.middle-item.read-my-writes{border-top:2px solid #d4b896}.middle-zone-note{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:#e8c48f1a;border-left:3px solid var(--accent-tan);font-size:var(--font-size-xs);color:var(--text-secondary);font-style:italic;text-align:center}@media(max-width:900px){.spectrum-visualization{flex-direction:column;gap:var(--spacing-md)}.spectrum-endpoint{flex-direction:row;justify-content:center;border-radius:var(--radius-lg);min-width:auto}.spectrum-endpoint.strongest{background:linear-gradient(90deg,rgba(169,221,211,.2) 0%,transparent 100%)}.spectrum-endpoint.weakest{background:linear-gradient(90deg,transparent 0%,rgba(211,157,169,.2) 100%)}.spectrum-middle-zone{border-radius:var(--radius-lg)}.middle-zone-items{justify-content:center}}@media(max-width:600px){.middle-zone-items{flex-direction:column;align-items:center}.middle-item{width:100%;max-width:200px}}.comparison-section{background:var(--bg-secondary)}.comparison-table-wrapper{overflow-x:auto;margin-top:var(--spacing-xl)}.comparison-table{width:100%;border-collapse:collapse;font-size:var(--font-size-sm)}.comparison-table th,.comparison-table td{padding:var(--spacing-md);text-align:left;border-bottom:1px solid var(--glass-border)}.comparison-table th{background:var(--bg-tertiary);font-weight:600;color:var(--text-primary);position:sticky;top:0}.comparison-table th:first-child{border-radius:var(--radius-md) 0 0 0}.comparison-table th:last-child{border-radius:0 var(--radius-md) 0 0}.comparison-table td{color:var(--text-secondary)}.comparison-table tr:hover td{background:#a9ddd30d}.comparison-table .level-name{font-weight:600;color:var(--text-primary)}.comparison-table .level-name.strong{color:var(--accent-teal)}.comparison-table .level-name.bounded-staleness{color:#b8d4a8}.comparison-table .level-name.consistent-prefix{color:#8fcdbd}.comparison-table .level-name.monotonic-reads{color:var(--accent-tan)}.comparison-table .level-name.read-my-writes{color:#d4b896}.comparison-table .level-name.eventual{color:var(--accent-rose)}.rating{display:flex;gap:4px}.rating-dot{width:10px;height:10px;border-radius:50%;background:var(--bg-tertiary);border:1px solid var(--glass-border)}.rating-dot.filled{background:var(--accent-teal);border-color:var(--accent-teal)}.rating-dot.filled.medium{background:var(--accent-tan);border-color:var(--accent-tan)}.rating-dot.filled.low{background:var(--accent-rose);border-color:var(--accent-rose)}.rialo-callout{margin-top:var(--spacing-2xl);padding:var(--spacing-xl);background:linear-gradient(135deg,#a9ddd31a,#e8c48f1a);border:1px solid var(--glass-border);border-radius:var(--radius-lg)}.rialo-callout h4{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);color:var(--accent-teal)}.rialo-callout p{color:var(--text-secondary);line-height:1.6;margin-bottom:var(--spacing-md)}.rialo-callout p:last-child{margin-bottom:0}.further-reading{margin-top:var(--spacing-2xl);padding:var(--spacing-xl);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg)}.further-reading h3{margin-bottom:var(--spacing-sm);color:var(--text-primary)}.further-reading>p{color:var(--text-secondary);margin-bottom:var(--spacing-lg)}.reading-list{display:flex;flex-direction:column;gap:var(--spacing-md)}.reading-item{display:flex;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-tertiary);border:1px solid transparent;border-radius:var(--radius-md);text-decoration:none;transition:all var(--transition-base)}.reading-item:hover{border-color:var(--accent-teal);background:#a9ddd30d;transform:translate(4px)}.reading-icon{font-size:1.5rem;flex-shrink:0;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:#a9ddd31a;border-radius:var(--radius-md)}.reading-content{display:flex;flex-direction:column;gap:4px}.reading-title{font-weight:600;color:var(--text-primary);font-size:var(--font-size-base)}.reading-item:hover .reading-title{color:var(--accent-teal)}.reading-author{font-size:var(--font-size-sm);color:var(--accent-tan)}.reading-desc{font-size:var(--font-size-sm);color:var(--text-secondary);line-height:1.5}@media(max-width:768px){.reading-item{flex-direction:column;gap:var(--spacing-sm)}.reading-icon{width:36px;height:36px;font-size:1.25rem}}@media(max-width:1200px){.demo-layout-timeline{grid-template-columns:260px 1fr}.consistency-levels-grid,.consistency-levels-grid.six-cards{grid-template-columns:repeat(2,1fr)}.spectrum-labels.six-labels{font-size:var(--font-size-xs)}.spectrum-labels.six-labels span{text-align:center}}@media(max-width:900px){.demo-layout-timeline{grid-template-columns:1fr;grid-template-rows:auto auto auto}.timeline-controls{grid-row:1;flex-direction:row;flex-wrap:wrap}.timeline-controls>*{flex:1;min-width:200px}.timeline-panel{grid-column:1;grid-row:2}.nodes-panel{grid-column:1;grid-row:3}.node-states{grid-template-columns:repeat(3,1fr)}}@media(max-width:768px){.container{padding:0 var(--spacing-md)}.section{padding:var(--spacing-2xl) 0}.consistency-levels-grid{grid-template-columns:1fr}.timeline-controls{flex-direction:column}.timeline-controls>*{min-width:100%}.node-states{grid-template-columns:repeat(2,1fr)}.timeline-container{height:350px}}@media(max-width:480px){.hero h1{font-size:var(--font-size-2xl)}.read-buttons-row{grid-template-columns:1fr 1fr}.timeline-legend{flex-wrap:wrap;gap:var(--spacing-xs)}}
