.page-header{text-align:center;margin-bottom:36px;padding-top:8px}.page-header h1{font-size:38px;font-weight:700;letter-spacing:-.8px;line-height:1.2;margin-bottom:12px;color:var(--c-text);background:linear-gradient(135deg,#059669,#0d9488);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.page-header .subtitle{font-size:16px;color:var(--c-text-secondary);max-width:760px;margin:0 auto;line-height:1.75}.page-header .subtitle strong{color:#059669;font-weight:700}@media(max-width:480px){.page-header h1{font-size:26px}.page-header .subtitle{font-size:14.5px}}.gen-layout{display:grid;grid-template-columns:1fr;gap:24px;align-items:start}.form-card{background:var(--c-surface);border:1px solid var(--c-border);border-radius:16px;padding:26px}.form-card h2{font-size:16px;font-weight:700;margin-bottom:16px;display:flex;align-items:center;gap:8px}.form-card h2 .sec-num{display:inline-flex;width:26px;height:26px;align-items:center;justify-content:center;border-radius:50%;background:#059669;color:#fff;font-size:13px}.setup-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:14px}@media(max-width:560px){.setup-grid{grid-template-columns:1fr}}.field-label{display:block;font-size:12px;font-weight:600;color:var(--c-text-secondary);margin-bottom:5px;text-transform:uppercase;letter-spacing:.4px}.field-label .opt{font-weight:400;opacity:.6;text-transform:none;letter-spacing:0}.field-input{width:100%;padding:10px 12px;border:1px solid var(--c-border);border-radius:10px;font-size:15px;font-family:var(--font);background:#fff;color:var(--c-text)}.field-input:focus{outline:none;border-color:#059669;box-shadow:0 0 0 3px #0596691f}.unit-toggle{display:flex;border:1px solid var(--c-border);border-radius:10px;overflow:hidden;margin-bottom:14px}.unit-toggle button{flex:1;padding:10px;border:0;background:var(--c-bg);font-size:14px;font-weight:700;cursor:pointer;color:var(--c-text-secondary);transition:all .15s}.unit-toggle button.active{background:#059669;color:#fff}.adv-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:10px 14px;background:var(--c-bg);border:1px solid var(--c-border);border-radius:10px;font-size:13px;font-weight:600;color:var(--c-text-secondary);cursor:pointer;margin-bottom:10px}.adv-toggle:hover{border-color:#059669;color:#059669}.adv-panel{display:none;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:14px}@media(max-width:700px){.adv-panel{grid-template-columns:repeat(2,1fr)}}.adv-panel.open{display:grid}.adv-panel select{width:100%;padding:9px 10px;border:1px solid var(--c-border);border-radius:8px;font-size:13.5px;font-family:var(--font);background:#fff;color:var(--c-text)}.adv-hint{font-size:11.5px;color:var(--c-text-muted);margin-bottom:10px;line-height:1.5}.generate-btn{width:100%;padding:14px;border:0;border-radius:12px;cursor:pointer;background:linear-gradient(135deg,#059669,#0d9488);color:#fff;font-size:16px;font-weight:700;letter-spacing:.03em;transition:transform .15s,box-shadow .15s;box-shadow:0 4px 14px #05966947}.generate-btn:hover{transform:translateY(-2px);box-shadow:0 6px 20px #05966959}.tracker-card{display:none;background:var(--c-surface);border:1px solid var(--c-border);border-radius:16px;padding:26px}.tracker-card.show{display:block}.tracker-top{display:grid;grid-template-columns:auto 1fr;gap:24px;align-items:center;margin-bottom:22px}@media(max-width:640px){.tracker-top{grid-template-columns:1fr;text-align:center}}.progress-ring-wrap{position:relative;width:150px;height:150px;margin:0 auto}.progress-ring-wrap svg{transform:rotate(-90deg)}.progress-ring-bg{fill:none;stroke:var(--c-border);stroke-width:11}.progress-ring-fg{fill:none;stroke:url(#ringGrad);stroke-width:11;stroke-linecap:round;transition:stroke-dashoffset .6s ease}.progress-ring-label{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.progress-ring-label .big{font-size:28px;font-weight:800;color:var(--c-text);line-height:1}.progress-ring-label .small{font-size:10.5px;color:var(--c-text-secondary);margin-top:4px;text-transform:uppercase;letter-spacing:.06em}.tracker-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media(max-width:640px){.tracker-stats{grid-template-columns:repeat(3,1fr);gap:8px}}.tstat{background:var(--c-bg);border:1px solid var(--c-border);border-radius:12px;padding:14px 12px;text-align:center;position:relative;overflow:hidden}.tstat:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:#059669;opacity:.5}.tstat:nth-child(2):before{background:#0d9488;opacity:.5}.tstat:nth-child(3):before{background:#d97706;opacity:.5}.tstat .v{font-size:24px;font-weight:800;color:var(--c-text);line-height:1.1}.tstat .l{font-size:11px;color:var(--c-text-secondary);margin-top:5px;text-transform:uppercase;letter-spacing:.06em}.weigh-card{background:linear-gradient(135deg,#059669,#0d9488);border-radius:14px;padding:20px 22px;color:#fff;margin-bottom:20px;box-shadow:0 6px 20px #05966933}.weigh-card .wc-title{font-size:11px;letter-spacing:.14em;text-transform:uppercase;opacity:.85;font-weight:700;margin-bottom:10px}.weigh-row{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.weigh-input{padding:12px 16px;border-radius:12px;border:0;font-size:20px;font-weight:700;width:140px;background:#fffffff2;color:#065f46;font-family:var(--font)}.weigh-input:focus{outline:3px solid rgba(255,255,255,.4)}.weigh-unit{font-size:15px;font-weight:700;opacity:.9}.weigh-btn{padding:12px 22px;border-radius:999px;border:0;background:#fff;color:#065f46;font-size:14px;font-weight:800;cursor:pointer;transition:transform .15s}.weigh-btn:hover{transform:scale(1.04)}.weigh-same-btn{padding:8px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.4);background:transparent;color:#fff;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s}.weigh-same-btn:hover{background:#ffffff26}.weigh-msg{font-size:12.5px;margin-top:10px;opacity:.9}.advice-box{background:var(--c-bg);border:1px solid var(--c-border);border-left:4px solid #059669;border-radius:12px;padding:16px 18px;margin-bottom:20px}.advice-box .ab-title{font-size:12px;font-weight:800;color:#059669;text-transform:uppercase;letter-spacing:.1em;margin-bottom:8px}.advice-box .ab-list{display:flex;flex-direction:column;gap:8px}.advice-item{display:flex;gap:10px;font-size:14px;line-height:1.6;color:var(--c-text)}.advice-item .ai-icon{flex:none;font-size:15px}.advice-links{margin-top:12px;padding-top:12px;border-top:1px dashed var(--c-border);display:flex;gap:8px;flex-wrap:wrap}.advice-links a{font-size:12.5px;font-weight:600;color:#059669;text-decoration:none;border:1px solid rgba(5,150,105,.3);border-radius:999px;padding:5px 12px;transition:all .15s}.advice-links a:hover{background:#05966914}.chart-wrap{background:var(--c-bg);border:1px solid var(--c-border);border-radius:12px;padding:16px;margin-bottom:20px}.chart-title{font-size:13px;font-weight:700;color:var(--c-text);margin-bottom:10px;display:flex;justify-content:space-between;align-items:center}.chart-title .ct-legend{font-size:11px;color:var(--c-text-secondary);font-weight:400}#trendCanvas{width:100%;height:240px;display:block}.hist-title{font-size:13px;font-weight:700;color:var(--c-text);margin:18px 0 10px}.hist-list{display:flex;flex-direction:column;gap:6px;max-height:260px;overflow-y:auto}.hist-row{display:grid;grid-template-columns:110px 1fr auto;gap:10px;align-items:center;padding:9px 12px;background:var(--c-bg);border:1px solid var(--c-border-light);border-radius:9px;font-size:13.5px}.hist-row .h-date{font-weight:600;color:var(--c-text)}.hist-row .h-delta{font-size:12px}.hist-row .h-delta.down{color:#059669}.hist-row .h-delta.up{color:#dc2626}.hist-del{background:transparent;border:0;color:var(--c-text-muted);cursor:pointer;font-size:14px;padding:2px 6px;border-radius:5px}.hist-del:hover{color:#dc2626;background:#dc262614}.milestone{display:inline-block;margin:4px 6px 4px 0;padding:6px 14px;border-radius:999px;background:#0596691a;color:#065f46;font-size:13px;font-weight:700}.complete-zone{display:none;text-align:center;padding:10px 0 0}.complete-zone.show{display:block}.complete-badge{display:inline-block;font-size:48px;margin-bottom:10px;animation:pop .5s ease}@keyframes pop{0%{transform:scale(0)}70%{transform:scale(1.2)}to{transform:scale(1)}}.complete-title{font-size:26px;font-weight:800;color:var(--c-text)}.complete-sub{font-size:14px;color:var(--c-text-secondary);margin:8px 0 18px}#completionCanvas{width:100%;max-width:420px;border-radius:16px;box-shadow:0 10px 30px #0000001f;margin:0 auto;display:block}.reset-link{display:inline-block;margin-top:14px;font-size:12px;color:var(--c-text-secondary);text-decoration:underline;cursor:pointer;background:none;border:0}.toc-section{padding:8px 0 0}.toc-bar{display:flex;gap:6px;flex-wrap:wrap;justify-content:center;padding:14px 16px;background:var(--c-surface);border:1px solid var(--c-border);border-radius:12px}.toc-link{padding:7px 14px;border-radius:999px;font-size:13px;font-weight:600;color:var(--c-text-secondary);text-decoration:none;background:var(--c-bg);border:1px solid var(--c-border-light);transition:all .2s;white-space:nowrap}.toc-link:hover{background:#05966914;border-color:#05966959;color:#059669}.content-section{padding:48px 0 80px;background:var(--c-bg)}.content-wrap{max-width:780px;margin:0 auto}.content-wrap h2{font-size:26px;font-weight:700;margin-top:48px;margin-bottom:14px;scroll-margin-top:90px}.content-wrap h3{font-size:18px;font-weight:600;margin-top:26px;margin-bottom:8px}.content-wrap p{font-size:17px;color:var(--c-text-secondary);line-height:1.9;margin-bottom:18px}.content-wrap ul,.content-wrap ol{font-size:17px;color:var(--c-text-secondary);line-height:2.1;padding-left:20px;margin-bottom:22px}.content-wrap strong{color:var(--c-text)}
