:root{--color-primary: #2D5A3D;--color-primary-dark: #1F3F2B;--color-primary-light: #4A7D5C;--color-secondary: #8B5A2B;--color-secondary-dark: #6B4423;--color-secondary-light: #A67B4B;--color-accent: #D4A853;--color-accent-light: #E8C88A;--color-accent-dark: #B8923F;--color-cream: #FAF8F5;--color-cream-dark: #F0EDE8;--color-charcoal: #2C2C2C;--color-charcoal-light: #4A4A4A;--color-text: #3D3D3D;--color-text-light: #6B6B6B;--color-text-muted: #9B9B9B;--color-risk-low: #5BA55F;--color-risk-moderate: #E4B03A;--color-risk-high: #E07D3A;--color-risk-very-high: #D64545;--shadow-sm: 0 1px 3px rgba(45, 90, 61, .08);--shadow-md: 0 4px 12px rgba(45, 90, 61, .1);--shadow-lg: 0 8px 24px rgba(45, 90, 61, .12);--shadow-xl: 0 12px 36px rgba(45, 90, 61, .15);--font-display: "Cormorant Garamond", Georgia, serif;--font-body: "Nunito Sans", -apple-system, BlinkMacSystemFont, sans-serif;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: 6px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 24px;--transition-fast: .15s ease;--transition-base: .25s ease;--transition-slow: .4s ease}body{font-family:var(--font-body);margin:0;background:linear-gradient(135deg,var(--color-cream) 0%,var(--color-cream-dark) 100%);min-height:100vh;color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.app{text-align:center;min-height:100vh}.app-header{background-color:transparent;background-image:url(/images/Beteskollen_banner_wide.png);background-size:cover;background-position:center top;background-repeat:no-repeat;aspect-ratio:6 / 1;padding:var(--spacing-lg) var(--spacing-xl) 0 var(--spacing-xl);color:#fff;position:relative;min-height:0;margin-bottom:0;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow:hidden}.app-header:after{content:"";position:absolute;bottom:0;left:0;right:0;height:60px;background:linear-gradient(to top,var(--color-cream) 0%,transparent 100%);pointer-events:none}@media (max-width: 768px){.app-header{background-image:url(/images/Beteskollen_banner_mobile.png);background-size:cover;background-position:center top;background-color:transparent;aspect-ratio:4 / 1;min-height:0;padding:var(--spacing-sm) var(--spacing-md) 0 var(--spacing-md);margin-bottom:0;overflow:hidden}.app-header:after{height:40px}}@media (max-width: 480px){.app-header{padding:var(--spacing-sm) .75rem}}@media (min-width: 769px) and (max-width: 1024px){.app-header{background-image:url(/images/Beteskollen_banner_medium.png);background-size:cover;background-position:center top;background-color:transparent;aspect-ratio:5 / 1;min-height:0;padding:var(--spacing-md) var(--spacing-lg) 0 var(--spacing-lg);margin-bottom:0;overflow:hidden}}main{max-width:100%;margin:0 auto;padding:var(--spacing-lg);padding-top:0}@media (max-width: 768px){main{padding-top:0;padding-left:var(--spacing-md);padding-right:var(--spacing-md);padding-bottom:var(--spacing-md)}}.user-info{position:absolute;top:var(--spacing-md);right:var(--spacing-md);display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:var(--radius-md);box-shadow:var(--shadow-md);margin-bottom:0;z-index:10;border:1px solid rgba(45,90,61,.1)}.user-info p{color:var(--color-text);margin:0;font-weight:500;font-size:.9rem}.user-info button{padding:.4rem .9rem;background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-secondary-dark) 100%);color:#fff;border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:.85rem;font-weight:600;transition:all var(--transition-fast);letter-spacing:.3px}.user-info button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #8b5a2b4d}.desktop-only{display:flex}.mobile-menu-container{position:absolute;top:var(--spacing-md);right:var(--spacing-md);z-index:10;display:none}.hamburger-menu-btn{background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(45,90,61,.1);border-radius:var(--radius-sm);width:44px;height:44px;display:flex;flex-direction:column;justify-content:space-around;padding:10px 8px;cursor:pointer;box-shadow:var(--shadow-md);transition:all var(--transition-fast)}.hamburger-menu-btn:hover{background:#fff;transform:scale(1.02)}.hamburger-menu-btn span{display:block;height:2.5px;width:100%;background-color:var(--color-primary);border-radius:2px;transition:all var(--transition-base)}.mobile-menu-dropdown{position:absolute;top:52px;right:0;background:#fff;border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:220px;overflow:hidden;animation:slideDown var(--transition-base);border:1px solid rgba(45,90,61,.1)}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.mobile-menu-item{padding:var(--spacing-md);border-bottom:1px solid var(--color-cream-dark)}.mobile-menu-item p{margin:0;color:var(--color-text);font-size:.9rem;word-break:break-word}.mobile-menu-signout{width:100%;padding:var(--spacing-md);background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-secondary-dark) 100%);color:#fff;border:none;cursor:pointer;font-size:.9rem;font-weight:600;text-align:center;transition:all var(--transition-fast)}.mobile-menu-signout:hover{background:var(--color-secondary-dark)}@media (max-width: 768px){.desktop-only{display:none}.mobile-menu-container{display:block}.user-info{position:static;margin-top:var(--spacing-md);justify-content:center}}.loading{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;font-family:var(--font-display);font-size:1.8rem;font-weight:500;color:var(--color-primary);letter-spacing:1px;gap:var(--spacing-md)}.loading:before{content:"🐴";font-size:3rem;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.auth-container{max-width:420px;margin:var(--spacing-2xl) auto;padding:var(--spacing-2xl);background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:1px solid rgba(45,90,61,.08)}.auth-header{text-align:center;margin-bottom:var(--spacing-xl)}.auth-icon{font-size:3rem;display:block;margin-bottom:var(--spacing-md)}.auth-container h2{font-family:var(--font-display);color:var(--color-primary);margin:0 0 var(--spacing-sm) 0;text-align:center;font-size:2rem;font-weight:600;letter-spacing:.5px}.auth-subtitle{color:var(--color-text-light);font-size:.95rem;margin:0;line-height:1.5}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;margin-bottom:var(--spacing-sm);color:var(--color-text);text-align:left;font-weight:600;font-size:.9rem}.form-group input{width:100%;box-sizing:border-box;padding:.9rem var(--spacing-md);border:2px solid var(--color-cream-dark);border-radius:var(--radius-sm);font-size:1rem;font-family:var(--font-body);transition:all var(--transition-fast);background:var(--color-cream)}.form-group input:focus{outline:none;border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 3px #2d5a3d1a}.form-group input::placeholder{color:var(--color-text-muted)}.form-group input:disabled{background:var(--color-cream-dark);cursor:not-allowed;opacity:.7}.auth-container button[type=submit]{width:100%;padding:.9rem;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;border:none;border-radius:var(--radius-sm);font-size:1rem;font-weight:700;cursor:pointer;margin-top:var(--spacing-lg);transition:all var(--transition-fast);letter-spacing:.5px;text-transform:uppercase}.auth-container button[type=submit]:hover:not(:disabled){transform:translateY(-2px);box-shadow:var(--shadow-md)}.auth-container button[type=submit]:disabled{opacity:.7;cursor:not-allowed;transform:none}.auth-container p{text-align:center;margin-top:var(--spacing-lg);color:var(--color-text-light)}.toggle-auth{background:none;border:none;color:var(--color-primary);cursor:pointer;padding:0;font-size:1rem;font-weight:600;text-decoration:none;margin-left:var(--spacing-sm);transition:color var(--transition-fast)}.toggle-auth:hover{color:var(--color-primary-dark);text-decoration:underline}.error{color:var(--color-risk-very-high);margin-bottom:var(--spacing-md);text-align:center;background-color:#d6454514;padding:var(--spacing-md);border-radius:var(--radius-sm);border-left:4px solid var(--color-risk-very-high);font-weight:500}.location-section{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-lg);margin:var(--spacing-md) auto var(--spacing-lg);max-width:900px;box-shadow:var(--shadow-md);border:1px solid rgba(45,90,61,.06)}@media (max-width: 768px){.location-section{padding:var(--spacing-md);margin:var(--spacing-sm) auto var(--spacing-md);border-radius:var(--radius-md)}}.location-selector{margin:0 auto;max-width:100%;width:100%}.location-input{width:100%;padding:.8rem var(--spacing-md);border:2px solid var(--color-cream-dark);border-radius:var(--radius-sm);font-size:1rem;box-sizing:border-box;font-family:var(--font-body);transition:all var(--transition-fast);background:var(--color-cream)}.location-input:focus{outline:none;border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 3px #2d5a3d1a}.current-location-display{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-top:var(--spacing-md);padding:var(--spacing-md);background:linear-gradient(135deg,var(--color-cream) 0%,var(--color-cream-dark) 100%);border-radius:var(--radius-md);border:1px solid rgba(45,90,61,.1)}.current-location-info{display:flex;flex-direction:column;gap:.15rem;flex:1;min-width:0;text-align:left}.location-label{font-size:.7rem;color:var(--color-text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.8px}.location-name{font-family:var(--font-display);font-size:1.2rem;color:var(--color-primary-dark);font-weight:600;word-break:break-word;overflow-wrap:break-word}.use-location-btn{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;border:none;border-radius:var(--radius-sm);padding:.7rem 1.2rem;cursor:pointer;font-size:.9rem;font-weight:600;transition:all var(--transition-fast);white-space:nowrap;box-shadow:var(--shadow-sm);flex-shrink:0}.use-location-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.use-location-btn:active{transform:translateY(0)}@media (max-width: 768px){.current-location-display{flex-direction:column;align-items:stretch;gap:var(--spacing-sm);padding:var(--spacing-md)}.use-location-btn{width:100%;padding:.75rem var(--spacing-md)}.location-name{font-size:1.1rem}}.settings-toggle-container{display:flex;justify-content:center;margin:var(--spacing-md) auto;max-width:800px}.settings-toggle-btn{display:flex;align-items:center;gap:var(--spacing-sm);padding:.75rem 1.75rem;background:linear-gradient(135deg,var(--color-charcoal) 0%,var(--color-charcoal-light) 100%);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:1rem;font-weight:600;transition:all var(--transition-fast);box-shadow:var(--shadow-sm)}.settings-toggle-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.settings-toggle-btn:active{transform:translateY(0)}.settings-icon{font-size:1.1rem}.settings-arrow{font-size:.75rem;transition:transform var(--transition-base);margin-left:auto}.settings-arrow.open{transform:rotate(180deg)}.settings-panel{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-xl);margin:var(--spacing-md) auto var(--spacing-xl);max-width:900px;box-shadow:var(--shadow-md);animation:slideDown var(--transition-base);border:1px solid rgba(45,90,61,.06)}.management-selectors{display:grid;gap:var(--spacing-md);margin:var(--spacing-md) auto;max-width:800px}@media (min-width: 768px){.management-selectors{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}.factor-selector,.grass-type-selector{margin:var(--spacing-md) auto;max-width:400px;width:100%;display:flex;flex-direction:column;gap:var(--spacing-xs);text-align:left}.factor-selector label,.grass-type-selector label{font-weight:600;color:var(--color-primary-dark);font-size:.9rem}.factor-selector select,.grass-type-selector select{width:100%;padding:.75rem var(--spacing-md);border:2px solid var(--color-cream-dark);border-radius:var(--radius-sm);font-size:1rem;background-color:var(--color-cream);box-sizing:border-box;font-family:var(--font-body);color:var(--color-text);cursor:pointer;transition:all var(--transition-fast);-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%232D5A3D' d='M6 8L1 3h10z'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem}.factor-selector select:focus,.grass-type-selector select:focus{outline:none;border-color:var(--color-primary);background-color:#fff;box-shadow:0 0 0 3px #2d5a3d1a}.selector-helper,.grass-type-helper{margin:0;font-size:.8rem;color:var(--color-text-muted)}.saved-pastures{background:#fff;border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-sm);margin:var(--spacing-md) auto var(--spacing-xl);max-width:900px;text-align:left;border:1px solid rgba(45,90,61,.06)}.saved-pastures__header h2{margin:0 0 var(--spacing-xs) 0;font-family:var(--font-display);color:var(--color-primary);font-size:1.5rem;font-weight:600}.saved-pastures__header p{margin:0;color:var(--color-text-light);font-size:.9rem}.saved-pastures__form{margin-top:var(--spacing-md)}.saved-pastures__form label{font-weight:600;display:block;margin-bottom:var(--spacing-sm);color:var(--color-text)}.saved-pastures__form-row{display:flex;gap:var(--spacing-md);align-items:center}.saved-pastures__form-row input{flex:1;padding:.75rem var(--spacing-md);border:2px solid var(--color-cream-dark);border-radius:var(--radius-sm);font-size:1rem;font-family:var(--font-body);transition:all var(--transition-fast);background:var(--color-cream)}.saved-pastures__form-row input:focus{outline:none;border-color:var(--color-primary);background:#fff;box-shadow:0 0 0 3px #2d5a3d1a}.saved-pastures__form-row input:disabled{background-color:var(--color-cream-dark);cursor:not-allowed;opacity:.6}.saved-pastures__form-row button{padding:.75rem 1.5rem;border:none;border-radius:var(--radius-sm);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;font-weight:600;cursor:pointer;min-width:120px;transition:all var(--transition-fast)}.saved-pastures__form-row button:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.saved-pastures__form-row button:disabled{background:var(--color-cream-dark);color:var(--color-text-muted);cursor:not-allowed;transform:none;box-shadow:none}.saved-pastures__hint{margin:var(--spacing-sm) 0 0;font-size:.8rem;color:var(--color-text-muted)}.saved-pastures__feedback{margin-top:var(--spacing-sm);font-size:.85rem}.saved-pastures__feedback--error{color:var(--color-risk-very-high)}.saved-pastures__list{margin-top:var(--spacing-lg);display:flex;flex-direction:column;gap:var(--spacing-md)}.saved-pastures__item{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border:1px solid var(--color-cream-dark);border-radius:var(--radius-md);background:linear-gradient(135deg,var(--color-cream) 0%,white 100%);transition:all var(--transition-fast)}.saved-pastures__item:hover{border-color:#2d5a3d33;box-shadow:var(--shadow-sm)}.saved-pastures__item strong{display:block;color:var(--color-primary-dark);font-family:var(--font-display);font-size:1.1rem}.saved-pastures__item p{margin:var(--spacing-xs) 0 0;font-size:.85rem;color:var(--color-text-light)}.saved-pastures__actions{display:flex;gap:var(--spacing-sm)}.saved-pastures__actions button{border:none;border-radius:var(--radius-sm);padding:.5rem 1rem;cursor:pointer;font-weight:600;font-size:.85rem;transition:all var(--transition-fast)}.saved-pastures__actions button:first-of-type{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff}.saved-pastures__actions button:first-of-type:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.saved-pastures__actions .danger{background:linear-gradient(135deg,var(--color-risk-very-high) 0%,#c03535 100%);color:#fff}.saved-pastures__actions .danger:hover{transform:translateY(-1px);box-shadow:0 4px 12px #d645454d}.saved-pastures__empty{margin:0;color:var(--color-text-muted);font-style:italic}.forecast-container{display:flex;flex-direction:column;overflow-x:hidden;align-items:center;padding:var(--spacing-md) 0;gap:var(--spacing-xl);scrollbar-width:thin;scrollbar-color:var(--color-primary-light) var(--color-cream-dark)}.forecast-container::-webkit-scrollbar{height:8px}.forecast-container::-webkit-scrollbar-track{background:var(--color-cream-dark);border-radius:4px}.forecast-container::-webkit-scrollbar-thumb{background-color:var(--color-primary-light);border-radius:4px}.daily-forecast-card{width:100%;max-width:800px;background:#fff;border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);overflow:hidden;transition:all var(--transition-base);border:1px solid rgba(45,90,61,.06)}.daily-forecast-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl)}@media (max-width: 768px){.daily-forecast-card{max-width:450px;border-radius:var(--radius-md)}.daily-forecast-card:hover{transform:none}.forecast-container .daily-forecast-card:last-child{margin-bottom:var(--spacing-md)}}.weather-section{position:relative;height:160px;color:#fff;background-size:cover;background-position:center;background-repeat:no-repeat;padding:var(--spacing-md);display:flex;flex-direction:column;justify-content:flex-start}.weather-section:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,#00000059,#00000026);z-index:1;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.weather-info{position:relative;z-index:2;font-weight:500;text-shadow:0 2px 4px rgba(0,0,0,.3)}.weather-info h3{margin:0 0 var(--spacing-sm);font-family:var(--font-display);font-size:1.6rem;font-weight:600;letter-spacing:.5px}.weather-info .temps,.weather-info .conditions{display:flex;justify-content:space-between;margin-bottom:.3rem;font-size:1rem}.weather-info .temps{flex-direction:column}.weather-info .temps span{margin-bottom:.2rem}.weather-info .data-source{font-size:.75rem;font-style:italic;opacity:.9;margin-top:.2rem;font-weight:400}.weather-info .conditions span:first-child{flex-grow:1;text-align:left}.weather-info .conditions span:last-child{margin-left:var(--spacing-md);text-align:right}@media (max-width: 768px){.weather-section{height:140px;padding:var(--spacing-sm)}.weather-section:before{border-radius:var(--radius-md) var(--radius-md) 0 0}.weather-info h3{font-size:1.3rem}.weather-info .temps,.weather-info .conditions{font-size:.9rem}}@media (min-width: 769px) and (max-width: 1024px){.weather-section{height:165px}}@media (min-width: 1025px){.weather-section{height:180px}.weather-info h3{font-size:1.7rem}}.sugar-level-section{padding:var(--spacing-md);background:linear-gradient(180deg,var(--color-cream) 0%,white 100%)}.sugar-level-section h4{margin:0 0 var(--spacing-sm);text-align:center;color:var(--color-primary-dark);font-weight:700;font-family:var(--font-display);font-size:1.2rem}.chart-container{height:150px}.summary-section{padding:var(--spacing-md) var(--spacing-lg);font-size:.95rem;color:var(--color-text);line-height:1.6;background:#fff;border-top:1px solid var(--color-cream-dark)}.summary-section .warning{color:var(--color-risk-very-high);font-weight:700;margin-top:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:#d6454514;border-radius:var(--radius-sm);border-left:3px solid var(--color-risk-very-high)}.additional-risks-section{padding:var(--spacing-sm) var(--spacing-md) var(--spacing-md);background:linear-gradient(180deg,var(--color-cream) 0%,var(--color-cream-dark) 100%);border-top:1px solid rgba(45,90,61,.1)}.risk-toggle{background:none;border:none;padding:var(--spacing-sm) 0;width:100%;text-align:left;font-size:.95rem;font-weight:600;color:var(--color-primary-dark);cursor:pointer;display:flex;justify-content:space-between;align-items:center;transition:color var(--transition-fast)}.risk-toggle:hover{color:var(--color-primary)}.risk-toggle .arrow{border:solid var(--color-primary-dark);border-width:0 2px 2px 0;display:inline-block;padding:3px;transition:transform var(--transition-fast)}.risk-toggle .arrow.down{transform:rotate(45deg)}.risk-toggle .arrow.up{transform:rotate(-135deg)}.risk-content{padding:var(--spacing-sm) 0 0;font-size:.9rem;color:var(--color-text);line-height:1.5}.weather-station-info{font-size:.8rem;color:var(--color-text-muted);font-style:italic;margin-top:var(--spacing-md);border-top:1px dashed var(--color-cream-dark);padding-top:var(--spacing-sm)}.detailed-explanation{display:flex;flex-direction:column;gap:var(--spacing-md);text-align:left}.explanation-section{background:#fff;border-radius:var(--radius-md);padding:var(--spacing-md);border-left:4px solid var(--color-primary);box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.explanation-section:hover{box-shadow:var(--shadow-md);transform:translate(2px)}.explanation-title{margin:0 0 var(--spacing-sm) 0;font-family:var(--font-display);font-size:1.05rem;font-weight:600;color:var(--color-primary-dark)}.explanation-content{margin:0 0 var(--spacing-sm) 0;font-size:.9rem;line-height:1.6;color:var(--color-text)}.explanation-detail{margin:0;font-size:.8rem;color:var(--color-text-muted);font-style:italic;padding-top:var(--spacing-xs);border-top:1px dashed var(--color-cream-dark)}.explanation-section:nth-child(1){border-left-color:var(--color-accent)}.explanation-section:nth-child(2){border-left-color:var(--color-risk-moderate)}.explanation-section:nth-child(3){border-left-color:var(--color-primary)}.explanation-section:nth-child(4){border-left-color:var(--color-risk-low)}.explanation-section:nth-child(5){border-left-color:var(--color-secondary)}.explanation-section:nth-child(6){border-left-color:var(--color-risk-high)}@media (max-width: 768px){.explanation-section{padding:var(--spacing-sm)}.explanation-title{font-size:.95rem}.explanation-content{font-size:.85rem}.explanation-detail{font-size:.75rem}}.scroll-indicator{display:none;text-align:center;margin-top:var(--spacing-md);margin-bottom:var(--spacing-xl);color:var(--color-text-light)}.scroll-arrow{font-size:1.8rem;animation:bounce 1.5s infinite;color:var(--color-primary)}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-8px)}60%{transform:translateY(-4px)}}@media (max-width: 768px){.scroll-indicator{display:block}}.fructan-risk-graph{width:100%;padding:var(--spacing-sm)}.fructan-risk-graph .graph-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.fructan-risk-graph .graph-header h4{margin:0;font-family:var(--font-display);font-size:1.15rem;font-weight:600;color:var(--color-primary-dark)}.fructan-risk-graph .chart-container{height:140px;position:relative}.fructan-risk-graph .view-toggle-container{display:flex;background:var(--color-cream);border-radius:var(--radius-md);border:1px solid var(--color-cream-dark);height:32px;overflow:hidden}.fructan-risk-graph .view-toggle-btn{background:transparent;border:none;color:var(--color-text-light);padding:0 14px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all var(--transition-fast);position:relative;min-width:36px}.fructan-risk-graph .view-toggle-btn.active{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff}.fructan-risk-graph .view-toggle-btn:hover:not(.active){background:var(--color-cream-dark)}.fructan-risk-graph .risk-legend{display:flex;justify-content:space-between;margin-top:var(--spacing-sm);font-size:.75rem}.fructan-risk-graph .risk-level{padding:.25rem .5rem;border-radius:var(--radius-sm);color:#fff;font-weight:600}.fructan-risk-graph .risk-level.low{background:linear-gradient(135deg,var(--color-risk-low) 0%,#4a9a4e 100%)}.fructan-risk-graph .risk-level.moderate{background:linear-gradient(135deg,var(--color-risk-moderate) 0%,#d9a030 100%)}.fructan-risk-graph .risk-level.high{background:linear-gradient(135deg,var(--color-risk-high) 0%,#d06a2e 100%)}.fructan-risk-graph .risk-level.very-high{background:linear-gradient(135deg,var(--color-risk-very-high) 0%,#c03535 100%)}.fructan-risk-graph .sugar-level-explanation{margin-top:var(--spacing-md);padding:var(--spacing-md);background:linear-gradient(135deg,var(--color-cream) 0%,white 100%);border-radius:var(--radius-sm);border-left:4px solid var(--color-primary)}.fructan-risk-graph .sugar-level-explanation p{margin:0;font-size:.9rem;line-height:1.5;color:var(--color-text);text-align:left}@media (max-width: 768px){.fructan-risk-graph .risk-legend{font-size:.7rem}.fructan-risk-graph .view-toggle-btn{font-size:.75rem;padding:0 10px}.fructan-risk-graph .graph-header h4{font-size:1rem}.fructan-risk-graph .sugar-level-explanation{margin-top:var(--spacing-sm);padding:var(--spacing-sm)}.fructan-risk-graph .sugar-level-explanation p{font-size:.85rem}}.test-mode-indicator{background:linear-gradient(135deg,var(--color-risk-high) 0%,var(--color-secondary) 100%);color:#fff;padding:var(--spacing-sm) var(--spacing-md);text-align:center;position:relative;z-index:1000}.test-mode-banner{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);font-weight:700;font-size:.9rem}.test-mode-icon{font-size:1.2rem}.test-mode-text{background-color:#fff3;padding:.2rem .6rem;border-radius:var(--radius-sm);font-size:.8rem;letter-spacing:.5px}.test-date-info{background-color:#fff3;padding:.2rem .6rem;border-radius:var(--radius-sm);font-size:.8rem}.test-mode-details{margin-top:var(--spacing-sm);font-size:.8rem;opacity:.9}.test-mode-details p{margin:.2rem 0}@media (max-width: 768px){.test-mode-banner{flex-direction:column;gap:.3rem}.test-mode-details{font-size:.7rem}}.test-mode-toggle{position:relative;display:inline-block}.test-toggle-btn{background:linear-gradient(135deg,var(--color-accent) 0%,var(--color-accent-dark) 100%);color:#fff;border:none;padding:.4rem .9rem;border-radius:var(--radius-sm);cursor:pointer;font-size:.9rem;font-weight:600;margin-right:var(--spacing-sm);transition:all var(--transition-fast)}.test-toggle-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.test-mode-panel{position:absolute;top:100%;right:0;background:#fff;border:1px solid var(--color-cream-dark);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);padding:var(--spacing-lg);min-width:300px;z-index:1001;margin-top:var(--spacing-sm)}.test-mode-controls{text-align:left}.test-mode-switch{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-md);cursor:pointer;font-weight:600;color:var(--color-text)}.test-mode-switch input[type=checkbox]{display:none}.test-mode-switch .slider{position:relative;width:50px;height:26px;background-color:var(--color-cream-dark);border-radius:13px;transition:background-color var(--transition-base)}.test-mode-switch .slider:before{content:"";position:absolute;width:20px;height:20px;left:3px;bottom:3px;background-color:#fff;border-radius:50%;transition:transform var(--transition-base);box-shadow:var(--shadow-sm)}.test-mode-switch input:checked+.slider{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%)}.test-mode-switch input:checked+.slider:before{transform:translate(24px)}.date-override{margin-bottom:var(--spacing-md)}.date-override label{display:block;margin-bottom:var(--spacing-sm);font-weight:600;color:var(--color-text)}.date-override input[type=date]{width:100%;padding:var(--spacing-sm);border:2px solid var(--color-cream-dark);border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm);font-family:var(--font-body);transition:all var(--transition-fast)}.date-override input[type=date]:focus{outline:none;border-color:var(--color-primary)}.date-help{font-size:.8rem;color:var(--color-text-muted);margin:var(--spacing-sm) 0;font-style:italic}.apply-btn{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-dark) 100%);color:#fff;border:none;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);cursor:pointer;font-size:.9rem;font-weight:600;transition:all var(--transition-fast)}.apply-btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm)}.test-mode-info{border-top:1px solid var(--color-cream-dark);padding-top:var(--spacing-md)}.test-mode-info p{margin:0 0 var(--spacing-sm) 0;font-weight:600;color:var(--color-text)}.test-mode-info ul{margin:0;padding-left:var(--spacing-lg)}.test-mode-info li{margin:.2rem 0;font-size:.9rem;color:var(--color-text-light)}@media (max-width: 768px){.test-mode-panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:90%;max-width:350px}.user-info{flex-direction:column;gap:var(--spacing-sm)}.test-toggle-btn{margin-right:0;margin-bottom:var(--spacing-sm)}}@media (max-width: 768px){.app-header{padding:var(--spacing-lg) var(--spacing-md)}.app-header h1{font-size:1.8rem}.app-header p{font-size:1rem}}
