
:root{--gold:#D4A017;--gold-hi:#F2C14E;--gold-ink:#8A6200}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--gold-ink:#F2C14E}}
:root[data-theme="dark"]{--gold-ink:#F2C14E}


.goh-j{display:grid;gap:18px}
.goh-pane{display:grid;gap:14px}
.goh-steps li{font-size:12.5px}
.goh-j .goh-h,.gs .gs-h{margin:0;font:700 21px/1.3 var(--body);letter-spacing:0;color:var(--ink);text-transform:none}
.goh-j .goh-h:focus,.goh-done-h:focus,.gs-day:focus{outline:none}
.goh-j .goh-h3{margin:6px 0 0;font:700 17px/1.3 var(--body);color:var(--ink);letter-spacing:0;text-transform:none}
.goh-lbl{display:block;font-weight:700;font-size:15px;margin:4px 0 6px}
.goh-cal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding-top:8px}
@media (min-width:720px){.goh-cal{grid-template-columns:repeat(6,minmax(0,1fr))}}
.goh-day{position:relative;display:grid;justify-items:center;gap:3px;padding:14px 4px 12px;border-radius:16px;border:1.5px solid var(--line-2);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;min-height:44px;transition:border-color .15s ease,transform .15s ease}
.goh-day:hover{border-color:var(--brand);transform:translateY(-1px)}
.goh-day .m{font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--gold-ink)}
.goh-day b{font:600 32px/1 var(--display);font-variant-numeric:tabular-nums}
.goh-day .t{font-size:12.5px;color:var(--muted);white-space:nowrap}
.goh-day .tag{position:absolute;top:-10px;left:50%;transform:translateX(-50%);white-space:nowrap;padding:2px 8px;border-radius:999px;background:var(--gold-hi);color:#10175A;font-size:11px;font-weight:700}
.goh-day[aria-checked="true"]{background:var(--brand);border-color:var(--brand);color:var(--on-brand);box-shadow:0 0 0 3px var(--tint-2)}
.goh-day[aria-checked="true"] .m,.goh-day[aria-checked="true"] .t{color:inherit;opacity:.92}
.goh-cal-file{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0;font-weight:700}
.goh-cal-file svg,.goh-addcal svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
.goh-cal-file svg{color:var(--brand-ink)}
.goh-cal-file a{display:inline-flex;align-items:center;min-height:44px;color:var(--link)}
.goh-nav{padding-top:4px}
.goh-sum .ln span:first-child{color:var(--muted)}
.goh-sum .ln span:last-child{white-space:normal}
.goh-j .pb-done{gap:12px}
.goh-done-h{margin:0;font:600 clamp(26px,5vw,36px)/1.15 var(--display);letter-spacing:-.01em;color:var(--ink);text-transform:none}
.goh-expect{list-style:none;margin:0;padding:0;display:grid;gap:8px;width:100%;max-width:560px}
.goh-expect li{padding:10px 14px;border-left:4px solid var(--gold);background:var(--tint);border-radius:0 12px 12px 0}


.goh-int{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(160px,100%),1fr));gap:10px}
.goh-intb{position:relative;display:grid;gap:2px;align-content:start;text-align:left;min-height:84px;padding:14px 44px 14px 14px;border-radius:16px;border:1.5px solid var(--line-2);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer}
.goh-intb:hover{border-color:var(--brand)}
.goh-intb b{font-size:16px}
.goh-intb small{font-size:14px;color:var(--muted);line-height:1.35}
.goh-tick{position:absolute;top:12px;right:12px;width:24px;height:24px;border-radius:50%;border:1.5px solid var(--line-2);display:grid;place-items:center}
.goh-tick svg{width:13px;height:13px;fill:none;stroke:var(--on-brand);stroke-width:3;stroke-linecap:round;stroke-linejoin:round;opacity:0}
.goh-intb[aria-pressed="true"]{border-color:var(--brand);background:var(--tint);box-shadow:0 0 0 1.5px var(--brand)}
.goh-intb[aria-pressed="true"] .goh-tick{background:var(--brand);border-color:var(--brand)}
.goh-intb[aria-pressed="true"] .goh-tick svg{opacity:1}


