:root{--color-page-bg: #F6F5F1;--color-text: #233333;--color-home-bg: #E5F3E7;--color-card-bg: #5E9E6E;--color-card-bg-hover: #52905F;--color-card-label: #0B1A0F;--color-card-desc: #FFFFFF;--color-topbar-bg: #1F3B3E;--color-topbar-text: #F6F5F1;--color-accent: #1F3B3E}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{height:100%}html,body{overflow-x:hidden;width:100%;max-width:100vw}body{font-family:Source Sans Pro,Segoe UI,sans-serif;background:var(--color-page-bg);color:var(--color-text);-webkit-text-size-adjust:100%}img{max-width:100%}.fraunces{font-family:Fraunces,serif}button{cursor:pointer;font-family:inherit}input,select{font-family:inherit;outline:none;font-size:16px}input:focus,select:focus{border-color:#2f5d62!important}a{color:inherit}.home-screen{min-height:100dvh;background:var(--color-home-bg);padding-bottom:40px}.home-topband{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:28px 24px;background:var(--color-topbar-bg);position:sticky;top:0;z-index:20;box-shadow:0 2px 8px #00000014}.home-family-name{font-size:30px;font-weight:700;color:var(--color-topbar-text);line-height:1.15}.home-subtitle{font-size:14px;color:var(--color-topbar-text);opacity:.75;margin-top:2px}.home-signout{display:flex;align-items:center;gap:6px;background:#ffffff1f;border:1px solid rgba(255,255,255,.25);color:var(--color-topbar-text);border-radius:10px;padding:9px 16px;font-size:13.5px;font-weight:600}.home-body{max-width:1000px;margin:0 auto;padding:26px 20px 0;display:flex;flex-direction:column;gap:30px}.home-section-title{font-size:12.5px;font-weight:800;text-transform:uppercase;letter-spacing:.6px;color:#2c4a32;margin-bottom:12px;padding-left:2px}.home-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px}.home-card{position:relative;aspect-ratio:1;background:var(--color-card-bg);border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;text-decoration:none;overflow:hidden;padding:16px 12px;transition:transform .12s ease,background .12s ease;box-shadow:0 2px 6px #143c1e1f}.home-card:hover,.home-card:active{background:var(--color-card-bg-hover);transform:translateY(-2px)}.home-card-watermark{position:absolute;top:50%;left:50%;width:62%;transform:translate(-50%,-50%);opacity:.16;pointer-events:none;z-index:0}.home-card-icon{position:relative;z-index:1;color:var(--color-card-label);margin-bottom:8px;width:30px;height:30px}.home-card-label{position:relative;z-index:1;font-size:14px;font-weight:700;color:var(--color-card-label);line-height:1.25}.home-card-description{position:relative;z-index:1;font-size:10.5px;font-weight:700;color:var(--color-card-desc);margin-top:4px;line-height:1.3}@media (max-width: 480px){.home-topband{padding:22px 18px}.home-family-name{font-size:24px}.home-grid{grid-template-columns:repeat(2,1fr);gap:12px}.home-card{border-radius:16px}}.page-shell{min-height:100vh;background:#f6f5f1}.page-topbar{display:flex;align-items:center;gap:10px;background:var(--color-topbar-bg);padding:10px 14px;position:sticky;top:0;z-index:30}.page-home-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;background:#ffffff1f;color:var(--color-topbar-text);flex-shrink:0}.page-filter-row{display:flex;gap:6px;overflow-x:auto;flex:1}.page-filter-pill{display:flex;align-items:center;gap:6px;white-space:nowrap;background:#ffffff14;border:none;color:var(--color-topbar-text);border-radius:999px;padding:7px 12px;font-size:12.5px;flex-shrink:0}.page-filter-pill.active{background:#ffffff38;font-weight:600}.page-signout{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;background:#ffffff1f;border:none;color:var(--color-topbar-text);flex-shrink:0}.page-main{padding:20px}@media (min-width: 640px){.page-main{padding:28px 32px}}.launch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:16px;max-width:700px}.launch-card{border:none;font-family:inherit;width:100%}@media (max-width: 860px){form{grid-template-columns:1fr!important}.stat-grid{grid-template-columns:1fr 1fr!important}.purchase-grid{grid-template-columns:1fr!important}}@media (max-width: 420px){.stat-grid{grid-template-columns:1fr!important}}
