/* 蹴GO account dashboard – isolated from SCORE and MAP. */
body.kego-member-page .page-header,
body.kego-member-page .pageHeader,
body.kego-member-page .vk-page-header,
body.kego-member-page .entry-header,
body.kego-member-page .breadcrumb,
body.kego-member-page .breadcrumbs,
body.kego-member-page .vk_breadcrumb,
body.kego-member-page .topicpath {display:none!important}
body.kego-member-page .siteContent {padding-top:0!important;margin-top:0!important}
body.kego-member-page .mainSection,body.kego-member-page .entry-body{padding-top:0!important;margin-top:0!important}
body.kego-member-page .siteContent .container{padding-top:0!important}
body.kego-member-page .kego-member-app{margin:0 auto 2rem!important}
.kego-member-app,.kego-member-app *{box-sizing:border-box}
.kego-member-app{--km-navy:#123554;--km-blue:#4ab6f0;--km-lime:#81d65b;--km-brown:#466a20; font-family:'M PLUS Rounded 1c',system-ui,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif; max-width:1120px;color:var(--km-navy);line-height:1.5}
.kego-member-app .km-hero{position:relative;overflow:hidden;border-radius:30px 30px 0 0;background:linear-gradient(180deg,#43b5f1 0%,#75ccff 75%,#88d85f 75%,#59c83b 100%);min-height:250px;padding:35px 40px;color:#fff;display:flex;align-items:center;box-shadow:0 7px 0 #409a2d}
.kego-member-app .km-hero-inner{position:relative;z-index:2;max-width:650px}.kego-member-app .km-kicker{display:inline-block;padding:6px 13px;border-radius:20px;background:#ffffff33;letter-spacing:.12em;font-size:12px;font-weight:900}
.kego-member-app .km-hero h1{font-size:clamp(30px,5vw,48px);font-weight:900;line-height:1.3;margin:9px 0 8px;color:#fff!important;letter-spacing:.03em;text-shadow:0 4px #3595d0}
.kego-member-app .km-hero p{color:#fff;font-weight:800;font-size:14px;max-width:570px;line-height:1.8;margin:0}
.kego-member-app .km-ball{margin:auto 3vw auto auto;font-size:83px;line-height:1;filter:drop-shadow(0 12px 3px #166d8540)}
.kego-member-app .km-main{padding:26px 24px 40px;background:#f1faff;border:1px solid #daecf4;border-radius:0 0 25px 25px}
.kego-member-app .km-panel{padding:26px;background:#fff;border:1px solid #cce8f1;border-radius:22px;box-shadow:0 5px 0 #cde8ed;margin:0 0 24px}
.kego-member-app .km-section-head{margin:0 0 16px}.kego-member-app .km-section-head h2{font-size:23px;line-height:1.3;font-weight:900;margin:0 0 6px;color:var(--km-navy)}.kego-member-app .km-section-head p{margin:0;color:#4f6884;font-size:13px}
.kego-member-app .km-notice{font-weight:700;color:#146e34;font-size:13px;padding:7px 12px;min-height:24px}.kego-member-app .km-notice:empty{display:none}.kego-member-app .km-notice.is-error{color:#aa3124;background:#fff2ee;border-radius:8px}
.kego-member-app .km-loading,.kego-member-app .km-empty{padding:40px 10px;text-align:center;color:#56738e;font-weight:700}
.kego-member-app button,.kego-member-app input{font-family:inherit}.kego-member-app .km-btn{border:0;background:transparent;cursor:pointer;font-weight:900;font-size:14px;border-radius:13px;padding:12px 17px;transition:transform .15s ease,background .15s ease;line-height:1.4;color:#174563}
.kego-member-app .km-btn:not(:disabled):hover{transform:translateY(-2px)}.kego-member-app .km-btn:focus-visible,.kego-member-app a:focus-visible{outline:3px solid #ffb91d;outline-offset:3px}
.kego-member-app .km-btn:disabled{opacity:.55;cursor:not-allowed}.kego-member-app .km-primary{background:#2aa7ec;color:#fff;box-shadow:0 4px #1475b0}.kego-member-app .km-secondary{background:#eeffea;color:#287239;border:2px solid #a4da7f}
.kego-member-app .km-outline{background:#e9f5ff;border:2px solid #98cdea}.kego-member-app .km-text-button{text-decoration:underline;padding-left:0;color:#2c78a6}
.kego-member-app .km-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:17px 0}.kego-member-app .km-tab{background:#f0f7fa;color:#51708d;border:2px solid #d5e8f2}.kego-member-app .km-tab.active{background:#e1f7ff;color:#0d79b7;border-color:#6ac8fb}
.kego-member-app .km-form{display:flex;flex-direction:column;gap:15px}.kego-member-app .km-field{display:flex;flex-direction:column;gap:5px;font-size:13px;font-weight:800;color:#255272;min-width:0}
.kego-member-app .km-field input{width:100%;min-height:47px;padding:12px 13px;border:2px solid #d5e6ef;border-radius:12px;background:#fafeff;font-size:15px;color:#123554;font-weight:600}
.kego-member-app .km-field input:focus{border-color:#43b5f1;outline:2px solid #c0ecff}.kego-member-app .km-auth-actions{display:flex;gap:10px;flex-wrap:wrap;margin:2px 0}
.kego-member-app .km-auth{max-width:640px;margin:6px auto 28px}.kego-member-app .km-auth .km-form{margin-bottom:10px}.kego-member-app .km-separator{text-align:center;margin:8px 0 12px;color:#7890a4;font-size:12px}
.kego-member-app .km-google{width:100%;border:2px solid #cbdce8;background:#f9fcff}.kego-member-app .km-note{font-size:12px;color:#74879a;margin:9px 0 0}
.kego-member-app .km-user-top{display:flex;gap:13px;align-items:center}.kego-member-app .km-avatar{background:linear-gradient(160deg,#f7c845,#ed9529);width:62px;height:62px;display:grid;place-items:center;border-radius:17px;box-shadow:0 4px #c98018;color:#fff;font-size:26px;font-weight:900}
.kego-member-app .km-who{flex:1;min-width:0}.kego-member-app .km-who h2{font-size:22px;margin:0;color:#123554;font-weight:900;overflow-wrap:anywhere}.kego-member-app .km-who span{font-size:12px;overflow-wrap:anywhere}
.kego-member-app .km-member-label{border-radius:50px;padding:6px 13px;background:#dff3fd;color:#0875ad;font-size:12px;font-weight:900}
.kego-member-app .km-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}.kego-member-app .km-stat{background:#effbfc;border:1px solid #d9f1f2;border-radius:14px;padding:14px;text-align:center;display:flex;flex-direction:column;gap:3px}
.kego-member-app .km-stat small{font-size:12px;color:#56718b}.kego-member-app .km-stat strong{font-size:26px;color:#104267;font-weight:900}.kego-member-app .km-stat span{font-size:11px;color:#60849a}
.kego-member-app .km-account-row{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap;margin-top:19px}.kego-member-app .km-account-row p{margin:0;font-size:12px;color:#648095;flex:1}
.kego-member-app .km-edit-form{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.kego-member-app .km-edit-form .km-field{flex:1;min-width:200px}.kego-member-app .km-edit-form .km-btn{height:47px}
.kego-member-app .km-tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0 0 36px}.kego-member-app .km-tool{min-height:176px;display:flex;flex-direction:column;background:#fff;border:2px solid #ddf0f4;border-radius:21px;padding:23px 21px;box-shadow:0 5px #dfecf1}
.kego-member-app .km-tool-icon{font-size:27px;line-height:1.2}.kego-member-app .km-tool h3{font-size:19px;margin:6px 0;color:#183c5c;font-weight:900}.kego-member-app .km-tool p{margin:0 0 15px;font-size:12px;color:#607d91;flex:1}
.kego-member-app .km-link{font-weight:900;font-size:13px;color:#0879ba;text-decoration:none}.kego-member-app .km-link:not([aria-disabled=true]):hover{text-decoration:underline}.kego-member-app .km-link[aria-disabled=true]{color:#8a9ca7;cursor:default}
.kego-member-app .km-pricing{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.kego-member-app .km-plan{background:#fff;border:2px solid #dceaf2;border-radius:19px;padding:19px 21px}.kego-member-app .km-plan-pro{border-color:#84d3f9;background:#effbff}
.kego-member-app .km-plan-tag{font-weight:900;font-size:12px;color:#1d7db8}.kego-member-app .km-price{font-size:26px;display:block;margin:6px 0}.kego-member-app .km-plan p{font-size:12px;color:#5d7386;margin:10px 0}.kego-member-app .km-plan small{font-size:11px;color:#657d8e}.kego-member-app .km-unavailable{font-size:12px;border-radius:20px;padding:5px 11px;background:#fff0c3;color:#875c19;font-weight:900;display:inline-block}
.kego-member-app .km-history{background:#fff;border:1px solid #dcecf3;border-radius:18px;padding:8px 17px;margin:0 0 32px}.kego-member-app .km-history-item{display:flex;gap:12px;align-items:center;padding:15px 5px;border-bottom:1px solid #edf2f6;font-size:12px;flex-wrap:wrap}.kego-member-app .km-history-item:last-child{border:0}.kego-member-app .km-history-item strong{flex:1;min-width:150px;font-size:14px}.kego-member-app .km-history-item small{color:#577891}
@media(max-width:720px){.kego-member-app .km-hero{padding:26px 24px;min-height:215px;border-radius:22px 22px 0 0}.kego-member-app .km-hero h1{font-size:31px}.kego-member-app .km-ball{font-size:47px;margin:auto 0 auto 12px}.kego-member-app .km-main{padding:20px 12px 26px}.kego-member-app .km-tools,.kego-member-app .km-pricing{grid-template-columns:1fr}.kego-member-app .km-tool{min-height:145px}.kego-member-app .km-stats{gap:7px}.kego-member-app .km-stat{padding:10px 6px}.kego-member-app .km-stat strong{font-size:20px}.kego-member-app .km-stat small{font-size:10px}.kego-member-app .km-section-head h2{font-size:20px}.kego-member-app .km-panel{padding:18px 14px}.kego-member-app .km-who h2{font-size:19px}.kego-member-app .km-hero p{font-size:12px}}
@media(prefers-reduced-motion:reduce){.kego-member-app .km-btn{transition:none}}

/* v0.3.0: scorecard viewer and explicit self-player assignment in My Page */
.kego-member-app .km-history{padding:0 14px;}
.kego-member-app .km-history-group{border-bottom:1px solid #e1eef4;}
.kego-member-app .km-history-group:last-child{border-bottom:0;}
.kego-member-app .km-history-toggle{appearance:none;display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;padding:16px 8px;border:0;background:transparent;text-align:left;cursor:pointer;color:#16425f;}
.kego-member-app .km-history-toggle:hover{background:#f4fbff;}
.kego-member-app .km-history-toggle:focus-visible,.kego-member-app .km-self-select:focus-visible{outline:3px solid #f5bd34;outline-offset:2px;}
.kego-member-app .km-history-title{display:grid;gap:3px;min-width:0;}
.kego-member-app .km-history-title small{font-size:11px;color:#677f91;}
.kego-member-app .km-history-title strong{font-size:14px;font-weight:900;line-height:1.5;overflow-wrap:anywhere;}
.kego-member-app .km-history-badges{display:flex;align-items:center;gap:8px;flex:none;}
.kego-member-app .km-holes-badge{color:#4b6b83;font-size:11px;font-weight:800;}
.kego-member-app .km-claim-badge{font-size:11px;white-space:nowrap;padding:5px 8px;border-radius:30px;font-weight:800;}
.kego-member-app .km-claim-badge.is-claimed{color:#13723b;background:#e8f9ed;}
.kego-member-app .km-claim-badge.is-unclaimed{color:#856129;background:#fff7e6;}
.kego-member-app .km-history-chevron{display:inline-flex;align-items:center;justify-content:center;border:1px solid #b8dce8;width:26px;height:26px;border-radius:50%;font-weight:900;}
.kego-member-app .km-round-detail{padding:7px 12px 22px;background:#f7fcff;border-top:1px solid #e3eef5;}
.kego-member-app .km-round-detail[hidden]{display:none!important;}
.kego-member-app .km-round-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin-bottom:12px;}
.kego-member-app .km-round-player{display:flex;align-items:center;justify-content:space-between;gap:8px;background:#fff;border:1px solid #e0edf1;border-radius:12px;padding:10px 13px;font-size:13px;color:#173b54;}
.kego-member-app .km-round-player strong{font-weight:900;}
.kego-member-app .km-you-chip{font-size:10px;padding:3px 6px;margin-left:7px;border-radius:8px;color:#166e3c;background:#e7f8ed;white-space:nowrap;}
.kego-member-app .km-scorecard-scroll{overflow:auto;border:1px solid #e2edf3;border-radius:12px;background:#fff;max-width:100%;margin-bottom:18px;}
.kego-member-app .km-scorecard{border-collapse:collapse;width:100%;min-width:360px;margin:0;font-size:12px;text-align:center;color:#244661;}
.kego-member-app .km-scorecard th,.kego-member-app .km-scorecard td{padding:8px 9px;border-bottom:1px solid #e3eef4;white-space:nowrap;}
.kego-member-app .km-scorecard thead th{background:#e7f6fd;font-weight:900;}
.kego-member-app .km-scorecard tbody tr:last-child th,.kego-member-app .km-scorecard tbody tr:last-child td{border-bottom:0;}
.kego-member-app .km-self-form{display:flex;flex-wrap:wrap;gap:10px 14px;align-items:end;margin-top:12px;padding:14px;background:#fff;border-radius:14px;border:1px solid #d6eaf3;}
.kego-member-app .km-self-label{display:flex;flex:1 1 240px;flex-direction:column;font-weight:900;font-size:13px;color:#264f68;gap:8px;}
.kego-member-app .km-self-select{border:1px solid #afd1e1;border-radius:10px;min-height:44px;padding:7px 10px;width:100%;background:#fff;color:#153f59;font-family:inherit;}
.kego-member-app .km-self-hint{flex:1 1 100%;font-size:12px;color:#5a6d7f;margin:0;}
.kego-member-app .km-round-loading,.kego-member-app .km-round-error{font-size:12px;color:#5b7081;padding:14px 8px;}
.kego-member-app .km-round-error{color:#b23b25;}
@media(max-width:650px){.kego-member-app .km-history-badges{gap:3px;}.kego-member-app .km-claim-badge{font-size:10px;padding:4px 6px;}.kego-member-app .km-history-toggle{gap:6px;padding:14px 2px;}.kego-member-app .km-history{padding:0 9px;}.kego-member-app .km-round-detail{padding:11px 8px 19px;}}

/* Shared Turnstile client widget: scope to the auth forms only. */
.kego-turnstile-wrap{display:flex;flex-direction:column;gap:5px;align-items:flex-start;max-width:100%;margin:10px 0;}
.kego-turnstile-host{max-width:100%;min-height:65px;}
.kego-turnstile-status{font-size:11px;line-height:1.5;color:#3e6071;}
.kego-turnstile-status.is-error{color:#b42318;}

/* Registration clarity v0.3.2 */
.kego-member-app .km-signup-cta {margin:20px 0 12px;padding:16px;border:1px dashed #91c8e7;border-radius:15px;background:#f1fbff;text-align:center}
.kego-member-app .km-signup-cta p {font-size:13px;font-weight:800;margin:0 0 11px;color:#22547a}
.kego-member-app .km-wide {width:100%;max-width:100%;min-height:48px}
.kego-member-app .km-auth-help {font-size:12px;line-height:1.7;color:#4b7289;margin:2px 0 6px}
.kego-member-app .km-signup-steps {list-style:none;margin:8px 0 21px;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.kego-member-app .km-signup-step {display:flex;gap:5px;align-items:center;min-width:0;padding:9px 7px;border-radius:12px;background:#e8f1f6;border:1px solid #dce9f1;color:#6d8698;font-size:11px;font-weight:800}
.kego-member-app .km-signup-step.is-current{background:#e0f7ff;color:#126da3;border-color:#76c8ee}
.kego-member-app .km-signup-step.is-done{background:#e8fae7;color:#31743a;border-color:#a9df9d}
.kego-member-app .km-step-number {display:grid;place-items:center;width:20px;height:20px;flex:0 0 20px;border-radius:50%;background:#fff;font-size:12px}
.kego-member-app .km-verify-panel {padding:18px;background:#f5fbff;border:1px solid #d5eafa;border-radius:18px}
.kego-member-app .km-verify-icon {font-size:37px;text-align:center}
.kego-member-app .km-verify-panel h3{font-size:20px;text-align:center;margin:2px 0 15px;color:#184c6c}
.kego-member-app .km-verify-panel p{font-size:13px;color:#4e6a82;line-height:1.7;margin:9px 0}
.kego-member-app .km-pending-email {display:block;padding:12px;background:#fff;border:1px solid #c4dfed;border-radius:9px;overflow-wrap:anywhere;font-size:14px}
.kego-member-app .km-verify-help {padding-left:22px;font-size:13px;color:#38596d;line-height:1.75}
.kego-member-app .km-verify-help li{margin:7px 0}
.kego-member-app .km-verify-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.kego-member-app .km-resend-form .kego-turnstile-wrap{margin:0 0 8px}
.kego-member-app .km-delivery-help {border-top:1px solid #d3e7f1;padding-top:14px}
.kego-member-app .km-verify-contact {color:#1373a4;text-decoration:underline;font-size:13px;font-weight:900}
@media(max-width:720px){.kego-member-app .km-signup-step{padding:7px 4px;display:grid;justify-items:center;text-align:center}.kego-member-app .km-step-label{font-size:10px}}

/* Google OAuth / account linking (v0.3.3) */
.kego-member-app .km-google-link{padding-block:24px;}
.kego-member-app .km-google-linked{display:inline-flex;align-items:center;border:1px solid #93d3a8;border-radius:14px;background:#e7f9ed;color:#146e3b;padding:11px 16px;font-size:13px;font-weight:900;}
.kego-member-app .km-google-help{font-size:13px;line-height:1.8;color:#375c77;margin:4px 0 16px;}
.kego-member-app .km-google-link .km-google{width:100%;max-width:360px;min-height:48px;}
.kego-member-app button.km-google:focus-visible{outline:3px solid #f8c52d;outline-offset:3px;}
@media(max-width:650px){.kego-member-app .km-google-link .km-google{max-width:100%;}}
