.landing.lang-pt .en,.landing.lang-en .pt{display:none}.landing{min-height:100vh;font-family:Inter,ui-sans-serif,system-ui,-apple-system,sans-serif;color:var(--text);-webkit-font-smoothing:antialiased}.landing .l-container{width:100%;max-width:1200px;margin:0 auto;padding:0 24px}.landing .l-btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 24px;height:48px;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);color:#fff;font-weight:700;font-size:.95rem;box-shadow:0 8px 24px #8b5cf659;transition:transform .2s ease,box-shadow .2s ease;white-space:nowrap;text-decoration:none;border:none;cursor:pointer;font-family:inherit}.landing .l-btn-primary:hover{transform:translateY(-2px);box-shadow:0 12px 32px #8b5cf673}.landing .l-btn-primary:active{transform:translateY(0)}.landing .l-btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 24px;height:48px;border-radius:var(--radius-pill);background:var(--panel-bg-strong);border:1px solid var(--panel-border);color:var(--text);font-weight:600;font-size:.95rem;transition:background .2s ease,transform .2s ease;text-decoration:none;cursor:pointer;font-family:inherit}.landing .l-btn-secondary:hover{background:#ffffff1a;transform:translateY(-1px)}.landing .l-btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 24px;height:48px;border-radius:var(--radius-pill);background:transparent;border:1px solid var(--panel-border);color:var(--text-muted);font-weight:600;font-size:.95rem;transition:border-color .2s ease,color .2s ease;text-decoration:none;cursor:pointer;font-family:inherit}.landing .l-btn-ghost:hover{border-color:#ffffff40;color:var(--text)}.landing .l-btn-sm{height:38px;font-size:.88rem;padding:0 18px}.landing .l-btn-lg{height:54px;font-size:1rem;padding:0 32px}.landing .l-btn-full{width:100%}.landing .l-grad-text{background:linear-gradient(135deg,var(--purple),var(--pink));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing .la{opacity:0;transform:translateY(28px);transition:opacity .65s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1)}.landing .la.lv{opacity:1;transform:translateY(0)}.landing .l-nav{position:sticky;top:0;z-index:100;background:#0a0a14b8;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--panel-border);transition:box-shadow .3s ease}.landing .l-nav.scrolled{box-shadow:0 4px 32px #0000004d}.landing .l-nav-inner{display:flex;align-items:center;gap:32px;height:68px;max-width:1200px;margin:0 auto;padding:0 24px}.landing .l-nav-brand{display:flex;align-items:center;gap:10px;flex-shrink:0;text-decoration:none}.landing .l-nav-wordmark{font-size:.95rem;font-weight:700;color:var(--text);letter-spacing:-.01em}.landing .l-nav-links{display:flex;align-items:center;gap:4px;flex:1}.landing .l-nav-links a{padding:6px 14px;border-radius:var(--radius-pill);font-size:.9rem;font-weight:500;color:var(--text-muted);transition:color .2s ease,background .2s ease;text-decoration:none;cursor:pointer}.landing .l-nav-links a:hover{color:var(--text);background:var(--panel-bg)}.landing .l-nav-right{display:flex;align-items:center;gap:12px;flex-shrink:0}.landing .l-lang-toggle{display:flex;align-items:center;gap:2px;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:var(--radius-pill);padding:3px}.landing .l-lang-btn{padding:4px 12px;border-radius:var(--radius-pill);font-size:.8rem;font-weight:600;color:var(--text-muted);transition:background .2s ease,color .2s ease;background:none;border:none;cursor:pointer;font-family:inherit}.landing .l-lang-btn.active{background:#ffffff1f;color:var(--text)}.landing .l-nav-burger{display:none;flex-direction:column;gap:5px;padding:8px;margin-left:auto;background:none;border:none;cursor:pointer}.landing .l-nav-burger span{display:block;width:22px;height:2px;background:var(--text-muted);border-radius:2px;transition:transform .3s ease,opacity .3s ease}.landing .l-nav-mobile{display:none;flex-direction:column;gap:4px;padding:12px 24px 20px;border-top:1px solid var(--panel-border)}.landing .l-nav-mobile a{padding:12px 16px;border-radius:var(--radius-sm);font-size:1rem;font-weight:500;color:var(--text-muted);transition:background .2s ease,color .2s ease;text-decoration:none;cursor:pointer}.landing .l-nav-mobile a:hover{background:var(--panel-bg);color:var(--text)}.landing .l-nav-mobile .l-btn-primary{margin-top:8px}.landing .l-nav-mobile .l-lang-toggle{margin-top:8px;align-self:flex-start}.landing .l-nav.menu-open .l-nav-mobile{display:flex}.landing .l-nav.menu-open .l-nav-burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}.landing .l-nav.menu-open .l-nav-burger span:nth-child(2){opacity:0}.landing .l-nav.menu-open .l-nav-burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.landing .l-section-label{display:inline-block;font-size:.78rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--purple);margin-bottom:12px}.landing .l-section-title{font-size:clamp(1.8rem,4vw,2.8rem);font-weight:800;line-height:1.15;letter-spacing:-.02em;margin-bottom:16px}.landing .l-section-sub{font-size:1.05rem;color:var(--text-muted);line-height:1.65;max-width:600px;margin-bottom:48px}.landing .l-section-cta{display:flex;justify-content:center;margin-top:48px}.landing .l-hero{position:relative;padding:128px 0 80px;overflow:hidden;text-align:center}.landing .l-hero-glow{position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 800px 600px at 50% 30%,rgba(139,92,246,.2),transparent 70%);pointer-events:none}.landing .l-hero-inner{position:relative;display:flex;flex-direction:column;align-items:center}.landing .l-hero-logo-wrap{margin-bottom:32px;animation:l-logo-enter 1.2s cubic-bezier(.22,1,.36,1) both;filter:drop-shadow(0 0 40px rgba(139,92,246,.4))}@keyframes l-logo-enter{0%{opacity:0;transform:scale(.8) rotate(-8deg)}to{opacity:1;transform:scale(1) rotate(0)}}.landing .l-hero-content{max-width:720px}.landing .l-hero-eyebrow{font-size:.82rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--purple);margin-bottom:20px;animation:l-fade-up .7s .2s cubic-bezier(.22,1,.36,1) both}.landing .l-hero-title{font-size:clamp(2.4rem,6vw,4.2rem);font-weight:900;line-height:1.1;letter-spacing:-.03em;margin-bottom:24px;animation:l-fade-up .7s .35s cubic-bezier(.22,1,.36,1) both}.landing .l-hero-sub{font-size:clamp(1rem,2vw,1.2rem);color:var(--text-muted);line-height:1.65;margin-bottom:36px;animation:l-fade-up .7s .5s cubic-bezier(.22,1,.36,1) both}.landing .l-hero-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-bottom:40px;animation:l-fade-up .7s .65s cubic-bezier(.22,1,.36,1) both}.landing .l-hero-pills{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;animation:l-fade-up .7s .8s cubic-bezier(.22,1,.36,1) both}.landing .l-pill{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:var(--radius-pill);font-size:.85rem;font-weight:500;color:var(--text-muted);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}@keyframes l-fade-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.landing .l-problem{padding:100px 0}.landing .l-problem-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:40px 0}.landing .l-problem-card{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:var(--radius);padding:24px 20px;display:flex;flex-direction:column;gap:8px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:transform .2s ease,border-color .2s ease}.landing .l-problem-card:hover{transform:translateY(-4px);border-color:#ffffff29}.landing .l-problem-icon{font-size:2rem;margin-bottom:4px}.landing .l-problem-card strong{font-size:.92rem;font-weight:700;color:var(--text)}.landing .l-problem-card p{font-size:.82rem;color:var(--text-muted);line-height:1.5}.landing .l-problem-punchline{text-align:center;font-size:1.1rem;color:var(--text-muted);font-style:italic}.landing .l-solution{padding:100px 0}.landing .l-solution .l-section-title,.landing .l-solution .l-section-label{text-align:center}.landing .l-solution .l-section-sub{text-align:center;margin:0 auto 56px}.landing .l-timeline-demo{position:relative;max-width:700px;margin:0 auto;padding:8px 0}.landing .l-timeline-track{position:absolute;left:50%;top:0;bottom:0;width:2px;background:linear-gradient(to bottom,var(--pink),var(--purple),var(--green));transform:translate(-50%);border-radius:2px}.landing .l-te{position:relative;display:flex;align-items:flex-start;margin-bottom:32px;gap:16px}.landing .l-te:last-child{margin-bottom:0}.landing .l-te-left{flex-direction:row-reverse;padding-left:calc(50% + 24px)}.landing .l-te-right{padding-right:calc(50% + 24px)}.landing .l-te-dot{position:absolute;left:50%;top:16px;width:14px;height:14px;border-radius:50%;background:var(--dot-color);transform:translate(-50%);border:3px solid var(--bg);box-shadow:0 0 12px var(--dot-color);z-index:1}.landing .l-te-card{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:var(--radius-sm);padding:14px 16px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex:1}.landing .l-te-tag{display:inline-flex;align-items:center;gap:4px;font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;background:var(--tag-color);color:var(--tag-text);padding:2px 8px;border-radius:var(--radius-pill);margin-bottom:6px}.landing .l-te-title{font-size:.9rem;font-weight:700;color:var(--text);margin-bottom:2px}.landing .l-te-meta{font-size:.78rem;color:var(--text-muted)}.landing .l-te-normal{color:var(--green)}.landing .l-student{padding:100px 0}.landing .l-feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.landing .l-feature-card{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:var(--radius);padding:28px 24px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.landing .l-feature-card:hover{transform:translateY(-4px);border-color:#8b5cf64d;box-shadow:0 8px 32px #8b5cf61f}.landing .l-feature-icon{font-size:2.2rem;margin-bottom:14px;display:block}.landing .l-feature-card h3{font-size:1rem;font-weight:700;color:var(--text);margin-bottom:8px;line-height:1.3}.landing .l-feature-card p{font-size:.875rem;color:var(--text-muted);line-height:1.6}.landing .l-mentor{padding:100px 0}.landing .l-mentor .l-section-label,.landing .l-mentor .l-section-title{text-align:center}.landing .l-mentor .l-section-title{max-width:700px;margin:0 auto 24px}.landing .l-mentor-quote{background:#8b5cf62e;border:1px solid rgba(139,92,246,.25);border-radius:var(--radius);padding:28px 36px;max-width:760px;margin:0 auto 56px;text-align:center}.landing .l-mentor-quote p{font-size:clamp(1rem,2vw,1.15rem);font-weight:500;color:var(--text);line-height:1.65}.landing .l-mentor-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:56px}.landing .l-mentor-card{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:var(--radius);padding:28px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:flex;gap:20px;transition:transform .2s ease,border-color .2s ease}.landing .l-mentor-card:hover{transform:translateY(-3px);border-color:#ffffff24}.landing .l-mentor-card-icon{font-size:2rem;flex-shrink:0;line-height:1}.landing .l-mentor-card h3{font-size:1rem;font-weight:700;color:var(--text);margin-bottom:8px}.landing .l-mentor-card p{font-size:.875rem;color:var(--text-muted);line-height:1.6}.landing .l-compare-wrap{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:var(--radius);padding:36px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.landing .l-compare-title{font-size:1.3rem;font-weight:800;text-align:center;margin-bottom:28px;letter-spacing:-.02em}.landing .l-compare-table-wrap{overflow-x:auto}.landing .l-compare-table{width:100%;border-collapse:collapse;font-size:.9rem}.landing .l-compare-table th,.landing .l-compare-table td{padding:12px 16px;text-align:center;border-bottom:1px solid var(--panel-border)}.landing .l-compare-table td:first-child{text-align:left;color:var(--text-muted)}.landing .l-compare-table th:first-child{text-align:left}.landing .l-compare-table th{font-weight:700;font-size:.85rem;color:var(--text-muted);padding-bottom:16px}.landing .l-compare-table tr:last-child td{border-bottom:none}.landing .l-highlight-col{background:#8b5cf614}.landing .l-compare-table th.l-highlight-col{border-radius:12px 12px 0 0}.landing .l-compare-table tr:last-child td.l-highlight-col{border-radius:0 0 12px 12px}.landing .l-compare-badge{display:inline-block;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);color:#fff;font-size:.78rem;font-weight:700;padding:2px 10px;border-radius:var(--radius-pill);margin-bottom:4px}.landing .l-compare-price{font-size:1.2rem;font-weight:800;color:var(--text)}.landing .l-compare-price-other{font-size:.9rem;font-weight:700;color:var(--text-muted)}.landing .l-compare-period{font-size:.7em;font-weight:500}.landing .l-check{color:var(--green);font-size:1.1rem;font-weight:700}.landing .l-cross{color:var(--text-faint);font-size:1.1rem}.landing .l-partial{color:var(--orange);font-size:.8rem;font-weight:600}.landing .l-pricing{padding:100px 0}.landing .l-pricing .l-section-label,.landing .l-pricing .l-section-title{text-align:center}.landing .l-pricing-toggle{display:flex;gap:4px;justify-content:center;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:var(--radius-pill);padding:4px;width:fit-content;margin:32px auto 48px}.landing .l-pricing-tab{padding:8px 28px;border-radius:var(--radius-pill);font-size:.9rem;font-weight:600;color:var(--text-muted);transition:background .2s ease,color .2s ease;background:none;border:none;cursor:pointer;font-family:inherit}.landing .l-pricing-tab.active{background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);color:#fff;box-shadow:0 4px 16px #8b5cf659}.landing .l-plans-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;max-width:720px;margin:0 auto}.landing .l-plans-row-4{grid-template-columns:repeat(4,1fr);max-width:100%}.landing .l-plan-card{position:relative;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:var(--radius);padding:28px 24px;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);display:flex;flex-direction:column;transition:transform .2s ease,border-color .2s ease}.landing .l-plan-card:hover{transform:translateY(-4px)}.landing .l-plan-featured{border-color:#8b5cf666;background:#8b5cf60f;box-shadow:0 0 40px #8b5cf61f}.landing .l-plan-badge{display:inline-block;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);color:#fff;font-size:.72rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:3px 12px;border-radius:var(--radius-pill);margin-bottom:14px;align-self:flex-start}.landing .l-plan-header{margin-bottom:24px}.landing .l-plan-name{font-size:1rem;font-weight:700;color:var(--text-muted);margin-bottom:8px}.landing .l-plan-price{display:flex;align-items:baseline;gap:2px;margin-bottom:4px}.landing .l-price-big{font-size:2.2rem;font-weight:900;color:var(--text);letter-spacing:-.04em}.landing .l-price-cents{font-size:1.2rem}.landing .l-price-period{font-size:.85rem;color:var(--text-muted);font-weight:500;margin-left:2px}.landing .l-plan-sub{font-size:.82rem;color:var(--text-muted)}.landing .l-plan-features{list-style:none;display:flex;flex-direction:column;gap:8px;margin-bottom:24px;flex:1;padding:0}.landing .l-plan-features li{display:flex;align-items:flex-start;gap:8px;font-size:.85rem;line-height:1.4}.landing .l-plan-features li:before{flex-shrink:0;margin-top:1px}.landing .l-feat-yes{color:var(--text)}.landing .l-feat-yes:before{content:"✓";color:var(--green);font-weight:700}.landing .l-feat-limit{color:var(--text-muted)}.landing .l-feat-limit:before{content:"~";color:var(--orange);font-weight:700}.landing .l-feat-no{color:var(--text-faint)}.landing .l-feat-no:before{content:"✗";color:var(--text-faint)}.landing .l-faq{padding:100px 0}.landing .l-faq .l-section-label,.landing .l-faq .l-section-title{text-align:center}.landing .l-faq .l-section-title{margin-bottom:48px}.landing .l-faq-list{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:8px}.landing .l-faq-item{background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:var(--radius-sm);overflow:hidden;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:border-color .2s ease}.landing .l-faq-item.open{border-color:#8b5cf64d}.landing .l-faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;text-align:left;font-size:.95rem;font-weight:600;color:var(--text);transition:color .2s ease;background:none;border:none;cursor:pointer;font-family:inherit}.landing .l-faq-q:hover{color:var(--purple)}.landing .l-faq-chevron{width:20px;height:20px;flex-shrink:0;color:var(--text-faint);transition:transform .3s cubic-bezier(.22,1,.36,1),color .2s ease}.landing .l-faq-item.open .l-faq-chevron{transform:rotate(180deg);color:var(--purple)}.landing .l-faq-a{max-height:0;overflow:hidden;transition:max-height .4s cubic-bezier(.22,1,.36,1)}.landing .l-faq-a p{padding:0 20px 20px;font-size:.9rem;color:var(--text-muted);line-height:1.7}.landing .l-final-cta{padding:100px 0;position:relative;overflow:hidden}.landing .l-final-cta:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse 800px 500px at 50% 50%,rgba(139,92,246,.25),transparent 70%);pointer-events:none}.landing .l-final-cta-inner{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;gap:24px;background:var(--panel-bg);border:1px solid rgba(139,92,246,.25);border-radius:28px;padding:64px 48px;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 0 60px #8b5cf61a}.landing .l-final-logo{filter:drop-shadow(0 0 24px rgba(139,92,246,.5))}.landing .l-final-cta-title{font-size:clamp(1.8rem,4vw,2.6rem);font-weight:900;line-height:1.2;letter-spacing:-.03em}.landing .l-final-cta-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center}.landing .l-footer{border-top:1px solid var(--panel-border);padding:40px 0}.landing .l-footer-inner{display:flex;flex-direction:column;gap:28px}.landing .l-footer-brand{display:flex;align-items:center;gap:12px}.landing .l-footer-name{font-size:.95rem;font-weight:700}.landing .l-footer-tagline{font-size:.8rem;color:var(--text-muted);margin-top:2px}.landing .l-footer-links{display:flex;flex-wrap:wrap;gap:8px 20px}.landing .l-footer-links a{font-size:.875rem;color:var(--text-muted);transition:color .2s ease;text-decoration:none}.landing .l-footer-links a:hover{color:var(--text)}.landing .l-footer-bottom{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding-top:20px;border-top:1px solid var(--panel-border)}.landing .l-footer-copy{font-size:.8rem;color:var(--text-faint)}@media(max-width:1024px){.landing .l-problem-grid{grid-template-columns:repeat(3,1fr)}.landing .l-plans-row-4{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.landing .l-nav-links,.landing .l-nav-right{display:none}.landing .l-nav-burger{display:flex}.landing .l-nav-wordmark{font-size:.88rem}.landing .l-hero{padding:108px 0 60px}.landing .l-problem-grid{grid-template-columns:1fr 1fr;gap:10px}.landing .l-problem-grid .l-problem-card:last-child{grid-column:1 / -1}.landing .l-timeline-track{left:20px}.landing .l-te-left,.landing .l-te-right{padding-left:52px;padding-right:0;flex-direction:row}.landing .l-te-dot{left:20px}.landing .l-feature-grid{grid-template-columns:1fr 1fr;gap:12px}.landing .l-mentor-grid{grid-template-columns:1fr}.landing .l-compare-wrap{padding:24px 20px}.landing .l-plans-row{grid-template-columns:1fr;max-width:420px}.landing .l-plans-row-4{grid-template-columns:1fr 1fr}.landing .l-final-cta-inner{padding:48px 28px}.landing .l-section-title{font-size:1.7rem}}@media(max-width:480px){.landing .l-container{padding:0 16px}.landing .l-hero-title{font-size:2rem}.landing .l-hero-actions{flex-direction:column;align-items:stretch}.landing .l-hero-actions .l-btn-primary,.landing .l-hero-actions .l-btn-ghost{text-align:center}.landing .l-problem-grid{grid-template-columns:1fr}.landing .l-problem-grid .l-problem-card:last-child{grid-column:auto}.landing .l-feature-grid,.landing .l-plans-row-4{grid-template-columns:1fr}.landing .l-final-cta-actions{flex-direction:column;align-items:stretch}.landing .l-final-cta-actions .l-btn-primary,.landing .l-final-cta-actions .l-btn-ghost{text-align:center}}.landing .l-beta-badge{display:inline-flex;align-items:center;margin-left:8px;padding:2px 9px;font-size:.66rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;color:#fff;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%)}.landing .l-hero-beta{display:inline-flex;align-items:center;margin-right:8px;padding:2px 10px;font-weight:800;font-size:.72rem;letter-spacing:.06em;text-transform:uppercase;color:#fff;border-radius:var(--radius-pill);background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%)}.landing .l-hero-note{margin-top:14px;font-size:.9rem;color:var(--text-muted);max-width:520px}.landing .l-wait-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px;background:#06060eb8;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);animation:l-wait-fade .18s ease}@keyframes l-wait-fade{0%{opacity:0}to{opacity:1}}.landing .l-wait-modal{position:relative;width:100%;max-width:460px;max-height:calc(100vh - 40px);overflow-y:auto;padding:30px 26px 24px;border-radius:var(--radius);background:#15151f;border:1px solid var(--panel-border);box-shadow:0 24px 64px #00000080;animation:l-wait-pop .22s cubic-bezier(.2,.9,.3,1.2)}@keyframes l-wait-pop{0%{transform:translateY(14px) scale(.98);opacity:0}to{transform:none;opacity:1}}.landing .l-wait-close{position:absolute;top:12px;right:12px;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border:none;border-radius:50%;background:transparent;color:var(--text-muted);font-size:1rem;cursor:pointer;transition:background .15s ease,color .15s ease}.landing .l-wait-close:hover{background:#ffffff14;color:var(--text)}.landing .l-wait-head{text-align:center;margin-bottom:18px}.landing .l-wait-head h3{margin:10px 0 6px;font-size:1.25rem;font-weight:800;color:var(--text)}.landing .l-wait-head p{font-size:.9rem;color:var(--text-muted);line-height:1.5}.landing .l-wait-roles{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:14px}.landing .l-wait-role{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 10px;border-radius:var(--radius-sm);border:1.5px solid var(--panel-border);background:var(--panel-bg);color:var(--text-muted);font-weight:600;font-size:.9rem;cursor:pointer;font-family:inherit;transition:border-color .15s ease,color .15s ease,background .15s ease}.landing .l-wait-role-icon{font-size:1.4rem}.landing .l-wait-role.active{border-color:var(--purple);color:var(--text);background:#8b5cf61f}.landing .l-wait-profiles{margin-bottom:14px}.landing .l-wait-label{font-size:.84rem;color:var(--text-muted);margin-bottom:8px}.landing .l-wait-profile-grid{display:flex;flex-wrap:wrap;gap:8px}.landing .l-wait-profile{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;border-radius:var(--radius-pill);border:1.5px solid var(--panel-border);background:var(--panel-bg);color:var(--text-muted);font-weight:600;font-size:.86rem;cursor:pointer;font-family:inherit;transition:border-color .15s ease,color .15s ease,background .15s ease}.landing .l-wait-profile-icon{font-size:1rem}.landing .l-wait-profile.active{border-color:var(--purple);color:var(--text);background:#8b5cf61f}.landing .l-wait-input{width:100%;height:48px;padding:0 16px;margin-bottom:10px;border-radius:var(--radius-sm);border:1.5px solid var(--panel-border);background:var(--panel-bg);color:var(--text);font-size:.95rem;font-family:inherit;transition:border-color .15s ease}.landing .l-wait-input::placeholder{color:var(--text-faint)}.landing .l-wait-input:focus{outline:none;border-color:var(--purple)}.landing .l-wait-form .l-btn-primary{margin-top:4px}.landing .l-wait-form .l-btn-primary:disabled{opacity:.6;cursor:default;transform:none}.landing .l-wait-error{color:#f87171;font-size:.85rem;margin:2px 0 8px;text-align:center}.landing .l-wait-fine{text-align:center;font-size:.78rem;color:var(--text-faint);margin-top:10px}.landing .l-wait-done{text-align:center;padding:14px 0 4px}.landing .l-wait-done-icon{width:60px;height:60px;margin:0 auto 16px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);color:#fff;font-size:1.7rem;font-weight:800}.landing .l-wait-done h3{font-size:1.3rem;font-weight:800;color:var(--text);margin-bottom:8px}.landing .l-wait-done p{font-size:.92rem;color:var(--text-muted);line-height:1.5;margin-bottom:20px}:root[data-theme=light] .landing .l-wait-modal{background:#fff}:root[data-theme=light] .landing .l-wait-role,:root[data-theme=light] .landing .l-wait-profile,:root[data-theme=light] .landing .l-wait-input{background:#f4f3fa}:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:var(--text);background:var(--bg);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--bg: #0a0a14;--panel-bg: rgba(255, 255, 255, .045);--panel-bg-strong: rgba(255, 255, 255, .07);--panel-border: rgba(255, 255, 255, .09);--panel-shadow: 0 14px 38px rgba(0, 0, 0, .38);--surface-1: rgba(255, 255, 255, .04);--surface-2: rgba(255, 255, 255, .07);--veil: rgba(10, 10, 20, .45);--overlay: rgba(8, 6, 18, .6);--elev-bg: #16142a;--toast-bg: rgba(28, 25, 48, .97);--text: #f5f5f7;--text-muted: #9b97b3;--text-faint: #6f6b86;--purple: #8b5cf6;--purple-deep: #6d28d9;--indigo: #6366f1;--blue: #60a5fa;--green: #34d399;--orange: #fb923c;--pink: #f472b6;--red: #f87171;--strava: #fc4c02;--radius: 20px;--radius-sm: 12px;--radius-pill: 999px;--dur-fast: .18s;--dur-med: .25s;--ease-out: cubic-bezier(.22, 1, .36, 1);--nav-bg: rgba(15, 13, 28, .78);--tooltip-bg: rgba(20, 18, 38, .97);--chip-text: #ede9fe;--danger-text: #fca5a5;--danger-bg: rgba(248, 113, 113, .08);--danger-border: rgba(248, 113, 113, .32);--status-normal-text: #bbf7d0;--status-normal-bg: rgba(52, 211, 153, .18);--status-normal-border: rgba(52, 211, 153, .32);--status-high-text: #fde68a;--status-high-bg: rgba(251, 146, 60, .18);--status-high-border: rgba(251, 146, 60, .32);--status-low-text: #bfdbfe;--status-low-bg: rgba(96, 165, 250, .18);--status-low-border: rgba(96, 165, 250, .32);--trend-up: #f9a8d4;--trend-down: #93c5fd;--chart-grid: rgba(255, 255, 255, .08);--chart-track: rgba(255, 255, 255, .08);--chart-ref-fill: rgba(52, 211, 153, .1);--chart-ref-stroke: rgba(52, 211, 153, .35)}:root[data-theme=light]{color-scheme:light;--bg: #f4f3fa;--panel-bg: rgba(255, 255, 255, .72);--panel-bg-strong: rgba(255, 255, 255, .92);--panel-border: rgba(27, 24, 48, .1);--panel-shadow: 0 14px 38px rgba(54, 40, 120, .1);--surface-1: rgba(27, 24, 48, .05);--surface-2: rgba(27, 24, 48, .08);--veil: rgba(244, 243, 250, .55);--overlay: rgba(35, 30, 70, .35);--elev-bg: #ffffff;--toast-bg: rgba(255, 255, 255, .97);--text: #1b1830;--text-muted: #5d5878;--text-faint: #8d88a6;--nav-bg: rgba(255, 255, 255, .82);--tooltip-bg: #ffffff;--chip-text: #5b21b6;--danger-text: #dc2626;--danger-bg: rgba(220, 38, 38, .07);--danger-border: rgba(220, 38, 38, .35);--status-normal-text: #047857;--status-normal-bg: rgba(5, 150, 105, .12);--status-normal-border: rgba(5, 150, 105, .3);--status-high-text: #b45309;--status-high-bg: rgba(217, 119, 6, .12);--status-high-border: rgba(217, 119, 6, .3);--status-low-text: #1d4ed8;--status-low-bg: rgba(37, 99, 235, .1);--status-low-border: rgba(37, 99, 235, .3);--trend-up: #db2777;--trend-down: #2563eb;--chart-grid: rgba(27, 24, 48, .12);--chart-track: rgba(27, 24, 48, .12);--chart-ref-fill: rgba(5, 150, 105, .14);--chart-ref-stroke: rgba(5, 150, 105, .4)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;color:var(--text);background:radial-gradient(ellipse 920px 620px at 12% -8%,rgba(139,92,246,.32),transparent 60%),radial-gradient(ellipse 760px 520px at 112% 8%,rgba(244,114,182,.16),transparent 55%),radial-gradient(ellipse 820px 720px at 88% 96%,rgba(99,102,241,.18),transparent 60%),var(--bg);background-attachment:fixed}:root[data-theme=light] body{background:radial-gradient(ellipse 920px 620px at 12% -8%,rgba(139,92,246,.16),transparent 60%),radial-gradient(ellipse 760px 520px at 112% 8%,rgba(244,114,182,.1),transparent 55%),radial-gradient(ellipse 820px 720px at 88% 96%,rgba(99,102,241,.1),transparent 60%),var(--bg)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled,input:disabled,select:disabled{cursor:not-allowed;opacity:.5}input:where(:not([type=checkbox]):not([type=radio]):not([type=file]):not([type=range])),select,textarea{width:100%;min-height:46px;padding:0 12px;color:var(--text);background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm);outline:none;transition:border-color .15s ease,box-shadow .15s ease}select{-moz-appearance:none;appearance:none;-webkit-appearance:none;padding-right:36px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%23a0a0b8' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center}textarea{min-height:92px;padding:12px;resize:vertical}input:where(:not([type=checkbox]):not([type=radio]):not([type=file])):focus,select:focus,textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px #8b5cf638}select option{background:var(--elev-bg);color:var(--text)}input[type=checkbox]{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:22px;height:22px;flex-shrink:0;display:inline-grid;place-items:center;background:var(--surface-1);border:1px solid var(--panel-border);border-radius:6px;cursor:pointer;transition:background .15s ease,border-color .15s ease}input[type=checkbox]:checked{background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border-color:transparent}input[type=checkbox]:checked:after{content:"";width:6px;height:11px;margin-top:-2px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg)}input[type=file]{width:100%;color:var(--text-muted);font-size:.85rem}input[type=file]::file-selector-button{margin-right:10px;padding:10px 14px;color:var(--text);background:var(--surface-2);border:1px solid var(--panel-border);border-radius:var(--radius-pill);font:inherit;font-weight:700;cursor:pointer}a{color:inherit;text-decoration:none}.app-loader{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;font-weight:800;font-size:1.2rem;color:var(--text)}.app-shell{min-height:100vh;padding-bottom:calc(96px + env(safe-area-inset-bottom))}.app-main{width:min(1080px,100%);margin:0 auto}.page{padding:calc(18px + env(safe-area-inset-top)) 16px 24px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}.page-header h1{margin:0;font-size:1.85rem;line-height:1.05;letter-spacing:0;color:var(--text)}.header-action-danger{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;background:transparent;border:1px solid rgba(239,68,68,.45);border-radius:var(--radius-sm);color:#ef4444d9;font-size:.875rem;font-weight:600;cursor:pointer;white-space:nowrap;transition:border-color .15s ease,color .15s ease,background .15s ease;flex-shrink:0}.header-action-danger:hover{border-color:#ef4444bf;color:#ef4444;background:#ef444414}.kicker{margin:0 0 6px;color:var(--text-muted);font-size:.86rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.hero-band{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:188px;padding:22px;color:var(--text);background:radial-gradient(ellipse 420px 260px at 110% -20%,rgba(244,114,182,.35),transparent 60%),linear-gradient(135deg,#2a2150,#1c1638 60%,#15112b);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);overflow:hidden}.hero-band p{margin:0 0 12px;color:var(--pink);font-weight:800}.hero-band h2{max-width:620px;margin:0;font-size:2rem;line-height:1;letter-spacing:0}.hero-band span{display:block;max-width:620px;margin-top:12px;color:var(--text-muted);line-height:1.45}.hero-band svg{flex-shrink:0;color:var(--purple);filter:drop-shadow(0 0 18px rgba(139,92,246,.55))}.metric-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0}.metric-card,.panel{min-width:0;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.metric-card{min-height:116px;padding:16px}.metric-card p{margin:0 0 12px;color:var(--text-muted);font-size:.88rem;font-weight:700}.metric-card strong{display:block;color:var(--green);font-size:1.3rem;line-height:1.1;letter-spacing:-.01em}.metric-card span{display:block;margin-top:8px;color:var(--text-muted)}.panel{padding:16px;margin-top:14px}.panel h2{margin:0 0 12px;font-size:1.08rem;color:var(--text)}.panel-title{display:flex;align-items:center;gap:12px}.panel-title h2{margin:0}.panel-title>svg{flex-shrink:0;box-sizing:content-box;padding:8px;border-radius:50%;color:#fff;background:linear-gradient(135deg,var(--purple),var(--blue));box-shadow:0 6px 18px #8b5cf659}.muted{color:var(--text-muted);line-height:1.45}details.collapsible{padding:0;overflow:hidden}details.collapsible>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px;cursor:pointer;list-style:none;font-weight:800;font-size:1.08rem;color:var(--text)}details.collapsible>summary::-webkit-details-marker{display:none}details.collapsible>summary:after{content:"+";flex-shrink:0;width:28px;height:28px;display:grid;place-items:center;font-size:1.2rem;border-radius:50%;color:var(--text-muted);background:var(--surface-1);border:1px solid var(--panel-border)}details.collapsible[open]>summary{border-bottom:1px solid var(--panel-border)}details.collapsible[open]>summary:after{content:"-"}details.collapsible .collapsible-body{padding:16px;display:grid;gap:14px}.empty-panel{min-height:220px;display:grid;align-content:center;justify-items:center;text-align:center}.wide-action,.primary-button,.secondary-button,.danger-button,.icon-button,.segmented button{border:0;border-radius:var(--radius-pill);min-height:46px;font-weight:800;font-family:inherit}.wide-action{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:18px 20px;color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border-radius:var(--radius);box-shadow:0 10px 28px #6366f161}.primary-button{width:100%;padding:0 18px;color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);box-shadow:0 8px 24px #8b5cf659}.secondary-button{display:inline-flex;align-items:center;gap:8px;padding:0 16px;color:var(--text);background:var(--panel-bg-strong);border:1px solid var(--panel-border)}.danger-button{width:100%;margin-top:14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;color:#fff;background:linear-gradient(135deg,var(--red) 0%,var(--pink) 100%);box-shadow:0 8px 24px #f472b64d}.icon-button{width:46px;height:46px;border-radius:50%;display:inline-grid;place-items:center;color:var(--text);background:var(--panel-bg-strong);border:1px solid var(--panel-border)}.auth-screen{min-height:100vh;display:grid;place-items:center;padding:24px 16px;background:radial-gradient(ellipse 900px 600px at 15% -10%,rgba(139,92,246,.32),transparent 60%),radial-gradient(ellipse 760px 520px at 110% 100%,rgba(244,114,182,.18),transparent 55%),var(--bg)}.auth-panel{width:min(430px,100%);padding:26px;background:var(--panel-bg-strong);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.auth-panel h1{margin:12px 0 6px;font-size:2rem;letter-spacing:0;color:var(--text)}.auth-panel p{margin:0 0 18px;color:var(--text-muted);line-height:1.45}.brand-mark{display:grid;place-items:center;filter:drop-shadow(0 10px 28px rgba(139,92,246,.35))}.brand-wordmark{display:inline-flex;flex-direction:column;align-items:center;gap:4px;line-height:1}.brand-wordmark b{font-weight:900;letter-spacing:.5px}.brand-wordmark .bw-accent{color:var(--purple)}.form-stack{display:grid;gap:12px}.form-stack label{display:grid;gap:6px;color:var(--text-muted);font-size:.92rem;font-weight:800}.form-stack input,.form-stack select,.form-stack textarea{width:100%;min-height:46px;padding:0 12px;color:var(--text);background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm);outline:none}.form-stack select{padding-right:36px}.form-stack textarea{min-height:92px;padding:12px;resize:vertical}.form-stack input:focus,.form-stack select:focus,.form-stack textarea:focus{border-color:var(--purple);box-shadow:0 0 0 3px #8b5cf638}.form-stack select option{background:var(--elev-bg);color:var(--text)}.segmented{display:inline-grid;grid-template-columns:repeat(2,1fr);gap:4px;padding:4px;margin:12px 0 18px;background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-pill)}.segmented.full{width:100%;margin:0}.segmented.three{grid-template-columns:repeat(3,1fr)}.student-card-list{display:grid;gap:12px}.student-card{width:100%;display:grid;gap:12px;text-align:left;color:var(--text);cursor:pointer}.student-card-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.student-card-head strong{font-size:1.02rem}.student-indicators{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.student-indicator{display:grid;gap:3px;padding:10px 12px;background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.student-indicator span{color:var(--text-muted);font-size:.76rem;font-weight:700}.student-indicator strong{font-size:1rem}.student-indicator em{font-style:normal;font-size:.82rem;font-weight:800}.student-protocol{margin:0}.mentor-notes-list{display:grid}.mentor-note{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid var(--panel-border)}.mentor-note p{margin:0 0 4px}.student-marker-row,.student-protocol-row{padding:8px 0;border-top:1px solid var(--panel-border)}.student-marker-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:.9rem}.student-marker-value{display:inline-flex;align-items:center;gap:8px;font-variant-numeric:tabular-nums}.student-protocol-row p{margin:2px 0 0}.mentor-link-row{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px;padding:12px 0;border-top:1px solid var(--panel-border)}.mentor-link-row p{margin:4px 0 0}.mentor-share-note{font-size:.82rem}.mentor-link-actions{display:flex;flex-wrap:wrap;gap:8px}.meal-detail-photo{width:100%;max-height:220px;object-fit:cover;border-radius:var(--radius-sm)}.meal-detail-items{display:grid}.meal-detail-item{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:8px 0;border-top:1px solid var(--panel-border);color:var(--text-muted);font-size:.88rem}.meal-detail-grams{flex-shrink:0;color:var(--text-faint);font-variant-numeric:tabular-nums}.mini-label{display:block;color:var(--text-faint);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.meal-detail-actions{display:grid;gap:12px;margin-top:6px;padding-top:14px;border-top:1px solid var(--panel-border)}.meal-detail-periods{display:flex;flex-wrap:wrap;gap:8px}.add-record-section>.secondary-button{width:auto;align-self:flex-start;justify-self:start}.marker-card-grid>div>.marker-card,.protocol-card-list>div>.protocol-card,.assessment-flat-list>div>.assessment-row{width:100%;height:100%}.segmented button{min-width:56px;min-height:30px;padding:0 12px;color:var(--text-muted);background:transparent;font-size:.8rem}.segmented button.active{color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);box-shadow:0 4px 14px #8b5cf659}.text-link{display:block;margin-top:18px;color:var(--purple);font-weight:800;text-align:center}.error-text{padding:10px 12px;color:#fca5a5;background:#f871711f;border:1px solid rgba(248,113,113,.24);border-radius:var(--radius-sm)}.processing-text{padding:10px 12px;color:#93c5fd;background:#60a5fa1f;border:1px solid rgba(96,165,250,.24);border-radius:var(--radius-sm);animation:pulse-soft 1.3s ease-in-out infinite}.success-text{padding:10px 12px;color:#6ee7b7;background:#34d3991f;border:1px solid rgba(52,211,153,.24);border-radius:var(--radius-sm)}@keyframes pulse-soft{0%,to{opacity:1}50%{opacity:.55}}.bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:10;display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);padding:8px 8px calc(8px + env(safe-area-inset-bottom));background:var(--nav-bg);border-top:1px solid var(--panel-border);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.bottom-nav-link{min-height:58px;display:grid;place-items:center;align-content:center;gap:4px;color:var(--text-muted);border-radius:var(--radius-sm);font-size:.72rem;font-weight:800}.bottom-nav-link.active{color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);box-shadow:0 6px 18px #8b5cf666}.toast-stack{position:fixed;left:50%;transform:translate(-50%);bottom:calc(104px + env(safe-area-inset-bottom));z-index:70;width:min(560px,calc(100% - 24px));display:flex;flex-direction:column;gap:8px;pointer-events:none}@keyframes toast-in{0%{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.toast{pointer-events:auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:13px 16px;color:var(--text);background:var(--toast-bg);border:1px solid var(--panel-border);border-radius:var(--radius-sm);box-shadow:var(--panel-shadow);animation:toast-in .22s var(--ease-out);animation:toast-in .18s ease-out}.toast>span{min-width:0;overflow-wrap:anywhere}.toast-action{flex-shrink:0;padding:6px 12px;color:#fff;font-weight:800;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border:0;border-radius:var(--radius-pill);cursor:pointer}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.settings-tab-body{padding-top:20px;display:grid;gap:0}.settings-block{margin-top:16px}.settings-block:first-of-type{margin-top:14px}.settings-block h3,.collapsible-body h3{margin:0 0 4px;font-size:.98rem}.settings-label{display:block;margin-bottom:8px;color:var(--text-muted);font-size:.85rem}.tabs{display:flex;overflow-x:auto;scrollbar-width:none;border-bottom:1px solid var(--panel-border);gap:0;margin-bottom:4px}.page-top{position:sticky;top:-72px;z-index:30;margin:calc(-18px - env(safe-area-inset-top)) -16px 14px;padding:calc(18px + env(safe-area-inset-top)) 16px 0;background:var(--veil);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.page-top .page-header{min-height:38px;margin-bottom:16px}.page-top .tabs{margin-bottom:0}.tabs::-webkit-scrollbar{display:none}.tabs-btn{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;padding:10px 16px;background:transparent;border:0;border-bottom:2px solid transparent;border-radius:0;min-height:0;font-weight:600;font-size:.9rem;color:var(--text-muted);white-space:nowrap;cursor:pointer}.tabs-btn--active{color:var(--text);border-bottom:2px solid;border-image:linear-gradient(90deg,var(--purple) 0%,var(--indigo) 100%) 1}.copy-row{display:grid;grid-template-columns:minmax(0,1fr) 44px 44px;gap:8px;align-items:center}.copy-row code{min-height:44px;display:flex;align-items:center;padding:8px 10px;overflow:auto;color:var(--text);background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm);font-size:.8rem}.app-integration-list{display:grid;gap:12px}.app-integration{display:grid;gap:12px;padding:14px;background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.app-integration-head{display:flex;align-items:center;gap:12px}.app-icon{display:flex;align-items:center;justify-content:center;width:46px;height:46px;border-radius:13px;flex-shrink:0}.app-icon-strava{background:var(--strava)}.app-integration-info{display:grid;gap:2px;min-width:0;flex:1}.app-integration-info strong{font-size:1rem}.app-integration-status{font-size:.82rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.app-integration-status.connected{color:var(--green)}.app-integration-action{flex-shrink:0}.app-integration-desc{margin:0;font-size:.86rem}.app-integration-controls{display:grid;gap:12px;padding-top:12px;border-top:1px solid var(--panel-border)}.app-integration-controls>.compact-button{justify-self:start}.app-integration-reconnect{display:grid;gap:8px;justify-items:start}.app-integration-reconnect p{margin:0;font-size:.86rem}.switch-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.9rem}.switch{position:relative;width:44px;height:26px;flex-shrink:0}.switch input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer;z-index:1}.switch-slider{position:absolute;top:0;right:0;bottom:0;left:0;background:var(--surface-2);border:1px solid var(--panel-border);border-radius:var(--radius-pill);transition:background var(--dur-fast) var(--ease-out)}.switch-slider:before{content:"";position:absolute;top:3px;left:3px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 2px #00000040;transition:transform var(--dur-fast) var(--ease-out)}.switch input:checked+.switch-slider{background:linear-gradient(135deg,var(--purple),var(--indigo));border-color:transparent}.switch input:checked+.switch-slider:before{transform:translate(18px)}.strava-cta{border-color:var(--strava)!important;color:var(--strava)!important}.strava-cta:hover{background:color-mix(in srgb,var(--strava) 8%,transparent)!important}.source-badge{display:inline-flex;align-items:center;gap:4px;margin-left:8px;padding:2px 7px;border-radius:var(--radius-pill);font-size:.66rem;font-weight:700;letter-spacing:.02em;vertical-align:middle}.source-badge-strava{background:var(--strava);color:#fff}.strava-activity-list{display:grid;gap:0}.strava-activity-row{display:flex;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--panel-border);cursor:pointer}.strava-activity-row:first-child{border-top:none}.strava-activity-row.is-disabled{opacity:.5;cursor:default}.strava-activity-row input[type=checkbox]{-moz-appearance:auto;appearance:auto;-webkit-appearance:auto;width:20px;height:20px;min-height:0;flex:0 0 auto;margin:0;padding:0;accent-color:var(--strava)}.strava-activity-emoji{font-size:1.3rem;flex:0 0 auto}.strava-activity-info{display:grid;gap:2px;min-width:0;flex:1}.strava-activity-info strong{font-size:.92rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.strava-activity-info .muted{font-size:.8rem}.strava-activity-tag{flex:0 0 auto;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--green)}.strava-detail-head{display:flex;align-items:center;gap:10px;font-weight:700}.strava-detail-head .strava-activity-emoji{font-size:1.5rem}.strava-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.strava-stat{display:grid;gap:2px;padding:10px 12px;background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.strava-stat span{font-size:.74rem;text-transform:uppercase;letter-spacing:.04em;color:var(--text-faint)}.strava-stat strong{font-size:1.05rem;font-variant-numeric:tabular-nums}.timeline-grid{gap:18px}.timeline-filters{display:grid;gap:14px}.timeline-filters label{display:grid;gap:6px;color:var(--text-muted);font-size:.92rem;font-weight:800}.timeline-filters input{width:100%;min-height:44px;padding:0 12px;color:var(--text);background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm);font:inherit}.timeline-periods{grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.timeline-chart{height:360px}.insight-history{display:grid;gap:10px}.insight-history details{padding:12px;background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.insight-history summary{cursor:pointer;font-weight:800;color:var(--text)}.insight-history .markdown-card{margin-top:12px;background:var(--surface-1)}.stack{display:grid;gap:14px;margin-top:14px}.two-column{display:grid;gap:14px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.form-grid.three,.form-grid.four{grid-template-columns:repeat(3,minmax(0,1fr))}.form-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.select-input{width:100%;min-height:44px;padding:0 12px;color:var(--text);background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm);font:inherit;font-weight:700}.select-input option{background:var(--elev-bg);color:var(--text)}.chart-box{height:240px;margin-top:14px}.workout-volume-chart{height:320px}.item-header,.list-card,.list-button{display:flex;align-items:center;justify-content:space-between;gap:12px}.item-header strong,.list-card strong,.list-button strong{display:block;color:var(--text)}.item-header span,.list-card span,.list-card small,.list-button span{display:block;margin-top:4px;color:var(--text-muted);overflow-wrap:anywhere}.item-list{display:grid;gap:10px}.list-card,.list-button{width:100%;padding:12px 14px;text-align:left;background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.list-button{color:var(--text)}.list-details{width:100%;background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm);overflow:hidden}.list-details>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;cursor:pointer;list-style:none;color:var(--text)}.list-details>summary::-webkit-details-marker{display:none}.list-details>summary>div{min-width:0;display:grid;gap:4px}.list-details>summary strong,.list-details>summary span,.list-details>summary small{display:block;overflow-wrap:anywhere}.list-details .list-details-body{padding:0 14px 14px;display:grid;gap:10px}.protocol-toolbar{display:flex;justify-content:flex-end}.protocol-section{display:grid;gap:10px}.protocol-list-title{margin:0;font-size:1rem}.flat-section{display:grid;gap:12px}.flat-section-title{margin:0;font-size:1rem}.protocol-card-list{display:grid;gap:12px}.protocol-actions,.protocol-management{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.protocol-management{justify-content:space-between;padding-top:12px;border-top:1px solid var(--panel-border)}.protocol-inline-form{padding:16px;background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.protocol-inline-form h3,.list-details-body h3{margin:4px 0 0;font-size:.95rem}.protocol-compound-list{display:grid;gap:8px}.protocol-compound{display:grid;gap:4px;padding:11px 12px;background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.protocol-compound span,.list-details summary small{color:var(--text-muted)}.readonly-field{min-height:46px;display:flex;align-items:center;padding:0 12px;color:var(--text-muted);background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.chip.warning{display:inline-flex;align-items:center;gap:6px;color:#fecaca;background:#f871712e;border-color:#f8717152}.workout-detail{scroll-margin-top:18px}.exercise-detail{display:grid;gap:10px;padding:14px 0;border-top:1px solid var(--panel-border)}.exercise-detail:first-of-type{border-top:0}.exercise-detail strong,.exercise-detail span{display:block;color:var(--text)}.exercise-detail>div>span{margin-top:4px;color:var(--text-muted)}.set-row{display:flex;flex-wrap:wrap;gap:8px}.set-row span{padding:7px 9px;color:var(--text);background:var(--surface-2);border:1px solid var(--panel-border);border-radius:var(--radius-sm);font-size:.86rem;font-weight:800}.chip-row{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.chip{display:inline-flex;align-items:center;min-height:30px;padding:0 12px;color:var(--chip-text);background:#8b5cf638;border:1px solid rgba(139,92,246,.32);border-radius:var(--radius-pill);font-size:.86rem;font-weight:800}.chip.status-low{color:var(--status-low-text);background:var(--status-low-bg);border-color:var(--status-low-border)}.chip.status-high{color:var(--status-high-text);background:var(--status-high-bg);border-color:var(--status-high-border)}.chip.status-normal{color:var(--status-normal-text);background:var(--status-normal-bg);border-color:var(--status-normal-border)}.marker-card-grid{display:grid;grid-template-columns:1fr;gap:10px}.marker-card{min-width:0;min-height:154px;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:13px;text-align:left;color:var(--text);background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.marker-card.active{border-color:var(--purple);box-shadow:0 0 0 2px #8b5cf62e}.marker-card-name{min-height:34px;color:var(--text-muted);font-size:.78rem;font-weight:800;overflow-wrap:anywhere}.marker-card strong{font-size:1.14rem;overflow-wrap:anywhere}.marker-card small{margin-top:auto;color:var(--text-muted);overflow-wrap:anywhere}.marker-card-meta{width:100%;display:flex;flex-wrap:wrap;gap:6px;align-items:center}.marker-trend{display:inline-flex;align-items:center;gap:4px;color:var(--text-muted);font-size:.78rem;font-weight:800}.trend-up{color:var(--trend-up)}.trend-down{color:var(--trend-down)}.marker-detail-heading,.assessment-heading,.detail-actions{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}.marker-detail-heading span:first-child{color:var(--text-muted);font-size:.78rem;font-weight:800}.marker-detail-heading h2{margin:3px 0 0}.marker-history{margin-top:14px}.chart-tooltip{max-width:260px;display:grid;gap:6px;padding:12px;color:var(--text);background:var(--tooltip-bg);border:1px solid var(--panel-border);border-radius:var(--radius-sm);box-shadow:var(--panel-shadow)}.chart-tooltip span,.chart-tooltip small{overflow-wrap:anywhere}.chart-tooltip small{color:var(--text-muted)}.exam-marker-list{display:grid;gap:8px}.exam-marker-row{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;padding:10px 0;border-bottom:1px solid var(--panel-border)}.exam-marker-row:last-child{border-bottom:0}.exam-marker-row div,.exam-marker-row span,.exam-marker-row small{min-width:0}.exam-marker-row div>span,.exam-marker-row div>small{display:block;margin-top:4px;color:var(--text-muted);overflow-wrap:anywhere}.marker-review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.assessment-metric-grid,.assessment-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}.assessment-metric{min-width:0;display:grid;gap:5px;padding:12px;background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.assessment-detail-grid>span{min-width:0;display:grid;gap:4px;padding:10px 0 2px;border-top:1px solid var(--panel-border)}.assessment-metric>span,.assessment-detail-grid>span>strong{color:var(--text-muted);font-size:.78rem}.assessment-metric strong{font-size:1.15rem}.assessment-metric small{font-weight:800}.delta-positive{color:var(--green)}.delta-negative{color:#f87171}.delta-neutral{color:var(--text-muted)}.assessment-detail-grid>span>strong{display:block}.step-list{margin:12px 0;padding-left:20px;color:var(--text-muted);line-height:1.55}.inline-link{margin-top:8px;text-align:left}.back-link{display:inline-flex;align-items:center;gap:4px;margin-bottom:4px;background:none;border:none;cursor:pointer}.list-details-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px}.markdown-card{margin:0;padding:14px;white-space:pre-wrap;color:var(--text);background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm);font:inherit;line-height:1.5}.diet-summary{display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:16px}.donut-box{position:relative;height:160px}.donut-box strong{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--text);font-size:1.4rem}.date-bar{display:grid;gap:6px;margin-top:14px;color:var(--text-muted);font-size:.92rem;font-weight:800}.date-bar input{min-height:46px;padding:0 12px;color:var(--text);background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm);font:inherit}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.fake-chart{width:min(520px,100%);height:190px;display:grid;grid-template-columns:repeat(4,1fr);align-items:end;gap:10px;padding:14px;background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius)}.fake-chart span{display:block;border-radius:8px 8px 0 0;background:var(--green)}.fake-chart span:nth-child(1){height:45%}.fake-chart span:nth-child(2){height:76%;background:var(--pink)}.fake-chart span:nth-child(3){height:58%;background:var(--orange)}.fake-chart span:nth-child(4){height:86%;background:var(--purple)}.recharts-cartesian-grid-horizontal line,.recharts-cartesian-grid-vertical line{stroke:var(--chart-grid)}.recharts-text,.recharts-cartesian-axis-tick-value,.recharts-polar-angle-axis-tick-value{fill:var(--text-muted)}.recharts-legend-item-text{color:var(--text-muted)!important}.recharts-default-tooltip{background:var(--tooltip-bg)!important;border:1px solid var(--panel-border)!important;border-radius:var(--radius-sm)!important;color:var(--text)!important}.recharts-tooltip-label,.recharts-tooltip-item{color:var(--text)!important}@media(min-width:760px){.page{padding:30px 28px 40px}.page-header h1{font-size:2.35rem}.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.marker-card-grid{grid-template-columns:repeat(auto-fill,minmax(232px,1fr))}.assessment-metric-grid,.assessment-detail-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.two-column{grid-template-columns:repeat(2,minmax(0,1fr))}.bottom-nav{width:min(680px,calc(100% - 32px));left:50%;right:auto;bottom:16px;transform:translate(-50%);border:1px solid var(--panel-border);border-radius:var(--radius);padding:8px}}@media(max-width:430px){.hero-band{align-items:flex-start;min-height:170px}.hero-band h2{font-size:1.55rem}.hero-band svg{display:none}.metric-grid,.form-grid,.form-grid.three,.form-grid.four,.marker-review-grid,.diet-summary,.quick-grid,.timeline-periods{grid-template-columns:1fr}.tabs-btn span,.bottom-nav-link span{font-size:.68rem}}.fab-container{position:fixed;right:20px;bottom:calc(88px + env(safe-area-inset-bottom));z-index:25;display:flex;flex-direction:column;align-items:flex-end;gap:10px}.fab-options{display:flex;flex-direction:column;align-items:flex-end;gap:10px}.fab-option{display:flex;align-items:center;gap:10px;padding:10px 16px;color:var(--text);background:var(--toast-bg);border:1px solid var(--panel-border);border-radius:var(--radius-pill);box-shadow:var(--panel-shadow);font-weight:700;white-space:nowrap}.fab-main{width:56px;height:56px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border:0;border-radius:50%;box-shadow:0 10px 28px #8b5cf673;transition:transform .18s ease}.fab-main.open{transform:rotate(45deg)}.sheet-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:flex-end;justify-content:center;background:var(--overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.sheet{width:min(640px,100%);max-height:min(88vh,760px);display:flex;flex-direction:column;background:var(--elev-bg);border:1px solid var(--panel-border);border-bottom:none;border-radius:var(--radius) var(--radius) 0 0;box-shadow:var(--panel-shadow)}.sheet-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 16px 0}.sheet-header h2{margin:0}.sheet-body{padding:16px;overflow-x:hidden;overflow-y:auto;display:grid;gap:14px}.sheet-body label,.sheet-body .form-grid,.sheet-body .readonly-field{min-width:0}.sheet-body input,.sheet-body select,.sheet-body textarea,.sheet-body .readonly-field{box-sizing:border-box;width:100%;max-width:100%}.sheet-body .form-grid>label{overflow:hidden}.sheet-footer{padding:12px 16px calc(12px + env(safe-area-inset-bottom));border-top:1px solid var(--panel-border)}.checkbox-row{display:flex;align-items:center;gap:10px;font-weight:700}.checkbox-row input[type=checkbox]{-moz-appearance:auto;appearance:auto;-webkit-appearance:auto;width:18px;height:18px;min-height:0;flex:0 0 auto;padding:0;accent-color:var(--purple)}.save-meal-toggle{align-self:flex-start;display:inline-flex;align-items:center;gap:6px}@keyframes sheet-slide-up{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes overlay-fade{0%{opacity:0}to{opacity:1}}@keyframes pop-in{0%{transform:translateY(8px) scale(.97);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}.sheet-overlay{animation:overlay-fade .18s ease}.sheet{animation:sheet-slide-up .24s cubic-bezier(.2,.9,.3,1)}.pop-in{animation:pop-in .2s ease}.fab-options .fab-option{animation:pop-in .18s ease backwards}.fab-options .fab-option:nth-child(1){animation-delay:.09s}.fab-options .fab-option:nth-child(2){animation-delay:.06s}.fab-options .fab-option:nth-child(3){animation-delay:.03s}.fab-options .fab-option:nth-child(4){animation-delay:0s}.fab-option:active{transform:scale(.96)}.fab-main:active{transform:scale(.92)}.fab-main.open:active{transform:rotate(45deg) scale(.92)}.search-box>span{display:block;margin-bottom:6px}.search-field{position:relative;display:flex;align-items:center}.search-field svg{position:absolute;left:14px;color:var(--muted, rgba(255, 255, 255, .55));pointer-events:none}.search-field input{width:100%;padding-left:42px;padding-right:40px;border-radius:var(--radius-pill, 999px);transition:border-color .15s ease,box-shadow .15s ease}.search-field input:focus{border-color:var(--purple);box-shadow:0 0 0 3px #8b5cf640;outline:none}@keyframes spin{to{transform:rotate(360deg)}}.search-spinner{position:absolute;right:14px;width:16px;height:16px;border:2px solid rgba(255,255,255,.2);border-top-color:var(--purple);border-radius:50%;animation:spin .7s linear infinite}.food-results{max-height:260px;overflow-y:auto}.food-result{animation:pop-in .18s ease backwards;transition:background .12s ease,transform .12s ease}.food-result:active{transform:scale(.985);background:#8b5cf626}.sheet-cta{width:100%;display:flex;align-items:center;justify-content:center;gap:8px;transition:transform .12s ease,opacity .12s ease}.sheet-cta:active{transform:scale(.98)}.sheet .form-stack .primary-button,.sheet .form-stack .secondary-button{width:100%;display:flex;align-items:center;justify-content:center;gap:8px}.calorie-card{display:grid;gap:12px}.calorie-head{display:flex;align-items:center;justify-content:space-between}.calorie-head h2{display:flex;align-items:center;gap:8px;margin:0}.calorie-actions{display:flex;gap:8px}.gauge-row{display:grid;grid-template-columns:1fr 150px 1fr;align-items:end;gap:8px}.gauge-side{display:grid;justify-items:center;gap:2px;padding-bottom:10px}.gauge-side strong{font-size:1.15rem}.gauge-side span{color:var(--muted, rgba(255, 255, 255, .55));font-size:.78rem}.gauge-box{position:relative;height:110px}.gauge-center{position:absolute;inset:auto 0 6px;display:grid;justify-items:center;gap:0;pointer-events:none}.gauge-center strong{font-size:1.7rem;line-height:1.1}.gauge-center span{color:var(--muted, rgba(255, 255, 255, .55));font-size:.76rem}.macro-bars{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.macro-bar{display:grid;gap:6px;justify-items:center}.macro-bar>span:first-child{color:var(--muted, rgba(255, 255, 255, .55));font-size:.82rem;font-weight:700}.bar-track{width:100%;height:8px;background:var(--surface-2);border-radius:999px;overflow:hidden}.bar-fill{height:100%;border-radius:999px;transition:width .4s ease}.bar-value{font-size:.82rem;font-weight:800}.list-section-title{margin:0 0 8px;font-size:1rem;font-weight:800}.period-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.period-head h2{margin:0}.period-meta{display:flex;align-items:center;gap:10px}.period-add{width:34px;height:34px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border:0;border-radius:12px;transition:transform .12s ease}.period-add:active{transform:scale(.92)}.period-empty{margin:0;font-size:.85rem}.entry-card{align-items:center}.entry-main{flex:1;min-width:0;display:flex;align-items:center;gap:12px;padding:0;text-align:left;color:var(--text);background:none;border:0}.entry-thumb{width:46px;height:46px;flex-shrink:0;object-fit:cover;border-radius:12px;border:1px solid var(--panel-border)}.photo-viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:grid;place-items:center;padding:24px;background:#04030ce0;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);animation:overlay-fade .18s ease}.photo-viewer img{max-width:100%;max-height:80vh;border-radius:var(--radius);border:1px solid var(--panel-border)}.fab-container{right:auto;left:50%;transform:translate(-50%);align-items:center;z-index:45}.add-menu-overlay{z-index:42;align-items:flex-end}.add-menu{width:min(640px,100%);padding:16px 16px calc(170px + env(safe-area-inset-bottom));animation:sheet-slide-up .22s cubic-bezier(.2,.9,.3,1)}.add-menu-period{margin:0 0 10px;color:#ede9fe;text-align:center;font-weight:800}.add-menu-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.add-menu-option{display:grid;justify-items:center;gap:10px;padding:20px 12px;color:var(--text);background:var(--toast-bg);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);font-weight:700;animation:pop-in .2s ease backwards;transition:transform .12s ease}.add-menu-option:nth-child(1){animation-delay:0s}.add-menu-option:nth-child(2){animation-delay:.04s}.add-menu-option:nth-child(3){animation-delay:.08s}.add-menu-option:nth-child(4){animation-delay:.12s}.add-menu-option:active{transform:scale(.96)}.add-menu-option svg{color:var(--purple)}.plate-head{display:flex;align-items:center;gap:12px}.plate-photo{width:72px;height:72px;flex-shrink:0;display:grid;place-items:center;padding:0;overflow:hidden;color:var(--muted, rgba(255, 255, 255, .55));background:var(--surface-2);border:1px dashed var(--panel-border);border-radius:var(--radius)}.plate-photo img{width:100%;height:100%;object-fit:cover}.plate-photo-empty{gap:4px}.plate-photo-empty span{font-size:.62rem;font-weight:700}.plate-name{flex:1;min-width:0;font-weight:800}.chip-active{color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border-color:transparent}.plate-summary{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:14px;padding:14px;background:#8b5cf61a;border:1px solid rgba(139,92,246,.25);border-radius:var(--radius)}.plate-kcal{display:grid;justify-items:center}.plate-kcal strong{font-size:1.9rem;line-height:1.1}.plate-kcal span{color:var(--muted, rgba(255, 255, 255, .55));font-size:.8rem}.macro-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.macro-card{display:grid;gap:2px;padding:10px 8px;background:var(--surface-2);border:1px solid var(--panel-border);border-radius:12px;text-align:center}.macro-card span{color:var(--muted, rgba(255, 255, 255, .55));font-size:.74rem;font-weight:700}.macro-card strong{font-size:.95rem}.portion-row{display:flex;align-items:center;justify-content:space-between;font-weight:700}.portion-stepper{display:flex;align-items:center;gap:12px}.portion-stepper .icon-button{border:1px solid var(--panel-border);border-radius:50%}.section-label{margin:0 0 8px;font-size:.92rem}.items-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.item-tile{display:grid;align-content:center;justify-items:center;gap:6px;min-height:86px;padding:10px 8px;color:var(--text);background:var(--surface-2);border:1px solid var(--panel-border);border-radius:var(--radius);text-align:center;transition:transform .12s ease,border-color .12s ease}.item-tile span{font-size:.8rem;font-weight:700;overflow-wrap:anywhere}.item-tile strong{font-size:.92rem}.item-tile:active{transform:scale(.96)}.item-tile-active{border-color:var(--purple);box-shadow:0 0 0 2px #8b5cf64d}.item-tile-add{border-style:dashed;color:var(--muted, rgba(255, 255, 255, .55))}.button-row{display:flex;gap:10px}.button-row .primary-button,.button-row .secondary-button{flex:1;display:flex;align-items:center;justify-content:center;gap:6px}.icon-button-plain{width:38px;height:38px;flex-shrink:0;display:inline-grid;place-items:center;padding:0;color:var(--text-muted);background:none;border:0;border-radius:12px;transition:color .12s ease,transform .12s ease}.icon-button-plain:active{color:var(--text);transform:scale(.9)}.entry-list{display:grid}.card-list{gap:10px}.card-list .entry-row{padding:14px 16px;background:var(--panel-bg);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.card-list .entry-row:last-child{padding-bottom:14px}.entry-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 2px;border-bottom:1px solid var(--panel-border)}.entry-row:last-child{border-bottom:none;padding-bottom:4px}.entry-row strong{display:block;color:var(--text)}.entry-row span{display:block;margin-top:4px;color:var(--text-muted);font-size:.85rem;overflow-wrap:anywhere}.entry-pick{width:100%;background:none;border-left:0;border-right:0;border-top:0;text-align:left;color:var(--text)}.date-nav{display:flex;align-items:center;justify-content:space-between;gap:8px}.date-display{position:relative;flex:1;text-align:center}.date-display strong{font-size:1.05rem}.date-hidden{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;min-height:0;opacity:0;border:0}.gauge-area{position:relative}.target-edit{position:absolute;top:0;left:0;z-index:1;min-height:30px;padding:0 12px;font-size:.8rem}.bar-track{position:relative}.bar-overflow{position:absolute;inset:0 auto 0 0;background:#ef4444;border-radius:999px;transition:width .4s ease}.over-text{color:#f87171!important}.plate-photo-wrap{position:relative;flex-shrink:0}.photo-remove{position:absolute;top:-6px;right:-6px;width:22px;height:22px;display:grid;place-items:center;color:#fff;background:#ef4444;border:2px solid #16142a;border-radius:50%;padding:0}.photo-spinner{position:static}.chip-toggle{color:var(--text-muted);background:var(--surface-2);border-color:var(--panel-border)}.chip-toggle.chip-active{color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border-color:transparent}.sheet-title-row{display:flex;align-items:center;gap:6px}.sheet-title-row h2{margin:0}.stepper{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.step{display:grid;justify-items:center;gap:6px;padding:10px 4px;border-radius:var(--radius-sm);opacity:.45;transition:opacity .2s ease}.step-active,.step-done{opacity:1}.step-dot{width:26px;height:26px;display:grid;place-items:center;font-size:.8rem;font-weight:800;color:var(--text-muted);background:var(--surface-2);border:1px solid var(--panel-border);border-radius:50%}.step-active .step-dot{color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border-color:transparent}.step-done .step-dot{color:#c4b5fd;border-color:var(--purple)}.step-label{font-size:.72rem;font-weight:700;text-align:center;color:var(--text-muted)}.step-active .step-label{color:var(--text)}.routine-row{flex-direction:column;align-items:stretch;gap:8px}.routine-row .entry-main{width:100%}.routine-row .entry-main span{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.routine-actions{display:flex;align-items:center;justify-content:space-between;gap:4px;width:100%}.routine-icons{display:flex;align-items:center;gap:4px}.start-routine{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;font-size:.8rem}.routine-exercise{display:grid;gap:10px}.routine-exercise-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.routine-exercise-actions{display:flex;gap:0}.routine-exercise-actions .icon-button-plain{width:32px;height:32px}.rest-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:.85rem;font-weight:700}.rest-row input{width:110px;min-height:40px}.set-grid{display:grid;grid-template-columns:40px 1fr 1fr 1fr 32px;align-items:center;gap:8px}.set-grid input{min-height:40px;padding:0 8px;text-align:center}.set-grid-header span{color:var(--text-muted);font-size:.72rem;font-weight:700;text-align:center}.set-type{width:36px;height:36px;display:grid;place-items:center;color:var(--text);background:var(--surface-2);border:1px solid var(--panel-border);border-radius:10px;font-weight:800}.set-type-warmup{color:#fbbf24;border-color:#fbbf2480;background:#fbbf241f}.set-type-failure{color:#f87171;border-color:#f8717180;background:#f871711f}.set-type-dropset{color:#60a5fa;border-color:#60a5fa80;background:#60a5fa1f}.add-set-button{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:9px;font-size:.85rem}.live-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:48;display:flex;flex-direction:column;background:radial-gradient(ellipse 920px 620px at 12% -8%,rgba(139,92,246,.32),transparent 60%),radial-gradient(ellipse 820px 720px at 88% 96%,rgba(99,102,241,.18),transparent 60%),var(--bg)}.live-header{padding:calc(env(safe-area-inset-top,0px) + 12px) 16px 12px;background:#0a0a14d1;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--panel-border)}.live-header-top{display:flex;align-items:center;gap:10px}.live-header-top h2{flex:1;margin:0;font-size:1.05rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-finish{padding:9px 16px;font-size:.85rem}.live-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:10px}.live-stats div{display:grid;gap:2px}.live-stats span{color:var(--text-muted);font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em}.live-stats strong{font-size:1rem;font-variant-numeric:tabular-nums}.duration-cell{display:flex;align-items:center;gap:8px}.duration-pause{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;flex-shrink:0;border-radius:50%;border:1px solid var(--panel-border);background:var(--surface-2);color:var(--text)}.duration-paused{color:#fbbf24;animation:live-pulse 1.2s ease-in-out infinite}.live-body{flex:1;overflow-y:auto;display:grid;gap:14px;align-content:start;padding:16px 16px calc(env(safe-area-inset-bottom,0px) + 110px)}.live-empty{text-align:center;padding:24px 0 8px}.live-exercise{display:grid;gap:10px}.live-exercise-complete{border-color:#34d39966;background:linear-gradient(#34d39914,#34d39908),var(--panel-bg)}.exercise-complete-icon{color:var(--green);margin-left:6px;vertical-align:-2px}.exercise-menu-wrap{position:relative}.menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:transparent;border:none}.context-menu{position:absolute;right:0;top:calc(100% + 6px);z-index:31;min-width:200px;display:grid;padding:6px;background:var(--elev-bg);border:1px solid var(--panel-border);border-radius:var(--radius-sm);box-shadow:var(--panel-shadow)}.context-menu button{display:flex;align-items:center;gap:10px;padding:11px 12px;background:none;border:none;border-radius:8px;color:var(--text);font-size:.92rem;font-weight:600;text-align:left}.context-menu button:active{background:var(--surface-2)}.context-menu .danger{color:var(--red)}.live-exercise-name{display:grid;gap:2px;text-align:left;background:none;border:none;padding:0;color:var(--text)}.live-exercise-name span{display:inline-flex;align-items:center;gap:4px;font-size:.78rem}.live-set-grid{display:grid;grid-template-columns:36px minmax(0,1.15fr) 1fr 1fr 40px;align-items:center;gap:8px;padding:3px 4px;border-radius:var(--radius-sm)}.live-set-grid input{min-height:40px;padding:0 6px;text-align:center}.live-set-grid-header span{color:var(--text-muted);font-size:.72rem;font-weight:700;text-align:center;text-transform:uppercase}.live-set-grid.set-done{background:#34d3991f}.live-set-grid.set-done input{border-color:#34d39959}.live-prev{background:none;border:none;padding:0;color:var(--text-muted);font-size:.8rem;font-variant-numeric:tabular-nums;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.live-prev:disabled{opacity:.45}.live-check{width:40px;height:40px;display:grid;place-items:center;color:var(--text-muted);background:var(--surface-2);border:1px solid var(--panel-border);border-radius:10px}.live-check-done{color:#052e1f;background:var(--green);border-color:var(--green)}.danger-text-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:12px;color:var(--red);background:none;border:none;font-weight:700;font-size:.9rem}.rest-bar{position:relative;margin:0 16px;margin-bottom:calc(env(safe-area-inset-bottom,0px) + 14px);overflow:hidden;background:#141226eb;border:1px solid rgba(139,92,246,.45);border-radius:var(--radius-sm);box-shadow:var(--panel-shadow)}.rest-bar-fill{position:absolute;inset:0 auto 0 0;background:#8b5cf647;transition:width 1s linear}.rest-bar-content{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 14px}.rest-bar-time{display:inline-flex;align-items:center;gap:6px;font-weight:800;font-size:1.05rem;font-variant-numeric:tabular-nums}.rest-bar-actions{display:flex;gap:8px}.rest-bar-actions button{padding:8px 12px;color:var(--text);background:var(--surface-2);border:1px solid var(--panel-border);border-radius:var(--radius-pill);font-size:.8rem;font-weight:700}.rest-bar-actions .rest-skip{border-color:#8b5cf699}.live-resume-bar{position:fixed;left:16px;right:16px;bottom:calc(env(safe-area-inset-bottom,0px) + 86px);z-index:44;display:flex;align-items:center;gap:10px;padding:12px 16px;color:var(--text);background:#141226f2;border:1px solid rgba(139,92,246,.5);border-radius:var(--radius-pill);box-shadow:var(--panel-shadow)}.live-resume-bar strong{flex:1;text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.live-resume-bar span{font-variant-numeric:tabular-nums;color:var(--text-muted)}.live-resume-cta{color:var(--purple)!important;font-weight:800}.live-resume-pulse{width:9px;height:9px;border-radius:50%;background:var(--green);animation:live-pulse 1.6s ease-in-out infinite}.live-resume-pulse.paused{background:#fbbf24;animation:none}@keyframes live-pulse{0%,to{opacity:1}50%{opacity:.3}}.chip-row{display:flex;flex-wrap:wrap;gap:6px}.sheet-section-title{margin:6px 0 0;font-size:.95rem}.exercise-instructions p{margin:0;color:var(--text-muted);line-height:1.5;white-space:pre-wrap}.exercise-instructions h3{margin:0 0 6px;font-size:.9rem}.exercise-history-row{display:grid;gap:6px;background:none}.exercise-history-row .set-row span.warmup-set{color:#fbbf24}.exercise-link{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:0;text-align:left;color:var(--text);background:none;border:none}.sheet-compact{max-height:60vh;height:auto}.set-help,.unit-toggle{display:inline-flex;align-items:center;justify-content:center;gap:3px;padding:0;color:var(--text-muted);background:none;border:none;font-size:.72rem;font-weight:700;text-transform:uppercase}.unit-toggle{color:var(--purple)}.set-legend{display:grid;gap:12px}.set-legend-row{display:flex;align-items:center;gap:12px}.set-legend-row p{margin:0;color:var(--text-muted);line-height:1.45}.set-legend-row .set-type{flex-shrink:0}.finish-photo-row{display:flex;align-items:center}.finish-photo-button{display:inline-flex;align-items:center;gap:8px;cursor:pointer}.finish-photo{position:relative;width:96px;height:96px}.finish-photo img{width:100%;height:100%;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--panel-border)}.detail-photo{width:100%;padding:0;background:none;border:none}.detail-photo img{width:100%;max-height:240px;object-fit:cover;border-radius:var(--radius-sm);border:1px solid var(--panel-border)}.layout-chips{display:flex;flex-wrap:wrap;gap:8px}.layout-chip.active{color:#fff;border-color:var(--purple);background:#8b5cf640}.share-preview canvas{display:block;width:100%;height:auto;border-radius:var(--radius-sm)}.rest-chip{display:inline-flex;align-items:center;gap:6px;justify-self:start;padding:6px 14px;color:var(--text-muted);background:var(--surface-2);border:1px solid var(--panel-border);border-radius:var(--radius-pill);font-size:.8rem;font-weight:700}.rest-edit-row{display:flex;align-items:center;gap:8px}.rest-edit-row input{flex:1;min-height:40px;text-align:center}.rest-edit-row button{padding:9px 14px;color:var(--text);background:var(--surface-2);border:1px solid var(--panel-border);border-radius:var(--radius-pill);font-size:.8rem;font-weight:700}.exercise-head-left{display:flex;align-items:center;gap:2px;min-width:0;flex:1}.exercise-head-left .icon-button-plain{flex-shrink:0;width:30px;height:30px}.exercise-head-title,.live-exercise-name{min-width:0;flex:1}.exercise-head-left strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exams-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;margin-bottom:4px;color:#fde68a;background:#fb923c1f;border:1px solid rgba(251,146,60,.24);border-radius:var(--radius-sm);font-size:.86rem;line-height:1.45}.exams-banner a{flex-shrink:0;margin:0;color:var(--purple);font-weight:800;white-space:nowrap}.exams-stack{display:grid;gap:16px}.collection-selector.segmented{display:inline-flex;width:100%;margin:0;overflow-x:auto;-webkit-overflow-scrolling:touch;grid-template-columns:none}.collection-selector.segmented{width:auto;max-width:100%}.collection-selector.segmented button{flex:0 0 auto;min-height:30px;min-width:0;padding:0 12px;font-weight:800;font-size:.8rem;white-space:nowrap}.collection-meta-block{display:grid;gap:10px}.collection-meta-block .exams-meta{margin:0}.collection-file-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.collection-file-label{color:var(--text-muted);font-size:.78rem;font-weight:800}.collection-file-actions{display:flex;flex-wrap:wrap;gap:8px}.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.summary-card{display:flex;flex-direction:column;gap:4px;padding:12px 10px;background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-sm)}.summary-card strong{font-size:1.4rem}.summary-card span{color:var(--text-muted);font-size:.74rem;font-weight:800}.summary-card.tone-normal strong{color:var(--green)}.summary-card.tone-high strong{color:var(--orange)}.summary-card.tone-low strong{color:var(--blue)}.filter-pills{display:flex;flex-wrap:wrap;gap:8px}.filter-pills button{min-height:30px;padding:0 12px;color:var(--text-muted);background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-pill);font-weight:800;font-size:.8rem}.filter-pills button.active{color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border-color:transparent}.lab-group-list{display:grid;gap:16px}.lab-group{margin-top:0}.lab-group-heading{position:sticky;top:calc(40px + env(safe-area-inset-top));z-index:20;display:flex;align-items:center;gap:8px;width:calc(100% + 32px);box-sizing:border-box;min-height:48px;margin:0 -16px 10px;padding:0 16px;background:var(--veil);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:none;color:var(--text);text-align:left;cursor:pointer;font-size:.95rem}.lab-group-chevron{flex-shrink:0;color:var(--text-muted);transform:rotate(180deg);transition:transform .2s ease}.lab-group-chevron.collapsed{transform:rotate(0)}.lab-group-name{text-transform:uppercase;letter-spacing:.04em;font-size:.82rem;font-weight:800}.lab-group-count{color:var(--text-muted);font-size:.82rem;font-weight:800;font-variant-numeric:tabular-nums}.lab-group-rule{flex:1;height:1px;background:var(--panel-border)}.marker-card-status{position:absolute;top:12px;right:12px}.marker-card{position:relative}.marker-card-value{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap}.marker-card-value strong{font-size:1.3rem}.marker-card-value .marker-unit{color:var(--text-muted);font-size:.86rem;font-weight:700}.marker-card-sub,.marker-card-ref{color:var(--text-muted);font-size:.76rem;overflow-wrap:anywhere}.marker-compare{display:flex;align-items:center;gap:6px;margin-top:4px;color:var(--text-muted);font-size:.78rem;font-weight:700;flex-wrap:wrap}.marker-compare .compare-note{font-weight:600;font-style:italic}.marker-history-link{margin-top:auto;color:var(--purple);font-size:.76rem;font-weight:800}.period-selector{display:flex;gap:8px;margin-top:12px}.period-selector button{min-height:34px;padding:0 14px;color:var(--text-muted);background:var(--surface-1);border:1px solid var(--panel-border);border-radius:var(--radius-pill);font-weight:800}.period-selector button.active{color:#fff;background:linear-gradient(135deg,var(--purple) 0%,var(--indigo) 100%);border-color:transparent}.period-count{margin:8px 0 0;color:var(--text-muted);font-size:.78rem;font-weight:700}.chart-note{margin:10px 0 0;color:var(--text-muted);font-size:.76rem;line-height:1.45}.exams-disclaimer{margin:6px 0 0;color:var(--text-muted);font-size:.76rem;line-height:1.45}.exams-section-label{display:block;margin-bottom:8px;color:var(--text-muted);font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.exams-meta{margin:12px 0 0;color:var(--text-muted);font-size:.82rem}.exams-meta strong{color:var(--text)}.exams-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin:12px 0 4px;font-size:.76rem;color:var(--text-muted)}.exams-legend span{display:inline-flex;align-items:center;gap:6px}.legend-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.legend-dot.dot-normal{background:var(--green)}.legend-dot.dot-high{background:var(--orange)}.legend-dot.dot-low{background:var(--blue)}.legend-hint{color:var(--purple);font-weight:700}.marker-card{border-left-width:3px}.marker-card.status-border-neutral{border-left-color:var(--panel-border)}.marker-card.status-border-normal{border-left-color:var(--green)}.marker-card.status-border-high{border-left-color:var(--orange)}.marker-card.status-border-low{border-left-color:var(--blue)}.marker-card-refline{width:100%;display:flex;align-items:baseline;justify-content:space-between;gap:8px;margin-top:4px;padding-top:8px;border-top:1px solid var(--panel-border)}.marker-card-reflabel{color:var(--text-muted);font-size:.64rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em}.marker-card-refvalue{color:var(--text-muted);font-size:.78rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;text-align:right}.marker-compare .compare-date{font-weight:800}.marker-history-link{display:inline-flex;align-items:center;gap:5px}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:16px;background:var(--overlay);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);animation:overlay-fade .18s ease}.modal-box{width:min(760px,100%);max-height:90vh;display:flex;flex-direction:column;background:var(--elev-bg);border:1px solid var(--panel-border);border-radius:var(--radius);box-shadow:var(--panel-shadow);animation:pop-in .2s ease}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:18px 18px 0}.modal-title h2{margin:0;overflow-wrap:anywhere}.modal-subtitle{display:block;margin-top:4px;color:var(--text-muted);font-size:.82rem;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.modal-body{padding:16px 18px 20px;overflow-y:auto}.modal-body .period-selector{margin-top:0;margin-bottom:12px}.chart-legend{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:10px;color:var(--text-muted);font-size:.76rem}.chart-legend span{display:inline-flex;align-items:center;gap:6px}.legend-swatch{width:14px;height:10px;border-radius:3px;flex-shrink:0}.legend-swatch.legend-ref{background:#34d39947}.legend-swatch.legend-result{height:3px;border-radius:2px;background:var(--purple)}.modal-table{display:flex;flex-direction:column;margin-top:14px}.modal-table-row{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--panel-border);font-size:.85rem}.modal-table-row:last-child{border-bottom:0}.modal-table-date{flex:0 0 auto;min-width:84px;color:var(--text-muted);font-variant-numeric:tabular-nums}.modal-table-value{flex:1;font-weight:700;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.modal-table-status{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;font-size:.74rem;font-weight:800}.modal-table-status:before{content:"";width:9px;height:9px;border-radius:50%;flex-shrink:0}.modal-table-status.status-dot-normal{color:var(--green)}.modal-table-status.status-dot-high{color:var(--orange)}.modal-table-status.status-dot-low{color:var(--blue)}.modal-table-status.status-dot-normal:before{background:var(--green)}.modal-table-status.status-dot-high:before{background:var(--orange)}.modal-table-status.status-dot-low:before{background:var(--blue)}.modal-table-status:not([class*=status-dot-]):before{display:none}.add-record-section{margin-top:14px;display:grid;gap:14px}.add-record-title{margin:0;font-size:1.08rem;color:var(--text)}.add-record-method{margin:0 0 4px;font-size:.95rem}.add-record-section .upload-cta{padding:14px;background:#8b5cf614;border:1px solid rgba(139,92,246,.22);border-radius:var(--radius-sm)}.add-record-section>.secondary-button{width:100%}.add-record-section .manual-entry{padding-top:16px;border-top:1px solid var(--panel-border)}.assessment-flat-list{display:grid}.assessment-row{border-top:1px solid var(--panel-border)}.assessment-row:first-child{border-top:0}.assessment-row-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:14px 0;cursor:pointer;list-style:none}.assessment-row-summary::-webkit-details-marker{display:none}.assessment-row-head{display:flex;flex-direction:column;gap:4px;min-width:0}.assessment-row-head strong{overflow-wrap:anywhere}.assessment-row-head span{color:var(--text-muted);font-size:.82rem}.assessment-row-chevron{flex-shrink:0;color:var(--text-muted);transition:transform .2s ease}.assessment-row[open] .assessment-row-chevron{transform:rotate(180deg)}.assessment-row-body{display:grid;gap:12px;padding:0 0 16px}.protocol-card{padding:0;overflow:hidden}.protocol-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:16px;background:none;border:none;text-align:left;color:var(--text);cursor:pointer;width:100%}.protocol-card-head .protocol-title{display:flex;flex-direction:column;gap:4px;min-width:0}.protocol-card-head .protocol-title strong{font-size:1.05rem;overflow-wrap:anywhere}.protocol-period{display:inline-flex;align-items:center;gap:8px;color:var(--text-muted);font-size:.82rem;font-weight:700}.protocol-badge-active{display:inline-flex;align-items:center;min-height:24px;padding:0 10px;color:#fff;background:linear-gradient(135deg,var(--green) 0%,var(--indigo) 100%);border-radius:var(--radius-pill);font-size:.72rem;font-weight:800}.prescribed-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-pill);font-size:.72rem;font-weight:600;color:var(--violet);background:color-mix(in srgb,var(--violet) 12%,transparent);border:1px solid color-mix(in srgb,var(--violet) 30%,transparent)}.prescribe-block{margin-top:8px}.prescribe-toggle{display:flex;align-items:center;gap:6px;width:100%}.prescribe-toggle .chevron{margin-left:auto;transition:transform var(--dur-fast) var(--ease-out)}.prescribe-toggle .chevron.open{transform:rotate(180deg)}.prescribe-form{margin-top:10px;padding:12px;background:var(--surface-1);border-radius:var(--radius)}.compound-prescription-list{display:flex;flex-direction:column;gap:12px}.compound-prescription-row{display:flex;flex-direction:column;gap:8px;padding:10px;background:var(--surface-2);border-radius:var(--radius)}.gauge-top-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:4px}.protocol-card-notes{color:var(--text-muted);font-size:.82rem;overflow-wrap:anywhere}.protocol-card-head .chevron{flex-shrink:0;color:var(--text-muted);transition:transform .2s ease}.protocol-card-head .chevron.open{transform:rotate(180deg)}.protocol-card-body{padding:0 16px 16px;display:grid;gap:16px}.protocol-section-title{margin:0 0 8px;color:var(--text-muted);font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em}.compound-flat-list{display:grid}.compound-flat{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid var(--panel-border)}.compound-flat:first-child{border-top:none}.compound-flat strong{font-size:.95rem;overflow-wrap:anywhere}.compound-flat span{flex-shrink:0;color:var(--text-muted);font-size:.84rem;text-align:right}.application-timeline{display:grid;gap:0}.application-item{position:relative;display:flex;gap:14px;padding:0 0 16px 4px}.application-item:last-child{padding-bottom:0}.application-dot{position:relative;flex-shrink:0;width:12px;display:flex;justify-content:center}.application-dot:before{content:"";width:10px;height:10px;margin-top:4px;border-radius:50%;background:var(--purple);z-index:1}.application-dot:after{content:"";position:absolute;top:12px;bottom:-2px;width:2px;background:var(--panel-border)}.application-item:last-child .application-dot:after{display:none}.application-body{display:grid;gap:3px;min-width:0}.application-body strong{font-size:.92rem;overflow-wrap:anywhere}.application-body .application-when,.application-body .application-site{color:var(--text-muted);font-size:.8rem}.application-body .application-notes{color:var(--text-muted);font-size:.8rem;overflow-wrap:anywhere}.protocol-card-actions{display:flex;flex-wrap:wrap;gap:8px;border-top:1px solid var(--panel-border);padding-top:14px}.compact-button{min-height:36px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:6px;color:var(--text);background:var(--panel-bg-strong);border:1px solid var(--panel-border);border-radius:var(--radius-pill);font-weight:800;font-size:.84rem;font-family:inherit;text-decoration:none}.compact-button:disabled{opacity:.5}.compact-button.danger{color:var(--danger-text);border-color:var(--danger-border);background:var(--danger-bg)}@media(max-width:520px){.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.home-diet-card,.home-weight-card,.home-routine-card{display:flex;flex-direction:column;gap:12px}.home-card-link{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;font-weight:700;color:var(--text-muted);text-decoration:none;margin-top:4px;transition:color .15s}.home-card-link:hover{color:var(--text)}.home-diet-inner{display:flex;align-items:stretch;gap:20px}.kcal-ring-wrap{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:6px}.kcal-ring-svg{width:116px;height:116px}.kcal-ring-track{stroke:var(--panel-border)}.kcal-ring-fill{stroke:var(--purple);transition:stroke-dasharray .5s ease}.kcal-ring-fill.over{stroke:var(--danger-text)}.kcal-ring-value{fill:var(--text);font-size:18px;font-weight:800;font-family:inherit}.kcal-ring-label{fill:var(--text-muted);font-size:11px;font-family:inherit}.kcal-ring-meta{display:flex;gap:8px;font-size:.78rem;color:var(--text-muted)}.kcal-ring-goal{font-weight:700}.kcal-ring-pct{color:var(--purple);font-weight:800}.home-diet-inner .macro-bars{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:space-between;gap:10px}.macro-bar-stack{display:grid;gap:5px}.macro-bar-name{font-size:.82rem;font-weight:700;color:var(--text-muted)}.macro-bar-line{display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px}.macro-bar-track{height:8px;background:var(--surface-2);border-radius:99px;overflow:hidden}.macro-bar-fill{height:100%;border-radius:99px;transition:width .4s ease;min-width:2px}.macro-bar-value{font-size:.78rem;font-weight:700;color:var(--text);white-space:nowrap}.macro-bar-tgt{color:var(--text-muted);font-weight:500}.home-weight-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.home-label{display:block;font-size:.78rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em;margin-bottom:4px}.home-big-value{display:block;font-size:1.5rem;font-weight:800;line-height:1.1;margin-bottom:4px}.home-delta{display:block;font-size:.82rem;color:var(--text-muted)}.home-delta.positive{color:#f87171}.home-delta.negative{color:#34d399}.home-weight-form{padding-top:4px}.home-weight-periods{flex-wrap:wrap;gap:6px;margin-top:8px}.home-weight-periods button{min-height:30px;padding:0 12px;font-size:.8rem}.home-weight-chart{height:200px;margin-top:8px}.home-weight-empty{margin-top:4px;font-size:.85rem}.home-routine-inner{display:flex;align-items:center;justify-content:space-between;gap:12px}.home-routine-name{display:block;font-size:1rem;font-weight:700;margin-bottom:2px}.home-routine-meta{display:block;font-size:.82rem;color:var(--text-muted)}.badge-count{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 5px;background:var(--danger-bg);color:var(--danger-text);border-radius:99px;font-size:.72rem;font-weight:800;vertical-align:middle;margin-left:4px}.team-list{display:grid;gap:8px}.team-card{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--panel-border)}.team-card:first-child{border-top:none}.team-card-name{font-weight:700;flex:1}.team-card-roles{display:flex;flex-wrap:wrap;gap:4px}.role-chip{display:inline-flex;align-items:center;padding:2px 8px;background:var(--surface-2);border:1px solid var(--panel-border);border-radius:var(--radius-pill);font-size:.72rem;font-weight:700;color:var(--purple)}.student-card.needs-attention{border-left:3px solid var(--danger-text)}.student-attention-chips{display:flex;flex-wrap:wrap;gap:6px;margin:4px 0 2px}.attention-ok-panel{display:flex;align-items:center;gap:10px;padding:12px 16px}.attention-ok-text{font-size:.88rem;color:#34d399;font-weight:700}
