.profile-shell,.parent-zone,.support-screen,.profile-form-card,.adult-gate{width:100%;max-width:1120px;margin:0 auto 32px}.profile-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.profile-card{min-width:0;min-height:190px;border:2px solid #b7d7f3;border-radius:24px;background:linear-gradient(#fff,#edf6ff);box-shadow:var(--shadow);padding:22px;display:flex;flex-direction:column;align-items:center;gap:10px;text-align:center}.profile-card.selected{border-color:#1c9b47;box-shadow:0 5px 0 #8ecb9e,0 12px 24px #187b3820}.profile-avatar{width:74px;height:74px;border-radius:50%;display:grid;place-items:center;font-size:2.5rem;background:linear-gradient(145deg,#dff4ff,#fff2a7);border:3px solid white;box-shadow:0 0 0 3px #89c9f2}.profile-card strong{font-size:1.25rem;color:#102650}.profile-card span:not(.profile-avatar):not(.profile-plus){color:var(--muted)}.profile-meter{width:100%;height:9px;border-radius:10px;background:#dce9f2;overflow:hidden}.profile-meter i{display:block;height:100%;background:#28a745}.profile-plus{font-size:3rem;color:var(--blue)}.privacy-note{text-align:center;color:var(--muted);margin:22px 0}.profile-form-card,.adult-gate{max-width:720px;background:white;border:3px solid #87cdf7;border-radius:28px;padding:30px;box-shadow:var(--shadow)}.field-label{display:block;font-weight:800;margin:15px 0 8px}.profile-form-card input[type=text],.parent-zone select{width:100%;min-height:52px;border:2px solid #9fc8e8;border-radius:14px;padding:12px 15px;font:inherit;color:#102650;background:white}.avatar-choices{border:0;padding:20px 0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.avatar-choices legend{font-weight:800;padding-top:20px}.avatar-choices label{cursor:pointer;border:2px solid #c5ddef;border-radius:18px;padding:12px;display:flex;flex-direction:column;align-items:center;gap:6px}.avatar-choices label:has(input:checked){border-color:#0874da;background:#eaf6ff}.avatar-choices input{position:absolute;opacity:0}.avatar-choices .profile-avatar{width:52px;height:52px;font-size:1.8rem}.form-actions,.parent-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}.danger-button,.support-button{min-height:48px;border-radius:15px;padding:11px 18px;font-weight:800}.danger-button{border:2px solid #d84a4a;background:#fff2f2;color:#9b1f1f}.support-button{border:2px solid #f0b51f;background:linear-gradient(#ffe87b,#ffd138);color:#443300}.form-error{color:#9b1f1f;font-weight:700;margin:10px 0}.active-profile-chip{display:inline-flex;align-items:center;gap:8px;background:#fff;border:2px solid #b9dafa;border-radius:999px;padding:8px 13px;font-weight:800}.active-profile-chip .profile-avatar{width:30px;height:30px;font-size:1rem;border-width:1px;box-shadow:none}.parent-heading{border-bottom:3px solid #d8e5ef;margin-bottom:22px}.parent-summary{display:flex;align-items:center;gap:18px;background:#edf7ff;border:2px solid #afd7f2;border-radius:22px;padding:20px;margin:20px 0}.parent-summary h2{margin:0 0 5px}.parent-summary strong,.parent-summary span{display:block}.year-progress-table{display:grid;gap:8px}.year-progress-table>div{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:10px;padding:14px 16px;border-radius:14px;background:white;border:1px solid #cddfec}.parent-facts,.parent-info{margin-top:20px;background:#f7fafc;border-radius:18px;padding:18px}.parent-facts p,.parent-info p{margin-bottom:8px}.adult-gate{text-align:center}.gate-lock{font-size:3rem}.hold-button{position:relative;overflow:hidden;width:min(100%,430px);border:2px solid #8bd5ff;border-radius:18px;padding:18px;background:#075fb7;color:#fff;font-weight:900}.hold-button span{position:relative;z-index:2}.hold-button i{position:absolute;inset:0 auto 0 0;width:0;background:#1d9d49;z-index:1}.hold-button.holding i{animation:gate-fill 3s linear forwards}@keyframes gate-fill{to{width:100%}}.support-screen{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,440px);gap:28px;align-items:start}.support-copy{background:white;border:3px solid #83cdf7;border-radius:28px;padding:28px;box-shadow:var(--shadow)}.support-policy{background:#fff7cf;border-left:6px solid #ffd138;padding:16px;border-radius:12px}.support-amounts{display:flex;flex-wrap:wrap;gap:10px;margin:18px 0}.support-amounts span{background:#e7f5ff;border:2px solid #6ebcf0;border-radius:999px;padding:10px 16px;font-weight:900}.thanks{font-size:1.2rem;font-weight:900;color:#075fb7}.support-poster{margin:0;text-align:center}.support-poster img{display:block;width:100%;height:auto;max-height:70vh;object-fit:contain;background:#fff;border:3px solid #9ed9f5;box-shadow:var(--shadow)}.support-poster figcaption{font-size:.875rem;color:var(--muted);margin-top:10px}.confirm-panel{max-width:580px;margin:auto;background:white;border:3px solid #efb24b;border-radius:26px;padding:28px;text-align:center;box-shadow:var(--shadow)}
@media(max-width:760px){.profile-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.support-screen{grid-template-columns:1fr}.avatar-choices{grid-template-columns:repeat(2,1fr)}.year-progress-table>div{grid-template-columns:1fr}.support-poster img{max-height:none}.profile-form-card,.adult-gate{padding:22px}.active-profile-chip{font-size:.8rem}}
@media(max-width:380px){.profile-grid{grid-template-columns:1fr}.profile-card{min-height:150px}.avatar-choices{gap:8px}.year-progress-table>div{padding:12px}.parent-summary{align-items:flex-start}.parent-actions>*{width:100%}}
@media(max-height:550px) and (min-width:641px){.profile-card{min-height:150px;padding:14px}.profile-avatar{width:56px;height:56px;font-size:2rem}.support-screen{grid-template-columns:1.2fr .8fr}.support-poster img{max-height:330px}.adult-gate{padding:18px}.parent-summary{margin:10px 0;padding:12px}.year-progress-table{grid-template-columns:repeat(2,1fr)}}
@media(prefers-reduced-motion:reduce){.hold-button.holding i{animation-duration:3s}}
.profile-card-wrap{position:relative;min-width:0}.profile-card-wrap .profile-card{width:100%;padding-bottom:48px}.profile-manage{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);min-height:34px;border:1px solid #89b9dd;border-radius:999px;background:white;padding:5px 18px;font-weight:800}.profile-manage:hover{transform:translateX(-50%) translateY(-2px)}
