.profile-wrap{max-width:880px;margin:36px auto}.profile-hero{max-width:640px;margin:32px 0}.profile-hero h1{letter-spacing:-1.8px;margin:10px 0 16px;font-size:clamp(34px,5vw,54px);font-weight:850;line-height:1.08}.profile-hero p{color:#625a4b;line-height:1.6}.profile-grid{grid-template-columns:repeat(auto-fit,minmax(215px,1fr));gap:22px;margin:26px 0;display:grid}.profile-tile{background:#fffdf8;border:2px solid #161513;border-radius:22px;padding:24px;box-shadow:5px 5px #161513}.profile-tile h2{margin-top:12px;font-size:27px;font-weight:800}.profile-tile p{color:#675e4f;margin:6px 0 18px}.profile-tile button,.profile-tile a{cursor:pointer;min-height:44px;padding:8px;text-decoration:underline}.profile-pick{cursor:pointer;color:#161513;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:190px;font-size:30px;font-weight:800;text-decoration:none;display:flex}.profile-pick:hover{background:#fff0b0;transform:translateY(-3px)}.profile-pick:disabled{opacity:.55;cursor:wait}.profile-pick:focus-visible,.avatar-choice:focus-visible{outline-offset:4px;outline:4px solid #c83a22}.profile-actions{flex-wrap:wrap;align-items:center;gap:16px;margin-top:24px;display:flex}.profile-actions .auth-button{place-items:center;width:auto;min-height:64px;display:grid}.profile-form{max-width:640px;margin:26px 0}.profile-form select,.profile-form textarea{color:#161513;width:100%;font:inherit;background:#fff;border:1.5px solid #9f988a;border-radius:10px;padding:12px}.avatar-choices{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.avatar-choice{cursor:pointer;text-transform:capitalize;background:#fff;border:2px solid #d4cbbb;border-radius:16px;flex-direction:column;align-items:center;min-height:106px;padding:8px 0;font-size:13px;font-weight:700;display:flex}.avatar-choice[aria-pressed=true]{background:#fff0a1;border:3px solid #161513}.consent-card{max-width:760px}.consent-copy p,.consent-copy li{margin:14px 0;line-height:1.65}.consent-copy ul{padding-left:22px;list-style:outside}.consent-copy h2{margin:8px 0 20px;font-size:30px;font-weight:850;line-height:1.15}.consent-copy .auth-check{min-height:64px;font-weight:500}.consent-copy .auth-check span{flex:1}.consent-fields{gap:12px;margin:20px 0;display:grid}.profile-error{color:#a12a18;padding:14px 0;font-weight:650}.profile-notice{background:#fff3c4;border:1.5px dashed #948368;border-radius:16px;padding:24px;line-height:1.6}.roster-editor{margin-top:30px}.roster-editor summary{cursor:pointer;padding:20px 0;font-size:22px;font-weight:800}.roster-row{border-bottom:1px solid #ddd5c6;flex-wrap:wrap;align-items:center;gap:12px;padding:12px 0;display:flex}.roster-row input{border:1px solid #9f988a;border-radius:8px;flex:1;min-width:0;padding:12px}.roster-row button{cursor:pointer;padding:12px;text-decoration:underline}.parent-letter{color:#161513;background:#fff;max-width:820px;margin:28px auto;padding:40px;font:14px/1.5 Georgia,serif}.parent-letter h1{margin:20px 0;font-size:24px}.parent-letter p{white-space:pre-line;margin:14px 0}.parent-letter ul{padding-left:20px;list-style:outside}@media (max-width:540px){.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}.profile-tile{padding:18px 12px;box-shadow:3px 3px}.profile-pick{min-height:176px;font-size:25px}.profile-tile h2{font-size:24px}.profile-form{margin-top:20px}.consent-card{padding:25px 18px}.parent-letter{padding:18px}}@media print{.no-print,.account-bar,.auth-brand,.auth-foot{display:none!important}.auth-shell{background:#fff;padding:0}.parent-letter{max-width:none;margin:0;padding:0;font-size:11px}.parent-letter p,.parent-letter li{margin:8px 0}}.profile-tile h2,.profile-pick span{overflow-wrap:anywhere;max-width:100%}.consent-copy ol{padding-left:24px;list-style:decimal}.consent-fields label{gap:6px;font-size:15px;font-weight:650;display:grid}.consent-fields input{width:100%;font:inherit;background:#fff;border:1.5px solid #9f988a;border-radius:10px;padding:13px 14px}.roster-editor .auth-button{min-height:64px;padding:13px 18px;text-decoration:none}@page{size:A4;margin:12mm}@media print{.parent-letter{font-size:10.5px;line-height:1.3}.parent-letter p,.parent-letter li{margin:6px 0}}.memory-card{text-align:left;color:#29251f;overflow-wrap:anywhere;border-top:1px solid #cec5b4;margin-top:20px;padding-top:20px;font-size:15px}.memory-card h3{margin-bottom:12px;font-size:19px;font-weight:800;line-height:1.3}.memory-card dl{margin:16px 0}.memory-card dt{text-transform:uppercase;letter-spacing:.04em;color:#655b4b;margin-top:12px;font-size:12px;font-weight:750}.memory-card dd{margin:3px 0 0;line-height:1.5}.memory-switch{cursor:pointer;align-items:center;gap:10px;min-height:56px;font-weight:650;display:flex}.memory-switch input{accent-color:#286349;flex-shrink:0;width:22px;height:22px}.memory-card .memory-help{margin:8px 0;font-size:13px;line-height:1.5}.memory-confirm{background:#fff3c4;border:1px solid #9e8763;border-radius:12px;margin:12px 0;padding:14px}.memory-card button{cursor:pointer;min-height:44px;padding:8px;text-decoration:underline}.memory-card button:disabled{opacity:.5;cursor:default}.memory-card button:focus-visible{outline-offset:2px;outline:3px solid #b53e28}.memory-roster{margin-bottom:12px}.memory-roster>summary{cursor:pointer;min-height:44px;padding:10px 0;font-weight:700}.memory-roster .memory-card{background:#fffdf8;border:1px solid #cec5b4;border-radius:14px;max-width:600px;padding:20px}@media (max-width:540px){.profile-grid:has(.memory-card){grid-template-columns:minmax(0,1fr)}}
