*{box-sizing:border-box;margin:0;padding:0}body{font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:#fafafa;color:#1a1a1a;line-height:1.6;min-height:100vh;overflow-x:hidden;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.page{min-height:100vh;display:flex;flex-direction:column;max-width:900px;margin:0 auto;padding:2rem 1.5rem}.header{margin-bottom:3rem}.logo{font-size:1.5rem;font-weight:700;color:#1a1a1a;text-decoration:none}.logo span{color:#10b981}.main{flex:1}.title{font-size:2rem;font-weight:700;margin-bottom:.5rem}.tiles+.title{margin-top:3rem}.subtitle{color:#666;margin-bottom:2.5rem}.external-icon{font-size:.85em;opacity:.6;margin-left:.25rem}.tiles{display:grid;gap:1rem}.tile{display:block;background:#fff;border:1px solid #e5e5e5;border-radius:12px;padding:1.5rem;text-decoration:none;color:inherit;transition:border-color .2s,box-shadow .2s}.tile:hover{border-color:#10b981;box-shadow:0 4px 12px #10b98126}.tile-live{border-color:#10b981}.tile-badge{display:inline-block;font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;background:#10b981;color:#fff;padding:.25rem .75rem;border-radius:100px;margin-bottom:.75rem}.tile-badge-soon{background:#e5e5e5;color:#666}.tile-title{font-size:1.25rem;font-weight:600;margin-bottom:.25rem}.tile-desc{color:#666;font-size:.95rem}.tile-note{color:#999;font-size:.8rem;font-style:italic;margin-top:.5rem}.footer{margin-top:4rem;padding-top:2rem;border-top:1px solid #e5e5e5;font-size:.875rem;color:#666}.footer-links{display:flex;gap:1.5rem;margin-bottom:.75rem}.footer-links a{color:#666;text-decoration:none}.footer-links a:hover{color:#10b981}.footer-author a{color:#10b981;text-decoration:none}.footer-author a:hover{text-decoration:underline}.product-page{text-align:center;padding:3rem 0}.product-page h1{font-size:2rem;margin-bottom:1rem}.product-description{color:#666;font-size:1.1rem;margin-bottom:.5rem}.product-page-full{text-align:left}.product-page-full h1{text-align:center}.product-page-full .tile-badge{display:block;text-align:center;width:fit-content;margin:0 auto .75rem}.product-subtitle{text-align:center;color:#444;font-size:1.15rem;max-width:700px;margin:0 auto 2rem;line-height:1.7}.calc-box{background:#fff;border:1px solid #e5e5e5;border-radius:12px;padding:2rem;margin:0 auto 2rem;max-width:600px;box-shadow:0 4px 6px -1px #0000000d}.form-group{margin-bottom:1.25rem}.form-group label{display:flex;align-items:center;gap:.5rem;font-weight:600;font-size:.9rem;margin-bottom:.5rem;color:#333}.info-tooltip{position:relative;display:inline-flex;align-items:center;cursor:help;color:#9ca3af;transition:color .2s}.info-tooltip:hover{color:#10b981}.tooltip-content{position:absolute;bottom:100%;left:50%;transform:translate(-50%);margin-bottom:8px;background:#1a1a1a;color:#fff;padding:.5rem .75rem;border-radius:6px;font-size:.75rem;white-space:normal;width:max-content;max-width:200px;text-align:center;z-index:100;opacity:0;visibility:hidden;transition:opacity .2s,visibility .2s;pointer-events:none;box-shadow:0 4px 6px #0000001a}.tooltip-content:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border-width:5px;border-style:solid;border-color:#1a1a1a transparent transparent transparent}.info-tooltip:hover .tooltip-content{opacity:1;visibility:visible}.result-box{margin-top:2rem;padding-top:1.5rem;border-top:1px solid #e5e5e5;text-align:center}.result-years{font-size:1.25rem;font-weight:600;color:#10b981;margin-bottom:.5rem}.calc-error{margin-top:1rem;padding:.75rem;background:#fef2f2;border:1px solid #fee2e2;border-radius:8px;color:#dc2626;font-size:.9rem;text-align:center}.btn-calc:disabled{background:#a7f3d0;cursor:not-allowed}.chart-container{margin:2rem 0;height:300px;width:100%}.details-toggle{text-align:center;margin:1.5rem 0}.btn-toggle-details{background:none;border:none;color:#10b981;font-size:.9rem;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:.5rem;padding:.5rem 1rem;border-radius:4px;transition:background-color .2s}.btn-toggle-details:hover{background-color:#ecfdf5}.btn-toggle-details .arrow{font-size:.7rem;transition:transform .2s}.btn-toggle-details .arrow.up{transform:rotate(180deg)}.table-responsive{width:100vw;margin-left:calc(50% - 50vw);margin-top:1rem;overflow-x:auto;overflow-y:auto;max-height:80vh;background:#fff;box-shadow:0 4px 6px -1px #0000001a;border-top:1px solid #e5e5e5;border-bottom:1px solid #e5e5e5}.table-responsive::-webkit-scrollbar{height:12px;width:12px}.table-responsive::-webkit-scrollbar-track{background:#f1f1f1}.table-responsive::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:6px;border:3px solid #f1f1f1}.table-responsive::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.data-table{width:100%;border-collapse:separate;border-spacing:0;font-size:.9rem;text-align:right;min-width:800px;margin:0 auto;max-width:1200px}@media(min-width:1250px){.data-table{width:100%;max-width:100%;margin:0}}.data-table th,.data-table td{padding:.75rem 1rem;border-bottom:1px solid #e5e5e5}.data-table th{background:#f9fafb;font-weight:600;color:#374151;text-align:right}.data-table th:first-child,.data-table td:first-child{text-align:left;position:sticky;left:0;background:inherit;z-index:5}.data-table th:first-child{z-index:15}.data-table tr:nth-child(2n) td:first-child{background:#fff}.data-table tr:hover td:first-child,.data-table tr:hover{background:#fdfdfd}.data-table .phase-cell{text-transform:capitalize;font-weight:500}.data-table .val-build{color:#10b981}.data-table .val-consume{color:#f59e0b}.form-group input{width:100%;padding:.75rem;border:1px solid #d1d5db;border-radius:8px;font-size:1rem;font-family:inherit;transition:border-color .2s}.form-group input:focus{outline:none;border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.form-grid{display:grid;gap:1rem}@media(min-width:600px){.form-grid{grid-template-columns:1fr 1fr}}.currency-selector{display:flex;gap:.5rem}.currency-btn{flex:1;padding:.5rem;border:1px solid #e5e5e5;background:#f9fafb;border-radius:6px;cursor:pointer;font-weight:600;color:#666;transition:all .2s}.currency-btn:hover{background:#f3f4f6}.currency-btn.active{background:#10b981;color:#fff;border-color:#10b981}.btn-calc{width:100%;border:none;cursor:pointer;font-size:1rem;margin-top:1rem}.info-box{background:#fff;border:1px solid #e5e5e5;border-radius:12px;padding:1.5rem 2rem;margin:2rem 0}.info-box p{color:#444;margin-bottom:1rem;line-height:1.7}.info-box p:last-child{margin-bottom:0}.info-note{background:#fafafa;border-left:3px solid #10b981;padding:1rem 1.25rem;border-radius:0 8px 8px 0;font-size:.95rem;color:#666}.info-note strong{color:#1a1a1a}.product-actions{display:flex;gap:1rem;justify-content:center;margin-top:2rem;flex-wrap:wrap}.stack-box{margin-top:3rem;padding:1.5rem;background:#fff;border:1px solid #e5e5e5;border-radius:12px;text-align:left}.stack-box h3{font-size:.9rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:#666;margin-bottom:1rem}.stack-items{display:flex;flex-wrap:wrap;gap:.75rem}.stack-item{display:flex;flex-direction:column;background:#fafafa;border:1px solid #e5e5e5;border-radius:8px;padding:.75rem 1rem;min-width:120px}.stack-name{font-weight:600;font-size:.95rem;color:#1a1a1a}.stack-desc{font-size:.8rem;color:#999}.coming-soon{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:2rem 0}.coming-soon h1{font-size:1.75rem;margin-bottom:.75rem}.coming-soon p{color:#666;max-width:400px;margin:0 auto 1.5rem}.btn{display:inline-block;background:#10b981;color:#fff;padding:.75rem 1.5rem;border-radius:8px;text-decoration:none;font-weight:500;transition:background .2s}.btn:hover{background:#059669}.btn-secondary{background:#e5e5e5;color:#1a1a1a}.btn-secondary:hover{background:#d1d1d1}.legal{flex:1}.legal h1{font-size:1.75rem;margin-bottom:.5rem}.legal .updated{color:#999;font-size:.875rem;margin-bottom:2rem}.legal h2{font-size:1.1rem;margin-top:2rem;margin-bottom:.5rem}.legal p{color:#444;margin-bottom:1rem}.legal ul{margin-bottom:1rem;padding-left:1.5rem}.legal li{color:#444;margin-bottom:.5rem}.legal a{color:#10b981}.legal .back{display:inline-block;margin-top:2rem;color:#10b981;text-decoration:none}.legal .back:hover{text-decoration:underline}@media(min-width:600px){.tiles{grid-template-columns:repeat(3,1fr)}.title{font-size:2.5rem}}
