:root {
  color-scheme: light;
  --cp-bg: #f7f4ef;
  --cp-bg-elevated: #fcfbf8;
  --cp-surface: #ffffff;
  --cp-surface-soft: #f5f5f5;
  --cp-border: #dedede;
  --cp-border-strong: #919191;
  --cp-text: #242424;
  --cp-text-muted: #5c5c5c;
  --cp-text-soft: #6f6f6f;
  --cp-accent: #b11f4b;
  --cp-accent-hover: #9a1a41;
  --cp-accent-soft: rgba(177, 31, 75, 0.08);
  --cp-accent-fg: #ffffff;
  --cp-success: #16a34a;
  --cp-danger: #dc2626;
  --cp-warning: #f59e0b;
  --cp-link: #0078d4;
  --cp-shadow: 0 18px 48px rgba(0, 0, 0, 0.12);
  --cp-overlay: rgba(255, 255, 255, 0.8);
  --cp-panel: rgba(255, 255, 255, 0.86);
  --cp-panel-strong: rgba(255, 255, 255, 0.96);
  --cp-sheen: rgba(255, 255, 255, 0.55);
  --cp-highlight: rgba(177, 31, 75, 0.12);
}
html[data-theme="dark"] {
  color-scheme: dark;
  --cp-bg: #3d3b3a;
  --cp-bg-elevated: #343231;
  --cp-surface: #292929;
  --cp-surface-soft: #2e2e2e;
  --cp-border: #474747;
  --cp-border-strong: #5f5f5f;
  --cp-text: #dedede;
  --cp-text-muted: #919191;
  --cp-text-soft: #b0b0b0;
  --cp-accent: #fd8ea1;
  --cp-accent-hover: #fb7b91;
  --cp-accent-soft: rgba(253, 142, 161, 0.14);
  --cp-accent-fg: #1a1a1a;
  --cp-success: #4ade80;
  --cp-danger: #f87171;
  --cp-warning: #fbbf24;
  --cp-link: #4da6ff;
  --cp-shadow: 0 18px 48px rgba(0, 0, 0, 0.32);
  --cp-overlay: rgba(41, 41, 41, 0.88);
  --cp-panel: rgba(41, 41, 41, 0.72);
  --cp-panel-strong: rgba(41, 41, 41, 0.96);
  --cp-sheen: rgba(255, 255, 255, 0.04);
  --cp-highlight: rgba(253, 142, 161, 0.12);
}
.contributor-page{padding:40px 0 64px;background:var(--cp-bg);color:var(--cp-text);font-family:"Segoe UI",Aptos,Calibri,-apple-system,BlinkMacSystemFont,sans-serif}
.contributor-wrap{max-width:1200px}
.contributor-page h1,.contributor-page h2,.contributor-page h3{color:var(--cp-text);font-family:inherit;line-height:1.25}
.contributor-page h1{font-size:clamp(1.8rem,4vw,2.6rem);margin:24px 0 16px}
.contributor-intro{max-width:74ch;color:var(--cp-text-soft)}
.contributor-page a{color:var(--cp-link)}
#contributor-status{padding:16px;border-left:4px solid var(--cp-accent);background:var(--cp-surface);overflow-wrap:anywhere;scroll-margin-top:100px}
#contributor-status[data-error="true"]{border-color:var(--cp-danger)}
.contributor-page [hidden]{display:none!important}
.contributor-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin:32px 0 16px}
.contributor-layout{display:grid;grid-template-columns:minmax(240px,1fr) minmax(0,2fr);gap:24px;align-items:start}
.contributor-editor,#contributor-gate{padding:24px;background:var(--cp-surface);border:1px solid var(--cp-border);border-radius:16px}
.contributor-editor fieldset{min-width:0;border:0;padding:0;margin:0}
.contributor-editor legend{margin-bottom:16px;color:var(--cp-text-muted)}
.contributor-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.contributor-form-grid label{display:grid;gap:8px;font-weight:600}
.contributor-form-grid .full{grid-column:1/-1}
.contributor-form-grid input,.contributor-form-grid textarea,.contributor-form-grid select{box-sizing:border-box;width:100%;min-height:44px;padding:12px;border:1px solid var(--cp-border-strong);border-radius:.625rem;color:var(--cp-text);background:var(--cp-surface);font:inherit}
.contributor-check{display:flex;gap:12px;align-items:flex-start;margin:24px 0;line-height:1.5}
.contributor-check input{flex:none;width:24px;height:24px;accent-color:var(--cp-accent)}
.contributor-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.contributor-actions button,.contributor-actions a,#contributor-list button{min-height:44px;padding:10px 16px;border:1px solid var(--cp-border-strong);border-radius:.625rem;background:var(--cp-surface);color:var(--cp-text);font:inherit;cursor:pointer;text-decoration:none}
.contributor-actions .contributor-primary{background:var(--cp-accent);border-color:var(--cp-accent);color:var(--cp-accent-fg)}
.contributor-page :focus-visible{outline:3px solid var(--cp-accent);outline-offset:3px}
.contributor-page details{margin-top:24px;padding:16px;border:1px solid var(--cp-border);border-radius:.625rem}
.contributor-page summary{cursor:pointer;min-height:44px;font-weight:700}
#contributor-list,#contributor-profile-list{display:grid;gap:12px}
#contributor-list button,#contributor-profile-list button{text-align:left;padding:16px;overflow-wrap:anywhere;min-height:44px;border:1px solid var(--cp-border-strong);border-radius:.625rem;background:var(--cp-surface);color:var(--cp-text);font:inherit;cursor:pointer}
#contributor-list button[aria-pressed="true"],#contributor-profile-list button[aria-pressed="true"]{border:2px solid var(--cp-accent)}
#contributor-list strong,#contributor-list span,#contributor-profile-list strong,#contributor-profile-list span{display:block}
#contributor-list span,#contributor-profile-list span{margin-top:8px;color:var(--cp-text-muted)}
#contributor-profile-panel{margin-top:24px}
.contributor-profile-controls{margin-top:16px}
#contributor-enroll input,#contributor-issued-code{box-sizing:border-box;width:100%;min-height:44px;padding:12px;border:1px solid var(--cp-border-strong);border-radius:.625rem;background:var(--cp-surface);color:var(--cp-text);font:inherit;overflow-wrap:anywhere}
#contributor-issued-code{font-family:Consolas,"Courier New",Courier,monospace}
#contributor-invitation{margin-top:24px;padding:16px;border:2px solid var(--cp-accent);border-radius:.625rem}
.contributor-page button:disabled{opacity:.6;cursor:wait}
.contributor-event-layout{max-width:900px}
#contributor-views{margin:24px 0}
#contributor-views button[aria-pressed="true"]{background:var(--cp-accent);border-color:var(--cp-accent);color:var(--cp-accent-fg);font-weight:700}
.contributor-page .unsaved-change-status{color:var(--cp-text);font-weight:600;grid-column:1/-1}
.contributor-page{font-size:18px;line-height:1.6}
.contributor-actions button,.contributor-actions a,.contributor-form-grid input,.contributor-form-grid textarea,#contributor-list button,#contributor-profile-list button{min-height:52px}
.contributor-page .is-editing .contributor-list-actions{display:none}
.contributor-editor legend{color:var(--cp-text);font-size:1.15rem;font-weight:750}
.contributor-editor .contributor-review,.contributor-editor .contributor-publication{margin-top:24px;padding:20px;border:1px solid var(--cp-border);border-radius:.625rem}
#contributor-save-status{padding:16px;border-left:4px solid var(--cp-accent);background:var(--cp-surface-soft);overflow-wrap:anywhere}
#contributor-save-status[data-error="true"]{border-color:var(--cp-danger)}
#contributor-save-status:focus{outline:3px solid var(--cp-accent);outline-offset:3px}
@media(max-width:800px){.contributor-layout{grid-template-columns:1fr}.contributor-form-grid{grid-template-columns:1fr}.contributor-editor{padding:16px}}
@media(max-width:520px){.contributor-site{padding-bottom:92px}.contributor-site .site-utility-dock{left:max(8px,env(safe-area-inset-left));right:76px;bottom:max(16px,env(safe-area-inset-bottom));flex-direction:row;justify-content:space-around;gap:4px;padding:6px;border:1px solid var(--cp-border);border-radius:16px;background:var(--cp-surface)}}
