.breadcrumb{max-width:920px;margin:0 auto;padding:1.25rem 2rem 0;font-size:.8rem;color:var(--text-soft);font-weight:500}.breadcrumb a{color:var(--text-soft);text-decoration:none;transition:color .15s}.breadcrumb a:hover{color:var(--primary)}.breadcrumb .sep{margin:0 .35rem;opacity:.5}.calc-header{max-width:920px;margin:0 auto;padding:1.5rem 2rem 0}.calc-header-inner{display:flex;align-items:flex-start;gap:1rem;margin-bottom:.75rem}.calc-header-icon{width:52px;height:52px;border-radius:10px;background:#fdf2f8;display:flex;align-items:center;justify-content:center;flex-shrink:0}.calc-header-icon svg{width:26px;height:26px}.calc-header h1{font-size:clamp(1.75rem,4vw,2.25rem);font-weight:800;letter-spacing:-.03em;line-height:1.15}.subtitle{font-size:1rem;color:var(--text-mid);max-width:600px;line-height:1.6;margin-bottom:.5rem}.calc-meta-row{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;font-size:.78rem;color:var(--text-soft);font-weight:500}.calc-meta-row span{display:flex;align-items:center;gap:.3rem}.calc-meta-row svg{width:14px;height:14px}.calc-layout{max-width:920px;margin:0 auto;padding:1.75rem 2rem 2rem;display:grid;grid-template-columns:340px 1fr;gap:1.5rem;align-items:start}.input-panel{background:var(--card);border:1.5px solid var(--border);border-radius:14px;padding:1.5rem;position:sticky;top:80px}.input-panel h2{font-size:.92rem;font-weight:700;margin-bottom:1.25rem}.field{margin-bottom:1.15rem}.field label{display:block;font-size:.78rem;font-weight:600;color:var(--text-mid);margin-bottom:.35rem}.field select{width:100%;padding:.6rem 2.25rem .6rem .85rem;background:var(--bg);border:1.5px solid var(--border);border-radius:10px;font-family:inherit;font-size:.9rem;color:var(--text);outline:none;transition:border-color .15s;cursor:pointer;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%237c778e' stroke-width='2.5' 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 .75rem center}.field select:focus{border-color:var(--primary)}.divider{height:1px;background:var(--border);margin:1.1rem 0 1rem}.day-log-header{display:grid;grid-template-columns:36px 1fr 1fr 42px;gap:.35rem;align-items:center;padding:0 0 .4rem;border-bottom:1px solid var(--border);margin-bottom:.3rem}.day-log-header span{font-size:.68rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-soft)}.time-col{text-align:center}.hrs-col{text-align:right}.day-row{display:grid;grid-template-columns:36px 1fr 1fr 42px;gap:.35rem;align-items:center;padding:.3rem 0;border-bottom:1px solid rgba(228,225,236,.5)}.day-row:last-child{border-bottom:none}.day-label{font-size:.78rem;font-weight:700;color:var(--text-mid)}.day-row input[type=time]{width:100%;padding:.35rem .4rem;background:var(--bg);border:1.5px solid var(--border);border-radius:8px;font-family:inherit;font-size:.75rem;color:var(--text);outline:none;transition:border-color .15s;text-align:center}.day-row input[type=time]:focus{border-color:var(--rose)}.day-hours{font-size:.78rem;font-weight:700;text-align:right;font-family:Space Grotesk,monospace;color:var(--text)}.day-hours.under{color:var(--coral)}.day-hours.over{color:var(--mint)}.results-panel{display:flex;flex-direction:column;gap:1rem}.result-hero{background:var(--card);border:2px solid var(--border);border-radius:14px;padding:1.75rem;text-align:center;transition:border-color .3s,background .3s}.result-hero.s-green{border-color:#10b981;background:#f0fdf8}.result-hero.s-amber{border-color:#f59e0b;background:#fffbeb}.result-hero.s-red{border-color:#ef4444;background:#fef2f2}.result-label{font-size:.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--text-soft);margin-bottom:.5rem}.result-value{font-size:clamp(2.4rem,6vw,3.25rem);font-weight:800;letter-spacing:-.04em;line-height:1;margin-bottom:.35rem;font-family:Space Grotesk,monospace}.result-hero.s-green .result-value{color:#10b981}.result-hero.s-amber .result-value{color:#f59e0b}.result-hero.s-red .result-value{color:#ef4444}.result-sub{font-size:.88rem;color:var(--text-mid);line-height:1.5}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem}.stat-card{background:var(--card);border:1.5px solid var(--border);border-radius:10px;padding:1rem;text-align:center}.stat-num{font-size:1.45rem;font-weight:800;line-height:1;margin-bottom:.2rem;font-family:Space Grotesk,monospace}.stat-num.s-rose{color:var(--rose)}.stat-num.s-amber{color:var(--amber)}.stat-num.s-primary{color:var(--primary)}.stat-label{font-size:.7rem;color:var(--text-soft);font-weight:500}.impairment-card{background:var(--card);border:1.5px solid var(--border);border-radius:14px;padding:1.25rem}.impairment-card h3{font-size:.88rem;font-weight:700;margin-bottom:.6rem}.impairment-level{font-size:1rem;font-weight:700;margin-bottom:.85rem;color:var(--text)}.bac-meter-wrap{margin-bottom:.65rem}.bac-meter-track{position:relative;height:10px;border-radius:5px;overflow:visible;background:linear-gradient(to right,#10b981,#f59e0b 40%,#ef4444 75%,#991b1b);margin-bottom:.3rem}.bac-meter-fill{position:absolute;left:0;top:0;height:100%;border-radius:5px;background:transparent}.bac-meter-marker{position:absolute;top:50%;transform:translate(-50%,-50%);width:18px;height:18px;border-radius:50%;background:#fff;border:3px solid #1e1b2e;box-shadow:0 1px 6px #0003;transition:left .4s ease;left:0%}.bac-meter-labels{display:flex;justify-content:space-between;font-size:.62rem;color:var(--text-soft);font-weight:600;text-transform:uppercase;letter-spacing:.03em}.impairment-comparison{font-size:.82rem;color:var(--text-mid);line-height:1.55;padding:.65rem .85rem;background:var(--bg-tint);border-radius:8px;margin-top:.5rem;border-left:3px solid var(--rose)}.breakdown-card{background:var(--card);border:1.5px solid var(--border);border-radius:14px;padding:1.25rem}.breakdown-card h3{font-size:.88rem;font-weight:700;margin-bottom:.85rem}.bar-chart{display:flex;flex-direction:column;gap:.55rem}.bar-row{display:grid;grid-template-columns:32px 1fr 48px;gap:.5rem;align-items:center}.bar-day{font-size:.72rem;font-weight:700;color:var(--text-mid)}.bar-track{position:relative;height:22px;background:var(--bg);border-radius:5px;overflow:hidden}.bar-need-line{position:absolute;top:0;bottom:0;width:2px;background:#0000001f}.bar-actual{height:100%;border-radius:5px;transition:width .4s ease}.bar-actual.under{background:var(--coral)}.bar-actual.over{background:var(--mint)}.bar-actual.met{background:#10b981}.bar-hrs{font-size:.72rem;font-weight:700;color:var(--text-mid);font-family:Space Grotesk,monospace;text-align:right}.bar-legend{display:flex;align-items:center;font-size:.72rem;color:var(--text-soft);font-weight:500;margin-top:.75rem}.legend-dot{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:.35rem}.legend-dot-sleep{background:var(--coral)}.legend-dot-need{background:#0000001f;width:3px;height:14px;border-radius:1px}.science-section{max-width:920px;margin:0 auto;padding:0 2rem 3rem}.science-card{background:var(--bg-tint);border:1.5px solid var(--border);border-radius:14px;padding:2rem}.science-card h2{font-size:1.25rem;font-weight:800;letter-spacing:-.02em;margin-bottom:.75rem}.science-card p{font-size:.88rem;color:var(--text-mid);line-height:1.65;margin-bottom:.85rem}.formula-box{background:#1e1b2e;color:#edeaff;border-radius:10px;padding:1rem 1.25rem;font-family:Space Grotesk,monospace;font-size:.92rem;margin:1rem 0;text-align:center}.formula-box .formula-main{font-size:1.1rem;font-weight:700;margin-bottom:.25rem}.formula-box .formula-desc{font-size:.75rem;color:#a8a3be}.citation{font-size:.78rem;color:var(--text-soft);line-height:1.5;padding-left:.85rem;border-left:2px solid var(--border)}.citation em{color:var(--text-mid)}@media(max-width:768px){.calc-header{padding:1rem 1.25rem 0}.calc-layout{grid-template-columns:1fr;padding:1.25rem}.input-panel{position:static}.stat-grid{grid-template-columns:1fr 1fr 1fr}.science-section{padding:0 1.25rem 2rem}}@media(max-width:480px){.stat-grid{grid-template-columns:1fr}.day-log-header,.day-row{grid-template-columns:32px 1fr 1fr 38px}}
