﻿/* Community tools: readable choices, compact directories and explicit save actions. */
.community-flow{font-size:15px;line-height:1.55;color:#244640}.community-flow h3{font-size:18px;line-height:1.35;margin:0 0 12px}.community-flow .help{font-size:13px;line-height:1.55}.community-flow .field{font-size:14px;gap:8px;margin-bottom:18px}.community-flow input,.community-flow textarea{font-size:16px;min-width:0;max-width:100%;box-sizing:border-box}.community-flow .button{font-size:14px;min-height:44px;white-space:normal}.community-flow .wide{margin-top:16px}.flow-note{padding:16px 18px;background:#edf8f4;border:1px solid #d5ece3;border-radius:14px;margin:0 0 20px}.flow-note strong{display:block;color:#145847;font-size:15px}.flow-note p{margin:6px 0 0;font-size:14px;color:#486b60;line-height:1.6}.flow-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:20px}.flow-heading p{margin:0;flex:1;min-width:180px}.flow-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}.flow-actions>.button{flex:1;min-width:150px}.flow-explainer{margin:0 0 24px;padding:14px 16px;background:#f6f9fa;border-radius:12px;font-size:14px}.flow-explainer summary{cursor:pointer;font-weight:500}.flow-explainer ol{padding-left:22px}.flow-explainer li{margin-bottom:8px}.decision-list{display:grid;gap:22px}.decision-card{border:1px solid #dce9e5;border-radius:18px;padding:22px;background:#fff;min-width:0}.decision-card>header{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-bottom:16px;flex-wrap:wrap}.status-chip{display:inline-flex;border-radius:8px;padding:5px 10px;background:#edf1f4;color:#52706a;font-size:12px;font-weight:500}.status-chip.is-open{background:#e0f6ee;color:#00765c}.decision-card h3{font-size:20px;overflow-wrap:anywhere}.decision-description{color:#567369;font-size:15px;margin:8px 0 20px;white-space:pre-wrap;overflow-wrap:anywhere}.participation-line{display:flex;gap:8px;align-items:baseline;font-size:13px;margin-bottom:6px;flex-wrap:wrap}.participation-line strong{font-size:17px}.community-flow progress{height:7px;width:100%;border:0;margin:0 0 18px;accent-color:#009676}.decision-results{display:grid;gap:12px;margin:6px 0 18px}.decision-result{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 14px;align-items:start}.decision-result strong{font-size:15px;font-weight:500;overflow-wrap:anywhere}.decision-result small{display:block;font-size:12px;color:#668077}.decision-result>span{font-weight:600;white-space:nowrap;display:flex;gap:4px;align-items:baseline}.decision-result progress{grid-column:1/-1;height:5px;margin:2px 0 6px}.family-vote{padding:18px;background:#f5faf8;border-radius:14px;margin-top:18px}.family-vote fieldset{padding:0;border:0;min-width:0}.family-vote legend{font-weight:600;font-size:16px;padding:0}.family-vote fieldset p{margin:6px 0 14px}.vote-choice{display:flex;gap:10px;align-items:center;padding:13px 12px;border:1px solid #d7e6e0;border-radius:11px;background:#fff;margin:8px 0;cursor:pointer}.vote-choice:has(input:checked){border-color:#00866b;background:#e2f6ed;box-shadow:0 0 0 1px #00866b}.vote-choice input{width:20px;height:20px;flex:none;accent-color:#00866b;margin:0}.vote-choice span{flex:1;min-width:0;font-size:14px;overflow-wrap:anywhere}.vote-choice small{font-size:11px;color:#00765c}.family-vote>small{display:block;margin-top:10px}.decision-card footer{padding-top:18px;margin-top:18px;border-top:1px solid #e3ece8}.option-editor{display:grid;gap:12px;margin-bottom:12px}.option-editor-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 38px;gap:12px;align-items:start;padding:14px;background:#f5f9f7;border:1px solid #e1ebe6;border-radius:13px}.option-editor-row .field{margin:0}.option-editor-row>.icon-button{margin-top:28px;width:36px;height:36px;min-height:36px;font-size:23px}.option-editor-row .icon-button:disabled{opacity:.25;cursor:default}#poll-builder>.flow-note{margin-top:20px}.review-option{padding:12px 0;display:flex;justify-content:space-between;gap:14px;border-top:1px solid #e6efeb;flex-wrap:wrap}.review-option strong{font-weight:500}.review-option span{font-size:14px;color:#5b776d}.family-example{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin:-4px 0 22px;font-size:14px;padding:0 8px}.family-example>span:first-child{padding:8px 12px;background:#f1f6f4;border-radius:10px}.family-example>strong{color:#00866b;font-weight:500}.family-directory,.parent-directory{border:1px solid #e0eae6;border-radius:15px;overflow:hidden}.family-directory>article,.parent-directory>article{display:flex;align-items:center;gap:12px;padding:16px;border-bottom:1px solid #e3ece8}.family-directory>article:last-child,.parent-directory>article:last-child{border:0}.family-directory article>div,.parent-directory article>div{flex:1;min-width:0}.family-directory article strong,.parent-directory article strong{font-size:15px;overflow-wrap:anywhere}.family-directory article p,.parent-directory article p{font-size:13px;margin:5px 0 0;color:#607d73;overflow-wrap:anywhere}.family-directory .mint-tile,.parent-directory .mint-tile{width:36px;height:36px;flex:none}.family-directory .button,.parent-directory .button{min-height:38px;font-size:12px;padding:8px 12px;flex:none}.needs-link{color:#9a6521}.child-picker{max-height:300px;overflow:auto;overscroll-behavior:contain;border:1px solid #dde8e2;border-radius:13px;margin-bottom:18px}.child-choice{display:flex;gap:12px;align-items:center;padding:13px 16px;border-bottom:1px solid #e5ece8;cursor:pointer;font-size:15px}.child-choice:last-child{border:0}.child-choice:has(input:checked){background:#e8f7f0}.child-choice input{width:20px;height:20px;margin:0;flex:none;accent-color:#00866b}.child-choice span{min-width:0;overflow-wrap:anywhere}.child-choice small{display:block;font-size:12px;color:#688078}.split-family{padding-top:18px;margin-top:22px;border-top:1px solid #dde9e3;display:grid;gap:10px}.split-family>h3,.split-family>p{margin:0}.flow-error{padding:12px;border-radius:10px;background:#fff1ef;font-size:14px}.community-flow [hidden],.roster-panel [hidden]{display:none!important}
.roster-panel{border:1px solid #dce8e4;border-radius:18px;padding:22px;background:white}.roster-filters{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:16px}.roster-filters .field{margin:0;font-size:14px}.roster-filters input,.roster-filters select{font-size:16px;min-width:0;width:100%;box-sizing:border-box}.roster-instruction{margin:14px 0 22px;font-size:13px}.roster-count{font-size:13px}.roster-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:18px 0;border-top:1px solid #e3ece8}.roster-person{display:flex;align-items:center;gap:12px;min-width:0;flex:1}.roster-person .circle{width:36px;height:36px;flex:none;border-radius:11px;font-size:16px}.roster-person h3{font-size:16px;margin:0 0 4px;line-height:1.4;overflow-wrap:anywhere}.roster-person>div{min-width:0}.roster-person small{display:block;font-size:12px;color:#6b8179;margin-top:4px;overflow-wrap:anywhere}.roster-status{font-size:12px;color:#8b6d41}.roster-status.is-linked{color:#00866b}.roster-primary{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap;justify-content:flex-end;max-width:53%}.roster-primary .button{min-height:38px;font-size:12px}.student-menu{position:relative}.student-menu>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:4px;border:1px solid #dbe7e2;border-radius:10px;padding:9px 10px;font-size:12px;min-height:38px;box-sizing:border-box}.student-menu>summary::-webkit-details-marker{display:none}.student-menu>summary .ui-icon{width:17px;height:17px}.student-menu-body{display:grid;gap:9px;width:300px;max-width:100%;margin-top:12px;padding:12px;border-radius:12px;background:#f5faf7}.student-menu-body .student-invitation{display:block;min-width:0;width:100%;margin:0}.student-menu-body .student-invite-link{display:grid;gap:8px}.student-menu-body input{width:100%;min-width:0;box-sizing:border-box}.student-menu-body>.button{justify-content:flex-start}.student-menu-body small{font-size:12px}.student-menu-body .badge{white-space:normal}.settings-account .list .button{justify-content:flex-start;text-align:left;gap:12px;min-height:50px;font-size:14px}.settings-account .ui-icon{width:20px;height:20px;flex:none;color:#41806e}.settings-account .footnote a,.settings-account>button[data-action=logout]{display:flex;align-items:center;gap:12px;font-size:13px}.settings-account .footnote{padding:16px 0;border-top:1px solid #e3ece8;margin-top:20px}.settings-account>button[data-action=logout]{color:#a34a3c}.settings-account>button[data-action=logout] .ui-icon{color:inherit}
.demo-intro.demo-intro-v2{display:block;background:#fff;border:1px solid #dce9e5;padding:26px 30px;border-radius:20px;margin:20px auto 0;max-width:1380px}.demo-intro-v2 .demo-intro-top{display:flex;justify-content:space-between;align-items:center;gap:20px}.demo-intro-v2 .demo-eyebrow{display:block;font-size:12px;letter-spacing:.04em;color:#00866b;margin-bottom:8px}.demo-intro-v2 h1{font-size:24px;margin:0;line-height:1.3}.demo-intro-v2 .demo-intro-top p{font-size:14px;color:#638075;margin:8px 0 0}.demo-intro-v2 .demo-intro-top>.button{font-size:14px;white-space:nowrap;min-height:44px}.demo-intro-v2 .demo-controls{display:flex;align-items:center;gap:24px;background:#f1f8f5;border-radius:13px;padding:15px 18px;margin-top:22px}.demo-role-section{display:flex;align-items:center;gap:12px;flex:none}.demo-role-section>span{font-size:13px;color:#5e7b70}.demo-intro-v2 .demo-role{width:300px;flex:none;background:#e2eee8;border:0}.demo-intro-v2 .demo-role button{font-size:13px;min-height:42px;padding:10px 8px}.demo-intro-v2 .demo-hint{flex:1;margin:0;line-height:1.5;font-size:13px;color:#436c5d}.demo-intro-v2 #demo-reset{flex:none;font-size:12px;white-space:nowrap}.demo-intro-v2 .demo-disclaimer{margin:13px 0 0;font-size:12px;color:#7a8b83;line-height:1.5}
@media(min-width:760px){#dialog:has(.community-flow){width:min(760px,calc(100vw - 60px));max-width:760px}.community-flow .decision-list{gap:24px}}
@media(max-width:1450px){.demo-intro.demo-intro-v2{margin-left:24px;margin-right:24px}}@media(max-width:1050px){.demo-intro-v2 .demo-controls{flex-wrap:wrap;gap:14px}.demo-intro-v2 .demo-hint{flex-basis:100%;order:3}.demo-intro-v2 #demo-reset{margin-left:auto}}
@media(max-width:600px){.community-flow{font-size:14px}.decision-card{padding:16px;border-radius:14px}.decision-card h3{font-size:18px}.family-vote{padding:14px}.flow-note{padding:14px}.flow-heading>.button{width:100%}.option-editor-row{grid-template-columns:minmax(0,1fr) 32px;gap:10px}.option-editor-row>.field:nth-child(2){grid-column:1;grid-row:2}.option-editor-row>.icon-button{grid-column:2;grid-row:1;width:30px;margin-top:28px}.family-directory>article,.parent-directory>article{flex-wrap:wrap;padding:14px;gap:10px}.family-directory article>.button,.parent-directory article>.button{margin-left:46px}.flow-actions{flex-direction:column}.flow-actions>.button{width:100%}.roster-panel{padding:16px}.roster-filters{grid-template-columns:1fr;gap:12px}.roster-row{display:block;padding:16px 0}.roster-primary{max-width:none;justify-content:flex-start;margin:12px 0 0 48px}.student-menu[open]{width:100%}.student-menu-body{width:auto}.roster-person h3{font-size:15px}.roster-primary .button{font-size:12px}.student-tools{gap:8px}.student-tools .button{font-size:12px;min-height:42px}.demo-intro.demo-intro-v2{margin:12px;padding:18px;border-radius:16px}.demo-intro-v2 .demo-intro-top{display:block}.demo-intro-v2 h1{font-size:21px}.demo-intro-v2 .demo-intro-top>.button{margin-top:15px;width:100%;box-sizing:border-box}.demo-intro-v2 .demo-controls{padding:12px;gap:12px;margin-top:18px}.demo-role-section{display:block;width:100%}.demo-role-section>span{display:block;margin-bottom:8px}.demo-intro-v2 .demo-role{width:100%}.demo-intro-v2 .demo-hint{order:0;font-size:13px}.demo-intro-v2 #demo-reset{margin-left:0;width:100%}.demo-intro-v2 .demo-disclaimer{font-size:12px}.vote-choice small{font-size:11px}}
@media print{.prototype-toolbar{display:none!important}}
.community-flow progress{appearance:none;-webkit-appearance:none;border-radius:10px;overflow:hidden;background:#e7efeb;color:#009676}.community-flow progress::-webkit-progress-bar{background:#e7efeb;border-radius:10px}.community-flow progress::-webkit-progress-value{background:linear-gradient(90deg,#009676,#50b99b);border-radius:10px}.community-flow progress::-moz-progress-bar{background:#009676;border-radius:10px}.vote-choice span>small{display:block;font-size:12px;margin-top:4px;color:#5a7b6e}.poll-live-results{margin-top:20px;border-top:1px solid #deebe4;padding-top:16px;font-size:13px}.poll-live-results>summary{cursor:pointer;color:#16725b;padding:0 0 16px;font-weight:500}.family-vote .wide{margin-top:12px}.community-flow #poll-builder .option-editor-row .field{gap:6px;margin-bottom:0}
.home-polls{background:#ecf9f3;border:1px solid #bce5d4;border-radius:18px;padding:22px 24px;margin:0 0 24px}.home-polls-heading{display:flex;gap:13px;align-items:center;margin-bottom:18px}.home-polls-heading .mint-tile{background:#d3f0e3;color:#00775b;flex:none}.home-polls-heading h2{font-size:21px;margin:0 0 4px;color:#145443}.home-polls-heading p{font-size:14px;margin:0;color:#54796a}.home-polls-list{display:grid;gap:12px}.home-poll{display:flex;align-items:center;justify-content:space-between;gap:20px;background:#fff;border:1px solid #d7eae0;border-radius:13px;padding:17px 19px}.home-poll>div{min-width:0}.home-poll h3{font-size:17px;line-height:1.4;margin:0 0 6px;overflow-wrap:anywhere}.home-poll-deadline{font-size:14px;color:#5f7a70;margin:0 0 8px}.home-poll-status{font-size:13px;color:#856023;display:flex;align-items:center;gap:6px}.home-poll-status.is-voted{color:#008060}.home-poll-status .ui-icon{width:16px;height:16px;flex:none}.home-poll .button{font-size:14px;min-height:44px;flex:none;gap:10px}.home-poll .button .ui-icon{width:18px;height:18px}@media(max-width:600px){.home-polls{padding:17px 15px;margin-bottom:20px}.home-polls-heading h2{font-size:19px}.home-polls-heading p{font-size:13px}.home-poll{display:block;padding:15px}.home-poll .button{width:100%;margin-top:15px;white-space:normal}.home-poll h3{font-size:16px}}
