*{margin:0;padding:0;box-sizing:border-box}html{height:100%}body{font-family:"EB Garamond",serif;background:var(--bg-primary);color:var(--text-primary);min-height:100vh;display:flex;flex-direction:column;width:100%;margin:0;overflow-x:clip;padding:0}header{padding:2rem;display:flex;justify-content:center}.header-inner{position:relative;width:650px;max-width:100%;display:flex;justify-content:center;align-items:center}.hero{flex:1;display:flex;align-items:flex-start;justify-content:center;padding:3rem 2rem 2rem;text-align:center}.hero-content{width:650px;max-width:100%}.hero h1{font-size:clamp(2.5rem, 8vw, 4.5rem);font-weight:700;letter-spacing:-.04em;line-height:1.05;margin-bottom:1.5rem}.hero p{font-size:clamp(1rem, 2.5vw, 1.5rem);font-weight:400;color:var(--text-secondary);margin-bottom:3rem;line-height:1.4}.cta-buttons{display:flex;gap:.5rem;justify-content:center}.cta-buttons .btn{flex:1;padding-left:0;padding-right:0}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}.feature{text-align:left}.feature h2{font-size:1rem;font-weight:600;margin-bottom:.5rem}.feature p{font-size:.875rem;color:var(--text-secondary);margin:0}.landing-blurb{text-align:left}.landing-blurb p{font-size:1.125rem;line-height:1.75;color:var(--text-secondary);margin:0}.landing-blurb a{color:var(--text-primary);text-decoration:underline;text-underline-offset:3px;text-decoration-color:var(--border-medium);transition:text-decoration-color .2s}.landing-blurb a:hover{text-decoration-color:var(--text-primary)}.landing-pricing{display:flex;border:1px solid var(--border-light)}.landing-plan{flex:1;padding:2rem 1.5rem;text-align:center;border-right:1px solid var(--border-light)}.landing-plan:last-child{border-right:none}.plan-label{display:block;font-family:monospace;font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:var(--text-tertiary);margin-bottom:.75rem}.plan-price{display:block;font-size:2.5rem;font-weight:700;line-height:1;margin-bottom:1rem}.plan-price small{font-size:.9rem;font-weight:400;color:var(--text-tertiary)}.landing-plan p{font-size:.875rem;color:var(--text-secondary);line-height:1.5;margin:0}.landing-plan-accent{background:var(--bg-secondary)}.landing-links-grid{display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--border-light)}.landing-link-item{display:block;padding:1.25rem 1.5rem;text-decoration:none;border-bottom:1px solid var(--border-light);transition:background .15s}.landing-link-item:nth-child(odd){border-right:1px solid var(--border-light)}.landing-link-item:hover{background:var(--bg-secondary)}.link-title{display:block;font-size:1rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem}.link-desc{display:block;font-size:.8rem;color:var(--text-secondary);line-height:1.4}.block-scroll-wrapper{margin-top:1rem;position:relative;display:flex;flex-direction:column;gap:.4rem}.block-scroll-wrapper::after,.block-scroll-wrapper::before{content:'';position:absolute;top:0;bottom:2rem;width:3.5rem;z-index:2;pointer-events:none}.block-scroll-wrapper::before{left:0;background:linear-gradient(to right,var(--bg-primary),transparent)}.block-scroll-wrapper::after{right:0;background:linear-gradient(to left,var(--bg-primary),transparent)}.block-scroll{overflow:hidden;padding:2px 0}.block-scroll-track{display:flex;gap:.4rem;width:max-content;animation:marquee-left 60s linear infinite;will-change:transform}@keyframes marquee-left{from{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes marquee-right{from{transform:translateX(-50%)}to{transform:translateX(0)}}@media (prefers-reduced-motion:reduce){.block-scroll-track{animation-play-state:paused}}.showcase-block{border:1px solid var(--border-light);padding:.85rem .75rem;background:var(--bg-primary);flex-shrink:0;display:flex;align-items:center;gap:.5rem;transition:border-color .2s,transform .2s;overflow:hidden}.showcase-block:hover{border-color:var(--border-medium);transform:translateY(-1px)}.showcase-block-label{display:flex;align-items:center;gap:.3rem;font-family:monospace;font-size:.6rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);white-space:nowrap;flex-shrink:0}.showcase-block-label svg{flex-shrink:0;color:var(--text-secondary);width:12px;height:12px}.showcase-block-content{font-size:.75rem;line-height:1.4;color:var(--text-primary);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.showcase-heading{font-size:.8rem;font-weight:600}.showcase-subheading{font-size:.8rem;font-weight:500;color:var(--text-secondary)}.showcase-code .showcase-block-content{background:var(--bg-secondary,#f5f5f5);padding:.2rem .5rem;overflow:hidden;white-space:nowrap}.showcase-code pre{margin:0}.showcase-code code{font-family:monospace;font-size:.7rem;line-height:1.3;color:var(--text-primary);white-space:nowrap}.code-keyword{color:#8959a8}.code-fn{color:#4271ae}.dark-mode .code-keyword{color:#c792ea}.dark-mode .code-fn{color:#82aaff}.showcase-math .showcase-block-content{text-align:center;padding:0}.math-equation{font-family:"EB Garamond",Georgia,serif;font-style:italic;font-size:1rem;letter-spacing:.02em}.showcase-image-placeholder{display:flex;align-items:center;gap:.3rem;padding:0;border:none;color:var(--text-secondary)}.showcase-image-placeholder svg{width:16px;height:16px}.showcase-image-placeholder span{font-family:monospace;font-size:.65rem;letter-spacing:.02em;white-space:nowrap}.showcase-quote{margin:0;padding-left:.5rem;border-left:2px solid var(--border-medium);font-style:italic;font-size:.75rem;line-height:1.3;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.showcase-table-example{border-collapse:collapse;font-size:.65rem;white-space:nowrap}.showcase-table-example td,.showcase-table-example th{padding:.15rem .35rem;border:1px solid var(--border-light);text-align:left}.showcase-table-example th{font-weight:600;font-size:.6rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-secondary)}.showcase-list-items{display:flex;gap:.5rem;list-style:none;padding:0;margin:0;font-size:.7rem;white-space:nowrap;color:var(--text-primary)}.showcase-list-items li::before{content:'•';margin-right:.25rem;color:var(--text-secondary)}.blocks-divider{display:flex;align-items:center;gap:1rem;margin:3rem 0}.blocks-divider::after,.blocks-divider::before{content:'';flex:1;height:1px;background:var(--border-light)}.blocks-divider span{font-size:.8rem;font-family:monospace;letter-spacing:.04em;color:var(--text-tertiary);white-space:normal;overflow:hidden;text-overflow:ellipsis;min-width:0;text-align:center}.showcase-note-info{background:#e8f4fd;border-left:3px solid #2196f3;padding:.2rem .5rem;font-size:.7rem;color:#1565c0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.dark-mode .showcase-note-info{background:#0d2137;border-color:#42a5f5;color:#90caf9}.showcase-timeline{display:flex;align-items:center;gap:.4rem;font-size:.7rem;white-space:nowrap}.showcase-timeline-dot{width:8px;height:8px;background:var(--accent,#4a90d9);flex-shrink:0}.showcase-timeline-date{font-weight:600;color:var(--accent,#4a90d9)}.showcase-compare{display:flex;gap:.5rem;font-size:.65rem;white-space:nowrap}.showcase-compare-col{padding:.2rem .4rem;border:1px solid var(--border-light);line-height:1.4}.showcase-codefile{display:flex;align-items:center;gap:.4rem;font-size:.7rem;white-space:nowrap}.showcase-codefile-tab{background:#2d2d2d;color:#ccc;padding:.1rem .4rem;font-family:monospace;font-size:.6rem}.showcase-codefile code{font-family:monospace;font-size:.65rem;color:var(--text-secondary)}.showcase-proscons{display:flex;gap:.4rem;font-size:.65rem;white-space:nowrap}.showcase-pro{color:#2e7d32;padding:.1rem .3rem;background:#e8f5e9}.showcase-pro::before{content:"\2713 "}.showcase-con{color:#c62828;padding:.1rem .3rem;background:#fde8e8}.showcase-con::before{content:"\2717 "}.dark-mode .showcase-pro{background:#0d2a12;color:#a5d6a7}.dark-mode .showcase-con{background:#2a0d0d;color:#ef9a9a}.showcase-spoiler{font-size:.7rem;color:var(--text-secondary);padding:.2rem .4rem;background:var(--bg-secondary,#f5f5f5);white-space:nowrap;font-style:italic}.showcase-changelog{display:flex;align-items:center;gap:.4rem;font-size:.7rem;white-space:nowrap}.showcase-badge-added{background:#4caf50;color:#fff;padding:.05rem .35rem;font-size:.55rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em}.showcase-pullquote{font-size:.8rem;font-style:italic;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.blocks-tagline{text-align:center;font-size:.95rem;color:var(--text-secondary);margin-top:3rem;margin-bottom:0}.fade-in{transition:opacity .6s ease,transform .6s ease}.fade-in.fade-hidden{opacity:0;transform:translateY(16px)}.fade-in.visible{opacity:1;transform:translateY(0)}.social-login{margin-bottom:24px}.social-buttons{display:flex;gap:10px}.btn-social{flex:1;display:flex;align-items:center;justify-content:center;gap:10px;padding:11px 16px;border:1px solid var(--border-light);background:var(--bg-primary);color:var(--text-primary);font-size:.95em;font-family:inherit;text-decoration:none;cursor:pointer;transition:border-color .15s,background .15s}.btn-social:visited{color:var(--text-primary)}.btn-social:hover{border-color:var(--border-strong);background:var(--bg-secondary)}.social-icon{flex-shrink:0;color:var(--text-primary)}.social-divider{display:flex;align-items:center;gap:1rem;margin-top:20px}.social-divider::after,.social-divider::before{content:'';flex:1;height:1px;background:var(--border-light)}.social-divider span{font-size:.8em;color:var(--text-tertiary);text-transform:lowercase}.auth-page{flex:1;display:flex;align-items:center;justify-content:center;padding:2rem}.auth-container{width:650px;max-width:100%;padding:40px 60px;text-align:center}.auth-container h1{margin-bottom:10px;font-size:2.5em}.auth-container .subtitle{color:var(--text-secondary);margin-bottom:40px;font-size:1.1em}.auth-container .tab-group{margin-bottom:30px}.auth-form{display:none}.auth-form.active{display:block}.auth-container .form-group{text-align:left}.auth-container .form-group label{color:var(--text-secondary)}.auth-container .form-group input{padding:12px}.auth-container .form-group-checkbox label{display:flex;align-items:baseline;gap:.5em;font-size:.9em;cursor:pointer;color:var(--text-secondary)}.auth-container .form-group-checkbox input[type=checkbox]{-webkit-appearance:none;appearance:none;width:15px;height:15px;border:1.5px solid var(--border-strong);background:0 0;flex-shrink:0;position:relative;top:2px;cursor:pointer;padding:0;margin:0}.auth-container .form-group-checkbox input[type=checkbox]:checked{background:var(--text-primary);border-color:var(--text-primary)}.auth-container .form-group-checkbox input[type=checkbox]:checked::after{content:'';position:absolute;left:3.5px;top:.5px;width:4px;height:8px;border:solid var(--bg-primary,#fff);border-width:0 1.5px 1.5px 0;transform:rotate(45deg)}.auth-container .form-group-checkbox a{color:var(--link-color)}.auth-container .form-group-checkbox a:hover{color:var(--link-hover)}.auth-form .btn{margin-top:10px}.button-loader{display:inline-block}.error-message{color:var(--danger);font-size:.9em;margin-top:10px;display:none}.error-message.show{display:block}.info-text{margin-top:30px;color:var(--text-secondary);font-size:.95em;line-height:1.6}.auth-heading{text-align:center;margin-bottom:10px;color:var(--text-primary)}.auth-description{text-align:center;color:var(--text-secondary);margin-bottom:30px;font-size:14px}.auth-link{color:var(--link-color);text-decoration:none;font-size:14px}.auth-link:hover{color:var(--link-hover)}.why-pluma{max-width:560px;margin:3rem auto 0;text-align:center}.why-pluma h2{font-size:1.6rem;margin-bottom:1rem}.why-pluma p{font-size:1rem;line-height:1.7;color:var(--text-secondary);margin-bottom:.75rem}.landing-links{display:flex;justify-content:center;gap:1.5rem;flex-wrap:wrap;margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid var(--border-light)}.landing-links a{font-size:.9rem;color:var(--text-secondary);text-decoration:none}.landing-links a:hover{color:var(--text-primary)}@media (max-width:768px){header{padding:1.5rem 1rem 0 1rem}.header-inner{justify-content:center}.hero{padding:1rem}.hero h1{font-size:2.5rem}.hero p{font-size:1.125rem}.block-scroll-wrapper{margin-top:2rem}.features{grid-template-columns:repeat(2,1fr);gap:1.5rem}.auth-container{padding:30px 30px}.auth-container h1{font-size:2em}.auth-container .tab-group{gap:10px}.auth-container .tab{padding:8px 14px;font-size:1em}}@media (max-width:480px){header{padding:1.5rem 1rem 0}.hero{padding:1rem 1.25rem}.hero h1{font-size:2rem;margin-bottom:.5rem;letter-spacing:-.05em}.hero p{font-size:1.1rem;margin-bottom:2rem;line-height:1.5}.blocks-divider span{white-space:normal;text-align:center;overflow:visible}.block-scroll-wrapper{margin-top:1.5rem;gap:.4rem}.showcase-block{padding:.7rem .85rem}.showcase-block-content{font-size:.8rem}.showcase-code code{font-size:.7rem}.cta-buttons{flex-wrap:wrap;gap:.5rem}.cta-buttons .btn{flex:1 1 45%;padding:.7rem 0}.features{grid-template-columns:repeat(2,1fr);gap:1.25rem}.feature h2{font-size:.95rem;margin-bottom:.25rem}.feature p{font-size:.8rem;line-height:1.4}.landing-blurb p{font-size:1rem}.landing-pricing{flex-direction:column}.landing-plan{border-right:none;border-bottom:1px solid var(--border-light);padding:1.5rem 1rem}.landing-plan:last-child{border-bottom:none}.plan-price{font-size:2rem}.landing-links-grid{grid-template-columns:1fr}.landing-link-item:nth-child(odd){border-right:none}.auth-container{padding:1.5rem .75rem}.auth-container h1{font-size:1.8em}.auth-container .subtitle{margin-bottom:25px;font-size:1em}.auth-container .form-group input{padding:10px;font-size:.95em}}