/* Azure Mono native-template extensions; uses existing component tokens. */
.community-intro { margin:0 0 2.5rem; padding-block:1.5rem; border-block:1px solid var(--line); color:var(--secondary-text); }
.community-intro > p:first-child { margin-top:0; }
.community-intro > :last-child { margin-bottom:0; }
.community-section { margin-block:3rem; }
.community-next-link { margin-top:1.5rem; font-size:.85rem; }
.community-notice { padding:1rem 1.25rem; border:1px solid var(--line); border-radius:.65rem; background:var(--raised); color:var(--secondary-text); }
.teammate-row { display:grid; grid-template-columns:48px minmax(0,1fr) auto; gap:1.25rem; align-items:center; padding:1.5rem 0; border-bottom:1px solid var(--line); }
.teammate-row h3 { font-size:1rem; margin:0 0 .4rem; font-weight:550; overflow-wrap:anywhere; }
.teammate-row p { margin:.25rem 0; font-size:.85rem; overflow-wrap:anywhere; }
.teammate-row .button { display:inline-flex; align-items:center; gap:.5rem; }
.event-feedback-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2rem 3rem; margin-block:2rem 4rem; }
.feedback-question { min-width:0; border:0; border-top:1px solid var(--line); padding:1.5rem 0 0; margin:0; }
.feedback-question legend { padding-right:1rem; font-size:1rem; font-weight:550; }
.feedback-rating { display:flex; gap:.6rem; margin-top:1rem; }
.feedback-rating label { position:relative; cursor:pointer; }
.feedback-rating input { position:absolute; opacity:0; width:1px; height:1px; }
.feedback-rating span { display:grid; place-items:center; width:48px; height:48px; border:1px solid var(--input-border); border-radius:.5rem; color:var(--text); font-variant-numeric:tabular-nums; }
.feedback-rating input:checked + span { border-color:var(--accent); background:var(--accent-soft); }
.feedback-rating input:focus-visible + span { outline:2px solid var(--focus); outline-offset:3px; }
.feedback-comment { grid-column:1/-1; }
.feedback-comment label { display:block; font-size:1rem; font-weight:550; }
.feedback-comment textarea { width:100%; max-width:100%; resize:vertical; min-height:120px; padding:1rem; box-sizing:border-box; border:1px solid var(--input-border); border-radius:.65rem; background:var(--surface); color:var(--text); font:inherit; }
.event-feedback-form > .button { justify-self:start; }
.personal-records { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:2rem; margin:1.5rem 0 0; }
.personal-records > div { border-top:1px solid var(--line); padding-top:1.25rem; min-width:0; }
.personal-records dt { color:var(--muted); font-size:.8rem; }
.personal-records dd { margin:.65rem 0; font-size:1.8rem; font-weight:550; font-variant-numeric:tabular-nums; }
.personal-records p { margin:.4rem 0; font-size:.8rem; overflow-wrap:anywhere; }
.personal-records p.fine-print { font-size:.75rem; }
.season-list { margin-bottom:4rem; }
.season-policy { padding:1.5rem 0 2rem; border-top:1px solid var(--line); }
.season-policy h2 { font-size:1.2rem; }
.season-policy summary,.season-table summary { cursor:pointer; font-size:.85rem; min-height:32px; }
.season-table { min-width:860px; }
.season-table th,.season-table td { padding:1.25rem; vertical-align:top; }
.season-table small { display:block; color:var(--muted); font-size:.75rem; margin-top:.4rem; }
.season-contributions { list-style:none; margin:1rem 0 0; padding:0; }
.season-contributions li { margin-bottom:.75rem; }
.season-contributions span { display:block; color:var(--muted); font-size:.75rem; }
.season-calendar { padding:0; list-style:none; }
.season-calendar li { display:flex; flex-wrap:wrap; justify-content:space-between; gap:1rem; padding:1rem 0; border-bottom:1px solid var(--line); }
.season-calendar span { color:var(--muted); font-size:.85rem; }
@media(max-width:800px) { .event-feedback-form { grid-template-columns:minmax(0,1fr); gap:1.5rem; } .personal-records { grid-template-columns:minmax(0,1fr); gap:1rem; } }
@media(max-width:600px) { .teammate-row { grid-template-columns:40px minmax(0,1fr); gap:1rem; } .teammate-row > img { width:40px; height:40px; } .teammate-row > .button { grid-column:2; justify-self:start; max-width:100%; overflow-wrap:anywhere; } .feedback-rating { gap:.4rem; } .feedback-rating span { width:44px; height:44px; } }
.activity-timeline { margin-top:2rem; }
.activity-timeline summary { cursor:pointer; min-height:44px; font-size:.85rem; color:var(--secondary-text); }
.activity-timeline table { min-width:650px; }
.activity-timeline th,.activity-timeline td { padding:1rem; }

.event-aside .event-admin-link { margin-top:1.25rem; }
.teammate-board-layout { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:2.5rem; align-items:start; margin-bottom:3rem; }
.teammate-board-layout .community-section { margin-top:0; }
.teammate-board-layout .teammate-row { grid-template-columns:44px minmax(0,1fr); gap:1rem; }
.teammate-board-layout .teammate-row > .button { grid-column:2; justify-self:start; }
.teammate-details { margin:.6rem 0 0; }
.teammate-details div { display:flex; gap:.65rem; margin-top:.35rem; font-size:.8rem; line-height:1.6; }
.teammate-details dt { color:var(--muted); min-width:76px; }
.teammate-details dd { margin:0; color:var(--secondary-text); overflow-wrap:anywhere; }
.teammate-listing-panel,.teammate-invitation { border:1px solid var(--line) !important; background:var(--surface) !important; border-radius:var(--radius); padding:1.5rem !important; }
.teammate-listing-panel h2 { font-size:1.2rem; margin:0 0 .75rem; }
.teammate-listing-panel p,.teammate-invitation p { font-size:.85rem; color:var(--muted); line-height:1.7; }
.teammate-listing-form { display:grid; gap:1.2rem; }
.teammate-listing-form input,.teammate-listing-form textarea { width:100%; min-width:0; box-sizing:border-box; min-height:44px; padding:.7rem .85rem; border:1px solid var(--input-border); border-radius:8px; background:var(--bg); color:var(--text); font:inherit; font-size:.85rem; line-height:1.6; }
.teammate-listing-form textarea { min-height:112px; resize:vertical; }
.teammate-listing-form input:focus-visible,.teammate-listing-form textarea:focus-visible { outline:2px solid var(--focus); outline-offset:2px; }
.teammate-listing-form input::placeholder,.teammate-listing-form textarea::placeholder { color:var(--muted); opacity:1; }
.teammate-listing-form label { display:block; font-size:.85rem; margin-bottom:.5rem; }
.teammate-contact-summary { padding-block:.75rem; border-block:1px solid var(--line); }
.teammate-leave-form { margin-top:1rem; }
.teammate-invitation > p:last-child { margin-top:1.25rem; margin-bottom:0; }
@media(max-width:900px) { .teammate-board-layout { grid-template-columns:minmax(0,1fr); gap:2rem; } }
@media(max-width:600px) { .teammate-board-layout .teammate-row > .button { grid-column:1/-1; } .teammate-details div { display:block; } .teammate-details dt { margin-bottom:.15rem; } }
