.camp-member-page{margin:0;background:radial-gradient(ellipse at 90% 0,#fff0bb 0,transparent 44%),#fffaf0;color:#332918;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;-webkit-font-smoothing:antialiased}
.camp-member-surface,.camp-member-surface *{box-sizing:border-box}
.camp-member-surface [hidden],.camp-member-surface[hidden]{display:none!important}
.camp-member-surface a{color:inherit;text-decoration:none}
.camp-member-surface button{font:inherit}
.camp-member-surface h1,.camp-member-surface h2,.camp-member-surface p{margin-top:0}
.camp-member-surface h2{font-size:18px;line-height:1.5;margin-bottom:10px}
.camp-member-surface p,.camp-member-surface li{font-size:14px;line-height:1.8}
.camp-member-surface .camp-eyebrow{display:block;color:#8a651c;font-size:12px;font-weight:650;letter-spacing:1px;margin-bottom:7px}
.camp-member-surface.camp-entry{margin:18px 0;border:1px solid #efd596;border-radius:18px;background:linear-gradient(110deg,#fff5d6,#fffdf4);overflow:hidden}
.camp-member-surface .camp-entry-link{display:flex;gap:12px;align-items:center;justify-content:space-between;padding:20px}
.camp-member-surface .camp-entry-link h2{margin-bottom:5px;color:#493718}
.camp-member-surface .camp-entry-link p{color:#836b3b;margin:0;font-size:13px;overflow-wrap:anywhere}
.camp-member-surface .camp-entry-arrow{font-size:29px;color:#9f731e;flex:none}
.camp-member-surface.camp-entry--me .camp-entry-link{padding:16px 20px}
.camp-member-surface .camp-entry-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px 8px}
.camp-member-surface .camp-entry-head h2{margin:0;color:#493718;font-size:17px;line-height:1.5}
.camp-member-surface .camp-entry-head [data-camp-entry-message]{color:#836b3b;font-size:12px}
.camp-member-surface .camp-entry-list{display:grid;gap:8px;padding:0 12px 12px}
.camp-member-surface .camp-entry-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3px 8px;align-items:center;padding:10px;border:1px solid #efdca8;border-radius:12px;background:#fffdf5}
.camp-member-surface .camp-entry-card__name{font-size:15px;color:#493718;overflow-wrap:anywhere}
.camp-member-surface .camp-entry-card__status{grid-column:1;color:#856c3c;font-size:12px;line-height:1.5;overflow-wrap:anywhere}
.camp-member-surface .camp-entry-card__action{grid-column:2;grid-row:1 / span 2;min-height:38px;padding:7px 12px;font-size:12px;white-space:nowrap}
.camp-member-surface .camp-entry-card__action--disabled{display:inline-flex;align-items:center;justify-content:center;border:1px solid #e4d0a0;border-radius:12px;color:#90784a;background:#fffaf0;min-height:38px;padding:7px 12px;font-size:12px;text-align:center}
.camp-member-surface .camp-entry-all{justify-self:start;color:#87651f;font-size:13px;padding:4px 0}
.camp-member-surface .camp-button--disabled{cursor:default;opacity:.75}
.camp-member-surface.camp-page-shell{width:100%;max-width:640px;margin:0 auto;padding:0 20px 44px}
.camp-member-surface .camp-page-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:22px 0;color:#816840;font-size:12px}
.camp-member-surface .camp-page-header a{min-height:44px;display:inline-flex;align-items:center;font-size:14px}
.camp-member-surface .camp-hero{position:relative;border:1px solid #f4d880;border-radius:24px;background:linear-gradient(125deg,#ffe9a0,#fff5d5 70%,#fff9e8);padding:28px 24px;margin:0 0 20px;box-shadow:0 10px 28px #bc8e2810;overflow:hidden}
.camp-member-surface .camp-hero h1{font-size:28px;line-height:1.45;margin:0 0 10px;overflow-wrap:anywhere}
.camp-member-surface .camp-hero p{margin:0;color:#81663a}
.camp-member-surface .camp-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.camp-member-surface .camp-tags span{font-size:12px;padding:5px 10px;border:1px solid #e7ca82;border-radius:20px;background:#fffae8;color:#866224}
.camp-member-surface .camp-card{border:1px solid #eee3c9;border-radius:20px;background:#fffefb;padding:22px;margin-bottom:16px;overflow-wrap:anywhere;box-shadow:0 5px 20px #6d512007}
.camp-member-surface .camp-introduction p{color:#806d4f;margin-bottom:12px}
.camp-member-surface .camp-introduction ol{margin:0;padding-left:21px;color:#806d4f}
.camp-member-surface .camp-introduction li+li{margin-top:6px}
.camp-member-surface .camp-notice{padding:14px 16px;border-radius:14px;background:#f5ecd9;color:#7a613c;margin:16px 0;font-size:14px}
.camp-member-surface .camp-notice[data-state="error"]{background:#fff0eb;color:#a04a2d}
.camp-member-surface .camp-notice[data-state="success"]{background:#edf7ee;color:#477047}
.camp-member-surface .camp-period-time{color:#8d7b61;font-size:12px!important;margin-bottom:14px}
.camp-member-surface .camp-period-message{color:#88714e;margin:0 0 12px}
.camp-member-surface .camp-button{display:inline-flex;align-items:center;justify-content:center;border:1px solid #e2b854;border-radius:12px;background:linear-gradient(120deg,#f9d369,#efc34b);color:#4d3712;min-height:46px;padding:10px 21px;cursor:pointer;font-weight:650}
.camp-member-surface .camp-button:hover{background:#e7bb54}
.camp-member-surface .camp-button:disabled{cursor:wait;opacity:.6}
.camp-member-surface .camp-button--secondary{background:#fffaf0;border-color:#e4d0a0;color:#866426}
.camp-member-surface .camp-code-card{text-align:center}
.camp-member-surface .camp-verification-code{display:block;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:31px;font-weight:750;letter-spacing:2px;color:#5d421b;white-space:nowrap;margin:18px 0 22px;user-select:text}
.camp-member-surface .camp-copy-message{font-size:12px;min-height:20px;margin:12px 0 0;color:#8e743f}
.camp-member-surface .camp-group-instruction p{color:#806d4f;margin-bottom:18px}
.camp-member-surface .camp-registration-info dl{margin:0;padding-top:4px}
.camp-member-surface .camp-registration-info dl div{display:grid;grid-template-columns:76px minmax(0,1fr);gap:12px;font-size:13px;line-height:1.6;margin-top:8px}
.camp-member-surface .camp-registration-info dt{color:#9b896c}
.camp-member-surface .camp-registration-info dd{margin:0;color:#57472e}
.camp-member-surface .camp-leader-contact{margin-top:12px}
.camp-member-surface .camp-leader-contact h3{margin:0 0 8px;color:#57472e;font-size:15px}
.camp-member-surface .camp-leader-contact p{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin:6px 0 12px}
.camp-member-surface .camp-brand-mark{font-weight:600;color:#9b762a;letter-spacing:.4px}
.camp-member-surface .camp-hero-badge{display:inline-flex;padding:6px 11px;border-radius:24px;border:1px solid #eac774;background:#fff9e2;font-size:11px;letter-spacing:.6px;margin-bottom:16px}
.camp-member-surface .camp-section-mark{display:inline-grid;place-items:center;width:28px;height:28px;background:#fff2c6;color:#a47724;border-radius:9px;font-size:12px;vertical-align:middle;margin-right:5px}
.camp-member-surface .camp-steps{list-style:none;padding:0!important;counter-reset:camp-step}
.camp-member-surface .camp-steps li{position:relative;padding:9px 0 9px 38px;counter-increment:camp-step}
.camp-member-surface .camp-steps li::before{content:counter(camp-step);position:absolute;left:0;top:11px;display:grid;place-items:center;width:25px;height:25px;font-size:12px;border:1px solid #ecd9a4;border-radius:50%;background:#fffae9;color:#98712b}
.camp-member-surface .camp-steps b,.camp-member-surface .camp-steps span{display:block}
.camp-member-surface .camp-steps b{font-size:14px;color:#574328;font-weight:650}
.camp-member-surface .camp-steps span{font-size:12px;line-height:1.7;color:#968260;margin-top:2px}
.camp-member-surface .camp-notice{border:1px solid #eee2c3;font-size:13px}
.camp-member-surface .camp-code-card{border-top:4px solid #edc45d;background:linear-gradient(180deg,#fffcf3,#fffefb);padding-top:24px}
.camp-member-surface .camp-code-card .camp-button{margin:0 4px 7px}
.camp-member-surface .camp-code-note,.camp-member-surface .camp-verification-note{font-size:11px;color:#a18a63;line-height:1.7;margin:7px 0 0}
.camp-member-surface .camp-grant-status{display:inline-block;border:1px solid #e9d59e;border-radius:10px;padding:7px 12px;background:#fff8dd;font-size:13px;color:#88703c}
.camp-member-surface .camp-grant-status[data-state="SUCCEEDED"]{background:#f0f8e9;border-color:#cde0b8;color:#62834c}
.camp-member-surface .camp-grant-status[data-state="FAILED"]{background:#fff0e9;border-color:#f2d5c6;color:#a06548}
.camp-member-surface .camp-result-hero .camp-account-note{font-size:12px;margin:12px 0;color:#958154;overflow-wrap:anywhere}
.camp-member-surface .camp-result-hero #camp-enter-learning{display:flex;width:100%;min-height:54px;margin-top:18px;font-size:18px;box-shadow:0 5px 14px #a77a1926}
.camp-member-surface.camp-learning-hub .camp-learning-options{display:grid;gap:16px;margin-top:20px}
.camp-member-surface.camp-learning-hub .camp-learning-option{display:flex;align-items:center;gap:18px;padding:24px 22px;text-decoration:none;color:inherit;min-height:112px}
.camp-member-surface.camp-learning-hub .camp-learning-option>span:nth-child(2){flex:1}
.camp-member-surface.camp-learning-hub .camp-learning-option strong{display:block;font-size:22px;line-height:1.35}
.camp-member-surface.camp-learning-hub .camp-learning-description{display:block;color:#756a50;font-size:14px;line-height:1.6;margin-top:7px}
.camp-member-surface.camp-learning-hub .camp-learning-icon{display:grid;place-items:center;width:54px;height:54px;flex:none;background:#fff0b8;border-radius:16px;font-size:28px;color:#80600b}
.camp-member-surface.camp-learning-hub .camp-learning-arrow{font-size:30px;color:#8f711f}
.camp-member-surface.camp-learning-hub a.camp-learning-option:focus-visible{outline:3px solid #917314;outline-offset:4px}
.camp-member-surface.camp-learning-hub .camp-learning-unavailable{color:#756a50}
.camp-member-surface.camp-learning-hub .camp-learning-note{margin:24px 6px}
@media(max-width:360px){.camp-member-surface.camp-learning-hub .camp-learning-option{gap:12px;padding:20px 16px}.camp-member-surface.camp-learning-hub .camp-learning-icon{width:44px;height:44px}}
.camp-member-surface .camp-group-instruction .camp-verification-note{border-top:1px dashed #ecdfbd;padding-top:14px;margin-top:16px}
.camp-member-surface .camp-poster-dialog{position:fixed;inset:0;margin:auto;max-width:min(900px,calc(100vw - 24px));max-height:calc(100dvh - 30px);overflow:auto;border:1px solid #e8cf8a;border-radius:20px;background:#fffaf0;padding:18px;color:#57472e;box-shadow:0 24px 90px #32230d38}
.camp-member-surface .camp-poster-dialog::backdrop{background:#30230cc9}
.camp-member-surface .camp-poster-dialog[open]{display:block}
.camp-member-surface .camp-poster-dialog header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.camp-member-surface .camp-poster-dialog header h2{margin:0}
.camp-member-surface .camp-poster-dialog img{display:block;width:100%;height:auto;user-select:auto;-webkit-touch-callout:default}
.camp-member-surface .camp-poster-dialog p{font-size:12px;color:#957a3e;margin:14px 0 0}
.camp-member-surface .camp-poster-actions{display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin-top:18px}
.camp-member-surface .camp-poster-actions p{flex:1;min-width:160px;margin:0}
.camp-member-surface .camp-button:focus-visible,.camp-member-surface .camp-page-header a:focus-visible{outline:3px solid #c39534;outline-offset:3px}
@media(max-width:359px){.camp-member-surface.camp-page-shell{padding-left:14px;padding-right:14px}.camp-member-surface .camp-hero{padding:24px 18px}.camp-member-surface .camp-card{padding:18px}.camp-member-surface .camp-verification-code{font-size:25px;letter-spacing:2px}.camp-member-surface .camp-hero h1{font-size:25px}}
