.method-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-bottom:16px}
.method-card{padding:12px 18px;position:relative}
.method-card.bsc-method{border-top:3px solid #4e83bd;background:linear-gradient(125deg,#fff,#f4f8fd)}
.method-card.harada-method{border-top:3px solid #15948c;background:linear-gradient(125deg,#fff,#eff9f5)}
.method-heading{display:flex;align-items:center;gap:9px}
.method-heading .eyebrow{display:block;font-size:8px;line-height:1.25;margin-bottom:1px;letter-spacing:1.2px}
.bsc-method .eyebrow{color:#6183aa}
.method-heading h2{font-size:18px;line-height:1.25;margin:0;letter-spacing:-.4px}
.method-heading h2 span{font-weight:500;color:#7893aa;font-size:15px}
.method-icon{width:32px;height:32px;border-radius:9px;display:grid;place-items:center;background:#e5eefb;color:#5c83b4;flex-shrink:0}
.harada-method .method-icon{background:#def2ea;color:#15897d}
.method-card>p{font-size:11px;color:#728998;margin:6px 0}
.perspective-tags,.harada-steps{display:flex;gap:6px;align-items:center;flex-wrap:wrap;min-height:24px}
.perspective-tags span{font-size:9px;line-height:1.4;background:#eaf1fa;color:#577a9b;padding:3px 7px;border-radius:5px}
.harada-steps span{font-size:10px;line-height:1.4;color:#547d74;background:#e9f5ee;padding:2px 6px;border-radius:5px}
.harada-steps b{font-size:12px;color:#238674;margin-right:3px}
.harada-steps i{font-size:12px;color:#9ebbb3;font-style:normal}
.method-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;margin-top:8px;padding-top:8px;border-top:1px solid #e1eaed}
.method-number{display:block;font-size:24px;line-height:1.1;letter-spacing:-1px}
.method-number small{font-size:11px;font-weight:400;color:#8196a2;letter-spacing:0}
.method-note{display:block;color:#8196a2;font-size:10px;margin-top:3px}
.method-bottom>p.method-note{margin:0;line-height:1.5}
.home-insights{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,1fr);gap:22px;align-items:start;margin-bottom:24px}
.home-insights>div{min-width:0}
.home-actions{align-items:stretch}
.home-actions>section{min-width:0}
.home-actions>section:only-child{grid-column:1 / -1}
.home-calendar-column{display:flex;flex-direction:column;gap:22px}
.home-calendar-column .siti-home-strip{margin-bottom:0;flex-wrap:wrap}
.home-calendar-column .siti-home-strip>div{min-width:0;flex:1 1 180px}
.home-calendar-column .siti-home-strip .btn{margin-left:auto}
.home-calendar{container-type:inline-size}
.widget-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:23px 23px 0}
.widget-heading .eyebrow{font-size:8px;letter-spacing:1.15px}
.widget-heading h2{font-size:19px;margin:0 0 5px}
.widget-heading p{font-size:11px;color:#8194a0;margin:0}
.widget-heading>.link-btn{white-space:nowrap;font-size:10px}
.hc-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:19px 23px 13px}
.hc-controls .view-tabs{margin:0}
.hc-controls .view-tabs button{padding:8px 12px;min-height:36px;font-size:11px}
.hc-navigation{display:flex;align-items:center;gap:8px;padding:0 23px 17px}
.hc-navigation h3{font-size:15px;margin:0;flex:1;text-align:center;text-transform:capitalize}
.hc-navigation .icon-btn{min-width:30px;min-height:32px;border-radius:7px}
.hc-navigation .icon{width:15px;height:15px}
.reverse-icon{display:flex;transform:rotate(180deg)}
.hc-jump{width:33px;height:32px;position:relative;display:flex;align-items:center;justify-content:center;border:1px solid var(--line);border-radius:7px;color:var(--teal);flex-shrink:0}
.hc-jump input{position:absolute;inset:0;width:100%;opacity:0;cursor:pointer}
.hc-jump:focus-within{outline:3px solid #25aab2;outline-offset:2px}
.hc-jump input::-webkit-calendar-picker-indicator{width:100%;height:100%;position:absolute;inset:0;cursor:pointer}
.hc-weekdays,.hc-month{display:grid;grid-template-columns:repeat(7,minmax(0,1fr))}
.hc-weekdays{padding:10px 0;background:#f7f9fb;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.hc-weekdays span{text-align:center;font-size:10px;color:#8194a0;font-weight:650}
.hc-cell{min-height:91px;padding:7px 4px 5px;border-right:1px solid #edf1f3;border-bottom:1px solid #edf1f3;min-width:0}
.hc-cell:nth-child(7n){border-right:0}
.hc-cell.outside{background:#fafbfc}.hc-cell.outside .hc-date{color:#bcc7cc}
.hc-cell.today{background:#f1f9f7}
.hc-date{display:grid;place-items:center;width:25px;height:25px;border:0;border-radius:50%;background:none;color:#526c7d;font-size:11px;margin:0 auto 5px}
.hc-cell.today .hc-date{background:var(--teal);color:white;font-weight:750}
.hc-date:hover{background:#e3efed;color:var(--teal)}
.hc-event{display:block;width:100%;text-align:left;padding:9px;border:0;border-left:3px solid #20998f;border-radius:5px;background:#e9f5f2;color:#327f76;min-width:0;margin:0 0 7px;overflow:hidden}
.hc-event.routine{border-color:#b69962;background:#f8f3e9;color:#9a7b43}
.hc-event.complete{border-color:#7aa1a5;background:#eff4f5;color:#6a858b}
.hc-event:hover{filter:brightness(.97);box-shadow:0 0 0 1px currentColor inset}
.hc-event strong{font-size:11px;display:block;line-height:1.5;overflow-wrap:anywhere}
.hc-event small{display:block;font-size:9px;opacity:.85;margin-top:5px;overflow-wrap:anywhere}
.hc-event-time{display:flex;align-items:center;gap:3px;font-size:9px;margin-bottom:2px;font-weight:600}
.hc-event-time .icon{width:10px;height:10px}
.hc-event.compact{padding:3px 4px;border-left-width:2px;margin-bottom:3px}
.hc-event.compact strong{font-size:8px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.hc-event.compact .hc-event-time{font-size:8px;margin:0}
.hc-more{border:0;background:none;color:var(--teal);padding:1px 2px;font-size:9px;text-align:left}
.hc-mobile-count{display:none}
.hc-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;padding:14px 20px 7px;font-size:9px;color:#8194a0}
.hc-legend{display:flex;align-items:center;gap:12px}
.hc-legend>span{display:flex;align-items:center;gap:4px}
.event-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#20998f}
.event-dot.routine{background:#b69962}
.hc-legend .icon{width:12px;height:12px}
.hc-hint{padding:0 20px 16px;color:#91a0a8;font-size:9px;margin:0}
.hc-week{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid var(--line);min-height:540px}
.hc-week-col{border-right:1px solid #edf1f3;padding:8px 4px}
.hc-week-col:last-child{border:0}
.hc-week-col.today{background:#f2faf7}
.hc-week-date{display:block;width:100%;border:0;border-bottom:1px solid var(--line);background:none;padding:2px 0 10px;margin-bottom:12px;color:#6e8794;font-size:10px}
.hc-week-date strong{display:block;font-size:20px;color:var(--ink);line-height:1.4}
.hc-week-date small{font-size:9px}
.hc-week-col .hc-event{padding:6px 4px;border-left-width:2px}
.hc-week-col .hc-event strong{font-size:9px}
.hc-week-col .hc-event small{font-size:8px}
.hc-no-event{font-size:9px;display:block;text-align:center;color:#a2b0b6;padding-top:14px}
.hc-agenda{padding:5px 22px 16px;min-height:420px}
.hc-agenda-row{display:grid;grid-template-columns:74px 1fr;gap:13px;padding:11px 0;border-top:1px solid var(--line)}
.hc-agenda-time{font-size:11px;color:#6c8392;font-weight:650;padding-top:7px}
.hc-agenda-time small{display:block;font-size:10px;font-weight:400;margin-top:3px}
.hc-agenda-row .hc-event{margin:0;padding:13px}
.hc-agenda-row .hc-event strong{font-size:12px}
.home-calendar>.empty-state{min-height:420px}
.athlete-chart .widget-heading{padding-bottom:16px}
.achievement-controls{padding:0 22px 16px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.achievement-controls .filter-select{width:100%;max-width:none;font-size:11px;padding:9px 10px}
.achievement-total{display:flex;align-items:center;gap:5px;font-size:10px;color:#6d8594}
.achievement-total .icon{width:14px;height:14px;color:#518978}
.achievement-total strong{color:#337e6d}
.chart-scale{display:flex;justify-content:space-between;gap:8px;padding:9px 22px;border-top:1px solid #edf1f3;border-bottom:1px solid #edf1f3;background:#f8fafb;color:#91a0a9;font-size:8px}
.chart-scale span:last-child{text-align:right}
.achievement-list{padding:0 22px}
.athlete-achievement{width:100%;border:0;border-bottom:1px solid #edf1f3;background:white;text-align:left;padding:15px 0;color:var(--ink)}
.athlete-achievement:hover{background:#fafdfc}
.athlete-achievement:last-child{border-bottom:0}
.athlete-achievement-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}
.athlete-achievement-head strong{font-size:12px;display:block}
.athlete-achievement-head small{font-size:9px;color:#8a9ba6;display:block;margin-top:2px}
.progress-number{font-size:15px;display:flex;gap:3px;align-items:center;color:#5a90ba;font-weight:700}
.progress-number.achieved{color:#23887c}
.progress-number .icon{width:13px;height:13px}
.athlete-bar{position:relative;height:9px;border-radius:5px;background:repeating-linear-gradient(90deg,#edf2f6 0,#edf2f6 calc(25% - 1px),#dce6ec calc(25% - 1px),#dce6ec 25%);margin-right:2px}
.athlete-bar>span{display:block;height:9px;border-radius:5px;background:linear-gradient(90deg,#9bbde0,#5f99cc)}
.athlete-bar>span.achieved{background:linear-gradient(90deg,#8acbb7,#259584)}
.athlete-bar>i{position:absolute;right:0;top:-4px;height:17px;border-right:2px dashed #4c6b7e}
.athlete-values{display:flex;justify-content:space-between;gap:8px;font-size:9px;color:#8d9fa8;margin-top:9px}
.athlete-values b{color:#536e80;font-weight:650;display:block;font-size:11px}
.athlete-values span:last-child{text-align:right}
.athlete-assessment{font-size:8px;color:#9aa9b1;margin-top:6px;line-height:1.5}
.achievement-note{display:flex;gap:7px;align-items:flex-start;background:#f7fafb;padding:12px 20px;color:#879aa5}
.achievement-note .icon{width:14px;height:14px;margin-top:2px}
.achievement-note p{font-size:9px;line-height:1.7;margin:0}
.chart-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;padding:12px 20px;border-top:1px solid var(--line)}
.chart-footer .link-btn{font-size:10px}
.siti-home-strip{display:flex;align-items:center;gap:17px;padding:14px 24px;background:#eaf5f1;border:1px solid #dbeae4;border-radius:13px;margin-bottom:25px;min-height:93px}
.siti-home-strip img{height:78px;width:53px;object-fit:contain}
.siti-home-strip>div{flex:1}
.siti-home-strip strong{font-size:13px;color:#3d776b}
.siti-home-strip p{font-size:11px;color:#829d94;margin:3px 0 0}
.siti-home-strip .btn{white-space:nowrap}
@media(min-width:1550px){.hc-cell{min-height:111px}.hc-event.compact strong{font-size:10px}.hc-event.compact .hc-event-time{font-size:9px}.hc-week{min-height:660px}.athlete-achievement{padding:19px 0}.athlete-assessment{font-size:9px}}
@media(max-width:1150px){.home-insights{grid-template-columns:minmax(0,1.3fr) minmax(290px,1fr);gap:16px}.method-cards{gap:16px}.method-card{padding:12px 16px}.method-heading h2{font-size:16px}.method-heading h2 span{font-size:12px}.method-icon{width:30px;height:30px}.widget-heading{padding:19px 16px 0;flex-wrap:wrap}.widget-heading h2{font-size:17px}.hc-controls,.hc-navigation{padding-left:15px;padding-right:15px}.hc-controls .view-tabs button{padding:8px}.hc-cell{min-height:86px}.hc-event.compact strong{font-size:8px}.hc-week-col .hc-event small{display:none}.achievement-controls,.chart-scale,.achievement-list{padding-left:16px;padding-right:16px}.method-card>p{font-size:10px}.method-bottom>.link-btn{font-size:10px}}
@media(max-width:1000px){.home-insights{grid-template-columns:1fr}.hc-cell{min-height:95px;padding:7px}.hc-event.compact{display:flex;gap:6px;align-items:center}.hc-event.compact strong{font-size:10px}.hc-event.compact .hc-event-time{font-size:9px;white-space:nowrap}.hc-week-col .hc-event strong{font-size:11px}.hc-week-col .hc-event small{display:block}.hc-week{min-height:320px}.achievement-list{display:grid;grid-template-columns:1fr 1fr;column-gap:22px}.achievement-controls .filter-select{width:auto;min-width:200px}.chart-scale{display:none}.athlete-chart .widget-heading{padding-bottom:12px}.method-bottom{flex-wrap:wrap}}
@media(max-width:700px){.method-cards{grid-template-columns:1fr;gap:10px;margin-bottom:16px}.method-card{padding:12px 16px}.method-heading h2{font-size:17px}.method-icon{width:32px;height:32px}.method-card>p{font-size:10px}.method-heading .eyebrow{font-size:8px}.method-bottom{flex-wrap:nowrap;margin-top:8px;padding-top:8px}.method-number{font-size:24px}.method-bottom>.link-btn{font-size:11px}.home-insights{gap:18px}.widget-heading{padding:20px 17px 0}.widget-heading h2{font-size:20px}.widget-heading .eyebrow{font-size:8px}.widget-heading p{font-size:10px}.hc-controls{padding:17px 16px 12px;gap:6px}.hc-controls .view-tabs button{font-size:11px;padding:8px 9px}.hc-navigation h3{font-size:14px}.hc-cell{min-height:66px;padding:6px 2px}.hc-cell-events,.hc-more{display:none}.hc-mobile-count{display:block;border:0;background:#e4f3ed;color:#37897b;font-size:8px;line-height:1.4;padding:3px 1px;width:100%;border-radius:4px}.hc-date{width:25px;height:25px;font-size:11px}.hc-footer{padding:13px 16px 8px;font-size:8px}.hc-hint{padding:0 16px 15px;font-size:8px}.hc-week{grid-template-columns:1fr;min-height:0}.hc-week-col{display:grid;grid-template-columns:57px 1fr;gap:12px;padding:12px 16px;border-right:0;border-bottom:1px solid var(--line)}.hc-week-date{margin:0;border:0;padding:0}.hc-week-col .hc-event{padding:9px}.hc-week-col .hc-event strong{font-size:11px}.hc-week-col .hc-event small{font-size:9px}.hc-no-event{text-align:left;padding-top:18px}.hc-agenda{padding:0 15px 12px;min-height:300px}.hc-agenda-row{grid-template-columns:60px 1fr;gap:10px}.hc-agenda-time{font-size:10px}.hc-agenda-row .hc-event{padding:10px}.home-calendar>.empty-state{min-height:280px}.achievement-list{display:block}.athlete-achievement{padding:17px 0}.athlete-achievement-head strong{font-size:13px}.athlete-assessment{font-size:9px}.athlete-values{font-size:10px}.athlete-values b{font-size:12px}.chart-scale{display:flex;font-size:8px}.achievement-controls .filter-select{width:100%;min-width:0}.siti-home-strip{padding:14px 15px;gap:12px;flex-wrap:wrap}.siti-home-strip img{height:65px;width:43px}.siti-home-strip>div{min-width:180px}.siti-home-strip strong{font-size:12px}.siti-home-strip p{font-size:10px}.siti-home-strip .btn{margin-left:55px;font-size:11px}}
@container(max-width:640px){.hc-week{grid-template-columns:1fr;min-height:0}.hc-week-col{display:grid;grid-template-columns:57px 1fr;gap:12px;padding:12px 16px;border-right:0;border-bottom:1px solid var(--line)}.hc-week-date{margin:0;border:0;padding:0}.hc-week-col .hc-event{padding:9px}.hc-week-col .hc-event strong{font-size:11px}.hc-week-col .hc-event small{display:block;font-size:9px}.hc-no-event{text-align:left;padding-top:18px}}
