:root{--forest: #14302A;--cream: #F7F3EA;--sage: #E5ECDF;--gold: #C9A24B;--paper: #FDFBF6;--ink: #44554D;--ink-muted: #5A6A62;--gold-deep: #7A5C14;--gold-soft: #E0BE6A;--forest-deep: #1D3F37;--forest-mid: #2E5A4E;--sage-deep: #C9D8CE;--on-forest: #F7F3EA;--line: #DDD5C0;--line-strong: #6F8077;--focus: #14302A;--status-ok-bg: #E5ECDF;--status-ok-ink: #2F6B4F;--status-attn-bg: #F5E6C0;--status-attn-ink: #7A5C14;--status-alert-bg: #F6E0D8;--status-alert-ink: #9A3B2A;--shadow-card: 0 1px 2px rgba(20,48,42,.06);--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 48px;--tap-min: 44px;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 20px;--radius-pill: 999px;--font-serif: "EB Garamond", Garamond, Georgia, serif;--font-sans: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif}.t-display{font-family:var(--font-serif);font-size:32px;line-height:36px;font-weight:500}.t-h1{font-family:var(--font-serif);font-size:28px;line-height:34px;font-weight:500}.t-h2{font-family:var(--font-serif);font-size:22px;line-height:28px;font-weight:500}.t-h3{font-family:var(--font-serif);font-size:19px;line-height:26px;font-weight:600}.t-body{font-family:var(--font-sans);font-size:16px;line-height:24px;font-weight:400}.t-body-sm{font-family:var(--font-sans);font-size:14px;line-height:20px;font-weight:400}.t-label{font-family:var(--font-sans);font-size:14px;line-height:20px;font-weight:600}.t-caption{font-family:var(--font-sans);font-size:12px;line-height:16px;font-weight:500}.sh-i{width:20px;height:20px;flex:none;display:inline-block;vertical-align:middle}.sh-page{max-width:390px;margin:0 auto;display:flex;flex-direction:column;gap:var(--space-3);font-family:var(--font-sans);color:var(--ink)}.sh-page--wide{max-width:760px}.sh-card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-4);box-shadow:var(--shadow-card);display:flex;flex-direction:column;gap:var(--space-3)}.sh-card h3,.sh-card h2{margin:0;font-family:var(--font-serif);color:var(--forest);font-weight:500;font-size:22px;line-height:28px}.sh-card p{margin:0;font-size:16px;line-height:24px}.sh-muted{color:var(--ink-muted);font-size:14px;line-height:20px}.sh-cap{color:var(--ink-muted);font-size:12px;line-height:16px;font-weight:500}.sh-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.sh-dark :focus-visible{outline-color:var(--gold)}.sh-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--tap-min);padding:0 20px;border-radius:var(--radius-pill);border:1.5px solid transparent;font:600 14px/20px var(--font-sans);cursor:pointer;background:none;color:var(--forest)}.sh-btn--primary{background:var(--forest);color:var(--on-forest)}.sh-btn--secondary{border-color:var(--line-strong);background:var(--paper);color:var(--forest)}.sh-btn--quiet{padding:0 12px;text-decoration:underline;text-underline-offset:3px}.sh-btn--block{width:100%}.sh-btn[disabled]{background:var(--sage);color:var(--ink-muted);border-color:transparent;cursor:not-allowed;text-decoration:none}.sh-iconbtn{width:var(--tap-min);height:var(--tap-min);display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-pill);border:0;background:none;color:var(--forest);cursor:pointer}.sh-badge,.sh-tag{display:inline-flex;align-items:center;gap:var(--space-1);border-radius:var(--radius-pill);font:600 12px/16px var(--font-sans);padding:4px 10px 4px 8px;white-space:nowrap}.sh-badge .sh-i,.sh-tag .sh-i{width:14px;height:14px}.sh-badge--new{background:var(--gold);color:var(--forest)}.sh-badge--exp{background:var(--sage);color:var(--forest)}.sh-badge--vet{background:var(--forest);color:var(--on-forest)}.sh-tag--ok{background:var(--status-ok-bg);color:var(--status-ok-ink)}.sh-tag--attn{background:var(--status-attn-bg);color:var(--status-attn-ink)}.sh-tag--alert{background:var(--status-alert-bg);color:var(--status-alert-ink)}.sh-tag--soft{background:var(--sage);color:var(--forest)}.sh-flag{display:flex;gap:var(--space-2);align-items:flex-start;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--status-attn-bg);color:var(--status-attn-ink);font:500 14px/20px var(--font-sans)}.sh-flag .sh-i{margin-top:1px}.sh-flag strong{font-weight:700}.sh-tabs{display:flex;gap:var(--space-1);padding:var(--space-1);background:var(--sage);border-radius:var(--radius-pill)}.sh-tab{flex:1;min-height:var(--tap-min);border:0;border-radius:var(--radius-pill);background:none;color:var(--forest);font:600 14px/20px var(--font-sans);cursor:pointer}.sh-tab[aria-selected=true]{background:var(--forest);color:var(--on-forest)}.sh-dots{display:flex;justify-content:center;gap:var(--space-2)}.sh-dots i{width:8px;height:8px;border-radius:var(--radius-pill);border:1.5px solid var(--forest);display:block}.sh-dots i[aria-current=true]{background:var(--forest)}.sh-roster{display:flex;flex-direction:column}.sh-row{display:grid;grid-template-columns:56px 1fr;gap:var(--space-3);padding:var(--space-3) 0;border-top:1px solid var(--line)}.sh-row:first-child{border-top:0}.sh-date{font-family:var(--font-serif);color:var(--forest);font-size:19px;line-height:22px;font-weight:600}.sh-date small{display:block;font:500 12px/16px var(--font-sans);color:var(--ink-muted)}.sh-who{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.sh-who b{font-family:var(--font-serif);font-size:19px;line-height:26px;color:var(--forest);font-weight:600}.sh-role{font:600 12px/16px var(--font-sans);color:var(--ink-muted);text-transform:uppercase;letter-spacing:.06em}.sh-row .sh-flag{margin-top:var(--space-2)}.sh-row-actions{display:flex;gap:var(--space-2);margin-top:var(--space-2)}.sh-row--empty .sh-who b{color:var(--ink-muted);font-style:italic;font-weight:500}.sh-brief-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-2)}.sh-note{display:flex;gap:var(--space-2);align-items:center;color:var(--ink-muted);font-size:12px;line-height:16px;font-weight:500}.sh-note .sh-i{width:14px;height:14px}.sh-bubble{background:var(--sage);border-radius:var(--radius-sm);padding:var(--space-3);font-size:14px;line-height:20px;color:var(--forest)}.sh-spark{display:inline-flex;width:28px;height:28px;border-radius:var(--radius-pill);background:var(--gold);color:var(--forest);align-items:center;justify-content:center;flex:none}.sh-spark .sh-i{width:16px;height:16px}.sh-card--suggest{background:var(--sage);border-color:transparent;box-shadow:none}.sh-card--suggest .sh-bubble{background:var(--paper)}.sh-sugg-label{display:flex;align-items:center;gap:var(--space-2);font:600 12px/16px var(--font-sans);color:var(--forest);text-transform:uppercase;letter-spacing:.06em}.sh-tabbar{display:grid;grid-template-columns:repeat(5,1fr);background:var(--paper);border-top:1px solid var(--line);padding:var(--space-2) var(--space-1) var(--space-3);border-radius:var(--radius-lg) var(--radius-lg) 0 0}.sh-navitem{display:flex;flex-direction:column;align-items:center;gap:2px;min-height:var(--tap-min);padding:var(--space-1) 0;border:0;background:none;color:var(--ink-muted);font:500 12px/16px var(--font-sans);cursor:pointer}.sh-navitem .sh-i{width:24px;height:24px;padding:4px 16px;box-sizing:content-box;border-radius:var(--radius-pill)}.sh-navitem[aria-current=page]{color:var(--forest);font-weight:700}.sh-navitem[aria-current=page] .sh-i{background:var(--sage)}.sh-side{width:240px;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius-lg);padding:var(--space-4);display:flex;flex-direction:column;gap:var(--space-2)}.sh-side .sh-navitem{flex-direction:row;gap:var(--space-3);padding:0 var(--space-3);border-radius:var(--radius-pill);justify-content:flex-start;font:500 14px/20px var(--font-sans)}.sh-side .sh-navitem .sh-i{width:20px;height:20px;padding:0;background:none}.sh-side .sh-navitem[aria-current=page]{background:var(--sage)}.sh-wordmark{font-family:var(--font-serif);font-size:24px;line-height:28px;font-weight:600;color:var(--forest);padding:var(--space-1) var(--space-3) var(--space-3)}.sh-switcher{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);min-height:var(--tap-min);padding:0 var(--space-4);border-radius:var(--radius-pill);border:1.5px solid var(--line-strong);background:var(--paper);color:var(--forest);font:600 14px/20px var(--font-sans);cursor:pointer}.sh-mem{display:grid;grid-template-columns:1fr auto;gap:var(--space-1) var(--space-2);align-items:center;padding:var(--space-3) 0;border-top:1px solid var(--line)}.sh-mem:first-of-type{border-top:0}.sh-mem-text{font-size:16px;line-height:24px;color:var(--forest);font-weight:500}.sh-mem-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.sh-group{font-family:var(--font-serif);font-size:19px;line-height:26px;font-weight:600;color:var(--forest);margin:0}.sh-slots{display:flex;flex-wrap:wrap;gap:var(--space-2)}.sh-slot{display:inline-flex;flex-direction:column;align-items:flex-start;min-height:var(--tap-min);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);border:1.5px solid var(--line-strong);background:var(--paper);color:var(--forest);font:600 14px/20px var(--font-sans);cursor:pointer;text-align:left}.sh-slot small{font:500 12px/16px var(--font-sans);color:var(--ink-muted)}.sh-slot[aria-pressed=true]{background:var(--forest);color:var(--on-forest);border-color:var(--forest)}.sh-slot[aria-pressed=true] small{color:var(--on-forest)}.sh-notice{display:flex;gap:var(--space-3);align-items:flex-start;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:14px;line-height:20px}.sh-notice .sh-i{margin-top:0}.sh-notice--info{background:var(--sage);color:var(--forest)}.sh-notice--error{background:var(--status-alert-bg);color:var(--status-alert-ink)}.sh-notice strong{display:block;font-weight:700}.sh-notice .sh-btn{min-height:var(--tap-min)}.sh-notice--error .sh-btn{color:var(--status-alert-ink)}.sh-notice--error .sh-btn--secondary{border-color:var(--status-alert-ink)}.sh-state{text-align:center;padding:var(--space-6) var(--space-4);display:flex;flex-direction:column;align-items:center;gap:var(--space-3)}.sh-state h3{margin:0;font-family:var(--font-serif);font-weight:500;font-size:22px;line-height:28px;color:var(--forest)}.sh-state p{margin:0;font-size:14px;line-height:20px;color:var(--ink-muted);max-width:280px}.sh-state .sh-spark{width:48px;height:48px}.sh-state .sh-spark .sh-i{width:24px;height:24px}.sh-skel{height:14px;border-radius:var(--radius-sm);background:var(--sage)}@media(prefers-reduced-motion:no-preference){.sh-skel{animation:sh-pulse 1.6s ease-in-out infinite}}@keyframes sh-pulse{50%{opacity:.5}}.sh-cols{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);align-items:start}*{box-sizing:border-box}html,body{margin:0}body{background:var(--cream);color:var(--ink);font-family:var(--font-sans);font-size:16px;line-height:24px}a{color:var(--forest)}h1,h2,h3{color:var(--forest);margin:0;font-weight:500}p{margin:0}button{font-family:var(--font-sans)}a.sh-btn{text-decoration:none}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.page-head{display:flex;flex-direction:column;gap:var(--space-2)}.eyebrow{color:var(--ink-muted);font:600 14px/20px var(--font-sans)}.section{display:flex;flex-direction:column;gap:var(--space-3)}.section-title{font-family:var(--font-serif);font-size:22px;line-height:28px;color:var(--forest)}.stack{display:flex;flex-direction:column;gap:var(--space-3)}.row{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center}.avatar{display:inline-flex;align-items:center;justify-content:center;flex:none;width:36px;height:36px;border-radius:var(--radius-pill);background:var(--sage);color:var(--forest);font:600 12px/16px var(--font-sans)}.avatar--forest{background:var(--forest);color:var(--on-forest)}.sh-who .avatar{width:28px;height:28px}.card-link{color:var(--forest);font-weight:600}.error-text{color:var(--status-alert-ink);font-size:14px;line-height:20px}@media(min-width:1100px){.two-cols{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);align-items:start}}.sh-card>.sh-tag,.sh-card>.sh-badge,.sh-card>.sh-btn:not(.sh-btn--block),.sh-card>a.sh-btn{align-self:flex-start}
