:root{--timeline-level-10:#921c1c;--timeline-level-9:#9c0000;--timeline-level-8:#c30000;--timeline-level-7:#ff1313;--timeline-level-6:#ff6643;--timeline-level-5:#ff9f2a;--timeline-level-4:#ffb42a;--timeline-level-3:#c9c201;--timeline-level-2:#abc500;--timeline-level-1:#2eda10;--timeline-warning-bg:rgba(231,76,60,.1);--timeline-warning-shadow:rgba(231,76,60,.1);--timeline-warning-text:#c0392b;--timeline-optimal:#2ecc71;--timeline-optimal-bg:rgba(46,204,113,.1);--timeline-optimal-shadow:rgba(46,204,113,.1);--timeline-optimal-text:#27ae60;--timeline-neutral:var(--border);--timeline-neutral-bg:rgba(0,0,0,.05);--timeline-neutral-text:var(--text)}.calculator{background:#fff;border-radius:var(--border-radius-lg);box-shadow:var(--card-shadow);margin-bottom:var(--spacing-xl);padding:var(--spacing-sm) var(--spacing-xl) var(--spacing-xl) var(--spacing-xl);text-align:left;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.calculator:hover{box-shadow:var(--hover-shadow);transform:translateY(-2px)}.form-group{margin-bottom:var(--spacing-md);position:relative;text-align:left}.form-group .error-message{left:0;position:absolute;top:100%}label{display:block;font-weight:500}input,select{border:1px solid var(--border);border-radius:var(--border-radius-md);cursor:default;font-family:monospace;font-size:var(--font-size-base);height:41px;padding:var(--spacing-xs);padding-inline-start:var(--spacing-xs);width:100%}button{background:var(--secondary);border:none;border-radius:var(--border-radius-md);box-shadow:0 2px 4px #4b2c201a;color:#fff;cursor:pointer;font-size:1rem;padding:var(--spacing-sm) var(--spacing-lg);transition:all .2s ease;width:100%}.results{margin-top:var(--spacing-xl);text-align:left}.results-drinks{display:grid;gap:var(--spacing-md);grid-template-columns:1fr 1fr 1fr 1fr;padding:var(--spacing-md) 0}.results-drinks-item{align-items:center;background:var(--light-background);border-radius:var(--border-radius-md);box-shadow:var(--card-shadow);display:flex;flex-direction:column;justify-content:flex-start;padding:var(--spacing-sm)}.results-drinks-caption{text-align:center;width:100%}.results-drinks-caption-main{font-weight:700;margin-bottom:var(--spacing-xxs)}.results-drinks-caption-main .primary{color:var(--primary)}.results-drinks-caption-sub{font-size:var(--font-size-sm)}.faq{margin-top:var(--spacing-xl);text-align:left}.faq-item{background:#fff;border-radius:var(--border-radius-lg);box-shadow:var(--card-shadow);margin:var(--spacing-md) 0;overflow:hidden;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.faq-item:hover{box-shadow:var(--hover-shadow);transform:translateY(-2px)}.faq-question{background:var(--light-background);border-radius:var(--border-radius-lg) var(--border-radius-lg) 0 0;color:var(--primary);cursor:pointer;font-weight:600;margin-top:0;padding:var(--spacing-sm);padding-right:40px;position:relative;text-align:left;transition:all var(--transition-fast);width:100%}.faq-question-heading{margin-bottom:0;margin-top:0}.faq-question:after{content:"▼";font-size:var(--font-size-sm);position:absolute;right:12px;top:50%;transform:translateY(-50%);transition:transform var(--transition-normal)}.faq-question[aria-expanded=true]:after{transform:rotate(180deg)}.faq-question:hover{background:var(--accent);color:#fff}.faq-answer{background:#fff;border-radius:0 0 var(--border-radius-lg) var(--border-radius-lg);max-height:0;opacity:0;overflow:hidden;padding:0;transform:scaleY(0);transform-origin:top;transition:all .3s cubic-bezier(.4,0,.2,1)}.faq-answer.active{max-height:1000px;opacity:1;padding:var(--spacing-md);transform:scaleY(1)}.faq-answer ul{margin-bottom:var(--spacing-sm);margin-top:var(--spacing-sm)}.faq-answer li{line-height:1.5;margin-bottom:var(--spacing-xs)}.articles{margin-top:var(--spacing-xl);text-align:left}.articles h2{color:var(--primary);margin-bottom:var(--spacing-xl);text-align:center}.article-item{background:#fff;border-radius:var(--border-radius-lg);box-shadow:var(--card-shadow);margin-bottom:var(--spacing-md);padding:var(--spacing-md);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.article-link{color:inherit;display:block}.article-item:hover{box-shadow:var(--hover-shadow);transform:translateY(-2px)}.article-item h3{color:var(--primary);margin-bottom:var(--spacing-sm)}.article-item p{text-align:left}@media (min-width:600px){.form-row{display:grid;gap:1rem;grid-template-columns:1fr 1fr}}.advanced-toggle{position:relative;text-align:center}.toggle-button{align-items:center;background:var(--background);border:1px solid var(--border);color:var(--text);display:flex;font-weight:500;gap:var(--spacing-xs);justify-content:center;transition:all var(--transition-normal);width:100%}.toggle-button:after{content:"▼";font-size:var(--font-size-sm);transition:transform var(--transition-normal)}.toggle-button[aria-expanded=true]{border-bottom-left-radius:0;border-bottom-right-radius:0}.toggle-button[aria-expanded=true]:after{transform:rotate(180deg)}.toggle-button:hover{background:var(--accent);border-color:var(--accent);color:#fff}#advanced-settings{background-color:var(--background);border:1px solid var(--border);border-radius:0 0 var(--border-radius-md) var(--border-radius-md);border-top:none;box-shadow:var(--card-shadow);margin-top:-1px;max-height:0;opacity:0;overflow:hidden;transition:all var(--transition-normal)}#advanced-settings.opened{max-height:1000px;opacity:1}.advanced-settings-content{padding:var(--spacing-md) var(--spacing-md) 0 var(--spacing-md)}@media (max-width:768px){.timeline-point{padding:var(--spacing-sm) 0 var(--spacing-sm) var(--spacing-sm)}.timeline-point .stats{padding-right:var(--spacing-sm)}.radio-group,.timeline-point .description{flex-direction:column}.calculator{padding:var(--spacing-sm)}}.coffee-input-row,.input-row{display:grid;gap:var(--spacing-xxs);grid-template-columns:1fr auto;margin-top:var(--spacing-sm);position:relative}.factors-list{display:grid;gap:var(--spacing-xxs);grid-template-columns:1fr 1fr;margin-bottom:var(--spacing-sm)}.factors-list .input-row{align-items:center;grid-template-columns:41px 1fr}#safe-intake-form .form-group,.coffee-input-row .form-group{flex:1;margin-top:0}.delete-row{align-items:center;background:none;border:none;color:var(--border);cursor:pointer;display:flex;font-size:24px;height:24px;justify-content:center;left:101%;padding:0;position:absolute;top:50%;transition:all var(--transition-normal);width:24px}.delete-row:not(:disabled):hover{color:var(--timeline-level-7)}.delete-row:disabled{cursor:not-allowed;opacity:.3}#add-coffee{background:var(--background);border:1px solid var(--border);color:var(--text);margin-top:0}#add-coffee:hover{background:var(--accent);border-color:var(--accent);color:#fff}.caffeine-graph{align-items:center;background:#fff;border-radius:var(--border-radius-md);box-shadow:var(--card-shadow);display:grid;font-size:var(--font-size-sm);gap:var(--spacing-xs);grid-template-columns:auto 1fr auto auto;margin:var(--spacing-md) 0;min-height:500px;overflow:auto;padding:var(--spacing-md);position:relative}.graph-time-label{color:var(--text)}.graph-bar{align-items:center;background:var(--timeline-neutral-bg);display:flex;height:30px;padding:0 var(--spacing-xs);position:relative;transition:width .3s ease}.graph-bar-content{color:var(--text);font-size:var(--font-size-xs);text-align:right;white-space:nowrap}.graph-bar[data-goal=sleep][data-level=toxic]{background:var(--timeline-level-10)}.graph-bar[data-goal=sleep][data-level=warning]{background:var(--timeline-level-9)}.graph-bar[data-goal=sleep][data-level=very-high],.graph-bar[data-level=toxic]{background:var(--timeline-level-8)}.graph-bar[data-goal=sleep][data-level=strong],.graph-bar[data-level=warning]{background:var(--timeline-level-7)}.graph-bar[data-goal=productivity][data-level=minor],.graph-bar[data-goal=sleep][data-level=high],.graph-bar[data-level=very-high]{background:var(--timeline-level-6)}.graph-bar[data-goal=productivity][data-level=low],.graph-bar[data-goal=sleep][data-level=moderate],.graph-bar[data-level=strong]{background:var(--timeline-level-5)}.graph-bar[data-goal=productivity][data-level=moderate],.graph-bar[data-level=high]{background:var(--timeline-level-4)}.graph-bar[data-goal=productivity][data-level=high],.graph-bar[data-level=moderate]{background:var(--timeline-level-3)}.graph-bar[data-goal=productivity][data-level=strong],.graph-bar[data-level=low]{background:var(--timeline-level-2)}.graph-bar[data-goal=productivity][data-level=very-high],.graph-bar[data-goal=productivity][data-level=warning],.graph-bar[data-level=minor]{background:var(--timeline-level-1)}.graph-effect,.graph-stat{align-items:center;display:flex}.graph-stats{color:var(--primary);font-weight:500}.graph-effects{color:var(--text)}.graph-description{display:flex;flex-direction:column;gap:4px}.graph-effect{color:var(--text-primary);font-size:.9rem}.graph-effect[data-goal=sleep][data-level=toxic]{color:var(--timeline-level-10)}.graph-effect[data-goal=sleep][data-level=warning]{color:var(--timeline-level-9)}.graph-effect[data-goal=sleep][data-level=very-high],.graph-effect[data-level=toxic]{color:var(--timeline-level-8)}.graph-effect[data-goal=sleep][data-level=strong],.graph-effect[data-level=warning]{color:var(--timeline-level-7)}.graph-effect[data-goal=productivity][data-level=minor],.graph-effect[data-goal=sleep][data-level=high],.graph-effect[data-level=very-high]{color:var(--timeline-level-6)}.graph-effect[data-goal=productivity][data-level=low],.graph-effect[data-goal=sleep][data-level=moderate],.graph-effect[data-level=strong]{color:var(--timeline-level-5)}.graph-effect[data-goal=productivity][data-level=moderate],.graph-effect[data-level=high]{color:var(--timeline-level-4)}.graph-effect[data-goal=productivity][data-level=high],.graph-effect[data-level=moderate]{color:var(--timeline-level-3)}.graph-effect[data-goal=productivity][data-level=strong],.graph-effect[data-level=low]{color:var(--timeline-level-2)}.graph-effect[data-goal=productivity][data-level=very-high],.graph-effect[data-goal=productivity][data-level=warning],.graph-effect[data-level=minor]{color:var(--timeline-level-1)}.sr-only{position:absolute!important;clip:rect(1px,1px,1px,1px);border:0!important;height:1px!important;overflow:hidden;padding:0!important;white-space:nowrap;width:1px!important}.goal-slider-container{margin-top:var(--spacing-md);width:100%}.goal-slider{background:var(--background);border-radius:var(--border-radius-md);box-shadow:inset 0 1px 3px #0000001a;display:flex;padding:var(--spacing-xxs);position:relative}.goal-slider input[type=radio]{display:none}.goal-option{cursor:pointer;flex:1;padding:var(--spacing-xxs);position:relative;text-align:center;transition:color .3s ease;z-index:1}.goal-option span{color:var(--text);font-size:.9rem;font-weight:500;transition:color .3s ease}.goal-slider input[type=radio]:checked+.goal-option span{color:#fff}.goal-slider-track{background:var(--primary);border-radius:var(--border-radius-md);height:calc(100% - var(--spacing-xxs)*2);left:var(--spacing-xxs);position:absolute;top:var(--spacing-xxs);transition:transform .3s ease;z-index:0}.goal-slider input[type=radio]:first-child:checked~.goal-slider-track{transform:translate(0);width:calc(33.333% - var(--spacing-xxs)*2/3)}.goal-slider input[type=radio]:nth-child(3):checked~.goal-slider-track{transform:translate(100%);width:calc(33.333% - var(--spacing-xxs)*2/3)}.goal-slider input[type=radio]:nth-child(5):checked~.goal-slider-track{transform:translate(200%);width:calc(33.333% - var(--spacing-xxs)*2/3)}.goal-option:hover span{color:var(--secondary)}.goal-slider input[type=radio]:focus+.goal-option{outline:2px solid var(--secondary);outline-offset:2px}.error-message{color:#dc3545;font-size:.875rem}[aria-invalid=true]{border-color:#dc3545}@media (max-width:768px){.caffeine-graph{grid-template-columns:auto 1fr auto}.advanced-settings-content{padding:var(--spacing-sm) var(--spacing-sm) 0 var(--spacing-sm)}.graph-stat{display:none}.graph-effect,.graph-time-label{font-size:.6rem}}input[type=time],select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;color:var(--text)}.references{background:var(--white);border-radius:var(--border-radius-lg);box-shadow:var(--card-shadow);margin-top:var(--spacing-xl);padding:var(--spacing-md);text-align:left}.references h2{color:#333;margin-bottom:1.5rem}.references-content{text-align:left}.references-content ol{padding-left:1.5rem}.references-content li{line-height:1.6;margin-bottom:1rem}.references-content a{color:#06c;text-decoration:none;word-break:break-all}.references-content a:hover{text-decoration:underline}.references-content em{font-style:italic}.results-note{color:#666;font-size:.9rem;margin-top:1rem}.related-tools{margin-bottom:var(--spacing-md);margin-top:var(--spacing-md)}.related-tools-grid{display:grid;gap:2rem;grid-template-columns:repeat(3,1fr);margin:0 auto;max-width:1200px}.tool-item{background:var(--white);border:1px solid var(--border);border-radius:8px;padding:var(--spacing-md);transition:transform .2s ease,box-shadow .2s ease}.tool-item:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-4px)}.tool-link{color:inherit;display:block;text-decoration:none}.tool-item p{color:var(--text);font-size:var(--font-size-sm);line-height:1.5;margin-bottom:var(--spacing-sm)}.tool-item .link{color:var(--primary);display:inline-block;font-weight:500;position:relative}.tool-item .link:after{content:"→";margin-left:.5rem;transition:transform .2s ease}.tool-item:hover .link:after{transform:translate(4px)}.navigation{background-color:var(--nav-bg);box-shadow:var(--nav-shadow);position:sticky;top:0;z-index:1000}#hamburger{background:none;border:none;cursor:pointer;display:none;padding:var(--spacing-sm);position:relative;z-index:2}#hamburger span{background-color:var(--nav-text);border-radius:var(--border-radius-sm);display:block;height:3px;margin:5px 0;transition:all var(--transition-fast);width:25px}#main-nav{display:flex;gap:var(--spacing-md);list-style:none;margin:0 auto;max-width:var(--container-width);padding:0 var(--spacing-md);position:relative}#main-nav li{padding:var(--spacing-sm) 0;position:relative}#main-nav a{color:var(--text);text-decoration:none;transition:color .3s ease}#main-nav a:hover{color:var(--primary)}.menu-description{color:var(--text-light);display:none;font-size:var(--font-size-sm);margin-top:var(--spacing-xs)}@media (max-width:768px){#hamburger{display:block}#main-nav{background-color:var(--nav-bg);border-radius:0 0 var(--border-radius-md) var(--border-radius-md);box-shadow:var(--nav-shadow);height:0;left:0;margin:0;opacity:0;overflow:hidden;padding:var(--spacing-sm) 0;position:absolute;right:0;top:100%;transition:opacity .3s ease,visibility .3s ease,height .3s ease;visibility:hidden;z-index:1000}#main-nav.active{display:flex;flex-direction:column;gap:var(--spacing-xs);height:auto;opacity:1;visibility:visible}#main-nav li{margin:0;padding:var(--spacing-sm) var(--spacing-md);transform:translateY(-10px);transition:transform .3s ease;width:100%}#main-nav.active li{transform:translateY(0)}#main-nav a{display:block;transition:all .3s ease}#main-nav a:hover{background-color:#4a6b5a0d;padding-left:var(--spacing-md)}.menu-description{color:var(--text-light);display:block;font-size:var(--font-size-sm);margin-top:var(--spacing-xs);opacity:0;transform:translateY(-5px);transition:transform .3s ease,opacity .3s ease}#main-nav.active .menu-description{opacity:1;transform:translateY(0)}#hamburger span{background-color:var(--nav-text);border-radius:var(--border-radius-sm);display:block;height:3px;margin:5px 0;transition:all .3s ease;width:25px}#hamburger.active span:first-child{transform:translateY(8px) rotate(45deg)}#hamburger.active span:nth-child(2){opacity:0}#hamburger.active span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.related-tools-grid{gap:var(--spacing-md);grid-template-columns:1fr}.results-drinks{gap:var(--spacing-sm);grid-template-columns:1fr 1fr}}
