:root{color-scheme:dark;--bg:#101319;--panel:#181c24;--line:#2b323d;--text:#f4f5f8;--muted:#a2adbd;--accent:#ffb347;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text)}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer;color:var(--text);background:#222936;border:1px solid #3a4351;border-radius:7px;padding:9px 12px;font-size:.875rem}button:hover{background:#30394a}button:disabled{opacity:.45;cursor:default}a{color:inherit;text-decoration:none}header{min-height:76px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:16px 28px;gap:20px;background:#151921}.brand{display:flex;align-items:center;gap:11px;font-size:1.1rem;letter-spacing:.08em;font-weight:700}.brand b{color:#94a0b2;font-weight:400}header nav{display:flex;gap:6px;background:#0d1016;border:1px solid var(--line);border-radius:9px;padding:4px}nav a,nav span{padding:9px 17px;font-size:.875rem;border-radius:5px}nav [aria-current]{background:#33313a;color:#ffd09a}.sample-badge{color:#aeb9c9;font-size:.75rem;letter-spacing:.13em}.simulator{display:grid;grid-template-columns:225px minmax(370px,1fr) 320px;min-height:calc(100vh - 76px)}.screens,.controls{padding:24px 20px;background:var(--panel)}.screens{border-right:1px solid var(--line)}.controls{border-left:1px solid var(--line);max-height:calc(100vh - 76px);overflow:auto}h1,h2{font-size:1.125rem;margin:0 0 9px;font-weight:600}p{line-height:1.55}.muted{color:var(--muted)}.small{font-size:.8125rem}.screens>p{font-size:.875rem;margin:0 0 25px}#screen-list{display:flex;flex-direction:column;gap:6px}#screen-list button{display:flex;gap:12px;align-items:center;text-align:left;min-height:48px;border:1px solid transparent;background:transparent}#screen-list button[aria-pressed=true]{background:#332a23;border-color:#755438;color:#ffd09a}.screen-dot{height:8px;width:8px;border-radius:50%;background:var(--dot);flex-shrink:0}.layout-choice{margin:30px 0 22px;border-top:1px solid var(--line);padding-top:22px}.layout-choice p{color:var(--muted);font-size:.75rem}.preview{padding:25px 30px 20px;display:flex;flex-direction:column;align-items:center;background:radial-gradient(ellipse at 50% 43%,#222835 0,#13171f 68%)}.preview-heading{width:100%;display:flex;align-items:center;justify-content:space-between;min-height:58px}.eyebrow{font-size:.75rem;letter-spacing:.14em;color:var(--muted);display:block;margin-bottom:6px}.preview-heading h2{font-size:1.35rem}.watch-area{width:100%;flex:1;display:flex;align-items:center;justify-content:center;padding:30px 8px;min-height:385px}.watch-bezel{width:min(100%,500px);aspect-ratio:1;border-radius:50%;padding:12px;background:linear-gradient(125deg,#69707b,#242a34 24%,#12151a 62%,#515a67);box-shadow:0 0 0 1px #6d7681,0 0 0 6px #171b22,0 22px 65px #0009,inset 0 0 5px #000}.display{width:100%;height:100%;position:relative;border-radius:50%;overflow:hidden;background:#000;container-type:inline-size}canvas{width:100%;height:100%;display:block}.hotspots,.alternate{position:absolute;inset:0}.hotspots{pointer-events:none}.hotspot{position:absolute;pointer-events:auto;padding:0;border:0;border-radius:8px;background:transparent;color:transparent;min-height:0}.hotspot:hover,.hotspot:focus-visible,.hotspots.reveal .hotspot{border:1px solid #ffcf93;background:#ffb34718}.alternate{background:#000;padding:12% 12% 14%;overflow-y:auto;scrollbar-width:none;text-align:center}.alternate::-webkit-scrollbar{display:none}.alternate h3{font-size:5.4cqw;font-weight:500;margin:0 0 3cqw;color:#bbc5d3}.alternate .big{font-variant-numeric:tabular-nums;font-size:18cqw;font-weight:550;line-height:1.15;letter-spacing:-.035em}.alternate .unit{font-size:4cqw;color:#a8b3c4;letter-spacing:0;margin-left:1cqw}.alternate .icon{width:8cqw;height:8cqw;vertical-align:middle;margin-right:2cqw}.alternate .metrics{display:grid;grid-template-columns:1fr 1fr;gap:2cqw;margin-top:4cqw}.metrics>div{border-top:1px solid #29313c;padding:2.5cqw 0}.metrics strong{display:block;font-size:6cqw;font-weight:500}.metrics span,.alternate .sub{font-size:3.5cqw;color:#a8b3c4}.alternate svg{display:block;width:100%;margin-top:3cqw}.screen-description{max-width:510px;text-align:center;min-height:3em;font-size:.875rem;color:#b7c2d3;margin:12px 0 17px}.preview-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;justify-content:center}.preview-actions label{font-size:.875rem;color:#b7c2d3}.footnote{font-size:.75rem;letter-spacing:.13em;color:#788597;margin-top:27px}label{display:flex;flex-direction:column;gap:7px;font-size:.875rem;color:#c4cddd;margin:13px 0}select,input:not([type=checkbox]){width:100%;border:1px solid #3b4453;background:#10151e;color:#eef2f8;padding:9px 8px;border-radius:5px;min-height:39px}input[type=checkbox]{accent-color:var(--accent);width:16px;height:16px;margin:0;vertical-align:middle}.check{display:flex;flex-direction:row;align-items:center;gap:9px;line-height:1.4}.input-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 11px}.controls>h2{margin-bottom:22px}.controls details{border-top:1px solid var(--line);padding:16px 0}.controls summary{cursor:pointer;font-size:.9375rem;font-weight:500}.controls summary::marker{color:#818fa2}.controls details>p{margin-bottom:0}.controls output{display:block;font-size:.9375rem;padding:13px 0;color:#ffcb8f}.controls #calorie-details{width:100%}.presets{display:flex;flex-wrap:wrap;gap:6px;margin:15px 0}.presets button{font-size:.8125rem;flex:1}.reset{width:100%;margin-top:12px}.menu-row{display:block;width:100%;border:0;border-bottom:1px solid #29313d;border-radius:0;background:transparent;text-align:left;padding:3cqw 1cqw;font-size:4.5cqw}.menu-row small{display:block;color:#9ba9ba;font-size:3.3cqw;margin-top:1cqw}.menu-row.selected{color:#ffb347}.detail-row{font-size:3.8cqw;text-align:left;border-bottom:1px solid #29313d;padding:2.5cqw 0}.detail-row strong{display:block;font-size:4.6cqw;font-weight:500;margin-top:1cqw;color:#ffbf7b}.alternate .reference{font-size:3.4cqw;line-height:1.5;padding:3cqw;background:#171d26;border-radius:2cqw;text-align:left;margin-top:3cqw}.alternate .reference strong{color:#fff}.color-pair{display:grid;grid-template-columns:1fr 90px;gap:8px}.color-pair label{margin-bottom:0}#error{padding:15px;border:1px solid #d77963;border-radius:8px;color:#ffbaaa}[hidden]{display:none!important}
@media(min-width:1450px){.simulator{grid-template-columns:250px minmax(470px,1fr) 350px}.watch-bezel{width:min(100%,555px)}}
@media(max-width:1100px){.simulator{grid-template-columns:185px minmax(320px,1fr) 275px}.screens,.controls{padding:23px 14px}.preview{padding:24px 20px}.watch-area{padding:28px 0;min-height:325px}.watch-bezel{padding:9px}.sample-badge{display:none}}
@media(max-width:880px){.simulator{grid-template-columns:180px minmax(310px,1fr)}.controls{grid-column:1/-1;max-height:none;display:grid;grid-template-columns:1fr 1fr;gap:0 24px;border-top:1px solid var(--line)}.controls>h2{grid-column:1/-1}.preview{min-height:660px}.watch-bezel{width:min(100%,430px)}}
@media(max-width:570px){header{padding:14px 16px;gap:12px;flex-wrap:wrap}.brand{font-size:.95rem}header nav{width:100%}nav a,nav span{flex:1;text-align:center}.simulator{display:flex;flex-direction:column}.screens{padding:18px 16px;border-right:0}.screens h1,.screens>p,.layout-choice~p{display:none}#screen-list{display:grid;grid-template-columns:repeat(4,1fr);gap:3px}#screen-list button{font-size:.75rem;padding:8px 6px;min-height:44px;justify-content:center}.screen-dot{display:none}.layout-choice{margin:12px 0 0;padding:0;border:0}.layout-choice label,.layout-choice p{display:none}.preview{padding:20px 23px;min-height:530px}.watch-area{min-height:290px;padding:22px 3px}.preview-heading{min-height:46px}.watch-bezel{width:min(100%,365px)}.preview-heading h2{font-size:1.15rem}.screen-description{font-size:.875rem}.controls{display:block;padding:22px}.footnote{margin-bottom:0}.screens .layout-choice select{font-size:.8125rem}.alternate{padding-bottom:18%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.alternate .big{font-size:16cqw}.alternate .metrics{margin-top:2cqw}.metrics>div{padding:1.5cqw 0}.alternate .metrics span{font-size:3.3cqw}.screen-description{max-width:530px}

/* The daily and weekly forecasts share the circle's safe central area. */
.alternate.weather-screen{padding:10% 9% 12%;overflow:hidden}
.weather-forecast{font-variant-numeric:tabular-nums;text-align:left}
.weather-forecast h3{display:flex;align-items:center;justify-content:space-between;color:#8fd8ff;font-size:3.4cqw;letter-spacing:.08em;line-height:1.25;font-weight:600;margin:0 0 1cqw}
.weather-forecast h3>span{font-size:2.7cqw;font-weight:400;letter-spacing:.02em;color:#8d9aad}
.forecast-today>h3{margin:0 8cqw 1.4cqw}
.today-overview{display:flex;align-items:center;justify-content:center;gap:5cqw}
.today-temperature{display:flex;align-items:center;gap:1.5cqw}
.today-temperature>.forecast-icon{width:10cqw;height:10cqw}
.today-temperature>strong{font-size:15cqw;line-height:1.05;font-weight:550;letter-spacing:-.055em;color:#f4f7fc}
.today-summary>span{display:block;font-size:3.6cqw;color:#e3e9f4;line-height:1.5}
.today-summary>div{font-size:4.5cqw;line-height:1.25;white-space:nowrap}
.today-summary b{font-weight:550}
.today-summary small{font-size:2.7cqw;color:#8c99ab;display:block;line-height:1.5}
.range-separator{color:#657083}.forecast-high{color:#ffc482}.forecast-low{color:#8cc9f5}
.today-conditions{display:flex;justify-content:center;gap:5cqw;margin:1.8cqw 0 2cqw;color:#8393a8;font-size:2.8cqw;line-height:1.5;letter-spacing:.025em}
.today-conditions b{font-size:3.2cqw;font-weight:500;color:#c7d6e8;margin-left:.6cqw}
.hourly-forecast{display:grid;grid-template-columns:repeat(4,1fr);gap:1cqw;padding:2cqw 3cqw 2.5cqw;background:#111c2c;border:1px solid #213349;border-radius:3cqw}
.forecast-hour{display:flex;flex-direction:column;align-items:center;gap:1cqw}
.forecast-hour time{font-size:3cqw;color:#a8bad1;line-height:1.25}
.forecast-icon{display:block;object-fit:contain;width:5.5cqw;height:5.5cqw}
.forecast-hour strong{font-size:3.8cqw;font-weight:550;line-height:1.1;color:#edf4ff}
.forecast-unavailable{display:flex;align-items:center;justify-content:center;width:5.5cqw;height:5.5cqw;font-size:4cqw;color:#5d6d84}
.today-temperature>.forecast-unavailable{width:10cqw;height:10cqw;font-size:7cqw}
.forecast-week{margin:3cqw 2cqw 0;padding-top:2.4cqw;border-top:1px solid #304052}
.weather-forecast .forecast-week h3{font-size:3cqw;margin:0 1cqw 2cqw}
.forecast-week h3 i{font-style:normal;font-size:2.5cqw}
.daily-forecast{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.3cqw}
.forecast-day{display:flex;flex-direction:column;align-items:center;gap:.9cqw;border-radius:2cqw;padding:1cqw 0 1.5cqw;line-height:1.15}
.forecast-day>span:first-child{font-size:2.8cqw;color:#a8b6ca;font-weight:500}
.forecast-day .forecast-icon{width:5.3cqw;height:5.3cqw;margin:.5cqw 0}
.forecast-day>strong{font-size:3.6cqw;font-weight:550}
.forecast-day>.forecast-low{font-size:3.3cqw}
.forecast-current-day{background:#152536;box-shadow:inset 0 0 0 1px #304f6c}
.forecast-day.forecast-current-day>span:first-child{color:#d3eaff}

/* Fit both forecast sections, including outer weekday values, within the circle. */
.forecast-today>h3{margin-left:12cqw;margin-right:12cqw}
.today-temperature>strong{font-size:13cqw}
.today-conditions{margin:1cqw 0}
.hourly-forecast{padding:1.5cqw 3cqw 1.8cqw}
.forecast-hour{gap:.6cqw}
.forecast-week{margin:2cqw 4cqw 0;padding-top:1.8cqw}
.weather-forecast .forecast-week h3{margin-bottom:1.6cqw}
.forecast-day{padding:.6cqw 0 1cqw}
[data-screen-part]{transform-origin:center;will-change:transform}
.alternate.calories-screen{padding:12% 13% 14%;overflow:hidden}
.calories-dashboard{font-variant-numeric:tabular-nums}
.calories-dashboard>h3{display:flex;align-items:center;justify-content:center;gap:3cqw;font-size:3.1cqw;font-weight:600;letter-spacing:.08em;color:#ffbd78;margin:0 0 2cqw;line-height:1.3}
.calories-dashboard>h3>span{font-size:2.7cqw;color:#8c98aa;letter-spacing:.03em}
.calories-hero>div{display:flex;align-items:center;justify-content:center;gap:2cqw;line-height:1.1}
.calories-hero img{width:8cqw;height:8cqw}
.calories-hero strong{font-size:15cqw;font-weight:550;letter-spacing:-.045em}
.calories-hero>span{display:block;margin:1cqw 0 0;color:#ffbf79;font-size:3.7cqw}
.calories-hero b{font-size:3cqw;font-weight:400;color:#8e9aae}
.calories-breakdown{margin-top:3cqw;padding:2.6cqw 4cqw;background:#1b1714;border:1px solid #3d2e21;border-radius:3cqw}
.calorie-split{display:flex;justify-content:space-between;text-align:left;gap:2cqw}
.calorie-split>span{font-size:2.7cqw;color:#a89b92;letter-spacing:.04em;line-height:1.2}
.calorie-split>span:last-child{text-align:right}
.calorie-split strong{display:block;font-size:4.4cqw;font-weight:500;color:#f1eae4;letter-spacing:0;margin-top:1cqw;line-height:1.25}
.calorie-split small{font-size:2.5cqw;color:#9a9088;font-weight:400}
.calorie-ratio{height:1cqw;overflow:hidden;background:#46556c;border-radius:1cqw;margin-top:2cqw}
.calorie-ratio>span{display:block;height:100%;background:linear-gradient(90deg,#ffc378,#ef782f);border-radius:1cqw}
.calories-history{margin:3.5cqw 1cqw 0;padding-top:2cqw;border-top:1px solid #30333b}
.calories-history h4{font-size:3cqw;letter-spacing:.055em;font-weight:600;line-height:1.3;margin:0 0 4.8cqw;text-align:left;display:flex;justify-content:space-between;color:#cbd4e1}
.calories-history h4>span{font-size:2.7cqw;letter-spacing:0;color:#8390a3;font-weight:400}
.calorie-bars{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:1.5cqw}
.calorie-column{height:16cqw;display:flex;align-items:flex-end;border-bottom:1px solid #39404a}
.calorie-bar{position:relative;width:100%;height:var(--bar-height);min-height:1px;background:linear-gradient(0deg,#6c4129,#d79559);border-radius:1.2cqw 1.2cqw 0 0}
.calorie-today .calorie-bar{background:linear-gradient(0deg,#e86820,#ffc681);box-shadow:0 0 1.8cqw #ff9b3920}
.calorie-bar-value{position:absolute;left:50%;bottom:calc(100% + 1.1cqw);transform:translateX(-50%);font-size:2.75cqw;color:#bbb5b0;line-height:1;white-space:nowrap}
.calorie-today .calorie-bar-value{color:#ffd39e;font-weight:600}
.calorie-day-label{font-size:2.65cqw;color:#8190a4;display:block;margin-top:1.6cqw;line-height:1.2}
.calorie-today .calorie-day-label{color:#ffbb70;font-weight:600}
.screen-part-control{min-width:0;margin:16px 0;padding:12px 10px 3px;border:1px solid #384254;border-radius:7px}
.screen-part-control legend{font-size:.875rem;color:#dce5f2;padding:0 5px}
.part-adjust{display:grid;grid-template-columns:1fr 72px;align-items:center;gap:4px 8px;margin-bottom:12px}
.part-adjust label{margin:0;font-size:.8125rem}.part-adjust input[type=number]{padding:5px 7px;min-height:34px;font-size:.875rem}
.part-adjust input[type=range]{grid-column:1/-1;min-height:22px;padding:0;border:0;accent-color:#ffb347;background:transparent}
.screen-layout-actions{display:flex;flex-wrap:wrap;gap:8px}.screen-layout-actions button{flex:1;font-size:.8125rem}

.calories-hero strong{font-size:13cqw}
.calories-breakdown{margin-top:2cqw;padding:2cqw 4cqw}
.calorie-split>span{font-size:2.6cqw}
.calorie-split strong{font-size:3.8cqw;margin-top:.6cqw}
.calorie-ratio{height:.7cqw;margin-top:1.2cqw}
.calories-history{margin:2cqw 3cqw 0;padding-top:1.4cqw}
.calorie-column{height:14cqw}

.build-primary{background:#ffb347;color:#21150a;border-color:#ffb347;font-weight:650;white-space:nowrap}.build-primary:hover{background:#ffc775}.build-panel{margin:20px 28px;padding:22px 24px;border:1px solid #715338;border-radius:12px;background:linear-gradient(125deg,#282018,#181d26);display:grid;grid-template-columns:1fr 1fr;gap:12px 28px}.build-panel h2{margin:0 0 10px}.build-panel p{font-size:.875rem;line-height:1.5;margin:0;color:#c4cddd}.build-panel #build-status{color:#ffcb8f}.build-panel #build-status[data-state=failed]{color:#ffaaa1}.build-panel progress{width:100%;height:7px;margin-top:12px;accent-color:#ffb347}.build-downloads{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:12px 20px}.build-downloads:empty{display:none}.build-artifact{border:1px solid #7a5b3c;border-radius:8px;padding:14px 16px;background:#32251a}.build-artifact a{font-weight:650;color:#ffd49e;display:block}.build-downloads small{display:block;color:#a7b3c4;font-size:.75rem;margin-top:6px}.build-record a{font-size:.8125rem;text-decoration:underline;text-underline-offset:3px}.build-panel .build-help{grid-column:1/-1;font-size:.75rem;color:#9daabc}.build-record small{display:none}@media(max-width:570px){.build-panel{margin:14px 16px;padding:18px;grid-template-columns:1fr}.build-downloads{grid-template-columns:1fr}.build-primary{width:100%}}

.latest-download{display:inline-flex;align-items:center;justify-content:center;padding:9px 12px;border:1px solid #ffb347;border-radius:7px;background:#ffb347;color:#21150a;font-size:.875rem;font-weight:650;white-space:nowrap}.latest-download:hover{background:#ffc775}
header{flex-wrap:wrap}.build-primary{background:#30251b;border-color:#96704a;color:#ffd09a}.build-primary:hover{background:#473222}
@media(max-width:570px){header .latest-download{width:100%}}