.gs{display:grid;gap:16px}
.gs-start{display:grid;gap:4px}
.gs-plans{display:grid;gap:10px}
@media (min-width:760px){.gs-plans{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}}
.gs-plan{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;align-items:start;text-align:left;padding:14px;border-radius:18px;border:1.5px solid var(--line);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer;box-shadow:var(--shadow);min-height:44px}
.gs-plan .pa-ic{grid-row:span 3;width:42px;height:42px;border-radius:12px}
.gs-plan b{font-size:17px;line-height:1.25}
.gs-plan small{font-size:14px;color:var(--muted);line-height:1.4}
.gs-meta{font-size:13px;font-weight:700;color:var(--gold-ink)}
.gs-plan:hover{border-color:var(--line-2)}
.gs-plan[aria-checked="true"]{border-color:var(--brand);background:var(--tint);box-shadow:0 0 0 1.5px var(--brand)}
.gs-plan[aria-checked="true"] .pa-ic{background:var(--brand);color:var(--on-brand)}
.gs-today{display:grid;gap:12px;border-top:4px solid var(--gold)}
.gs-today > *{margin:0!important}
.gs-top{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px}
.gs-streak{display:inline-flex;align-items:center;gap:6px;min-height:30px;padding:0 12px;border-radius:999px;background:var(--tint);color:var(--muted);font-size:14px;font-weight:700}
.gs-streak.on{background:var(--gold-hi);color:#10175A}
.gs-streak svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2;stroke-linejoin:round}
.gs .gs-day{margin:0;font:600 clamp(32px,6vw,44px)/1.05 var(--display);letter-spacing:-.01em;color:var(--ink);text-transform:none}
.gs-bar{height:10px;border-radius:5px;background:var(--line);overflow:hidden}
.gs-bar i{display:block;height:100%;min-width:4px;border-radius:5px;background:var(--brand);transition:width .35s ease}
.gs-reads{display:grid;gap:8px}
@media (min-width:600px){.gs-reads{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}
.gs-read{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;padding:12px 16px;border-radius:16px;background:var(--brand);color:var(--on-brand);text-decoration:none}
.gs-read:hover{background:var(--brand-ink)}
.gs-ref{font:600 24px/1.1 var(--display)}
.gs-go{display:inline-flex;align-items:center;gap:6px;font-weight:700;font-size:15px;white-space:nowrap}
.gs-go svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.gs-src{margin-top:-4px!important}
.gs-q{padding:14px 16px;border-left:4px solid var(--gold);background:var(--tint);border-radius:0 14px 14px 0;display:grid;gap:4px}
.gs-q p{margin:0}
.gs-q p:last-child{font-size:18px;line-height:1.5}
.gs-donechip{display:inline-flex;align-items:center;gap:8px;min-height:52px;padding:0 16px;border-radius:14px;background:var(--tint);color:var(--brand-ink);font-weight:700}
.gs-donechip svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.gs-pn .pa-btn{min-height:44px;padding:0 16px;font-size:15px}
.gs-days{display:flex;flex-wrap:wrap;gap:6px;padding:4px 0 12px}
.gs-days button{width:44px;height:44px;border-radius:12px;border:1.5px solid var(--line-2);background:var(--surface);color:var(--ink);font:700 15px var(--body);cursor:pointer}
.gs-days button.ok{background:var(--tint-2);border-color:var(--brand);color:var(--brand-ink)}
.gs-days button[aria-current="step"]{background:var(--brand);border-color:var(--brand);color:var(--on-brand)}
.gs-reset{margin-bottom:12px}
.gs-dev{display:flex;gap:8px;align-items:center;margin:0}
.gs-dev svg,.gs-note svg{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.gs-note{border:1.5px dashed var(--gold);background:color-mix(in srgb,var(--gold-hi) 12%,var(--surface))}
.gs-empty{margin:0}

[hidden]{display:none!important}
