/* HealthMedHub - bundle: self-hosted fonts + style + tools. Built 2026-10-06 */
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url(../assets/fonts/inter-var.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Plus Jakarta Sans';font-style:normal;font-weight:200 800;font-display:swap;src:url(../assets/fonts/plus-jakarta-sans-var.woff2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--color-primary:#0F172A;--color-primary-light:#1E293B;--color-accent:#0EA5E9;--color-accent-hover:#0284C7;--color-background:#F8FAFC;--color-surface:#FFFFFF;--color-border:#E2E8F0;--color-text:#0F172A;--color-text-muted:#64748B;--color-success:#10B981;--color-danger:#EF4444;--font-heading:'Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,sans-serif;--font-body:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;--space-xs:0.5rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2.5rem;--space-xl:4rem;--space-2xl:6rem;--container-max:1200px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--shadow-sm:0 1px 2px rgba(15,23,42,0.05);--shadow-md:0 4px 6px -1px rgba(15,23,42,0.08);--shadow-lg:0 10px 15px -3px rgba(15,23,42,0.1)}*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:var(--font-body);font-size:16px;line-height:1.6;color:var(--color-text);background-color:var(--color-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:700;line-height:1.2;color:var(--color-primary);margin-bottom:var(--space-sm)}h1{font-size:2.5rem}h2{font-size:2rem}h3{font-size:1.5rem}p{margin-bottom:var(--space-sm)}a{color:var(--color-accent);text-decoration:none;transition:color 0.2s ease}a:hover{color:var(--color-accent-hover)}img{max-width:100%;height:auto;display:block}.container{max-width:var(--container-max);margin:0 auto;padding:0 var(--space-md)}.section{padding:var(--space-xl) 0}.section-title{text-align:center;margin-bottom:var(--space-lg)}.section-title h2{font-size:2rem;margin-bottom:var(--space-xs)}.section-title p{color:var(--color-text-muted);font-size:1.125rem;max-width:600px;margin:0 auto}.site-header{position:sticky;top:0;z-index:1000;background-color:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm)}.header-inner{display:flex;align-items:center;justify-content:space-between;height:70px}.site-logo{display:flex;align-items:center;gap:0.5rem;font-family:var(--font-heading);font-weight:800;font-size:1.25rem;color:var(--color-primary);text-decoration:none}.site-logo:hover{color:var(--color-primary)}.site-logo .logo-mark{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;background-color:var(--color-accent);color:white;border-radius:var(--radius-sm);font-size:1.1rem;font-weight:800}.main-nav ul{display:flex;align-items:center;gap:var(--space-md);list-style:none}.main-nav a{color:var(--color-text);font-weight:500;font-size:0.95rem;padding:0.5rem 0;position:relative}.main-nav a:hover{color:var(--color-accent)}.nav-toggle{display:none;background:none;border:none;cursor:pointer;padding:0.5rem}.nav-toggle span{display:block;width:24px;height:2px;background-color:var(--color-primary);margin:5px 0;transition:0.3s}.btn{display:inline-flex;align-items:center;justify-content:center;gap:0.5rem;padding:0.75rem 1.5rem;font-family:var(--font-heading);font-weight:600;font-size:1rem;border-radius:var(--radius-sm);border:none;cursor:pointer;transition:all 0.2s ease;text-decoration:none}.btn-primary{background-color:var(--color-accent);color:white}.btn-primary:hover{background-color:var(--color-accent-hover);color:white;transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background-color:transparent;color:var(--color-primary);border:1.5px solid var(--color-border)}.btn-secondary:hover{border-color:var(--color-accent);color:var(--color-accent)}.hero{padding:var(--space-2xl) 0 var(--space-xl);background:linear-gradient(180deg,#FFFFFF 0%,#F8FAFC 100%);text-align:center}.hero h1{font-size:3rem;font-weight:800;letter-spacing:-0.02em;margin-bottom:var(--space-md);max-width:800px;margin-left:auto;margin-right:auto}.hero .hero-subtitle{font-size:1.25rem;color:var(--color-text-muted);max-width:600px;margin:0 auto var(--space-lg)}.hero-actions{display:flex;gap:var(--space-sm);justify-content:center;flex-wrap:wrap}.tools-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--space-md)}.tool-card{display:block;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);text-decoration:none;color:var(--color-text);transition:all 0.2s ease}.tool-card:hover{border-color:var(--color-accent);transform:translateY(-3px);box-shadow:var(--shadow-lg);color:var(--color-text)}.tool-card .tool-icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;background-color:#E0F2FE;color:var(--color-accent);border-radius:var(--radius-sm);font-size:1.5rem;margin-bottom:var(--space-sm)}.tool-card h3{font-size:1.125rem;margin-bottom:0.25rem}.tool-card p{color:var(--color-text-muted);font-size:0.9rem;margin-bottom:0}.categories-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--space-md)}.category-card{background-color:var(--color-surface);border-radius:var(--radius-lg);padding:var(--space-lg);text-decoration:none;color:var(--color-text);border:1px solid var(--color-border);transition:all 0.2s ease}.category-card:hover{border-color:var(--color-accent);box-shadow:var(--shadow-lg);color:var(--color-text)}.category-card h3{font-size:1.375rem;margin-bottom:var(--space-xs)}.category-card p{color:var(--color-text-muted);margin-bottom:0}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-md)}.feature{text-align:center;padding:var(--space-md)}.feature-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;background-color:#E0F2FE;color:var(--color-accent);border-radius:50%;font-size:1.75rem;margin-bottom:var(--space-sm)}.feature h3{font-size:1.125rem;margin-bottom:0.25rem}.feature p{color:var(--color-text-muted);font-size:0.95rem}.site-footer{background-color:var(--color-primary);color:#CBD5E1;padding:var(--space-xl) 0 var(--space-md);margin-top:var(--space-xl)}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:var(--space-lg);margin-bottom:var(--space-lg)}.footer-brand .site-logo{color:white;margin-bottom:var(--space-sm)}.footer-brand p{color:#94A3B8;font-size:0.9rem;max-width:300px}.footer-col h4{color:white;font-size:0.95rem;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:var(--space-sm)}.footer-col ul{list-style:none}.footer-col a{color:#94A3B8;font-size:0.9rem;display:block;padding:0.3rem 0}.footer-col a:hover{color:white}.footer-bottom{border-top:1px solid #1E293B;padding-top:var(--space-md);text-align:center;font-size:0.85rem;color:#64748B}.footer-disclaimer{font-size:0.8rem;color:#64748B;max-width:800px;margin:var(--space-sm) auto 0;line-height:1.5}@media (max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}}@media (max-width:768px){h1{font-size:2rem}h2{font-size:1.625rem}.hero h1{font-size:2.25rem}.hero .hero-subtitle{font-size:1.05rem}.nav-toggle{display:block}.main-nav{display:none;position:absolute;top:70px;left:0;right:0;background-color:var(--color-surface);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-md);padding:var(--space-sm) var(--space-md)}.main-nav.is-open{display:block}.main-nav ul{flex-direction:column;align-items:flex-start;gap:0}.main-nav li{width:100%;border-bottom:1px solid var(--color-border)}.main-nav a{display:block;padding:var(--space-sm) 0}}@media (max-width:560px){.footer-grid{grid-template-columns:1fr}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}.section{padding:var(--space-lg) 0}}.breadcrumbs{padding:var(--space-sm) 0;font-size:0.875rem;color:var(--color-text-muted)}.breadcrumbs a{color:var(--color-text-muted)}.breadcrumbs a:hover{color:var(--color-accent)}.breadcrumbs .sep{margin:0 0.5rem;opacity:0.5}.tool-page{padding:var(--space-lg) 0 var(--space-xl)}.tool-header{text-align:center;max-width:700px;margin:0 auto var(--space-lg)}.tool-header h1{font-size:2.25rem;margin-bottom:var(--space-sm)}.tool-header p{color:var(--color-text-muted);font-size:1.05rem}.calculator{background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--space-lg);max-width:640px;margin:0 auto var(--space-lg);box-shadow:var(--shadow-md)}.calculator-mode{display:flex;background-color:var(--color-background);border-radius:var(--radius-sm);padding:4px;margin-bottom:var(--space-md)}.mode-btn{flex:1;padding:0.65rem;background:none;border:none;font-family:var(--font-heading);font-weight:600;font-size:0.95rem;color:var(--color-text-muted);cursor:pointer;border-radius:6px;transition:all 0.2s}.mode-btn.active{background-color:var(--color-surface);color:var(--color-primary);box-shadow:var(--shadow-sm)}.calc-field{margin-bottom:var(--space-md)}.calc-field label{display:block;font-weight:600;font-size:0.95rem;margin-bottom:0.5rem;color:var(--color-primary)}.calc-field input[type="time"],.calc-field input[type="number"],.calc-field select{width:100%;padding:0.85rem 1rem;font-size:1.05rem;font-family:var(--font-body);color:var(--color-text);background-color:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);transition:border-color 0.2s,box-shadow 0.2s}.calc-field input:focus,.calc-field select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(14,165,233,0.15)}.calc-btn{width:100%;padding:1rem;font-size:1.05rem}.result-box{display:none;margin-top:var(--space-md);padding:var(--space-md);background:linear-gradient(135deg,#EFF6FF 0%,#E0F2FE 100%);border-radius:var(--radius-md);border:1px solid #BAE6FD}.result-box.visible{display:block;animation:fadeIn 0.3s ease}@keyframes fadeIn{from{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.result-title{font-size:0.9rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;color:var(--color-accent-hover);margin-bottom:var(--space-sm)}.result-list{list-style:none;display:flex;flex-direction:column;gap:0.5rem}.result-item{display:flex;align-items:center;justify-content:space-between;padding:0.85rem 1rem;background-color:var(--color-surface);border-radius:var(--radius-sm);border-left:4px solid var(--color-border)}.result-item.recommended{border-left-color:var(--color-success)}.result-item .time{font-family:var(--font-heading);font-size:1.25rem;font-weight:700;color:var(--color-primary)}.result-item .meta{font-size:0.85rem;color:var(--color-text-muted);text-align:right}.result-item .meta strong{display:block;color:var(--color-primary);font-size:0.95rem}.error-message{color:var(--color-danger);font-size:0.9rem;margin-top:0.5rem;display:none}.error-message.visible{display:block}.tool-content{max-width:760px;margin:0 auto}.tool-content h2{font-size:1.5rem;margin-top:var(--space-lg);margin-bottom:var(--space-sm)}.tool-content p,.tool-content ul,.tool-content ol{color:#334155;margin-bottom:var(--space-sm)}.tool-content ul,.tool-content ol{padding-left:1.5rem}.tool-content li{margin-bottom:0.35rem}.related-tools{max-width:900px;margin:var(--space-xl) auto 0}.related-tools h2{text-align:center;margin-bottom:var(--space-lg)}.disclaimer-box{margin-top:var(--space-lg);padding:var(--space-md);background-color:#FEF3C7;border-left:4px solid #F59E0B;border-radius:var(--radius-sm);font-size:0.9rem;color:#78350F}.disclaimer-box strong{display:block;margin-bottom:0.25rem;color:#78350F}@media (max-width:600px){.calculator{padding:var(--space-md)}.tool-header h1{font-size:1.75rem}.result-item{flex-direction:column;align-items:flex-start;gap:0.35rem}.result-item .meta{text-align:left}}.hub-hero{padding:var(--space-lg) 0 var(--space-md);text-align:center}.hub-hero h1{font-size:2.5rem;margin-bottom:var(--space-sm)}.hub-hero p{color:var(--color-text-muted);font-size:1.1rem;max-width:640px;margin:0 auto}.hub-section{padding:var(--space-lg) 0}.hub-section h2{font-size:1.75rem;margin-bottom:var(--space-md)}.hub-section-intro{color:var(--color-text-muted);max-width:720px;margin-bottom:var(--space-lg)}.hub-faq{max-width:760px;margin:0 auto}.faq-item{border-bottom:1px solid var(--color-border);padding:var(--space-md) 0}.faq-item h3{font-size:1.05rem;margin-bottom:0.5rem;color:var(--color-primary)}.faq-item p{color:#475569;margin-bottom:0}@media (max-width:600px){.hub-hero h1{font-size:1.85rem}.hub-section h2{font-size:1.4rem}}.unit-toggle{display:flex;gap:0.5rem;margin-bottom:var(--space-md);background-color:var(--color-background);border-radius:var(--radius-sm);padding:4px}.unit-btn{flex:1;padding:0.6rem;background:none;border:none;font-family:var(--font-heading);font-weight:600;font-size:0.9rem;color:var(--color-text-muted);cursor:pointer;border-radius:6px;transition:all 0.2s}.unit-btn.active{background-color:var(--color-surface);color:var(--color-primary);box-shadow:var(--shadow-sm)}.calc-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm)}@media (max-width:480px){.calc-row{grid-template-columns:1fr}}.bmi-result-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm);margin-bottom:var(--space-md)}.bmi-result-box{padding:var(--space-md);background-color:var(--color-surface);border-radius:var(--radius-sm);text-align:center;border:2px solid var(--color-border)}.bmi-result-box .label{font-size:0.75rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--color-text-muted);margin-bottom:0.25rem}.bmi-result-box .value{font-family:var(--font-heading);font-size:2rem;font-weight:700;color:var(--color-primary);line-height:1}.bmi-result-box .category{font-size:0.9rem;margin-top:0.35rem;font-weight:600}.cat-underweight{color:#3B82F6}.cat-normal{color:#10B981}.cat-overweight{color:#F59E0B}.cat-obese{color:#EF4444}.bmi-scale{margin:var(--space-md) 0}.bmi-scale-bar{display:flex;height:12px;border-radius:6px;overflow:hidden;margin-bottom:0.5rem}.bmi-scale-bar span{flex:1}.scale-underweight{background-color:#3B82F6}.scale-normal{background-color:#10B981}.scale-overweight{background-color:#F59E0B}.scale-obese{background-color:#EF4444}.bmi-scale-labels{display:flex;justify-content:space-between;font-size:0.75rem;color:var(--color-text-muted)}.range-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-sm);margin:var(--space-md) 0}.range-card{padding:var(--space-sm);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm);text-align:center}.range-card .label{font-size:0.8rem;color:var(--color-text-muted);margin-bottom:0.35rem}.range-card .value{font-family:var(--font-heading);font-size:1.15rem;font-weight:700;color:var(--color-primary)}.legal-page{padding:var(--space-lg) 0 var(--space-xl)}.legal-container{max-width:780px;margin:0 auto}.legal-container h1{font-size:2.25rem;margin-bottom:var(--space-sm)}.legal-container .legal-meta{color:var(--color-text-muted);font-size:0.9rem;padding-bottom:var(--space-md);border-bottom:1px solid var(--color-border);margin-bottom:var(--space-lg)}.legal-container h2{font-size:1.35rem;margin-top:var(--space-lg);margin-bottom:var(--space-sm)}.legal-container h3{font-size:1.1rem;margin-top:var(--space-md);margin-bottom:0.5rem}.legal-container p,.legal-container ul,.legal-container ol{color:#334155;margin-bottom:var(--space-sm)}.legal-container ul,.legal-container ol{padding-left:1.5rem}.legal-container li{margin-bottom:0.5rem}.legal-container a{color:var(--color-accent)}.legal-container strong{color:var(--color-primary)}.contact-form .calc-field{margin-bottom:var(--space-md)}.contact-form input[type="text"],.contact-form input[type="email"],.contact-form textarea{width:100%;padding:0.85rem 1rem;font-size:1rem;font-family:var(--font-body);color:var(--color-text);background-color:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);transition:border-color 0.2s,box-shadow 0.2s}.contact-form textarea{resize:vertical;min-height:150px}.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(14,165,233,0.15)}.contact-note{background-color:#FEF3C7;border-left:4px solid #F59E0B;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-sm);color:#78350F;font-size:0.9rem;margin-bottom:var(--space-lg)}.tool-tabs{display:flex;gap:0;background-color:var(--color-background);border-radius:var(--radius-sm);padding:4px;margin-bottom:var(--space-md);flex-wrap:wrap}.tool-tab{flex:1;min-width:90px;padding:0.6rem 0.5rem;background:none;border:none;font-family:var(--font-heading);font-weight:600;font-size:0.85rem;color:var(--color-text-muted);cursor:pointer;border-radius:6px;transition:all 0.2s}.tool-tab.active{background-color:var(--color-surface);color:var(--color-primary);box-shadow:var(--shadow-sm)}.calorie-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm);margin-bottom:var(--space-md)}@media (max-width:560px){.calorie-hero-grid{grid-template-columns:1fr}}.calorie-hero-box{padding:var(--space-md);border-radius:var(--radius-md);text-align:center;border:2px solid var(--color-border);background-color:var(--color-surface)}.calorie-hero-box.primary{background:linear-gradient(135deg,#EFF6FF 0%,#E0F2FE 100%);border-color:#BAE6FD}.calorie-hero-box .label{font-size:0.75rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--color-text-muted);margin-bottom:0.5rem;font-weight:600}.calorie-hero-box .value{font-family:var(--font-heading);font-size:2.25rem;font-weight:800;color:var(--color-primary);line-height:1;margin-bottom:0.35rem}.calorie-hero-box .sub{font-size:0.85rem;color:var(--color-text-muted)}.macro-breakdown{margin-top:var(--space-md);padding-top:var(--space-md);border-top:1px solid var(--color-border)}.macro-breakdown h3{font-size:0.95rem;margin-bottom:var(--space-sm);text-transform:uppercase;letter-spacing:0.05em;color:var(--color-text-muted)}.macro-bar{display:flex;height:40px;border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--space-sm)}.macro-bar-segment{display:flex;align-items:center;justify-content:center;color:white;font-weight:600;font-size:0.85rem;font-family:var(--font-heading)}.macro-protein{background-color:#0EA5E9}.macro-carbs{background-color:#F59E0B}.macro-fat{background-color:#EF4444}.macro-legend{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-sm);text-align:center}.macro-legend-item .label{font-size:0.8rem;color:var(--color-text-muted);margin-bottom:0.25rem}.macro-legend-item .value{font-family:var(--font-heading);font-size:1.1rem;font-weight:700;color:var(--color-primary)}.goal-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:0.5rem;margin-top:0.5rem}.goal-btn{padding:0.7rem 0.5rem;background-color:var(--color-background);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-heading);font-weight:600;font-size:0.85rem;color:var(--color-text);cursor:pointer;transition:all 0.2s;text-align:center}.goal-btn.active{background-color:var(--color-accent);color:white;border-color:var(--color-accent)}.goal-btn:hover:not(.active){border-color:var(--color-accent)}@media (max-width:480px){.goal-buttons{grid-template-columns:1fr}.calorie-hero-box .value{font-size:1.75rem}}.hr-zones{display:flex;flex-direction:column;gap:0.5rem;margin-top:var(--space-md)}.hr-zone{display:flex;align-items:center;justify-content:space-between;padding:0.85rem 1rem;border-radius:var(--radius-sm);color:white;font-family:var(--font-heading)}.hr-zone .zone-name{font-weight:700;font-size:0.95rem}.hr-zone .zone-range{font-weight:600;font-size:0.85rem;opacity:0.9}.hr-zone .zone-bpm{font-weight:700;font-size:1.1rem}.zone-1{background-color:#93C5FD}.zone-2{background-color:#34D399}.zone-3{background-color:#FBBF24}.zone-4{background-color:#F97316}.zone-5{background-color:#EF4444}.hr-hero{text-align:center;padding:var(--space-md);background:linear-gradient(135deg,#EFF6FF 0%,#E0F2FE 100%);border-radius:var(--radius-md);margin-bottom:var(--space-md);border:2px solid #BAE6FD}.hr-hero .label{font-size:0.75rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--color-text-muted);font-weight:600;margin-bottom:0.25rem}.hr-hero .value{font-family:var(--font-heading);font-size:2.5rem;font-weight:800;color:var(--color-primary);line-height:1}.hr-hero .sub{font-size:0.85rem;color:var(--color-text-muted);margin-top:0.25rem}.pace-modes{display:flex;gap:0;background-color:var(--color-background);border-radius:var(--radius-sm);padding:4px;margin-bottom:var(--space-md)}.pace-mode{flex:1;padding:0.6rem;background:none;border:none;font-family:var(--font-heading);font-weight:600;font-size:0.85rem;color:var(--color-text-muted);cursor:pointer;border-radius:6px;transition:all 0.2s}.pace-mode.active{background-color:var(--color-surface);color:var(--color-primary);box-shadow:var(--shadow-sm)}.pace-time-inputs{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0.5rem}.pace-time-inputs input{text-align:center}.water-hero{text-align:center;padding:var(--space-lg) var(--space-md);background:linear-gradient(135deg,#EFF6FF 0%,#DBEAFE 100%);border-radius:var(--radius-md);margin-bottom:var(--space-md);border:2px solid #BFDBFE}.water-hero .label{font-size:0.75rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--color-text-muted);font-weight:600;margin-bottom:0.35rem}.water-hero .value{font-family:var(--font-heading);font-size:3rem;font-weight:800;color:var(--color-primary);line-height:1}.water-hero .unit{font-size:1.15rem;font-weight:600;color:var(--color-text-muted);margin-left:0.35rem}.water-hero .sub{font-size:0.85rem;color:var(--color-text-muted);margin-top:0.5rem}.water-breakdown{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:var(--space-sm);margin-top:var(--space-md)}.water-breakdown .item{text-align:center;padding:var(--space-sm);background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-sm)}.water-breakdown .item .label{font-size:0.75rem;color:var(--color-text-muted);margin-bottom:0.25rem}.water-breakdown .item .value{font-family:var(--font-heading);font-size:1.15rem;font-weight:700;color:var(--color-primary)}.macro-hero{text-align:center;padding:var(--space-md);background-color:var(--color-surface);border:2px solid var(--color-border);border-radius:var(--radius-md);margin-bottom:var(--space-md)}.macro-hero .label{font-size:0.75rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--color-text-muted);font-weight:600;margin-bottom:0.35rem}.macro-hero .value{font-family:var(--font-heading);font-size:2.5rem;font-weight:800;color:var(--color-primary);line-height:1}.macro-hero .sub{font-size:0.85rem;color:var(--color-text-muted);margin-top:0.35rem}.diet-presets{display:grid;grid-template-columns:repeat(2,1fr);gap:0.5rem;margin-top:0.5rem}.diet-preset{padding:0.75rem 0.5rem;background-color:var(--color-background);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);font-family:var(--font-heading);font-weight:600;font-size:0.85rem;color:var(--color-text);cursor:pointer;transition:all 0.2s;text-align:center;line-height:1.3}.diet-preset.active{background-color:var(--color-accent);color:white;border-color:var(--color-accent)}.diet-preset:hover:not(.active){border-color:var(--color-accent)}.diet-preset small{display:block;font-size:0.7rem;font-weight:400;opacity:0.75;margin-top:2px}@media (max-width:480px){.diet-presets{grid-template-columns:1fr}}.macro-legend .value.macro-protein{color:#0EA5E9}.macro-legend .value.macro-carbs{color:#F59E0B}.macro-legend .value.macro-fat{color:#EF4444}.food-hero{padding:var(--space-lg) 0 var(--space-md);text-align:center}.food-hero h1{font-size:2.25rem;margin-bottom:var(--space-sm)}.food-hero p{color:var(--color-text-muted);font-size:1.05rem;max-width:640px;margin:0 auto}.food-image-wrap{max-width:640px;margin:0 auto var(--space-lg);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);background-color:#F1F5F9;aspect-ratio:16 / 9;display:flex;align-items:center;justify-content:center}.food-image-wrap .placeholder-img{font-size:5rem;opacity:0.6}.nutrition-facts{max-width:640px;margin:0 auto var(--space-lg);background-color:var(--color-surface);border:2px solid var(--color-primary);border-radius:var(--radius-md);padding:var(--space-md)}.nutrition-facts .nf-header{font-family:var(--font-heading);font-size:1.5rem;font-weight:800;color:var(--color-primary);padding-bottom:0.5rem;border-bottom:8px solid var(--color-primary);margin-bottom:0.5rem}.nutrition-facts .nf-serving{font-size:0.9rem;color:var(--color-text-muted);padding-bottom:0.5rem;border-bottom:4px solid var(--color-primary);margin-bottom:0.5rem}.nutrition-facts .nf-row{display:flex;justify-content:space-between;padding:0.4rem 0;border-bottom:1px solid var(--color-border);font-size:0.95rem}.nutrition-facts .nf-row.bold{font-weight:700;color:var(--color-primary)}.nutrition-facts .nf-row.indent{padding-left:1.25rem;font-size:0.9rem;color:var(--color-text-muted)}.nutrition-facts .nf-row:last-child{border-bottom:none}.food-content{max-width:760px;margin:0 auto}.food-content h2{font-size:1.5rem;margin-top:var(--space-lg);margin-bottom:var(--space-sm)}.food-content h3{font-size:1.15rem;margin-top:var(--space-md);margin-bottom:0.5rem}.food-content p,.food-content ul{color:#334155;margin-bottom:var(--space-sm)}.food-content ul{padding-left:1.5rem}.food-content li{margin-bottom:0.4rem}.food-cat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:var(--space-md)}.food-cat-card{display:block;background-color:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-md);text-decoration:none;color:var(--color-text);text-align:center;transition:all 0.2s}.food-cat-card:hover{border-color:var(--color-accent);transform:translateY(-3px);box-shadow:var(--shadow-lg);color:var(--color-text)}.food-cat-card .cat-icon{display:inline-block;font-size:2.5rem;margin-bottom:0.5rem}.food-cat-card h3{font-size:1.15rem;margin-bottom:0.25rem}.food-cat-card p{color:var(--color-text-muted);font-size:0.85rem;margin:0}.bodyfat-result{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-sm);margin-bottom:var(--space-md)}.bodyfat-box{padding:var(--space-md);border-radius:var(--radius-md);text-align:center;border:2px solid var(--color-border);background-color:var(--color-surface)}.bodyfat-box.primary{background:linear-gradient(135deg,#FEF3C7 0%,#FDE68A 100%);border-color:#FCD34D}.bodyfat-box .label{font-size:0.75rem;text-transform:uppercase;letter-spacing:0.05em;color:var(--color-text-muted);font-weight:600;margin-bottom:0.35rem}.bodyfat-box .value{font-family:var(--font-heading);font-size:2.25rem;font-weight:800;color:var(--color-primary);line-height:1}.bodyfat-box .category{font-size:0.9rem;margin-top:0.5rem;font-weight:600}.cat-essential{color:#3B82F6}.cat-athletic{color:#10B981}.cat-fitness{color:#84CC16}.cat-average{color:#F59E0B}.cat-obese{color:#EF4444}.pregnancy-hero{text-align:center;padding:var(--space-lg) var(--space-md);background:linear-gradient(135deg,#FCE7F3 0%,#FBCFE8 100%);border-radius:var(--radius-md);margin-bottom:var(--space-md);border:2px solid #F9A8D4}.pregnancy-hero .label{font-size:0.75rem;text-transform:uppercase;letter-spacing:0.05em;color:#9D174D;font-weight:600;margin-bottom:0.35rem}.pregnancy-hero .value{font-family:var(--font-heading);font-size:2.75rem;font-weight:800;color:#831843;line-height:1}.pregnancy-hero .sub{font-size:0.9rem;color:#9D174D;margin-top:0.5rem}.trimester-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-sm);margin-top:var(--space-md)}.trimester-card{padding:var(--space-sm);border-radius:var(--radius-sm);text-align:center;background-color:var(--color-surface);border:1px solid var(--color-border)}.trimester-card .label{font-size:0.8rem;font-weight:600;color:var(--color-text-muted);margin-bottom:0.35rem}.trimester-card .value{font-family:var(--font-heading);font-size:0.95rem;font-weight:700;color:var(--color-primary)}.trimester-card.active{background-color:#FCE7F3;border-color:#F9A8D4}@media (max-width:560px){.trimester-grid{grid-template-columns:1fr}.bodyfat-result{grid-template-columns:1fr}}.calc-field input[type="time"]{display:block;-webkit-appearance:none;appearance:none;height:3.25rem;min-height:3.25rem;min-width:0;max-width:100%;line-height:1.5;text-align:left;opacity:1;color:var(--color-text);-webkit-text-fill-color:var(--color-text)}.calc-field input[type="time"]::-webkit-date-and-time-value{text-align:left;min-height:1.5em}.calc-field input[type="time"]::-webkit-datetime-edit,.calc-field input[type="time"]::-webkit-datetime-edit-fields-wrapper,.calc-field input[type="time"]::-webkit-datetime-edit-hour-field,.calc-field input[type="time"]::-webkit-datetime-edit-minute-field,.calc-field input[type="time"]::-webkit-datetime-edit-ampm-field{color:var(--color-text);padding:0 2px}.time-picker-trigger{display:flex;align-items:center;gap:0.75rem;width:100%;padding:0.85rem 1rem;font-family:var(--font-heading);font-size:1.15rem;font-weight:600;color:var(--color-text);background-color:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;transition:border-color 0.2s,box-shadow 0.2s;text-align:left}.time-picker-trigger:hover{border-color:var(--color-accent)}.time-picker-trigger:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px rgba(14,165,233,0.15)}.time-picker-trigger svg{width:20px;height:20px;flex-shrink:0;color:var(--color-accent)}.time-picker-trigger .tp-value{flex:1}.time-picker-trigger .tp-chevron{width:16px;height:16px;color:var(--color-text-muted)}.tp-overlay{position:fixed;inset:0;z-index:9999;background-color:rgba(15,23,42,0.5);display:flex;align-items:center;justify-content:center;padding:1rem;opacity:0;transition:opacity 0.2s ease}.tp-overlay.tp-visible{opacity:1}.tp-modal{background-color:var(--color-surface);border-radius:var(--radius-lg);box-shadow:0 20px 40px -12px rgba(15,23,42,0.35);width:100%;max-width:380px;max-height:calc(100vh - 2rem);overflow-y:auto;transform:translateY(20px) scale(0.98);transition:transform 0.2s ease}.tp-overlay.tp-visible .tp-modal{transform:translateY(0) scale(1)}.tp-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-md) var(--space-md) var(--space-sm)}.tp-title{font-family:var(--font-heading);font-size:1.15rem;font-weight:700;color:var(--color-primary);margin:0}.tp-close{background:none;border:none;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;color:var(--color-text-muted);transition:background-color 0.15s}.tp-close:hover{background-color:var(--color-background);color:var(--color-text)}.tp-preview{text-align:center;padding:var(--space-sm) var(--space-md) var(--space-md);background:linear-gradient(180deg,#EFF6FF 0%,#E0F2FE 100%);margin:0 var(--space-md) var(--space-md);border-radius:var(--radius-md);border:1px solid #BAE6FD}.tp-preview-value{font-family:var(--font-heading);font-size:2.5rem;font-weight:800;color:var(--color-primary);line-height:1;letter-spacing:-0.02em}.tp-preview-value .tp-preview-ampm{font-size:1rem;margin-left:0.35rem;color:var(--color-text-muted)}.tp-section{padding:0 var(--space-md) var(--space-md)}.tp-section-label{display:block;font-family:var(--font-heading);font-size:0.75rem;font-weight:700;text-transform:uppercase;letter-spacing:0.08em;color:var(--color-text-muted);margin-bottom:0.5rem}.tp-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0.4rem}.tp-option{padding:0.6rem 0.25rem;background-color:var(--color-background);border:1.5px solid transparent;border-radius:var(--radius-sm);font-family:var(--font-heading);font-size:0.95rem;font-weight:600;color:var(--color-text);cursor:pointer;transition:all 0.15s}.tp-option:hover{background-color:#E0F2FE}.tp-option.tp-active{background-color:var(--color-accent);color:white;border-color:var(--color-accent)}.tp-ampm{display:grid;grid-template-columns:1fr 1fr;gap:0.5rem;padding:0 var(--space-md) var(--space-md)}.tp-ampm .tp-option{padding:0.75rem;font-size:1rem}.tp-footer{display:grid;grid-template-columns:1fr 1fr;gap:0.5rem;padding:var(--space-sm) var(--space-md) var(--space-md);border-top:1px solid var(--color-border)}.tp-btn{padding:0.85rem;font-family:var(--font-heading);font-size:1rem;font-weight:700;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:background-color 0.15s,color 0.15s}.tp-btn-cancel{background-color:var(--color-background);color:var(--color-text)}.tp-btn-cancel:hover{background-color:var(--color-border)}.tp-btn-set{background-color:var(--color-accent);color:white}.tp-btn-set:hover{background-color:var(--color-accent-hover)}@media (max-width:420px){.tp-preview-value{font-size:2rem}.tp-modal{max-width:100%}}