:root{--ps-accent: #00b894;--ps-accent-soft: rgba(0, 184, 148, .12);--ps-accent-fill: rgba(0, 184, 148, .2);--ps-accent-bright: #00d2a0;--ps-gradient-brand: linear-gradient(135deg, #00b894 0%, #00d2a0 100%);--ps-bg: #ffffff;--ps-bg-subtle: #f5f5f5;--ps-bg-card: #f8f8f8;--ps-bg-dark: #1c1c1e;--ps-bg-dark-card: #2c2c2e;--ps-text: #1a1a1a;--ps-text-secondary: #666666;--ps-text-tertiary: #999999;--ps-text-on-dark: #ffffff;--ps-text-on-dark-2: rgba(255, 255, 255, .6);--ps-divider: #e0e0e0;--ps-bubble-user: #2d2d2d;--ps-bubble-ai: #f5f5f5;--ps-error: #d63031;--ps-sleep-deep: #5e5ce6;--ps-sleep-core: #0a84ff;--ps-sleep-rem: #64d2ff;--ps-sleep-awake: #ff9f0a;--ps-chart-muted: #7c9299;--ps-radius-sm: 8px;--ps-radius-md: 12px;--ps-radius-lg: 16px;--ps-radius-xl: 24px;--ps-radius-pill: 999px;--ps-shadow-card: 0 2px 8px rgba(0, 0, 0, .05);--ps-shadow-card-hover: 0 8px 24px rgba(0, 184, 148, .15);--ps-shadow-phone: 0 24px 64px rgba(0, 0, 0, .12);--sp-1: 4px;--sp-2: 8px;--sp-3: 12px;--sp-4: 16px;--sp-6: 24px;--sp-8: 32px;--sp-12: 48px;--sp-16: 64px;--sp-24: 96px;--section-pad: clamp(64px, 10vw, 120px);--container-max: 1200px;--fs-h1: clamp(36px, 5.5vw, 60px);--fs-h2: clamp(28px, 4vw, 42px);--fs-h3: 20px;--fs-body-lg: 18px;--fs-body: 16px;--fs-caption: 14px;--fs-micro: 12px;--lh-tight: 1.15;--lh-body: 1.6}*,*:before,*:after{box-sizing:border-box}html{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif;scroll-behavior:smooth;-webkit-text-size-adjust:100%}:lang(ja){font-family:-apple-system,Hiragino Sans,Yu Gothic UI,Meiryo,Noto Sans JP,sans-serif}:lang(ko){font-family:-apple-system,Apple SD Gothic Neo,Malgun Gothic,Noto Sans KR,sans-serif}:lang(th){font-family:-apple-system,Thonburi,Leelawadee UI,Noto Sans Thai,sans-serif}:lang(hi){font-family:-apple-system,Kohinoor Devanagari,Nirmala UI,Noto Sans Devanagari,sans-serif}:lang(hi) body{line-height:1.8}:lang(hi) h1,:lang(hi) h2,:lang(hi) h3{line-height:1.3;letter-spacing:0}:lang(th) body{line-height:1.7;word-break:normal}:lang(ja) h1,:lang(ja) h2,:lang(ko) h1,:lang(ko) h2{font-weight:600;font-style:normal;letter-spacing:0}:lang(de),:lang(ru),:lang(tr){hyphens:auto;overflow-wrap:break-word}body{margin:0;color:var(--ps-text);background:var(--ps-bg);font-size:var(--fs-body);line-height:var(--lh-body)}h1,h2,h3{line-height:var(--lh-tight);text-wrap:balance;margin:0}h1{font-size:var(--fs-h1);font-weight:700;letter-spacing:-.02em}h2{font-size:var(--fs-h2);font-weight:700;letter-spacing:-.015em}h3{font-size:var(--fs-h3);font-weight:600}p{margin:0}a{color:inherit}img,svg{display:block;max-width:100%}button{font:inherit}.container{max-width:var(--container-max);margin-inline:auto;padding-inline:var(--sp-6)}.section{padding-block:var(--section-pad)}.section-subtle{background:var(--ps-bg-subtle)}.section-dark{background:var(--ps-bg-dark);color:var(--ps-text-on-dark)}.section-title{margin-bottom:var(--sp-4)}.section-lead{color:var(--ps-text-secondary);font-size:var(--fs-body-lg);max-width:640px;margin-bottom:var(--sp-12)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--sp-2);min-height:48px;padding:12px 28px;border:none;border-radius:var(--ps-radius-pill);font-size:var(--fs-body);font-weight:600;text-decoration:none;cursor:pointer;transition:transform .25s ease,box-shadow .25s ease,background-color .25s ease}.btn-primary{background:var(--ps-accent);color:#fff}.btn-primary:hover{background:var(--ps-accent-bright);transform:translateY(-2px);box-shadow:var(--ps-shadow-card-hover)}.btn-primary:disabled{opacity:.65;cursor:default;transform:none;box-shadow:none}.btn-ghost{background:var(--ps-accent-soft);color:var(--ps-accent)}.btn-ghost:hover{background:#00b89433}.card{background:var(--ps-bg-card);border-radius:var(--ps-radius-xl);padding:var(--sp-8);box-shadow:var(--ps-shadow-card);transition:transform .25s ease,box-shadow .25s ease}.card:hover{transform:translateY(-4px);box-shadow:var(--ps-shadow-card-hover)}.card h3{margin-bottom:var(--sp-3)}.card p{color:var(--ps-text-secondary)}.reveal{opacity:0;transform:translateY(16px);transition:opacity .5s ease-out,transform .5s ease-out}.reveal-in{opacity:1;transform:none}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}:focus-visible{outline:2px solid var(--ps-accent);outline-offset:2px}
