:root{--sw-ink-green: #0e1310;--sw-signal: #137356;--sw-mint: #2fab88;--sw-tint: #e7f2ee;--sw-violet: #9747ff;--sw-aubergine: #2d2440;--sw-lav: #ece0fb;--sw-amber: #7a5406;--sw-amber-tint: #fbf3df;--sw-1a: #1a1a1a;--sw-2d: #2d2d2d;--sw-68: #686868;--sw-e6: #e6e6e6;--text: var(--sw-2d);--head: var(--sw-1a);--muted: var(--sw-68);--border: var(--sw-e6);--paper: #f7f7f4;--card: #ffffff;--accent: var(--sw-signal);--accent-fill: var(--sw-signal);--onaccent: #fff;--promptbg: #15221d;--promptline: #2d453c;--promptink: #c9ded5;--pbtnbg: #d8efe6;--pbtnink: #0e1310}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--text);font-family:Open Sans,Arial,sans-serif;line-height:1.5}a{color:var(--accent)}a:hover{color:var(--head)}:where(a,button,input,summary):focus-visible{outline:3px solid var(--accent);outline-offset:3px}.skip-link{position:absolute;left:12px;top:8px;transform:translateY(-160%);padding:8px 12px;background:var(--head);color:#fff;font-weight:700;text-decoration:none}.skip-link:focus{transform:none}.site-header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 24px;border-bottom:1px solid var(--border);background:var(--card)}.brand{font-weight:800;color:var(--head);text-decoration:none}.site-header nav{display:flex;gap:16px}.site-header nav a{color:var(--text);text-decoration:none;font-weight:600}.hub,.guide-page{width:min(1080px,calc(100% - 48px));margin:32px auto 80px}h1{color:var(--head);letter-spacing:-.02em;margin:0 0 12px}h2{color:var(--head);margin:36px 0 12px}.lede{max-width:62ch;color:var(--muted)}.eyebrow{margin:0 0 8px;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}.card-list,.week-grid{list-style:none;padding:0;display:grid;gap:12px}.card-list li,.week-grid li{padding:16px 18px;background:var(--card);border:1px solid var(--border)}.card-list a,.week-grid a{font-weight:700;color:var(--head);text-decoration:none}.card-list span,.week-grid small{display:block;color:var(--muted);font-size:13px}.week-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.week-grid .is-locked{color:var(--muted);background:#f1f1ee}.locked-note{padding:16px;background:var(--sw-amber-tint);color:var(--sw-amber)}.safety{padding:12px 14px;border-left:3px solid var(--sw-amber);background:var(--sw-amber-tint)}.downloads{font-size:14px}.limitations{color:var(--muted)}.guide-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.guide-meta dt{font-size:12px;color:var(--muted)}.guide-meta dd{margin:0;font-weight:700}.guide-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:28px;align-items:start}@media(max-width:840px){.guide-layout{grid-template-columns:1fr}}.provider-switcher{margin:28px 0}.switcher-label{font-weight:700;margin-bottom:8px}.provider-tabs{display:flex;flex-wrap:wrap;gap:8px}.provider-tabs button{display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:8px 14px;border:2px solid var(--border);background:var(--card);color:var(--text);font:inherit;font-weight:700;cursor:pointer}.provider-tabs button.is-selected{border-color:var(--accent);color:var(--accent)}.provider-tabs img{width:18px;height:18px}.prose :first-child{margin-top:0}.provider-block{border-left:3px solid var(--accent);padding-left:16px;margin:16px 0}.prompt-card{overflow:hidden;background:var(--promptbg);border:1px solid var(--promptline);margin:16px 0}.prompt-head{display:flex;justify-content:space-between;gap:12px;padding:12px 16px;color:var(--promptink);font-size:12px;font-weight:700}.prompt-head button{min-height:44px;padding:8px 14px;border:0;background:var(--pbtnbg);color:var(--pbtnink);font-weight:800;cursor:pointer}.prompt-card pre{margin:0;padding:16px;color:var(--promptink);white-space:pre-wrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}.guide-screenshot{margin:16px 0;background:var(--card);border:1px solid var(--border)}.screenshot-trigger{display:block;width:100%;padding:0;border:0;background:var(--sw-tint);cursor:zoom-in;position:relative}.screenshot-trigger img{display:block;width:100%;height:auto}.screenshot-zoom-hint{position:absolute;right:12px;bottom:12px;padding:4px 8px;background:var(--head);color:#fff;font-size:11px;font-weight:700}.guide-screenshot figcaption{display:grid;grid-template-columns:1fr auto;gap:4px 16px;padding:12px 16px}.guide-screenshot figcaption span{grid-column:1;color:var(--muted);font-size:13px}.guide-screenshot figcaption>button{grid-column:2;grid-row:1 / span 2;border:0;background:transparent;color:var(--accent);font-weight:800;cursor:zoom-in}.screenshot-lightbox{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:24px;background:#0e1310eb}.screenshot-lightbox-backdrop{position:absolute;inset:0;border:0;background:transparent;cursor:zoom-out}.screenshot-lightbox-panel{position:relative;z-index:1;max-width:min(1100px,96vw);background:#fff}.screenshot-lightbox-panel>img{display:block;max-width:100%;height:auto}.screenshot-lightbox-close{position:absolute;top:10px;right:10px;width:44px;height:44px;border:0;border-radius:50%;background:var(--head);color:#fff;font-size:24px;cursor:pointer}.screenshot-lightbox-caption{padding:12px 16px}.progress-tracker{position:sticky;top:16px;padding:16px;background:var(--card);border:1px solid var(--border)}.tracker-kicker{margin:0;font-size:12px;font-weight:800;text-transform:uppercase;color:var(--accent)}.tracker-count{margin:4px 0 12px;font-weight:800}.tracker-bar{height:8px;background:var(--border);margin-bottom:12px}.tracker-bar span{display:block;height:100%;background:var(--accent)}.tracker-list{list-style:none;padding:0;margin:0;display:grid;gap:8px}.tracker-list label{display:flex;gap:8px;align-items:flex-start}.tracker-list input{width:18px;height:18px;margin-top:3px}.tracker-note{color:var(--muted);font-size:12px}main.theme-chatgpt{--accent: #0b7a5f}main.theme-claude{--accent: #a5502f}main.theme-copilot{--accent: #3546c0}main.theme-gemini{--accent: #2b53c4}.artifact{color:var(--sw-violet);font-weight:700}@media print{.site-header,.progress-tracker,.provider-tabs button{break-inside:avoid}}
