.club-planner{--planner-paper:#f7f7ef;--planner-ink:#173c2a;--planner-line:#dfe7d8;color:var(--ink);min-width:0}.planner-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:28px;border-radius:24px;background:linear-gradient(125deg,#123c29,#26774b);color:#fff;position:relative;overflow:hidden}.planner-hero:after{content:'';position:absolute;width:210px;height:210px;left:-40px;top:-80px;border:1px solid #d6eea340;border-radius:50%;box-shadow:0 0 0 25px #d6eea30a,0 0 0 50px #d6eea30a;pointer-events:none}.planner-kicker{color:#d6eea3;font-size:11px;letter-spacing:.02em}.planner-hero h2{font-size:25px;margin:10px 0}.planner-hero p{font-size:12px;color:#e2efdf}.planner-emblem{font-size:56px;opacity:.7;z-index:1}.planner-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:20px 0}.planner-toolbar label{display:flex;align-items:center;gap:8px;font-size:12px}.planner-toolbar select{max-width:220px;border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--white);color:var(--ink);font:inherit}.planner-views{display:flex;padding:5px;background:var(--planner-paper);border:1px solid var(--planner-line);border-radius:14px}.planner-views button{min-width:48px;min-height:40px;border:0;border-radius:10px;color:#43614e;background:transparent;font:inherit;font-size:12px}.planner-views button[aria-pressed=true]{background:#1b6341;color:#fff;box-shadow:0 4px 12px #143f2520}.planner-period{display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:center;margin:18px 0}.planner-period>button{border:1px solid var(--line);background:var(--white);color:var(--ink);border-radius:12px;width:42px;height:42px;font-size:20px;flex-shrink:0}.planner-period h3{font-size:15px;margin:0 0 6px}.planner-period small{font-size:11px;color:var(--muted)}.planner-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.planner-stats>div{display:flex;flex-direction:column;gap:4px;border:1px solid var(--line);border-top:3px solid #2d9665;border-radius:16px;padding:16px;background:var(--white)}.planner-stats b{font-size:25px}.planner-stats span{font-size:11px}.planner-stats>.approved{border-top-color:#e05255}.planner-stats>.pending{border-top-color:#e9b348}.planner-stats>.closed{border-top-color:#87948b}.planner-legend{font-size:10px;color:var(--muted);margin:15px 0}.planner-days{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:12px;align-items:start}.planner-day-card{padding:12px;background:var(--white);border:1px solid var(--line);border-radius:18px;min-width:0}.planner-day-title{display:flex;flex-direction:column;gap:7px;width:100%;background:transparent;color:var(--ink);border:0;border-bottom:1px solid var(--line);padding:4px 0 12px;margin-bottom:10px;text-align:right;font:inherit;font-size:12px}.planner-day-title small{font-size:10px;color:var(--muted)}.planner-holiday .planner-day-title b{color:#d85151}.planner-slot{display:flex;flex-direction:column;gap:5px;border-right:3px solid #379569;padding:9px 11px;margin:7px 0;background:#3095650d;border-radius:10px;font-size:11px}.planner-slot bdi{font-weight:800}.planner-slot small{font-size:10px}.planner-slot.approved,.planner-slot.offline{border-color:#d64f59;background:#d64f5910}.planner-slot.pending,.planner-slot.held{border-color:#d6a136;background:#d6a13614}.planner-slot.closed{border-color:#87948b;background:#87948b16}.planner-note-mark{display:block;color:#997028;margin-top:10px}.planner-month-card{display:flex;flex-direction:column;align-items:flex-start;gap:15px;padding:22px;background:var(--white);color:var(--ink);border:1px solid var(--line);border-radius:18px;text-align:right;font:inherit}.planner-month-card>span{font-size:25px;color:#518962}.planner-month-card small{font-size:11px;color:var(--muted)}.planner-notebook{margin-top:24px;padding:22px;border:1px solid #decfa8;border-radius:20px;background:#fff9e9;color:#413b29}.planner-notebook header{display:flex;justify-content:space-between;align-items:center;gap:8px}.planner-notebook h3{font-size:16px}.planner-notebook small{font-size:10px}.planner-notebook textarea{box-sizing:border-box;display:block;width:100%;margin:14px 0;resize:vertical;line-height:2.1;font:inherit;min-height:140px;border:0;border-bottom:1px solid #d8cda8;background:repeating-linear-gradient(transparent,transparent 31px,#b69d5720 32px);padding:8px;color:inherit}.planner-notebook [role=status]{font-size:12px;white-space:pre-wrap}.planner-note-list{margin:24px 0}.planner-note-list article{border-bottom:1px solid var(--line);padding:14px 0}.planner-note-list b{font-size:12px}.planner-note-list p{white-space:pre-wrap;font-size:12px;overflow-wrap:anywhere}.planner-notebook textarea:focus-visible,.planner-views button:focus-visible,.planner-day-title:focus-visible{outline:2px solid #88ae54;outline-offset:3px}@media(max-width:600px){.planner-hero{padding:20px}.planner-hero h2{font-size:20px}.planner-emblem{font-size:40px}.planner-toolbar{gap:8px}.planner-views{width:100%}.planner-views button{flex:1}.planner-toolbar label{flex:1;min-width:0}.planner-toolbar select{max-width:170px}.planner-stats{gap:6px}.planner-stats>div{padding:12px 8px}.planner-stats b{font-size:21px}.planner-stats span{font-size:9px}.planner-days{grid-template-columns:repeat(2,minmax(0,1fr))}.planner-day-card{padding:9px}.planner-slot{padding:8px 6px}.planner-day-title{font-size:11px}.planner-notebook{padding:16px}.planner-period h3{font-size:12px}}@media(prefers-reduced-motion:no-preference){.planner-day-card,.planner-month-card{transition:box-shadow .18s,transform .18s}.planner-month-card:hover{transform:translateY(-2px);box-shadow:0 7px 22px #163b2314}}

.planner-help{margin:16px 0;padding:18px;border:1px solid var(--line);border-radius:20px;background:var(--white)}.planner-help summary{font-weight:800;cursor:pointer;font-size:14px}.planner-help-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.planner-help-grid article{border-radius:14px;padding:16px;background:#398a5d0d;border:1px solid #398a5d22}.planner-help-grid b{font-size:13px;color:var(--ink)}.planner-help p{font-size:12px;line-height:1.9}.planner-help>p{color:var(--muted)}.planner-feedback{font-size:13px;line-height:1.8;color:var(--ink)}.planner-feedback:not(:empty){padding:14px;border-radius:14px;background:#469d5e1a;border:1px solid #469d5e55}.planner-slot{width:100%;font-family:inherit;color:var(--ink);text-align:right;border-top:0;border-left:0;border-bottom:0;cursor:pointer;box-sizing:border-box}.planner-slot:hover{box-shadow:0 0 0 2px #4a956740}.planner-slot:focus-visible{outline:2px solid #88ae54;outline-offset:2px}.planner-editor{max-height:85dvh;overflow-y:auto;color:var(--ink);background:var(--white);border:1px solid var(--line);border-radius:22px;width:min(460px,calc(100vw - 32px));padding:0}.planner-editor::backdrop{background:#00190fc0;backdrop-filter:blur(4px)}.planner-editor .slot-action-sheet{padding:22px;display:grid;gap:14px}.planner-editor p{font-size:13px;line-height:1.9}.planner-editor footer{display:flex;flex-wrap:wrap;gap:8px}.planner-editor footer .primary{flex:1}.planner-editor button{min-height:44px}.planner-editor .field{display:grid;gap:8px}.planner-editor select,.planner-editor input{width:100%;min-height:44px;font:inherit;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--white);color:var(--ink);box-sizing:border-box}@media(max-width:600px){.planner-help{padding:14px}.planner-help-grid{grid-template-columns:1fr;gap:8px}.planner-help-grid article{padding:12px}.planner-help-grid p{margin-bottom:0}.planner-editor .slot-action-sheet{padding:18px}}

.planner-customer{min-width:0;margin:0;border:1px solid var(--line);border-radius:14px;padding:14px;display:grid;gap:12px}.planner-customer[hidden]{display:none}.planner-customer legend{font-size:12px;font-weight:800}.planner-customer small{font-size:11px;line-height:1.8;color:var(--muted)}.planner-customer textarea{box-sizing:border-box;width:100%;max-width:100%;padding:10px;border-radius:10px;border:1px solid var(--line);background:var(--white);color:var(--ink);font:inherit;font-size:12px;resize:vertical}.planner-customer-share{display:grid;gap:10px;padding-top:12px;border-top:1px solid var(--line)}.planner-customer-share [hidden]{display:none}.planner-customer-share a{text-align:center;text-decoration:none}.planner-customer-name{font-weight:700;overflow-wrap:anywhere}
.planner-action-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;background:var(--bg,#edf3ed);padding:5px;border-radius:14px}.planner-action-tabs button{border:0;border-radius:10px;background:transparent;color:var(--ink);font:inherit;font-size:13px}.planner-action-tabs button[aria-pressed=true]{background:#21633f;color:#fff}.planner-editor [data-panel][hidden]{display:none}.planner-editor h3{font-size:14px;line-height:1.8;margin:0}.planner-editor [data-panel] p,.planner-save-hint{font-size:11px;line-height:1.8;color:var(--muted)}.planner-editor footer{position:sticky;bottom:-18px;background:var(--white);padding:12px 0 2px;z-index:1}.planner-customer-share summary{font-size:12px;cursor:pointer;font-weight:700}.planner-customer-share[open]>a,.planner-customer-share[open]>button,.planner-customer-share[open]>textarea{display:block;margin-top:10px;width:100%;box-sizing:border-box}.planner-customer-share[open]>a[hidden]{display:none}.planner-daily-note{border-top:1px dashed var(--line);padding-top:12px;margin-top:12px;font-size:11px}.planner-daily-note summary{cursor:pointer;color:var(--ink);font-weight:700}.planner-daily-note textarea{box-sizing:border-box;width:100%;min-height:80px;padding:8px;margin:10px 0;border:1px solid var(--line);border-radius:9px;background:var(--white);color:var(--ink);font:inherit;resize:vertical}.planner-daily-note button{min-height:36px;border:1px solid var(--line);border-radius:8px;background:var(--white);color:var(--ink);font:inherit;padding:6px 12px;margin:3px}.planner-daily-note [role=status]{display:block;line-height:1.8}
.planner-editor footer{background:var(--white)}

/* Expand the schedule in place: month > week > day > every session. */
.club-planner>.planner-views{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin:18px 0 14px;width:100%;box-sizing:border-box}
.planner-views [role=tab][aria-selected=true]{background:#1b6341;color:white}
.planner-days{grid-template-columns:minmax(0,1fr)}
.planner-branch{min-width:0;overflow:hidden}
.planner-branch>summary{cursor:pointer;list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;font-size:14px;line-height:1.8}
.planner-branch>summary::-webkit-details-marker{display:none}
.planner-branch>summary:after{content:'＋';flex-shrink:0;color:var(--green)}
.planner-branch[open]>summary:after{content:'−'}
.planner-branch>summary small{color:var(--muted);font-size:12px}
.planner-week-card{border:1px solid var(--line);border-radius:16px;background:var(--white);margin-top:10px}
.planner-branch-content{padding:10px;display:grid;gap:10px;min-width:0}
.planner-month-group{min-width:0;border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--white)}
.planner-month-group>.planner-month-card{width:100%;border:0;border-radius:0;flex-direction:row;justify-content:space-between;align-items:center;box-sizing:border-box;gap:10px}
.planner-month-card[aria-expanded=true]{background:#398a5d15}
.planner-month-card:disabled{opacity:.5;cursor:default}
.planner-day-title{margin:0;border:0}
.planner-slot-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-top:12px}
.planner-slot-list .planner-slot{margin:0}
.planner-day-content{padding-top:10px}
.planner-year-picker{display:flex;align-items:center;gap:12px;margin:14px 0;font-size:14px}
.planner-year-picker select{font:inherit;font-size:16px;padding:10px;border:1px solid var(--line);border-radius:12px;background:var(--white);color:var(--ink)}
@media(max-width:600px){.planner-branch-content{padding:8px}.planner-slot-list{grid-template-columns:minmax(0,1fr)}.planner-branch>summary{flex-wrap:wrap;padding:10px}.planner-month-group>.planner-month-card{padding:16px;flex-wrap:wrap}.planner-month-card small{font-size:12px}.planner-branch>summary small{font-size:11px}.planner-day-card{padding:10px}}

.recurring-preview{max-height:35vh;overflow:auto;border:1px solid var(--line);border-radius:12px;padding:8px}.recurring-preview p{display:flex;justify-content:space-between;gap:10px;padding:8px;font-size:12px;border-bottom:1px solid var(--line)}.recurring-preview span{color:var(--muted)}

.planner-guide-icon{position:relative;z-index:1;flex:0 0 44px;width:44px;height:44px;border:1px solid #ffffff70;border-radius:50%;background:#ffffff18;color:#fff;font-size:26px;cursor:pointer}.planner-slot{line-height:1.8;overflow-wrap:anywhere}.planner-slot bdi{white-space:nowrap}.planner-day-card{box-sizing:border-box}
@media(max-width:600px){.planner-days{grid-template-columns:minmax(0,1fr);gap:16px}.planner-day-card{padding:14px}.planner-day-title{font-size:14px}.planner-slot{padding:12px;font-size:14px;gap:7px}.planner-slot small{font-size:12px}.planner-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.planner-toolbar>label,.planner-views{grid-column:1/-1}.planner-toolbar select{max-width:100%;min-width:0;flex:1}.planner-toolbar>button{min-width:0;white-space:normal;line-height:1.8;padding:10px;font-size:12px}.planner-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.planner-stats span{font-size:12px}.planner-period h3{line-height:1.9}.planner-notebook header{flex-wrap:wrap}.planner-daily-note textarea{font-size:16px}.planner-month-card{min-width:0;width:100%;box-sizing:border-box}}
