[hidden]{display:none!important}.prototype{max-width:1200px;margin:auto;padding:32px 5% 64px}.demo-banner{background:#edf5e7;border:1px solid #bdd2ac;border-radius:12px;padding:20px;color:#38543c}.demo-banner p{margin-bottom:0;line-height:1.8}.intro{display:flex;justify-content:space-between;align-items:center;gap:32px;margin:40px 0}.intro h1{font-size:clamp(32px,5vw,52px);line-height:1.3;margin:15px 0;color:var(--forest)}.intro p,.panel-heading p{color:var(--muted)}.identity{background:var(--cream);padding:22px;border-radius:12px;min-width:260px}.identity label{display:block;font-weight:700;margin-bottom:10px}.identity select{width:100%;padding:12px;background:white;border:1px solid var(--line);border-radius:6px}.subtle{background:white;border:1px solid #c8d4c4;border-radius:6px;padding:9px 14px;color:var(--forest);margin-top:12px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:20px}.panel-heading h2{margin:0}.badge{font-size:12px;background:#edf5e7;border-radius:20px;padding:8px 14px;white-space:nowrap}.directory{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:24px 0}.profile-card{border:1px solid var(--line);border-radius:12px;padding:22px;background:white;text-align:center}.profile-card h3{font-size:17px;margin:12px 0 6px}.profile-card p{font-size:13px;color:var(--muted);margin:5px 0}.profile-card button{width:100%;margin-top:16px}.portrait{width:76px;height:76px;border-radius:50%;object-fit:cover;background:#e5eddf;display:flex;align-items:center;justify-content:center;margin:0 auto;color:#53744e;font-size:24px;font-weight:bold}.panel{border:1px solid var(--line);border-radius:14px;padding:28px;margin:30px 0;background:#fafbf7}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:24px 0}.form-grid label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600}.form-grid input,.form-grid textarea{width:100%;padding:12px;border:1px solid #ccd8c7;border-radius:6px;background:white;color:var(--ink)}.form-grid input[readonly]{background:#edf0e9;color:#52624e}.form-grid small{font-weight:400;color:var(--muted)}.wide{grid-column:1/-1}.consent{display:flex;gap:10px;margin:20px 0;line-height:1.8}.consent input{flex-shrink:0}.privacy-note{color:#63755b;font-size:13px}.review-card{padding:22px;background:white;border:1px solid var(--line);border-radius:10px;margin:20px 0;overflow-x:auto}.review-card table{width:100%;border-collapse:collapse;font-size:14px}.review-card th,.review-card td{text-align:left;padding:10px;border-bottom:1px solid var(--line);vertical-align:top;overflow-wrap:anywhere}.review-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:20px}.review-actions input{padding:10px;flex:1;min-width:180px;border:1px solid #ccd8c7;border-radius:6px}.review-actions button{margin:0}.next-phase p{line-height:1.9;color:var(--muted)}#notice:not(:empty){padding:14px;background:#edf5e7;border-radius:8px}dialog{border:1px solid var(--line);border-radius:16px;width:min(520px,90vw);padding:28px;color:var(--ink)}dialog::backdrop{background:#102c2899}#profileDetail{text-align:center;overflow-wrap:anywhere;white-space:pre-wrap}#profileDetail .portrait{width:110px;height:110px}.photo-preview{display:flex;align-items:center;gap:12px}.photo-preview .portrait{margin:0}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid #608947;outline-offset:3px}button:disabled{opacity:.55;cursor:default}@media(max-width:850px){.directory{grid-template-columns:repeat(3,1fr)}.intro{align-items:stretch;flex-direction:column}}@media(max-width:560px){.directory{grid-template-columns:repeat(2,1fr);gap:10px}.profile-card{padding:16px 10px}.form-grid{grid-template-columns:1fr}.panel{padding:20px}.panel-heading{align-items:flex-start;flex-direction:column}.wide{grid-column:auto}.topbar{gap:10px}.topbar>a:last-child{font-size:12px}.review-card{padding:12px}}

#passwordLogin input,#passwordChange input{display:block;width:100%;padding:12px;margin:8px 0 16px;border:1px solid #ccd8c7;border-radius:6px;background:white;color:var(--ink)}#passwordChange{max-width:540px}#temporaryPassword{overflow-wrap:anywhere;white-space:pre-wrap}#passwordMembers p{display:flex;flex-wrap:wrap;align-items:center;gap:12px}

#passwordMembers form{padding:16px 0;border-bottom:1px solid var(--line)}#passwordMembers label{display:block;margin-bottom:8px}#passwordMembers input{display:block;width:100%;max-width:440px;padding:12px;margin:8px 0;border:1px solid #ccd8c7;border-radius:6px}
