/* ==================== styles.css ==================== */ /* ===== index.html extracted styles ===== */ body.page-home{ --sw-bg: #f8f6f2; --sw-card: #fffdf9; --sw-card-2: #f5f1ea; --sw-text: #5b4742; --sw-muted: #957a72; --sw-border: #d4cbc1; --sw-pink: #e0a095; --sw-pink-2: #d9a7b6; --sw-lilac: #d9bfd3; --sw-peach: #e3a89a; --sw-green: #b5cdbd; --sw-green-2: #dfe9df; --sw-shadow: 0 12px 30px rgba(86,67,65,.08); --sw-shadow-sm: 0 4px 0 rgba(86,67,65,.08); --sw-shadow-md: 0 6px 0 rgba(86,67,65,.09); --sw-container: 1280px; } body.page-home *{ box-sizing: border-box; } html{ scroll-behavior: smooth; } body.page-home.sw-body{ margin: 0; background: var(--sw-bg); color: var(--sw-text); font-family: "Nunito", sans-serif; overflow-x: hidden; } body.page-home a{ text-decoration: none; color: inherit; } body.page-home svg{ width: 1em; height: 1em; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; } body.page-home .sw-container{ width: min(var(--sw-container), calc(100% - 48px)); margin: 0 auto; } body.page-home .sw-divider{ width: 100%; height: 4px; background: var(--sw-border); box-shadow: 0 1px 0 rgba(255,255,255,.7); } body.page-home .sw-header{ position: sticky; top: 0; z-index: 1000; background: rgba(248,246,242,.95); backdrop-filter: blur(10px); } body.page-home .sw-header-inner{ width: min(var(--sw-container), calc(100% - 48px)); margin: 0 auto; min-height: 102px; display: flex; align-items: center; justify-content: space-between; gap: 28px; } body.page-home .sw-logo-wrap{ display: flex; align-items: center; gap: 16px; flex-shrink: 0; } body.page-home .sw-logo-badge{ width: 62px; height: 62px; border-radius: 19px; background: var(--sw-pink); color: var(--sw-text); display: grid; place-items: center; box-shadow: var(--sw-shadow-sm), 0 8px 16px rgba(86,67,65,.05); } body.page-home .sw-logo-badge svg{ width: 31px; height: 31px; } body.page-home .sw-logo-badge.small{ width: 54px; height: 54px; border-radius: 17px; } body.page-home .sw-logo-text{ font-size: 29px; font-weight: 900; letter-spacing: -.04em; line-height: 1; color: var(--sw-text); } body.page-home .sw-logo-text span{ color: var(--sw-pink); } body.page-home .sw-nav{ flex: 1; max-width: 840px; display: flex; align-items: center; gap: 8px; background: rgba(255,255,255,.76); border: 4px solid var(--sw-border); border-radius: 999px; padding: 10px; box-shadow: 0 6px 16px rgba(86,67,65,.05); overflow-x: auto; } body.page-home .sw-nav::-webkit-scrollbar{ display: none; } body.page-home .sw-nav-link{ flex: 1 0 auto; min-width: max-content; height: 50px; padding: 0 24px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; font-size: 17px; font-weight: 800; color: #856f67; transition: .2s ease; } body.page-home .sw-nav-link svg{ width: 20px; height: 20px; } body.page-home .sw-nav-link.active{ background: var(--sw-pink); color: var(--sw-text); box-shadow: inset 0 -4px 0 rgba(86,67,65,.08); } body.page-home .sw-nav-link:hover{ background: rgba(224,160,149,.14); } body.page-home .sw-section{ width: 100%; } body.page-home .sw-hero{ padding: 64px 0 72px; min-height: calc(100vh - 106px); display: flex; flex-direction: column; justify-content: center; } body.page-home .sw-hero-grid{ display: grid; grid-template-columns: 1.02fr .98fr; gap: 58px; align-items: center; } body.page-home .sw-pill-label{ display: inline-flex; align-items: center; gap: 12px; padding: 12px 20px; border-radius: 999px; background: #dfe9df; border: 3px solid rgba(180,202,187,.5); color: var(--sw-text); font-size: 16px; font-weight: 800; box-shadow: 0 3px 8px rgba(86,67,65,.05); margin-bottom: 28px; } body.page-home .sw-pill-dot{ width: 16px; height: 16px; border-radius: 50%; background: #644c46; } body.page-home .sw-hero-title{ margin: 0 0 26px; font-size: 88px; line-height: .94; letter-spacing: -.07em; font-weight: 900; color: var(--sw-text); } body.page-home .sw-accent-word{ color: var(--sw-pink); position: relative; display: inline-block; } body.page-home .sw-accent-word::after{ content: ""; position: absolute; left: 6px; right: -4px; bottom: -10px; height: 18px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='20' viewBox='0 0 220 20'%3E%3Cpath d='M4 10c22 8 43 8 63 0s41-8 62 0 42 8 87-1' fill='none' stroke='%23e0a095' stroke-width='6' stroke-linecap='round'/%3E%3C/svg%3E") center/100% 100% no-repeat; } body.page-home .sw-hero-text{ max-width: 650px; margin: 0 0 42px; font-size: 24px; line-height: 1.68; font-weight: 700; color: var(--sw-muted); } body.page-home .sw-hero-buttons{ display: flex; align-items: center; gap: 20px; flex-wrap: wrap; } body.page-home .sw-btn{ height: 72px; padding: 0 34px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; gap: 14px; font-size: 24px; font-weight: 900; transition: .2s ease; } body.page-home .sw-btn svg{ width: 26px; height: 26px; } body.page-home .sw-btn-primary{ min-width: 318px; background: var(--sw-pink); color: var(--sw-text); box-shadow: var(--sw-shadow-md); } body.page-home .sw-btn-secondary{ min-width: 270px; background: var(--sw-card); color: var(--sw-text); border: 4px solid var(--sw-border); box-shadow: 0 4px 0 rgba(86,67,65,.05); } body.page-home .sw-btn-dark{ background: #6a5550; color: #fff; padding: 0 30px; font-size: 20px; height: 68px; box-shadow: 0 5px 0 rgba(86,67,65,.14); } body.page-home .sw-btn:hover{ transform: translateY(-2px); } body.page-home .sw-hero-card-wrap{ display: flex; justify-content: center; } body.page-home .sw-hero-card{ width: 100%; max-width: 610px; min-height: 605px; background: rgba(255,255,255,.75); border: 5px solid var(--sw-border); border-radius: 44px; box-shadow: var(--sw-shadow); padding: 28px 28px 26px; position: relative; } body.page-home .sw-window-top{ display: flex; align-items: center; justify-content: space-between; margin-bottom: 40px; } body.page-home .sw-window-dots{ display: flex; gap: 10px; } body.page-home .sw-window-dots .dot{ width: 22px; height: 22px; border-radius: 50%; display: block; border: 2px solid rgba(86,67,65,.08); } body.page-home .sw-window-dots .pink{ background: #dd9da0; } body.page-home .sw-window-dots .cream{ background: #dcc0cf; } body.page-home .sw-window-dots .green{ background: #a9c1af; } body.page-home .sw-window-badge{ padding: 10px 24px; border-radius: 999px; background: #ede7df; border: 3px solid rgba(212,203,193,.9); font-size: 14px; font-weight: 900; letter-spacing: .06em; color: #8c7269; } body.page-home .sw-chat{ width: 78%; padding: 28px 30px; border-radius: 30px; position: relative; box-shadow: 0 4px 10px rgba(86,67,65,.05); } body.page-home .sw-chat-right{ margin-left: auto; background: #d8b0c2; border: 5px solid rgba(179,129,154,.18); margin-bottom: 28px; } body.page-home .sw-chat-right::before{ content:""; position:absolute; left:-13px; top:50%; width:26px; height:26px; background:#d8b0c2; border-left:5px solid rgba(179,129,154,.18); border-bottom:5px solid rgba(179,129,154,.18); transform:translateY(-50%) rotate(45deg); } body.page-home .sw-chat-left{ background: #f0ddd7; border: 5px solid #e4a799; margin-bottom: 34px; } body.page-home .sw-chat-left::after{ content:""; position:absolute; right:-13px; top:50%; width:26px; height:26px; background:#f0ddd7; border-right:5px solid #e4a799; border-top:5px solid #e4a799; transform:translateY(-50%) rotate(45deg); } body.page-home .sw-chat-label{ margin: 0 0 12px; font-size: 19px; font-weight: 900; letter-spacing: .01em; } body.page-home .sw-chat p:last-child{ margin: 0; font-size: 18px; line-height: 1.55; font-weight: 800; color: var(--sw-text); } body.page-home .sw-score-card{ margin-top: 20px; background: #fff; border: 5px solid var(--sw-border); border-radius: 34px; padding: 20px 24px; display: flex; align-items: center; justify-content: space-between; gap: 18px; } body.page-home .sw-score-left{ display: flex; align-items: center; gap: 18px; min-width: 0; } body.page-home .sw-score-icon{ width: 70px; height: 70px; border-radius: 22px; background: var(--sw-green); color: var(--sw-text); display: grid; place-items: center; flex-shrink: 0; } body.page-home .sw-score-icon svg{ width: 34px; height: 34px; } body.page-home .sw-score-title{ font-size: 16px; font-weight: 900; margin-bottom: 8px; } body.page-home .sw-progress{ width: 165px; height: 18px; background: #efe7dc; border-radius: 999px; border: 2px solid rgba(212,203,193,.9); overflow: hidden; } body.page-home .sw-progress span{ display: block; width: 78%; height: 100%; background: var(--sw-pink); border-radius: 999px; } body.page-home .sw-score-number{ font-size: 26px; font-weight: 900; color: var(--sw-pink); background: #faefeb; padding: 12px 18px; border-radius: 20px; } body.page-home .sw-scroll-arrow{ display: flex; justify-content: center; padding-top: 42px; color: #9a7e75; } body.page-home .sw-scroll-arrow svg{ width: 42px; height: 42px; } body.page-home .sw-hook{ padding: 78px 0 88px; } body.page-home .sw-hook-inner{ text-align: center; } body.page-home .sw-hook-bar{ width: 86px; height: 12px; border-radius: 999px; background: var(--sw-pink); margin: 0 auto 34px; } body.page-home .sw-section-title{ margin: 0 0 24px; font-size: 72px; line-height: 1.02; letter-spacing: -.06em; font-weight: 900; color: var(--sw-text); } body.page-home .sw-section-title.left{ text-align: left; } body.page-home .sw-hook-text{ max-width: 1140px; margin: 0 auto; font-size: 28px; line-height: 1.65; font-weight: 700; color: var(--sw-muted); } body.page-home .sw-underlined{ color: var(--sw-pink); text-decoration: underline wavy; text-underline-offset: 8px; text-decoration-thickness: 2px; font-weight: 900; } body.page-home .sw-hook-text em{ color: var(--sw-pink); font-style: italic; font-weight: 900; } body.page-home .sw-stat-grid{ margin-top: 54px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 38px; } body.page-home .sw-stat-card{ background: transparent; border: 5px solid var(--sw-border); border-radius: 42px; padding: 42px 34px 34px; min-height: 405px; display: flex; flex-direction: column; align-items: center; justify-content: flex-start; } body.page-home .sw-stat-badge{ width: 126px; height: 126px; border-radius: 28px; display: grid; place-items: center; margin-bottom: 34px; font-size: 26px; font-weight: 900; color: var(--sw-text); transform: rotate(-2deg); } body.page-home .sw-stat-badge.peach{ background: var(--sw-peach); } body.page-home .sw-stat-badge.pink{ background: var(--sw-pink-2); } body.page-home .sw-stat-badge.lilac{ background: var(--sw-lilac); } body.page-home .sw-stat-card h3{ margin: 0 0 22px; font-size: 34px; line-height: 1.1; font-weight: 900; } body.page-home .sw-stat-card p{ margin: 0; max-width: 280px; font-size: 24px; line-height: 1.55; font-weight: 700; color: var(--sw-muted); } body.page-home .sw-sim{ padding: 88px 0 96px; } body.page-home .sw-sim-grid{ display: grid; grid-template-columns: .88fr 1.12fr; gap: 60px; align-items: center; } body.page-home .sw-sim-icon{ width: 92px; height: 92px; border-radius: 24px; background: var(--sw-green); display: grid; place-items: center; color: var(--sw-text); box-shadow: var(--sw-shadow-sm); margin-bottom: 34px; } body.page-home .sw-sim-icon svg{ width: 42px; height: 42px; } body.page-home .sw-sim-text{ max-width: 620px; font-size: 28px; line-height: 1.65; font-weight: 700; color: var(--sw-muted); margin: 0 0 34px; } body.page-home .sw-btn-dark .arrow{ font-size: 28px; line-height: 1; } body.page-home .sw-sim-card-wrap{ display: flex; justify-content: center; } body.page-home .sw-sim-card{ position: relative; width: 100%; max-width: 640px; background: rgba(255,255,255,.72); border: 5px solid var(--sw-border); border-radius: 46px; padding: 52px 36px 36px; box-shadow: var(--sw-shadow); transform: rotate(2.5deg); } body.page-home .sw-data-tag{ position: absolute; top: -16px; right: -18px; background: #d8b0c2; color: var(--sw-text); border: 4px solid rgba(212,203,193,.7); border-radius: 22px; padding: 14px 24px; font-size: 18px; font-weight: 900; transform: rotate(12deg); box-shadow: 0 6px 12px rgba(86,67,65,.06); } body.page-home .sw-metric-box{ background: rgba(245,241,234,.8); border-radius: 28px; padding: 24px 24px 22px; margin-bottom: 22px; } body.page-home .sw-metric-top{ display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-bottom: 18px; font-size: 20px; font-weight: 900; } body.page-home .sw-chip{ display: inline-flex; align-items: center; justify-content: center; min-height: 42px; padding: 0 18px; border-radius: 999px; font-size: 16px; font-weight: 900; } body.page-home .sw-chip.pink{ background: #f4e3e3; color: var(--sw-pink); } body.page-home .sw-chip.green{ background: #e5eee7; color: #9ab5a1; } body.page-home .sw-metric-bar{ width: 100%; height: 22px; border-radius: 999px; background: #f8f4ee; border: 2px solid rgba(212,203,193,.95); overflow: hidden; } body.page-home .sw-metric-bar .fill{ display: block; height: 100%; border-radius: 999px; } body.page-home .fill.pink-1{ width: 42%; background: #dd9fa3; } body.page-home .fill.pink-2{ width: 83%; background: #d8b0c2; } body.page-home .fill.green{ width: 70%; background: #b7cfbd; } body.page-home .sw-final{ padding: 28px 0 92px; } body.page-home .sw-final-card{ width: min(100%, 1150px); margin: 0 auto; background: var(--sw-pink); border-radius: 82px; box-shadow: 0 10px 0 rgba(224,160,149,.7), 0 16px 28px rgba(86,67,65,.08); padding: 92px 40px 88px; text-align: center; } body.page-home .sw-final-card h2{ margin: 0 0 24px; font-size: 76px; line-height: 1; letter-spacing: -.06em; font-weight: 900; } body.page-home .sw-final-card p{ max-width: 840px; margin: 0 auto 38px; font-size: 30px; line-height: 1.5; font-weight: 800; color: var(--sw-text); } body.page-home .sw-final-btn{ display: inline-flex; align-items: center; justify-content: center; min-width: 360px; height: 88px; padding: 0 34px; border-radius: 999px; background: #fff; color: var(--sw-text); font-size: 28px; font-weight: 900; box-shadow: 0 7px 0 rgba(86,67,65,.10); } body.page-home .sw-footer{ padding: 74px 0 80px; background: var(--sw-bg); } body.page-home .sw-footer-inner{ display: grid; grid-template-columns: 1.2fr 1fr auto; align-items: center; gap: 34px; } body.page-home .sw-footer-logo-row{ display: flex; align-items: center; gap: 16px; margin-bottom: 20px; } body.page-home .sw-footer-title{ font-size: 34px; font-weight: 900; letter-spacing: -.04em; } body.page-home .sw-footer-brand p{ max-width: 470px; margin: 0; font-size: 22px; line-height: 1.6; font-weight: 700; color: var(--sw-muted); } body.page-home .sw-footer-links{ display: flex; align-items: center; justify-content: center; gap: 18px; flex-wrap: wrap; } body.page-home .sw-footer-links a{ display: inline-flex; align-items: center; justify-content: center; min-width: 96px; height: 54px; padding: 0 22px; border-radius: 999px; background: #ebe4d8; color: #8d756d; font-size: 16px; font-weight: 800; } body.page-home .sw-footer-face{ width: 62px; height: 62px; border-radius: 50%; background: #f7eaf0; border: 5px solid #e9d6e0; display: grid; place-items: center; color: var(--sw-text); } body.page-home .sw-footer-face svg{ width: 30px; height: 30px; } @media (max-width: 1200px){ body.page-home .sw-hero-title, body.page-home .sw-section-title, body.page-home .sw-final-card h2{ font-size: 62px; } body.page-home .sw-hook-text, body.page-home .sw-sim-text, body.page-home .sw-final-card p{ font-size: 24px; } body.page-home .sw-stat-card p{ font-size: 20px; } } @media (max-width: 980px){ body.page-home .sw-header-inner{ flex-direction: column; justify-content: center; padding: 14px 0; min-height: auto; } body.page-home .sw-nav{ width: 100%; max-width: none; } body.page-home .sw-hero-grid, body.page-home .sw-sim-grid, body.page-home .sw-footer-inner, body.page-home .sw-stat-grid{ grid-template-columns: 1fr; } body.page-home .sw-hero-title{ font-size: 62px; } body.page-home .sw-section-title{ font-size: 54px; } body.page-home .sw-final-card h2{ font-size: 58px; } body.page-home .sw-sim-card{ transform: none; } body.page-home .sw-footer-inner{ text-align: center; } body.page-home .sw-footer-brand{ display: flex; flex-direction: column; align-items: center; } } @media (max-width: 700px){ body.page-home .sw-container, body.page-home .sw-header-inner{ width: min(100%, calc(100% - 24px)); } body.page-home .sw-hero{ padding: 44px 0 56px; } body.page-home .sw-hero-title{ font-size: 48px; } body.page-home .sw-hero-text, body.page-home .sw-hook-text, body.page-home .sw-sim-text, body.page-home .sw-final-card p{ font-size: 18px; } body.page-home .sw-btn, body.page-home .sw-final-btn{ width: 100%; min-width: 0; font-size: 20px; } body.page-home .sw-hero-buttons{ flex-direction: column; align-items: stretch; } body.page-home .sw-chat, body.page-home .sw-chat-left, body.page-home .sw-chat-right{ width: 100%; } body.page-home .sw-chat-left::after, body.page-home .sw-chat-right::before{ display: none; } body.page-home .sw-score-card{ flex-direction: column; align-items: stretch; } body.page-home .sw-score-left{ justify-content: flex-start; } body.page-home .sw-final-card{ border-radius: 46px; padding: 60px 24px; } body.page-home .sw-final-card h2{ font-size: 42px; } body.page-home .sw-stat-card{ min-height: auto; } } /* ===== game.html extracted styles ===== */ body.page-game{ --sw-bg: #f8f6f2; --sw-panel: #fcfbf8; --sw-card: #fffdf9; --sw-soft: #f1eee8; --sw-soft-2: #ece7de; --sw-text: #5b4742; --sw-muted: #8b746b; --sw-border: #cdbfb2; --sw-pink: #e0a095; --sw-pink-deep: #d08d80; --sw-pink-2: #d9a7b6; --sw-lilac: #d9bfd3; --sw-peach: #e3a89a; --sw-green: #b5cdbd; --sw-green-2: #dfe9df; --sw-yellow: #e7d2a4; --sw-red-soft: #df9a93; --sw-shadow: 0 12px 28px rgba(86,67,65,.07); --sw-shadow-sm: 0 4px 0 rgba(86,67,65,.08); --sw-shadow-md: 0 6px 0 rgba(86,67,65,.09); --sw-container: 1280px; --radius-xl: 38px; --radius-lg: 28px; --radius-md: 22px; --radius-pill: 999px; } body.page-game *{ box-sizing: border-box; } html{ scroll-behavior: smooth; } body.page-game{ margin: 0; background: var(--sw-bg); color: var(--sw-text); font-family: "Nunito", sans-serif; overflow-x: hidden; } body.page-game a{ text-decoration: none; color: inherit; } body.page-game button{ font: inherit; border: 0; background: none; color: inherit; cursor: pointer; } body.page-game svg{ width: 1em; height: 1em; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; } body.page-game .sw-container{ width: min(var(--sw-container), calc(100% - 48px)); margin: 0 auto; } body.page-game .sw-divider{ width: 100%; height: 4px; background: var(--sw-border); box-shadow: 0 1px 0 rgba(255,255,255,.7); } body.page-game .sw-header{ position: sticky; top: 0; z-index: 1000; background: rgba(248,246,242,.96); backdrop-filter: blur(10px); } body.page-game .sw-header-inner{ width: min(var(--sw-container), calc(100% - 48px)); margin: 0 auto; min-height: 102px; display: flex; align-items: center; justify-content: space-between; gap: 28px; } body.page-game .sw-logo-wrap{ display: flex; align-items: center; gap: 16px; flex-shrink: 0; } body.page-game .sw-logo-badge{ width: 62px; height: 62px; border-radius: 19px; background: var(--sw-pink); color: var(--sw-text); display: grid; place-items: center; box-shadow: var(--sw-shadow-sm), 0 8px 16px rgba(86,67,65,.05); } body.page-game .sw-logo-badge svg{ width: 31px; height: 31px; } body.page-game .sw-logo-badge.small{ width: 54px; height: 54px; border-radius: 17px; } body.page-game .sw-logo-text{ font-size: 29px; font-weight: 900; letter-spacing: -.04em; line-height: 1; color: var(--sw-text); } body.page-game .sw-logo-text span{ color: var(--sw-pink); } body.page-game .sw-nav{ flex: 1; max-width: 840px; display: flex; align-items: center; gap: 8px; background: rgba(255,255,255,.76); border: 4px solid var(--sw-border); border-radius: 999px; padding: 10px; box-shadow: 0 6px 16px rgba(86,67,65,.05); overflow-x: auto; } body.page-game .sw-nav::-webkit-scrollbar{ display: none; } body.page-game .sw-nav-link{ flex: 1 0 auto; min-width: max-content; height: 50px; padding: 0 24px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; font-size: 17px; font-weight: 800; color: #856f67; transition: .2s ease; } body.page-game .sw-nav-link svg{ width: 20px; height: 20px; } body.page-game .sw-nav-link.active{ background: var(--sw-pink); color: var(--sw-text); box-shadow: inset 0 -4px 0 rgba(86,67,65,.08); } body.page-game .sw-nav-link:hover{ background: rgba(224,160,149,.14); } body.page-game .sw-main{ min-height: calc(100vh - 106px); padding: 26px 0 54px; } body.page-game .game-shell{ position: relative; display: flex; flex-direction: column; gap: 22px; } body.page-game .intro-wrap{ position: relative; display: flex; justify-content: center; padding-top: 6px; } body.page-game .intro-pin{ position: absolute; left: 14%; top: -6px; width: 62px; height: 62px; border-radius: 50%; background: #d7adbf; border: 5px solid var(--sw-border); display: grid; place-items: center; box-shadow: 0 4px 10px rgba(86,67,65,.06); z-index: 2; } body.page-game .intro-pin svg{ width: 28px; height: 28px; } body.page-game .intro-card{ width: min(870px, 100%); background: rgba(255,255,255,.7); border: 5px solid var(--sw-border); border-radius: 46px; box-shadow: var(--sw-shadow); padding: 52px 56px 44px; text-align: center; position: relative; } body.page-game .intro-card::before{ content: ""; position: absolute; width: 62px; height: 4px; left: -44px; top: 18px; background: var(--sw-border); border-radius: 999px; } body.page-game .intro-phone{ width: 146px; height: 146px; margin: 0 auto 26px; border-radius: 50%; background: #db9d91; display: grid; place-items: center; color: var(--sw-text); box-shadow: inset 0 0 0 5px rgba(91,71,66,.08), 0 6px 12px rgba(86,67,65,.06); } body.page-game .intro-phone svg{ width: 64px; height: 64px; } body.page-game .intro-title{ margin: 0 0 18px; font-size: clamp(48px, 6vw, 82px); line-height: .95; letter-spacing: -.06em; font-weight: 900; } body.page-game .intro-text{ max-width: 760px; margin: 0 auto 24px; font-size: 22px; line-height: 1.72; font-weight: 700; color: var(--sw-muted); } body.page-game .intro-note{ display: inline-flex; align-items: center; justify-content: center; min-height: 58px; padding: 10px 22px; border-radius: 20px; background: #e7e1d7; color: #947b73; font-size: 15px; font-weight: 900; margin-bottom: 34px; } body.page-game .start-btn{ min-width: 340px; min-height: 90px; padding: 0 34px; border-radius: var(--radius-pill); background: var(--sw-pink); color: var(--sw-text); display: inline-flex; align-items: center; justify-content: center; gap: 16px; font-size: 24px; font-weight: 900; box-shadow: 0 6px 0 rgba(208,141,128,.9); transition: transform .15s ease; } body.page-game .start-btn:hover{ transform: translateY(-2px); } body.page-game .start-btn svg{ width: 30px; height: 30px; fill: currentColor; stroke: none; } body.page-game .planner-grid{ display: none; grid-template-columns: 1.45fr .95fr; gap: 26px; align-items: start; } body.page-game .planner-grid.visible{ display: grid; } body.page-game .planner-col, body.page-game .stats-col{ background: rgba(255,255,255,.62); border: 5px solid var(--sw-border); border-radius: 46px; box-shadow: var(--sw-shadow); padding: 30px 30px 28px; } body.page-game .planner-top{ display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 26px; flex-wrap: wrap; } body.page-game .planner-title{ margin: 0; font-size: 42px; line-height: 1; letter-spacing: -.04em; font-weight: 900; } body.page-game .time-badge{ min-height: 64px; padding: 0 28px; border-radius: 24px; background: var(--sw-pink); border: 3px solid rgba(208,141,128,.9); display: inline-flex; align-items: center; gap: 12px; color: var(--sw-text); font-size: 18px; font-weight: 900; box-shadow: 0 3px 0 rgba(208,141,128,.95); } body.page-game .time-badge svg{ width: 22px; height: 22px; } body.page-game .day-track{ width: 100%; height: 34px; border-radius: 999px; background: transparent; border: 4px solid var(--sw-border); overflow: hidden; margin-bottom: 24px; } body.page-game .day-fill{ width: 0%; height: 100%; border-radius: 999px; background: linear-gradient(90deg, #efb2aa 0%, #e0a095 100%); transition: width .25s ease; } body.page-game .activity-list{ display: flex; flex-direction: column; gap: 20px; } body.page-game .activity-card{ min-height: 124px; border-radius: 34px; border: 5px solid var(--sw-border); background: rgba(242,239,234,.8); box-shadow: 0 3px 0 rgba(86,67,65,.05); display: flex; align-items: center; justify-content: space-between; gap: 18px; padding: 18px 20px; } body.page-game .activity-left{ display: flex; align-items: center; gap: 18px; min-width: 0; flex: 1; } body.page-game .activity-icon{ width: 76px; height: 76px; border-radius: 24px; display: grid; place-items: center; box-shadow: 0 5px 0 rgba(86,67,65,.06), 0 8px 18px rgba(86,67,65,.04); flex-shrink: 0; } body.page-game .activity-icon svg{ width: 38px; height: 38px; } body.page-game .icon-tiktok{ background: #e6e2da; } body.page-game .icon-instagram{ background: #d5a6ba; } body.page-game .icon-snapchat{ background: #eadfc7; } body.page-game .icon-youtube{ background: #edd5d1; } body.page-game .icon-pinterest{ background: #f1dede; } body.page-game .icon-linkedin{ background: #dce8f0; } body.page-game .icon-exercise{ background: #dce7de; } body.page-game .icon-eating{ background: #ede4c7; } body.page-game .icon-sleep{ background: #dce5ef; } body.page-game .icon-socializing{ background: #d8e7df; } body.page-game .icon-studying{ background: #eddad4; } body.page-game .activity-title{ font-size: 20px; font-weight: 900; line-height: 1.1; margin-bottom: 4px; } body.page-game .activity-sub{ font-size: 16px; font-weight: 700; color: var(--sw-muted); } body.page-game .activity-right{ display: flex; align-items: center; gap: 16px; flex-shrink: 0; } body.page-game .counter-btn{ width: 56px; height: 56px; border-radius: 18px; display: grid; place-items: center; font-size: 28px; font-weight: 900; transition: transform .12s ease, opacity .12s ease; } body.page-game .counter-btn:hover{ transform: translateY(-1px); } body.page-game .counter-btn.minus{ background: #f3f0ec; color: #9e8d85; box-shadow: inset 0 -4px 0 rgba(86,67,65,.05); } body.page-game .counter-btn.plus{ background: #e3a293; color: var(--sw-text); box-shadow: inset 0 -4px 0 rgba(208,141,128,.55); } body.page-game .counter-btn:disabled{ opacity: .45; cursor: not-allowed; transform: none; } body.page-game .counter-value{ width: 32px; text-align: center; font-size: 28px; font-weight: 900; } body.page-game .planner-actions{ display: flex; gap: 14px; margin-top: 22px; } body.page-game .reset-btn, body.page-game .finish-btn{ min-height: 58px; border-radius: 16px; padding: 0 22px; font-size: 16px; font-weight: 900; } body.page-game .reset-btn{ min-width: 100px; border: 3px solid var(--sw-border); background: #fff; color: var(--sw-text); } body.page-game .finish-btn{ flex: 1; background: #4f3b36; color: #fff; display: inline-flex; align-items: center; justify-content: center; gap: 10px; box-shadow: 0 4px 0 rgba(58,41,37,.35); } body.page-game .stats-head{ display: flex; align-items: flex-start; gap: 18px; margin-bottom: 20px; } body.page-game .stats-avatar{ width: 64px; height: 64px; border-radius: 50%; background: var(--sw-green); display: grid; place-items: center; flex-shrink: 0; } body.page-game .stats-avatar svg{ width: 30px; height: 30px; } body.page-game .stats-title{ margin: 2px 0 2px; font-size: 28px; line-height: 1; font-weight: 900; } body.page-game .stats-sub{ font-size: 16px; font-weight: 700; color: var(--sw-muted); } body.page-game .stat-list{ display: flex; flex-direction: column; gap: 26px; margin-top: 8px; } body.page-game .stat-card{ border-radius: 28px; border: 4px solid var(--sw-border); background: rgba(242,239,234,.82); padding: 16px 18px 15px; } body.page-game .stat-top{ display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 12px; } body.page-game .stat-name{ font-size: 18px; font-weight: 900; line-height: 1.1; } body.page-game .stat-score{ min-width: 44px; height: 44px; border-radius: 50%; background: #e3ece2; display: grid; place-items: center; color: #98b59e; font-size: 16px; font-weight: 900; padding-top: 1px; } body.page-game .stat-track{ width: 100%; height: 18px; border-radius: 999px; border: 2px solid rgba(205,191,178,.95); background: #ebe8df; overflow: hidden; } body.page-game .stat-fill{ height: 100%; border-radius: 999px; transition: width .25s ease; } body.page-game .fill-sleep{ background: #a8c2af; } body.page-game .fill-fomo{ background: #df9b95; } body.page-game .fill-confidence{ background: #de9b8a; } body.page-game .fill-happiness{ background: #d3aac0; } body.page-game .fill-motivation{ background: #de9a8b; } body.page-game .fill-sadness{ background: #c9b7cc; } body.page-game .fill-hunger{ background: #e0c584; } body.page-game .fill-social{ background: #b5cdbd; } body.page-game .results-modal{ position: fixed; inset: 0; background: rgba(53,39,36,.34); display: none; align-items: center; justify-content: center; padding: 24px; z-index: 1200; } body.page-game .results-modal.visible{ display: flex; } body.page-game .results-card{ width: min(700px, 100%); max-height: min(86vh, 900px); overflow: auto; background: rgba(255,252,248,.96); border: 5px solid var(--sw-border); border-radius: 36px; box-shadow: 0 24px 60px rgba(53,39,36,.18); padding: 30px 28px 26px; } body.page-game .results-top{ display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 18px; } body.page-game .results-title{ margin: 0; font-size: 34px; font-weight: 900; letter-spacing: -.04em; } body.page-game .close-results{ width: 48px; height: 48px; border-radius: 50%; background: #f0ebe3; border: 3px solid var(--sw-border); font-size: 24px; font-weight: 900; } body.page-game .grade-row{ display: flex; align-items: center; gap: 16px; margin-bottom: 22px; flex-wrap: wrap; } body.page-game .grade-badge{ min-width: 100px; min-height: 100px; border-radius: 28px; background: var(--sw-pink); display: grid; place-items: center; font-size: 42px; font-weight: 900; box-shadow: inset 0 -5px 0 rgba(208,141,128,.5); } body.page-game .grade-copy h3{ margin: 0 0 6px; font-size: 24px; font-weight: 900; } body.page-game .grade-copy p{ margin: 0; font-size: 18px; font-weight: 700; color: var(--sw-muted); line-height: 1.55; } body.page-game .summary-box{ border-radius: 26px; border: 4px solid var(--sw-border); background: #f5f1eb; padding: 18px 18px 16px; font-size: 17px; font-weight: 800; line-height: 1.65; color: var(--sw-muted); margin-bottom: 22px; } body.page-game .results-actions{ display: flex; gap: 14px; margin-top: 24px; flex-wrap: wrap; } body.page-game .results-actions button{ min-height: 58px; border-radius: 18px; padding: 0 24px; font-size: 16px; font-weight: 900; } body.page-game .play-again{ background: var(--sw-pink); color: var(--sw-text); box-shadow: 0 4px 0 rgba(208,141,128,.8); } body.page-game .close-btn{ background: #fff; border: 3px solid var(--sw-border); color: var(--sw-text); } body.page-game .sw-footer{ padding: 48px 0 56px; background: var(--sw-bg); } body.page-game .sw-footer-inner{ display: grid; grid-template-columns: 1.2fr 1fr auto; align-items: center; gap: 34px; } body.page-game .sw-footer-logo-row{ display: flex; align-items: center; gap: 16px; margin-bottom: 16px; } body.page-game .sw-footer-title{ font-size: 34px; font-weight: 900; letter-spacing: -.04em; } body.page-game .sw-footer-brand p{ max-width: 470px; margin: 0; font-size: 18px; line-height: 1.6; font-weight: 700; color: var(--sw-muted); } body.page-game .sw-footer-links{ display: flex; align-items: center; justify-content: center; gap: 18px; flex-wrap: wrap; } body.page-game .sw-footer-links a{ display: inline-flex; align-items: center; justify-content: center; min-width: 96px; height: 46px; padding: 0 18px; border-radius: 999px; background: #ebe4d8; color: #8d756d; font-size: 14px; font-weight: 800; } body.page-game .sw-footer-face{ width: 54px; height: 54px; border-radius: 50%; background: #f7eaf0; border: 4px solid #e9d6e0; display: grid; place-items: center; color: var(--sw-text); } body.page-game .sw-footer-face svg{ width: 28px; height: 28px; } @media (max-width: 1150px){ body.page-game .planner-grid{ grid-template-columns: 1fr; } body.page-game .intro-pin{ left: 6%; } } @media (max-width: 980px){ body.page-game .sw-header-inner{ flex-direction: column; justify-content: center; padding: 14px 0; min-height: auto; } body.page-game .sw-nav{ width: 100%; max-width: none; } body.page-game .sw-footer-inner{ grid-template-columns: 1fr; text-align: center; } body.page-game .sw-footer-brand{ display: flex; flex-direction: column; align-items: center; } } @media (max-width: 760px){ body.page-game .sw-container, body.page-game .sw-header-inner{ width: min(100%, calc(100% - 24px)); } body.page-game .sw-main{ padding-top: 18px; } body.page-game .intro-card{ padding: 36px 22px 32px; } body.page-game .intro-card::before, body.page-game .intro-pin{ display: none; } body.page-game .intro-phone{ width: 112px; height: 112px; } body.page-game .intro-title{ font-size: 46px; } body.page-game .intro-text{ font-size: 18px; } body.page-game .start-btn{ min-width: 0; width: 100%; font-size: 21px; } body.page-game .planner-col, body.page-game .stats-col{ padding: 20px 16px 18px; border-radius: 28px; } body.page-game .planner-top{ flex-direction: column; align-items: stretch; } body.page-game .planner-title{ font-size: 34px; } body.page-game .time-badge{ justify-content: center; } body.page-game .activity-card{ padding: 14px; min-height: auto; gap: 12px; } body.page-game .activity-icon{ width: 62px; height: 62px; border-radius: 20px; } body.page-game .activity-icon svg{ width: 30px; height: 30px; } body.page-game .activity-right{ gap: 10px; } body.page-game .counter-btn{ width: 48px; height: 48px; } body.page-game .counter-value{ width: 22px; font-size: 24px; } body.page-game .planner-actions{ flex-direction: column; } body.page-game .reset-btn, body.page-game .finish-btn{ width: 100%; } body.page-game .results-card{ padding: 22px 18px 20px; } } /* ===== scroll.html extracted styles ===== */ body.page-scroll{ --sw-bg: #f8f6f2; --sw-card: #fcfbf8; --sw-card-inner: #f7f5f1; --sw-text: #5b4742; --sw-muted: #8b746b; --sw-border: #cfc2b6; --sw-pink: #e0a095; --sw-pink-deep: #d89285; --sw-pink-2: #d9a7b6; --sw-lilac: #d9bfd3; --sw-peach: #e3a89a; --sw-green: #b5cdbd; --sw-green-2: #dfe9df; --sw-blue-soft: #dbe6ee; --sw-yellow-soft: #e9e0cb; --sw-shadow: 0 12px 28px rgba(86,67,65,.07); --sw-shadow-sm: 0 4px 0 rgba(86,67,65,.08); --sw-shadow-md: 0 6px 0 rgba(86,67,65,.09); --sw-container: 1280px; } body.page-scroll *{ box-sizing: border-box; } html{ scroll-behavior: smooth; } body.page-scroll{ margin: 0; background: var(--sw-bg); color: var(--sw-text); font-family: "Nunito", sans-serif; overflow-x: hidden; } body.page-scroll a{ text-decoration: none; color: inherit; } body.page-scroll button{ font: inherit; color: inherit; background: none; border: 0; cursor: pointer; } body.page-scroll svg{ width: 1em; height: 1em; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; } body.page-scroll .sw-container{ width: min(var(--sw-container), calc(100% - 48px)); margin: 0 auto; } body.page-scroll .sw-divider{ width: 100%; height: 4px; background: var(--sw-border); box-shadow: 0 1px 0 rgba(255,255,255,.7); } body.page-scroll .sw-header{ position: sticky; top: 0; z-index: 1000; background: rgba(248,246,242,.96); backdrop-filter: blur(10px); } body.page-scroll .sw-header-inner{ width: min(var(--sw-container), calc(100% - 48px)); margin: 0 auto; min-height: 102px; display: flex; align-items: center; justify-content: space-between; gap: 28px; } body.page-scroll .sw-logo-wrap{ display: flex; align-items: center; gap: 16px; flex-shrink: 0; } body.page-scroll .sw-logo-badge{ width: 62px; height: 62px; border-radius: 19px; background: var(--sw-pink); color: var(--sw-text); display: grid; place-items: center; box-shadow: var(--sw-shadow-sm), 0 8px 16px rgba(86,67,65,.05); } body.page-scroll .sw-logo-badge svg{ width: 31px; height: 31px; } body.page-scroll .sw-logo-badge.small{ width: 54px; height: 54px; border-radius: 17px; } body.page-scroll .sw-logo-text{ font-size: 29px; font-weight: 900; letter-spacing: -.04em; line-height: 1; color: var(--sw-text); } body.page-scroll .sw-logo-text span{ color: var(--sw-pink); } body.page-scroll .sw-nav{ flex: 1; max-width: 840px; display: flex; align-items: center; gap: 8px; background: rgba(255,255,255,.76); border: 4px solid var(--sw-border); border-radius: 999px; padding: 10px; box-shadow: 0 6px 16px rgba(86,67,65,.05); overflow-x: auto; } body.page-scroll .sw-nav::-webkit-scrollbar{ display: none; } body.page-scroll .sw-nav-link{ flex: 1 0 auto; min-width: max-content; height: 50px; padding: 0 24px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; font-size: 17px; font-weight: 800; color: #856f67; transition: .2s ease; } body.page-scroll .sw-nav-link svg{ width: 20px; height: 20px; } body.page-scroll .sw-nav-link.active{ background: var(--sw-pink); color: var(--sw-text); box-shadow: inset 0 -4px 0 rgba(86,67,65,.08); } body.page-scroll .sw-nav-link:hover{ background: rgba(224,160,149,.14); } body.page-scroll .feed-main{ padding: 58px 0 0; } body.page-scroll .feed-hero{ text-align: center; padding: 10px 0 52px; } body.page-scroll .feed-pill{ display: inline-flex; align-items: center; justify-content: center; min-height: 72px; padding: 0 34px; border-radius: 999px; background: #a9bfae; color: #4f413c; font-size: 20px; font-weight: 900; box-shadow: 0 4px 0 rgba(86,67,65,.08), 0 8px 16px rgba(86,67,65,.05); margin-bottom: 34px; } body.page-scroll .feed-title{ margin: 0 0 22px; font-size: clamp(60px, 7vw, 90px); line-height: .95; letter-spacing: -.06em; font-weight: 900; color: var(--sw-text); } body.page-scroll .feed-subtext{ max-width: 980px; margin: 0 auto; font-size: 24px; line-height: 1.7; font-weight: 700; color: var(--sw-muted); } body.page-scroll .feed-list{ display: flex; flex-direction: column; gap: 36px; padding-bottom: 88px; } body.page-scroll .feed-card{ width: min(100%, 840px); margin: 0 auto; background: rgba(252,251,248,.82); border: 5px solid var(--sw-border); border-radius: 52px; box-shadow: var(--sw-shadow); padding: 42px 42px 34px; opacity: 0; transform: translateY(26px); transition: opacity .55s ease, transform .55s ease; } body.page-scroll .feed-card.visible{ opacity: 1; transform: translateY(0); } body.page-scroll .card-tag-row{ display: flex; align-items: center; gap: 18px; margin-bottom: 32px; flex-wrap: wrap; } body.page-scroll .icon-box{ width: 64px; height: 64px; border-radius: 20px; display: grid; place-items: center; box-shadow: 0 4px 0 rgba(86,67,65,.05); } body.page-scroll .icon-box svg{ width: 30px; height: 30px; } body.page-scroll .tag-pill{ min-height: 54px; padding: 0 22px; border-radius: 20px; border: 4px solid rgba(207,194,182,.95); display: inline-flex; align-items: center; justify-content: center; font-size: 17px; font-weight: 900; box-shadow: 0 3px 0 rgba(86,67,65,.04); } body.page-scroll .tag-sleep .icon-box, body.page-scroll .tag-sleep .tag-pill{ background: #dde5de; color: #9ab49d; } body.page-scroll .tag-platform .icon-box, body.page-scroll .tag-platform .tag-pill{ background: #dfe8ef; color: #8fb2c9; } body.page-scroll .tag-good .icon-box, body.page-scroll .tag-good .tag-pill{ background: #dde5de; color: #9ab49d; } body.page-scroll .tag-fomo .icon-box, body.page-scroll .tag-fomo .tag-pill{ background: #eedfe1; color: #d49295; } body.page-scroll .tag-age .icon-box, body.page-scroll .tag-age .tag-pill{ background: #e8e8de; color: #5e4a44; } body.page-scroll .tag-academic .icon-box, body.page-scroll .tag-academic .tag-pill{ background: #eee7d8; color: #dbbb6f; } body.page-scroll .tag-balance .icon-box, body.page-scroll .tag-balance .tag-pill{ background: #e8e8de; color: #7d6a63; } body.page-scroll .card-title{ margin: 0 0 24px; font-size: clamp(36px, 4vw, 58px); line-height: 1.05; letter-spacing: -.04em; font-weight: 900; } body.page-scroll .card-title.peach{ color: var(--sw-pink-deep); } body.page-scroll .card-title.dark{ color: var(--sw-text); } body.page-scroll .stat-bubble{ display: inline-flex; align-items: center; justify-content: center; min-height: 74px; padding: 0 30px; border-radius: 26px; background: #f4e7e3; border: 4px solid #e5c4bb; color: var(--sw-text); font-size: 28px; font-weight: 900; box-shadow: 0 3px 0 rgba(86,67,65,.04); margin-bottom: 26px; } body.page-scroll .card-body{ font-size: 24px; line-height: 1.72; font-weight: 700; color: var(--sw-muted); } body.page-scroll .card-body p{ margin: 0; } body.page-scroll .card-divider{ width: 100%; height: 0; border-top: 4px dotted var(--sw-border); margin: 34px 0 24px; opacity: .95; } body.page-scroll .card-source{ font-size: 17px; font-weight: 900; color: var(--sw-text); } body.page-scroll .feed-end{ text-align: center; padding: 28px 0 110px; } body.page-scroll .feed-end-icon{ width: 110px; height: 110px; margin: 0 auto 28px; border-radius: 50%; border: 5px solid var(--sw-border); display: grid; place-items: center; color: #8e7168; } body.page-scroll .feed-end-icon svg{ width: 44px; height: 44px; } body.page-scroll .feed-end h2{ margin: 0 0 12px; font-size: 36px; line-height: 1.2; letter-spacing: -.03em; font-weight: 900; color: var(--sw-text); } body.page-scroll .feed-end p{ margin: 0; font-size: 22px; line-height: 1.6; font-weight: 700; color: var(--sw-muted); } body.page-scroll .sw-footer{ padding: 74px 0 80px; background: rgba(255,255,255,.25); border-top: 4px solid var(--sw-border); } body.page-scroll .sw-footer-inner{ display: grid; grid-template-columns: 1.2fr 1fr auto; align-items: center; gap: 34px; } body.page-scroll .sw-footer-logo-row{ display: flex; align-items: center; gap: 16px; margin-bottom: 20px; } body.page-scroll .sw-footer-title{ font-size: 34px; font-weight: 900; letter-spacing: -.04em; } body.page-scroll .sw-footer-brand p{ max-width: 470px; margin: 0; font-size: 22px; line-height: 1.6; font-weight: 700; color: var(--sw-muted); } body.page-scroll .sw-footer-links{ display: flex; align-items: center; justify-content: center; gap: 18px; flex-wrap: wrap; } body.page-scroll .sw-footer-links a{ display: inline-flex; align-items: center; justify-content: center; min-width: 96px; height: 54px; padding: 0 22px; border-radius: 999px; background: #ebe4d8; color: #8d756d; font-size: 16px; font-weight: 800; } body.page-scroll .sw-footer-face{ width: 62px; height: 62px; border-radius: 50%; background: #f7eaf0; border: 5px solid #e9d6e0; display: grid; place-items: center; color: var(--sw-text); } body.page-scroll .sw-footer-face svg{ width: 30px; height: 30px; } @media (max-width: 1200px){ body.page-scroll .feed-subtext, body.page-scroll .card-body{ font-size: 21px; } } @media (max-width: 980px){ body.page-scroll .sw-header-inner{ flex-direction: column; justify-content: center; padding: 14px 0; min-height: auto; } body.page-scroll .sw-nav{ width: 100%; max-width: none; } body.page-scroll .sw-footer-inner{ grid-template-columns: 1fr; text-align: center; } body.page-scroll .sw-footer-brand{ display: flex; flex-direction: column; align-items: center; } } @media (max-width: 760px){ body.page-scroll .sw-container, body.page-scroll .sw-header-inner{ width: min(100%, calc(100% - 24px)); } body.page-scroll .feed-main{ padding-top: 36px; } body.page-scroll .feed-pill{ min-height: 58px; font-size: 18px; padding: 0 24px; margin-bottom: 24px; } body.page-scroll .feed-title{ font-size: 54px; } body.page-scroll .feed-subtext{ font-size: 18px; } body.page-scroll .feed-card{ padding: 24px 20px 22px; border-radius: 34px; } body.page-scroll .card-title{ font-size: 30px; } body.page-scroll .stat-bubble{ min-height: 60px; padding: 0 22px; font-size: 22px; } body.page-scroll .card-body{ font-size: 18px; } body.page-scroll .feed-end{ padding-bottom: 72px; } body.page-scroll .feed-end h2{ font-size: 28px; } body.page-scroll .feed-end p{ font-size: 18px; } body.page-scroll .sw-footer{ padding: 52px 0 58px; } body.page-scroll .sw-footer-brand p{ font-size: 18px; } } /* ===== data.html extracted styles ===== */ body.page-data{ --sw-bg: #f5f3f0; --sw-card: #faf8f6; --sw-card-2: #efebe5; --sw-card-3: #e9e5df; --sw-text: #58443f; --sw-muted: #8f786f; --sw-border: #cdbfb2; --sw-pink: #de998c; --sw-pink-2: #e8d5d3; --sw-green: #dfe7df; --sw-green-ink: #a7bcae; --sw-peach: #edd8d4; --sw-peach-ink: #cfa59d; --sw-blue: #dbe7ee; --sw-blue-ink: #a7c2d4; --sw-yellow: #ebe4d6; --sw-yellow-ink: #d8bb72; --sw-plum: #e8dde8; --sw-plum-ink: #b18aa8; --sw-shadow: 0 12px 30px rgba(86,67,65,.08); --sw-shadow-sm: 0 4px 0 rgba(86,67,65,.08); --sw-shadow-md: 0 6px 0 rgba(86,67,65,.09); --sw-container: 1280px; } body.page-data *{ box-sizing: border-box; } html{ scroll-behavior: smooth; } body.page-data{ margin: 0; background: var(--sw-bg); color: var(--sw-text); font-family: "Nunito", sans-serif; overflow-x: hidden; } body.page-data a{ text-decoration: none; color: inherit; } body.page-data button, body.page-data select, body.page-data input{ font: inherit; color: inherit; } body.page-data button{ border: 0; background: none; cursor: pointer; padding: 0; } body.page-data svg{ width: 1em; height: 1em; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; } body.page-data .sw-container{ width: min(var(--sw-container), calc(100% - 48px)); margin: 0 auto; } body.page-data .sw-divider{ width: 100%; height: 4px; background: var(--sw-border); box-shadow: 0 1px 0 rgba(255,255,255,.7); } body.page-data .sw-header{ position: sticky; top: 0; z-index: 1000; background: rgba(245,243,240,.96); backdrop-filter: blur(10px); } body.page-data .sw-header-inner{ width: min(var(--sw-container), calc(100% - 48px)); margin: 0 auto; min-height: 102px; display: flex; align-items: center; justify-content: space-between; gap: 28px; } body.page-data .sw-logo-wrap{ display: flex; align-items: center; gap: 16px; flex-shrink: 0; } body.page-data .sw-logo-badge{ width: 62px; height: 62px; border-radius: 19px; background: var(--sw-pink); color: var(--sw-text); display: grid; place-items: center; box-shadow: var(--sw-shadow-sm), 0 8px 16px rgba(86,67,65,.05); } body.page-data .sw-logo-badge svg{ width: 31px; height: 31px; } body.page-data .sw-logo-badge.small{ width: 54px; height: 54px; border-radius: 17px; } body.page-data .sw-logo-text{ font-size: 29px; font-weight: 900; letter-spacing: -.04em; line-height: 1; color: var(--sw-text); } body.page-data .sw-logo-text span{ color: var(--sw-pink); } body.page-data .sw-nav{ flex: 1; max-width: 840px; display: flex; align-items: center; gap: 8px; background: rgba(255,255,255,.76); border: 4px solid var(--sw-border); border-radius: 999px; padding: 10px; box-shadow: 0 6px 16px rgba(86,67,65,.05); overflow-x: auto; } body.page-data .sw-nav::-webkit-scrollbar{ display: none; } body.page-data .sw-nav-link{ flex: 1 0 auto; min-width: max-content; height: 50px; padding: 0 24px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; font-size: 17px; font-weight: 800; color: #856f67; transition: .2s ease; } body.page-data .sw-nav-link svg{ width: 20px; height: 20px; } body.page-data .sw-nav-link.active{ background: var(--sw-pink); color: var(--sw-text); box-shadow: inset 0 -4px 0 rgba(86,67,65,.08); } body.page-data .sw-nav-link:hover{ background: rgba(224,160,149,.14); } body.page-data .research-main{ padding: 46px 0 84px; } body.page-data .hero{ text-align: center; margin-bottom: 34px; } body.page-data .hero-badge{ width: 126px; height: 126px; margin: 0 auto 22px; border-radius: 34px; background: #eee4e4; display: grid; place-items: center; box-shadow: 0 8px 0 rgba(205,191,178,.28), 0 14px 26px rgba(86,67,65,.06); transform: rotate(-2deg); } body.page-data .hero-badge svg{ width: 56px; height: 56px; } body.page-data .hero h1{ margin: 0 0 18px; font-size: clamp(48px, 6vw, 84px); line-height: .96; letter-spacing: -.06em; font-weight: 900; } body.page-data .hero-card{ width: min(980px, 100%); margin: 0 auto; background: rgba(255,255,255,.62); border: 5px solid var(--sw-border); border-radius: 30px; padding: 24px 28px; box-shadow: 0 8px 18px rgba(86,67,65,.04); font-size: 19px; line-height: 1.75; font-weight: 700; color: var(--sw-muted); } body.page-data .goal-grid{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin: 30px 0 28px; } body.page-data .goal-card{ background: rgba(255,255,255,.65); border: 4px solid var(--sw-border); border-radius: 26px; padding: 20px; box-shadow: var(--sw-shadow); } body.page-data .goal-card .label{ font-size: 12px; letter-spacing: .06em; text-transform: uppercase; font-weight: 900; color: #8b756d; margin-bottom: 10px; } body.page-data .goal-card .value{ font-size: clamp(22px, 2vw, 32px); line-height: 1.06; letter-spacing: -.03em; font-weight: 900; margin-bottom: 8px; } body.page-data .goal-card .sub{ font-size: 14px; line-height: 1.55; font-weight: 700; color: var(--sw-muted); } body.page-data .insight-grid{ display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin-bottom: 32px; } body.page-data .insight-card{ background: rgba(255,255,255,.65); border: 4px solid var(--sw-border); border-radius: 28px; padding: 22px; box-shadow: var(--sw-shadow); } body.page-data .insight-card h3{ margin: 0 0 10px; font-size: clamp(24px, 2vw, 30px); line-height: 1.08; font-weight: 900; letter-spacing: -.03em; } body.page-data .insight-card p{ margin: 0; font-size: 15px; line-height: 1.65; font-weight: 700; color: var(--sw-muted); } body.page-data .viz-panel{ background: rgba(255,255,255,.65); border: 5px solid var(--sw-border); border-radius: 38px; padding: 28px; box-shadow: var(--sw-shadow); margin-bottom: 34px; } body.page-data .viz-head{ display: flex; justify-content: space-between; align-items: end; gap: 20px; margin-bottom: 18px; } body.page-data .viz-head h2{ margin: 0 0 8px; font-size: clamp(32px, 4vw, 52px); line-height: 1; letter-spacing: -.05em; font-weight: 900; } body.page-data .viz-head p{ margin: 0; font-size: 17px; line-height: 1.65; font-weight: 700; color: var(--sw-muted); max-width: 820px; } body.page-data .viz-controls{ display: flex; flex-wrap: wrap; gap: 12px; margin-bottom: 22px; } body.page-data .sw-select{ min-height: 58px; padding: 0 18px; border-radius: 20px; border: 3px solid var(--sw-border); background: #fff; font-size: 16px; font-weight: 800; outline: none; } body.page-data .viz-grid{ display: grid; grid-template-columns: 1.15fr .85fr; gap: 18px; } body.page-data .viz-card{ background: var(--sw-card); border: 4px solid rgba(205,191,178,.8); border-radius: 28px; padding: 22px; min-height: 380px; } body.page-data .viz-card h3{ margin: 0 0 8px; font-size: clamp(22px, 2vw, 30px); font-weight: 900; letter-spacing: -.03em; line-height: 1.1; } body.page-data .viz-card p{ margin: 0 0 18px; font-size: 15px; line-height: 1.55; font-weight: 700; color: var(--sw-muted); } body.page-data #vizCanvas{ width: 100%; min-height: 320px; } body.page-data .stat-badges{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; } body.page-data .stat-badge{ background: var(--sw-card-2); border: 3px solid rgba(205,191,178,.72); border-radius: 22px; padding: 16px; } body.page-data .stat-badge .mini{ font-size: 12px; text-transform: uppercase; letter-spacing: .06em; color: #8c766d; font-weight: 900; margin-bottom: 8px; } body.page-data .stat-badge .big{ font-size: clamp(22px, 2vw, 30px); font-weight: 900; line-height: 1; letter-spacing: -.03em; margin-bottom: 6px; } body.page-data .stat-badge .caption{ font-size: 14px; line-height: 1.45; font-weight: 700; color: var(--sw-muted); } body.page-data .dataset-stack{ display: flex; flex-direction: column; gap: 34px; } body.page-data .dataset-card{ background: rgba(255,255,255,.65); border: 5px solid var(--sw-border); border-radius: 42px; padding: 28px 28px 30px; box-shadow: var(--sw-shadow); } body.page-data .dataset-head{ display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; margin-bottom: 18px; } body.page-data .dataset-title-wrap{ display: flex; align-items: flex-start; gap: 18px; min-width: 0; } body.page-data .dataset-icon{ width: 82px; height: 82px; border-radius: 24px; display: grid; place-items: center; flex-shrink: 0; box-shadow: inset 0 -4px 0 rgba(86,67,65,.06); } body.page-data .dataset-icon.pink{ background: #efd7df; color: #b58394; } body.page-data .dataset-icon.blue{ background: var(--sw-blue); color: var(--sw-blue-ink); } body.page-data .dataset-icon svg{ width: 36px; height: 36px; } body.page-data .dataset-title{ margin: 0 0 10px; font-size: clamp(32px, 4vw, 58px); line-height: .98; letter-spacing: -.05em; font-weight: 900; } body.page-data .dataset-pill{ display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 14px; border-radius: 999px; border: 2px solid var(--sw-border); background: #ece6dd; font-size: 13px; font-weight: 900; color: #866f66; margin-bottom: 16px; } body.page-data .dataset-desc{ max-width: 860px; font-size: 18px; line-height: 1.65; font-weight: 700; color: var(--sw-muted); } body.page-data .dataset-metrics{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; margin: 24px 0 18px; } body.page-data .metric-card{ background: #ddd6cf; border: 3px solid rgba(205,191,178,.7); border-radius: 24px; padding: 16px 18px; } body.page-data .metric-card .m-label{ font-size: 12px; font-weight: 900; text-transform: uppercase; letter-spacing: .06em; color: #856f67; margin-bottom: 10px; } body.page-data .metric-card .m-value{ font-size: clamp(22px, 2vw, 34px); line-height: 1.05; font-weight: 900; letter-spacing: -.03em; margin-bottom: 4px; } body.page-data .metric-card .m-sub{ font-size: 14px; font-weight: 700; color: #8f786f; line-height: 1.45; } body.page-data .table-controls{ display: grid; grid-template-columns: 1fr auto auto auto; gap: 12px; align-items: center; margin-bottom: 14px; } body.page-data .search-wrap{ height: 64px; border: 4px solid var(--sw-border); border-radius: 22px; background: rgba(255,255,255,.72); display: flex; align-items: center; gap: 12px; padding: 0 18px; } body.page-data .search-wrap svg{ width: 24px; height: 24px; color: #9a837a; } body.page-data .search-wrap input{ width: 100%; height: 100%; border: 0; outline: none; background: transparent; font-size: 18px; font-weight: 800; } body.page-data .table-btn{ min-height: 64px; padding: 0 22px; border-radius: 22px; border: 4px solid var(--sw-border); background: rgba(255,255,255,.75); display: inline-flex; align-items: center; justify-content: center; gap: 10px; font-size: 17px; font-weight: 900; box-shadow: 0 6px 12px rgba(86,67,65,.03); } body.page-data .table-btn.primary{ background: #6f5750; border-color: #6f5750; color: #fff; } body.page-data .table-status{ display: flex; justify-content: space-between; gap: 20px; font-size: 14px; line-height: 1.5; font-weight: 800; color: #8c766d; margin: 8px 0 12px; flex-wrap: wrap; } body.page-data .table-wrap{ border: 4px solid var(--sw-border); border-radius: 26px; overflow: hidden; background: #f7f5f2; } body.page-data .table-scroll{ overflow: auto; max-height: 420px; } body.page-data .table-scroll.expanded{ max-height: 900px; } body.page-data table{ width: 100%; border-collapse: collapse; min-width: 860px; } body.page-data th, body.page-data td{ text-align: left; padding: 16px 18px; border-bottom: 1px solid rgba(205,191,178,.85); font-size: 15px; font-weight: 800; color: #5e4a45; white-space: nowrap; vertical-align: top; } body.page-data th{ position: sticky; top: 0; z-index: 1; background: #e6ded2; cursor: pointer; } body.page-data th:hover{ background: #dfd5c7; } body.page-data tr:nth-child(even) td{ background: rgba(239,235,229,.62); } body.page-data .sort-ind{ margin-left: 6px; opacity: .6; font-size: 12px; } body.page-data .footer-note{ background: #f0ddda; border: 5px solid #e4c2bc; border-radius: 48px; padding: 36px 34px; margin-top: 36px; box-shadow: var(--sw-shadow); text-align: center; } body.page-data .footer-note h2{ margin: 0 0 12px; font-size: clamp(34px, 4vw, 52px); font-weight: 900; letter-spacing: -.04em; line-height: 1; } body.page-data .footer-note p{ max-width: 900px; margin: 0 auto; font-size: 20px; line-height: 1.7; font-weight: 700; } body.page-data .sw-footer{ padding: 74px 0 80px; background: #f7f6f4; border-top: 4px solid var(--sw-border); margin-top: 80px; } body.page-data .sw-footer-inner{ display: grid; grid-template-columns: 1.2fr 1fr auto; align-items: center; gap: 34px; } body.page-data .sw-footer-logo-row{ display: flex; align-items: center; gap: 16px; margin-bottom: 20px; } body.page-data .sw-footer-title{ font-size: 34px; font-weight: 900; letter-spacing: -.04em; } body.page-data .sw-footer-brand p{ max-width: 470px; margin: 0; font-size: 22px; line-height: 1.6; font-weight: 700; color: var(--sw-muted); } body.page-data .sw-footer-links{ display: flex; align-items: center; justify-content: center; gap: 18px; flex-wrap: wrap; } body.page-data .sw-footer-links a{ display: inline-flex; align-items: center; justify-content: center; min-width: 110px; height: 54px; padding: 0 22px; border-radius: 999px; background: #e8e2d8; color: #8d756d; font-size: 16px; font-weight: 800; } body.page-data .sw-footer-face{ width: 62px; height: 62px; border-radius: 50%; background: #f2dfe7; border: 5px solid #ead2dc; display: grid; place-items: center; color: var(--sw-text); } body.page-data .sw-footer-face svg{ width: 30px; height: 30px; } body.page-data /* visualization system */ .relationship-notes{ display: flex; flex-direction: column; gap: 12px; } body.page-data .relationship-note{ background: var(--sw-card-2); border-radius: 18px; padding: 14px 16px; font-size: 14px; line-height: 1.55; font-weight: 800; color: #765f59; } body.page-data .scatter-wrap{ position: relative; width: 100%; height: 340px; border-radius: 24px; background: linear-gradient(to top, rgba(205,191,178,.28) 1px, transparent 1px) 0 0 / 100% 20%, linear-gradient(to right, rgba(205,191,178,.28) 1px, transparent 1px) 0 0 / 20% 100%, #f8f5f1; border: 3px solid rgba(205,191,178,.72); overflow: hidden; } body.page-data .scatter-point{ position: absolute; border-radius: 50%; transform: translate(-50%, 50%); border: 2px solid rgba(255,255,255,.88); box-shadow: 0 6px 12px rgba(86,67,65,.08); opacity: .92; } body.page-data .scatter-axis-label{ font-size: 13px; font-weight: 900; color: #866f66; margin-top: 10px; } body.page-data .scatter-legend, body.page-data .map-legend, body.page-data .matrix-legend, body.page-data .wave-legend{ display: flex; flex-wrap: wrap; gap: 10px; margin-top: 14px; } body.page-data .legend-chip{ min-height: 34px; padding: 0 12px; border-radius: 999px; background: var(--sw-card-2); border: 2px solid rgba(205,191,178,.75); display: inline-flex; align-items: center; gap: 8px; font-size: 13px; font-weight: 900; color: #7f6861; } body.page-data .legend-dot{ width: 12px; height: 12px; border-radius: 50%; display: inline-block; } body.page-data .matrix{ display: grid; gap: 8px; } body.page-data .matrix-head, body.page-data .matrix-side, body.page-data .matrix-cell{ border-radius: 16px; min-height: 62px; padding: 10px; display: flex; align-items: center; justify-content: center; text-align: center; } body.page-data .matrix-head, body.page-data .matrix-side{ background: #ece3d8; font-size: 13px; font-weight: 900; color: #6e5751; } body.page-data .matrix-cell{ color: #5d4844; font-size: 14px; font-weight: 900; line-height: 1.3; border: 2px solid rgba(255,255,255,.75); } body.page-data .stack-bars{ display: flex; flex-direction: column; gap: 14px; } body.page-data .stack-row{ display: grid; grid-template-columns: 180px 1fr; gap: 12px; align-items: center; } body.page-data .stack-label{ font-size: 14px; font-weight: 900; color: #715b55; } body.page-data .stack-track{ display: flex; width: 100%; min-height: 28px; overflow: hidden; border-radius: 999px; background: #eadfd7; } body.page-data .stack-seg{ display: flex; align-items: center; justify-content: center; font-size: 11px; font-weight: 900; color: #5d4742; min-width: 24px; } body.page-data .donut-wrap{ display: grid; grid-template-columns: 220px 1fr; gap: 22px; align-items: center; } body.page-data .donut{ width: 220px; height: 220px; border-radius: 50%; position: relative; margin: 0 auto; } body.page-data .donut::after{ content: ""; position: absolute; inset: 32px; background: #faf8f6; border-radius: 50%; box-shadow: inset 0 0 0 3px rgba(205,191,178,.5); } body.page-data .donut-center{ position: absolute; inset: 0; display: grid; place-items: center; z-index: 2; text-align: center; padding: 48px; font-size: 14px; font-weight: 900; color: #6c5751; } body.page-data .state-map{ display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 10px; } body.page-data .state-tile{ border-radius: 16px; min-height: 68px; padding: 10px 8px; display: flex; flex-direction: column; justify-content: center; align-items: center; border: 2px solid rgba(255,255,255,.8); text-align: center; } body.page-data .state-code{ font-size: 13px; font-weight: 900; color: #5f4a45; } body.page-data .state-value{ font-size: 12px; font-weight: 800; color: #755f58; margin-top: 4px; } body.page-data .wave-wrap{ display: flex; align-items: end; gap: 10px; height: 260px; padding: 20px 10px 4px; border-radius: 24px; background: linear-gradient(180deg, rgba(255,255,255,.35), rgba(233,229,223,.8)); border: 3px solid rgba(205,191,178,.72); } body.page-data .wave-bar-wrap{ flex: 1; display: flex; flex-direction: column; align-items: center; justify-content: end; gap: 10px; min-width: 0; } body.page-data .wave-bar{ width: 100%; border-radius: 999px 999px 22px 22px; min-height: 14px; box-shadow: inset 0 -4px 0 rgba(86,67,65,.06); } body.page-data .wave-label{ font-size: 12px; line-height: 1.25; text-align: center; font-weight: 900; color: #715a54; word-break: break-word; } body.page-data .mini-bars{ display: flex; flex-direction: column; gap: 14px; } body.page-data .mini-row{ display: grid; grid-template-columns: 170px 1fr 62px; gap: 12px; align-items: center; } body.page-data .mini-label{ font-size: 14px; font-weight: 900; color: #735d57; word-break: break-word; } body.page-data .mini-track{ width: 100%; height: 18px; border-radius: 999px; background: #eadfd7; overflow: hidden; } body.page-data .mini-fill{ height: 100%; border-radius: inherit; background: linear-gradient(90deg, #df9c91 0%, #d7b2aa 100%); } body.page-data .mini-value{ font-size: 14px; font-weight: 900; color: #7b655f; text-align: right; } @media (max-width: 1180px){ body.page-data .goal-grid, body.page-data .insight-grid, body.page-data .dataset-metrics{ grid-template-columns: repeat(2, minmax(0, 1fr)); } body.page-data .viz-grid{ grid-template-columns: 1fr; } } @media (max-width: 980px){ body.page-data .sw-header-inner{ flex-direction: column; justify-content: center; padding: 14px 0; min-height: auto; } body.page-data .sw-nav{ width: 100%; max-width: none; } body.page-data .table-controls{ grid-template-columns: 1fr 1fr; } body.page-data .table-controls .search-wrap{ grid-column: 1 / -1; } body.page-data .sw-footer-inner{ grid-template-columns: 1fr; text-align: center; } body.page-data .sw-footer-brand{ display: flex; flex-direction: column; align-items: center; } body.page-data .dataset-head{ flex-direction: column; } } @media (max-width: 760px){ body.page-data .sw-container, body.page-data .sw-header-inner{ width: min(100%, calc(100% - 24px)); } body.page-data .research-main{ padding-top: 34px; } body.page-data .hero-badge{ width: 96px; height: 96px; border-radius: 28px; } body.page-data .hero-badge svg{ width: 42px; height: 42px; } body.page-data .hero h1{ font-size: 50px; } body.page-data .hero-card{ padding: 20px 18px; font-size: 17px; } body.page-data .goal-grid, body.page-data .insight-grid, body.page-data .dataset-metrics, body.page-data .stat-badges{ grid-template-columns: 1fr; } body.page-data .viz-panel, body.page-data .dataset-card{ padding: 18px; border-radius: 28px; } body.page-data .dataset-title{ font-size: 34px; } body.page-data .dataset-icon{ width: 66px; height: 66px; border-radius: 20px; } body.page-data .dataset-icon svg{ width: 28px; height: 28px; } body.page-data .table-controls{ grid-template-columns: 1fr; } body.page-data .stack-row, body.page-data .mini-row{ grid-template-columns: 1fr; } body.page-data .donut-wrap{ grid-template-columns: 1fr; } body.page-data .state-map{ grid-template-columns: repeat(3, minmax(0, 1fr)); } body.page-data .sw-footer{ padding: 52px 0 58px; } body.page-data .sw-footer-brand p{ font-size: 18px; } } /* ===== advice.html extracted styles ===== */ body.page-advice{ --sw-bg: #f5f3f0; --sw-card: #faf8f6; --sw-card-2: #efebe5; --sw-card-3: #e9e5df; --sw-text: #58443f; --sw-muted: #8f786f; --sw-border: #cdbfb2; --sw-pink: #de998c; --sw-pink-2: #e8d5d3; --sw-green: #dfe7df; --sw-green-ink: #a7bcae; --sw-peach: #edd8d4; --sw-peach-ink: #cfa59d; --sw-blue: #dbe7ee; --sw-blue-ink: #a7c2d4; --sw-yellow: #ebe4d6; --sw-yellow-ink: #d8bb72; --sw-shadow: 0 12px 30px rgba(86,67,65,.08); --sw-shadow-sm: 0 4px 0 rgba(86,67,65,.08); --sw-shadow-md: 0 6px 0 rgba(86,67,65,.09); --sw-container: 1280px; } body.page-advice *{ box-sizing: border-box; } html{ scroll-behavior: smooth; } body.page-advice{ margin: 0; background: var(--sw-bg); color: var(--sw-text); font-family: "Nunito", sans-serif; overflow-x: hidden; } body.page-advice a{ text-decoration: none; color: inherit; } body.page-advice button{ font: inherit; border: 0; background: none; color: inherit; cursor: pointer; padding: 0; } body.page-advice svg{ width: 1em; height: 1em; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; } body.page-advice .sw-container{ width: min(var(--sw-container), calc(100% - 48px)); margin: 0 auto; } body.page-advice .sw-divider{ width: 100%; height: 4px; background: var(--sw-border); box-shadow: 0 1px 0 rgba(255,255,255,.7); } body.page-advice .sw-header{ position: sticky; top: 0; z-index: 1000; background: rgba(245,243,240,.96); backdrop-filter: blur(10px); } body.page-advice .sw-header-inner{ width: min(var(--sw-container), calc(100% - 48px)); margin: 0 auto; min-height: 102px; display: flex; align-items: center; justify-content: space-between; gap: 28px; } body.page-advice .sw-logo-wrap{ display: flex; align-items: center; gap: 16px; flex-shrink: 0; } body.page-advice .sw-logo-badge{ width: 62px; height: 62px; border-radius: 19px; background: var(--sw-pink); color: var(--sw-text); display: grid; place-items: center; box-shadow: var(--sw-shadow-sm), 0 8px 16px rgba(86,67,65,.05); } body.page-advice .sw-logo-badge svg{ width: 31px; height: 31px; } body.page-advice .sw-logo-badge.small{ width: 54px; height: 54px; border-radius: 17px; } body.page-advice .sw-logo-text{ font-size: 29px; font-weight: 900; letter-spacing: -.04em; line-height: 1; color: var(--sw-text); } body.page-advice .sw-logo-text span{ color: var(--sw-pink); } body.page-advice .sw-nav{ flex: 1; max-width: 840px; display: flex; align-items: center; gap: 8px; background: rgba(255,255,255,.76); border: 4px solid var(--sw-border); border-radius: 999px; padding: 10px; box-shadow: 0 6px 16px rgba(86,67,65,.05); overflow-x: auto; } body.page-advice .sw-nav::-webkit-scrollbar{ display: none; } body.page-advice .sw-nav-link{ flex: 1 0 auto; min-width: max-content; height: 50px; padding: 0 24px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; gap: 10px; font-size: 17px; font-weight: 800; color: #856f67; transition: .2s ease; } body.page-advice .sw-nav-link svg{ width: 20px; height: 20px; } body.page-advice .sw-nav-link.active{ background: var(--sw-pink); color: var(--sw-text); box-shadow: inset 0 -4px 0 rgba(86,67,65,.08); } body.page-advice .sw-nav-link:hover{ background: rgba(224,160,149,.14); } body.page-advice .advice-main{ padding: 56px 0 80px; } body.page-advice .hero{ text-align: center; margin-bottom: 38px; } body.page-advice .hero-icon{ width: 128px; height: 128px; margin: 0 auto 24px; border-radius: 36px; background: #eee4e4; color: var(--sw-text); display: grid; place-items: center; box-shadow: 0 8px 0 rgba(205,191,178,.28), 0 14px 26px rgba(86,67,65,.06); transform: rotate(-2deg); } body.page-advice .hero-icon svg{ width: 56px; height: 56px; } body.page-advice .hero h1{ margin: 0 0 24px; font-size: clamp(48px, 6vw, 86px); line-height: .96; letter-spacing: -.06em; font-weight: 900; } body.page-advice .hero-card{ width: min(740px, 100%); margin: 0 auto; background: rgba(255,255,255,.62); border: 5px solid var(--sw-border); border-radius: 30px; padding: 26px 30px; box-shadow: 0 8px 18px rgba(86,67,65,.04); font-size: 20px; line-height: 1.75; font-weight: 700; color: var(--sw-muted); } body.page-advice .accordion-stack{ width: min(950px, 100%); margin: 0 auto; display: flex; flex-direction: column; gap: 26px; } body.page-advice .accordion{ background: rgba(255,255,255,.65); border: 5px solid var(--sw-border); border-radius: 48px; box-shadow: var(--sw-shadow); overflow: hidden; transition: transform .18s ease; } body.page-advice .accordion:hover{ transform: translateY(-1px); } body.page-advice .accordion-head{ width: 100%; display: flex; align-items: center; gap: 22px; padding: 28px 30px; text-align: left; } body.page-advice .acc-icon{ width: 84px; height: 84px; border-radius: 24px; display: grid; place-items: center; flex-shrink: 0; box-shadow: inset 0 -4px 0 rgba(86,67,65,.06); } body.page-advice .acc-icon svg{ width: 40px; height: 40px; } body.page-advice .acc-icon.green{ background: var(--sw-green); color: var(--sw-green-ink); } body.page-advice .acc-icon.peach{ background: var(--sw-peach); color: var(--sw-peach-ink); } body.page-advice .acc-icon.blue{ background: var(--sw-blue); color: var(--sw-blue-ink); } body.page-advice .acc-icon.pink{ background: #f0dddd; color: #d5a0a4; } body.page-advice .acc-icon.yellow{ background: var(--sw-yellow); color: var(--sw-yellow-ink); } body.page-advice .acc-copy{ min-width: 0; flex: 1; } body.page-advice .acc-title{ font-size: clamp(24px, 3vw, 46px); line-height: 1.06; font-weight: 900; letter-spacing: -.04em; margin-bottom: 6px; } body.page-advice .acc-sub{ font-size: 16px; font-weight: 700; color: var(--sw-muted); } body.page-advice .acc-arrow{ width: 58px; height: 58px; border-radius: 50%; border: 4px solid var(--sw-border); background: rgba(255,255,255,.75); display: grid; place-items: center; flex-shrink: 0; transition: transform .24s ease; } body.page-advice .acc-arrow svg{ width: 25px; height: 25px; } body.page-advice .accordion.open .acc-arrow{ transform: rotate(180deg); } body.page-advice .accordion-body{ max-height: 0; overflow: hidden; transition: max-height .38s ease; border-top: 0 solid transparent; } body.page-advice .accordion.open .accordion-body{ border-top: 4px solid rgba(205,191,178,.62); } body.page-advice .accordion-inner{ padding: 30px; display: flex; flex-direction: column; gap: 20px; } body.page-advice .tip-card{ background: var(--sw-card-2); border-radius: 30px; padding: 24px 28px; display: flex; align-items: flex-start; gap: 18px; box-shadow: inset 0 0 0 3px rgba(205,191,178,.28); } body.page-advice .tip-check{ width: 44px; height: 44px; border-radius: 50%; border: 3px solid rgba(205,191,178,.9); display: grid; place-items: center; flex-shrink: 0; margin-top: 2px; background: rgba(255,255,255,.35); } body.page-advice .tip-check svg{ width: 22px; height: 22px; } body.page-advice .tip-check.green{ color: #a7bcae; } body.page-advice .tip-check.peach{ color: #cfa59d; } body.page-advice .tip-check.blue{ color: #a7c2d4; } body.page-advice .tip-check.pink{ color: #d5a0a4; } body.page-advice .tip-check.yellow{ color: #d8bb72; } body.page-advice .tip-content{ min-width: 0; flex: 1; } body.page-advice .tip-title{ font-size: clamp(22px, 2.8vw, 34px); line-height: 1.15; font-weight: 900; letter-spacing: -.03em; margin-bottom: 12px; } body.page-advice .tip-text{ font-size: 18px; line-height: 1.7; font-weight: 700; color: var(--sw-muted); } body.page-advice .tip-pill{ display: inline-flex; align-items: center; gap: 8px; margin-top: 18px; min-height: 42px; padding: 0 16px; border-radius: 999px; border: 2px solid rgba(205,191,178,.95); background: rgba(255,255,255,.65); color: #9a847b; font-size: 13px; font-weight: 900; } body.page-advice .tip-pill svg{ width: 15px; height: 15px; } body.page-advice .remember-wrap{ width: min(950px, 100%); margin: 26px auto 0; position: relative; } body.page-advice .remember-badge{ position: absolute; right: -18px; top: -18px; width: 64px; height: 64px; border-radius: 50%; border: 5px solid var(--sw-border); background: rgba(255,255,255,.9); color: var(--sw-pink); display: grid; place-items: center; box-shadow: 0 8px 18px rgba(86,67,65,.05); } body.page-advice .remember-badge svg{ width: 28px; height: 28px; } body.page-advice .remember-card{ background: #f0ddda; border: 5px solid #e4c2bc; border-radius: 58px; padding: 54px 50px 50px; text-align: center; box-shadow: var(--sw-shadow); } body.page-advice .remember-card h2{ margin: 0 0 18px; font-size: clamp(36px, 4vw, 58px); line-height: 1; letter-spacing: -.04em; font-weight: 900; } body.page-advice .remember-card p{ max-width: 760px; margin: 0 auto; font-size: 22px; line-height: 1.75; font-weight: 700; color: var(--sw-text); } body.page-advice .sw-footer{ padding: 74px 0 80px; background: #f7f6f4; border-top: 4px solid var(--sw-border); } body.page-advice .sw-footer-inner{ display: grid; grid-template-columns: 1.2fr 1fr auto; align-items: center; gap: 34px; } body.page-advice .sw-footer-logo-row{ display: flex; align-items: center; gap: 16px; margin-bottom: 20px; } body.page-advice .sw-footer-title{ font-size: 34px; font-weight: 900; letter-spacing: -.04em; } body.page-advice .sw-footer-brand p{ max-width: 470px; margin: 0; font-size: 22px; line-height: 1.6; font-weight: 700; color: var(--sw-muted); } body.page-advice .sw-footer-links{ display: flex; align-items: center; justify-content: center; gap: 18px; flex-wrap: wrap; } body.page-advice .sw-footer-links a{ display: inline-flex; align-items: center; justify-content: center; min-width: 110px; height: 54px; padding: 0 22px; border-radius: 999px; background: #e8e2d8; color: #8d756d; font-size: 16px; font-weight: 800; } body.page-advice .sw-footer-face{ width: 62px; height: 62px; border-radius: 50%; background: #f2dfe7; border: 5px solid #ead2dc; display: grid; place-items: center; color: var(--sw-text); } body.page-advice .sw-footer-face svg{ width: 30px; height: 30px; } @media (max-width: 980px){ body.page-advice .sw-header-inner{ flex-direction: column; justify-content: center; padding: 14px 0; min-height: auto; } body.page-advice .sw-nav{ width: 100%; max-width: none; } body.page-advice .sw-footer-inner{ grid-template-columns: 1fr; text-align: center; } body.page-advice .sw-footer-brand{ display: flex; flex-direction: column; align-items: center; } body.page-advice .remember-badge{ right: 8px; } } @media (max-width: 760px){ body.page-advice .sw-container, body.page-advice .sw-header-inner{ width: min(100%, calc(100% - 24px)); } body.page-advice .advice-main{ padding-top: 34px; } body.page-advice .hero-icon{ width: 96px; height: 96px; border-radius: 28px; } body.page-advice .hero-icon svg{ width: 42px; height: 42px; } body.page-advice .hero h1{ font-size: 50px; } body.page-advice .hero-card{ padding: 20px 18px; font-size: 17px; } body.page-advice .accordion{ border-radius: 32px; } body.page-advice .accordion-head{ padding: 18px 16px; gap: 14px; } body.page-advice .acc-icon{ width: 64px; height: 64px; border-radius: 18px; } body.page-advice .acc-icon svg{ width: 30px; height: 30px; } body.page-advice .acc-title{ font-size: 28px; } body.page-advice .acc-sub{ font-size: 14px; } body.page-advice .acc-arrow{ width: 48px; height: 48px; } body.page-advice .accordion-inner{ padding: 18px 16px 20px; } body.page-advice .tip-card{ padding: 18px 16px; border-radius: 22px; gap: 12px; } body.page-advice .tip-title{ font-size: 22px; } body.page-advice .tip-text{ font-size: 16px; } body.page-advice .remember-card{ border-radius: 34px; padding: 36px 20px 32px; } body.page-advice .remember-badge{ width: 52px; height: 52px; right: 8px; top: -12px; } body.page-advice .remember-card p{ font-size: 18px; } body.page-advice .sw-footer{ padding: 52px 0 58px; } body.page-advice .sw-footer-brand p{ font-size: 18px; } } /* ===== survey.html custom styles ===== */ body.page-survey{ --sw-bg: #f5f3f0; --sw-card: #faf8f6; --sw-card-2: #efebe5; --sw-card-3: #e9e5df; --sw-text: #58443f; --sw-muted: #8f786f; --sw-border: #cdbfb2; --sw-pink: #de998c; --sw-pink-2: #e8d5d3; --sw-green: #dfe7df; --sw-green-ink: #a7bcae; --sw-peach: #edd8d4; --sw-peach-ink: #cfa59d; --sw-blue: #dbe7ee; --sw-blue-ink: #a7c2d4; --sw-yellow: #ebe4d6; --sw-yellow-ink: #d8bb72; --sw-shadow: 0 12px 30px rgba(86,67,65,.08); --sw-shadow-sm: 0 4px 0 rgba(86,67,65,.08); --sw-shadow-md: 0 6px 0 rgba(86,67,65,.09); --sw-container: 1280px; margin: 0; background: var(--sw-bg); color: var(--sw-text); font-family: "Nunito", sans-serif; overflow-x: hidden; } body.page-survey *{ box-sizing: border-box; } body.page-survey a{ text-decoration: none; color: inherit; } body.page-survey button, body.page-survey input, body.page-survey select, body.page-survey textarea{ font: inherit; color: inherit; } body.page-survey button{ cursor: pointer; } body.page-survey svg{ width: 1em; height: 1em; stroke-width: 2.2; stroke-linecap: round; stroke-linejoin: round; flex-shrink: 0; } body.page-survey .sw-container{ width: min(var(--sw-container), calc(100% - 48px)); margin: 0 auto; } body.page-survey .survey-main{ padding: 52px 0 84px; } body.page-survey .survey-hero{ text-align: center; margin-bottom: 34px; } body.page-survey .survey-icon{ width: 128px; height: 128px; margin: 0 auto 24px; border-radius: 36px; background: #eee4e4; color: var(--sw-text); display: grid; place-items: center; box-shadow: 0 8px 0 rgba(205,191,178,.28), 0 14px 26px rgba(86,67,65,.06); transform: rotate(-2deg); } body.page-survey .survey-icon svg{ width: 56px; height: 56px; } body.page-survey .survey-pill{ display: inline-flex; align-items: center; justify-content: center; min-height: 54px; padding: 0 24px; border-radius: 999px; background: var(--sw-green); color: #6f8174; font-size: 16px; font-weight: 900; border: 3px solid rgba(205,191,178,.72); margin: 0 0 22px; } body.page-survey .survey-hero h1{ margin: 0 0 20px; font-size: clamp(48px, 6vw, 86px); line-height: .96; letter-spacing: -.06em; font-weight: 900; } body.page-survey .survey-lede{ width: min(920px, 100%); margin: 0 auto; background: rgba(255,255,255,.62); border: 5px solid var(--sw-border); border-radius: 30px; padding: 26px 30px; box-shadow: 0 8px 18px rgba(86,67,65,.04); font-size: 20px; line-height: 1.75; font-weight: 700; color: var(--sw-muted); } body.page-survey .survey-shell{ width: min(1040px, calc(100% - 48px)); } body.page-survey .survey-form{ display: flex; flex-direction: column; gap: 28px; } body.page-survey .survey-progress-card, body.page-survey .survey-section, body.page-survey .survey-submit-card, body.page-survey .survey-result{ background: rgba(255,255,255,.66); border: 5px solid var(--sw-border); border-radius: 42px; box-shadow: var(--sw-shadow); } body.page-survey .survey-progress-card{ padding: 22px; display: grid; grid-template-columns: 260px 1fr; gap: 20px; align-items: center; } body.page-survey .mini-label{ display: block; font-size: 12px; letter-spacing: .07em; text-transform: uppercase; font-weight: 900; color: #8c766d; margin-bottom: 7px; } body.page-survey .survey-progress-card strong{ font-size: 28px; font-weight: 900; letter-spacing: -.03em; } body.page-survey .survey-progress-bar{ height: 28px; border-radius: 999px; border: 4px solid var(--sw-border); background: #f3eee7; overflow: hidden; } body.page-survey .survey-progress-bar span{ display: block; width: 0%; height: 100%; background: linear-gradient(90deg, #e8b1aa, var(--sw-pink)); border-radius: 999px; transition: width .22s ease; } body.page-survey .survey-section{ padding: 30px; } body.page-survey .survey-section legend{ float: left; width: 100%; margin: 0 0 10px; font-size: clamp(30px, 4vw, 50px); line-height: 1; letter-spacing: -.04em; font-weight: 900; } body.page-survey .section-note{ clear: both; margin: 0 0 22px; font-size: 17px; line-height: 1.65; font-weight: 700; color: var(--sw-muted); } body.page-survey .survey-grid{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; } body.page-survey .survey-field{ display: flex; flex-direction: column; gap: 10px; background: var(--sw-card-2); border-radius: 28px; padding: 20px; box-shadow: inset 0 0 0 3px rgba(205,191,178,.32); } body.page-survey .survey-field.wide{ margin-top: 18px; } body.page-survey .survey-field span, body.page-survey .checkbox-title, body.page-survey .slider-field span{ font-size: 16px; line-height: 1.45; font-weight: 900; color: #65504a; } body.page-survey .survey-field input, body.page-survey .survey-field select, body.page-survey .survey-field textarea{ width: 100%; border: 4px solid var(--sw-border); border-radius: 20px; background: #fffdf9; outline: none; font-weight: 800; } body.page-survey .survey-field input, body.page-survey .survey-field select{ min-height: 58px; padding: 0 16px; } body.page-survey .survey-field textarea{ resize: vertical; padding: 16px; line-height: 1.55; } body.page-survey .checkbox-card{ margin-top: 18px; background: var(--sw-card-2); border-radius: 28px; padding: 20px; box-shadow: inset 0 0 0 3px rgba(205,191,178,.32); } body.page-survey .checkbox-title{ display: block; margin-bottom: 14px; } body.page-survey .checkbox-grid{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; } body.page-survey .checkbox-grid label{ min-height: 48px; border-radius: 18px; background: #fffdf9; border: 3px solid rgba(205,191,178,.75); display: flex; align-items: center; gap: 10px; padding: 0 12px; font-size: 14px; font-weight: 900; } body.page-survey .slider-stack{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; } body.page-survey .slider-field{ background: var(--sw-card-2); border-radius: 26px; padding: 18px; display: grid; grid-template-columns: 1fr 44px; gap: 14px; align-items: center; box-shadow: inset 0 0 0 3px rgba(205,191,178,.32); } body.page-survey .slider-field span{ grid-column: 1 / -1; } body.page-survey .slider-field input{ width: 100%; accent-color: var(--sw-pink); } body.page-survey .slider-field output{ width: 44px; height: 44px; display: grid; place-items: center; border-radius: 16px; background: #fffdf9; border: 3px solid var(--sw-border); font-weight: 900; } body.page-survey .survey-submit-card{ padding: 30px; display: grid; grid-template-columns: 1fr auto; gap: 22px; align-items: center; background: #f0ddda; border-color: #e4c2bc; } body.page-survey .survey-submit-card h2{ margin: 0 0 10px; font-size: clamp(30px, 4vw, 48px); line-height: 1; letter-spacing: -.04em; font-weight: 900; } body.page-survey .survey-submit-card p{ margin: 0; color: #7f665f; font-size: 18px; line-height: 1.6; font-weight: 700; } body.page-survey .survey-submit{ min-height: 70px; padding: 0 30px; border-radius: 999px; background: #6f5750; color: #fff; border: 0; font-size: 19px; font-weight: 900; box-shadow: 0 5px 0 rgba(86,67,65,.18); } body.page-survey .survey-result{ padding: 24px 28px; text-align: center; } body.page-survey .survey-result h3{ margin: 0 0 8px; font-size: 32px; line-height: 1; letter-spacing: -.03em; font-weight: 900; } body.page-survey .survey-result p{ margin: 0; font-size: 18px; line-height: 1.5; font-weight: 700; color: var(--sw-muted); } @media (max-width: 900px){ body.page-survey .survey-progress-card, body.page-survey .survey-submit-card{ grid-template-columns: 1fr; } body.page-survey .survey-grid, body.page-survey .slider-stack{ grid-template-columns: 1fr; } body.page-survey .checkbox-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); } } @media (max-width: 640px){ body.page-survey .survey-shell, body.page-survey .sw-container{ width: min(100% - 28px, var(--sw-container)); } body.page-survey .survey-section, body.page-survey .survey-submit-card{ padding: 22px; border-radius: 32px; } body.page-survey .checkbox-grid{ grid-template-columns: 1fr; } } /* ==================== index.html ==================== */ ScrollWell | Home
ScrollWell
Take control of your digital life

Scroll Well,
Live Better.

Understand how your phone habits affect your mental health through interactive games and bite-sized insights. No lectures, just real data and better vibes.

SCROLLWELL APP

DID YOU KNOW?

There's a nearly 2-hour gap in sleep between students with Negative vs Positive social media outcomes.

FUN FACT

LinkedIn users tend to report more positive outcomes compared to other platforms.

Mental Health Score
7.8

The internet is great, but...

We spend an average of 5.2 hours a day on social media. Heavy users (7+ hrs) report a 40% drop in mental health scores. But it's not just about screen time—it's about how and where we spend it.

2hr Gap

Sleep Quality

Between positive and negative outcomes.

74%

Platform Matters

Negative reporting rate for heavy short-form video users.

+ Health

The Good News

Curated use can actually improve connection and inspiration.

Live a day in the life.

Our interactive simulator lets you control a 24-hour day. Choose when to scroll, when to study, when to sleep, and watch your health stats react in real-time based on actual research data.

Play Simulator
Real Data!
Self Confidence Decreasing
FOMO Level High
Sleep Quality Good

Ready to scroll well?

Join thousands of students who are learning to balance their digital diets without giving up the internet.

Explore the Feed
/* ==================== game.html ==================== */ ScrollWell | Simulator
ScrollWell

A Day in Your Life

You have 24 hours. How will you spend them? Allocate your time between social media, exercise, sleep, socializing, and more. Watch how your choices affect your mental health in real-time.

Effects are based on real research data from studies of 1,700+ students.

Plan Your Day

24h remaining

Your Day Results

B

Pretty balanced day.

You mixed responsibilities and rest, but a few choices still pushed your stress higher than ideal.

/* ==================== scroll.html ==================== */ ScrollWell | For You
ScrollWell
Scroll to learn

For You

Bite-sized facts, tips, and insights about social media and your health. Scroll through real research — no comparison culture, no cancel culture, just knowledge.

Sleep

The 2-Hour Sleep Gap

2-hour gap

Students with negative social media outcomes sleep an average of 5.4 hours per night, compared to 7.6 hours for those with positive outcomes. That's a nearly 2-hour difference — one of the strongest signals in the data.

Source: Kaggle Student Health Dataset (n=1,700)
Platform Impact

Not All Platforms Are Equal

74% vs 38%

TikTok and Snapchat users are 74% and 68% likely to report negative outcomes respectively. LinkedIn users? Only 38%. The content type and social dynamics of each platform matter enormously.

Source: Kaggle Student Health Dataset
Good News

Pinterest: The Positive Exception

Platforms like Pinterest can potentially be useful while avoiding the general harmful effects of social media. It's seen as less of a direct viewing-friends-posts platform and more of an inspirational and tutorial platform.

Source: Multiple studies
FOMO

Snapchat's FOMO Effect

Snapchat contributes more to feelings like FOMO and isolation than other platforms. Seeing messages and private story posts where you were not included can intensify social anxiety and make everyday life feel smaller.

Source: Kaggle Student Health Dataset
Age Factor

Age Makes a Difference

Graduate students show slightly better mental health scores than high school students despite similar usage hours. This suggests coping strategies or self-awareness improve with age and education level.

Academic Impact

Your Grades Feel It Too

Students with heavier social media use tend to report lower academic confidence and more difficulty focusing. The issue is not just time lost — it is also attention lost, sleep lost, and stress carried into school.

Source: Student self-report trend data
Takeaway

It’s Not About Quitting — It’s About Balance

Social media is not automatically good or bad. The strongest predictor of better outcomes is more intentional use: fewer late-night sessions, less comparison-heavy scrolling, and more real-world rest, movement, and connection.

You've reached the end — and that's okay.

Unlike other feeds, we want you to stop scrolling and go live your life.

/* ==================== data.html ==================== */ ScrollWell | Research
ScrollWell

Research & Data

This page turns social media data into relationships, not just raw counts. Instead of simply listing what appears most often, ScrollWell compares variables — like platform and sleep, platform and mental health impact, or academic performance and wellbeing — so users can actually see patterns and consequences.
Project Goal
Multiple perspectives
Bring together different sources so users get a fuller picture in one place.
Project Goal
Interactive visuals
Use charts that reveal relationships between variables, not just isolated totals.
Project Goal
Ongoing survey growth
Support future optional survey responses so the site can keep building new research.
Project Goal
Evidence-backed advice
Connect patterns from data to clear recommendations users can act on.

Platform differences matter

ScrollWell should make it obvious that not every app affects people in exactly the same way. Comparison-heavy platforms can produce different outcomes than tutorial or inspiration-based ones.

Sleep is one of the clearest pathways

A big part of the site’s story is that social media often impacts mental health indirectly through poor sleep, overstimulation, and lost time.

Research should feel explorable

The page is designed so users can search full tables, then jump into more visual, memorable relationship views.

Interactive Visualizations

These visuals focus on relationships between variables. Switch datasets and views to compare patterns like platform vs sleep, platform vs mental health impact, academic performance vs impact, usage vs sleep, birth year vs mental health, state-based intensity, relationship status vs conflicts, conflicts vs addiction, and country vs addiction level.

Chart

Description

Quick Read

Automatic highlights generated from the current relationship view.

Dataset 1

Social Media & Mental Health
This dataset is structured to support comparisons like platform vs sleep, usage vs impact, and academic performance vs mental health.
Click a header to sort by that column.

Dataset 2

Survey / Additional Research
This second dataset is designed for broader comparisons such as birth year vs mental-health effect, state vs reported impact, or any future survey relationships you add.
This section can later support your optional website survey too.

Dataset 3

Relationships, Conflict & Addiction
This dataset is structured for comparisons like relationship status vs conflicts, conflicts vs addiction score, country vs addiction level, platform vs conflict pressure, and relationship context vs academic impact.
Explore country, relationship, conflict, platform, and addiction patterns in one place.
/* ==================== advice.html ==================== */ ScrollWell | Advice
ScrollWell

Evidence-Based Advice

Practical, actionable tips grounded in research. Not lectures — just things that actually help, based on data from thousands of students.
Follow the 2-Hour Rule
Research consistently shows that keeping social media usage under 2 hours per day is associated with significantly better mental health outcomes. Use built-in screen time limits on your phone to enforce this.
Kaggle Student Health Dataset
Set a Digital Sunset
Stop using screens at least 1 hour before bed. The blue light and mental stimulation from scrolling directly compete with your sleep quality — and sleep matters more than almost anything else in this dataset.
Use LinkedIn for Motivation
LinkedIn users report more positive mental health outcomes than users of other platforms. If you need a professional social network, it’s a relatively healthy choice.
Be Mindful of Snapchat FOMO
Snapchat uniquely contributes to feelings of FOMO and isolation through private stories and group chats. Consider how it makes you feel and adjust usage accordingly.
Prefer More Intentional Platforms
Platforms built around learning, inspiration, or professional growth tend to create fewer negative outcomes than comparison-heavy apps.
Use Pinterest for Ideas, Not Validation
Pinterest appears to function differently from many other platforms — more inspiration, less direct social comparison.
Reduce Short-Form Overload
TikTok and Snapchat were associated with higher negative-outcome rates. If an app leaves you feeling wired, low, or inadequate, that’s useful information.
Curate Aggressively
Unfollow accounts that trigger comparison, anxiety, or doomscrolling. Your feed should support you — not drain you.
Aim for 7+ Hours
Students who sleep 7+ hours report dramatically better mental health outcomes. The data shows a nearly 2-hour sleep gap between positive and negative outcome groups (7.6h vs 5.4h).
Kaggle Student Health Dataset
Night Mode Isn’t Enough
While night mode reduces blue light, it doesn’t address the mental stimulation of scrolling. The content itself — especially comparison-heavy content — can keep your mind racing.
Charge Your Phone Away From Bed
Physical distance matters. When your phone is out of reach, it’s easier to avoid “just five more minutes” turning into an hour.
Prioritize Face-to-Face Time
In-person socializing directly counters the isolation and FOMO that social media creates. Even short in-person interactions are more beneficial than hours of online engagement.
Replace Scroll Time with Social Time
When you feel the urge to scroll, text a friend to meet up instead. The social connection you get from real interaction is what your brain is actually seeking.
Join Clubs or Groups
Structured social activities — clubs, sports teams, study groups — provide consistent in-person connection that social media can’t replicate.
Notice Your Feelings After Scrolling
Pay attention to how you feel after using each app. If Instagram consistently makes you feel worse about yourself, that’s important information. Your emotions reveal a lot.
Unfollow Accounts That Trigger Comparison
Comparison is one of social media’s biggest traps. Curating your feed to remove common triggers can help protect your confidence and mood.
Talk About It
If social media is affecting your mental health, talk to someone you trust — a friend, family member, or counselor. You’re not alone: over half of students report social media impacts their wellbeing.
Remember: It’s Curated
Every post, photo, and video you see is someone’s best moment, not their whole life. People don’t post their bad days, boring routines, or unflattering angles.
Recognize Ads and Sponsored Content
Much of what appears “organic” on social media is actually sponsored or promoted. Learning to recognize this helps you consume content more critically.
Question the Algorithm
Social media algorithms are designed to maximize your time on the platform, not your wellbeing. If you notice you can’t stop scrolling, that’s by design — not a personal failing.

Remember

Small changes add up. You don’t have to quit social media entirely — just be intentional about how you use it. Even reducing usage by 1 hour per day can make a meaningful difference in your sleep, mood, and confidence.

/* ==================== survey.html ==================== */ ScrollWell | Survey
ScrollWell

Feedback loop for the next research chapter

Social Media Reflection Survey

This survey is designed to turn real student experiences into future ScrollWell research questions. It collects patterns about screen time, school, sleep, emotions, creativity, friendships, and self-control so the data page can later compare variables instead of just listing answers.

Survey progress 0% complete
1. About you

These questions help compare social media habits across different school stages.

2. Your social media habits

These answers can support charts like platform vs sleep, hours vs GPA, and scrolling purpose vs mood.

Which platforms do you use at least weekly?
3. Rate the impact

For each scale: 1 = very negative effect, 10 = very positive effect.

4. Patterns and consequences

These questions help identify whether the effect comes from amount of time, type of platform, or how people use it.

5. Reflection questions

These open answers can inspire the next section of qualitative research.

Ready to turn reflection into research?

This demo form does not send data yet, but it is structured so it can later connect to PHP, MySQL, or JSON output for your data visualizations.