:root{--brand: #003c5e;--brand-deep: #0a2540;--brand-soft: #eaf2f6;--accent: #0ea5a4;--accent-deep: #0c7d7c;--accent-soft: #e6f7f5;--ink: #0f172a;--mute: #64748b;--paper: #ffffff;--mist: #f6f8fa;--line: #e3e8ee;--ok: #16a34a;--err: #dc2626;--warn: #d97706;--font-sans: -apple-system, BlinkMacSystemFont, "PingFang SC", "HarmonyOS Sans SC", "Microsoft YaHei", system-ui, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "SF Mono", ui-monospace, Menlo, Consolas, monospace;--r-sm: 6px;--r-md: 10px;--r-lg: 16px;--r-xl: 24px;--r-pill: 999px;--s-1: 4px;--s-2: 8px;--s-3: 12px;--s-4: 16px;--s-5: 24px;--s-6: 32px;--s-7: 48px;--s-8: 64px;--s-9: 96px;--shadow-sm: 0 1px 2px rgba(10, 37, 64, .06);--shadow-md: 0 4px 16px rgba(10, 37, 64, .08);--shadow-lg: 0 16px 48px rgba(10, 37, 64, .14);--shadow-brand: 0 8px 24px rgba(14, 165, 164, .28);--maxw: 1200px}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;font-family:var(--font-sans);color:var(--ink);background:var(--paper);line-height:1.6;font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4{margin:0;line-height:1.15;letter-spacing:-.015em;font-weight:700;color:var(--ink)}p{margin:0 0 1em}a{color:var(--accent-deep);text-decoration:none;transition:color .15s}a:hover{color:var(--brand)}img{max-width:100%;display:block}button{font-family:inherit}.container{width:100%;max-width:var(--maxw);margin:0 auto;padding:0 var(--s-6)}.section{padding:var(--s-9) 0}.section--tight{padding:var(--s-7) 0}.section--mist{background:var(--mist)}.section--brand{background:var(--brand-deep);color:#d8e4ec}.section--brand h1,.section--brand h2,.section--brand h3{color:#fff}.section-head{max-width:680px;margin:0 auto var(--s-7);text-align:center}.section-eyebrow{display:inline-block;font-size:12px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-deep);margin-bottom:var(--s-3)}.section-title{font-size:clamp(32px,4.5vw,46px)}.section-sub{color:var(--mute);font-size:17px;margin-top:var(--s-3)}.site-header{position:sticky;top:0;z-index:50;background:#ffffffeb;backdrop-filter:saturate(180%) blur(12px);-webkit-backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line)}.site-header-inner{display:flex;align-items:center;justify-content:space-between;height:64px}.brand{display:flex;align-items:center;gap:10px;font-weight:700;font-size:17px;color:var(--brand-deep)}.brand-mark{height:96px;width:auto;display:block}.nav{display:flex;align-items:center;gap:var(--s-6)}.nav a{color:var(--ink);font-size:15px;font-weight:500}.nav a:hover{color:var(--brand)}.nav-cta{display:flex;align-items:center;gap:var(--s-3)}.site-footer{background:var(--brand-deep);color:#9ab;padding:var(--s-8) 0 var(--s-6)}.site-footer a{color:#bcd}.site-footer a:hover{color:#fff}.footer-grid{display:grid;grid-template-columns:1fr repeat(4,1fr);gap:var(--s-6)}.footer-brand{color:#fff;font-weight:700;font-size:18px;margin-bottom:var(--s-3)}.footer-desc{color:#8aa;font-size:14px;max-width:280px}.footer-col h4{color:#fff;font-size:13px;text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--s-3);font-weight:600}.footer-col ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--s-2);font-size:14px}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:var(--s-7);padding-top:var(--s-5);font-size:13px;color:#789;display:flex;justify-content:space-between;flex-wrap:wrap;gap:var(--s-3)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;font-size:15px;font-weight:600;line-height:1;border-radius:var(--r-md);border:1px solid transparent;cursor:pointer;transition:all .15s ease;text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:var(--accent);color:#fff;box-shadow:var(--shadow-brand)}.btn-primary:hover:not(:disabled){background:var(--accent-deep);color:#fff;transform:translateY(-1px)}.btn-ghost{background:transparent;color:var(--brand-deep);border-color:var(--line)}.btn-ghost:hover:not(:disabled){border-color:var(--brand);color:var(--brand)}.btn-dark{background:var(--brand-deep);color:#fff}.btn-dark:hover:not(:disabled){background:var(--brand);color:#fff}.btn-light{background:#fff;color:var(--brand-deep)}.btn-light:hover:not(:disabled){background:var(--mist);color:var(--brand-deep)}.btn-block{display:flex;width:100%}.btn-lg{padding:14px 28px;font-size:16px}.btn-sm{padding:6px 12px;font-size:13px}.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s-6);box-shadow:var(--shadow-sm)}.card--hover{transition:transform .2s ease,box-shadow .2s ease}.card--hover:hover{transform:translateY(-4px);box-shadow:var(--shadow-lg)}.feature-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-7);align-items:center}.feature-row+.feature-row{margin-top:var(--s-9)}.feature-num{flex-shrink:0;width:40px;height:40px;border-radius:50%;background:var(--accent-soft);color:var(--accent-deep);display:grid;place-items:center;font-weight:700;font-size:15px;font-family:var(--font-mono)}.screenshot-frame{border:1px solid var(--line);border-radius:var(--r-lg);background:var(--paper);box-shadow:var(--shadow-md);overflow:hidden;margin:0}.screenshot-frame img{display:block;width:100%;height:auto}.screenshot-frame figcaption{padding:var(--s-2) var(--s-4);font-size:13px;color:var(--mute);text-align:center;background:var(--mist);border-top:1px solid var(--line)}.pain-list{display:flex;flex-direction:column;gap:var(--s-4)}.pain-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--s-4);align-items:stretch}.pain-cell{display:flex;gap:12px;align-items:flex-start;padding:var(--s-4) var(--s-5);border-radius:var(--r-md);background:var(--paper);border:1px solid var(--line);font-size:15px;line-height:1.6;color:#475569}.pain-cell--sol{background:var(--accent-soft);border-color:transparent;color:var(--ink)}.pain-mark{flex-shrink:0;font-weight:700;line-height:1.6}.pain-mark--bad{color:var(--err)}.pain-mark--ok{color:var(--ok)}.app-card{max-width:440px;margin:var(--s-8) auto;padding:var(--s-7) var(--s-6);background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-md)}.app-card h2{margin:0 0 var(--s-5);font-size:28px;text-align:center}.field{margin-bottom:var(--s-4)}.field label,.label{display:block;margin-bottom:var(--s-2);font-size:14px;font-weight:500;color:var(--ink)}.field input,.field textarea,.input{width:100%;padding:11px 14px;font-size:15px;font-family:inherit;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:var(--r-md);outline:none;transition:border-color .15s,box-shadow .15s}.field input:focus,.input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.field .hint-text{margin-top:var(--s-2);font-size:13px;color:var(--mute)}.alert{padding:12px 14px;margin-bottom:var(--s-4);border-radius:var(--r-md);font-size:14px;border:1px solid transparent}.alert-error{background:#fef2f2;color:var(--err);border-color:#fecaca}.alert-success{background:#f0fdf4;color:var(--ok);border-color:#bbf7d0}.alert-info{background:var(--accent-soft);color:var(--accent-deep);border-color:#b5e8e3}.alert-warn{background:#fffbeb;color:#92400e;border-color:#fde68a}.hint{text-align:center;margin-top:var(--s-4);font-size:14px;color:var(--mute)}.hero{position:relative;background:linear-gradient(135deg,var(--brand-deep) 0%,var(--brand) 60%,#0d5970 100%);color:#d8e4ec;overflow:hidden}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 80% 20%,rgba(14,165,164,.28),transparent 50%),radial-gradient(circle at 20% 80%,rgba(0,60,94,.4),transparent 50%);pointer-events:none}.hero-inner{position:relative;display:grid;grid-template-columns:1.1fr .9fr;gap:var(--s-7);align-items:center;padding:var(--s-7) 0}.hero-eyebrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:600;letter-spacing:.06em;color:var(--accent);background:#0ea5a41f;padding:6px 14px;border-radius:var(--r-pill);border:1px solid rgba(14,165,164,.3);margin-bottom:var(--s-5)}.hero-title{font-size:clamp(36px,5vw,56px);line-height:1.05;letter-spacing:-.025em;color:#fff;font-weight:700;margin-bottom:var(--s-5)}.hero-title em{font-style:normal;color:var(--accent)}.hero-sub{font-size:18px;color:#b8cdd8;margin-bottom:var(--s-6);max-width:520px}.hero-cta{display:flex;gap:var(--s-3);flex-wrap:wrap}.hero-stats{display:flex;gap:var(--s-6);margin-top:var(--s-5)}.hero-stat-num{font-family:var(--font-mono);font-size:28px;font-weight:700;color:#fff}.hero-stat-label{font-size:13px;color:#8aa}.hero-preview{position:relative}.preview-card{background:var(--paper);border-radius:var(--r-lg);padding:var(--s-5);box-shadow:var(--shadow-lg);color:var(--ink)}.preview-bar{display:flex;align-items:center;gap:6px;padding-bottom:var(--s-3);border-bottom:1px solid var(--line);margin-bottom:var(--s-4)}.preview-dot{width:10px;height:10px;border-radius:50%;background:var(--line)}.preview-dot:nth-child(1){background:#ff5f57}.preview-dot:nth-child(2){background:#febc2e}.preview-dot:nth-child(3){background:#28c840}.preview-title{margin-left:8px;font-size:13px;color:var(--mute);font-weight:500}.preview-row{display:flex;align-items:center;gap:var(--s-3);padding:var(--s-3) 0;border-bottom:1px solid var(--mist)}.preview-row:last-child{border-bottom:none}.preview-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,var(--brand-soft),var(--accent-soft));flex-shrink:0}.preview-name{font-size:14px;font-weight:600}.preview-meta{font-size:12px;color:var(--mute)}.preview-tag{margin-left:auto;font-size:11px;font-weight:600;padding:3px 8px;border-radius:var(--r-pill)}.preview-tag--done{background:var(--accent-soft);color:var(--accent-deep)}.preview-tag--todo{background:var(--brand-soft);color:var(--brand)}.preview-float{position:absolute;right:-16px;bottom:-20px;background:var(--brand-deep);color:#fff;border-radius:var(--r-md);padding:var(--s-4);box-shadow:var(--shadow-lg);min-width:180px}.preview-float-label{font-size:11px;color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:4px}.preview-float-num{font-family:var(--font-mono);font-size:28px;font-weight:700}.pricing-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--s-5);max-width:1080px;margin:0 auto}.price-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--r-lg);padding:var(--s-6);display:flex;flex-direction:column}.price-card--featured{border-color:var(--accent);border-width:2px;box-shadow:var(--shadow-md);position:relative}.price-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:var(--accent);color:#fff;font-size:12px;font-weight:600;padding:4px 14px;border-radius:var(--r-pill)}.price-amount{font-family:var(--font-mono);font-size:48px;font-weight:700;color:var(--brand-deep)}.price-amount-unit{font-size:16px;color:var(--mute);font-family:var(--font-sans);font-weight:500}.price-old{text-decoration:line-through;color:var(--mute);font-size:18px;margin-right:var(--s-2)}.price-features{list-style:none;padding:0;margin:var(--s-5) 0;display:flex;flex-direction:column;gap:var(--s-3);font-size:14px;color:var(--ink)}.price-features li{display:flex;align-items:flex-start;gap:10px}.price-features li:before{content:"✓";color:var(--accent);font-weight:700;flex-shrink:0}.badge{display:inline-block;font-size:12px;font-weight:600;padding:3px 10px;border-radius:var(--r-pill);background:var(--accent-soft);color:var(--accent-deep)}.badge--ok{background:#dcfce7;color:var(--ok)}.badge--mute{background:var(--mist);color:var(--mute)}.badge--warn{background:#fef3c7;color:var(--warn)}.tag{font-size:13px;color:var(--mute)}.divider{height:1px;background:var(--line);border:none;margin:var(--s-6) 0}.stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--s-5)}.stat{text-align:center}.stat-num{font-family:var(--font-mono);font-size:40px;font-weight:700;color:var(--brand-deep)}.stat-label{font-size:14px;color:var(--mute);margin-top:var(--s-2)}.prose{max-width:720px;color:var(--ink)}.prose h2{font-size:24px;margin:var(--s-6) 0 var(--s-3)}.prose h3{font-size:18px;margin:var(--s-5) 0 var(--s-2)}.prose p,.prose li{color:#475569;line-height:1.7}.prose ul,.prose ol{padding-left:1.2em}.prose code{font-family:var(--font-mono);background:var(--mist);padding:2px 6px;border-radius:4px;font-size:.9em}.kbd{font-family:var(--font-mono);font-size:12px;padding:2px 6px;background:var(--mist);border:1px solid var(--line);border-radius:4px}@keyframes fadeUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes countPulse{0%,to{transform:scale(1)}50%{transform:scale(1.08);color:var(--accent)}}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.fade-up{animation:fadeUp .6s ease both}.count-anim{animation:countPulse 1.4s ease infinite;display:inline-block}.dot-blink{animation:blink 1.2s ease infinite}@media(max-width:880px){.hero-inner{grid-template-columns:1fr;padding:var(--s-7) 0}.hero-preview{display:none}.footer-grid{grid-template-columns:1fr 1fr}.feature-row{grid-template-columns:1fr;gap:var(--s-5)}.pain-row{grid-template-columns:1fr}.nav{display:none}.section{padding:var(--s-7) 0}.container{padding:0 var(--s-4)}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}.sub-hist-row{display:grid;grid-template-columns:1.4fr .6fr .7fr 1fr 1.4fr .7fr;gap:8px;align-items:center;padding:14px var(--s-5);font-size:14px}.sub-hist-head{font-size:12px;font-weight:600;color:var(--mute);text-transform:uppercase;letter-spacing:.06em;background:var(--mist)}@media(max-width:720px){.sub-hist-row{grid-template-columns:120px 60px 70px 90px 120px 70px;padding:12px var(--s-4);font-size:13px}}.tip-trigger{display:inline-flex;align-items:center;justify-content:center;height:20px;padding:0 8px;margin-left:6px;border-radius:10px;background:var(--mist);color:var(--mute);font-size:12px;font-weight:500;cursor:help;-webkit-user-select:none;user-select:none;vertical-align:middle;white-space:nowrap;transition:background .15s,color .15s}.tip-trigger:hover,.tip-trigger:focus{background:var(--accent-soft);color:var(--accent-deep);outline:none}.tip-bubble{position:absolute;z-index:10;margin-top:6px;padding:10px 12px;width:max-content;max-width:320px;background:#1f2937;color:#f9fafb;font-size:13px;font-weight:400;line-height:1.6;border-radius:6px;box-shadow:0 6px 20px #0000002e;text-align:left}.tip-bubble:before{content:"";position:absolute;top:-5px;left:14px;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid #1f2937}.field label{position:relative}
