.training-feedback{margin:14px 0;border:1px solid #e5e7df;border-radius:12px;background:#fafbf8;min-width:0}.training-feedback>summary{display:flex;align-items:center;gap:8px;min-height:44px;padding:12px 14px;cursor:pointer;font-size:14px;font-weight:500;list-style:none}.training-feedback>summary:after{content:"+";margin-left:auto;color:#687052}.training-feedback[open]>summary:after{content:"−"}.training-feedback>summary::-webkit-details-marker{display:none}.training-feedback>summary:focus-visible{outline:2px solid #8b956b;outline-offset:2px;border-radius:12px}.training-feedback-body{display:grid;gap:12px;padding:0 14px 14px;min-width:0}.training-feedback-body>button{justify-self:end;min-height:32px;padding:0 4px;background:transparent!important;color:#666f58!important;font-weight:400}.technique-upload>input[hidden]{display:none}.technique-upload,.training-feedback-body form{display:grid;gap:12px;min-width:0}.training-feedback-body label{display:grid;gap:6px;font-size:14px;font-weight:400}.training-feedback-body :is(input,select,textarea){min-width:0;max-width:100%;font-size:16px}.training-feedback-body select{width:100%;min-height:44px;padding:8px;border:1px solid #e1e5d7;border-radius:9px;background:#f2f4eb;text-align:center}.training-feedback-body textarea{width:100%;min-height:72px;padding:10px 12px;resize:vertical;border:1px solid #e1e5d7;border-radius:9px;background:#fff;text-align:left}.training-feedback-body input[type=file]{width:100%;padding:8px 0}.training-feedback-body :is(p,small){margin:0;line-height:1.5}.feedback-muted{color:#666f58;font-size:13px;font-weight:400}.feedback-count{color:#666f58;font-size:12px}.feedback-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.technique-card{display:grid;gap:10px;padding:12px;border:1px solid #e5e7df;border-radius:10px;background:#fff;min-width:0}.technique-card header{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}.technique-card header span{display:inline-flex;align-items:center;gap:4px}.technique-card strong{font-size:14px;font-weight:500;overflow-wrap:anywhere}.technique-card video{display:block;width:100%;max-height:420px;border-radius:8px;background:#111;object-fit:contain}.technique-comment{grid-column:1/-1;width:100%;min-width:0;max-width:100%;box-sizing:border-box;text-align:left;background:#f2f4eb;padding:10px;border-radius:8px}.feedback-summary dd,.technique-comment p{white-space:pre-wrap;overflow-wrap:anywhere}.feedback-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.feedback-summary{display:grid;gap:10px;margin:0;font-size:14px}.feedback-summary div{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}.feedback-summary dt{color:#666f58}.feedback-summary dd{margin:0}@media (max-width:600px){.feedback-fields{grid-template-columns:minmax(0,1fr)}.technique-card{padding:10px}.training-feedback-body{padding:0 10px 10px}}.technique-tabs{display:flex;gap:8px;flex-wrap:wrap}.technique-session-group{display:grid;gap:10px;padding-top:12px;border-top:1px solid #e5e7df;min-width:0}.technique-session-group h3{margin:0;font-size:16px;font-weight:500;overflow-wrap:anywhere}.previous-technique{background:#f1f4e9}.technique-client{display:grid;justify-items:center;gap:8px;margin:12px 0 0;padding:10px 0 0;border-top:1px solid #eceee5;min-width:0}.technique-client>input[hidden]{display:none}.technique-add-icon{display:grid;place-items:center;justify-self:center;margin-inline:auto;width:48px;height:48px;padding:0;border:0;background:transparent;color:#78815c;cursor:pointer}.technique-add-icon:disabled{opacity:.45;cursor:default}.technique-add-icon:focus-visible,.technique-client-result>summary:focus-visible{outline:2px solid #8b956b;outline-offset:2px;border-radius:8px}.technique-client-progress{display:flex;align-items:center;gap:10px;width:min(280px,100%);color:#72795e;font-size:13px;font-variant-numeric:tabular-nums}.technique-client-progress progress{flex:1;width:0;height:4px;border:0;border-radius:4px;overflow:hidden;accent-color:#78815c;background:#edf0e3}.technique-client-progress progress::-webkit-progress-bar{background:#edf0e3}.technique-client-progress progress::-webkit-progress-value{background:#78815c}.technique-client-result{width:100%;min-width:0}.technique-client-result>summary{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:0 10px;color:#78815c;list-style:none;cursor:pointer;font-size:14px;font-weight:400}.technique-client-result>summary::-webkit-details-marker{display:none}.technique-client-reviewed{background:#f0f2e8;border-radius:10px}.technique-client-reviewed>summary{justify-content:flex-start;color:#3f4632}.technique-compact-card{position:relative;display:grid;grid-template-columns:minmax(0,1fr);gap:10px;padding:0 10px 10px;border:0;background:transparent}.technique-compact-card .technique-watch-icon{width:100%;height:auto;min-height:120px;aspect-ratio:16/9;padding:0;background:#e8ecdc!important;color:#65704c!important;border:0}.technique-compact-card .technique-watch-icon svg{width:28px;height:28px}.technique-compact-card video{width:100%;aspect-ratio:16/9;max-height:300px;background:#20221d}.technique-compact-card .technique-delete-icon{justify-self:end;width:44px;height:44px;padding:0}.technique-compact-card .technique-comment{padding:12px;background:#edf0e3;border-radius:9px;font-size:14px;line-height:1.5}.technique-compact-card .technique-comment strong{display:block;margin-bottom:4px;color:#66704e;font-size:12px;font-weight:500}.technique-client-reviewed{background:#fafbf7}.technique-add-control{width:auto;min-width:48px;height:auto;min-height:48px;gap:5px;padding:6px 12px}.technique-add-control span{font-size:13px;font-weight:400}.technique-client .field-error{font-size:13px;text-align:center}.coach-reports{display:grid;gap:18px;min-width:0}.coach-reports-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.coach-reports-client{display:flex;align-items:center;gap:8px;min-width:0;color:#72795e}.coach-reports-client select{width:min(300px,65vw);min-width:0;min-height:44px;border:0;border-radius:10px;background:#f1f3eb;color:#343927;padding:8px 30px 8px 12px;font-size:15px}.coach-report-tabs{display:flex;gap:6px;padding-bottom:12px;border-bottom:1px solid #e9ece2}.coach-report-tabs button{display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 14px;border:0;border-radius:10px;background:transparent;color:#666d59;font-size:15px;font-weight:400;cursor:pointer}.coach-report-tabs button[aria-selected=true]{background:#111;color:#fff}.coach-report-tabs button span{font-size:12px;min-width:20px;text-align:center}.coach-report-tabs button:focus-visible,.coach-reports-client select:focus-visible{outline:2px solid #8b956b;outline-offset:3px}.coach-report-list{display:grid;gap:10px;min-width:0}.coach-report-row{display:grid;grid-template-columns:56px minmax(0,1fr) auto auto;align-items:center;gap:14px;min-width:0;padding:16px;border:1px solid #eceee5;border-radius:12px;background:#fff}.coach-report-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:10px;background:#f0f2e8;color:#78815c}.coach-report-description{display:grid;gap:4px;min-width:0}.coach-report-description strong{font-size:16px;font-weight:500}.coach-report-description>span{font-size:14px;overflow-wrap:anywhere}.coach-report-description small,.coach-report-row time{font-size:12px;font-weight:400;color:#7b806f}.coach-report-row time{white-space:nowrap}.coach-report-done{display:inline-flex;align-items:center;gap:5px;color:#66734e}.coach-report-notice{margin:0;padding:10px 14px;border-radius:10px;background:#edf0e3;color:#445134;font-size:14px}.coach-reports-empty{display:grid;justify-items:center;gap:10px;padding:40px 16px;text-align:center;color:#78815c}.coach-reports-empty h2{margin:0;color:#373d30}.coach-reports-empty p{margin:0;font-size:14px}.coach-reports-history{border-top:1px solid #eceee5;padding-top:12px;min-width:0}.coach-reports-history>summary{min-height:44px;cursor:pointer;font-size:14px;color:#666f58}.coach-report-dialog{max-width:640px;max-height:85dvh;overflow-y:auto}.coach-cycle-review{display:grid;gap:12px}.coach-cycle-review>a{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px;border-radius:9px;background:#f4f5ef;font-size:14px}.coach-cycle-review small{white-space:nowrap;color:#72795e}@media (max-width:600px){.coach-report-tabs button{flex:1;padding-inline:10px;font-size:14px}.coach-report-row{grid-template-columns:42px minmax(0,1fr) auto;gap:10px;padding:12px}.coach-report-icon{width:42px;height:42px}.coach-report-description strong{font-size:15px}.coach-report-row>button{grid-column:2/-1;justify-self:start}.coach-report-row time{align-self:start;padding-top:3px}}.technique-card .technique-comment p{display:block;margin:0;min-width:0;font-size:14px;font-weight:400;line-height:1.6;letter-spacing:normal;text-align:left;color:#353a2e;white-space:pre-wrap;overflow-wrap:anywhere;word-break:normal}.technique-card form{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;min-width:0}.technique-card form label{display:grid;gap:6px;min-width:0}.technique-card textarea{width:100%;min-width:0;box-sizing:border-box;min-height:96px;line-height:1.5;text-align:left;resize:vertical}.technique-review-comment-column{display:contents}.ui-dialog.coach-report-dialog:has(.technique-review-layout){width:calc(100vw - 32px);max-width:1060px}.coach-review-navigation{display:flex;align-items:center;gap:6px;padding-right:20px;color:#70775f;font-size:13px}.coach-review-navigation>small{margin-left:auto}.technique-review-layout{grid-template-columns:minmax(0,1.7fr) minmax(250px,1fr);gap:14px 20px;border:0;padding:0}.technique-review-layout>header,.technique-review-layout>small{grid-column:1/-1}.technique-review-layout>header strong{font-size:19px;font-weight:500}.technique-review-layout>.technique-media-column{grid-column:1;min-width:0}.technique-review-layout>.technique-review-comment-column{display:grid;align-content:start;gap:12px;grid-column:2;grid-row:3/span 3;min-width:0}.technique-review-layout .technique-media-column video{width:auto;height:auto;max-width:100%;max-height:min(520px,50vh);max-height:min(520px,50dvh);margin-inline:auto;object-fit:contain}.technique-review-layout .technique-media-column>button{width:100%;min-height:180px;background:#eef0e4}.technique-review-layout textarea{min-height:180px;background:#f5f6f0;font-size:16px}.technique-review-layout form>button{width:100%}@media (max-width:700px){.technique-review-layout{grid-template-columns:minmax(0,1fr);gap:12px}.technique-review-layout>.technique-review-comment-column{grid-column:1;grid-row:auto}.technique-review-layout textarea{min-height:120px}.technique-review-layout>header{align-items:flex-start}}.technique-review-layout>.technique-media-column{grid-row:3}.technique-review-layout>.technique-review-results{grid-column:1;grid-row:4;padding:10px 12px;border-radius:8px;background:#eef0e4}@media (max-width:700px){.technique-review-layout>.technique-media-column,.technique-review-layout>.technique-review-results{grid-row:auto}}.ui-dialog.coach-report-dialog:has(.technique-review-layout){width:min(1060px,calc(100vw - 24px));border-color:#e0e4d8}.coach-report-dialog:has(.technique-review-layout) .ui-dialog-body{margin-top:0;padding:24px}@media (min-width:701px){.coach-report-dialog:has(.technique-review-layout) .coach-review-navigation{position:static;width:calc((100% - 20px) / 2.7);margin-left:auto}}@media (max-width:700px){.coach-report-dialog:has(.technique-review-layout) .ui-dialog-body{padding:20px 16px}}.ui-dialog.coach-report-dialog .technique-review-layout textarea{min-height:180px;padding:10px 12px}@media (max-width:700px){.ui-dialog.coach-report-dialog .technique-review-layout textarea{min-height:120px}}.gemini-comment{margin-block:10px 14px;padding:0;border:0;border-radius:12px;background:transparent;color:#424938;transition:background .2s ease,border-color .2s ease}.gemini-comment.is-recording{background:#eef1e4;border-color:#cdd5b7}.gemini-comment-caption,.gemini-comment-controls,.gemini-comment-ready,.gemini-comment-toolbar{display:flex;align-items:center;gap:8px;min-width:0}.gemini-comment-ready,.gemini-comment-toolbar{justify-content:space-between;flex-wrap:wrap}.gemini-comment-controls{flex-wrap:wrap}.gemini-comment-caption{min-height:32px;font-size:13px;font-weight:500}.gemini-comment-caption>svg{width:16px;height:16px;color:#747d5c}.gemini-comment-timer{margin-left:6px;font-variant-numeric:tabular-nums;color:#747d5c}.gemini-comment .gemini-comment-icon{width:44px;height:44px;padding:0;border:0;border-radius:12px;box-shadow:none}.gemini-comment .gemini-comment-icon>svg{width:20px;height:20px}.gemini-comment button{transition:transform .18s ease,background .18s ease,opacity .18s ease}.gemini-comment button:active:not(:disabled){transform:scale(.96)}.gemini-comment button:focus-visible{outline:2px solid #879365;outline-offset:3px}.gemini-comment-error,.gemini-comment-hint,.gemini-comment-ready{font-size:12px;line-height:1.6;font-weight:400;overflow-wrap:anywhere}.gemini-comment-hint{margin:7px 0 0;color:#707663}.gemini-comment-ready{margin-top:8px;padding-top:8px;border-top:1px solid #e5e8da;color:#707663;animation:gemini-reveal .22s ease both}.gemini-comment-ready button{display:inline-flex;align-items:center;gap:5px;padding:4px 0;color:#424938;cursor:pointer;min-height:32px}.gemini-comment-ready button svg{width:14px;height:14px}.gemini-comment-error{margin-top:8px}.gemini-comment-suggestion{margin-top:10px;display:grid;gap:8px;font-size:14px;line-height:1.6;overflow-wrap:anywhere}.gemini-comment-suggestion>p{white-space:pre-wrap}.gemini-voice-wave{display:flex;align-items:center;justify-content:center;width:26px;height:26px;gap:3px}.gemini-voice-wave i{width:3px;height:13px;border-radius:4px;background:#76834f;animation:gemini-wave .85s ease-in-out infinite alternate}.gemini-voice-wave i:nth-child(2n){animation-delay:-.5s;height:21px}.gemini-voice-wave i:nth-child(3){animation-delay:-.25s}.gemini-comment-spinner{width:16px;height:16px;border:2px solid #d6dcc7;border-top-color:#657248;border-radius:50%;animation:gemini-spin .9s linear infinite}@keyframes gemini-wave{0%{transform:scaleY(.35)}to{transform:scaleY(1)}}@keyframes gemini-spin{to{transform:rotate(1turn)}}@keyframes gemini-reveal{0%{opacity:0;transform:translateY(3px)}to{opacity:1;transform:translateY(0)}}@media (max-width:480px){.gemini-comment-toolbar>.gemini-comment-controls{width:100%}.gemini-comment-toolbar>.gemini-comment-controls>button{min-height:40px}}@media (prefers-reduced-motion:reduce){.gemini-comment,.gemini-comment button,.gemini-comment-ready,.gemini-comment-spinner,.gemini-voice-wave i{animation:none;transition:none}}.gemini-comment{height:fit-content;min-height:0;align-self:start}.gemini-comment [data-slot=button].gemini-comment-icon,.gemini-comment [data-slot=button].gemini-comment-icon:hover:not(:disabled){background:transparent!important;border-color:transparent!important;color:#424938!important}.gemini-comment:not(.is-recording):not(.is-processing) .gemini-comment-caption{display:none}.technique-comment-composer{min-width:0;padding:16px;border:1px solid #e5e7dd;border-radius:20px;background:#f7f8f3;transition:border-color .18s ease}.technique-comment-composer:focus-within{border-color:#aeb898}.technique-comment-label{display:block;margin-bottom:10px;color:#53594a;font-size:14px;font-weight:500}.technique-card .technique-comment-composer textarea{width:100%;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;outline:none;text-align:left;font-size:16px;font-weight:400;line-height:1.65;resize:vertical}.technique-comment-composer .gemini-comment{margin:12px 0 0;border-radius:0;background:transparent}.technique-comment-composer .gemini-comment-toolbar{flex-wrap:nowrap;min-height:44px;gap:4px}.technique-comment-composer .gemini-comment-controls{width:auto;flex-wrap:nowrap;gap:4px;flex-shrink:0}.technique-comment-composer .gemini-comment-caption{font-size:12px;gap:5px}.gemini-format-icon{font-size:19px;font-weight:500;letter-spacing:-1px}.technique-comment-composer .gemini-comment [data-slot=button]:hover:not(:disabled){background:#e9eddf!important}@media (prefers-reduced-motion:reduce){.technique-comment-composer{transition:none}}.ui-dialog.coach-report-dialog.is-review-success,.ui-dialog.coach-report-dialog.is-review-success .ui-dialog-body{overflow:visible}.coach-report-dialog.is-review-success .ui-dialog-close{visibility:hidden}.coach-review-success{position:fixed;top:50%;left:50%;width:100dvw;height:100dvh;transform:translate(-50%,-50%);z-index:100;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;padding:max(24px,env(safe-area-inset-top)) 24px max(24px,env(safe-area-inset-bottom));background:#f5faf4f7;backdrop-filter:blur(12px);color:#304534;text-align:center;animation:review-success-reveal .2s ease both}.coach-review-success-mark{width:clamp(96px,22vw,140px);aspect-ratio:1;border-radius:50%;display:grid;place-items:center;background:#e2f1e3;box-shadow:0 0 0 16px #eaf5e970;animation:review-success-pop .5s cubic-bezier(.16,1,.3,1) both}.coach-review-success-mark svg{width:58%;height:58%;color:#38824b}.coach-review-success-mark svg path{stroke-dasharray:30;stroke-dashoffset:30;animation:review-success-check .35s ease .1s forwards}.coach-review-success strong{font-size:clamp(21px,5vw,28px);font-weight:500;margin-top:10px}.coach-review-success>span{font-size:14px;line-height:1.6;color:#697c6b}@keyframes review-success-reveal{0%{opacity:0}to{opacity:1}}@keyframes review-success-pop{0%{opacity:0;scale:.7}to{opacity:1;scale:1}}@keyframes review-success-check{to{stroke-dashoffset:0}}@media (prefers-reduced-motion:reduce){.coach-review-success,.coach-review-success-mark,.coach-review-success-mark svg path{animation:none}.coach-review-success-mark svg path{stroke-dashoffset:0}}.gemini-comment .gemini-comment-discard[data-slot=button]{background:#edf0e5!important;color:#606950!important;border:1px solid #e3e7d9!important;box-shadow:none!important;border-radius:12px;font-weight:400}.gemini-comment .gemini-comment-discard[data-slot=button]:hover:not(:disabled){background:#e4e9d8!important}.gemini-comment-error,.gemini-comment-suggestion,.gemini-comment.is-recording .gemini-comment-caption{animation:gemini-panel-in .22s ease-out both}.gemini-comment-error.is-dismissing{animation:gemini-panel-out .18s ease-in both;pointer-events:none}@keyframes gemini-panel-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes gemini-panel-out{to{opacity:0;transform:translateY(-6px)}}@media (prefers-reduced-motion:reduce){.gemini-comment-error,.gemini-comment-error.is-dismissing,.gemini-comment-suggestion,.gemini-comment.is-recording .gemini-comment-caption{animation:none}}.coach-report-dialog:has(.technique-review-layout) .coach-review-navigation{padding:8px 0 0;gap:16px;font-variant-numeric:tabular-nums}.coach-report-dialog .technique-review-layout>header{padding-right:34px}.technique-comment-composer textarea:placeholder-shown{text-align:center}.technique-comment-composer textarea::placeholder{color:#a0a398;font-weight:400;opacity:1}.coach-report-dialog .ui-dialog-body>.technique-review-title-tab{margin:-24px -24px 18px;padding:18px 64px 18px 24px;background:#eef0e4;border-bottom:1px solid #e0e4d8;color:#414833;font-size:18px;font-weight:500;line-height:1.4;overflow-wrap:anywhere}.coach-report-dialog:has(.technique-review-title-tab) .ui-dialog-close{background:transparent;border-color:transparent;color:#62694f}.coach-report-dialog:has(.technique-review-title-tab) .ui-dialog-close:hover{background:#e0e5d1}@media (max-width:700px){.coach-report-dialog .ui-dialog-body>.technique-review-title-tab{margin:-20px -16px 16px;padding:18px 60px 18px 16px;font-size:16px}}.technique-review-title-date{display:block;margin-top:4px;color:#858977;font-size:12px;font-weight:400;line-height:1.5}.coach-report-dialog .ui-dialog-body>.technique-review-title-tab{padding-inline:60px;text-align:center}.coach-report-dialog .technique-review-layout>header{justify-content:center;padding-right:0}.coach-report-dialog .technique-review-layout form>button[type=submit]{display:flex;justify-content:center;align-items:center;justify-self:center;width:min(100%,320px);min-height:52px;margin-inline:auto;padding:14px 20px;font-size:16px;text-align:center}.coach-report-dialog:has(.technique-review-layout) .coach-review-navigation{padding-top:24px;padding-right:0;justify-content:center;gap:20px;font-size:15px}.coach-report-dialog .coach-review-navigation>button{width:48px;height:48px;min-width:48px;border-radius:50%;background:#f1f3e9}.coach-report-dialog .coach-review-navigation>button>svg{width:24px;height:24px}.coach-report-dialog .coach-review-navigation>span{min-width:48px;text-align:center}.ui-dialog.coach-report-dialog:has(.technique-review-layout){height:min(840px,calc(100dvh - 24px))}.coach-report-dialog:has(.technique-review-layout) .ui-dialog-body{height:100%;max-height:100%;box-sizing:border-box;display:flex;flex-direction:column}.coach-report-dialog .ui-dialog-body>.technique-review-title-tab{flex-shrink:0}.coach-report-dialog .technique-review-layout{flex:1;min-height:0;grid-template-rows:auto minmax(0,1fr);align-content:stretch;gap:10px 20px}.coach-report-dialog .technique-review-layout>.technique-media-column{grid-row:2;min-height:0;display:flex;align-items:center;justify-content:center;flex-direction:column}.coach-report-dialog .technique-review-layout .technique-media-column video{width:100%;height:100%;min-height:0;max-height:100%;object-fit:contain}.coach-report-dialog .technique-review-layout>.technique-review-comment-column{grid-row:2;min-height:0;overflow-y:auto}.coach-report-dialog .technique-review-layout .technique-comment-composer{padding:10px 12px}.coach-report-dialog .technique-review-layout .technique-comment-composer textarea{height:clamp(60px,12dvh,140px);min-height:60px;resize:none}.coach-report-dialog .technique-comment-composer .gemini-comment{margin-top:4px}.coach-report-dialog:has(.technique-review-layout) .coach-review-navigation{flex-shrink:0;padding-top:12px}@media (max-width:700px){.coach-report-dialog .technique-review-layout{grid-template-rows:auto minmax(80px,1fr) auto;gap:8px}.coach-report-dialog .technique-review-layout>.technique-review-comment-column{grid-row:3;max-height:42dvh}.coach-report-dialog .technique-review-layout .technique-comment-composer textarea{height:clamp(48px,8dvh,80px);min-height:48px}.coach-report-dialog .ui-dialog-body>.technique-review-title-tab{padding-block:12px;margin-bottom:10px}}