/* Approved prototype layout, adapted to live state. */
.restored-shell { --live-blue:#2457e6; --live-ink:#17243b; --live-line:#e8ecf2; }
body:has(.restored-shell) { background:#f5f6fa; }
.restored-shell .live-top {height:76px;padding:0 28px;box-shadow:none;border-bottom:1px solid #e9edf3;background:white;}
.restored-shell .live-top .logo {font-size:19px;}
.restored-shell .live-workspace {grid-template-columns:220px minmax(0,1fr);max-width:none;}
.restored-shell .live-nav {padding:28px 16px;border-right:1px solid #e9edf3;background:white;gap:5px;}
.restored-shell .live-nav button {display:flex;align-items:center;gap:12px;border:0;border-radius:10px;background:transparent;color:#707c8f;min-height:46px;padding:12px;font-size:13px;font-weight:500;}
.restored-shell .live-nav button::before,.restored-shell .live-nav button::after {display:none!important;content:none!important;}
.restored-shell .live-nav button.active {background:#edf2ff;color:#2457e6;box-shadow:none;}
.restored-shell .live-nav button svg {flex:none;}
.restored-shell .live-content {padding:32px 36px 24px;max-width:1440px;width:100%;margin:auto;box-sizing:border-box;}
.restored-shell .live-content::before {display:none;}
.restored-shell .home-heading {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:28px;}
.restored-shell h1 {font-size:28px;line-height:1.45;letter-spacing:-1.2px;}
.restored-shell .home-heading p {font-size:13px;color:#788393;margin-top:8px;}
.restored-shell .button {font-size:13px;min-height:42px;padding:11px 17px;border-radius:9px;box-shadow:none;}
.restored-grid {display:grid;grid-template-columns:minmax(0,1.85fr) minmax(260px,1fr);gap:24px;align-items:start;}
.restored-grid .main-col,.restored-grid .aside-col {display:grid;gap:22px;min-width:0;}
.restored-shell .panel {border:1px solid #edf0f5;border-radius:16px;padding:25px;background:white;box-shadow:none;}
.restored-shell .panel-head {display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;}
.restored-shell .panel h2 {font-size:17px;line-height:1.5;margin:0;}
.restored-shell .panel h3 {font-size:16px;margin:14px 0;}
.restored-shell .task-row {width:100%;border:0;border-bottom:1px solid #eff1f6;background:transparent;text-align:left;display:grid;grid-template-columns:36px 1fr 16px;gap:13px;align-items:center;padding:16px 0;color:#24324a;}
.restored-shell .task-row:last-child {border-bottom:0;padding-bottom:0;}
.restored-shell .task-row strong,.restored-shell .task-row small {display:block;}
.restored-shell .task-row strong {font-size:13px;font-weight:500;}
.restored-shell .task-row small {font-size:11px;color:#7c8799;margin-top:6px;}
.restored-shell .task-icon {display:grid;place-items:center;background:#f1f4fb;color:#5271a0;width:36px;height:36px;border-radius:10px;}
.original-next {position:relative;overflow:hidden;padding:28px;border-radius:18px;background:#2457e6;color:white;}
.original-next .eyebrow {color:#fff;font-size:11px;letter-spacing:1.3px;}
.original-next .match-line {display:flex;align-items:center;justify-content:space-between;position:relative;z-index:1;}
.original-next .chip {background:#ffffff26;border:0;color:white;font-size:11px;}
.original-next h2 {font-size:26px;max-width:75%;margin:23px 0 12px;line-height:1.4;}
.original-next>p {font-size:12px;color:#e5ebff;margin:8px 0;max-width:80%;}
.original-mascot {position:absolute;right:18px;top:52px;width:95px;height:105px;object-fit:contain;opacity:.85;}
.original-next>.button {background:transparent;color:white;border:0;padding:8px 0;min-height:36px;text-align:left;}
.original-response {border-top:1px solid #ffffff40;margin-top:16px;padding-top:19px;position:relative;}
.original-response .rsvp-top {display:flex;justify-content:space-between;gap:10px;margin-bottom:15px;font-size:12px;}
.original-response .rsvp-top span {font-size:11px;color:#e0e8ff;}
.original-response small {font-size:10px;color:#dde6ff;line-height:1.7;}
.original-rsvp {display:flex;gap:8px;margin-top:8px;margin-bottom:17px;}
.original-rsvp .button {flex:1;min-width:0;padding:10px 7px;background:#ffffff12;color:white;border:1px solid #ffffff65;font-size:11px;}
.original-rsvp .button[aria-pressed="true"] {background:white;color:#2457e6;border-color:white;}
.original-check {display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid #ffffff30;padding:16px 0;}
.original-check b,.original-check small {display:block;}
.original-check b {font-size:12px;margin-bottom:5px;}
.original-check .button {background:white;color:#2457e6;font-size:11px;border:0;}
.original-share {display:flex;gap:12px;margin-top:12px;}
.original-share .button {color:#e0e8ff;background:transparent;border:0;min-height:32px;padding:6px 0;font-size:11px;text-decoration:underline;text-underline-offset:4px;}
.original-empty {text-align:center;}
.original-empty img {width:85px;height:95px;object-fit:contain;margin:0 auto 18px;}
.original-empty p {font-size:13px;color:#788393;line-height:1.7;margin:15px 0;}
.restored-shell .team-banner {display:flex;align-items:center;gap:15px;background:white;border:1px solid #edf0f5;border-radius:16px;padding:23px;color:#17243b;}
.restored-shell .team-banner h3 {font-size:17px;margin:0;}
.restored-shell .team-banner p {font-size:11px;color:#7c8799;margin:8px 0;}
.restored-shell .team-banner button {border:0;background:none;color:#2457e6;padding:5px 0;font-size:11px;}
.restored-shell .crest {background:#2457e6;flex:none;width:58px;height:65px;font-size:18px;}
.restored-shell .stat-grid {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:20px 0;}
.restored-shell .stat-grid strong {display:block;font-size:24px;color:#17243b;}
.restored-shell .stat-grid span {font-size:10px;color:#7c8799;display:block;margin-top:8px;}
.original-rule-excerpt {font-size:13px;line-height:1.9;white-space:pre-line;margin:15px 0;overflow-wrap:anywhere;}
.restored-shell .live-muted {font-size:12px;line-height:1.8;}
.restored-create {margin-top:24px;}
.restored-create:empty {display:none;}
.restored-shell .match-create {max-width:780px;margin:auto;background:white;border:1px solid #e8ecf2;border-radius:16px;}
.restored-shell:has(.match-create[open]) .restored-grid {display:none;}
.restored-shell .match-create input,.restored-shell .match-create select {min-height:46px;font-size:14px;}
.restored-shell .match-create legend {font-size:20px;}
.original-match-list {display:grid;gap:16px;}
.original-match-row {display:grid;grid-template-columns:65px 1fr 24px;gap:24px;align-items:center;text-align:left;padding:24px;background:white;border:1px solid #edf0f5;border-left:3px solid #2457e6;border-radius:12px;color:#17243b;}
.original-match-row>div {text-align:center;border-right:1px solid #edf0f5;}
.original-match-row>div>b {font-size:30px;display:block;}
.original-match-row small,.original-match-row p {font-size:12px;color:#788393;}
.original-match-row h2 {font-size:18px;margin:10px 0;}
.restored-shell .page-heading {margin:0 0 24px;padding:0;background:none;border:0;}
.restored-shell .live-card {padding:24px;border-radius:15px;box-shadow:none;border-color:#edf0f5;}
.restored-shell .match-overview {background:white;color:#17243b;}
.restored-shell .match-overview h1 {font-size:24px;}
.restored-shell .my-hero {background:white;color:#17243b;}
.restored-shell .rules-layout {grid-template-columns:minmax(220px,1fr) minmax(0,1.5fr);}
.restored-shell .rules-guide {background:white;color:#17243b;border:1px solid #edf0f5;}
.restored-shell .rules-editor {border:1px solid #edf0f5;box-shadow:none;}
.restored-shell .legal-footer {margin-top:36px;padding:18px 0;}
@media(max-width:1100px){.restored-shell .live-workspace{grid-template-columns:185px minmax(0,1fr)}.restored-shell .live-content{padding:28px 24px}.restored-grid{grid-template-columns:1fr}.restored-grid .aside-col{grid-template-columns:1fr 1fr}.restored-grid .team-banner{grid-column:1/-1}}
@media(max-width:760px){.restored-shell .live-top{height:66px;padding:0 14px}.restored-shell .live-workspace{display:block}.restored-shell .live-content{padding:22px 16px 105px}.restored-shell .home-heading{align-items:flex-start;gap:10px}.restored-shell h1{font-size:22px}.restored-shell .home-heading p{font-size:11px}.restored-shell .home-heading>.button{font-size:11px;padding:8px;min-width:80px}.restored-shell .live-nav{position:fixed;left:0;right:0;bottom:0;top:auto;height:auto;width:auto;display:flex;flex-direction:row;overflow-x:auto;gap:0;padding:6px 6px max(8px,env(safe-area-inset-bottom));z-index:40;border-top:1px solid #e9edf3}.restored-shell .live-nav button{flex:0 0 65px;min-height:54px;padding:6px 3px;flex-direction:column;gap:5px;font-size:10px}.restored-shell .live-nav button span{white-space:nowrap}.restored-grid,.restored-grid .aside-col{grid-template-columns:1fr;gap:16px}.restored-grid .team-banner{grid-column:auto}.original-next{padding:22px}.original-next h2{font-size:23px}.original-mascot{width:72px;right:12px}.original-rsvp{gap:5px}.original-rsvp .button{font-size:10px}.original-check{gap:7px}.original-check .button{font-size:10px;padding:9px}.restored-shell .panel{padding:21px}.original-match-row{grid-template-columns:45px 1fr 12px;padding:18px;gap:14px}.original-match-row h2{font-size:16px}.restored-shell .rules-layout{grid-template-columns:1fr}.restored-shell .rules-guide{padding:20px}.restored-shell .match-create[open] form{padding:20px}.restored-shell .live-account select{max-width:125px}.restored-shell .live-top .logo{font-size:15px}}
@media(prefers-reduced-motion:no-preference){.restored-shell main{animation:restored-enter 180ms ease-out}@keyframes restored-enter{from{opacity:.6;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}}

.restored-shell {background:#f5f6fa;}
.restored-rules{display:grid;grid-template-columns:1fr 1.3fr;gap:24px;align-items:start;}
.restored-field{display:block;font-size:13px;margin-top:24px;}
.restored-field textarea{display:block;width:100%;box-sizing:border-box;margin:10px 0 16px;padding:15px;border:1px solid #e1e6ef;border-radius:10px;font:inherit;line-height:1.8;resize:vertical;background:#fcfdff;}
.restored-shell .original-rule-excerpt{overflow-wrap:anywhere;}
.restored-shell [data-rules-preview]{margin:20px 0;padding:16px;background:#f4f7ff;border-radius:12px;}
.restored-shell [data-rules-preview][hidden]{display:none;}
@media(max-width:760px){.restored-rules{grid-template-columns:1fr;gap:16px;}}

.selected-match-bar{display:flex;justify-content:space-between;gap:16px;align-items:center;border-bottom:1px solid #e1e6ef;padding:0 0 18px;margin-bottom:24px;}
.selected-match-bar small,.selected-match-bar strong,.selected-match-bar span{display:block;}
.selected-match-bar small{font-size:10px;color:#788393;margin-bottom:6px;}
.selected-match-bar strong{font-size:17px;}
.selected-match-bar span{font-size:11px;color:#788393;margin-top:6px;}
.selected-match-bar>div:last-child{display:flex;gap:8px;flex:none;}
@media(max-width:760px){.selected-match-bar{display:block}.selected-match-bar>div:last-child{margin-top:14px}.selected-match-bar .button{font-size:11px;}}

.restored-quick{display:none;}
@media(max-width:760px){
.restored-shell .home-heading>.button{display:inline-flex;}
.restored-shell .live-nav button[data-tab="squad"],.restored-shell .live-nav button[data-tab="referee"],.restored-shell .live-nav button[data-tab="rules"],.restored-shell .live-nav button[data-tab="stats"]{display:none;}
.restored-shell .live-nav button{flex:1 1 0;min-width:0;font-size:10px;}
.restored-quick{display:flex;justify-content:space-between;gap:7px;margin:0 0 22px;}
.restored-quick button{display:flex;align-items:center;justify-content:center;gap:6px;flex:1;min-height:38px;padding:8px 4px;border:1px solid #e5eaf2;background:white;border-radius:9px;font:inherit;font-size:11px;color:#67778e;}
.restored-quick button[aria-current="page"]{color:#2457e6;background:#edf2ff;border-color:#cfdcff;}
.restored-quick svg{width:15px;height:15px;}
}

/* Original squad workspace uses its own board/sidebar grid inside the section. */
.restored-shell .original-squad{display:block;min-width:0}
.original-squad .live-squad-photo{display:inline-flex;align-items:center;justify-content:center;overflow:hidden}
.original-squad .live-squad-photo .profile-avatar{width:100%;height:100%;border-radius:inherit;font-size:20px}
.original-squad .live-squad-photo img{width:100%;height:100%;object-fit:cover}
.original-squad .squad-slot .squad-portrait{width:54px;height:60px;border-radius:10px}
.original-squad .selected-photo{width:64px;height:64px;border-radius:12px}
.original-squad .bench-photo{width:38px;height:42px;border-radius:8px}
.original-squad .squad-slot{border:0;background:transparent;padding:0;min-height:0}
.original-squad .squad-config select{width:auto;margin:0}
.original-squad .appearance-table input[type=checkbox]{width:auto}
.original-squad .appearance-table select{width:auto;margin:0}
.original-squad .appearance-table input[type=number]{width:54px;margin:0}
.original-squad .squad-heading h1{font-size:clamp(23px,2.4vw,32px)}

.original-squad .squad-config{display:flex;flex-wrap:wrap;align-items:center}

/* Focused attendance poll: original home layout and branding stay in place. */
.home-poll{background:#fff;color:#17243b;border-radius:16px;padding:18px;box-shadow:0 4px 16px #12388612}
.poll-heading,.poll-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}
.poll-heading{font-size:14px;margin-bottom:12px}.poll-heading>span{font-size:11px;color:#64748b}
.poll-options{display:grid;gap:8px}
.poll-option{--poll-color:#15805a;--poll-bg:#e8f6ef;position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;gap:10px;width:100%;min-height:48px;padding:10px 12px;border:1px solid #e4e9ef;background:#fff;border-radius:10px;font:inherit;color:#253247;text-align:left;cursor:pointer;transition:border-color .15s,transform .15s}
.poll-option[data-value=maybe]{--poll-color:#946000;--poll-bg:#fff5dc}.poll-option[data-value=no]{--poll-color:#b54965;--poll-bg:#fceef2}
.poll-fill{position:absolute;inset:0 auto 0 0;width:var(--vote-share);background:var(--poll-bg);z-index:-1;transition:width .25s ease}
.poll-option[aria-pressed=true]{border:2px solid var(--poll-color);padding:9px 11px;color:var(--poll-color)}
.poll-option:hover{border-color:var(--poll-color)}.poll-option:focus-visible{outline:3px solid #9cbdff;outline-offset:3px}.poll-option:active{transform:scale(.99)}
.poll-emoji{font-size:22px;line-height:1}.poll-option b{font-size:13px}.poll-count{margin-left:auto;font-size:12px;font-variant-numeric:tabular-nums}.poll-mark{display:grid;place-items:center;width:18px;height:18px;border:1.5px solid #b6c0ce;border-radius:50%;font-size:11px;flex:none}
.poll-option[aria-pressed=true] .poll-mark{background:var(--poll-color);border-color:var(--poll-color);color:white}.poll-option:disabled{cursor:default;opacity:.85}
.poll-foot{font-size:10px;color:#64748b;margin-top:12px;min-height:16px}.poll-deadline{font-size:11px;color:#e1eaff}.poll-deadline summary{cursor:pointer;min-height:28px}.poll-deadline small{display:block;padding-bottom:8px}
.original-check .button{min-height:44px;white-space:nowrap}.original-response .original-check{border-top:0;padding:16px 0 10px}
@media(max-width:760px){.home-poll{padding:14px}.original-next{padding:18px}.poll-heading{font-size:13px}.poll-option{min-height:48px}.original-response{padding-top:14px}.original-next h2{margin-top:16px}.original-share{margin-top:5px}}
@media(prefers-reduced-motion:reduce){.poll-option,.poll-fill{transition:none}}

.poll-option b{color:var(--poll-color)}

/* Invitation is a self-contained extension of the approved club-card design. */
.team-invite-panel{display:grid;grid-template-columns:minmax(240px,360px) minmax(0,1fr);gap:28px;align-items:center;margin-top:24px;padding:24px;background:#f5f7fc;border-radius:24px}
.team-invite-card{position:relative;overflow:hidden;border-radius:24px;padding:28px;background:#173263;color:white;text-align:center;isolation:isolate}
.team-invite-card:before{content:"";position:absolute;inset:14px;border:1px solid #ffffff30;border-radius:16px;z-index:-1}
.team-invite-eyebrow{font-size:11px;letter-spacing:.08em;color:#b9d0ff}.team-invite-badge{display:grid;place-items:center;width:72px;height:84px;margin:24px auto 16px;background:#2c61f1;clip-path:polygon(0 0,100% 0,100% 76%,50% 100%,0 76%);font-size:30px;font-weight:800}
.team-invite-card h2{color:white!important;font-size:28px!important;overflow-wrap:anywhere;margin:8px 0!important}.team-invite-card p{color:#cbdcff!important;margin:8px 0 24px!important}.team-invite-card footer{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;color:#cbdcff}.team-invite-card footer img{width:28px;height:28px;background:white;border-radius:50%}
.team-invite-controls{min-width:0}.team-invite-controls input{width:100%;font-size:13px}.team-invite-controls small{display:block;margin-top:12px;color:#63718c;line-height:1.6}[data-action="team-kakao"]{background:#fee500!important;color:#191919!important;border-color:#fee500!important}
.invite-landing{max-width:460px!important;margin:40px auto!important;padding:20px!important;text-align:center}.invite-landing h1{font-size:24px!important;margin:24px 0 10px}.invite-landing>.button{width:100%;margin-top:12px}
@media(max-width:700px){.team-invite-panel{grid-template-columns:1fr;padding:16px;gap:20px}.team-invite-controls .live-actions{display:grid;grid-template-columns:1fr 1fr}.team-invite-controls [data-action="team-kakao"]{grid-column:1/-1}.team-invite-controls .button{margin:0;width:100%}.invite-landing{margin:12px auto!important}}

/* Match-day operations: the pitch, place and attendance carry the hierarchy. */
.team-start{max-width:1080px;margin:auto}.team-start header{margin:24px 0}.team-start h1{font-size:30px}.team-start-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:24px}.team-start-grid .live-card{margin:0;padding:30px}.team-start-grid h2{margin:14px 0 26px}.team-start-grid small{display:block;color:#68758c;line-height:1.6;margin-top:16px}.region-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.team-join-form{background:#eef3ff!important}.team-join-form>img{display:block;margin:10px auto 24px}.my-club-strip{display:flex;flex-wrap:wrap;gap:12px;margin:20px 0 28px}.my-club-strip button{display:flex;align-items:center;gap:14px;background:white;border:1px solid #e4e9f3;border-radius:18px;padding:18px;text-align:left}.my-club-strip small{display:block;color:#69768c;font-size:11px;margin-top:6px}.club-initial{display:grid;place-items:center;background:#2457ed;color:white;width:44px;height:48px;border-radius:12px;font-weight:bold}.team-name-warning:empty{display:none}.team-name-warning{padding:14px;background:#fff7df;border-radius:12px;margin:12px 0}.team-name-warning input{width:auto!important}.invite-page .team-invite-panel{max-width:1000px;margin:auto}.team-start-grid .button{width:100%;min-height:48px}
.match-day-heading{display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px}.match-day-heading h1{font-size:30px;margin:10px 0}.match-day-heading p{font-size:14px;color:#52627e}.match-day-layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:24px;align-items:start}.match-squad-preview{background:white;border:1px solid #e4e9f3;border-radius:24px;padding:24px;min-width:0}.match-squad-preview header{display:flex;align-items:center;justify-content:space-between;gap:12px}.match-squad-preview h2{font-size:23px;margin:8px 0}.match-squad-preview small{color:#63728a;font-size:12px}.match-preview-field{min-height:520px!important;height:560px!important;max-height:none!important;width:100%;margin:12px 0}.preview-player{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:3px;width:85px;color:white}.preview-player b{font-size:12px;background:#102844b0;padding:3px 7px;border-radius:6px;max-width:85px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.preview-player small{color:#e5f3ed}.preview-player .avatar,.preview-player img{width:42px;height:42px;object-fit:cover;border-radius:50%;background:white}.empty-position{display:grid;place-items:center;border:1px dashed #ffffff99;border-radius:50%;width:34px;height:34px;color:white}.match-squad-preview footer{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:#61718a;flex-wrap:wrap}.squad-empty-hint{font-size:13px;color:#6b7b91}.match-day-sidebar{display:grid;gap:16px}.venue-card,.match-check-card,.match-vote-card{background:white;border:1px solid #e4e9f3;border-radius:20px;padding:20px}.venue-card h2{font-size:21px;margin:10px 0}.venue-card p{font-size:13px;line-height:1.6;color:#687891}.venue-card #match-venue-map{height:190px;border-radius:12px;overflow:hidden;z-index:0;margin:14px 0}.venue-card>.button{width:100%;font-size:13px}.venue-missing{background:#f4f7fc;padding:16px;border-radius:12px}.attendance-status{display:flex;align-items:center;gap:16px;padding:18px;border-radius:16px;background:#f2f5fc;color:#1c3155;min-height:108px}.attendance-stamp{display:grid;place-items:center;width:54px;height:54px;flex-shrink:0;background:white;border-radius:50%;font-size:26px}.attendance-status b{font-size:20px!important}.attendance-status p{font-size:13px!important;color:inherit!important;margin:7px 0!important}.attendance-status small{font-size:12px!important;color:inherit!important}.attendance-status.confirmed{background:#e5f6ef;color:#146244}.attendance-status.late{background:#fff2da;color:#875200}.attendance-status.pending{background:#fff5dc;color:#885b14}.match-check-card>.button{width:100%;margin:12px 0}.check-rules{display:flex;justify-content:space-between;gap:8px;font-size:12px;color:#65748b}.original-check{background:white!important;padding:18px!important;border-radius:18px;margin-top:16px;display:flex!important;gap:14px!important;align-items:center}.original-check .attendance-status{flex:1;margin:0}.original-check>.button{flex-shrink:0}.match-vote-card h2{font-size:18px}.match-vote-card .rsvp-choice{gap:6px}.match-vote-card .button{min-width:0!important;white-space:nowrap;padding:12px 6px;font-size:13px}.match-vote-card>small{font-size:11px;color:#6c7890}.match-secondary-actions{display:flex;gap:10px;flex-wrap:wrap;margin:20px 0}.attendance-roster>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:18px}.attendance-roster h2{font-size:21px;margin:0}.attendance-roster>.attendance-status{margin-bottom:14px;max-width:480px}.attendance-person{display:grid;place-items:center;flex-shrink:0;width:44px;height:44px;border-radius:50%;background:#eef2f8;color:#8c99ad;font-size:22px}.attendance-person.present{background:#e0f5e9;color:#14774b}.attendance-person.late,.attendance-person.pending{background:#fff2d9;color:#916311}.notice-preview{white-space:pre-wrap;word-break:keep-all;overflow-wrap:anywhere;background:#f3f6fc;padding:22px;border-radius:16px;font:inherit;font-size:15px;line-height:1.9;color:#19315a;margin:18px 0}.match-share-dialog details{font-size:13px;color:#63718a}.match-share-dialog textarea{font-size:13px;line-height:1.6;margin:12px 0}.match-share-dialog .live-actions{display:grid;grid-template-columns:1fr 1fr}.match-share-dialog .live-actions>.kakao-notice-button{grid-column:1/-1;background:#fee500;color:#191919;border-color:#fee500}.referee-heading{display:flex;align-items:center;justify-content:space-between}.referee-room .server-clock{background:#132c55;color:white;text-align:center;padding:30px;border:none}.referee-room .clock-digits{font-size:clamp(70px,12vw,120px);color:white}.referee-room .server-clock .live-muted{color:#b6cbed}.referee-room [data-clock-controls]{display:flex;justify-content:center;align-items:center;gap:10px;flex-wrap:wrap}.referee-room [data-clock-controls] .button{min-height:52px}.referee-room .clock-duration{color:white}
@media(max-width:760px){.team-start-grid,.region-fields,.match-day-layout{grid-template-columns:1fr}.team-start-grid .live-card{padding:22px}.team-start h1,.match-day-heading h1{font-size:25px}.match-day-heading{display:block}.match-day-heading>.button{width:100%;margin-top:8px}.match-squad-preview{padding:16px}.match-squad-preview header{align-items:flex-start}.match-squad-preview h2{font-size:20px}.match-squad-preview header>.button{font-size:12px;padding:12px}.match-preview-field{height:480px!important;min-height:480px!important}.preview-player{width:65px}.preview-player b{font-size:10px;max-width:65px}.preview-player .avatar,.preview-player img{width:34px;height:34px}.original-check{flex-direction:column!important;align-items:stretch!important}.original-check .attendance-status{width:100%}.original-check>.button{width:100%}.attendance-roster>header{align-items:flex-start}.attendance-roster .live-row{flex-wrap:wrap}.attendance-edit{margin-left:60px}.referee-room .server-clock{padding:20px 12px}.referee-room .server-clock header{gap:8px}.referee-room .server-clock h2{font-size:18px}.my-club-strip button{width:100%}}

.match-squad-preview .quarter-ribbon{display:flex;gap:6px}.match-squad-preview .quarter-ribbon button{min-width:48px;flex:1;padding:10px}.match-squad-preview header small{word-break:keep-all;line-height:1.65}.match-squad-preview header .button{white-space:nowrap}
@media(max-width:440px){.match-squad-preview header{display:block}.match-squad-preview header .button{width:100%;margin:12px 0 6px}.match-preview-field{height:430px!important;min-height:430px!important}.match-day-heading{margin-bottom:18px}.attendance-status{padding:14px;gap:12px}.attendance-status b{font-size:18px!important}.check-rules{flex-wrap:wrap}}
/* Optional, role-specific first-use guide. Keep it independent of team forms. */
.tutorial-dialog{position:fixed;inset:0;width:min(560px,calc(100vw - 28px));max-height:90dvh;padding:0;border:1px solid #dfe5ef;border-radius:26px;margin:auto;color:#172744;background:#fff;box-shadow:0 25px 100px #11234840;font-family:inherit;overscroll-behavior:contain}.tutorial-dialog::backdrop{background:#10213c85;backdrop-filter:blur(4px)}.guide-top{display:flex;align-items:center;justify-content:space-between;padding:17px 24px;border-bottom:1px solid #edf0f6;color:#6b7b94;font-size:12px}.guide-top button{border:0;background:#f2f5fa;border-radius:50%;width:32px;height:32px;cursor:pointer;color:#233854}.guide-body{padding:24px 28px}.guide-body h2{font-size:23px;line-height:1.5;word-break:keep-all;margin:14px 0}.guide-body h2:focus{outline:none}.guide-body p{font-size:14px;line-height:1.85;word-break:keep-all;color:#536681;margin:12px 0}.guide-body small{font-size:11px;color:#71819a;line-height:1.7}.guide-mascot{display:block;width:76px;height:76px;margin:0 auto 18px}.guide-roles{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:20px 0 12px}.guide-roles button{font:inherit;text-align:left;padding:20px 14px;border:1px solid #dce3ef;border-radius:16px;background:#fff;color:#172744;cursor:pointer}.guide-roles button[aria-pressed=true]{border:2px solid #2653ef;background:#eef3ff;padding:19px 13px}.guide-roles b{display:block;font-size:15px}.guide-roles span{display:block;font-size:11px;line-height:1.7;margin-top:10px;color:#647797}.guide-start{width:100%;margin:16px 0 0!important}.guide-reminder{display:block;text-align:center;font-size:11px!important;color:#71819a!important;line-height:1.8}.guide-progress{display:flex;justify-content:space-between;font-size:12px}.guide-body progress{display:block;width:100%;height:5px;margin:12px 0 20px;border:0;accent-color:#2653ef}.guide-demo{border-radius:18px;padding:20px;background:#f1f5ff;min-height:144px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;text-align:center}.guide-demo>small{align-self:flex-start;color:#8a99b2}.guide-demo>span{font-size:12px;color:#617592}.guide-demo>strong{font-size:12px;color:#2753d6}.guide-votes{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.guide-votes span{background:#fff;padding:10px 9px;border-radius:10px;font-size:12px}.guide-votes span:first-child{color:#178268}.guide-pitch{display:flex;align-items:center;justify-content:space-around;width:100%;min-height:90px;background:#1e6652;border:1px solid #91b5a5;border-radius:8px}.guide-pitch span{border-radius:50%;padding:10px;background:white;font-size:11px}.guide-motion{display:flex;gap:20px;align-items:center;color:#2653ef;font-size:32px}.guide-motion b{font-size:55px}.guide-time{font-size:40px;font-variant-numeric:tabular-nums;color:#172744}.guide-path{padding:13px 16px;border-left:3px solid #2653ef;background:#f7f9fc}.guide-path small,.guide-path b{display:block}.guide-path b{font-size:12px;line-height:1.8;margin-top:4px}.guide-link{border:0;background:none;color:#2653ef;font:inherit;font-size:12px;margin:13px 0;cursor:pointer;padding:6px 0}.guide-controls{display:flex;gap:10px;margin:10px 0 16px}.guide-controls .button{flex:1;margin:0}.guide-done{display:grid;place-items:center;width:72px;height:72px;background:#e8f7ef;color:#178268;border-radius:50%;font-size:35px;margin:12px auto}.tutorial-entry{display:flex;gap:20px;align-items:center}.tutorial-entry img{width:76px;height:76px}.tutorial-entry h2{margin-top:0}.tutorial-entry p{font-size:13px;color:#687b99}.tutorial-dialog button:focus-visible{outline:3px solid #92acff;outline-offset:3px}@media(max-width:440px){.guide-body{padding:20px}.guide-body h2{font-size:20px}.guide-top{padding:13px 18px}.guide-roles button{padding:16px 10px}.guide-roles button[aria-pressed=true]{padding:15px 9px}.guide-roles b{font-size:13px}.tutorial-entry{gap:12px}.tutorial-entry img{width:52px;height:52px}}@media(prefers-reduced-motion:no-preference){.guide-body{animation:guide-reveal .18s ease-out}@keyframes guide-reveal{from{opacity:.2;transform:translateY(5px)}to{opacity:1;transform:none}}}

.guide-body progress::-webkit-progress-bar{background:#e8edf6;border-radius:6px}.guide-body progress::-webkit-progress-value{background:#2653ef;border-radius:6px}

/* Club discovery extends the approved blue workspace. */
.club-discovery{max-width:1200px;margin:auto}.club-discovery h1{font-size:clamp(24px,3vw,34px);margin:10px 0}.club-discovery header p{color:#64748b}.club-map-filters{display:flex;align-items:end;gap:12px;margin:24px 0 16px;flex-wrap:wrap}.club-map-filters label{display:grid;gap:7px;font-size:13px}.club-map-filters label:first-child{flex:1;min-width:180px}.club-map-filters input,.club-map-filters select,.club-settings textarea{font:inherit;border:1px solid #dce3f1;border-radius:12px;padding:12px;background:white;min-height:46px;box-sizing:border-box;width:100%}.club-map-layout{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(260px,1fr);border:1px solid #dce3f1;border-radius:20px;overflow:hidden;background:white}.club-map-layout #club-map{height:500px;z-index:0}.club-map-layout aside{max-height:500px;overflow:auto}.club-list-heading{display:flex;justify-content:space-between;gap:12px;padding:20px;border-bottom:1px solid #edf0f6}.club-list-heading span{font-size:12px;color:#64748b}.club-result{display:flex;align-items:center;gap:12px;width:100%;padding:20px;text-align:left;background:white;border:0;border-bottom:1px solid #edf0f6;cursor:pointer;color:#172743}.club-result:hover,.club-result:focus-visible{background:#edf3ff}.club-result>span:nth-child(2){display:grid;gap:7px;flex:1}.club-result small{color:#64748b;font-size:11px}.club-result i{color:#2457e6}.club-badge,.club-marker b{display:grid;place-items:center;background:#2457e6;color:white;border-radius:12px;width:42px;height:42px;font-weight:bold}.club-marker b{width:38px;height:38px;border:3px solid white;box-shadow:0 3px 12px #18366b44}.club-empty{padding:24px;color:#64748b;font-size:14px;line-height:1.8}.club-settings{margin-top:20px;display:grid;gap:16px}.club-settings>p{margin:0;color:#64748b}.club-settings>label{display:grid;gap:8px}.club-settings .club-publish{display:flex;align-items:start;gap:12px}.club-publish input{width:20px;height:20px;flex:none}.club-publish span{display:grid;gap:6px}.club-publish small{color:#64748b;line-height:1.6}.club-settings>button{justify-self:start}.club-settings textarea{min-height:90px}.squad-player-picker{width:min(440px,calc(100vw - 32px));max-height:80dvh;border:0;border-radius:20px;padding:24px;color:#172743}.squad-player-picker::backdrop{background:#17274377}.squad-player-picker header{display:flex;justify-content:space-between;align-items:center;gap:16px}.squad-player-picker .bench-player{width:100%;margin:8px 0}.squad-player-picker header button{border:0;background:#edf3ff;border-radius:10px;padding:10px;cursor:pointer}.squad-drag-ghost .slot-role{background:#2457e6;color:white}
@media(max-width:700px){.club-map-layout{grid-template-columns:1fr}.club-map-layout #club-map{height:330px}.club-map-layout aside{max-height:280px}.club-map-filters{gap:8px}.club-map-filters label:first-child{flex-basis:70%}.club-map-filters button{flex:1}.club-settings{padding:20px}.club-result{padding:15px}.club-settings>button{width:100%}}

/* Action-led onboarding: actual controls remain clickable under the spotlight. */
.tour-layer{position:fixed;inset:0;z-index:100000;pointer-events:none;color:#172744;font-family:inherit}.tour-ring{position:fixed;border:3px solid #386bff;border-radius:12px;box-shadow:0 0 0 9999px #12213b55;pointer-events:none;box-sizing:border-box}.tour-coach{position:fixed;box-sizing:border-box;pointer-events:auto;background:white;border:1px solid #dce5f4;border-radius:18px;padding:17px;box-shadow:0 10px 40px #10244133;max-height:48dvh;overflow:auto}.tour-coach header{display:flex;gap:8px;align-items:center;color:#667994;font-size:11px}.tour-coach header span{flex:1}.tour-coach button{font:inherit;cursor:pointer;border:0;background:#edf3ff;border-radius:8px;color:#2457e6;padding:8px 10px;min-height:32px}.tour-coach header button{width:32px;padding:4px}.tour-coach h2{font-size:17px;line-height:1.5;margin:12px 0 8px;word-break:keep-all}.tour-coach p{font-size:13px;line-height:1.7;color:#526780;margin:8px 0 12px;word-break:keep-all}.tour-coach footer{display:flex;align-items:center;justify-content:space-between;gap:10px}.tour-coach small{display:block;color:#7d8ba0;font-size:10px;margin-top:10px}.tour-coach button:disabled{opacity:.4;cursor:default}.tour-coach button:focus-visible{outline:3px solid #9eb8ff;outline-offset:2px}.tour-coach>.button{margin:6px 3px 0 0}.tour-coach .primary{background:#2457e6;color:white}.tour-ring[hidden]{display:none}
@media(max-width:760px){.tour-coach{padding:13px;border-radius:14px;max-height:40dvh}.tour-coach h2{font-size:15px;margin:8px 0 6px}.tour-coach p{font-size:12px;margin:6px 0 9px}.tour-coach small{display:none}}

@media(max-width:760px){body.tour-running{padding-bottom:var(--tour-space,300px)}body.tour-running .tour-coach{left:12px!important}}
/* Arrival details and the team schedule reuse the approved blue-and-white UI. */
.arrival-detail{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-top:8px;font-variant-numeric:tabular-nums}.arrival-detail strong{color:#2457ed}.arrival-detail time{font-size:15px}.schedule-switch{display:flex;gap:8px;margin-bottom:16px}.schedule-switch [aria-pressed=true]{background:#2457ed;color:white}.calendar-toolbar{display:flex;align-items:center;gap:12px;margin-bottom:20px}.calendar-toolbar h2{margin:0 auto 0 0;font-size:22px}.calendar-week,.calendar-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}.calendar-week span{text-align:center;padding:12px;font-size:13px;color:#62708a}.calendar-week span:first-child{color:#d95768}.calendar-grid{gap:5px}.calendar-day{min-height:100px;text-align:left;border:1px solid #e7ecf5;background:#fff;border-radius:12px;padding:10px;display:flex;flex-direction:column;gap:6px;cursor:pointer;color:#192944;min-width:0}.calendar-day span{font-size:16px}.calendar-day b{font-size:11px;color:#2457ed}.calendar-day small{font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;line-height:1.7}.calendar-day.outside{background:#f7f8fc;color:#8390a6}.calendar-day.today span{font-weight:bold;text-decoration:underline;text-decoration-color:#2457ed;text-underline-offset:5px}.calendar-day[aria-pressed=true]{border:2px solid #2457ed;background:#edf3ff;padding:9px}.calendar-day:focus-visible{outline:3px solid #98b1ff;outline-offset:2px}.calendar-agenda{margin-top:18px}.calendar-agenda header{display:flex;align-items:center;justify-content:space-between}.calendar-agenda h2{font-size:20px}.calendar-match{display:flex;width:100%;align-items:center;gap:16px;padding:18px 0;background:none;border:0;border-top:1px solid #e8edf6;text-align:left;cursor:pointer;color:#192944}.calendar-match>span:nth-child(2){flex:1;min-width:0}.calendar-match strong,.calendar-match small{display:block;overflow-wrap:anywhere}.calendar-match small{color:#62708a;margin-top:7px}.calendar-match time{font-variant-numeric:tabular-nums;font-weight:700}.calendar-match:hover{background:#f6f8fd}
@media(max-width:760px){.match-calendar.panel{padding:12px}.calendar-toolbar{gap:6px}.calendar-toolbar h2{font-size:17px}.calendar-toolbar .button{padding:8px;min-width:32px}.calendar-grid{gap:3px}.calendar-day{min-height:66px;padding:7px 4px;border-radius:8px}.calendar-day[aria-pressed=true]{padding:6px 3px}.calendar-day small{display:none}.calendar-day span{font-size:14px}.calendar-day b{font-size:10px}.calendar-week span{padding:8px 0}.calendar-match{gap:10px;flex-wrap:wrap}.calendar-match time{font-size:12px}.calendar-match .chip{font-size:10px}.arrival-detail{gap:6px}.attendance-roster .live-row{align-items:flex-start}}
